Guided mode min velocity?

I am flying a drone using guided mode and setpoint raw commands. The commands include both lat/lon and XYZ velocity (neither input is ignored). When I command a higher velocity (3-5 m/s), the velocity works. But when I command a lower velocity (<1 m/s) the velocity does not change. There is no perceptible difference between a command that sends 1 m/s, 0.5 m/s and even 0.1 m/s. The drone should be crawling but I would guess it is moving over 1 m/s.

Am I doing something wrong?
Thank you for your help.

1 Like

Do you have a .bin log from a flight where you commanded lower speeds?

So actually, the very next thing I tried after posting this question worked. I switched to only sending velocities instead of both lat/lon and velocities and the drone now follows my velocity commands correctly.

However, now the drone’s acceleration is very limited. It takes a few seconds to get up to speed, but more importantly, it takes a few seconds to slow down again once it reaches my waypoint, overshooting it by as much as 20 meters. On return it overshoots again, oscillating around the waypoint.

I didn’t have long to experiment after this, but I tried setting PSC_VELXY_P to a significantly higher value (I figured a velocity PID parameter might produce faster acceleration/deceleration) but saw no difference in performance.

Is there a parameter I can set to change this behavior? Or do I need to get into sending acceleration commands as well?

Thank you,
Nick

1 Like

The solution was the parameter “WPNAV_ACCEL”. My issue is resolved.

1 Like

Hi @Wazootyman,

Thank you for the updates. :smile:

I am just curious that how have you used the parameter “WPNAV_ACCEL” on GUIDED mode. When we see the description of the parameter, it says:

Waypoint Acceleration; Defines the horizontal acceleration in cm/s/s used during missions

Question 1.
When we change to the GUIDED mode and send the only-velocity commands to it, how do we tell the drone whether it reaches our target waypoint or not (except for the AUTO mode)?