This week we focused on getting the Stretch robot to explore, map, and navigate through its environment.
Using both Nav2 and FUNMAP, we were able to get the robot to move around the room, scan its surroundings, and generate a map (images below). The mapping and localization parts worked pretty well—Stretch was able to save specific poses and even recognize where it was on the map after moving around.
However, we hit a bit of a snag with navigation. When we tried to send the robot back to a saved pose, it would start moving but often drifted off in the wrong direction or overshot the target. So while the localization seemed reliable, the actual path planning and execution still need some tuning.
Since our project involves autonomous delivery of diabetic care tools like glucometers, accurate and repeatable navigation is key. Here’s our plan moving forward:
Global Mapping & Localization: We’ll continue using FUNMAP for environment mapping and robot localization. This gives us a reliable starting point for route planning.
Global Path Planning: We’ll use Nav2’s built-in planners to generate paths to target locations in the environment (like a nightstand or kitchen counter).
We’re aiming for a hybrid approach: global navigation to get close, and local adjustments to make the interaction more precise—important when the robot is delivering sensitive items like insulin kits.