-
Notifications
You must be signed in to change notification settings - Fork 370
Description
Dear community,
Trying to address the need to transmit angular velocity references from a ground station computer to the on-board inner attitude-rate PID controller of the Crazyflie, as well as the total thrust affecting the positional dynamics, I have been exploring relevant commands within your Python API.
It appears that the function cmdVel(), which takes as arguments the Euler angles (specifically yaw angular velocity rather than the yaw angle) and thrust, might replicate the functionality of the send_setpoint() method from the commander class in cflib.
The cflib documentation specifies that setting the flightmode parameters for roll, pitch, and yaw (e.g., stabModeRol, stabModePitch, stabModeYaw) to 0 enables what is referred to as modeVelocity instead of modeAbs. This configuration allows for bypassing the attitudeControllerCorrectAttitudePID and directly feeding references into the attitudeControllerCorrectRatePID.
Upon reviewing your library’s source code, it seems that no post-processing is done on the user’s input values, nor are the mentioned parameters modified when using cmdVel().
Thus, my question is: Can I expect the same behavior when using cmdVel(), provided that I configure the flightmode parameters correctly? Will this yield the same functionality as send_setpoint() in the commander class, allowing for angular velocity reference control?
If this is the case, I believe it would be beneficial to update the Python API documentation to clarify this for users who wish to send angular velocity reference commands.
Apologies if this is duplicate issue/discussion.