After the topic for John Easton’s wobbly navigation (John Easton's boat navigation) which was initially raised on facebook, I try to set the cruise_speed and cruise_throttle as negative value. I discover severe oscillation on the rover or even can not move after armed.
Zhijian,
Negative is not a good choice for these parameters! :-). We can add a checks to stop users from adding negative value but it’s already in the parameter description info which should be visible in the ground stations.
But I double the source code somehow may exist the problem about cruise_speed and cruise_throttle. Let us look at the code below:
APMrover2/mode.cpp:
// estimate maximum vehicle speed (in m/s)
// cruise_speed is in m/s, cruise_throttle should be in the range -1 to +1
float Mode::calc_speed_max(float cruise_speed, float cruise_throttle) const
{
float speed_max;
Sounds like you worked it out but in any case, I think if the cruise-throttle were way down at 0.051 (i.e. 5.1%) then it’s reasonable that the vehicle’s top speed could be 20x the cruise-speed. That would generally be a poor choice of cruise-throttle and cruise-speed by the user but it’s a reasonable result still.