Replies: 1 comment
-
Hi, I usually also use 3D positioning rather than 6D, as errors in the attitude has a tendency to flip the Crazyflie easily. Another option is to increase the standard deviation when sending the attitude to the kalman filter (the
How fast do you want to go? I think I have used the PID controller successfully up to at least around 3 m/s. It works OK when flying in straight lines but is not very good at advanced maneuvers.
What kind of setpoints are you using? Position or velocity? |
Beta Was this translation helpful? Give feedback.
-
I'm currently building a real-time application with the Crazyflie, flying with a gamepad. We're using a Qualisys motion capture system and the Qualisys Drone SDK to control the drone.
You can refer to the
setup()
function in the SDK's QualisysCrazyflie class for the settings we are using to initialize the drone.Specifically, during flight, we're using the
extpos.send_extpos()
function for 3D positioning (rather than 6D withsend_extpose()
). (Because we have so far difficult to achieve stability with 6D positioning.) And we are using oursafe_position_setpoint()
function to send geofenced position setpoints, where the target position is calculated based on the drone's current position summed with gamepad input.The drone performs OK when we set a low speed limit (
posCtlPid.xyVelMax
andposCtlPid.zVelMax
parameters), but we'd like to fly at higher speeds, in which case the drone destabilizes and crashes easily.What can be some tactics (e.g. parameter changes, adding a flow deck, things to double-check...) we can use to improve the stability of the drone under high speed and real time control?
PS. I am the developer of the SDK. Generally I'm looking for these suggestions to develop this particular application, but also to incorporate into the SDK to improve it.
Beta Was this translation helpful? Give feedback.
All reactions