当前位置: 首页 > news >正文

ardupilot开发 --- 故障保护 篇

不患贫而患不均,不患寡而患不安

  • RC 故障
    • 触发因素
    • 参数
    • 保护动作
    • 如何设置
    • 参考文献
  • 电池故障
    • 触发因素
    • 保护动作
    • 参数
  • GCS 故障
  • EKF 故障
  • 关于 SmartRTL、RTL 的返航高度、返航路径

RC 故障

在这里插入图片描述

触发因素

  • 遥控器关机

  • 丢失连接、超出连接RC范围

  • 遥控器油门值低于 FS_THR_VALUE.

  • 遥控接收机(天空端)失去电源

  • 遥控接收机与飞控的连接出现故障

  • 等等

参数

  • 故障发生后多久触发保护动作,单位s
    RC_FS_TIMEOUT
  • 保护动作、使能
    FS_OPTIONS :可用于配置RC、电压、GCS的故障保护动作。
    FS_THR_ENABLE :仅用于配置RC故障保护动作。
    优先使用FS_OPTIONS的配置,如果FS_OPTIONS没有配置则使用FS_THR_ENABLE的配置!
  • 油门阈值
    FS_THR_VALUE
    遥控器油门值低于 FS_THR_VALUE 并持续 RC_FS_TIMEOUT 秒时会触发RC故障保护!

保护动作

  • Disabled
    FS_THR_ENABLE=0
    禁用
  • Enabled Always RTL
    FS_THR_ENABLE=1
    如果定位可用则 RTL,如何定位不可以则 Land.
  • Enabled Continue with Mission in Auto Mode
    FS_THR_ENABLE=2
    在4.0以后的版本,移除了在 FS_THR_ENABLE 中对于AUTO模式的这个配置:允许Auto模式下忽略Radio Failsafe 继续执行任务。这个配置被转移到了FS_OPTIONS参数中!
    假如你在4.0以后的版本版本配置为FS_THR_ENABLE=2,它的效果与FS_THR_ENABLE=1相同!
  • Enabled Always Land
    FS_THR_ENABLE=3
    Land.
  • Enabled SmartRTL or RTL
    FS_THR_ENABLE=4
    如果SmartRTL可用则SmartRTL,否则RTL,如果RTL不可用(位置不可用),则Land.
  • Enabled SmartRTL or Land
    FS_THR_ENABLE=5
    如果SmartRTL可用则SmartRTL,否则Land.
  • Enabled Auto DO_LAND_START or RTL
    ??
  • Enabled always Brake or Land
    刹车,如何刹车不可用则Land.
  • Any invaild value
    如 FS_THR_ENABLE=99.
    视为 Enabled Always LAND

如何设置

FS_THR_ENABLE的配置对所有飞行模式有效!
对某些模式下忽略故障保护的请在FS_OPTIONS 中配置!

在这里插入图片描述

或:

在这里插入图片描述

参考文献

【1】https://ardupilot.org/copter/docs/radio-failsafe.html
【2】https://ardupilot.org/copter/docs/parameters.html#fs-options
【3】https://ardupilot.org/copter/docs/parameters.html#fs-thr-enable

电池故障

低电压触发的故障保护。

触发因素

  • 电压低于 BATT_LOW_VOLT(旧版本中是FS_BATT_VOLTAGE)持续10s。
  • 电池剩余容量低于BATT_LOW_MAH (旧版本中是FS_BATT_MAH )持续10s。
    设置为0则禁用。

保护动作

  • 忽略电池故障,do nothing
    飞机正处于RTL、Land时;
  • 上锁电机
    飞机正处于Stabilize、Acro并且油门在最低位,或者飞机已经完成降落时;
  • BATT_FS_LOW_ACT 决定保护动作
    • None
      BATT_FS_LOW_ACT=0
      忽略故障
    • Land
      BATT_FS_LOW_ACT=1
      降落
    • RTL
      BATT_FS_LOW_ACT=2
      返航,返航不可用则降落
    • SmartRTL or RTL
      BATT_FS_LOW_ACT=3
      原路返航,原路返航不可用则直接返航,直接返航不可用则降落
    • SmartRTL or Land
      BATT_FS_LOW_ACT=4
      原路返航,原路返航不可用则降落
    • Terminate
      BATT_FS_LOW_ACT=5
      上锁电机
      the vehicle will disarm the motors. This is a dangerous option that should not be used in most cases

参数

BATT_FS_LOW_ACT
BATT_LOW_VOLT(旧版本中是FS_BATT_VOLTAGE)
BATT_LOW_MAH (旧版本中是FS_BATT_MAH )
FS_OPTIONS
待续…

GCS 故障

待续…

EKF 故障

待续…

关于 SmartRTL、RTL 的返航高度、返航路径

  • RTL,直接返航
    • 直接返航,走直线。
    • 返航高度。返航之前,飞机先爬升到这个高度:max( RTL_CLIMB_MIN, RTL_ALT ) ,然后返航。RTL_ALT默认值为 15m.
    • 高度类型:RTL_ALT_TYPE
      • 0 Relative to Home
      • 1 Terrain
    • 返航速度
      RTL_SPEED,RTL_SPEED为0则使用WPNAV_SPEED.
    • 降落速度(>10m)
      WPNAV_SPEED_DN
    • 最后阶段的降落速度(0~10m)
      LAND_SPEED
  • SmartRTL,原路返航
    • 按照之前的飞行轨迹返航,而不是直接返航。
    • 返航速度
      RTL_SPEED,RTL_SPEED为0则使用WPNAV_SPEED.
    • 降落速度(>10m)
      WPNAV_SPEED_DN
    • 最后阶段的降落速度(0~10m)
      LAND_SPEED

http://www.mrgr.cn/news/1327.html

相关文章:

  • git的学习教程
  • OD C卷 - 小扇和小船的数字游戏
  • Linux:进程的概念,进程相关函数
  • 硬件I2C和软件I2C(模拟I2C)的区别
  • Therabody™明星产品TheragunⓇ筋膜枪,以科技健康助力舞台高光时刻
  • GO语言如何抗住火影忍者手游的高并发
  • QT C++上位机软件开发,相比较C#上位机软件开发,有哪些特点和区别
  • IOPaint部署,在服务器Ubuntu22.04系统下——点动科技
  • 学习文件IO,让你从操作系统内核的角度去理解输入和输出(理论篇)
  • 使用百度文心智能体创建AI旅游助手
  • Spring中事务(面试常考)
  • STM32初识
  • 记一次Jenkins项目构建耗时优化
  • MT7621+MT7915(MT7905)+MT7975 (W7621A6G-SDK)编译固件与升级固件方法
  • 深入解析UDP协议与TCP协议:它们的区别与应用场景
  • XML外部实体注入
  • 大白话解析:深入浅出大模型RAG模块全解析
  • C++引用和指针的区别还分不清楚?
  • spring boot 接收第三方mq消息
  • VTK—vtkImplicitFunction 隐函数