Disclaimer: This page has images that were designed in mspaint. Anyone who has a history of muscle spasms, seizures, or uncontrollable emotional outbursts when looking at poorly drawn diagrams should not proceed past the text or install a mspaint image censor. The author of this page is not responsible for much.
There are several things that need to be taken into consideration when designing the motion planner.
The important ones should be:
Theoretically, a simple joystick or teleoperation control could be employed to create an external boundary and, if needed, an internal boundary. This, with slam, odometery, and IMU data, should be enough to create the 2d map of the environment with obstacles.
Direction of travel may reduce the required time to mow a yard. If the mower travels the longest distance to mow for the pattern, there will be less turning around--less turning around would mean longer periods of higher speeds and less turns would be less wasted time due to turns being done in a boarder region that is already mowed. There may be an argument that would suggest that a yard would look better cut perpendicular to this manner, so maybe one day cutting direction will be a user option in a menu. Size of the robot will be a boring thing to talk about, but it is something that will have to be put in the program so it won't run over things it shouldn't.
The design of this should be similar to Dr. Anis Koubaa's motion planner for a cleaning robot tutorial: https://www.youtube.com/watch?v=qtVDso-iBNA&index=1&list=PLSzYQGCXRW1HSDb_dXJ52tkcjZQB5PmhR . The process would go like this:
Here it is in a nutshell.
Basic visual explanation of operation
Further visual explanation of the effects of travel direction on time. Traveling around on the longest distance axis (this example it is the x axis) results in almost half as many changes in direction than if traveling in the y direction. This would also give about twice the distance to change rate of speeds. By moving along the longest distance axis, mowing time should be reduced in most cases.
The reason you are screaming at your computer screen as loud as you can in your head, is the same as everyone else's issue with this design.... It is over simplified!!!! No yard in the world is a perfect rectangle!!!!! Some yards have funny shapes!!!! There are stuff in the shapes!!!!
This is just an early draft. Maybe with a little bit of work, It can be made to cut more realistic shaped yards. It shouldn't be too big of a problem to do funny shapes. This was just an example to get the brain juices flowing.
7/16/19