ardupilot开发 --- 起飞前中后 篇

起飞前检查

  • 电机响应是否正确(转向)
  • 姿态响应是否正常(roll pitch yaw)
  • GPS数据是否正常(星数,RTK解)
  • 电源电压
  • 安全检测(arming check)

起飞前的必调参数

  • 机架类型;
  • 加速度计校正,磁罗盘,遥控器校准,电调校准
  • 故障保护
  • 关闭或开启安全开关 BRD_SAFETY_DEFLT = 0,1
  • 飞行模式 FLTMODE_CH = 5,默认选第5通道
  • 急停 RCx_OPTION = 32或31
  • 刹车延迟
    LOIT_BRK_DELAY=0
  • Land后电机上锁延迟
    DISARM_DELAY=5
  • 飞行控制 RCMAP_x
  • 拉力曲线形变系数 MOT_THST_EXPO,根据桨叶尺寸(长度)配置
    在这里插入图片描述
  • 电机/电调参数
    1)MOT_PWM_MAX = 2000
    2)MOT_PWM_MIN = 1000
    3)MOT_SPIN_ARM = 0.1 空转油门
    4)MOT_SPIN_MAX = 0.95
    5)MOT_SPIN_MIN = 0.15 最小油门(要大于空转油门)
    6)MOT_THST_HOVER: 悬停油门,取默认值,将悬停油门学习打开
    在这里插入图片描述
  • AHRS和EKF3
    • AHRS_EKF_TYPE = 3
    • EK3_ENABLE = 1
  • 高度源
    EK3_SRC1_POSZ=3
  • 偏航源
    EK3_SRC1_YAW =2或3
  • GPS
    • 使用雷迅9PS
      https://blog.csdn.net/weixin_43321489/article/details/133900305
    • 雷迅2HP
      • 串口连接: https://blog.csdn.net/weixin_43321489/article/details/133900305
      • can 连接:
        GPS_TYPE = 9
        CAN_P1_DRIVER = 1
        EK3_SRC1_YAW = 2
        GPS_MB1_TYPE = 1 设置后刷新或重启才会显示偏置参数
        GPS_MB1_OFS_X 主天线(天线1)相对于从天线(天线2)的坐标,FRD系
        GPS_MB1_OFS_Y
        GPS_MB1_OFS_Z
        GPS_POS1_X 主天线(天线1)相对于重心的坐标,FRD系
        GPS_POS1_Y
        GPS_POS1_Z
        2HP固件中的参数
        与ardupilot中的参数相同,但是GPS_TYPE要设置为25而不是9
        注意:
        这个地方千万不要点,一点就会生成两个相同NODE ID GPG drivers,而且删不掉,导致报警告:Node ID 冲突
        在这里插入图片描述
        万一不小心点了?解决办法:重置全部参数!!
        在这里插入图片描述
  • RTK
    • 自架RTK
      在这里插入图片描述
      在这里插入图片描述
    • 网络RTK(NTRIP)
      在这里插入图片描述
      您好!感谢光临小店,订单3991275074523373931
      账号:qxqxg005781
      密码:f1367f3
      账号:qxqxg005780
      密码:3ad5c06
      到期时间:2024-08-02  23:59:59
      请查收。请留意到期时间!!!
      千寻CORS设置方式:
      ①IP:203.107.45.154
      ②端口:8003(GCGS2000坐标系)
       8002(WGS84坐标系)
      ③源节点:AUTO(五星十六频)
      RTCM32_GGB(三星八频)
      RTCM30_GG(双星仪器使用)
      
  • 电源监视器
    使用雷迅的CAN PMU 或 CAN PMU LITE(买飞控时携带的附属品)
    接线:连接飞控的 POWER C
    CAN_P1_DRIVER = 1
    CAN_P2_DRIVER = 1 (可不配置?)
    BATT_MONITOR=8(如果使用监视器1)
    Uavcan_enble设置为sensors Automatic config(自动配置)
    https://blog.csdn.net/weixin_43321489/article/details/133900305
  • 图数传(MK32天空端)、雷迅P8数传
    建议接串口2,串口1接S1雷达!
    SERIAL2_PROTOCOL = 2 MAVLink2
    SERIAL2_BAUD = 57 波特率
  • S1雷达
    ardupilot开发 — 避障篇
  • 最大倾角
    ANGLE_MAX=1000~8000 centidegrees
  • 悬停油门学习
    MOT_HOVER_LEARN: 2 learn and save ,悬停油门学习,悬停30s以上。
  • IMU低通滤波器参数
    据桨叶尺寸来设置剪切频率:80Hz for 5 inch props, 40Hz for 10 inch props, 20Hz for 20 inch props (or larger)
    1)INS_ACCEL_FILTER = 20
    2)INS_GYRO_FILTER = 20
  • roll pitch yaw 角加速度限幅
    1)ATC_ACCEL_P_MAX
    pitch通道最大角加速度,根据桨叶尺寸(长度)来设置!
    110000 for 10 inch props, 50000 for 20 inch props, 20000 for 30 inch
    2)ATC_ACCEL_R_MAX
    110000 for 10 inch props, 50000 for 20 inch props, 20000 for 30 inch props
    3)ATC_ACCEL_Y_MAX
    27000 for 10 inch props, 18000 for 20 inch props, 9000 for 30 inch props
    在这里插入图片描述
  • 控制量滤波参数
    1)ATC_RAT_PIT_FLTD = INS_GYRO_FILTER / 2
    其中 INS_GYRO_FILTER 是陀螺仪低通滤波器的剪切频率,要先设置。
    Pitch axis rate controller derivative frequency in Hz
    2)ATC_RAT_PIT_FLTT = INS_GYRO_FILTER / 2
    Pitch axis rate controller target frequency in Hz
    3)ATC_RAT_RLL_FLTD = INS_GYRO_FILTER / 2
    4)ATC_RAT_RLL_FLTT = INS_GYRO_FILTER / 2
    5)ATC_RAT_YAW_FLTE: 2
    Yaw axis rate controller error frequency in Hz
    6)ATC_RAT_YAW_FLTT = INS_GYRO_FILTER / 2
    Yaw axis rate controller target frequency in Hz
    在这里插入图片描述
  • 打开陷波滤波采样功能(用于后续设置陷波滤波器)
    1)INS_LOG_BAT_OPT 采样选项
    在这里插入图片描述
    2)INS_LOG_BAT_MASK 采样源
    在这里插入图片描述
    注意:保证有SD卡,保持飞行或悬停至少30 second;
  • 解锁电机是否需要油门保持最低位
    RC_OPTION 参数取消勾选
    在这里插入图片描述

飞行中

  • 高度源
    EK3_SRC1_POSZ
  • 偏航源
    EK3_SRC1_YAW
  • RTK 基站
    千寻账号稳定一些
  • 配平
    自稳模式下,飞机如果漂移得很厉害,则手动微调 AHRS_TRIM_X 和 AHRS_TRIM_Y 的值。
    在这里插入图片描述
    如何自动微调?
  • PID参数
    自稳模式
    1)最大倾角
    ANGLE_MAX = 1000~8000 centidegrees
    2)角度环、角速度环 PID
    在这里插入图片描述
    3)最大偏航角速度限值
    PILOT_Y_RATE
    在这里插入图片描述
    4)最大横滚俯仰角速度(没有找到这个参数?)
    ANGLE_RATE_MAX

定高模式
1)上升下降最大速率
PILOT_SPEED_UP
PILOT_SPEED_DN
2)油门中位值死区
THR_DZ 默认值
3)高度通道串级PID
注意:Throttle Accel PID 的参数,要保持 I 是 P 的两倍;
在这里插入图片描述
4)最大偏航角速度限值
PILOT_Y_RATE
在这里插入图片描述
5)最大横滚俯仰角速度(没有这个参数?)
ANGLE_RATE_MAX

定点模式
1)位置环速度环 PID,水平速度限值
在这里插入图片描述
2)刹车参数
在这里插入图片描述
3)最大角度
在这里插入图片描述
4)最大水平加速度
在这里插入图片描述
自动任务模式
在这里插入图片描述
其他参数:
在这里插入图片描述

起飞后

  • 设置陷波滤波器,调整低通滤波器截切频率:
    • 据桨叶尺寸来设置剪切频率:80Hz for 5 inch props, 40Hz for 10 inch props, 20Hz for 20 inch props (or larger)
    • 设置陷波滤波器后可以适当增加陀螺仪低通滤波器的频率,以增加跟随性能;
    • 加速度计的低通滤波则保持不变或适当降低频率以滤除加速度震动噪声!!!
  • 设置陷波滤波器参数
    1)INS_HNTCH_MODE = 1 设置模式为Throttle Based Dynamic Notch
    2)INS_HNTCH_ENABLE = 1 开启陷波滤波器
    3)INS_HNTCH_REF = 0 设置为静态陷波滤波器
    参数含义是频率的放大系数,mode不同该参数的设法不同,请参考文档;
    4)INS_HNTCH_FREQ = 要滤除的噪声频率,陷波滤波器中心频率;
    5)INS_HNTCH_BW = INS_HNTCH_FREQ / 2, 陷波滤波器的带宽;
    6)INS_HNTCH_FM_RAT 保持默认值;
    7)INS_HNTCH_HMNCS 保持默认值;
    要滤除的谐波,以INS_HNTCH_FREQ 为基波;例如INS_HNTCH_HMNCS设为3,则要滤除的信号包括:基波、1次2次3次4次谐波??
    在这里插入图片描述
  • 震动分析,以确定 INS_HNTCH_FREQ 的取值
    • 1)下载日志
    • 2)初始设置
    • 3)高级
    • 4)FFT
    • 5)IMU Batch Sample
    • 6)分析
      只采样一个IMU时(通过INS_LOG_BAT_MASK 来配置采样哪些IMU),曲线的含义如下:
      ACC0:滤波前的加速度信号
      ACC1低通滤波后的加速度信号
      GYR0 :滤波前的陀螺仪信号
      GYR1低通滤波后的陀螺仪信号
      在这里插入图片描述
      震动噪声来自于旋转的电机:震动噪声主频率小飞机在200Hz左右,大飞机在100Hz左右,除了主噪声还会伴随主噪声的2,3,4次谐波噪声,如:
      在这里插入图片描述
    • 7)确定 INS_HNTCH_FREQ
      找到 GYR0 曲线,寻找最高峰的位置,横坐标即所寻目标,如上图中的180Hz.
    • 8)注意事项
      陷波滤波器只作用陀螺仪,加速度计还是使用的低通滤波!
      设置陷波滤波器的频率后,要适当增加陀螺仪低通滤波的剪切频率!
      100Hz以上的震动噪声会导致位置、姿态控制性能恶化!
      低通滤波器虽然可以显著降低了噪声,但代价是显著的相位滞后,这将导致控制效果的严重滞后!
    • 9)参考
      Measuring Vibration with IMU Batch Sampler
      Notch Filtering

自动调参

一些概念

  • AutoTune尝试自动调整Stabilize P、Rate P和D以及最大旋转加速度,以提供最高响应,而不会出现明显的超调。
  • 在自动调参之前应该确保 AltHold 模式基本可用;
  • 待续。。。https://ardupilot.org/copter/docs/autotune.html

遥控器映射说明

  • 自稳模式
    roll杆:roll期望角;
    pitch杆:pitch期望角;
    yaw杆:偏航角速度期望值;
    油门杆:控制电机的转速;
  • 定高模式
    roll杆:roll期望角;
    pitch杆:pitch期望角;
    yaw杆:偏航角速度期望值;
    油门杆:上升/下降的期望速度,上下限可以在 PILOT_SPEED_UP、PILOT_SPEED_DN 中配置;
    什么时候上升?什么时候下降?
    当油门杆超过中位值的 deadband (或称deadzone)区域时飞机上升,反之则下降,deadband 一般设置为油门杆 40% ~ 60%位置,根据自稳模式下飞机悬停时候的油门pwm位置而定,由THR_DZ 配置;
  • 定点模式
    roll杆:水平速度 x 分量期望角;最大最小值可配置;当摇杆回归中位值时,会触发位置控制器,位置期望值是rol、pitch摇杆回归中位值时刻的位置量;
    pitch杆:水平速度 y 分量期望角;最大最小值可配置;
    yaw杆:与定高模式相同;
    油门杆:与定高模式相同;

电调校准

  • 电调需要校准,这样它们才能知道飞控发出的最小与最大的PWM范围值;
  • 每种品牌的电调可能校准方式都有所差异,具体需要查看电调说明书,有可能音调或者提示方式不同,不过一般都是大同小异。
  • 确保你已经把电调装好了,并插好好了相关信号线到飞控。
  • 校准必须拆除螺旋桨!
  • 不要使用USB连接电脑
  • 一般电调校准步骤:
    • 0)遥控器接收器和飞控要分开独立供电,过程中遥控器接收器的电源保持接通!
    • 1)打开遥控器,将油门推到最大,直到第五步。
    • 2)飞行器插上电池,解开安全开关,此时PIX状态灯应该是红色、蓝色、黄色循环闪烁,进入电调校准程序。
    • 3)拔掉电池,然后重新插入电池,三色灯会继续闪烁,马上长按安全开关进行解锁,数秒后,安全开关常亮后松手。
    • 4)等待你的电调发出声音,常规的哗哗声响说明你的电池数量(例如3S响三声,4S响4声),然后接着会有2声,说明最大油门被识别。
    • 5)将遥控器油门打到最低值,此时,电机应该会发出长响,说明最低油门也被识别和记录。
    • 6)接着尝试推油门,看看是否全部电机都可以正确转起来,而且是同步的,如果是,说明校准完成。
    • 7)油门保持最低,断开电池,完成校准过程。
  • 参考文献:
    https://doc.cuav.net/tutorial/copter/calibration/esc-calibration.html




在这里插入图片描述

点赞、收藏、关注哟!
  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值