文章目录
- 前言
- 硬件使用说明
-
- 一、Hyper982 RTK模块
-
- 作为移动站使用
-
- 通过串口助手设置RTK参数(移动站)
- 设置飞控参数
- 资源下载
-
- 1、地面站软件和固件可执行文件
-
- 独家汉化版QGC地面站(推荐)
- 原版QGC地面站
- Mission Planner地面站
- PX4固件可执行文件
- ArduPilot固件可执行文件
- 2、安装好环境的虚拟机
-
- 安装虚拟机
- 打开虚拟机文件
- 3、完整的各版本PX4、ArduPilot、QGC源码
-
- PX4
- ArduPilot
- QGC
- 4、常用网站
-
- PX4
- ArduPilot
- QGC
- ROS
- 一、无人机基本常识/预备知识
-
- (1)无人机飞行原理
- 无人机硬件组成/各组件作用
-
- 1.飞控
- 2.GPS
- 3.接收机
- 4.电流计
- 5.电调
- 6.电机
- 7.电池
- 8.螺旋桨
- 9.UBEC(稳压模块)
- 无人机硬件选型
- (2)飞控硬件简介
- (3)飞控固件简介
- 2、QGC地面站的使用
-
- 航路规划
-
- 1.手动打点
- 2.矩形波式测绘规划
- 设置遥控器调参通道
- 安全保护
-
- 地理围栏
-
- 故障保护地理围栏
- 地理围栏规划
- 遥控丢失保护
-
- 低电量保护
- 设置遥测数据流
- 三、PX4基础配置
-
- (一)QGC下载固件
- (二)Mission Planner下载固件
- (三)常见问题及解决方法
- (四)选择机型
- (五)校准传感器
- (六)遥控器通道设置
- (七)控制分配(Control allocate)
- 四、基于超维E300飞控无人机装机教程
-
- (一)刷写固件(参照本篇第三章的PX4基础配置)
- (二)选择机型(参照本篇第三章的PX4基础配置)
- (三)安装
- 1. 焊接分电板
- 2. 安装电机并接电调
- 3. 安装飞控
- 4. 安装遥控器接收机
- 5. 安装GPS
- (四)校准传感器及遥控器(参照本篇第三章的PX4基础配置)
- 五、基于超维E300飞控F450无人机APM基础配置(mission planner地面站)
-
- mission planner地面站安装
- 下载固件
- (二)选择机型
- 校准加速度计
- 校准地平线
- 校准指南针
- 校准遥控器
- 校准电调
- 测试电机
- 设置室内定位参数
- 其他常用参数设置
- 六、飞行模式讲解及飞行实操
-
- (一)飞行模式切换
- (二)自主和手动模式
- (三)不同机型支持的飞行模式
- 七、PX4日志分析
-
- 前言
- (一)下载日志
- (二)ulog转CSV
- (三)利用flightplot软件分析PX4的ulog日志
- 1.windos安装
- 2.ubuntu18.04安装
- (四)使用PlotJuggler分析PX4日志
- (五)设置日志记录条件
- (六)添加自定义日志消息
- 八、PX4常用参数解析
-
- 前言
- (一)常用参数设置
- 1. 解锁检查参数
-
- 1、Kill switch engagen
- 2、Power redundancy not met/check battery:
- 3、USB连接检查CBRK_USB_CHK(USB相关报错)
- 4、安全开关检查CBRK_IO_SAFETY
- 5、high Accelerometer bios
- 6、high gyro bios
- 7、compasss inconsistent
- 8、GPS报错
- 9、Accels inconsistent
- 10、偏航角一直漂移
- 11、PREFLIGHT FAIL: ACCEL SENSORS INCONSISTENT - CHECK CALIBRATION
- 12、PREFLIGHT FAIL: GYRO SENSORS INCONSISTENT - CHECK CALIBRATION
- 13、PREFLIGHT FAIL: EKF INTERNAL CHECKS
- 14、PREFLIGHT FAIL: EKF YAW ERROR
- 15、PREFLIGHT FAIL: EKF HORIZ POS ERROR
- 16、PREFLIGHT FAIL: EKF VEL ERROR
- 17、PREFLIGHT FAIL: EKF HGT ERROR
- 18、yaw estimate error
- 19、CPU load too high / No CPU load information
- 20、 Crash dumps present on SD,vehicle needs service
- 21、连接地面站能解锁,断开地面站不能解锁
- 22、无法解锁飞机,报错arm denied
- 二、安全设置
-
- 1.低电量保护
- 2.遥控信号丢失保护
- 3.地理围栏保护
- 4.数据链路丢失保护
- 5.返航模式设置
- 6.着陆模式设置
- 三、任务航点参数
-
- 航点半径
- 从原点到第一个航路点的最大水平距离
- 航路点之间的最大水平距离
- 最小悬停高度
- 启用偏航控制
- 起飞高度
- 是否需要起飞点
- 航路点航向接受所需的最大偏航误差(度)
- 偏航模式
- 置信半径
- 固定翼着陆前高度置信半径
- 固定翼高度置信半径
- 盘旋半径(仅固定翼)
- 四、无人机室内视觉定位参数
- 五、其他参数
-
- 无人机长时间无法进入定点模式
- 关闭蜂鸣器
- 设置无人机自稳或定高模式下最大的倾斜角度
- 状态估计算法选择参数
- 空速计开关
- 发动机故障检测开关
- 固定翼模式解锁检查
- 电调检查
- DShot电调配置
- DShot 电机最小输出
- 主GPS的串口配置
- 主GPS协议
- MAVLink的串口配置
- 最大MAVLink发送速率
- 成功起飞后的动作
- 修改定高数据来源
-
- 设置日志记录条件
- 设置自动加锁时间
- 无法用摇杆解锁,只能用开关解锁
- 六、控制参数
- 参数的导出和导入
- 自定义参数
- 九、APM常用参数
-
- 1、碰撞检测
- 2、设置串口输入为接收机输入
- 3、避障
-
- 1、设置测距传感器参数
- 2、设置避障参数:
- 4、电子围栏
- 5、电机参数
- 6、循环执行航线
- 7、无人机最大倾斜角度
- 8、无人机最大上升下降速度
- 9、无人机AUTO模式飞航线时的速度
- 10、loiter模式的最大速度限制
- 11、EK3_PRIMARY
- 12、PSC_JERK
- 13、低电量返航
- 14、设置定位来源为视觉
- 15、设置遥测数据频率
- 16、使用网口进行mavlink通信
- 17、解锁报错“yaw inconsistent *** deg”
- 18、设置双天RTK参数
- 十、PX4参数调试
-
- 1、滤波参数
- 2、PID参数
-
- 自动调参
- 手动调参
-
- 角速率环
- 姿态环
- 十一、常见问题及解决方案
-
- 1、地面站如何连接无人机
- 2、飞控用USB线连不上电脑地面站
- 3、无人机上电后,电调识别不到信号,一直嘀嘀嘀叫(或者不叫),
-
- 4、无人机起飞后侧翻的可能原因,怎么排查
- 5、无人机没法垂直起飞(起飞一边倒),可能的原因,怎么排查
- 6、无人机飞的时候电机声音尖锐,电机温度很高,可能的原因
- 7、室外定点飞行时,无人机原地转圈,越转越大,可能的原因
- 8、室外定点飞行时,一直往一个方向飘,可能的原因
- 9、飞控连不上mavros(通信问题),可能的原因(检查底层参数)
- 10、地面站P900数传连接多架载具,参数加载不全,信息更新缓慢
- 4、GPS/RTK问题
-
- 1. 地面站不显示0颗星
- 2.在室外空旷的地方一直显示零颗星,或者搜星很低
- 3.双天线RTK航向不准
- 4. 无人船跑航线原地打转,应该怎么排查
- 5.双天线rtk在室外搜索卫星的时候,偶尔会不出现,出现的时候会显示进入固定
- 5、PX4多旋翼无人机
-
- 1.在室内用雷达定高可以正常飞,但是用气压计定高高度不好控制
- 2. 无人机解锁失败,应该怎么解决
- 3.飞控的偏航角一直飘移/误差较大
- 无人机飞的时候按一定频率上下抖动(或者不断的怠速/复飞)
- 无法修改条件参数
- 4.舵机高频抖动,电机断断续续的转动
- 5.飞控在重刷固件后能连地面站,重启后连不上地面站
- 6.无人机无法记录日志,应该怎么解决。
- 7.PX4固件用数传连地面站断断续续,或一直卡在加载参数
- 8.无人机解锁后刹车开关不生效
- 9.PX4固件无人机起飞模式和任务模式无人机只解锁不起飞
- 6、ArduPilot固件
-
- apm固件在mavros里获取不到位置、姿态等信息
- apm固件使用双天线RTK航向
- apm固件拨遥控器摇杆地面站没反应
- 刷完固件后没有姿态,不断显示报错Unable to detect board type
- 上电后电机一直响,解锁电机不转
- 7、无人船与无人车
-
- RTK
- 在设置航线任务后,点击开始任务,飞机的旋翼都会转,但是不会飞起来,然后就立刻显示飞行计划已完成
- 如果是气压计定高,那么误差会比较大,定点或者定高飞油门打到底可能都不起飞
- 如果把电机和桨叶反着装,那么遵循的还是
- RQT 报错:
- 打开之后没有话题选择
- 飞机维修的时候
- 2.4.8飞控的gps不亮灯,但gps卫星数为0,检查scl与sda接线
- 调整网口与主板的顺序
前言
适用人群:
希望进一步掌握无人机装调的飞手
从零搭建无人机硬件平台的学生/教师
无人机爱好者,开发者
其他尚未入门开源PX4固件调试的学习者
新手学习路线:
1,组装
组装之前需要了解每个元件的作用,每个元件的关键参数。硬件的选型等
直播回放
无人机装调与测试(一):无人机基本常识/预备知识
硬件使用说明
一、Hyper982 RTK模块
资料下载地址:
通过网盘分享的文件:Hyper982 RTK
链接: https://pan.baidu.com/s/1UgYlbkXWwKkvOlBuMgVG-w?pwd=dh9j 提取码: dh9j
–来自百度网盘超级会员v8的分享
作为移动站使用
通过串口助手设置RTK参数(移动站)
可以通过串口助手配置RTK模块的参数,配置指令是 ASCII 格式(支持字母大小写)每发送一条语句都需回车换行发送才有效,配置完毕最后要发送SAVECONFIG 保存指令,如不发送保存指令断电重启配置会失效。

将模块通过USB连接电脑,如果识别不到USB端口,可以安装CH340驱动


打开串口助手,选择模块的端口,波特率默认115200,然后进入多条发送

如果配置移动站的分别发送下面的命令配置模块
清除设置,恢复出厂设置
freset
配置为移动站
mode rover
设置串口1的波特率为230400
config com1 230400
设置串口1发送GGA语句,发送间隔为0.05秒(20Hz)。
gpgga com1 0.05
设置串口1发送THS语句,发送间隔为0.05秒(20Hz)。
gpths com1 0.05
设置串口1发送HDT语句,发送间隔为0.05秒(20Hz)。
gphdt com1 0.05
设置串口1发送RMC语句,发送间隔为0.05秒(20Hz)。
gprmc com1 0.05
设置串口1发送UNIHEADINGA 语句,发送间隔为0.05秒(20Hz)。
UNIHEADINGA com1 1 0.05
设置串口1发送AGRICA 语句,发送间隔为0.05秒(20Hz)。
AGRICA com1 1 0.05
保存设置
saveconfig
模块一共有三个串口,其他串口的配置方式也一样,只需要改一下端口和发送时间间隔就行,例如gpths com2 0.1表示配置串口二以0.1秒的间隔发送THS语句。
注意:USB口对应的是模块的串口2,所以设置串口2输出的语句也会同时从USB口输出,并且如果修改了串口2的波特率,USB口的波特率也随之改变,此时如果要保存设置,需要将串口助手波特率改成新设置的波特率再发送saveconfig命令保存。
例如:
执行完config com2 230400后,需要将串口助手的波特率设置成230400,再发送其他配置命令。
设置飞控参数
4.6.0以前老版本固件
修改GPS_TYPE为25

修改串口和波特率,例如RTK接到飞控的TELEM2口,则设置如下:
SERIAL2_BAUD设置为RTK配置的波特率
SERIAL2_PROTOCOL设置为GPS。

修改天线偏移:
先设置GPS_MB1_TYPE为1,然后重启飞控

就可以看到下面三个参数

天线偏移采用“前右下”坐标系,以机头为前方,以从天线为原点,单位为米
主天线在从天线前边,GPS_MB1_OFS_X为正
主天线在从天线右边,GPS_MB1_OFS_Y为正
主天线在从天线下边,GPS_MB1_OFS_Z为正
反之为负

设置主天线位置
主天线位置也是“前右下”坐标系,以机头为前方向,机体中心为原点,单位为米。
参数如下:

更新频率根据RTK的设置来设置,单位为Hz
4.6.0以后更新版本固件
修改GPS1_TYPE为25;

修改串口和波特率,例如RTK接到飞控的TELEM2口,则设置如下:
SERIAL2_BAUD设置为RTK配置的波特率
SERIAL2_PROTOCOL设置为GPS。

修改天线偏移:
先设置GPS1_MB_TYPE为1,然后重启飞控

就可以看到下面三个参数

天线偏移采用“前右下”坐标系,以机头为前方,以从天线为原点,单位为米
主天线在从天线前边,GPS1_MB_OFS_X为正
主天线在从天线右边,GPS1_MB_OFS_Y为正
主天线在从天线下边,GPS1_MB_OFS_Z为正
反之为负

设置主天线位置
主天线位置也是“前右下”坐标系,以机头为前方向,机体中心为原点,单位为米。
参数如下:

更新频率根据RTK的设置来设置,单位为ms,例如20Hz就设置为50ms

资源下载
1、地面站软件和固件可执行文件
独家汉化版QGC地面站(推荐)
优点:
1、修复了官方QGC的中文BUG
2、进行了深度汉化
3、添加了网络差分数据转发(NTRIP)功能(RTK才需要设置这个,普通GPS不需要设置)
4、添加了天地图
切换到中文版:
点击左上角软件图标-》软件设置-》常规-》语言,选择中文

下载地址
链接:https://pan.baidu.com/s/1Rne8v5KpRZjRkFYz9cPm3A?pwd=cwkj
提取码:cwkj --来自百度网盘超级会员V6的分享
NTRIP功能使用方法
点击左上角软件图标,选择软件设置->常规,进入下面的页面

用千寻账号,移动的目前还不支持
千寻账号设置方法Host Adress填IP Server Port填8002
Username填卡号 Password填密码
Mount point 填AUTO
最后一个不填
然后确保手机有网重启地面站,用数传连上飞控
RTK搜到星后,地面站会语音提示“网络差分已连接”,然后过个几秒RTK就会进固定解
原版QGC地面站
原版QGC地面站中文版有bug,需要切换到英文版使用

下载地址:
链接:
https://pan.baidu.com/s/1Jx_wbxGZcosB5fknkQDxwA?pwd=cwkj
提取码:cwkj
–来自百度网盘超级会员V6的分享
Mission Planner地面站
下载地址:
链接:
https://pan.baidu.com/s/1ef1Hb7wtWUu_mGM8hRIHMg?pwd=cwkj
提取码:cwkj
–来自百度网盘超级会员V6的分享
PX4固件可执行文件
可执行文件可以直接通过地面站下载到飞控
可以通过PX4 github下载或者从网盘下载
PX4 github地址
https://github.com/PX4/PX4-Autopilot
点击下图链接

划到最下面就可以下载

默认是最新稳定版,如果要下载其他的版本可以从下面切换

网盘地址:
https://pan.baidu.com/s/1NQfdqz06EddHfn_QsvkOmg?pwd=cwkj 提取码: cwkj
ArduPilot固件可执行文件
在线下载地址:
https://firmware.ardupilot.org/
网盘地址:
https://pan.baidu.com/s/1vqS3d7DvQP3T5c0dF0iGoA?pwd=cwkj 提取码: cwkj
2、安装好环境的虚拟机
下载地址
链接:
https://pan.baidu.com/s/1vI5yMev7mPPWkn6alAoMWA?pwd=cwkj
提取码:cwkj --来自百度网盘超级会员V6的分享
虚拟机提供了VMware Workstation 16 PRO和VMware Workstation 17
建议安装VMware Workstation 17
PX4源码所有子模块都已下载完全
先make clean再编译
安装虚拟机
windos安装:
从网盘下载exe文件双击安装即可
ubuntu安装:
先从网盘下载.bundle文件,然后执行:
chmod +x XXXXX.bundle
sudo ./XXXXX.bundle
然后一直下一步输入key即可.
打开虚拟机文件
下载网盘里的虚拟机文件,然后解压
一共有下面的几个虚拟机文件,根据实际需要安装,如果电脑硬盘够的情况下建议安装环境最全的第三个

然后

第二步,选中备份的虚拟机文件

第三步,启动虚拟机

如果想把虚拟机迁移到实物机上,可以参考
Ubuntu系统迁移-优快云博客
3、完整的各版本PX4、ArduPilot、QGC源码
源码需要进行编译,需要二次开发源码的可以下载。
PX4
PX4的github地址
https://github.com/PX4/PX4-Autopilot
网盘里的源码所有子模块都已下载完全
下载后先make clean再编译
下载地址:
链接:
https://pan.baidu.com/s/1vq90Ddkp4DmWzAkmLSza_A?pwd=cwkj
提取码:cwkj --来自百度网盘超级会员V6的分享
ArduPilot
ArduPilot的github地址
https://github.com/ArduPilot
网盘里的源码所有子模块都已下载完全
下载地址:
链接:
https://pan.baidu.com/s/1upRYOjQfqtKtAUPruNcarA?pwd=393y
提取码: 393y
–来自百度网盘超级会员v8的分享
QGC
QGC的github地址:
https://github.com/mavlink/qgroundcontrol
网盘里的各版本官方原版QGC源码,已下载好子模块
下载地址:
通过网盘分享的文件:原版完整QGC源码
链接:
https://pan.baidu.com/s/1rqBuDSehBsGC0OntOpDVKg?pwd=pp99
提取码: pp99
–来自百度网盘超级会员v7的分享
4、常用网站
PX4
PX4github
- PX4用户手册
https://docs.px4.io/master/en/
可以切换版本和语言


PX4开发者手册
https://docs.px4.io/master/en/development/development.html
PX4日志分析网站
https://logs.px4.io/
ArduPilot
github
https://github.com/ArduPilot
开发手册
https://ardupilot.org/dev/
使用手册
https://ardupilot.org/ardupilot/index.html
在线日志分析工具
https://plot.ardupilot.org/
QGC
QGC用户手册
https://docs.px4.io/master/en/development/development.html
QGC开发者手册
https://dev.qgroundcontrol.com/master/en/index.html
MAVLINK开发者手册
https://mavlink.io/en/
MAVSDK官网
https://mavsdk.mavlink.io/main/en/index.html
ROS
mavros wiki
http://wiki.ros.org/mavros
ros wiki
http://wiki.ros.org/
XTDrone
https://gitee.com/robin_shaun/XTDrone
浙大FASTLAB
http://zju-fast.com/
古月居
https://www.guyuehome.com/
一、无人机基本常识/预备知识
(1)无人机飞行原理
无人机硬件组成/各组件作用
1.飞控
飞控的作用相当于无人机的大脑,它内部集成了姿态传感器,气压高度计等传感器,同时通过外接GPS,VIO等可以或者位置信息,在飞控内部经过对这些传感器数据的处理获取无人机的状态信息,同时通过PID控制算法可以计算出每个电机的输出,进而控制无人机平稳的飞控。
飞控的接口定义:https://docs.holybro.com/autopilot/pixhawk-6c-mini/pixhawk-6c-mini-ports
关键参数: 处理器 IMU
2.GPS
GPS的作用是在室外为无人机提供定位(室内由于遮挡,GPS会搜不到卫星信号),为保证定位精度,一般搜到10颗星以上再使用。
关键参数: gps芯片,外置罗盘型号
3.接收机
接收机的作用是接收遥控器的遥控信号,通过sbus/ppm协议发送给飞控,从而让无人机可以按照遥控指令飞行。M1无人机采用的是图数一体接收机,不仅能传输遥控信号,还能传输飞控的数据,只需要把接收机的串口接到飞控的数传口即可。
协议类型: ppm/sbus/pwm
4.电流计
电流计的作用是将电池电压转成5V给飞控供电,同时可以测量电池的电压和飞行时耗电电流。
关键参数: 支持的最大电压/电流
5.电调
电调(电子调速器)的作用是接收飞控的控制信号(PWM/Dshot),并控制电机按照飞控期望的转速旋转。
关键参数: 支持的最大电压/电流,驱动协议(pwm/dshot)
6.电机
电机带动桨叶旋转为无人机提供升力。电机有正反之分,顺时针旋转为正,逆时针旋转为反,安装桨叶时,顺时针旋转的电机装正桨,逆时针旋转的电机装反桨。
关键参数: KV值,支持的最大电压/电流,cw/ccw,尺寸(常见标注方式如“2208”表示定子直径22mm、厚度8mm)
7.电池
电池的作用是给无人机供电,航模锂电池的放电倍率较高,存在一定的危险性,因此要小心使用。需要注意以下事项:
- 充电环境: 使用专用的锂电池充电器,并确保充电环境通风良好。不要在高温、潮湿或易燃的地方进行充电。
- 充电监控: 电池的满电电压为每节4.2v,4S电池即为16.8V。在充电过程中,时刻监控电池的充电状态。不要超过电池规定的充电电压范围,以防止过充。使用具有过充保护功能的充电器,以减小安全风险。
- 放电深度: 避免将锂电池放电至过低电压,因为这可能会损害电池并降低寿命。通常,建议在电池电压低于每节3.7V(4S即为14.8V)时停止使用并进行充电。(由于无人机起飞后电池存在压降,这里的电压是指未飞行时的电压)
- 温度控制: 避免在极端温度下使用或存储锂电池。高温会导致电池性能下降,甚至引发过热、起火的风险。低温下,电池容量可能减少,影响性能。
- 储存注意事项: 如果长时间不使用锂电池,应储存在50-60%的电量水平,并定期检查电池状态。存放电池时,要选择干燥、阴凉的地方。
- 防止短路: 避免短路情况,确保电池连接器和线路完好无损。使用合适的连接器,并避免金属物体碰触电池引脚。
- 适当使用: 根据生产商的指南和规范使用锂电池。避免过载、过放电,不要在超出电池规定电流范围的情况下使用。
- 防止物理损坏: 避免撞击、挤压或其他物理损坏。如果锂电池外壳有损坏,应停止使用并进行更换。
- 监控充电温度: 在充电时监控电池温度,如果发现异常情况,应立即停止充电并检查原因。
- 应急处理: 在使用锂电池时,应随时准备好适当的灭火器材,并了解应对锂电池火灾的应急措施。
关键参数: 电压,容量,放电倍率
8.螺旋桨
螺旋桨的作用是为无人机提供升力和扭力, 桨叶有正反之分,顺时针方向旋转的电机装正桨,逆时针方向旋转的电机装反桨。不同正反的电机通常带有不同的标号,有CW(正桨,顺时针方向旋转)和CCW(反桨,逆时针方向旋转)两种。还有“ 5045”和“ 5045R”标签,像这样标记时,缺少R的表示是CW,而有“ R”字母的则代表CCW。
**关键参数:**尺寸(例如“1045”:前两位数字:代表螺旋桨的直径,单位为英寸。后两位数字:表示螺距(螺旋桨旋转一周前进的垂直距离),单位为英寸),cw/ccw
9.UBEC(稳压模块)
UBEC的作用是将电池电压转成机载设备(板载计算机Jeston nano、舵机等)的供电电压,从而给机载设备供电,由于不同的机载设备供电电压可能不一样。因此一架无人机上可能会带多个UBEC。
**关键参数:**支持的最大电压/电流
无人机硬件选型
无人机硬件的选型需要考虑的因素比较多,例如载重,续航,速度,轴距等
无人机的轴距和桨叶尺寸是关联的,例如450mm轴距的无人机通常用9寸或者10寸桨。
(2)飞控硬件简介


(3)飞控固件简介
固件是是烧录在飞控硬件中的软件,pixhawk飞控支持PX4和ArduPilot两种版本的固件。
本次课程重点以PX4固件为基础进行讲解



2、QGC地面站的使用

航路规划
注意航路规划时,设置完航点后,页面左下角有一个“地形高度”那一栏,标红的航点说明对应的航点高度不可达。默认的高度是相对于起飞点的高度,例如起飞点的高度是5米,那么每个航点的高度至少要大于5米才不会标红,如果小于5米就会标红,标红的话就无法执行任务模式了。

如果标红的话,可以把高度改高一点,或者改成相对于地形的高度,如下。

1.手动打点
点击文件-》空白

默认必须先设置takeoff点,才能设置其他航点

如果想不设置takeoff点直接设置航点(例如无人船等载具),可以在地面站常规设置中勾选下图选项:

然后就可以不用设置起飞点直接设置航点了。

点击“takeoff”后,会在无人机当前位置生成起飞点,然后再点击“航点”按钮,然后在地图上点击即可设置航点位置。设置完的航点也可以鼠标左键选中后进行拖动改变其位置。
我这里在点击起飞点后,继续设置了三个航点,一共四个点,如下图,地图右侧有每个行点的设置页面。

点击相应航点左侧的小垃圾桶图标可以删除航点。

点击小垃圾桶图标右侧的Waypoint可以设置点的类型,默认是Basic类别,下面有Waypoint(航点)、Return To Launch(返回起飞点)、Land(降落)、Takeoff(起飞)四种,分别对应到达该航点后执行的动作。

上面四种点对于普通四旋翼的使用来說已经够了,但是如果需要执行一些高级一些的动作(如垂起模式切换),需要在下面的其他类别中去找。

我这里将第一个点设置为起飞点、第二和第三个点设置为航点,第四个点设置为返航点,这样的话无人机会起飞并先飞到第二个点,再飞到第三个点,在到达第三个点后返航到起飞点。

在Mission Start那一栏可以设置航点高度和飞行速度等值,这一栏的设置会对所有任务点都有效。

在每个任务点里面也可以设置高度和停留时间等值,但这里的设置只对该任务点有效,在每个任务点的右侧有一个三道杠的图标,可以点击该图标设置该任务点的更多信息

如下图:

“编辑位置”可以对位置进行详细编辑

“显示所有值”可以对任务点的所有参数进行编辑

2.矩形波式测绘规划
点击图案-》测绘

点击勾画,然后在地图上点多边形的顶点

点完后点勾画完毕

点击下图进行编辑

可以设置间隔,角度,转弯距离等

如果想把下图设置航线距离的单位换成米

可以把相机禁用就行了


设置遥控器调参通道
通过设置调参通道,可以将遥控器的某一个通道(如旋钮)映射到PX4的一个参数当中,从而可以通过遥控器旋钮实时的调整PX4参数的值。
在下图先设置参数对应的遥控器通道,最多可以同时设置三个参数通道。
例如我这里遥控旋钮对应的是通道9,我将参数1的调参通道设置为遥控器的通道9.

然后将内环俯仰角速率映射到参数1上,点击下面的高级设置-》将遥控设到参数…

然后设置缩放倍数即可。设置完毕后可以动一下旋钮看看参数变化是否正常
其中遥控遥控通道的1000对应-1,1500对应0,2000对应1,对应线性的归一化。
对应参数为: 归一化的遥控通道值*Scale+Center Value
Scale就是缩放的系数,
Center Value是遥控通道为中位值时的参数值
MIn Value对应参数的最小值
Max Value对应参数的最大值
例如参数MC_PITCHRATE_P的Center Value为0.15,Scale为0.1
那么遥控通道值为1500时,MC_PITCHRATE_P为0.15,通道值为1000时,则对应参数MC_PITCHRATE_P为0.05,通道值为2000时,则对应参数MC_PITCHRATE_P为0.25.通道值为1750时,则对应参数MC_PITCHRATE_P为0.2.

安全保护
地理围栏
围栏是一个虚拟边界,用于定义机体可以在哪些地方行驶。 围栏可用于防止机体飞出遥控器的范围,或进入不安全或受限制的空域。
PX4提供了两个独立的机制来指定围栏:
一个是基本的“故障保护”地理围栏,定义了一个简单的圆柱体。
一个是可以使用围栏规划(QGroundControl)定义更复杂的几何图形。
地理围栏适用于所有模式,包括任务和手动飞行。
故障保护地理围栏
故障保护围栏定义了一个圆心在home点的圆柱,它具有指定的最大半径和高度。
设置中还包括越界时的故障保护动作。 可能只是一个警告通知,但更常见的是机体会立即返回一个安全位置。
设置了电子围栏后,飞机必须要有GPS信号才能解锁,如果想在没有GPS的情况下解锁,需要将电子围栏的动作设置维Disable

地理围栏规划
PX4 支持由多个圆形和多边形区域组成的复杂地理围栏边界,这些区域可以定义为禁出或禁入区域。
围栏规划
打开 QGroundControl > Plan View.

选择规划类型为Fence。 这将显示地理围栏编辑器。
选择多边形围栏或圆形围栏按钮,可将添加所需基本类型的围栏到地图中。 这也在编辑器中增加了此类围栏的条目。
在地图上调整围栏的形状和位置。
围栏中心的圆点可以用来调整围栏的位置。
边界上的圆点可以用来调整半径。
角(顶点)上的圆点可以用来改变多边形的形状。 点击线段中间可以在两个顶点中添加新的顶点。
围栏编辑器可以设置围栏是禁出或禁入区域,还可以通过(编辑单选按钮)选择一个围栏来编辑或者通过删除按钮来删除。
可添加任意数量的围栏
完成后,点击(右上角) 上传 按钮向车辆发送围栏(连同集结和任务)。
在围栏故障保护中需要设置越界动作。
遥控丢失保护
此保护用于设置在丢失遥控信号后的动作,在Safety->RC Loss Failsafe Trigger里面设置保护动作和信号丢失的最大时间

低电量保护
在Safety->Low Battery Failsafe Trigger设置三个低电量水平的阈值和触发的动作。

设置遥测数据流
PX4的遥测数据流数是固定的。只能对APM的遥测数据流进行设置:
设置页面如下,如果勾选了“所以控制流由载具设置控制”,则数据流的速率有飞控的参数设置,如果没有勾选的话,载具的参数设置是没有作用的

三、PX4基础配置
(一)QGC下载固件
先不连接飞控,点击地面站左上角图标-》载具设置-》固件


然后用USB将飞连接电脑,注意飞控不要用电池或其他USB以外的设备供电,确保电脑识别到了飞控的usb端口,然后会弹出下面的页面(如果没有弹出下面的页面,可以点此解决),直接下载的话默认下载的是最新稳定版
也可以选择下载master分支,这是最新的,但可能会有bug。
不同的版本的固件代码可以从下面的网址下载:https://github.com/PX4/PX4-Autopilot/releases固件下载地址
下载二进制文件后,可以通过地面站进行下载,确定后选择.px4文件即可。

下载好固件后,我们能够在概括里看到固件版本

(二)Mission Planner下载固件
推荐使用QGC下载固件,如果QGC无法下载固件,可以尝试用Mission Planner下载
飞控先不连地面站
点击初始设置-》安装固件Legacy-》加载自定义固件,然后选择需要下载的固件(.px4文件)

点击OK,然后插上飞控
地面站会自动识别飞控并下载固件,下载完后如图

(三)常见问题及解决方法
(一)pixhawk2.4.8飞控只能下载fmu v2版本固件解决办法
pixhawk2.4.8飞控是可以下载fmu v3版本固件的,但是有的pixhawk2.4.8飞控会出现只能下载fmu v2版本固件的问题,如下图,v2版本支持的载具很少,属于阉割版固件,因此建议使用fmu v3版本固件

解决办法是在下载固件之间,先刷写Bootloader,勾选“高级”复选框,就会出现“刷写ChibiOS Bootloader"按钮,如下图。点击此按钮,然后再刷写固件,此时刷写的就是fmuv3版本固件

如果没有上图的刷bootloader按钮,也可以修改飞控的参数SYS_BL_UPDATE,将其改成1,然后重启飞控,再下载固件,就可以下载V3固件了。
(二)无法弹出下载固件页面解决办法
1、电脑识别不到USB端口
首先排查电脑是否识别到USB口,在设备管理器里查看,PX4固件会出现下面的端口

APM固件会出现下面的端口

如果没有出现上面的端口,说明没有识别到飞控的USB端口,可以尝试换根USB线
2、用虚拟机里的QGC下载固件
如果用虚拟机里的QGC下载固件,需要将飞控连接到虚拟机,如果虚拟机里的系统无法识别到飞控的端口。电脑插上飞控,然后点击下图的“连接”即可将飞控连接到虚拟机。

然后再下载固件,下载方法与windos相同,在下图页面重新插上飞控USB即可

(四)选择机型
将飞控连接至地面站,四旋翼无人机将机架设置为Geneic Quadcopter

然后点击右上方“应用并重启”

重启后,在概括里能够看到选择的机型,如图:

(五)校准传感器
将飞控通过usb线连接QGC地面站
1、校准罗盘
在校准罗盘时,如果有使用外置罗盘(常见的GPS中都带有外置罗盘),请确保外置罗盘的方向和飞控内置罗盘的方向一致

选择传感器->罗盘->确定,开始校准

将无人机置于红色所示的任何方向,并保持静止。出现提示后(方向图像变为黄色),沿任意/两个方向绕指定轴旋转。当前方向校准完成后,屏幕上的相关图像将变为绿色。

对所有方向重复校准过程。
在所有方向校准完毕后,QGroundControl将显示Calibration complete(校准完成)(所有方向图像将显示为绿色,进度条将完全填满)。然后可以继续下一个传感器。

2、校准陀螺仪
单击陀螺仪传感器按钮,将无人机水平放在地面上,保持静止。单击“确定”开始校准。顶部的条形图满代表校准成功

3、校准加速度计
单击加速计传感器按钮,单击“确定”开始校准。

根据屏幕上的方向提示,当方向图像变为黄色,保持无人机静止。当前方向校准完成后,屏幕上的相关图像将变为绿色。

对所有向重复校准过程。在所有位置校准车辆后,QGroundControl将显示Calibration complete(校准完成)(所有方向图像将显示为绿色,进度条将完全填满)。
4、校准地平线
如果不校准地平线,无人机在非定点飞行中位置可能持续的漂移。
将无人机置于水平面上,点击校平地平线->OK,然后保持静止,直到绿色进度条满

5、校准遥控器
切换到遥控器页面,检查右下角是否能识别到通道,如果能识别到通道,就可以进行校准,选择右上角的操作方式,然后点击校准

然后点击“确定”

再点击“下一步”

将遥控器摇杆移动到下图中指示的位置。

当杆就位时,地面站会提示下一个需要拨的位置,拨完所有位置后,按两次“下一步”保存设置。

(六)遥控器通道设置
切换到飞行模式页面,可以先拨一下需要设置的遥控器拨码开关,看其在地面站中对应的是哪个通道

设置遥控器拨码开关
切换到飞行模式页面,可以先拨一下需要设置的遥控器拨码开关,看其在地面站中对应的是哪个通道。

设置飞行模式切换开关
点击“模式频道”右侧的复选框,设置相应的遥控器拨码开关通道。

然后分别设置三档对应的飞行模式。

设置其他切换开关
其他的开关通道在飞行模式右侧,如下,需要设置哪个,就把这个开关右侧的遥控器通道进行设置即可,我这里设置了一个刹车(Kill switch),通道为遥控器的第六个通道。刹车的作用是使电机直接停转,可根据需要进行设置

(七)控制分配(Control allocate)
PX4 1.13.3以上版本的PX4固件才可以支持控制分配功能,其中1.13.3需要使能Control allocate参数才能使用,设置参数如下,1.14及更新版本固件不需要设置此参数,直接即可使用此功能

设置好参数后重启飞控,进入到飞控的Actuators页面,点击对应通道右侧的复选框,选择对应的电机即可

无人机我们选择AUX通道(快速响应)
校准PWM协议的电调时,可选择对应的电调协议以及电机,将最小输出先设置成1000,然后打开使能滑块,将所有电机拉到最大,此时再给无人机上电(一定不要安装桨叶),上电后能听到嘀嘀两声后,将所有电机拉到最小,能听到长滴的一声,这个是正确的校准点击。
Dshot协议电调不需要校准。

设置好4个电机的输出通道后如下图:我这里使用的是AUX通道,对应飞控的辅助通道


如果想使用main通道,则设置如下:

电调的输出协议可以在下图的页面设置,只有AUX通道才可以设置DShot协议

调整电机转向
电调校准完毕后,给电机设置10%的油门作为它的怠速。重新接上电池
注意:测电机转向的时候,不要所有电机一起拉,一个一个检查转向

PWM协议的电调:检查电机转向是否和下图一致,如果不一致,将电调与电机的三根连接线的任意两根互换顺序即可调整转向。

Dshot协议的电调可以在地面站中直接设置电机的转向,如下图,set Spin Direction 1表示顺时针方向,set Spin Direction 2表示逆时针方向

例如想设置motor1的方向为逆时针,先点击Set Spin Direction 2,然后在弹出来的4个电机里点击Motor1即可,如果设置后没有生效,重启一下飞控即可。

四、基于超维E300飞控无人机装机教程
注意:刷写固件、选择机型、校准传感器及遥控器可参照本篇第三章的PX4基础配置
(一)刷写固件(参照本篇第三章的PX4基础配置)
(二)选择机型(参照本篇第三章的PX4基础配置)
(三)安装
- 焊接分电板
- 安装电机并接电调
- 安装飞控
- 安装遥控器接收机
- 安装GPS
1. 焊接分电板
将电调的黑色地线焊接在分电板负极(-),电调的红色火线焊接在分电板正极(+),焊接时的温度尽量不要太高(300°-350°左右),需做到焊点光滑、不虚焊不短路原则。

焊接完成之后,需要用万用表检查是否短路
2. 安装电机并接电调
将电机安装在无人机机臂上,注意:螺丝不宜过长,如果抵着电机线圈,可能会短路和堵转。

如果自锁电机,需要注意电机的正反。

反桨(可作为1、2号电机)

正桨(可作为3、4号电机)
电机的转向及电机接线顺序如下:
为了保证在飞行过程中判断机头朝向,我们将白色机臂当作机头方向,黑色机臂当作机尾


电机与电调连线
这是使用的电调遵循PWM协议,可以直接将这三根线任意方式连接,后面通过地面站测电机转向。如果转向不对,可任意交换两根线来改变转向。PWM协议是模拟脉冲信号,通过改变这三根线的电压来调整电机转向和转速。

如果电调遵循Dshot协议,这三根线可以任意方式连接,如果转向不对,可以直接在地面站里点击设置旋转方向修改,不用插拔线。

3. 安装飞控
飞控箭头的方向与机头一致
使用电流计给飞控power口供电

1-4号电机信号线接到飞控的AUX9-AUX12口,1号电机对应AUX9,依次类推
注意:飞控的最上面一排是信号线,中间一排是火线,最下面一排是地线

4. 安装遥控器接收机
这里采用的是云卓T10图数传一体的遥控器
安装接收机
可以先将接收机的老安卓口对着下方,接收机右上方的有“— T R”,我们拿出一根6P带卡扣的线(卡扣朝下)自左向右依次为:GND、RX、TX、VCC(一定不要接错线)。

GND连接接收机的—,RX接接收机的T,TX接接收机的R,VCC接第二排的+。
6P带卡扣连接飞控的TELEME 1端口。


准备三根杜邦线,将接收机的“— + P/S”与飞控SBUS IN引脚的“— + 信号线”连接

老安卓左侧第一个小孔是指示灯,第二个小孔是对频按钮(如需对频,长按对频两秒,待指示灯绿灯快闪,此时再打开遥控器,指示灯会绿色常亮,即代表遥控器已与接收机对上频)
接收机两根天线分别安装到两条不同机臂,不要让桨叶打到、扎带绑紧即可。
5. 安装GPS
GPS箭头方向与飞控箭头方向和机头一致,GPS连接到飞控的GPS端口。

(四)校准传感器及遥控器(参照本篇第三章的PX4基础配置)
五、基于超维E300飞控F450无人机APM基础配置(mission planner地面站)
mission planner地面站安装
官网地址
https://ardupilot.org/planner/
可以直接点击下载

或者从网盘下载
链接:https://pan.baidu.com/s/1SkMIzohJRO25GWbo_J944A
提取码:nw1s
–来自百度网盘超级会员V5的分享
下载完双击安装
一路next即可
下载固件
飞控先不连地面站
点击初始设置-》安装固件Legacy-》加载自定义固件,然后选择需要下载的固件(.apj文件)

点击OK,然后插上飞控,

地面站会自动识别飞控并下载固件,下载完后如图

(二)选择机型
第一排选四旋翼,下面的选型

校准加速度计
点击校准加速度计

将飞控水平放置,然后点“完成时点击”

然会回提示左侧放,此时将飞控左侧放

然后依次朝六个面放置并点完成,就可以完成加速度计校准
校准地平线
将飞控水平放置不动,然后点校准水平即可

校准指南针
点击指南针
可以看到会显示当前识别到的指南针(飞控里面有一个,如果外接了会显示两个或者三个)
可点击右边箭头调整优先级,一般外置的放在高优先级。然后勾选需要使用的罗盘。最后点击Start开始校准

校准的时候,手拿飞控朝不同的方向不停的旋转,直到进度条到达100%即校准完成,然后重启即可。

校准遥控器
点击遥控器校准页面,点击校准遥控按钮,然后将摇杆朝各通道拨到最大,然后点完成即可

校准电调
到下面的页面,点击开始,然后给飞控断电,然后插上电池,无人机会在下次上电的时候自动校准电调

测试电机
进入下面的页面,先设置测试的油门,然后点Test motor A,1号电机会转,motor B对应4号电机,motor C对应2号电机,motor D对应2号电机

设置室内定位参数
EK3_SRC1_POSXY设置为6
EK3_SRC1_POSZ设置为6
EK3_SRC1_YAW设置为6
VISO_TYPE设置为1


设置视觉传感器噪声

其他常用参数设置
无人机最大倾斜角度
ANGLE_MAX
这个参数决定了无人机在各模式下的最大倾斜姿态,如果想水平飞的速度快一些,可以把角度改大
无人机最大上升下降速度

loiter模式的最大速度限制
apm固件里只有loiter模式下,在拨杆的时候会限制最大速度,在poshold模式下拨杆限制的时倾斜角度

解锁后电机延时转动时间

六、飞行模式讲解及飞行实操
(一)飞行模式切换
飞行员可以使用遥控上的开关或地面站来切换飞行模式。
并非所有飞行器都可以使用所有飞行模式,并且某些模式在不同飞行器类型上表现不同。
一些飞行模式仅在飞行前和飞行中某些特定条件下起作用(如 GPS 锁定,空速传感器,某个轴的姿态感测)。 除非满足合适的条件,否则 PX4 不会允许切换到这些模式。
在多旋翼自主模式下,遥控器摇杆移动将默认将车辆更改为位置模式(除非处理关键的电池故障保护)。对于自主固定翼飞行,操纵杆运动被忽略。
(二)自主和手动模式
一般来说,飞行模式是手动或自主的。手动模式是指用户通过遥控操纵杆(或操纵杆)控制车辆移动的模式,而自主模式完全由自动驾驶仪控制,不需要遥控控制输入。
提示
某些手动模式可能具有自驾辅助机制,以便更容易获得或恢复受控飞行。 如当遥控摇杆居中时,大部分飞行模式将使飞行器水平。
手动模式可以进一步分为 “自稳” 和 ”特技“ 模式。 在自稳模式下,滚动和俯仰杆设置车辆角度,从而在水平面上左右和前后移动。这将不仅可以使运动变得可预测,而且因为角度受控,飞行器无法翻转。 在特技模式中,RC 摇杆控制角度旋转的速率(绕相应轴)。飞行器可以翻转,虽然机动性更强,但更难飞行。
(三)不同机型支持的飞行模式
固定翼:
手动:自稳,位置,高度,特技
自动:保持, 返航, 任务, 起飞, 降落, Offboard
多旋翼:
手动:自稳,位置,高度,特技
自动:保持, 返航, 任务, 起飞, 降落, 跟随,Offboard
1.位置模式(多旋翼)
[飞行难度:简单] [需要手动/遥控器控制] [需要定位锁定(例如GPS)]
位置是一种易于飞行的RC模式,其中滚动和俯仰杆控制车辆左右和前后方向上的地面加速度(类似于汽车的油门),油门控制升降速度。当摇杆释放/居中时,机体将主动制动,保持水平,并锁定到 3D 空间中的位置 — 补偿风和其他力。 摇杆打满时,机体以MPC_ACC_HOR_MAX开始加速到达最终的速度MPC_VEL_MANUAL。
提示
位置模式对于新手是最安全的手动模式。 不同于定高模式和手动/自稳模式,机体在摇杆中位时会停止,而不是继续直到风阻使其减速。 :::
下图直观地显示了遥感对应的操作(对于美国手的遥控器)。
该模式中降落是很容易的:
使用横滚和俯仰杆控制无人机水平位置于降落点上方。
松开横滚和俯仰杆并给予足够的时间使其完全停止。
轻轻下拉油门杆直到机体触碰地面。
将油门杆一直向下拉以促进和加快着陆检测。
机体将降低螺旋桨推力,检测地面并自动落锁(默认)。
注意
虽然在校准良好的机体上非常罕见,但有时着陆可能会出现问题。
如果机体无法停止水平移动:
您仍然可以在高度模式下在控制降落。 方法与上述相同,除了您必须使用横滚和俯仰杆手动确保机体保持在降落点上方。
降落后检查 GPS 和磁罗盘方向,并校准。
如果机体未检测到地面/降落并自动加锁。可以等机体落地后切换到手动/自稳模式,保持油门杆低位,并使用遥控器手动落锁。 或者,当机体已经在地面上时,您也可以使用刹车开关。
1.1技术摘要
遥控模式下,横滚、俯仰、油门 (RPT) 杆控制相应轴/方向的运动。 摇杆居中使机体水平并将其保持在固定的高度和位置并抗风。
摇杆处于滚动、俯仰、油门杆中位(遥控死区MPC_HOLD_DZ内)时,机体保持 x、y、z 位置稳定,抵抗任意干扰,如风。
中位以外:
横滚/俯仰杆控制机体左右和前后方向(分别)在地面上的水平加速度。
油门杆控制上升下降速度。
偏航杆控制水平面上方的角旋转速率。
起飞:
在地面时,如果油门杆升高到 62.5% 以上(从底部的全范围),机体将起飞。
注解
遥控输入信号是必须的(遥控器,或通过 MAVLink 的游戏手柄/拇指摇杆)。
此模式需要 GPS。
1.2参数
多旋翼位置控制组的所有参数都与位置模式有关。 下面列出了一些特别值得注意的参数。
参数 描述
MPC_HOLD_DZ 启用位置保持的摇杆死区。 默认值:0.1(摇杆全行程的 10%)。
MPC_Z_VEL_MAX_UP 最大垂直上升速度。 默认:3 m/s。
MPC_Z_VEL_MAX_DN 最大垂直下降速度。 默认:1 m/s。
MPC_LAND_ALT1 触发第一阶段降速的高度。 低于此高度,下降速度限制在 MPC_Z_VEL_MAX_DN (或MPC_Z_V_AUTO_DN) 和 MPC_LAND_SPEED(需大于MPC_LAND_ALT2)之间. 默认10米
MPC_LAND_ALT2 触发第二阶段降速的高度。 低于此高度,下降速度限制在MPC_LAND_SPEED (需小于MPC_LAND_ALT1) 默认 5 米。
RCX_DZ 通道 X 的遥控死区。油门的 X 值取决于 RC_MAP_THROTTLE 的值。 例如,如果油门是通道4,则RC4_DZ 指定死区。
MPC_XXXX 大多数MPC_xxx参数会影响此模式下的飞行行为(至少在某种程度上)。 例如,MPC_THR_HOVER 定义飞机悬停时的推力。
MPC_POS_MODE 从摇杆输入到机体动作的转换策略。 从 PX4 v1.12 开始,默认值 (4) 是操纵杆位置控制加速度(类似于汽车油门踏板)。 其他选项允许操纵杆偏转直接控制地面速度,有或没有平滑和加速度限制。
MPC_ACC_HOR_MAX 最大水平加速度。
MPC_VEL_MANUAL 最大水平速度。
MPC_LAND_SPEED 着陆下降率. 默认 0.7 m/s.
1.3位置丢失/安全
位置模式依赖于一个可接受的位置估计。 如果估计值低于可接受的水平,例如由于 GPS 丢失,这可能会触发位置 (GPS) 丢失故障保护 根据配置,是否有遥控器,以及是否有足够的高度估计,PX4 可能会切换到高度模式、手动模式、降落模式或终止。
2.定高模式(多旋翼)
[飞行难度:简单] [需要手动/遥控器控制] [需要高度传感器(例如气压计、测距仪)]
高度模式是一种相对容易飞行的RC模式,其中滚动和俯仰杆控制车辆在左右和前后方向(相对于车辆的“前部”)上的运动,偏航杆控制水平面上的旋转速度,油门控制升降速度。
当操纵杆松开/居中时,车辆将保持水平并保持当前高度. 如果在水平面上运动,机体将继持续运动直到任何动量被风阻力消散。 如果刮风,飞机会向风的方向漂移。
提示
高度模式是新飞行员最安全的非GPS手动模式. 就像手动/自稳模式,但是在松开摇杆时也可以锁定机体高度。
下图直观的展示了该模式(以美国手的遥控器举例)。

多旋翼高度控制 -美国手遥控器
2.1技术总结
与手动/自稳模式类似,但具有高度稳定(居中操纵杆使车辆保持水平并保持在固定高度)。
回正摇杆(内带死区):
RPY摇杆使飞机水平。
油门(~50%)抗风保持当前姿态。
外部中心:
翻滚/俯仰摇杆控制各自方向的倾斜角,导致左右和前后的移动。
油门摇杆以预定的最大速率(和其他轴上的移动速度)控制上升速度。
偏航摇杆控制水平面上方的角度旋转速率。
起飞:
如果将油门杆抬高至 62.5%(从油门杆最低开始的整个范围),无人机将起飞。
注解
需要手动输入(遥控器,或者通过 MAVLink 连接的游戏手柄/拇指摇杆)。
通常使用气压计测量高度,在极端天气条件下可能会变的不准确。 带有激光雷达/距离传感器的飞机将能够以更高的可靠性和准确性控制高度。
2.2参数
该模式受以下参数影响:
MPC_Z_VEL_MAX_UP 最大垂直上升速度。 默认:3m/s。
MPC_Z_VEL_MAX_DN 最大垂直下降速度。 默认:1m/s。
RCX_DZ 通道 X 的遥控死区。油门的 X 值取决于 RC_MAP_THROTTLE 的值。 例如,如果油门是通道4,则 RC4_DZ 指定死区。
MPC_XXXX 大多数 MPC_xxx参数会影响此模式下的飞行行为(至少在某种程度上)。 例如,MPC_THR_HOVER定义飞机悬停时的推力。
3.手动/自稳模式(多旋翼)
[飞行难度:中等] [需要手动/遥控器控制]
当RC控制杆居中时,手动/稳定模式可稳定多旋翼。要手动使机体移动/飞,您可以移动摇杆使其偏离居中位置。
注解
在手动/自稳控制下,侧倾杆和俯仰杆控制车辆绕各自轴的角度(姿态),偏航杆控制水平面上方的旋转速度,油门控制高度/速度。
一旦释放摇杆,它们将会返回中心死区。 一旦横滚和俯仰摇杆居中,多旋翼无人机将平稳并停止运动。 然后机体将悬停在适当的位置/保持高度 - 前提是平衡得当,油门设置适当,并且没有施加任何外力(例如风)。 飞行器将朝着任何风的方向漂移,您必须控制油门以保持高度。

3.1技术描述
飞手的输入通过横滚和俯仰角度以及偏航角速率指令传递给自驾仪。 自动驾驶仪控制着姿态,这意味着当遥控器摇杆居中时,它调整飞机的横滚和俯仰角为零(因此使姿态变平)。 自动驾驶仪不能补偿由于风(或其他来源)引起的漂移。
3.2参数
MPC_THR_HOVER 当油门杆居中输出的悬停油门,默认值为MPC_THR_CURVE。
MPC_THR_CURVE 定义油门缩放比例。 默认情况下,这被设置为重新缩放悬停推力,这意味着当油门杆居中时,油门输出为悬停油门(MPC_THR_hover),并且杆输入被线性地重新缩放到低于和高于该值(允许自稳和高度/位置控制之间的平滑过渡)。
在动力很强的机体上,悬停油门可能非常低(例如低于 20%),因此重新调整会使油门输入变形 - 对应上面举例, 80% 的推力将仅由摇杆输入的中位以上部分控制,20% 的推力由中位以下的部分来控制。 如果需要,可以将MPC_THR_CURVE设置为No Rescale(无重缩放),以便不进行重缩放
4.特技模式(多旋翼)
[飞行难度:困难] [需要手动/遥控器控制]
特技模式是用于执行特技动作的RC模式,例如翻转、翻滚。
横滚、俯仰和偏航杆控制围绕各自轴的角速率,油门直接传递至控制分配。 当操纵杆居中时,飞机将停止旋转,但保持其当前姿态并根据当前动量移动。
4.1技术描述
用于执行特技动作的R遥控/手动模式,例如翻转,滚转和环绕。
RPY摇杆输入控制围绕各自轴的角度旋转速率。 当操纵杆居中时,飞机将停止旋转,但保持其当前朝向(不一定是水平)。

4.2摇杆输入映射
特技模式下默认的滚转、俯仰和偏航操纵杆输入映射如下所示。 该曲线使得在最大杆输入处具有大转弯速率能够进行特技动作,在靠近杆回中位置的区域具有较低灵敏度以进行微调。

可以使用MC_ACRO_EXPO和MC_ACRO_SUPEXPO参数调整滚转和俯仰轴杆输入响应,同时使用MC_ACRO_EXPO_Y和MC_ACRO_SUPEXPOY调整偏航轴杆输入响应 。 MC_ACRO_EXPO和MC_ACRO_EXPO_Y参数用于调整线性曲线和三次曲线之间的曲线,如下所示。 MC_ACRO_SUPEXPO和MC_ACRO_SUPEXPOY允许进一步调整曲线形状,修改低灵敏度区域的宽度。


数学关系是:
其中y是纵轴,x是横轴,f = MC_ACRO_EXPO 或 MC_ACRO_EXPO_Y,g = MC_ACRO_SUPEXPO 或 MC_ACRO_SUPEXPOY , r 为最大速率。
您可以在此处进行试验。
4.3参数
MC_ACRO_EXPO 特技模式“指数”因子,用于调整滚转和俯仰轴的杆输入曲线形状。 值:0表示纯线性输入曲线,1表示纯三次输入曲线。 默认:0.69
MC_ACRO_EXPO_Y 特技模式“指数”因子,用于调整偏航轴的杆输入曲线形状。 值:0表示纯线性输入曲线,1表示纯三次输入曲线。 默认:0.69
MC_ACRO_SUPEXPO 特技模式“超级指数”因子,用于精细调整滚动轴和俯仰轴的杆输入曲线形状(使用MC_ACRO_EXPO进行调整)。 值:0——纯指数函数,0.7——合理增强直观操纵感的形状,0.95——非常弯曲的输入曲线,仅在最大值附近有效。 默认:0.7
MC_ACRO_SUPEXPOY 特技模式“超级指数”因子用于精细调整偏航轴的杆输入曲线形状(使用MC_ACRO_EXPO_Y进行调整)。 值:0——纯指数函数,0.7——合理增强直观操纵感的形状,0.95——非常弯曲的输入曲线,仅在最大值附近有效。 默认:0.7
MC_ACRO_P_MAX 最大特技俯仰速率 默认:每秒2转(720度/秒)
MC_ACRO_R_MAX 最大特技滚转速率 默认:每秒2转(720度/秒)
MC_ACRO_Y_MAX 最大特技偏航速率 默认: 1.5转每秒(540度/秒)
5.环绕模式 (多旋翼)
[易于飞行] [需要定位修复(例如 GPS)]
默认情况下,轨道引导飞行模式允许您命令多旋翼机(或多旋翼模式下的垂直起降)绕圆飞行,偏航始终朝向中心。
环绕模式 - 多旋翼
QGroundControl(或其他兼容的GCS或MAVLink API)需要启用该模式,并设置轨道的中心位置、初始半径和高度。一旦启用后,无人机将尽快飞到控制的圆周轨迹上的最近点,并在规划的圆周上朝中心方向缓慢(1 m/s)顺时针旋转。
环绕模式的启动方式为:
解锁并起飞后,左键点击飞行视图页面的地图。选择下图的Orbit at location

然后滑动地图底部的确认按钮,无人机会进入环绕模式绕圈飞行

注解
该模式下遥控器是可选的,如果没有遥控,则环绕模式如上所述。 无法使用遥控来切换该模式(如果使用遥控切换该模式,无人机会处于空闲状态)。
遥控可以用于改变绕圈的高度,半径,速度和绕圈方向:
左摇杆:
上/下:控制上升/下降速度,如位置模式。当在中部死区时,高度被锁定。
左/右:无影响。
右摇杆:
左/右:控制顺时针/逆时针方向的轨道加速度。当居中时,当前速度被锁定。
最大速度为 10 m/s,进一步的限制是将向心加速度保持在 2 m/s^2 以下。
上/下:控制轨道半径(更小/更大)。当居中时,当前半径被锁定。
最小半径是 1 米。 最大半径是 100 米。
下图直观的显示了模式行为(对于一个美国手遥控器)。

切换到其他飞行模式(使用遥控或 QGC 地面站)可以停止此模式。
5.1参数/限制
没有特定的环绕模式参数。
下面的限制是写死的:
初始/默认是顺时针方向 1 m/s 旋转。
最大加速度限制在 2 m/s^2。
优先保持控制的圆周轨迹而不是地速(即, 如果加速度超过 2 m/s^2无人机将减速以达到正确的圆周)。
最大半径是 100 米。
环绕模式可以使用以下 MAVLink 命令:
MAV_CMD_DO_ORBIT:启动一个指定中心点,半径,方向,高度,速度和偏航方向的轨道(无人机默认朝向轨道中心)。
ORBIT_EXECUTION_STATUS :在环绕模式发出的环绕状态。
6.定点模式(固定翼)
[易于使用] [需要手动或遥控控制] [需要定位修复(例如GPS)]
位置模式是一种易于飞行的RC模式,在该模式下,当杆释放/居中时,飞机将水平并沿当前方向直线飞行,以补偿风和其他力。
油门取决于空速(在 50% 油门时,飞机将以预设的巡航速度保持其当前高度)。 俯仰用于爬升或下降。 翻滚、俯仰和偏航是角度控制的(因此不可能实现飞机滚转或环绕)。
提示
位置模式对于新手是最安全的固定翼手动模式。
下图直观的显示了该模式(对于一个美国手的发射机)。

7.定高模式(固定翼)
[易于飞行] [需要手动或遥控控制] [所需高度(例如巴罗、测距仪)]
高度飞行模式使用户更容易控制车辆高度,尤其是达到和保持固定高度。该模式不会试图抵抗风扰保持航向。
爬升/下沉率通过俯仰/升降舵杆操纵杆来控制。 操纵杆一旦回中,自动驾驶仪就会锁定当前的高度,并在偏航/滚转和任何空速条件下保持高度。
油门通道输入控制空速。 滚动和俯仰是角度控制的(因此不可能实现飞机滚转或环绕)。
当所有遥控输入都居中时(无滚动、俯仰、偏航,油门约 50%),飞机将恢复直线水平飞行(受风影响)并保持其当前高度。
下图直观的显示了该模式(对于一个美国手的发射机)。

7.1技术总结
遥控/手动模式,如自稳模式,但具有高度稳定性(杆回中使飞机进入直线和水平飞行并保持当前高度)。 但是飞行过程并不稳定,可能被风吹飘离。
回中的滚动/俯仰/偏航输入(在死区内):
自动驾驶仪使飞机/机翼水平并且维持高度。
如果空速传感器已连接,油门杆控制飞机速度。 在没有空速传感器的情况下,用户无法控制油门(在这种情况下,飞机将在巡航油门下(FW_THR_CRUISE) 水平飞行,根据需要增加或减少油门以上升或下降。
外部中心:
俯仰摇杆控制高度。
油门杆控制飞机的空速(如回中输入 横滚/俯仰/偏航)。
横滚摇杆控制横滚角度。 自动驾驶仪将保持 协调飞行。 这和自稳模式一样。
偏航摇杆操纵会驱动方向舵(指令将被加到自动驾驶仪计算的指令中以维持 协调飞行。 这和自稳模式一样。
注解
需要手动输入(遥控器,或者通过 MAVLink 连接的游戏手柄/拇指摇杆)。
通常使用气压计测量高度,在极端天气条件下可能会变的不准确。 带有激光雷达/距离传感器的飞机将能够以更高的可靠性和准确性控制高度。
7.2参数
该模式受以下参数影响:
FW_MAN_P_MAX 在高度稳定模式下手动控制的最大俯仰角。 默认:45 度。
FW_MAN_R_MAX 在高度稳定模式下手动控制的最大滚转角。 默认:45 度。
8.自稳模式(固定翼)
[中等飞行难度] [需要手动或遥控控制]
当RC杆居中时,稳定模式使车辆进入直线和水平飞行,保持水平姿态迎风(但不包括车辆航向和高度)。
如果横滚/俯仰摇杆杆不为零,则无人机根据俯仰输入进行爬升/下降并执行协调的转弯。 横滚和俯仰是角度控制的(不能上下滚动或翻滚)。
提示
稳定模式比手动模式更容易飞行,因为你不能翻滚或翻转它,而且通过对中控制杆很容易调平车辆。
如果油门降至 0%(电机停止),飞机将滑行。 为了执行转弯,必须在整个操纵过程中保持命令,因为如果释放横滚摇杆,则飞机将停止转动并自行调平(对于俯仰和偏航命令也是如此)。
下图直观的显示了该模式(对于一个美国手发射机)。

8.1技术描述
遥控/手动模式,横滚和俯仰摇杆回中使飞机改平。
摇杆回中会使飞机进入定直平飞。 但是飞行航向和高度并不稳定,可能被风吹飘离。
如果滚转/俯仰杆输入非零,则飞机进行协调转弯(手动偏航输入被添加到方向舵控制输入以控制侧滑)。
9.特技模式(固定翼)
[很难飞] [需要手动或遥控控制]
杂技模式是用于执行杂技动作的RC模式,例如翻滚、翻转、失速和杂技动作。
侧倾、俯仰和偏航杆控制围绕各自轴的角旋转速率,油门直接传递至控制分配。当操纵杆居中时,飞机将停止旋转,但保持其当前朝向(在其侧面,倒置或任何其他方向)并根据当前动量移动。

9.1技术描述
用于执行特技动作的遥控模式,例如滚动、翻转。
RPY摇杆输入被转换为角速度命令,通过自动驾驶仪稳定。 油门直接传递到电机输出。
9.2参数
FW_ACRO_X_MAX 机体轴x轴最大速率(用户在acro模式下施加滚转轴满杆操纵时,控制器试图达到的机体轴x轴速率) 默认:90度
FW_ACRO_Y_MAX 机体轴y轴最大速率(用户在acro模式下施加俯仰轴满杆操纵时,控制器试图达到的机体轴y轴速率) 默认:90度
FW_ACRO_Z_MAX 机体轴z轴最大速率(用户在acro模式下施加偏航轴满杆操纵时,控制器试图达到的机体轴z轴速率) 默认:45度
10.手动模式(固定翼)
[很难飞] [需要手动或遥控控制]
手动模式将摇杆输入直接发送至控制分配,以实现完全手动控制。
提示
这是最难飞行的模式,因为什么都不稳定。 不同于特技模式,如果 RP (俯仰和横滚) 摇杆居中,无人机不会自动停止绕轴转;飞手实际上必须移动摇杆向另一个方向施力。
注解
这是唯一忽略 FMU(命令通过安全协处理器发送) 的飞行模式。 该模式提供了一个安全机制,允许在 FMU 固件故障时通过遥控器完全控制油门,升降舵,副翼和方向舵。
10.1技术描述
遥控模式,其中摇杆输入直接发送到混控(用于“完全”手动控制)。
这是唯一忽略主处理器(命令通过安全协处理器发送) 的飞行模式。 该模式提供了一个安全机制,允许在 FMU 固件故障时通过遥控器完全控制油门,升降舵,副翼和方向舵。
10.2参数
FW_MAN_P_SC 手动俯仰控制比例。 在完全手动模式下应用于所需俯仰舵机指令的比例因子。 此参数允许调整控制舵偏的偏转。 默认:1.0
FW_MAN_R_SC 手动滚转控制比例。 在完全手动模式下应用于所需横滚舵机指令的比例因子。 此参数允许调整控制舵偏的偏转。 默认:1.0
FW_MAN_Y_SC 手动偏航控制比例。 在完全手动模式下应用于所需偏航舵机指令的比例因子。 此参数允许调整控制舵偏的偏转。 默认:1.0
起飞模式
[需要定位(例如 GPS )]
起飞飞行模式使无人机起飞到指定高度并等待进一步指令。
注解
该模式需要一个良好的位置估计(如,从 GPS 中获取)。
使用此模式前必须先解锁。
This mode is automatic - no user intervention is required to control the vehicle.
遥控开关可以在任何无人机上更改飞行模式。
在多旋翼中移动遥控器摇杆(或 VTOL 在多旋翼模式下)默认情况下会将无人机切换到位置模式,除非是处理电池失效保护。
如果起飞时出现问题, 故障检测器 将自动停止电机。
下面描述每种类型飞机的具体行为。
1.多旋翼(MC)
多旋翼上升到 MIS_TAKEOFF_ALT 中定义的高度并保持位置。
遥控器摇杆移动会把无人机切换到 位置模式 (默认)。
起飞受以下参数影响:
MIS_TAKEOFF_ALT 起飞期间的目标高度 (默认值: 2.5 米)
MPC_TKO_SPEED 上升速度 (默认值: 1.5 m/s)
COM_RC_OVERRIDE 控制多旋翼(或者多旋翼模式下的 VOTL)的摇杆移动量来切换到 位置模式。 可以分别为自动模式和 offboard 模式启用此功能,默认情况下在自动模式下启用此功能。
COM_RC_STICK_OV 导致发射机切换到 位置模式 的摇杆移动量(如果 COM_RC_OVERRIDE 已启用)。
2.固定翼(FW)
飞机使用弹射器/手抛起飞模式或跑道起飞模式沿当前方向起飞。模式默认为弹射/手动起飞,但可以使用 RWTO_TKOFF 设置为跑道起飞。 在这两种情况下,遥控操作都被忽略。
弹射/手抛起飞
在弹射器/手抛起飞模式下,车辆等待检测起飞(基于加速触发)。在起飞时,它在大约2秒内升到全油门(RWTO_MAX_THR),然后执行全油门爬升,最小起飞俯仰10度。
一旦它达到 FW_CLMBOUT_DIFF 它将过渡到 保持模式 和悬停。
除了上面讨论的行为之外,还有一个启动检测器可以阻止启动程序开始直到满足某些条件。 对于弹射器发射,这是一些加速度阈值。
跑到起飞
跑道起飞模式有以下阶段:
加速滑行:在跑道上加速(俯仰固定,无侧倾,航向保持),直到达到起飞的最小空速(FW_AIRSPD_MIN x RWTO_AIRSPD_SCL)。
起飞:增加俯仰并继续,直到车辆高度>导航高度(RWTO_NAV_ALT)。
爬升:爬升至高于地面高度>FW_CLMBOUT_DIFF。在此阶段中, 将移除滚转和航向限制。
固定翼起飞参数
起飞受以下参数影响:高于地平面(AGL)的高度,留有足够的离地间隙以允许一些滚转。 在达到RWTO_NAV_ALT之前,飞机保持水平,并且仅使用方向舵来保持航向(参见RWTO_HDG )。
起飞时,无人机 总是遵循正常的固定翼最大/最小油门设置(FW_THR_MIN,FW_THR_MAX)。
垂直起降(VTOL)
VTOL 在启动时默认为多旋翼模式,通常可以在多旋翼模式下起飞(而且也更安全)。
也就是说,如果在起飞前切换到固定翼,将以固定翼模式起飞。
着陆模式
[需要定位估计(例如GPS)]
使无人机降落在开启此模式时的位置。降落后,无人机将会在一小段时间后上锁(默认情况下)。
注解
该模式需要有效的位置估计,除非由于失效保护进入该模式,这种情况下仅需要高度估计(通常飞控内置一个气压计)。
此模式为自动模式-无需用户干预即可控制飞机。
遥控器开关可以用于更改任何无人机的飞行模式。
在多旋翼中移动遥控器摇杆(或 VTOL 在多旋翼模式下)默认情况下会将无人机切换到位置模式,除非是处理电池失效保护。
下面描述每种类型飞机的具体行为。
1.多旋翼(MC)
无人机将降落在模式所指定的位置。 无人机以 MPC_LAND_SPEED 指定的速度下降,降落后会上锁(默认)。
遥控器摇杆移动会把无人机切换到 位置模式 (默认)。
着陆受以下参数影响:
MPC LAND_SPEED 着陆过程中的下降速率。 鉴于地面情况未知,这个值应该设得相当小。
COM_DISARM_LAND 降落后自动上锁的超时时间,以秒为单位。 如果设定为 -1,无人机将不会在着陆时上锁。
COM_RC_OVERRIDE 控制多旋翼(或者多旋翼模式下的 VOTL)的摇杆移动是否将控制权交给位置模式下的飞手。 可以分别为自动模式和 offboard 模式启用此功能,默认情况下在自动模式下启用此功能。
COM_RC_STICK_OV 导致发射机切换到 位置模式 的摇杆移动量(如果 COM_RC_OVERRIDE 已启用)。
2.固定翼(FW)
无人机将转弯并降落在该模式指定的位置。 遥控器摇杆操作被忽略。
通常固定翼无人机会遵循固定的着陆轨迹到地面(它不会尝试拉平着陆)。 这是因为在着陆模式下,飞机可能不知道地面高度并且将假设它处于海平面。 由于地面高度可能会高得多,因此飞机通常会在高于拉平辑逻辑的高度处到达地面。
着陆受以下参数影响
COM_DISARM_LAND 降落后自动上锁的超时时间,以秒为单位。 如果设定为 -1,无人机将不会在着陆时上锁。
垂直起降(VTOL)
当处于固定翼模式时,VTOL 遵循 LAND 行为和固定翼的参数,而当处于多旋翼模式时,VTOL 遵循多旋翼的参数。 当设置 NAV_FORCE_VT(默认:开)时,固定翼模式下的 VTOL 将在着陆前切换回多旋翼模式。
返航模式
[需要定位(例如 GPS )]
返航飞行模式用于将车辆在无障碍的路径上安全飞行至安全目的地,在那里可以等待(悬停或盘旋)或降落。
PX4 提供了几种机制来选择安全的返航路径,以下章节解释了如何配置 返航类型, 返航高度 和 降落/抵达行为。 最后有章节解释了每种机型的默认(预配置)行为。
注解
该模式需要 GPS。
遥控开关可以在任何无人机上更改飞行模式。
在多旋翼中移动遥控器摇杆(或 VTOL 在多旋翼模式下)默认情况下会将无人机切换到位置模式,除非是处理电池失效保护。
1.返航类型(RTL_TYPE)
PX4 提供了四种替代方法( RTL_TYPE ),用于找到通向安全目的地和/或着陆的畅通路径:
返航到起始位置/集结点(RTL_TYPE=0): 上升到安全高度并直接路径返回到最近的集结点或起始地点。
任务着陆/集结点返回(RTL_TYPE=1):上升到安全高度,直接飞到离家最近的目的地:集结点或任务着陆开始。 如果未定义任务着陆点或集结点,则直接返回起始位置。
任务路径返航(RTL_TYPE=2):使用任务模式的路径并沿原路径返回。 如果未定义任务降落,则将快速回退到任务起始位置。 如果未定义任务,直接返航到起始位置(集结点将被忽略)。
最近的安全目的地返航(RTL_TYPE = 3):上升到安全高度并通过直接路径返回最近的起始位置,任务着陆点的开始位置或集结点。
以下各节提供了每种类型的更详细说明。
2.起始位置/集结点返航类型(RTL_TYPE=0)
无人机在该返航类型中:
爬升到一个安全的返航高度(高于任何可预期的障碍物)。
通过直接路径飞往起始位置或集结点(以最近者为准)。
降落或等待处于下降高度(取决于着陆参数)。
注解
如果未定义集结点,这与返回起飞点(RTL)/返回原点(RTH)相同。
3.任务着陆/集结点返航类型 (RTL_TYPE=1)
无人机在该返航类型中:
爬升到一个安全的返航高度(高于任何可预期的障碍物)。
直接飞行到一个集结点或任务着陆模式的起点(以最近者为准)。 如果未定义任务降落或集结点,无人机通过直接路径返回到起始位置。
如果目的地是飞行任务着陆模式,则按照该模式降落。
如果目的地是集结点或者起始位置,无人机将在降落高度(取决于着陆参数)降落或等待。
保持模式
[需要定位(例如 GPS)]
等待飞行模式(也称为“悬停”)使车辆停止并保持其当前的GPS位置和高度(MC车辆将在GPS位置悬停,而FW车辆将在其周围盘旋)。
提示
保持模式可用于暂停任务或帮助您在紧急情况下重新控制车辆。它通常通过预编程开关激活。
注解
该模式需要 GPS。
此模式为自动模式-无需用户干预即可控制车辆。
遥控开关可以在任何无人机上更改飞行模式。
在多旋翼中移动遥控器摇杆(或 VTOL 在多旋翼模式下)默认情况下会将无人机切换到位置模式,除非是处理电池失效保护。
下面描述每种类型飞机的具体行为。
1.多旋翼(MC)
多旋翼无人机悬停在当前位置和高度。
遥控器摇杆移动会将无人机切换到 位置模式 (默认)。
可以使用以下参数配置此动作。
MIS_LTRMIN_ALT 留待模式的最小高度(如果模式在较低的高度进行,则飞行器将上升到此高度)。
COM_RC_OVERRIDE 控制多旋翼(或者多旋翼模式下的 VOTL)的摇杆移动量来切换到 位置模式。 可以分别为自动模式和 offboard 模式启用此功能,默认情况下在自动模式下启用此功能。
COM_RC_STICK_OV 导致发射机切换到 位置模式 的摇杆移动量(如果 COM_RC_OVERRIDE 已启用)。
2.固定翼(FW)
飞机在当前高度并在 GPS 保持的位置绕圈飞行。 如果在低于这个高度使用该模式,无人机会首先上升MIS_LTRMIN_ALT。
遥控器摇杆操作被忽略。
可以使用以下参数配置此动作。
NAV_LOITER_RAD 留待圈的半径。
MIS_LTRMIN_ALT 留待模式的最小高度(如果模式在较低的高度进行,则飞行器将上升到此高度)。
3.垂直起降(VTOL)
当处于固定翼模式时,VTOL 遵循固定翼的参数,而当处于多旋翼模式时,VTOL 遵循多旋翼的参数。
任务模式
[需要定位(例如 GPS)]
任务模式使车辆执行已上传至飞行控制器的预定义自主任务(飞行计划)。任务通常由地面控制站(GCS)应用程序(如QGroundControl)创建并上传
注解
此模式需要 3d 位置信息(如 GPS)。
使用此模式前必须先解锁。
遥控器开关可以用于更改任何无人机的飞行模式。
在多旋翼中移动遥控器摇杆(或 VTOL 在多旋翼模式下)默认情况下会将无人机切换到位置模式,除非是处理电池失效保护。
参数描述
任务通常在地面控制站规划,并在启动前上传。它们也可以由开发者API创建,和/或在飞行中上传。个别任务指令的处理方式取决于每种飞行器的飞行特性(例如,直升机的悬停飞行和固定翼的盘旋飞行)。 VTOL飞机在固定翼模式下遵循固定翼的行为和参数,在多旋翼模式下遵循旋翼机的行为和参数。
注解
任务上传到SD卡上,需要在启动自动驾驶仪之前插入SD卡。
在高级别上,所有无人机类型在使用 MISSION 模式时表现相同:
如果任务被开始并且无人机正在飞行,则它将从当前步骤执行 任务/飞行计划。
如果开始了任务, 并且无人机在地面:
多旋翼无人机将执行任务/飞行计划. 如果任务没有 TAKEOFF 命令,则在从当前步骤执行飞行计划的剩余部分之前,无人机将飞行到最小高度。
在固定翼飞行器上,无人机不会自动起飞(自动驾驶仪将检测运动并将油门设置为零)。 如果在任务模式下手动或弹射发射,飞机可以开始执行任务。
如果停止任务,或者无人机已完成所有任务并且无人机正在飞行,飞机将会留待。
可以通过激活HOLD 模式暂停任务。 当您重新激活 MISSION 飞行模式时,任务将从当前任务命令继续执行。 在任务模式下飞行时,如果决定中止任务,并且切换到了其他飞行模式,如位置模式,通过遥控器讲无人机飞到了其他地方,然后切换回任务模式,无人机将从当前位置继续执行任务,并会飞往下一个未访问的任务航点。
注意
在切换到其他遥控器模式之前,确保油门摇杆不为零(否则无人机将坠毁)。 我们建议您在切换到任何其他模式之前将摇杆置中。
有关任务规划的更多信息,请参阅:
任务参数
任务行为受许多参数的影响. 下面列出了一个很小的子集。
NAV_RCL_ACT 遥控信号丢失失效保护模式(如果断开遥控无人机会怎样)- 例如进入保持模式,返航模式,终止等。
NAV_LOITER_RAD 固定翼悬停半径。
COM_RC_OVERRIDE 控制多旋翼(或者多旋翼模式下的 VOTL)的摇杆移动是否将控制权交给位置模式下的飞手。 可以分别为自动模式和 offboard 模式启用此功能,默认情况下在自动模式下启用此功能。
COM_RC_STICK_OV 导致发射机切换到 位置模式 的摇杆移动量(如果 COM_RC_OVERRIDE 已启用)。
注意:
对于任务命令,PX4 不支持本地坐标系(例如,MAV_FRAME_LOCAL_NED)
跟随模式
[需要定位(例如GPS)]
跟随模式允许多旋翼机自主保持相对于另一个系统的位置和高度,该系统使用Follow_TARGET广播其位置(可选速度)MAVLink消息。
跟随的概念
根据高度控制模式,车辆将从指定的相对角度、距离、高度和高度自动偏转到目标面并跟随目标。
默认情况下,它将直接从目标后面跟随,距离为8米,高度为起始(待命)位置上方8米。

用户可以使用如上所示的遥控器调整跟随角度、高度和距离:
跟随高度由上下输入(“油门”)控制。将棍子居中,以恒定的高度跟踪目标。升高或降低摇杆以调整高度。
跟随距离由前后输入(“俯仰”)控制。向前推操纵杆会增加跟随距离,向后拉则会减少距离。
跟随角度由左右输入(“滚动”)控制。移动是从用户的角度出发的,所以如果你面对无人机并向左移动棍子,它就会向你的左边移动。从上方看,如果向左移动操纵杆,无人机将逆时针移动。
跟随角度定义为相对于目标航向(0度)沿顺时针方向增加

跟随角度图
注解
退出跟随模式时,将放弃使用RC控制器设置的角度、高度和距离值。如果退出跟随模式并再次激活,则值将重置为默认值。
在带有GPS模块和MAVSDK的Android设备上,QGroundControl支持跟随模式。
注解
此模式需要GPS。
此模式目前仅在多旋翼上受支持。
跟踪目标还必须能够提供位置信息。
QGroundControl仅在具有GPS的Android设备上支持此模式。
1.安全须知
注意
跟车模式不实施任何类型的障碍物回避。使用此模式时必须特别小心。
应遵守以下飞行预防措施:
跟我走模式只能在没有树木、电线、房屋等遮挡的开阔区域使用。
将跟随高度设置为远高于任何周围障碍物的值。默认情况下,该位置高于原始(待命)位置8米。
在启用跟我模式之前手动飞到安全高度比在着陆时启用跟我方式更安全(即使该模式实现自动起飞)。
为无人机留出足够的制动空间,尤其是在无人机快速行驶时。
如果出现问题,准备切换回位置模式,特别是第一次使用跟随模式时。
您不能使用摇杆移动来关闭跟随我模式(因为这将调整属性)。您需要有一个可以发送飞行模式开关信号的地面站,或者在RC发射机中配置一个飞行模式开关。
2.通过QGroundControl使用跟随模式
使用QGroundControl作为具有GPS模块的地面站硬件上的目标,支持跟随模式。推荐的配置是一个能使用 USB OTG 的安卓设备,配备两个数传。

设置跟随模式:
将遥测无线电连接到地面站设备,将另一个连接到车辆(这允许在两个无线电之间中继定位信息)。
禁用Android设备上的睡眠模式:
此设置通常可以在“设置”>“显示”下找到。
禁用Android设备上的睡眠模式很重要,因为这可能会导致GPS信号停止定期发射。
起飞高度至少为2-3米(即使支持自动起飞,也建议如此)。
将无人机放在地面上,按下安全开关并后退至少10米。
解锁车辆并起飞。
切换到跟随我模式。
根据距离传感器的存在,直升机将首先上升到离地面或家1米的最低安全高度。
在水平移动之前,它将一直上升到跟随高度3米以内,以避免潜在的碰撞。
飞机会一直调整航向以面对目标
此时,你可以开始移动,无人机将跟踪你。
3.通过MAVSDK使用跟随模式
MAVSDK支持跟随模式,允许您创建一个无人机应用程序,该应用程序设置跟随的目标。
有关更多信息,请参见“跟随我”类
(打开新窗口)文档以及“跟随我”示例
(打开新窗口)。
配置高度控制模式
高度控制模式确定车辆高度是否相对于原位置、地形高度或跟随目标报告的高度。
2D跟踪(默认高度模式)使无人机在相对于固定起始位置(起飞高度)的高度跟随。无人机到目标的相对距离将随着你的上升和下降而改变(在丘陵地形中小心使用)。
2D+地形使用来自距离传感器的信息,使无人机以相对于其下方地形的固定高度跟随。如果车辆没有距离传感器,跟踪将与2D跟踪相同。距离传感器并不总是准确的,在这种模式下飞行时,车辆可能会“跳跃”。请注意,该高度相对于车辆下方的地面,而不是跟随目标。无人机可能无法跟踪目标的高度变化!
3D跟踪模式使无人机在其GPS传感器提供的相对于跟踪目标的高度上跟踪。这会适应目标高度的变化,例如当你上山时。
注意
当使用QGC for Android时,在未检查FOLLOW_TARGET.altitude 是AMSL高度的情况下,请勿将高度模式(FLW_TGT_ALT_M)设置为3D跟踪.MAVLink跟踪目标消息定义期望相对于平均海平面(AMSL)的高度,而Android上的QGC正在发送相对于GPS椭球的高度。这可以相差200米!
由于内置的最低安全高度限制(1米),无人机可能不会坠毁,但它可能会飞得比预期高很多。如果无人机的高度与规定的高度相差很大,假设地面站的高度输出错误,请使用2D跟踪。
4.参数
可以使用以下参数配置跟随我的行为:
FLW_TGT_HT跟随高度,单位为米。请注意,此高度相对于起始/待命位置(而非目标车辆)是固定的。默认和最小高度为8米(约26英尺)
FLW_TGT_DST水平(x,y)平面内的无人机/地面站间距,单位为米。最小允许间距为1米。默认距离为8米(约26英尺)。
FLW_TGT_FA相对于目标航向的跟随角度,单位为度。如果输入的值超出范围[-180.0,+180.0],则会自动转换并应用(例如480.0将转换为120.0)
FLW_TGT_ALT_M高度控制模式。
0=二维跟踪(高度固定)
1=2D跟踪+地形跟踪
2=目标GPS高度的3D跟踪警告:请勿与Android的QGC一起使用。
FLW_TGT_MAX_VEL围绕目标的轨道运动的最大相对速度,单位为m/s。
10米/秒已被证明是最佳点。
FLW_TGT_RS过滤传入目标位置的动态过滤算法响应性。
0.0=对运动和位置、速度和加速度的噪声估计非常敏感。
1.0=非常稳定但没有响应的滤波器
5.提示和技巧
将跟随距离设置为12米以上(“建议最小距离”为8米)。
目标和无人机的GPS传感器之间存在固有的位置偏差(3~5米),这使得无人机在接近实际目标的地方跟踪“幽灵目标”。当跟车距离很小时,这一点更为明显。我们建议将跟随距离设置得足够大,以使GPS偏差不显著。
使用RC调整高度、距离和角度,您可以获得一些创造性的相机镜头。
已知的问题
已知 SiK 915兆赫数传 会干扰某些安卓设备的 全球定位系统信号接收。 保持数传和安卓设备之间尽可能远的距离,避免使用跟随模式时受到干扰。
QGC for Android报告了错误的海拔高度(高于椭球面而非AMSL的海拔高度)。跟随高度可以偏离200米!
Offboard 模式
[需要定位修复(例如GPS)]
飞机遵守 MAVLink 提供的位置,速度或姿态设定值。 设定值可以由机载计算机上运行的 MAVLink API(例如 MAVSDK
(opens new window) 或 MAVROS
(opens new window))提供(通常通过串口或 wifi 连接)。
提示
并非所有设置点消息和车辆都支持MAVLink允许的所有坐标系和值。仔细阅读以下章节,确保只使用支持的值。还请注意,在进入模式之前以及模式运行期间,必须以>2Hz的频率流发布定值。
注解
此模式需要位置或位/姿信息 - 例如 GPS、光流、视觉惯性里程计、mocap 等。
除了更改模式外, 禁止遥控器控制。
使用此模式前必须先解锁。
在启用此模式之前,车辆必须已经接收到目标设定点流(>2Hz)。
如果未以>2Hz的速率接收到目标设定值,则无人机将退出模式。
不支持MAVLink允许的所有坐标系和字段值。::
1.描述
Offboard 模式主要用于控制飞机运动和姿态,目前仅支持 MAVLink 消息的一个有限子集(未来将支持更多)。
其他操作, 如起飞、降落、返航,最好使用适当的模式来处理。 像上传、下载任务这样的操作可以在任何模式下执行。
在进入该模式之前,无人机必须收到设定值数据流,并且保持在该模式下(如果消息速率降至 2Hz 以下,无人机将停止)。 为了在此模式下保持位置,必须向无人机提供一个包含当前位置设定值的数据流。
Offboard 模式需要主动连接到远程 MAVLink 系统 (例如机载计算机或 GCS)。 如果连接丢失,在超时 (COM_OF_LOSS_T) 后,无人机将尝试降落或执行其他故障失效保护操作。 该动作定义在参数 COM_OBL_ACT 和 COM_OBL_RC_ACT 中。
2.支持的消息
3.多旋翼/垂直起降
SET_POSITION_TARGET_LOCAL_NED
支持以下输入组合:
位置设置值 (仅 x,y,z)
速度设置值 (仅 vx, vy, vz)
加速度设定值(仅 afx,afy,afz)
PX4支持以下coordinate_frame值
MAV_FRAME_LOCAL_NED
MAV_FRAME_BODY_NED
SET_POSITION_TARGET_GLOBAL_INT
支持以下输入组合:
位置设定值(仅lat_int,lon_int,alt)
Velocity setpoint (only vx, vy, vz)
Thrust setpoint (only afx, afy, afz)
注解
PX4 支持以下 coordinate_frame 值(仅限):
MAV_FRAME_GLOBAL
SET_ATTITUDE_TARGET
支持以下输入组合:
带有推力设定值(SET_ATTITUDE_TARGET.thrust)的姿态和方向(SET_ATTITUDE_TARGET.q)。
带有推力设定值(SET_ATTITUDE_TARGET.thrust)的机身速率(SET_ATTITUDE_TARGET .body_roll_rate,.body_pitch_rate,.body_yaw_rate)。
4.Offboard参数
COM_OF_LOSS_T 丢失 Offboard 连接时的等待超时时间(以秒为单位),然后将触发 offboard 丢失的失效保护措施 (COM_OBL_ACT 和 COM_OBL_RC_ACT)
COM_OBL_ACT 当未连接到RC时,如果失去offboard控制,则切换到的模式(值为-0:着陆,1:保持,2:返回)。
COM_OBL_RC_ACT 当仍连接到RC控制时,如果失去offboard控制,则切换到的模式(值为-0:位置,1:高度,2:手动,3:返回,4:降落)。
COM_RC_OVERRIDE 控制多旋翼(或者多旋翼模式下的 VOTL)的摇杆移动量来切换到 位置模式。 默认情况下未启用此功能。
COM_RC_STICK_OV 导致发射机切换到 位置模式 的摇杆移动量(如果 COM_RC_OVERRIDE 已启用)。
七、PX4日志分析
前言
PX4 1.10以上固件
QGC
(一)下载日志
将飞控链接地面站,在下图页面点击“刷新”,即可看到保存的日志(前提是要有TF卡)

选择需要下载的日志,点击右侧的“下载”,然后选择目录即可进行下载,如果想擦除所有的日志,可以点击右侧的“擦除全部”

(二)ulog转CSV
ubuntu下先安装pyulog
pip install pyulog
然后重启电脑
PX4的日志是二进制的ulog文件,如果想转换成CSV文件在matlab里绘图,可以在需要转化的ulog文件目录下
执行
ulog2csv XXX.ulog
会自动在当前目录下生成一系列csv文件
将csv文件拖到matlab界面中,会弹出下面的页面,点击导入

会提示导入到工作区,这时可以调用画线函数plot进行划线


调用
plot(log520201010105015sensormag0.timestamp,log520201010105015sensormag0.x)
可以得到一条线
如果要在同一个页面画多条线,可以用hold on
plot(log520201010105015sensormag0.timestamp,log520201010105015sensormag0.x)
hold on
plot(log520201010105015sensormag0.timestamp,log520201010105015sensormag0.y)
得到下图

给曲线添加注释可以通过
legend('UAV1','UAV2','UAV3','UAV4','UAV5');
(三)利用flightplot软件分析PX4的ulog日志
1.windos安装
下载下面两个软件,地址
链接:https://pan.baidu.com/s/14mN28Fn0IlSA4vDu_dATKA
提取码:yi3g
复制这段内容后打开百度网盘手机App,操作更方便哦
先安装jdk,然后就可以双击打开flightplot软件

点击打开日志

选择日志

这个时候不会显示数据曲线
点击下图选项

选择需要显示的数据
以x位置为例

选择Simple类型

即可看到曲线

如果要把四元数转成欧拉角显示

先同时选中四个四元数,按住ctl即可多选
然后点击add

选择从四元数到欧拉角
点击 ok即可
2.ubuntu18.04安装
参考视屏https://www.bilibili.com/video/BV1mi4y1s7q6
第一步:
git clone --recursive https://github.com/PX4/FlightPlot.git
第二步:
sudo apt-get install openjdk-8-jdk
第三步:
flightplot需要用java8,而ubuntu18.04默认是java11,需要更换
sudo update-alternatives --config java
出现如下页面,如果不是java-8。输入2,回车,配置成java-8

重启电脑
安装flightplot
cd FlightPlot
ant gen_deb
sudo dpkg -i out/production/FlightPlot.deb
注意在上面配置成java-8之后如果没有重启电脑,会导致安装的flightplot不能显示日志的信息,如下

此时需要重启电脑清除重新安装
ant clean
再执行安装flightplot步骤
安装完成后可以添加到收藏夹

(四)使用PlotJuggler分析PX4日志
下载地址
https://github.com/facontidavide/PlotJuggler

ubuntu下下载appimage文件然后添加一下可执行权限,然后双击打开即可.
点击下图图标打开日志文件

如下图

打开后如下图所示,选中需要显示的数据,如果想在一幅图中显示多个数据,则按住Ctrl再同时选中多个数据.然后鼠标左键将选中的数据拖到右边的显示矿中,数据就可以显示.

如下图

如果要在该图右侧分出一栏,则鼠标右键该图,点击如下选项

如下图

如果要在该图下侧分出一栏,则鼠标右键该图,点击如下选项

如下图

如果要删除某一副图,则点击该图右上角×号即可
如果想放大图中的某些部分,则鼠标左键长按框选相应区域即可,如下图

(五)设置日志记录条件
搜索参数SDLOG_MODE

如果要上电后就开始记录日志,需要设置成from boot until shutdown
(六)添加自定义日志消息
固件版本1.11
一、将要观察的数据声明成uORB消息,并发布。我这里随便添加了一个
在logged_topics.cpp里的add_default_topics函数里加上一行add_topic("fanbu",100);或者add_topic("fanbu");双引号里的就是uORB的消息ID.
在需要的地方发布uORB消息,即可自动的记录到日志里,发布时必须赋值时间戳
在flightplot里搜索自己添加的消息,然后添加显示


八、PX4常用参数解析
前言
PX4 1.13以上版本
(一)常用参数设置
PX4所有参数都在firmware-build/src/lib/parameters/px4_parameters.h文件里
注意,修改某些参数可能使飞机不稳定,本文仅供交流学习,不负相关责任。具体修改时请自行权衡。
1. 解锁检查参数
解锁检查参数的主要作用是设置飞控解锁的条件。常用的有以下几个。
根据具体的报错进行排查,常见的报错及解决办法如下:
1、Kill switch engagen
出现这个报错是因为使能了刹车开关

解决方法:将刹车开关拨到未使能状态。
或者关掉刹车开关,下图设置为unassigned,

2、Power redundancy not met/check battery:
如果出现下面的报错
●
或者出现check battery错误
这个参数是检查解锁时是否有电池供电,默认是需要插电流计供电才可以解锁。如果想通过其他方式(如ESC供电)给飞控供电进行解锁,则需要设置该参数为894281。

3、USB连接检查CBRK_USB_CHK(USB相关报错)
这个参数是检查起飞时是否有USB连接,默认情况下有USB连接时是无法解锁的,如果需要插USB解锁,需要设置为197848

4、安全开关检查CBRK_IO_SAFETY
默认情况下安全开关是慢闪状态,设置该参数蔚22027时,上电后安全开关自动切换为双闪。

5、high Accelerometer bios
如果报错加速度偏移过大,high Accelerometer bios

可以把com_arm_ekf_ab这个参数调大一些,在1.13以后版本的固件中,把EKF2_ABL_LIM调大。
6、high gyro bios
同理可以通过改下面这个参数把陀螺仪的起飞检查阈值该大一些,com_arm_ekf_gb

7、compasss inconsistent
如果报罗盘某个度数没包含的错误,COM_ARM_MAG_ANG设为-1

8、GPS报错
如果GPS搜星少,长时间没有进入GPS定位,可以把下面EKF2_GPS_CHECK改成0

9、Accels inconsistent
把下面这个COM_ARM_IMU_ACC改大一些,图中以加速度计为例,如果陀螺仪出现类似报错也是修改相应的参数

10、偏航角一直漂移
解决办法是校准陀螺仪
11、PREFLIGHT FAIL: ACCEL SENSORS INCONSISTENT - CHECK CALIBRATION
当来自不同 IMU 单元的加速度测量值不一致时,会产生此错误消息。
此检查仅适用于具有多个 IMU 的板。
解决办法
将COM_ARM_IMU_ACC参数改大(可能要超限强制保存)。
同理
12、PREFLIGHT FAIL: GYRO SENSORS INCONSISTENT - CHECK CALIBRATION
检查COM_ARM_IMU_GYR参数
13、PREFLIGHT FAIL: EKF INTERNAL CHECKS
如果水平 GPS 速度、偏航角、垂直 GPS 速度或者垂直位置传感器(气压计默认情况下可以使测距仪或 GPS ,如果使用非标准参数)其中之一新息过多,会产生此错误消息。 新息指的是惯性导航计算预测值与传感器测量值之间的差异。
用户应检查日志文件中新息级别以确定原因。 这些可以在ekf2_innovations消息下找到。 常见问题 / 解决方案包括:
IMU 启动时漂移。 可以通过重启自驾仪来解决。 可能需要 IMU 加速度计和陀螺仪校准。
相邻磁干扰在飞行器运动中。 通过等待或者重新上电解决。
磁力计校准不良在飞行器运动中。。 通过重新校准解决。
启动时的初始冲击或快速移动导致惯性导航失败。 通过重新启动飞行器并在前 5 秒内最大限度地减少移动来解决此问题。
14、PREFLIGHT FAIL: EKF YAW ERROR
当使用陀螺仪数据估计的偏航角和来自磁力计或外部视觉系统的偏航角不一致时,产生该误差。
检查 IMU 数据是否存在较大的偏航率漂移,并检查磁力计的对准和校准。
可以修改COM_ARM_EKF_YAW关闭此检查
15、PREFLIGHT FAIL: EKF HORIZ POS ERROR
当 IMU 和位置测量数据(GPS 或外部视觉)不一致时会产生此问题。
检查位置传感器数据是否存在不真实的数据跳转。 如果数据质量看起来不错,请执行加速度计和陀螺仪校准并重新启动飞行器。
可以通过COM_ARM_EKF_POS参数禁用
16、PREFLIGHT FAIL: EKF VEL ERROR
当 IMU 和 GPS 速度测量数据不一致时会产生此错误。
检查 GPS 速度数据是否存在不真实的数据跳转。 如果 GPS 质量看起来没有问题,请执行加速度计和陀螺仪校准并重新启动飞行器。
可以通过COM_ARM_EKF_VEL参数禁用
17、PREFLIGHT FAIL: EKF HGT ERROR
当 IMU 和高度测量数据不一致时会产生此错误。
执行加速度计和陀螺仪校准并重新启动飞行器。 如果错误仍然存在,请检查高度传感器数据是否存在问题。
可以通过COM_ARM_EKF_HGT参数禁用
18、yaw estimate error
如果报错 yaw estimate error ,则把下面参数改大
COM_ARM_EKF_YAW
19、CPU load too high / No CPU load information
COM_CPU_MAX
该参数设置为-1将禁用CPU利用率检查,如果改参数大于0,当飞控CPU利用率大于该值或者检测不到CPU信息时,将不能解锁,报下面的错:
Fail: No CPU load information
或者
Fail: CPU load too high:
20、 Crash dumps present on SD,vehicle needs service
如果报错:
Crash dumps present on SD,vehicle needs service
将COM_ARM_HFLT_CHECK改为Disabled
21、连接地面站能解锁,断开地面站不能解锁
参考第二节禁用电源检查
22、无法解锁飞机,报错arm denied
检查是否关闭避障

二、安全设置
1.低电量保护
在地面站的安全设置中,低电量保护有如下三种动作,警告(只发出警告,不执行任何动作),降落(在电量低于故障保护水平时,直接降落),在临界水平时返航,在紧急水平时降落(在电量低于故障保护水平时返航,在电量低于紧急水平时降落)

2.遥控信号丢失保护
在遥控信号丢失超过超时时间后,会出发遥控器丢失保护,可以设置为不使能,返航,降落等模式

3.地理围栏保护
地理围栏是指以无人机设置围栏时的位置为圆心,设置的最大半径和最大高度为半径和高度的一个圆柱体范围,如果无人机飞行过程超出了这个范围,就会出发相应的故障保护动作,有不使能,警告,保持,返航,停止等动作。如果设置了相应的动作,那么无人机必须需要在有GPS信号的时候才能解锁

4.数据链路丢失保护
与地面站或者板卡的mavlink数据丢失时间超过设置的超时时间,会触发该保护,保护动作有:保持、返航、降落等

5.返航模式设置
下图可以设置返航后爬升的高度,无人机在返航时,先原地爬升到设置的返航高度,再飞回起飞点,返回起飞点上空后根据设置,可以选择立即着陆、留待但不着陆,留待一定的时间后着陆

6.着陆模式设置
设置着陆时的下降速率,以及着陆后几秒加锁电机

三、任务航点参数
航点半径
NAV_ACC_RAD
此参数设置判断到达航点的置信半径

从原点到第一个航路点的最大水平距离
故障保护检查,以防止在新的起飞位置执行先前飞行中存储的飞行任务。将值设置为零或更小以禁用。如果当前航路点距离起始位置的距离大于MIS_DIS_1WP,则不会启动任务。
MIS_DIST_1WP
航路点之间的最大水平距离
故障保护检查,以防止运行路径太远的任务。将值设置为零或更小以禁用。如果两个后续航路点之间的任何距离大于MIS_DIST_WPS,任务将不会开始
MIS_DIST_WPS
最小悬停高度
这是系统将始终遵守的最小高度值。其目的是避开地面效应。如果不应该有最小悬停高度,则将其设为-1
MIS_LTRMIN_ALT
启用偏航控制
如果启用,偏航命令将发送到机体,载具将沿着其飞行方向前进。如果禁用,载具机头将转向感兴趣区域(ROI),(仅影响多翼机和感兴趣区域(ROI)任务项)
MIS_MNT_YAW_CTL
起飞高度
这是起飞模式下系统将起飞到的最小高度。
MIS_TAKEOFF_ALT
是否需要起飞点
如果设置,任务可行性检查器将检查任务中是否有起飞点。
MIS_TAKEOFF_REQ
航路点航向接受所需的最大偏航误差(度)
MIS_YAW_ERR
偏航模式
指定自动模式下的偏航航向,有指向航点、指向home点、远离home点、沿轨迹、指向航点(偏航优先)五种
MPC_YAW_MODE
置信半径
默认航点的置信半径,如果设置,如果航点中也设置了置信半径,则将被航路中的置信半径覆盖。对于固定翼,L1转弯距离被用于水平置信半径。
NAV_ACC_RAD
固定翼着陆前高度置信半径
固定翼着陆前最后一个航路点的高度置信半径。这通常小于标准垂直置信半径,因为靠近地面需要更高的精度。
NAV_FW_ALTL_RAD
固定翼高度置信半径
固定飞行高度的置信半径。
NAV_FW_ALT_RAD
盘旋半径(仅固定翼)
任务、保持模式、返航模式等的盘旋半径默认值(仅限固定翼)。
NAV_LOITER_RAD
四、无人机室内视觉定位参数
如果想让无人机在室内通过视觉进行定位,需要修改两个参数,
一个是EKF2_AID_MASK,改成24,位置和航向用视觉的数据。如下:

另一个是EKF2_HGT_MODE,改成Vison,如下:

五、其他参数
无人机长时间无法进入定点模式
无人机在室外,位置数据来源为GPS,且GPS正常,但长时间无法进定点
确认EKF2_AID_MASK为1,


修改EKF2_GPS_CHECK为0,然后重启飞控


关闭蜂鸣器
CBRK_BUZZER改为782097

设置无人机自稳或定高模式下最大的倾斜角度

状态估计算法选择参数
SYS_MC_EST_GROUP,该参数可以指定飞控状态估计的算法,有单四元数互补滤波,四元数互补滤波加LPE,EKF2,默认采用EKF2,使用ekf2所需的最低传感器配置为加速度计、陀螺仪、磁力计、气压计。如果缺少任意一个,则EKF2无法运行,如果缺少磁力计和气压计,可以使用四元数互补滤波进行姿态解算,如果有位置传感器(如GPS),可以采用四元数互补滤波加LPE进行位姿估计。

如果报Disarmed by auto preflight disarming
将COM_DISARM_PRFLT禁用或改大一点
空速计开关
将此参数设置为162128将禁用空速传感器检查。
CBRK_AIRSPD_CHK
发动机故障检测开关
将此参数设置为284953将禁用发动机故障检测
CBRK_ENGINEFAIL
固定翼模式解锁检查
将此参数设置为159753将允许VTOL在固定翼模式下解锁
CBRK_VTOLARMING
电调检查
需要检测到所有电调才能解锁,此参数只正对可以返回状态的电调。正常电调配置不受此参数更改的影响。
COM_ARM_CHK_ESCS
DShot电调配置
启用/禁用DShot电调。不同的模式定义不同的速度,例如DShot150=150kb/s。并非所有ESC都支持所有模式。注:这将启用FMU输出上的DShot。对于带有IO的飞控板,需要禁用IO,将DShot电调接到FMU通道
DSHOT_CONFIG
DShot 电机最小输出
DShot的最小输出值(以百分比为单位)。该值取决于电调。确保将其设置得足够高,以便电机在怠速时始终旋转
DSHOT_MIN
主GPS的串口配置
配置要在哪个串行端口上运行主GPS。
GPS_1_CONFIG
主GPS协议
选择GPS协议(基于串口的数据协议)。选择自动检测将探测所有协议,因此速度较慢。
GPS_1_PROTOCOL
MAVLink的串口配置
配置要在哪个串口上运行MAVLink
MAV_0_CONFIG
最大MAVLink发送速率
配置MAVLink流的最大发送速率(字节/秒)。如果配置的数据流超过最大速率,则会自动降低每个数据流的发送速率。如果该值设置为0,则为理论值最大速率的一半。这对应于波特率/20(字节/秒)(波特率/10=8N1配置链路上的最大数据速率)
MAV_0_RATE
成功起飞后的动作
成功起飞后的模式转换。
COM_TAKEOFF_ACT
修改定高数据来源
ekf2_hgt_mode
设置日志记录条件
SDLOG_MODE
如果要上电后就开始记录日志,需要设置成从boot到shutdown
设置自动加锁时间
COM_DISARM_LAND
这个参数设置在地面解锁无人机后不打油门自动加锁的时间
-1表示不自动加锁
无法用摇杆解锁,只能用开关解锁
可以将下面的参数设置成Enabled

六、控制参数
多旋翼位置控制模式
参数的导出和导入
先找一架正常能飞的无人机连接地面站

在参数页面右上角点击工具->保存到文件

保存的时候文件名注明参数的相关信息
然后将需要加载参数的无人机连接至地面站,注意需要加载参数的无人机必须和保存的参数脚本的固件版本、机架类型,飞控硬件等信息一致,否则可能炸机。
如果固件版本不一致,就先刷一下相应的固件,再加载参数,固件一致后,点击重置参数为固件的默认值

然后点击从文件载入

选择需要导入的参数文件

导入正常的话地面站上面所有的参数都是正常的,没有红色的提示

这个时候可以不用校准传感器,但是需要校准电调,如果用的遥控器和导入参数脚本所用的无人机的不一致,则需要校准遥控器。
自定义参数
(1) 随便找一个定义参数的文件,我这里以mc_att_control_params.c为例
仿造其他的参数定义,添加一行PARAM_DEFINE_INT32(SYS_MC_CTL_GROUP, 0);

(2) 在DEFINE_PARAMETERS里添加下面这条语句定义
(ParamIntpx4::params::SYS_MC_CTL_GROUP) _param_mc_roll_p1

(3) 在Firmware路径执行make parameters_metadata

(4 )然后编译固件下载到飞控
连接地面站,刷新参数就可以找到添加的参数

注意一点我这里是在mc_att_control_params里定义的,所以用到这个参数的线程必须执行,才会显示这个参数,也就是mc_att_control start要执行。
可以在启动脚本或者程序里使用自定义的参数
可以仿造SYS_MC_EST_GROUP来写

仿写如下:
if param compare SYS_MC_CTL_GROUP 0
then
a start
else
b start
fi
九、APM常用参数
1、碰撞检测
在撞到物体后触发保护
FS_CRASH_CHECK

2、设置串口输入为接收机输入
可以将任意的串口设置成接收机的输入端口,例如将sbus协议的接收机接serial7口上,将波特率手动输入成100,协议设置成RCIN

3、避障
硬件:
pix2.4.8
差速无人车
软件:
rover 4.4.0
qgc
1、设置测距传感器参数
mb12xx超声波
设置RNGFND1_TYPE为MaxbotixI2C
PRX_TYPE设置为4
将超声波接到i2c口即可
纳雷MR72毫米波雷达
(新版的MR72毫米波雷达可能存在设置完参数识别不到的问题,这个是雷达出厂刷的固件不对,需要刷一下雷达的固件)
接serial4口
SERIAL4_PROTOCOL设置为Lidar360,SERIAL4_BAUD设置为115200
PRX_TYPE设置为6
tfmini plus激光雷达
串口版本
SERIAL4_PROTOCOL = 9 (Lidar)这个具体SERIAL几看接的是飞控的哪个口
SERIAL4_BAUD = 115 (115200 baud)
RNGFND1_TYPE = 20 (Benewake-Serial)
RNGFND1_MIN = 30 for TFmini, 10 for TFminiPlus
RNGFND1_MAX = 1000 for indoor use OR 600 for outdoors. This is the distance in centimeters that the rangefinder can reliably read.
RNGFND1_GNDCLR = 10
I2C版本
RNGFND1_TYPE = 25 (Benewake TFminiPlus-I2C)
RNGFND1_ADDR = 16 (I2C address of lidar in decimal, equivalent to 0x10 hexadecimal)
RNGFND1_MIN = 30 for TFmini, 10 for TFminiPlus
RNGFND1_MAX = 1000 for indoor use OR 600 for outdoors. This is the distance in centimeters that the rangefinder can reliably read.
RNGFND1_GNDCLR = 10
2、设置避障参数:
AVOID_BEHAVE:
0,绕行
1,停止
4、电子围栏
先上传电子围栏

然后设置这两个参数

5、电机参数
SERVO_RATE:输出PWM的频率
MOT_SLEWRATE
油门转换速率占每秒总行程的百分比。值为100时,电机可以在一秒钟内改变其全部范围。设置为0可以禁用
MOT_SPD_SCA_BASE
使用常规转向/油门无人船(车)时,速度高于该速度时转向将按比例降低。零表示禁用速度缩放
THR_THR_MAX 最大推力
MOT_STR_THR_MIX
转向与油门优先。较高的数字优先考虑转向,较低的数字优先考虑油门。仅适用于滑移转向无人船(车)
MOT _ THST _ASYM
推力不对称。用于打滑转向。2.0意味着你的马达向前运动的速度是向后运动的两倍
6、循环执行航线
将最后一个航点设置为jump to item
item设置为1,表示跳回到1点重新执行航线,Repeat设置为10表示循环10次

7、无人机最大倾斜角度
ANGLE_MAX
这个参数决定了无人机在各模式下的最大倾斜姿态,如果想水平飞的速度快一些,可以把角度改大
8、无人机最大上升下降速度

9、无人机AUTO模式飞航线时的速度

10、loiter模式的最大速度限制
apm固件里只有loiter模式下,在拨杆的时候会限制最大速度,在poshold模式下拨杆限制的时倾斜角度

11、EK3_PRIMARY
总是如果报错ek3 line switch 1,然后位置固件出现问题.可以把EK3_PRIMARY改成1.
总是如果报错ek3 line switch 0,然后位置固件出现问题.可以把EK3_PRIMARY改成0.
这种情况和震动可能有关,可以再做一些减震。
12、PSC_JERK
PSC_JERK_XY,PSC_JERK_Z。这个两个参数越小,位置控制越平滑,越大越激进
13、低电量返航
先设置动作和电压


然后设置时间,注意时间不能设置为0,否则会禁用低电量保护

14、设置定位来源为视觉
EK3_SRC1_POSXY 6
EK3_SRC1_POSZ 6
EK3_SRC1_VELXY 0
EK3_SRC1_VELZ 0
EK3_SRC1_YAW 6
VISO_TYPE 1
15、设置遥测数据频率
例如:
SR1_ADSB 0 4
SR1_EXTRA1 10
SR1_EXTRA2 10
SR1_EXTRA3 3
SR1_EXT_STAT 2
SR1_PARAMS 0
SR1_POSITION 3
SR1_RAW_CTRL 0
SR1_RAW_SENS 1
SR1代表serial1,如果设置serial2则为SR2,以此类推,具体的参数就是频率。
具体的每个参数包含的消息如下:
SRx_ADSB
ADSB_VEHICLE
SRx_EXT_STAT
SYS_STATUS
POWER_STATUS
MEMINFO
MISSION_CURRENT
GPS_RAW_INT
GPS_RTK
GPS2_RAW
GPS2_RTK
NAV_CONTROLLER_OUTPUT
FENCE_STATUS
POSITION_TARGET_GLOBAL_INT
SRx_EXTRA1
ATTITUDE
SIMSTATE
AHRS2
AHRS3
PID_TUNING
SRx_EXTRA2
VFR_HUD
SRx_EXTRA3
AHRS
HWSTATUS
SYSTEM_TIME
RANGEFINDER
DISTANCE_SENSOR
TERRAIN_REQUEST
BATTERY2 (deprecated, use BATTERY_STATUS)
BATTERY_STATUS
MOUNT_STATUS
OPTICAL_FLOW
GIMBAL_REPORT
MAG_CAL_REPORT
MAG_CAL_PROGRESS
EKF_STATUS_REPORT
VIBRATION
RPM
ESC_TELEMETRY_1_TO_4
ESC_TELEMETRY_5_TO_8
ESC_TELEMETRY_9_TO_12
SRx_PARAMS(不用改)
SRx_POSITION
GLOBAL_POSITION_INT
LOCAL_POSITION_NED
SRx_RAW_CTRL(没用到)
SRx_RAW_SENS
RAW_IMU
SCALED_IMU2
SCALED_IMU3
SCALED_PRESSURE
SCALED_PRESSURE2
SCALED_PRESSURE3
SENSOR_OFFSETS
SRx_RC_CHAN
SERVO_OUTPUT_RAW
RC_CHANNELS
RC_CHANNELS_RAW (only sent on mavlink1 links)
16、使用网口进行mavlink通信
如果飞控带网口,可以使用网口做mavlink通信
首先使能网口功能

然后把下面的参数改成0

如果使用udp进行通信,把p1_type改成1

常用的参数的含义如下,主要改的是飞控的ip以及目标ip和端口

设置完之后,需要将电脑的ip设置成目标ip

然后地面站设置UDP通信,端口设置成P1_PORT即可。

如果要连接多个飞控,需要把每个飞控自身的IP设置成不一样(但在同一个网段)
如192.168.1.33
17、解锁报错“yaw inconsistent *** deg”
解决方法:
禁用GPS,将GPS1_TYPE设置为0
18、设置双天RTK参数
参考
https://ardupilot.org/copter/docs/common-gps-for-yaw.html
主天线相对从天线偏移
GPS1_MB_TYPE = 1
GPS1_MB_OFS_X:
GPS1_MB_OFS_Y:
GPS1_MB_OFS_Z:
以从天线为参考中心,前右下坐标系
例如:

主天线相对机体中心偏移
GPS1_POS_X:
GPS1_POS_Y:
GPS2_POS_Z:
前右下坐标系
例如:

十、PX4参数调试
PX4 1.13及以上版本
日志分析软件:flight review
https://logs.px4.io/
1、滤波参数
产生震动的原因:
1,桨叶损坏、动平衡差
2,电机桨座不垂直,电机动平衡差
3,机架刚性不足
4,部件松动
降低震动的方法:
软件滤波:调低通滤波或者陷波滤波器参数
硬件减震:调减震球的软度或者加配重
调参时可以用自稳模式飞行
在调滤波器参数之前,可以先大致调一下PID的参数,角度率环的P和D不要设置的太高,能飞并且没有明显超调和振荡就可以
通常默认PID参数就可以
建议先调完滤波参数再精调PID,因为如果传感器噪声较大且没有被滤掉的话,会导致电机输出噪声大,导致下面的现象
1电机和电调可能会变热,甚至损坏。
2续航时间变少,因为电机不断改变速度。
3可见的随机小抽搐。
此时只调PID很难达到理想的控制效果。
PX4里面可以调整低通滤波器的截止频率参数来过滤掉高频噪声。截止频率越小,过滤的越彻底,但是带来的控制延时越大。截止频率越大,延时越小,但是会使噪声变大。
延时会影响控制效果。如果控制延时较大,则相应的PID的P项就不能设置的太大。同样的PID参数,低延时的飞机可能飞行很好,延时大的飞机可能直接发散,只能调小PID才能飞起来,相应的控制效果也会变差。影响延时的因素如下:
1.机身较软,或者安装有减震板(这相当于硬件滤波)
2.软件上的低通滤波
3.PX4固件从数据读取到控制输出的计算延时
4.陀螺仪的最大输出频率,(使用参数IMU_GYRO_RATEMAX配置)。较高的速率减少了延迟,但可能会占用其他进程计算资源。仅建议使用STM32H7处理器或更新处理器的控制器使用4 kHz或更高频率(2 kHz值接近功能较差处理器的极限)。
5.与使用AUX引脚相比,IO芯片(MAIN引脚)增加了约5.4毫秒的延迟。为避免IO延迟,请禁用SYS_USE_IO并将电机连接到AUX引脚。
6.PWM输出信号:启用Dshot或One Shot以减少延迟。
7.执行器的控制延时,一般小轴距飞机的电机相应快,大轴距飞机的电机KV低,响应慢。因此大轴距的飞机PID不能太大。
滤波器参数
陀螺仪数据的陷波滤波器,用于滤除窄带噪声,例如桨叶频率处的谐波。可以使用IMU_GYRO_NF0_BW和IMU_GYROC_NF0_FRQ配置此滤波器。
陀螺仪传感器数据的低通滤波器。可以使用IMU_GYRO_CUTOFF参数进行配置。
陀螺仪D项上的一个单独的低通滤波器。D项最容易受到噪声的影响,而稍微增加的延迟不会对性能产生负面影响。因此,D项具有可单独配置的低通滤波器IMU_DGYRO_CUTOFF。
电机输出(MOT_SLEW_MAX)上的滑动滤波器。一般不使用。
调参前需要配置日志记录参数:SDLOG_PROFILE ,勾选High rate。
调参数IMU_GYRO_CUTOFF。
看陀螺仪数据的FFT频谱图
以下图为例,在40HZ以后的噪声比较多,可以设置IMU_GYRO_CUTOFF为35。
调参数IMU_DGYRO_CUTOFF。
看角加速度的FFT图
以下图为例,在40Hz以后有一个噪声高峰,可以设置IMU_DGYRO_CUTOFF为35

调参数IMU_ACCEL_CUTOFF。
看加速度数据的FFT图。
以下图为例,在35Hz以后的振动比较大,可以设置IMU_ACCEL_CUTOFF为30
调完参数可以看actuator_control的FFT,查看控制输出的噪声是否在可接受的范围。
除了软件上的滤波,还需要在硬件上减少振动,例如飞控安装减震,飞机上的所有部件都安装牢固,桨叶动平衡。机架尽量用强度高,轴距小的的机架,电机用高KV值电机(高频振动更好滤除)
陷波滤波器调参
有的时候FFT在一个较低的频率处有个尖峰,如果想用低通滤波将其滤除的话,需要将截止频率设置的很低,会使延时增大,此时可以通过陷波滤波器将其滤除。
需要注意的是,这种尖峰可能是由于飞机部件松动引起的振动,加固飞机可能比调滤波参数更有效果
上图需要设置两个陷波滤波器,上图的IMU_GYRO_CUTOFF可以设置为120.
第一个:
频率参数IMU_GYRO_NF0_FRQ设置为20
陷波区间IMU_GYRO_NF0_BW 设置为10
第二个:
频率参数IMU_GYRO_NF0_FRQ设置为26.5
陷波区间IMU_GYRO_NF0_BW 设置为2
陷波滤波后的效果如下:

一般穿越机的IMU_GYRO_CUTOFF可以设置为120,IMU_DGYRO_CUTOFF可以设置为50到80
大的机架就根据FFT具体设置。
2、PID参数
自动调参
如果使用自动调参,需要使用新版的QGC地面站
PX4自动调参可以用hold模式调参,先起飞,然后切换到hold模式,调角速率环的话,点击下图的Autotune,飞机会自动进行roll/pitch/yaw角速率PID的调整。调整期间可以看到飞机会自动执行一些动作。
调整完后,可以看到地面站提示降落飞机,自动调参的进度条提示wait for disarm,此时降落飞机

降落后可以看到地面站提示Autotune successful,说明调参成功。

角度环的自动调参同角速率环
手动调参
首先调角速率环,然后姿态环,再速度环,最后位置环。
角速率环
PX4角速率环PID流程如下

基于上图,有两种调参形式
1.并行形式
相当于K取常数

2.标准形式
相当于P取常值,这种形式在数学上等同于并行形式,但主要优点是它将比例增益调谐与积分和导数增益解耦。这意味着,通过利用具有类似尺寸/惯性的无人机的增益,并简单地调整K增益,就可以很容易地调整新飞机,使其正常飞行。

在调角速率PID时可以在自稳/特技模式下飞行,特技模式能更容易的看出调参效果,但更难操控,新手建议用自稳模式。
一开始可以把roll/pitch的PID设置成一样,等调的差不多了,然后再对roll和pitch的PID单独细调,如果飞机是对称的,则roll和pitch的PID一样就可以了。yaw的调参方法和roll/pitch类似,但是yaw的D项一般为0.
P项调节
将角速率环的I和D都置0,K置为1,然后调节P项,从小到大开始调。
P项过高:高频振荡
如下图,红色是当前角速率,绿色是期望角速率,大概以10Hz频率振荡

P项过低:对操纵反映迟缓,在特技模式下可以看到姿态的漂移。
如下图,红色是当前角速率,绿色是期望角速率,可以看到当前角速率曲线的相位明显滞后于期望的角速率

每次增加20-30%的增益,最终微调时减少到5-10%。
较好的P如下图,红色的为期望角速度,蓝色为当前角速度。相应较快,且没有明显的超调和振荡(两者还存在较大的静差,这是由于现在的I项为0)

I项调节
调好P后,就可以调节I
I项过高:低频振荡
如下图,红色是当前角速率,蓝色是期望角速率,几乎没有静差,但过高的I也会导致振荡
I项过低:静差较大,如下图,红色是当前姿态,蓝色是期望姿态
较好的I效果如下,没有振荡,也没有明显的静差。
D项调节
D项的主要作用是抑制超调,但不宜过大,因为会放大噪声
D项过大:电机会发烫,并且电机会抽搐(听声音就是高频的忽高忽低声音),并且对操纵的反映比较迟钝。
可以看到电机的输出变化非常剧烈。
D项过小:在阶跃输入后会出现超调,例如在自稳模式猛打杆后立刻将杆回中,可以看到飞机来会振荡几次后才恢复水平。此时可以调大D,直到飞机能够直接恢复水平而没有明显振荡。
姿态环
姿态环只有比例项,调参比较简单,如果P太小,操纵会比较迟钝,P太大也会出现振荡或超调,一般默认值就可以用。
十一、常见问题及解决方案
1、地面站如何连接无人机
- 用手机地面站连遥控器(蓝牙连接),不支持苹果和鸿蒙5.0
- 遥控器用双头usb线连电脑
2、飞控用USB线连不上电脑地面站
首先看下设备管理器,里面有没有识别到飞控的端口(如果用云卓T10使用双头USB线连电脑地面站的话需要装CP2102驱动),如果没有识别到端口,检查飞控硬件,USB线,或者驱动问题。如果识别到端口,但地面站没有自动连接,可以手动添加一下连接,波特率一般为57600或者115200。
如果设备管理器里识别不到端口,考虑飞控硬件问题
3、无人机上电后,电调识别不到信号,一直嘀嘀嘀叫(或者不叫),
- 检查接线是否有问题,信号线与地线不要接反
- 检查信号端口与地面站(对应通道)设置保持一致
- 检查飞控是否给电调信号(检查飞控power口是否有电),因为电调需要接收来自飞控的PWM/Dshot等控制信号才会启动。
- 检查油门是否有输出(地面站-分析工具-servo_output_raw)
- 检查硬件电调是否有问题
4、无人机起飞后侧翻的可能原因,怎么排查
- 是否更改过固件和参数;
- 检查电调接线是否有问题;
- 桨叶是否有损坏;桨叶是否安装错;机架和螺丝是否紧固;
- 检查电机转向是否不对,重新校准,
- 校准电调之后要设置一下怠速;
- 检查是否是硬件问题(电机、电调、飞控);
- 导出日志分析;
- 最大倾斜角度限制过低COM_TILT_MAX,起飞时油门过大导致倾斜角度超限,触发保护。
注:校准传感器不对,可能会导致起飞倾斜,但不会侧翻
5、无人机没法垂直起飞(起飞一边倒),可能的原因,怎么排查
- 校准传感器(地平线)
- 检查飞机重心
- 可适当将起飞时间改短,离地速度不要太小
- 检查电机的怠速是否一致(将每个电调的油门行程都设置成一样)
- 室外gps定点飞
6、无人机飞的时候电机声音尖锐,电机温度很高,可能的原因
- 检查桨叶(桨叶是否装反,桨叶是否打到上板)
- 检查电池是否匹配
- 振动(主要)
- 电机是否堵转
- 飞控参数pid(无关)
7、室外定点飞行时,无人机原地转圈,越转越大,可能的原因
答:检查航向
8、室外定点飞行时,一直往一个方向飘,可能的原因
答:检查gps
9、飞控连不上mavros(通信问题),可能的原因(检查底层参数)
- MAVROS 版本与飞控固件(如 PX4)是否兼容。(是否更改固件和参数)
- 确认飞控供电正常,LED 状态正常。(电池电压是否过低)
- 检查飞控与电脑之间的 USB / 串口线是否松动、损坏。
- 尝试更换 USB 接口或数据线。
- 通过 QGroundControl检查MAVROS 配置的波特率(如57600)与飞控实际波特率是否一致
- 手动启动 MAVROS 节点并查看日志(roslaunch mavros px4.launch,按Ctrl+C查看错误)。使用rostopic list确认是否有飞控相关话题(如/mavros/state)。
- 检查飞控PX4是否正确安装串口驱动(如 CH340、CP210x),在设备管理器中查看是否有串口设备(如COM3或/dev/ttyUSB0),若显示异常需重新安装驱动。
- 在 Linux 中可通过ls /dev/ttyUSB*或dmesg | grep tty查看可用串口。MAVROS 节点参数中指定的串口路径(如/dev/ttyUSB0)与实际是否相符合。
- 检查端口是否被占用,关闭所有占用串口的程序后重试。
- 检查防火墙或杀毒软件拦截。
10、地面站P900数传连接多架载具,参数加载不全,信息更新缓慢
本质上,数传是一种无线数据传输工具,其性能受限于传输功率、通信距离和数据带宽。地面站加载参数不全的问题,整体解决思路可以概括为“开源节流”:
一方面,通过提升数传功率,确保其在满功率下运行;另一方面,通过削减不必要的数据传输,降低带宽压力。具体措施包括将 PX4 的 MAVLink 消息发送等级调整为 NORMAL,以减少冗余数据。
此外,建议为数传模块单独供电,以避免因供电不足而影响功率输出。
在数传参数配置方面,需重点关注两个速率:空速率(即数传模块之间的无线通信速率)和串口速率(即数传与飞控或地面站之间的通信速率)。两者应尽可能调至设备支持的最高值,以提高单位时间内的有效数据吞吐量。下图为当前使用的 P900 数传模块的选项

另一个可优化的小设置是关闭自动重发功能。部分数传模块内置了错误检测机制,会自动重发丢失的消息,但这也可能造成带宽浪费。在 P900 模块中,该功能可通过设置命令 ATS113=0 来关闭,以进一步释放通信资源。
经测试,在这种情况下,p900能有效传输3~4台载具信息,再多就也加载不过来了
4、GPS/RTK问题
1. 地面站不显示0颗星
1.检查接线是否正确
2.检查端口波特率
2.在室外空旷的地方一直显示零颗星,或者搜星很低
检查天线头子或者馈线
3.双天线RTK航向不准
检查搜到的星数,如果搜星低,检查天线。如果搜星正常,检查航向来源参数
4. 无人船跑航线原地打转,应该怎么排查
检查航向
5.双天线rtk在室外搜索卫星的时候,偶尔会不出现,出现的时候会显示进入固定
重新配置rtk
5、PX4多旋翼无人机
本教程基于PX4 1.13.3版本固件,但是其他版本的固件大体上差不多
1.在室内用雷达定高可以正常飞,但是用气压计定高高度不好控制
可能是上升下降的速度限制的太小。
2. 无人机解锁失败,应该怎么解决
1.检查解锁开关gest(enabled)
2. 解锁时无报错信息:遥控器是否正确配对,检查遥控器通道是否正确;(内八解锁时一定要对准凹槽)
PX4固件的解锁方式默认是摇杆解锁,美国手的遥控器,将左边摇杆打到右下45度并保持(右边摇杆不用拨)即可解锁。
也可以设置解锁开关来控制飞控解锁,如果设置了解锁开关(如下图),则无法通过拨杆的方式解锁飞控。

这种情况下如果想使用摇杆解锁。可以禁用解锁开关。
3.看地面站具体报什么错;
4.室外版的飞机在室内需要检查电子围栏是否;
5.USB连接检查CBRK_USB_CHK(USB相关报错),检查起飞时是否有USB连接,默认情况下有USB连接时是无法解锁的,如果需要插USB解锁,需要设置为197848
6.飞机插USB能解锁,拔掉USB不能解锁
原因:电源检查未通过
解决方法:关掉电源检查,设置下面参数

3.飞控的偏航角一直飘移/误差较大
原因:罗盘干扰
解决办法:禁用内置罗盘,使用外置罗盘
无人机飞的时候按一定频率上下抖动(或者不断的怠速/复飞)
原因:地面检测判断错误,在空中判断成在地面,导致自动进入怠速,在下坠后有判断成在空中,重新复飞。
解决办法:

将这个参数改小一点,降低地面检测判断错误的可能性
无法修改条件参数
有些参数(telem2波特率)是条件参数,只有用到相应的端口才能设置对应端口的波特率
以telem2为例,其他的也类似,先把参数设为默认

点击右上角“工具”按钮,点击“重置为载具的默认值”
然后
设置Gps1的接口为telem2,重启飞控,再查看serial参数,即可找到telem2
设置好telem2的波特率后记得把GPS的接口再设回到GPS1
4.舵机高频抖动,电机断断续续的转动
现象:在没有拨遥感或者飞控没有解锁的情况下,电机突然时断时续的自己转动,舵机自己高频的抖动
原因:信号受到干扰
解决方法:将电调的信号线和舵机的信号线(特别是和飞控连接的接头处)远离天线或者电源线
5.飞控在重刷固件后能连地面站,重启后连不上地面站
原因:可能是因为没有设置机型参数sys_auto_config,或者设置的机型参数不存在。
解决办法:重新烧录固件,并且在烧录完固件连上地面站后设置一下机型
6.无人机无法记录日志,应该怎么解决。
检查 SD 卡是否损坏:尝试在电脑上读取,格式化
7.PX4固件用数传连地面站断断续续,或一直卡在加载参数
例如数传接的mav0口将参数MAV_0_FLOW_CTRL改成Force off

8.无人机解锁后刹车开关不生效
解决办法:换其他的通道做刹车
9.PX4固件无人机起飞模式和任务模式无人机只解锁不起飞
把
mpc_z_vel_max_dn
mpc_z_v_auto_dn
两个参数改大
6、ArduPilot固件
apm固件在mavros里获取不到位置、姿态等信息
修改下面的参数设置数据发送的频率,例如telem1口就是SR1开头

apm固件使用双天线RTK航向
AHRS_EKF_TYPE = 3 (to use EKF3)
EK2_ENABLE = 0 (to disable EKF2)
EK3_ENABLE = 1 (to enable EKF3)
EK3_MAG_CAL is not used for this feature so it can be left at its default value (“0” for Plane, “3” for Copter, “2” for Rover)
EK3_SRC1_YAW = 2 (“GPS”) or 3 (“GPS with Compass Fallback”) if a compass(es) is also in the system
apm固件拨遥控器摇杆地面站没反应
检查地面站有没有使能虚拟摇杆
刷完固件后没有姿态,不断显示报错Unable to detect board type

修改参数BRD_TYPE为响应的板子类型

上电后电机一直响,解锁电机不转
检查电调信号线接线,如果接线没问题,检查安全开关有没有打开,如果没有装安全开关,可以在参数里将安全开关禁用,将下面两个参数改成0。

7、无人船与无人车
模式切换
通道5:拨动拨杆,将对应的黄色字体的飞行模式设置为想要模式(hold 随便 manul)
解锁加锁
在参数设置上,将rc6_option改为高级设置->手动设置->153
同时将ARM_CHECK改为0,否则不能解锁
控制分配
Servo1_function改为左电机(throttleLeft)
Servo3_function改为左电机(throttleRight)
将safet相关函数改为0,否则没有输出
将rc3_trim改为1500,也就是油门中值
设置好后可以通过分析检测输出,拨动推杆观察servo1和servo3的pwm是否正常变化
Gps参数和RTK参数
修改对应口波特率,如对于2.4.8,接入gps口,对应飞控硬件的serial3口,所以将serial3
口设置为GPS,并且波特率要于接入设备对应。
修改接受协议 ,对于普通GPS,参数GPS_type选择为auto,对于RTK选择NMEA(前提
是RTK输出的协议是nmea,一般不会更改,如更改,另外调整)
航向设置
如果航向来源是罗盘,则默认设置即可。
如果航向来源是双天线RTK,则需要修改参数。
参数1:航向来源:EK3_SC1_YAW设置为gps。
参数2:禁用罗盘:compass_enable和compass_use 开头参数修改为disable。
无人船低电量保护fs_action 1.batt_fs_crt_act 2.batt_fs_low_act
无人船跑航线原地打转,应该怎么排查
检查航向
RTK
①无人机单纯加单天线rtk室外定高
参数gps—telem3(设置完之后重启),hgt—gps,serial telem3—auto,
EKF2 噪声—0.03
②无人机原本是gps用气压计定高,现在加单天线rtk室外定高
需要改线,把rtk的r和t与gps里面的r和t一致,rtk的vcc和gnd通过其他口供电(供电是飞控供电,不需要设置参数)
参数gps—gps1(设置完之后重启),hgt—gps,serial gps1—auto,
EKF2 噪声—0.03
③双天线rtk:可参考文档UM982双天线RTK在飞机上的使用
在设置航线任务后,点击开始任务,飞机的旋翼都会转,但是不会飞起来,然后就立刻显示飞行计划已完成
答:可以修改上升下降的速度(修改后速度可能比较快,需要注意一下)
如果是气压计定高,那么误差会比较大,定点或者定高飞油门打到底可能都不起飞
答:气压计定高本身误差就比大,但是打杆的时候本身期望很小,pid控制的话很难控制,可以尝试把起飞时候的上升速度调高一点(可以改成1及以上)
如果把电机和桨叶反着装,那么遵循的还是
答:还是俯视视角12电机逆时针,34电机顺时针
RQT 报错:
答:直接ssh 不行,需要ssh –y
打开之后没有话题选择
答:需要设置主从(在·bashrc里修改)
- 无人机定位在刚启动的时候,位置是准确的,但是一启动定位立马飘
- 检查是否有线破皮
- 检查网口线那边有松动
- 更换mid360尝试
飞机维修的时候
- 首先检查固件和参数
- 电机和电调排查时候,先排查电机,电机是否转的时候有卡顿
2.4.8飞控的gps不亮灯,但gps卫星数为0,检查scl与sda接线
调整网口与主板的顺序
- boot maintence manger
- boot options
- change boot order
- xxxG
这两年,IT行业面临经济周期波动与AI产业结构调整的双重压力,确实有很多运维与网络工程师因企业缩编或技术迭代而暂时失业。
很多人都在提运维网工失业后就只能去跑滴滴送外卖了,但我想分享的是,对于运维人员来说,即便失业以后仍然有很多副业可以尝试。
网工/运维/测试副业方向
运维网工,千万不要再错过这些副业机会!
第一个是知识付费类副业:输出经验打造个人IP
在线教育平台讲师
操作路径:在慕课网、极客时间等平台开设《CCNA实战》《Linux运维从入门到精通》等课程,或与培训机构合作录制专题课。
收益模式:课程销售分成、企业内训。
技术博客与公众号运营
操作路径:撰写网络协议解析、故障排查案例、设备评测等深度文章,通过公众号广告、付费专栏及企业合作变现。
收益关键:每周更新2-3篇原创,结合SEO优化与社群运营。
第二个是技术类副业:深耕专业领域变现
企业网络设备配置与优化服务
操作路径:为中小型企业提供路由器、交换机、防火墙等设备的配置调试、性能优化及故障排查服务。可通过本地IT服务公司合作或自建线上接单平台获客。
收益模式:按项目收费或签订年度维护合同。
远程IT基础设施代维
操作路径:通过承接服务器监控、日志分析、备份恢复等远程代维任务。适合熟悉Zabbix、ELK等技术栈的工程师。
收益模式:按工时计费或包月服务。
网络安全顾问与渗透测试
操作路径:利用OWASP Top 10漏洞分析、Nmap/BurpSuite等工具,为企业提供漏洞扫描、渗透测试及安全加固方案。需考取CISP等认证提升资质。
收益模式:单次渗透测试报告收费;长期安全顾问年费。
比如不久前跟我一起聊天的一个粉丝,他自己之前是大四实习的时候做的运维,发现运维7*24小时待命受不了,就准备转网安,学了差不多2个月,然后开始挖漏洞,光是补天的漏洞奖励也有个四五千,他说自己每个月的房租和饭钱就够了。

为什么我会推荐你网安是运维和网工测试人员的绝佳副业&转型方向?
1.你的经验是巨大优势: 你比任何人都懂系统、网络和架构。漏洞挖掘、内网渗透、应急响应,这些核心安全能力本质上是“攻击视角下的运维”。你的运维背景不是从零开始,而是降维打击。
2.越老越吃香,规避年龄危机: 安全行业极度依赖经验。你的排查思路、风险意识和对复杂系统的理解能力,会随着项目积累而愈发珍贵,真正做到“姜还是老的辣”。
3.职业选择极其灵活: 你可以加入企业成为安全专家,可以兼职“挖洞“获取丰厚奖金,甚至可以成为自由顾问。这种多样性为你提供了前所未有的抗风险能力。
4.市场需求爆发,前景广阔: 在国家级政策的推动下,从一线城市到二三线地区,安全人才缺口正在急剧扩大。现在布局,正是抢占未来先机的黄金时刻。

网工运维测试转行学习网络安全路线

(一)第一阶段:网络安全筑基
1. 阶段目标
你已经有运维经验了,所以操作系统、网络协议这些你不是零基础。但要学安全,得重新过一遍——只不过这次我们是带着“安全视角”去学。
2. 学习内容
**操作系统强化:**你需要重点学习 Windows、Linux 操作系统安全配置,对比运维工作中常规配置与安全配置的差异,深化系统安全认知(比如说日志审计配置,为应急响应日志分析打基础)。
**网络协议深化:**结合过往网络协议应用经验,聚焦 TCP/IP 协议簇中的安全漏洞及防护机制,如 ARP 欺骗、TCP 三次握手漏洞等(为 SRC 漏扫中协议层漏洞识别铺垫)。
**Web 与数据库基础:**补充 Web 架构、HTTP 协议及 MySQL、SQL Server 等数据库安全相关知识,了解 Web 应用与数据库在网安中的作用。
**编程语言入门:**学习 Python 基础语法,掌握简单脚本编写,为后续 SRC 漏扫自动化脚本开发及应急响应工具使用打基础。
**工具实战:**集中训练抓包工具(Wireshark)、渗透测试工具(Nmap)、漏洞扫描工具(Nessus 基础版)的使用,结合模拟场景练习工具应用(掌握基础扫描逻辑,为 SRC 漏扫工具进阶做准备)。
(二)第二阶段:漏洞挖掘与 SRC 漏扫实战
1. 阶段目标
这阶段是真正开始“动手”了。信息收集、漏洞分析、工具联动,一样不能少。
熟练运用漏洞挖掘及 SRC 漏扫工具,具备独立挖掘常见漏洞及 SRC 平台漏扫实战能力,尝试通过 SRC 挖洞搞钱,不管是低危漏洞还是高危漏洞,先挖到一个。
2. 学习内容
信息收集实战:结合运维中对网络拓扑、设备信息的了解,强化基本信息收集、网络空间搜索引擎(Shodan、ZoomEye)、域名及端口信息收集技巧,针对企业级网络场景开展信息收集练习(为 SRC 漏扫目标筛选提供支撑)。
漏洞原理与分析:深入学习 SQL 注入、CSRF、文件上传等常见漏洞的原理、危害及利用方法,结合运维工作中遇到的类似问题进行关联分析(明确 SRC 漏扫重点漏洞类型)。
工具进阶与 SRC 漏扫应用:
-
系统学习 SQLMap、BurpSuite、AWVS 等工具的高级功能,开展工具联用实战训练;
-
专项学习 SRC 漏扫流程:包括 SRC 平台规则解读(如漏洞提交规范、奖励机制)、漏扫目标范围界定、漏扫策略制定(全量扫描 vs 定向扫描)、漏扫结果验证与复现;
-
实战训练:使用 AWVS+BurpSuite 组合开展 SRC 平台目标漏扫,练习 “扫描 - 验证 - 漏洞报告撰写 - 平台提交” 全流程。
SRC 实战演练:选择合适的 SRC 平台(如补天、CNVD)进行漏洞挖掘与漏扫实战,积累实战经验,尝试获取挖洞收益。
恭喜你,如果学到这里,你基本可以下班搞搞副业创收了,并且具备渗透测试工程师必备的「渗透技巧」、「溯源能力」,让你在黑客盛行的年代别背锅,工作实现升职加薪的同时也能开创副业创收!
如果你想要入坑黑客&网络安全,笔者给大家准备了一份:全网最全的网络安全资料包需要保存下方图片,微信扫码即可前往获取!
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
(三)第三阶段:渗透测试技能学习
1. 阶段目标
全面掌握渗透测试理论与实战技能,能够独立完成渗透测试项目,编写规范的渗透测试报告,具备渗透测试工程师岗位能力,为护网红蓝对抗及应急响应提供技术支撑。
2. 学习内容
渗透测试核心理论:系统学习渗透测试流程、方法论及法律法规知识,明确渗透测试边界与规范(与红蓝对抗攻击边界要求一致)。
实战技能训练:开展漏洞扫描、漏洞利用、电商系统渗透测试、内网渗透、权限提升(Windows、Linux)、代码审计等实战训练,结合运维中熟悉的系统环境设计测试场景(强化红蓝对抗攻击端技术能力)。
工具开发实践:基于 Python 编程基础,学习渗透测试工具开发技巧,开发简单的自动化测试脚本(可拓展用于 SRC 漏扫自动化及应急响应辅助工具)。
报告编写指导:学习渗透测试报告的结构与编写规范,完成多个不同场景的渗透测试报告撰写练习(与 SRC 漏洞报告、应急响应报告撰写逻辑互通)。
(四)第四阶段:企业级安全攻防(含红蓝对抗)、应急响应
1. 阶段目标
掌握企业级安全攻防、护网红蓝对抗及应急响应核心技能,考取网安行业相关证书。
2. 学习内容
护网红蓝对抗专项:
-
红蓝对抗基础:学习护网行动背景、红蓝对抗规则(攻击范围、禁止行为)、红蓝双方角色职责(红队:模拟攻击;蓝队:防御检测与应急处置);
-
红队实战技能:强化内网渗透、横向移动、权限维持、免杀攻击等高级技巧,模拟护网中常见攻击场景;
-
蓝队实战技能:学习安全设备(防火墙、IDS/IPS、WAF)联动防御配置、安全监控平台(SOC)使用、攻击行为研判与溯源方法;
-
模拟护网演练:参与团队式红蓝对抗演练,完整体验 “攻击 - 检测 - 防御 - 处置” 全流程。
应急响应专项: -
应急响应流程:学习应急响应 6 步流程(准备 - 检测 - 遏制 - 根除 - 恢复 - 总结),掌握各环节核心任务;
-
实战技能:开展操作系统入侵响应(如病毒木马清除、异常进程终止)、数据泄露应急处置、漏洞应急修补等实战训练;
-
工具应用:学习应急响应工具(如 Autoruns、Process Monitor、病毒分析工具)的使用,提升处置效率;
-
案例复盘:分析真实网络安全事件应急响应案例(如勒索病毒事件),总结处置经验。
其他企业级攻防技能:学习社工与钓鱼、CTF 夺旗赛解析等内容,结合运维中企业安全防护需求深化理解。
证书备考:针对网安行业相关证书考试内容(含红蓝对抗、应急响应考点)进行专项复习,参加模拟考试,查漏补缺。
运维网工测试转行网络攻防知识库分享
网络安全这行,不是会几个工具就能搞定的。你得有体系,懂原理,能实战。尤其是从运维转过来的,别浪费你原来的经验——你比纯新人强多了。
但也要沉得住气,别学了两天Web安全就觉得自己是黑客了。内网、域渗透、代码审计、应急响应,要学的还多着呢。
如果你真的想转,按这个路子一步步走,没问题。如果你只是好奇,我劝你再想想——这行要持续学习,挺累的,但也是真有意思。
关于如何学习网络安全,笔者也给大家整理好了全套网络安全知识库,需要的可以扫码获取!
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
1、网络安全意识

2、Linux操作系统

3、WEB架构基础与HTTP协议

4、Web渗透测试

5、渗透测试案例分享

6、渗透测试实战技巧

7、攻防对战实战

8、CTF之MISC实战讲解

关于如何学习网络安全,笔者也给大家整理好了全套网络安全知识库,需要的可以扫码获取!
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

41

被折叠的 条评论
为什么被折叠?



