Mission Planner and high precision waypoints

We have developed a system that has centimeter level position accuracy.  We have successfully tested our position system and we are successfully able to use the learning mode to set waypoints in the firmware for arducopter and ardurover.  The firmware is working great, and we are able to do missions that keep to this high degree of accuracy in position.  

We are injecting high precision GPS data into the GPS port of the APM 2.X boards.  See the GPSCoordinates.JPG file for the terminal stream coming into the APM.  The position accuracy is pretty much using every decimal place of the GPS stream.  It is incredibly repeatable.  This is the good news.  The bad part is the human interface of being able to use a GUI to view/modify my waypoints.

The problem I am having is when I am interacting with Mission Planner.  As soon as I click the "Read WPs" or "Write WPs" buttons, on the FLIGHT PLAN tab, error is introduced into the GPS positions for my waypoints.  The firmware goes from having every decimal able to be unique, to having the last 3 digits of the GPS data be in discreet steps where the last 3 digits repeat.  This is actually happening in Mission Planner and APM planner.  I am wondering if it is happening from some sort of conversion of the MAVLINK data.... or whether it is internal to the flight plan code that may be common between the two GUI's.

This is happening when I am using the serial MAVLINK using 3DR 900 MHz radios.

If you look at the positions that are read into mission planner, the waypoint path turns into  vertical lines that shows the truncation on import into mission planner.... I think I have moved way beyond the ability for mission planner to allow me to plan to such high accuracy.  Where do you guys think this truncation is happening?  I also notice that it is truncated to a different resolution in vertical positions vs. horizontal, they are still discreet steps, but the vertical seems to keep more precision.

Treggon Owens, Aerial MOB llc

GPSCoordinates.JPG

Changes To Points.JPG

WithLATLONGS.JPG

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –

Replies

  • We are using a Rover Base for the accuracy RTK GPS, but the system is not always easy. Although the system now has accurate positioning, the way points accuracy is an issue. The radius cannot be set below one meter (although somehow I got it work to 0.5 m) So the issue is  that even with 17 Satellites, the waypoint accuracy makes that the drone can still fly through a one meter circle not good enough for eg agricultural sampling or spraying! We need 0.1 m accuracy So is there a change that we can work around this, or solve it. Today in the test the drone hampered at the second point (remained in a kind of loiter) with some more windy conditions (4 m/s) and loiter speed set at 5 m/s and WP radius of 0.5 m. we think of reducing the speed of the drone, but rather would like it to approach the waypoint more slow (so eg tuning PID?) 

    So the questions: 

    Can we get to WP navigation upto 0.1 m radius soon? 

    What can we do by tuning the system to eg flight speed 8m/s and yet 0.2 m WP radius? using PID values, or other parameters?

    Is it normal to have the drone stay in a loiter if it did not cross a waypoint? We had to switch it to Althold and land. 

    hope to hear, best Winfried3702346703?profile=original Winfried

  • Mr. Bonney,

    Thanks so much.  I am going to explore a bunch of options to make this easier to set waypoints.

    http://youtu.be/xoPchGA8Wmg

    This very precise mission was done by doing manual waypoint setting on a controller to avoid the whole issue of the truncation.  It is very accurate, and very repeatable, I just can't use mission planner to modify the routes, I have to do it manually so that the math all stays internal to the firmware.

  • Developer

    The problem is that the Lat/Lon are transmitted as floats, and you don't have the accuracy. The fix is to modify the code in APM and AP2 (not sure about Mission planner) transmit the data as 32bit Ints and you'll solve the issue. 

    MAVLink can handle either Ints or floats for lon/lat, it's just that its not implemented that way in the APM side

    • Hi Mr Bonney,

      I am having a similar issue to Mr. Owens. We are going to be injecting cm-level precision gps to Pixhawk with Mission Planner. Where abouts in the code can I modify the transmitted waypoint precision data to 32Int?

      Cheers,

      Nick Dawson-Edwards 

This reply was deleted.

Activity