iNavFlight之电传MAVLink协议

本章重点介绍iNav飞控的MAVLink电传协议。

关于【电传框架设计】这里我们都不再重复了。如果前面那篇没有审阅过的同学,请点击iNavFlight之RC遥控CRSF协议

1. 业务逻辑框架

从逻辑角度,需要三个步骤来完成电传的功能:

  1. 电传信息获取: 内部全局变量
  2. 电传信息处理: handleMAVLinkTelemetry
  3. 电传初始化: initMAVLinkTelemetry
taskTelemetry
 └──> telemetryProcess
     └──> handleMAVLinkTelemetry
         ├──> processMAVLinkIncomingTelemetry
         └──> processMAVLinkTelemetry

#ifdef USE_TELEMETRY
    [TASK_TELEMETRY] = {
        .taskName = "TELEMETRY",
        .taskFunc = taskTelemetry,
        .desiredPeriod = TASK_PERIOD_HZ(500),         // 500 Hz
        .staticPriority = TASK_PRIORITY_IDLE,
    },
#endif
main
 └──> init
     └──> telemetryInit
         ├──> initFrSkyTelemetry
         ├──> initHoTTTelemetry
         ├──> initSmartPortTelemetry
         ├──> initLtmTelemetry
         ├──> **initMAVLinkTelemetry**
         ├──> initJetiExBusTelemetry
         ├──> initIbusTelemetry
         ├──> initSimTelemetry
         ├──> initCrsfTelemetry
         ├──> initSrxlTelemetry
         ├──> initGhstTelemetry
         └──> telemetryCheckState
	         ├──> checkFrSkyTelemetryState
	         ├──> checkHoTTTelemetryState
	         ├──> checkSmartPortTelemetryState
	         ├──> checkLtmTelemetryState
	         ├──> **checkMAVLinkTelemetryState**
	         ├──> checkJetiExBusTelemetryState
	         ├──> checkIbusTelemetryState
	         ├──> checkSimTelemetryState
	         ├──> checkCrsfTelemetryState
	         ├──> checkSrxlTelemetryState
             └──> checkGhstTelemetryState

2. MAVLink电传报文

2.1 MAVLink电传报文格式

略,详见:PX4模块设计之四:MAVLink简介

2.2 iNav支持地面站报文(接收)

  1. MAVLINK_MSG_ID_HEARTBEAT 0
  2. MAVLINK_MSG_ID_MISSION_CLEAR_ALL 45
  3. MAVLINK_MSG_ID_MISSION_COUNT 44
  4. MAVLINK_MSG_ID_MISSION_ITEM 39
  5. MAVLINK_MSG_ID_MISSION_REQUEST_LIST 43
  6. MAVLINK_MSG_ID_MISSION_REQUEST 40
  7. MAVLINK_MSG_ID_RC_CHANNELS_OVERRIDE 70

2.3 iNav支持飞控报文(发送)

  1. MAVLINK_MSG_ID_SYS_STATUS 1
  2. MAVLINK_MSG_ID_RC_CHANNELS_RAW 35
  3. MAVLINK_MSG_ID_GPS_RAW_INT 24
  4. MAVLINK_MSG_ID_ATTITUDE 30
  5. MAVLINK_MSG_ID_VFR_HUD 74
  6. MAVLINK_MSG_ID_HEARTBEAT 0
  7. MAVLINK_MSG_ID_BATTERY_STATUS 147
  8. MAVLINK_MSG_ID_SCALED_PRESSURE 29
  9. MAVLINK_MSG_ID_STATUSTEXT 253

3. MAVLink报文处理

MAVLink是轻量级飞控与地面端,飞控与伴机电脑内部数据交互的消息协议,且具有非常久远的历史。详见:MAVLink Developer Guide

4. 参考资料

【1】iNavFlight之RC遥控MSP协议
【2】iNavFlight之RC遥控CRSF协议
【3】PX4模块设计之四:MAVLink简介
【4】PX4模块设计之五:自定义MAVLink消息
【5】MAVLink Developer Guide

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
股份认购协议书 1、股份认购协议书 甲方:上海xx集团有限公司 乙方:苏州xx高科技有限责任公司 鉴于: 1.甲、乙双方均系依照注册地相关法律之规定成立的企业法人,享有由股东投资形成的全部法人财产权,依法享有民事权力,承担民事责任。 2.乙方是由深圳xx集团、广东xx投资有限公司、江苏xx股份公司等五家股东参股共同组建的有限责任公司,于高科技产业、国际贸易等方面在业内享有一定的声誉,曾成功地承建或参与在xx项目、xx软件等重大工程设计、建设和开发,企业经济发展迅速。因此,XX年第二次股东大会通过了对公司增资扩股的决议,现正在招募增资扩股股东。 3.甲方已经详细阅览乙方的增资扩股计划书,并进一步对甲方进行了考察和了解,愿意参与乙方的增资扩股活动。 据此,为充分发挥双方的资源优势,促进彼此企业的高速发展,为股东谋求最大回报,经甲、乙双方友好协商,就甲方参与并认购乙方增资扩股股份协议如下: 第一条认股及投资目的: 甲、乙双方同意以发挥各自的优势资源为基础,建立全方位、多功能长期的战略合作伙伴关系,保证双方在长期的战略合作中利益共享,促进发展。 第二条认购增资扩股股份的条件: 1.增资扩股额度规定:乙方计划本次增资扩股总额为5000万股整。增资扩股后公司股本总额达到10000万股。 2.认购份额规定:除原有老股东以外,参与本次增资扩股的新股东,以占乙方增资扩股后总股本的1%的比例为份额进行认购,但认购总份额不得超过乙方增资扩股后总股本的25%。 3.认购价格规定:参与本次增资扩股的新股东认购的股份价格,以乙方经审计后的XX年度会计报表中每股净资产为基数进行适当溢价认购。最高认购价不得高于每股净资产的20%。最终认购每股价格经双方协商后以书面确认为准。 4.认购方式规定:本次增资扩股全部以现金认购,如用外币认购则以外币到达乙方开户银行账上之日的中国人民银行当日挂牌外汇价格进行兑换折算为人民币。 5.认购时间规定:新老股东的认购资金必须在XX年12月30日之前到位,过期不再办理股东入股手续。 第三条甲、乙双方同意,甲方以现金方式向乙方认购1000万股整,计人民币1000万元(大写壹仟万元整人民币)。 第四条甲、乙双方同意,甲方用于认购股份的全部资金于XX年12月30日之前汇至乙方指定的开户银行账上。 第五条甲、乙双方同意,在乙方收到下方汇入的认购款项后的当日,向甲方开出认购股份资金收据,并电传给甲方。 第六条双方承诺: 一、甲方承诺: 1.甲方向乙方用于认购股份的资金来源正当,符合甲方公司章程和中国境内相关法律法规的规定,并向乙方出具相关的证明文件(文件清单附后)。 2.遵守乙方关于认购增资扩股股份的条件,积极配合乙方完成本次增资扩股活动。 二、乙方承诺: 1.对于甲方向乙方汇入的认购股份的资金,在没有完成对甲方股东资格审查前,保证不动用甲方资金。 2.在本次认购股份的资金全部到位后30个工作日内,完成召开新老股东大会,修改公司章程,改选公司董事会,办理工商注册变更等工作程序及必办手续。 第七条违约责任: 1.因乙方原因致使甲方正在执行本合同计划受到中止执行或造成重大

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值