Arduboat Automatic SimpleGrid Without Mission Planner pymavlink

Hi all,

TL;DR
I am trying to remove all human input from Mission Planner to generate polygon and SimpleGrid.
trying to achieve this using pymavlink and python.

I have been researching APM on boats. We are building an autonomous boat to gather data on the coastline. our aim is to use pymavlink to send Waypoints in GUIDED mode to our APM. other than that, we are trying to upload a polygon to the APM and create a SimpleGrid in that polygon using python and pymavlink.

I have managed the GUIDED mode part but couldn’t find how automatically create SimpleGrid.

Can anyone Help me?

Polygon offsetting or “clipping” is a non-trivial task. Have a look at Angus Johnson’s library, a version of which is used in Mission Planner.

http://www.angusj.com/delphi/clipper.php

Hope by saying “APM”, you refer to ArduPilot, not old APM boards since ArduPilot drop support on this boards many years ago.

Firmware does not support such kind of interface for autonomous moving. You need to implement yourself. You can take a look at Mission Planner source code, parts related with SimpleGrid.
Take a look at here. I believe this is the source code related with SimpleGrid operations.

There is also a Python library called Shapely but as long as I remember it can be used only in the Cartesian system so you need to convert geolocations to cartesian front and back. You can use geopy for that. I think it is not hard at all.
Also, take a look at here. This is a really nice implementation of grid-based coverage path planning.
If you also want fence, take a look at this code. This is for fence drawing and uploading module source code of MAVProxy.
Hope these helps.

1 Like

Thank you for your valuable input.

Unfortunately, i refer to the old APM board due to budget constraints. I will check the links you gave and start work on it asap. I might also talk to my team about getting a newer FC.

1 Like