Im considering building a robotic lawnmower. I was going to buy one, but Im put off by the need of a perimeter wire, and so Id like to experiment with RTK GPS or something like the Marvelmind beacons to achieve accuracy that doesnt require perimeter wires… Having some experience with arduplane/pixhawk on RC drones some years ago, Ardurover seemed to be an obvious base; I also figured I couldnt possibly be the first to do so, but I havent found much.
Ardurover based robot mower projects I have found seem to be limited to huge “farm scale” mowers, not the mostly 3d printed thing Im looking for for in my backyard.
I found 2 promising opensource robomower projects (Rep_AL and Ardumower), but AFAICT, they do not use ardupilot, but custom software running on generic arduino/raspberry and collections of sensors. This seems silly to me. Ardupilot has so much of the things a robot mower needs, like cheap(ish) integrated hardware, telemetry, support for advanced sensor fusion, RTK gps, as well as other non GPS navigation that may work on lawnmower, ground control software etc etc etc.
Thing is, Im not a developer. So if ardurover + one of the mission planners does 95% of what I need it to do, Im still going to be 100% stuck :).
So first question; did I miss a project, is someone or some group already doing this and I just didnt find it?
Assuming not, a few things that worry me:
collision detection/avoidance. I know we can connect various sensors to make a rover stop for obstacles, but can we let it continue mowing my lawn after a collision and drive around obstacles?
lawn/mission planning. In mission planner I can (ab)use the survey grid tool to make something that may be useful, although the minimum distance may be a problem for a small mower. Is there something more suitable to generate a mission for lawn mowing? In a perfect world, I would just drive around the perimeter once using a remote control, then use that as perimeter in the planning software, add no go zones and let it create a plan.
controlling the mower motor. This is pretty essential :). How would you control the mower motor, so it doesnt spin unless its doing its mission, and it stops when the rover tilts more than x degree, or when going back to the dock, …
docking/charging. This needs some thought, I dont know really what this would require or if it could be done. Like a RTL but always going to a way point first (to align the rover with the dock).
I also have no idea yet what motors would be usable for this, either for the wheels (presumably DC motors with encoders?) or the cutting disc (no clue what speeds or power is required here, but I can google that Im sure). But if anyone has suggestions, Im all ears.