github.com/bluenviron/gomavlib/v2@v2.2.1-0.20240308101627-2c07e3da629c/pkg/dialects/asluav/message_gimbal_device_attitude_status.go (about)

     1  //autogenerated:yes
     2  //nolint:revive,misspell,govet,lll
     3  package asluav
     4  
     5  import (
     6  	"github.com/bluenviron/gomavlib/v2/pkg/dialects/common"
     7  )
     8  
     9  // Message reporting the status of a gimbal device.
    10  // This message should be broadcast by a gimbal device component at a low regular rate (e.g. 5 Hz).
    11  // For the angles encoded in the quaternion and the angular velocities holds:
    12  // If the flag GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME is set, then they are relative to the vehicle heading (vehicle frame).
    13  // If the flag GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME is set, then they are relative to absolute North (earth frame).
    14  // If neither of these flags are set, then (for backwards compatibility) it holds:
    15  // If the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set, then they are relative to absolute North (earth frame),
    16  // else they are relative to the vehicle heading (vehicle frame).
    17  // Other conditions of the flags are not allowed.
    18  // The quaternion and angular velocities in the other frame can be calculated from delta_yaw and delta_yaw_velocity as
    19  // q_earth = q_delta_yaw * q_vehicle and w_earth = w_delta_yaw_velocity + w_vehicle (if not NaN).
    20  // If neither the GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME nor the GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME flag is set,
    21  // then (for backwards compatibility) the data in the delta_yaw and delta_yaw_velocity fields are to be ignored.
    22  // New implementations should always set either GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME or GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME,
    23  // and always should set delta_yaw and delta_yaw_velocity either to the proper value or NaN.
    24  type MessageGimbalDeviceAttitudeStatus = common.MessageGimbalDeviceAttitudeStatus