Correcting a 'wobbly' path between Waypoints?

John are you seeing the other replies we have sent you?

Thanks, Grant.

Hi Grant,
Yes, thank you.
Like I said in my other post, I have had to replace the motor and have only just got that up and running so I am back on track.
Thank you
Regards
John

Here is the actual path (green) logged by the GPS when NAV1_PERIOD is set to default 20 -

1 - the path width is 20 meters wide
2 - the turns are gentle and are very close / accurate to path border

The question is - HOW DO WE REDUCE THE PATH WIDTH?

With a real boat AutoPilot we have three primary settings and are very quick and easy to set:-
Navigation Settings for AutoPilot
1 - Arrival Radius - what radius is considered "waypoint reached"
2 - XTE Limit - path width
3 - Steering Response - 1 for high speed (delayed gentle corrections), 2 for low speed (erratic quick corrections)

How do we do these three settings on the Pixhawk?

Lets forget about the P and I term at the moment. They both may be a bit low but lets not take that into account. You have the drunken sailor path of not holding a steady course yet the boat seems to be able to turn fairly quick to start moving in the other direction to correct. Try dropping your NAV1_ PERIOD to 15 and see what happens. It looks like about every 60 meters it repeats the same path. Whats the boat speed?

Regards,
David R. Boulanger

@John lets keep the discussion regarding this topic just in this thread so all the info is together.
David’s suggestion is a good one - give that a whirl.
If you could attach a dataflash log of the wobbly run (assuming you had LOG_BITMASK set appropriately) I can have a look.
Thanks, Grant.

The speed of the boat is 22kph at max throttle …

Where would I find the dataflash, and how would I set the LOG_BITMASK?

These settings look very good -
WP_RADIUS:1m
SPEED_TURN_DIST:2m
SPEED_TURN_GAIN:50
CRUISE_SPEED:1.5m/s
NAVL1_PERIOD:12

UPDATE!

Today I spent the morning concentrating on NAVL1_PERIOD only and this is what I came up with:-

The path is very symmetrical and is your typical sine wave pattern. A is the path width and B is ‘wobble’ length.

Default 20:
A = 80ft
B = 185ft

30:
A = 245ft
B = 400ft

10:
A = 55ft
B = 120ft

1:
A = 35ft
B = 95ft

Question - How do I get the path width of ‘1’ and the wobble length of ‘30’?

Here are the actual trails from Google Earth …

Have you tried using more STEER2SRV P and I?
Regards,
David R. Boulanger

Log information
http://ardupilot.org/rover/docs/common-downloading-and-analyzing-data-logs-in-mission-planner.html
Fastest way is to pull the SD card from the pixhawk and copy the logs off. Note I only want 1 log of when the issue occurred. Don’t post all of the as I won’t know which to analyse. And you will need to upload it to dropbox or google drive or whatever you use and post a link here.

Thanks, Grant.

Why do I only have this problem now after I did the firmware update?

Is this not possibly the ‘elephant in the room’?

You using 3.0.1 or the new Beta. When I upgraded from 3.0 to 3.0.1 I only had a very minor adjustment to make. The sea state your operating in and the characteristics of your boat are extremely different than mine however. Give Grant a log as he is very skilled in this stuff.

Regards,
David R. Boulanger

Hi Grant,
Here are one of the logs from Monday’s missions -

https://dl.dropboxusercontent.com/u/39689221/250.BIN

Regards
John

Where would I find the firmware version on the Pixhawk?
Regards
John

Thanks for the vote of confidence David :slight_smile: I do my best.

Hi John. If you look at the console tab in mission planner that will tell you what the firmware version number is when the pixhawk boots/reboots.

The dataflash log you attached as some odd parameter settings in it. You have
NAVL1_PERIOD = 1
This should be much higher for your boat. Its almost certainly causing the weaving. Try 10 and go from there. Also note
ARMING_CHECK = 72
which means you are only checking RC and GPS lock at startup. Is there a reason you have changed it to check only these 2 rather then all of them? I know that’s the example given of how to set the ARMING_CHECK values but you should really check them all by setting it to 1.

Let us know how you go.

Thanks, Grant.

Hi Grant,

Ok, I will check.

Yes, NAVL1_PERIOD was one of the settings but as you can see it simply makes the ‘path’ narrower, but in no way stops the ‘wobbly’ trail, as seen here … (red trail)

I was having arming issues and the is why I changed it to 72, but I sorted those issues out and now have it on 1, but the ‘wobbly’ trail is still exactly the same.

Today I intend to play with P and I parameters.

Thank you for all your help, I would be totally lost without your help.

Regards
John

For some reason I could not view anything on the log that was sent. I could not graph anything. problem on my end I guess. With my boat I have noticed that my I is 1/10 of my P and then I tweak the NAVL1 to smooth thing out. The way I have tuned was to play with P and I to the point that the boat goes in a very straight line but weaves back and forth really fast. Then try a little less I and NAVL1 a little higher till things smooth out. Every boat will be different. I still also look at the sea state that you run in. I usually run in fairly calm water and when I don’t my rudders work harder than I really want them to but the boat maintains course.

Regards,
David R. Boulanger