Clarification on CF coordinates and states #754
-
Hi, I looked at the state estimator of the CF2.1 quadcopter and saw some confusing information. I also looked at this https://www.bitcraze.io/documentation/system/platform/cf2-coordinate-system/ but some are not consistent to me. I assume that
A side thing in Brescianini controller that I found: this should use omega_yaw_max Thank you very much! |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 2 replies
-
Hi,
yes
Looking at the log values for the accelerometer, it looks like z acc is reversed. Steady state value for z acc is +1. x and y defined as in cf2 coordinate system Log data from the estimator are according to the cf2 coordinate system with a steady state z acc of 0.
Body frame: yes Roll, pitch, yaw in the stabilizer and state estimator defined as in cf2 coordinate system, that is pitch is y-axis CCW.
See gyro above
I'm not sure how crazyswarm has defined the system
Interesting, I mainly copy/pasted the code from an old implementation and did not look too much at the details. I will add an issue to investigate the problem. |
Beta Was this translation helpful? Give feedback.
-
Thanks for the answers, let's reiterate
So pitch rate (from gyro) is CW, not as in cf2 coordinate system. Then the Breschianini controller should be correct.
The only thing in CCW is pitch angle. Quaternion estimate is CW as well. => So if my controller uses CW coordinate and quaternion instead of Euler angles, everything should be natively fine. |
Beta Was this translation helpful? Give feedback.
Hi,
there is unfortunately a bit of a mix, we hope to clean it up at some point. Different parts of the system use different definitions.
yes
Looking at the log values for the accelerometer, it looks like z acc is reversed. Steady state value for z acc is +1. x and y defined as in cf2 coordinate system
Log data from the estimator are according to the cf2 coordinate system with a steady state z acc of 0.
…