5iMX宗旨:分享遥控模型兴趣爱好

5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
查看: 944|回复: 0
打印 上一主题 下一主题

关于APM数据解码,求助!

[复制链接]
跳转到指定楼层
楼主
发表于 2013-9-7 19:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 liangdyc 于 2013-9-7 19:04 编辑

本人通过串口与APM通信,利用自己写的命令FE 06 01 FF 00 42 02 00 01 00 0A 01 A5 07。要求APM返回姿态数据。APM返回成功。
接收到的数据为:


FE 1C 26 01 01 1E 87 D3 05 00  50 8F 68 BB   64 5A F1 BD   B0 93 86 3F   B8 30 44 BA   D0 DE 8E BA   40 EB 25 3A   E5 D5
FE 1C 27 01 01 1E 8E D5 05 00  6A 44 73 BB   47 EF F0 BD   66 91 86 3F   C0 CD 62 B9   60 40 12 BA   80 6F D3 38   29 A7

通过观察发现,接收到的的确是我要求其返回的。即姿态数据。根据地面站源代码
public const byte MAVLINK_MSG_ID_ATTITUDE = 30;     
[StructLayout(LayoutKind.Sequential, Pack = 1, Size = 28)]      
  public struct mavlink_attitude_t        {        
    /// <summary> Timestamp (milliseconds since system boot) </summary>         
  public UInt32 time_boot_ms;        
    /// <summary> Roll angle (rad, -pi..+pi) </summary>      
     public Single roll;           
/// <summary> Pitch angle (rad, -pi..+pi) </summary>     
       public Single pitch;        
    /// <summary> Yaw angle (rad, -pi..+pi) </summary>      
     public Single yaw;         
  /// <summary> Roll angular speed (rad/s) </summary>   
        public Single rollspeed;         
   /// <summary> Pitch angular speed (rad/s) </summary>        
    public Single pitchspeed;           
/// <summary> Yaw angular speed (rad/s) </summary>   
        public Single yawspeed;
        };

我可以知道哪几位是哪些数据。查了一下MAVLINK协议文档。是利用的IEE745表示浮点数。所以想转换到浮点数来看,可是发现转换后的数据不对。
例如roll为: 6A 44 73 BB。转换后为:59373995582784778000000000.000000

所以我想这里肯定是出现了什么问题。难道又是mavlink或地面站说是用IEE745其实又是使用了自己的一套格式?


欢迎继续阅读楼主其他信息

主题

  • 没有相关信息
  • 没有相关信息
  • 没有相关信息
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

【站内推荐】上一条 /1 下一条

快速回复 返回顶部 返回列表