While I tested the skid steer, I found that Rover’s path is started to deviate from a mission.
You can reproduce this issue the following step in SITL:
set the following parameters
param set WP_OVERSHOOT 2.000000
param set WP_PIVOT_ANGLE 70.000000
param set WP_PIVOT_RATE 45.000000
param set WP_RADIUS 0.010000
param set WP_SPEED 3.000000
param set WP_SPEED_MIN 0.000000
Arm and run a mission
Turn on the skid steer by changing the following parameters
param set SERVO1_FUNCTION 73
param set SERVO3_FUNCTION 74
Rover is started to deviate a path planned in the mission
I think the issue may be the WP_RADIUS being set very very small (0.01m = 1cm). In general this should be no less than 0.5m. By the way I’ve also found an issue with very small radius here https://github.com/ArduPilot/ardupilot/issues/17417.
If you have time could you re-test with the WP_RADIUS parameter made larger?
@rmackay9 Thank you for your feedback!
I re-test the skid steer with default values of parameters.
The only changed parameters are SERVO1_FUNCTION and SERVO3_FUNCTION to trigger the skid steer. The result is the same as before.
When you start the simulator are you adding “-f rover-skid” to the start command? (e.g. “Tools/autotest/sim_vehicle.py --map --console -f rover-skid”).
If not then the simulated vehicle will have ackermann steering controls and trying to control it as a skid steering vehicle definitely will not work!
@rmackay9 Oh! Then, never mind because I executed the simulator without “-f rover-skid”. I thought that I can change steering style by changing SERVO1_FUNCTION and SERVO3_FUNCTION parameters. Thanks!