无人机状态信息UDP转发源码介绍

无人机状态信息UDP转发源码

本工程师通过本机固定端口接收无人机发送来的状态数据,并按照其自己需求将无人机数据进行在封装,并将其发送出去!

相关函数:本工程包括1)无人机状态参数接收,再装发;2)参数的高低位转换;3)结构体的序列化和反序列化

1、数据结构体

无人机数据格式UAV_DATA:

[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 1)]
    public struct UAV_DATA
    {
        public uint time_boot_ms; ///< 时间戳,表示系统启动开始的秒数
        public Int32 lat; ///< 飞机纬度   /(double)1E7;
        public Int32 lon; ///< 飞机经度    /(double)1E7;
        public Int32 alt; ///< 飞机海拔高度   /1000.0
        public Int32 homelat; ///< home点纬度  /(double)1E7;
        public Int32 homelon; ///< home点经度  /(double)1E7;
        public Int32 homealt; ///< home点海拔高度  /1000.0
        public Int16 vx; ///< 飞机水平速度 /100.0
        public Int16 vz; ///< 飞机垂直速度 /100.0
        public Int16 distance; ///< 目标物距离/100.0
        public ushort vol; ///< 电池电压 /1000.0f
                           ///
       
    }

转发封包数据结构UAV_State_parameters

 [StructLayout(LayoutKind.Sequential,CharSet = CharSet.Ansi,Pack = 1)]
    public struct UAV_State_parameters
    {
        //网络报文头
        public ushort u_Len;
        //[MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)]
        public Int32 u_Sour;
        //[MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)]
        public int u_Dest;
        public byte u_Chnl;
        public byte u_StaN_Tx;
        public byte u_StaN_Rx;
        public ushort u_Pck;

        //通用报文头
        public ushort u_MsgID;
        public Int32 u_SourcePlatCode;
        public Int32 u_SourceDeviceCode;
        public Int32 u_ReceivePlatCode;
        public Int32 u_ReceiveDeviceCode;
        public ushort u_SerialNum;  //流水号
        public ushort u_CRC;
        public byte u_RowNum;
        public Int32 u_CreateTime;
        public byte u_DataLength;

        //数据
        public Int32 u_CollectTime;
        public ushort u_RowLength;

        //数据包部分
        public float u_HorizSpeed;
        public float u
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值