EN CN
[Features request] Yaw Range and IMU information
  • Hello,

    I would like to leave here two suggestions for future features.

    1. Make it possible to select the yaw range. Currently, without magnetometer, yaw gyro integration does not consider complete turns, which means it's range goes over positive and negative 360 degrees. It would be helpful to choose a yaw range from [-180:180] degrees, and make it switch from -180 to 180, and vice-versa. This way, with an RC range of [-180:180] degrees, it would be possible to have full control of the yaw reference over RC. I give you and example:

    [Currently] If the gimbal enters follow mode, and does a 360 degrees rotation, the yaw measure is now 360 degrees. However, exiting follow mode, the RC specifies a 0 degrees reference, which means the gimbal will do a full rotation to reach the reference.

    [New feature] With the new feature, it would be possible that after a full 360 degrees rotation, the yaw measure is now 0 degrees again. This way, exiting follow mode means the gimbal will not do an unnecessary turn.

    2. Make it possible to request only angle information from the Serial API. Currently, and at the extent of my knowledge, requesting IMU angles is only possible through the CMD_GET_ANGLES and CMD_GET_ANGLES_EXT commands. However, this has to be requested once per IMU and a CMD_SELECT_IMU_3 message has to be sent in between. In time constrained systems, this introduces too much overhead, and most important, is too slow to be run frequently. What I ask is a message that allows me to get only IMU angles, from both IMUs at the same time, making it only 12s long (6s for each IMU, 2s for each axis).

    Thank you,

    Posse

  • Hello, Posse.

    1) Its a good advise. Absolute RC->angle control for YAW is rarely used, its more popular speed control, may be that is a reason why this problem not arrived before. The solution, as I see it, may be to wrap IMU angle to +-180 after switching to a profile where absolute control is required. I will add it to a TODO list.

    2) You are right, there is no command to receive angles from 2 IMUs. CMD_GET_ANGLES returns angles only for the main IMU. But can you say, why do you want to know frame IMU angles? The calculation of frame angles is not specified (i,e, it may be done in roll-pitch-yaw order, or pitch-roll-yaw order, and may do not match to the main IMU calculation order, or may be changed in future).

    If you want to know attitude of a frame and camera, Its better to request data in DCM form by the command CMD_AHRS_HELPER, where you can specify IMU type (you can send 2 commands in sequence and receive 24 bytes response for 2 IMUs) and than calculate Euler angles or quaternions from it.
  • In which version of firmware CMD_AHRS_HELPER command is working? In 2.56b9 I can't get any response...
  • Hello,

    In 2.56b9 it should work.