utiasDSL / gym-pybullet-drones

PyBullet Gymnasium environments for single and multi-agent reinforcement learning of quadcopter control
https://utiasDSL.github.io/gym-pybullet-drones/
MIT License
1.19k stars 349 forks source link

PID Control #140

Open arshad171 opened 1 year ago

arshad171 commented 1 year ago

Hi,

I see that the DSLPIDController implements the Mellinger controller instead of the default cascaded PID control that's on CF. What's the motivation behind it?

Is there a similar controller implementing the cascaded PID control, or should it be implemented on our own?

Thank you

JacopoPan commented 1 year ago

Hi @arshad171,

there is a Mellinger implementation in the Crazyflie firmware as well. For a simpler attitude-position PID implementation, you can also look at class SimplePIDControl. To directly use Bitcraze's firmware you can look at the Python bindings of the C firmware in pycffirmware, used in the 2022 IROS Competiion