ROS packages for an outdoor 'Roomba' robot
Hello,
I am building a robot that will be able to clean small litter in an outdoor environment. My idea is as follows:
- I want to be able to define an area (like a geofence) that the robot needs to clean
- The robot needs to plan a path that covers the entire area - e.g. a snake pattern
- The robot needs to follow the path aided by GNSS and wheel odometry (and if necessary an IMU)
- The robot should detect litter using an neural network (YoloV3)
- The robot needs to pick up litter using a gripper and store it in its trash bin
- The robot needs to avoid obstacles detected by a depth camera
Hardware setup:
- Compute: Multiple Raspberry Pi 4 Model B / 4GB and NVIDIA Jetson TX2
- Depth camera: Intel Realsense D435
- GNSS: 2 simpleRTK2B boards in rover-base configuration
I have figured out most of what I need to detect litter. What I am still struggling with, is what ROS packages I should use for the localization, navigation and obstacle avoidance part. I have already looked at the robot_localization package, which seems suitable to combine our different sensors, but that would only cover the localization part.
I will be using ROS Melodic on Raspbian Buster (ARM, Raspberry Pi) and Ubuntu 18.04 (ARM, Jetson TX2).
Asked by kneejuicer on 2019-12-10 05:06:00 UTC
Answers
I can't give you any authoritative answers, but here are some hints.
re: localisation: I'd definitely try to use robot_localization
re: path planning: you may want to take a look at things like ethz-asl/polygon_coverage_planning and Greenzie/boustrophedon_planner. They both implement planners that would fall in the "coverage path planner" category, which seems to be what you are looking for.
I would also recommend to take a look at what ROS-Agriculture is doing. Even though you're not into the exact same things, there seems to be quite some overlap between your requirements and theirs (and if you would replace "litter" with "plants" or "weeds", things really start to look similar).
Their "lawn tractor" project could be a nice source of inspiration.
Asked by gvdhoorn on 2019-12-15 14:43:39 UTC
Comments
I'm also working on this. Just in case someone finds it useful.
Asked by Humpelstilzchen on 2020-04-04 03:12:18 UTC
Comments