Hi，When I had tune my steering and throttle PID is OK, I 'd like to tune the navigation controller, but I found that no matter how I change the parameters of the basic navigation controller, it can’t have a good steering in auto mode, my waypoint is a square(I set 60deg to trigger the PIVOT, ).
but when I back home and think about the phenomenon and I read the wiki guidance, I think I had found the reason: if you search PIVOT in full parameter trees, you will find PIVOT_TURN_ANGLE and PIVOT_TURN_RATE, the default of PIVOT_TURN_RATE is 90 deg/s , most boat can’t reach the speed. I will edit it to 30deg/s and have a try next day.
That’s a step in the right direction. But a lot of other parameters come into play for proper auto mission steering.
ATC_STR_RAT_MAX and ATC_STR_ACC_MAX will also limit the rate of turning. See http://ardupilot.org/rover/docs/rover-tuning-pivot-turns.html.
hi ! Mr krussell
grateful for your help, I had decrease these two parameters, ATC_STR_RAT_MAX and ATC_STR_ACC_MAX.
But other problems appear, my boat first turn to the reverse direction then turn to the next point,
l think it should turn to the next waypoint directly.
Does your boat go fairly straight in manual mode when you push the throttle forward and keep the steering in the center? This is just a guess, but if your boat pulls to the right, then you might see what you have going on. I have found with my rover (mower) that getting the mechanical setup as good as possible helped the tuning greatly. What happens if you make your mission run in a clockwise direction?
hi! Mr Ktrussell
I think it is abnormal action in the blue marked, that is the problem I described: the boat turn to the reverse and then turn to the next waypoint. In the diagram the desried turn rate is -20°/s, but the really turn rate reached 45°/s, (the two parametes is ATC_STR_RAT_MAX and ATC_STR_ACC_MAX is about 20-30 I just don’t know how can it doing that .)
in addition, I think it’s not the mechnical problem : in mannul boat runs almost straight
I have some idea after analyze the log: 00000022.bin.
this pic’s blue mark is the frist turn to the reverse direction.
this pic’s blue mark is the second turn to the next waypoint.
may I think it is a brake?
I will have a try to forbid the ATC_BRAKE
and maybe the SPEED_TURN_GAIN and MOT_SLEWRATE have affect too.
It looks like your starboard motor is always working a little harder to maintain a straight course. The ATC_STR_RAT P,I and FF are a bit unusual I think. Normally I’ve Noticed the FF is higher than the P and I.
I just have a test: 1. forbid the brake, and the turn to the reverse direction will not happen
2. increase the MOT_SLEWRATE from 100 to 500, to1000, the turn to the reverse at pivot will decrease. I suspect that my left ESC’s Brake function doesn’t work.
Slewrate changes I doubt will help you. You should not need a brake. You have a slow boat. I really think this is a PID issue.
It looks like also you are using 3.3.1 rc2 code . Why not the latest?
emmm, I had make a sensor myself and write a driver for the version 3.3.1. I will migrate it for the lastest somedays later.
For the steering PID, If the FF higer than PI(D=0), always a vertical error , and if the PI>FF, that will decrease the error