双击下载的px4_driver_installer_v10_win.exe驱动安装文件,
Pixhawk驱动下载(点击即可下载):http://www.inf.ethz.ch/personal/lomeier/downloads/px4_driver_installer_v10_win.exe
双击下载的px4_driver_installer_v10_win.exe驱动安装文件,按步骤一路next即可完成pixhawk驱动安装(默认安装目录为C:\px4_drivers)。如果是正版windows系统,连接pixhawk飞控板,在设备管理器的端口下会有PX4 FMU(COMX)出现。
国内精简windows系统因为删除了一些驱动文件,致使安装pixhawk驱动时出现错误“Windows已找到设备的驱动程序软件,但在试图安装它时遇到错误。”。再看PX4 FMU下方信息“系统找不到指定的文件”,到底是什么文件丢失了呢?
经过网络搜索相关信息及几次试验,终于知道pixhawk驱动安装失败的原因是因为精简系统缺少了usbser.sys文件。该文件在pixhawk的驱动安装目录(默认为C:\px4_drivers)下就有。
将usbser.sys文件拷贝到系统的C:\Windows\inf文件夹下。然后选中设备管理器的其他设备节点下带有叹号的PX4 FMU v2.X(如果没有此项,使用USB数据线连接pixhawk飞控板,进入系统的设备管理器,随便选中一个节点,点击右键,在弹出菜单中“选择扫描检测硬件改动(A)”,设备管理器窗口一闪之后就会在其他设备节点下显示PX4 FMU v2.x),点击右键,在弹出菜单中选择“更新驱动程序软件§…”,弹出更新驱动程序软件-PX4 FMU v2.x窗口,选择第二项“浏览计算机以查找驱动程序软件”
点击浏览,定位到pixhawk驱动安装目录,点击下一步。
几秒之后,驱动程序搜索、安装完成。弹出如下窗口,“Windows无法验证此设备所需的驱动程序的数字签名。最近的硬件或软件更改安装的文件可能未正确签名或已损坏,或者可能是来自未知来源的恶意软件。(代码52)”,这是什么原因呢?
这是由于64位的win7考虑了系统安全的问题,对驱动程序要求有数字签名,否则无法正常使用。但是大多数使用了驱动文件的小程序不可能有数字签名认证的,难道就不能在精简的64位win7上面玩儿转pixhawk了吗?请往下看。
其实想要在64位win7中使用未有签名的驱动程序的方法有很多。这里我们使用开机选择禁用驱动程序签名强制的方法。具体步骤是,开机之后,在登录等待界面按F8键,进入windows系统的高级启动项,选择“禁用驱动程序签名强制”项进入系统,即可安装未有签名的驱动程序了;当然进入调试模式同样也可以加载未有签名的驱动,这里不推荐。
按上面步骤进入系统后,重新手动添加pixhawk的驱动程序,最后终于出现久违了的窗口。太激动了。
但该方法在电脑重新启动后又回到了原始的状态,只是一个临时性的解决方法。网上虽然有说可以永久禁止win7系统的驱动签名强制要求,但对pixhawk驱动来说并不好使,只能由一个程序来实现每次开机时系统自动进入“禁用驱动程序签名强制”模式。
APM:Copter多旋翼 固件内部有一套非常完善的Pre-Arm安全检查提醒机制,会检查你的飞行器是否有大量问题,包括各种未校准,已经是否传感器已经出现损坏,当然这解锁检查机制也不是百分百可靠的,你可以通过在全部参数列表Arming-check 禁用他
使用GCS地面站查看Pre-Arm错误信息
在闪烁黄色灯时,使用者会无法解锁,而且解锁时蜂鸣器也会长鸣2下。此时你必须连接上地面站,才能排除究竟是什么问题导致了不能解锁和飞行,一般通常是 传感器未校准 或者出现了失控保护、低压设置不正确等等,下面会详细分析每种报错内容:
阅读下面内容前,请确保你已经使用并连接地面站、做了飞控板校准以及会简单使用遥控器。如果还不会,请查看之前的章节:)
如果你觉得报错是无意义的,而且又影响你的解锁飞行,你可以通过地面站去关闭他。
在你飞行之前,你需要解锁。在飞行前对飞机进行锁定有两个目的:
• 当飞行员没有准备好飞行时防止电机转动(一个安全功能)
• 在自动驾驶仪完全配置并准备飞行之前,防止起飞
在过去的APM版本中:固定翼锁定是可选的,默认情况下禁用锁定要求(由ARMING_REQUIRED参数控制)。在3.3以后的固件中,默认是锁定的。
解锁的关键是启用电机。在飞机解锁之前,您将无法启动电机(即控制油门)。
注意:如果您启用了AHRS_EKF_USE(您正在使用EKF),则在解锁前启用解锁检查很重要。没有解锁检查,可能会出现ekf失效导致飞行异常甚至炸机。
配置锁定
有三个参数来控制锁定如何工作:
• ARMING_REQUIRE:这将控制是否需要锁定。默认值是1,这意味着起飞前需要锁定。如果设置为0,则不需要锁定。
• ARMING_CHECK:这将控制在允许解锁之前检查自动驾驶仪的功能。默认值是1,表示所有的检查都完成了。大多数用户应该把它设成1,因为解锁检查是重要的,以确保自动驾驶仪各项设备正常运行。
• ARMING_RUDDER:该参数允许您配置基于方向舵的解锁和上锁。默认值是1,这意味着你可以用向右打杆解锁和上锁。如果你设置为2,你也可以用往左打杆上锁和解锁。如果将此设置为0,则只能通过地面站进行上锁/解锁。
如何解锁
当你准备好飞行时,你可以解锁电机。 这可以通过两种方式来完成:
遥控器解锁, 将方向杆打到最右,并将油门杆打到最低保持两秒。
GCS武装。 按下地面站上的布防按钮。
如何上锁
由于APM:固定翼3.4.0,可以使用遥控器上锁:保持油门在最低和向左舵2秒。在ArduPlane飞行中,飞行员可能会意外触发这种情况,所以在上锁之前还有其他要求:
• 您需要通过将ARMING_RUDDER参数更改为2(ArmOrDisarm)来允许方向舵上锁。
• 飞手需要确保飞机没有飞行。并且空速为0,否则可能无法上锁。
您也可以使用以下方法之一
• 使用电调进行上锁:
• 使用地面站发出上锁命令
• 使用飞机上的安全开关(在Pixhawk上)
自动降落后,如果飞机仍然在地面上,飞机将在20秒后自动上锁(由LAND_DISARMDELAY参数控制)
蜂鸣器和安全开关状态指示
如果自动驾驶仪已上锁,但以及配置好(包括gps已定位),主LED灯闪绿色。
如果自动驾驶仪已经解锁,主LED常亮绿色。
当自动驾驶仪解锁时,蜂鸣器会有“滴”的长音
当自动驾驶仪上锁时,蜂鸣器响“滴滴”两声。
解锁检查
在允许解锁之前,自动驾驶仪会检查一组条件。所有的条件必须通过才允许借宿。如果任何条件失败,那么解锁失败错误信息发给GCS(地面站)。
执行的检查是:
• 安全开关。在允许解锁之前,必须将PX4安全开关设置为安全关闭状态。这可以通过按住安全开关2秒直到它停止闪烁,或者通过设置BRD_SAFETY_ENABLE = 0来禁用安全开关
• 气压计检查。气压计必须健康(获取良好的数据)
• 惯性传感器检查。加速度计和陀螺仪必须都是健康的,都要进行校准。如果你有多个加速器或陀螺仪,那么他们需要保持一致。
• AHRS检查。 AHRS(姿态参考系统)需要被初始化并准备就绪。请注意,如果您启用了EKF,则启动后可能需要30秒。
• 指南针检查。所有罗盘都必须进行配置和校准,并且需要保持一致(如果您有多个指南针)
• GPS检查。你需要有一个3D的GPS定位。
• 电池检查。电池电压必须高于故障安全电压(如果已配置)
• 空速检查。如果您配置了空速传感器,则传感器需要工作。
• 日志检查。日志子系统需要工作(即必须安装microSD并在PX4上工作)
• RC控制检查。遥控器已校准且没有触发失控保护。
锁定时油门输出
当飞机锁定时,油门通道不会响应飞行员的输入。您可以配置两种可能的行为:
• ARMING_REQUIRE = 1。锁定时,油门通道的最小值(通常为RC3_MIN)将被发送到油门通道
• ARMING_REQUIRE = 2。锁定时,没有pwm信号发送到油门通道。请注意,有些电调会发出蜂鸣声,提示没有pwm型号。
解锁失败
如果您的飞机拒绝解锁,要诊断故障问题,请遵循本指南
检查飞机是否已经配置好(解锁前请确保硬件已经校准完成,包括加速计,陀螺仪,罗盘,遥控器;并且有良好的gps定位)
固定翼飞机,已经配置好,飞控主led会闪绿色灯。
如报bad ahrs,请校准空速计,并重新上电,等待。
尝试解锁
尝试用你的GCS(地面站)发送一个arm命令。如果解锁被拒绝,则会从自动驾驶仪向GCS发送一条消息,指出拒绝解锁的原因。
遥控器解锁
如果您使用遥控器解锁失败并且地面站没有提示错误,请检查遥控器是否校准,或飞控收到的遥控信号不是油门最低,方向舵最高。
概述
闪存日志有2种分析方式:
打开MP地面站>>飞行数据>>>自动分析
加载下载下来的**.bin格式的飞行日志
注意地面站版本,版本不对或者太旧,可能会出错,请尝试更换新版本的地面站
手动分析闪存日志:
通过Mavlink下载日志,会存放在MissionPlanner/logs下级目录,根据不同的飞行器类型命名的目录。如QUADCOPTER or ROVER
日志的基本格式是:
• 行号在日志分析窗口的左侧
• 固件版本号和飞行器类型在顶部可以显示
• FMT消息显示的是每个不同消息类型内容
• PARM行显示参数类型和对应的值 (按飞控EEPROM中的顺序排列)
• 飞行数据信息,包括GPS,IMU
通过点击选定的行,你可以看到图表和飞行数据,列标题会随之更新。下一列用图表表示的列,选中后点击“Graph this data”按钮。在这个例子中,以上ATT’S Roll-In 及 Roll数据会被图表化。滑动鼠标滚轮能够放大和缩小图表。同样你也可以选中图表中某一区域放大或缩小。通过右击鼠标,并选中“Set Scale to Default”同样可以缩小图表。点击链接Here’s
有一个该特征的迷你的教程。你也可以通过先点击第一列并从下拉菜单中选中第一列来忽略第一列(飞行数据信息类型)。这尤其对于通过MP浏览不同飞行模式(详见MODE信息)十分有用。再次点击第一列“Cancel”按钮清除过滤。
LOG_BITMASK参数控制数据闪存中记录的消息类型。mp地面站和ardupilot的最新版本允许从MP的配置/调整,标准参数屏幕启用/禁用个别消息。(一般使用默认,不禁用,否则可能无法分析故障原因)
消息详解(COPTER固件专用)
RollIn 飞手想要的roll角度,单位为厘米(左侧为负,右边为正)
Roll 飞行器实际的roll角度,单位为厘米(左侧为负,右侧为正)
PitchIn 飞手想要的pitch角度,单位:厘米-度(往前为负,往后为正)
Pitch 飞行器实际的pitch角度,单位:厘米(往前为负,往后为正)
YawIn 飞手想要的偏航率,范围:-4500~4500(不是度/秒,顺时针为正)
Yaw 飞行器实际航向,单位:度,且0=北
NavYaw 飞手想要的航向,单位:度
ATT (姿态信息):
ATUN (自动调参概述):
Axis: 0 = Roll, 1 = Pitch
TuneStep 0=返回水平(测试前或测试后),1=测试(即执行抽搐测试响应),2=更新增益
RateMin 本次测试期间最低的记录率
RateMax 本测试期间最高记录率
RPGain 正在测试p值的增益值
RDGain 正在测试的速率D增益值
SPGain 正在测试的自稳p增益
ATDE (自动调参步骤及细节):
Angle 飞行器以被测试轴的厘米为单位
Rate 被测试飞行器轴的转速
CAM (触发快门时间和位置):
GPSTime gps报告时间,以毫秒为单位
Lat 加速计+gps纬度估算
Lng 加速计+gps经度估算
Alt 加速计+气压计估算高度
Roll 飞行器的roll角度(以厘米为单位)
Pitch 飞行器俯仰角(以厘米为单位)
Yaw 飞行器航向角度(以度为单位)
CMD (从地面站接收到的命令或作为任务的一部分的执行命令):
CTot 任务总命令数
CNum 在这个任务中的命令号(0总是在家,1是第一个任务)
CId mavlink 的信息id
Copt 选项参数(用于许多不同的用途)
Prm1 命令的参数(用于许多不同的用途)
Alt 指挥部的高度,以米为单位
Lat 指挥部的纬度位置
Lng 指挥部的精度位置
COMPASS (原始罗盘偏移及罗盘补偿值):
Field 描述
MagX, MagY. MagZ x,y,z轴原始磁场值
OfsX, OfsY, OfsZ 原始磁偏移(仅当compass_lenarn参数为1时才会更改)
MOfsX, MOfsY, MOfsZ ompassmot补偿 或电流
CURRENT (电池电压,电流和电路板电压信息):
FIELD DESCRIPTION
Thr 飞行员输入油门从 0 ~ 1000
ThrInt 总油门(即全部油门的总和)
Volt 电池电压伏特* 100
Curr 电流 * 100
Vcc 主板电压
CurrTot 消耗的总电流
CTUN (油门和高度信息):
FIELD DESCRIPTION
ThrIn 飞手输入的油门从 0 到1000
SonAlt 声呐测量到的高度
BarAlt 气压计测量到的高度
WPAlt 定高,悬停,返航或自动模式下的目标高度
NavThr 没用使用
AngBst 飞行器倾斜时会增加的油门大小,为0~1000
CRate 加速计与气压计估计的上升速率,单位cm/s
ThrOut 油门最终输出大小传送到电机(从0~1000)在自稳模式下相当于thrin+angbst
DCRate 飞行员想要的上升速率单位为cm/s
D32, DU32 (单数据值是带符号的32位整数或者无符号的32位整数):
FIELD DESCRIPTION
id 变量的识别号,只可能有下面两个值
7 = 内部状态的位掩码 https://github.com/ardupilot/blob/master/arducopter/arducopter.cpp#l361
9 = 简单模式的初始名称,单位cm
EKF (Extended Kalman Filter):
Log information here(Dev Wiki). Overviewhere.
EV: (状态编码):
Event No DESCRIPTION
10 已解锁
11 已锁定
15 自动驾驶(飞手将油门上升到零以上,自动驾驶仪可以自由控制油门)
16 自动起飞
18 降落完毕
25 设置家的位置(家的位置坐标已捕获)
GPS:
FIELD DESCRIPTION
Status 0 = 没有识别到 GPS, 1 = 识别到GPS 但未定位, 2 = GPS和 2D 定位成功, 3 = GPS 与 3D 定位成功
Time gps报告时间,以毫秒为单位
NSats 当前使用的卫星数量
HDop 测量gps定位精度(1.5是好的,>2.0不是很好)https://en.wikipedia.org/wiki/dilution_of_precision
Lat 根据gps的纬度
Lng 根据gps的经度
RelAlt 加速计与气压计估算高度,以米为单位
Alt gps报告的高度(飞控未使用)
SPD 水平地面速度 ,单位m/s
GCrs 航向(0=北)
IMU (加速度和陀螺仪信息):
FIELD DESCRIPTION
GyrX, GyrY, GyrZ 原始陀螺仪旋转速度。单位:度/秒
AccX, AccY, AccZ 原始加速度值 ,单位:m/s/s
Mode (飞行信息):
FIELD DESCRIPTION
Mode 飞行模式显示为字符串 (即 STABILIZE, LOITER,等)
ThrCrs 巡航油门(从 0 ~ 1000) 可以通过这个参数推测悬停需要什么油门
NTUN (导航信息):
FIELD DESCRIPTION
WPDst 下一个航点的距离(或悬停目标) 以厘米为单位,仅在Loiter, RTL, Auto模式下更新.
WPBrg 下一个航点的方位(以度为单位)
PErX 直升机的下一个航点的纬度方向的距离
PErY 直升机下一个航点的纬度方向的距离
DVelX 纬度方向所需速度(以度/秒为单位)
DVelY 经度方向所需速度(以度/秒为单位)
VelX 纬度方向的实际加速度+气压计估计速度
VelY 经度方向的实际加速度+gps估算速度
DAcX 纬度方向的所需加速度,单位cm/s/s
DAcY 经度方向的所需加速度,单位cm/s/s
DRol 所需roll角度 单位:厘/度
DPit 所需pitch角度,单位:厘/度
PM (performance monitoring):
FIELD DESCRIPTION
RenCnt DCM renormalization count - a high number may indicate problems in DCM (extremely rare)
RenBlw DCM renormalization blow-up count - how many times DCM had to completely rebuild the DCM matrix since the last PM. Normally innocuous but a number that constantly grows may be an indication that DCM is having troubles calculating the attitude (extremely rare)
FixCnt The number of GPS fixes received since the last PM message was received (it’s hard to imagine how this would be useful)
NLon Number of long running main loops (i.e. loops that take more than 5% longer than the 10ms they should)
NLoop The total number of loops since the last PM message was displayed. This allows you to calculate the percentage of slow running loops (which should never be higher than 15%). Note that the value will depend on the autopilot clock speed.
MaxT The maximum time that any loop took since the last PM message. This should be close to 10,000 but will be up to 6,000,000 during the interval where the motors are armed
PMT A number that increments each time a heart beat is received from the ground station
I2CErr The number of I2C errors since the last PM message. Any I2C errors may indicate a problem on the I2C bus which may in turn slow down the main loop and cause performance problems.
RCOUT (pwm output to individual RC outputs):
RC1, RC2, etc :
Error
DESCRIPTION
1:Main (没用过)
2:Radio(无线电) ECode 1: “Late Frame” 意味着飞控超过两秒未接收到遥控信号
3:Compass(罗盘) ECode 1: 指南针不能初始化(可能是硬件问题)ECode 0: 以上错误解决
4:Optical flow(光流) Ecode 1: 无法初始化
5:Throttle failsafe(油门安全保护) ECode 1: 油门降到 FS_THR_VALUE (失控油门触发值)以下,可能是飞控没有接收到遥控信号(油门),请检查遥控信号输入或者失控保护设置 ECode 0: 上述错误解决
6:Battery failsafe(电池低压保护) ECode 1: 电池电压低于LOW_VOLT (低压保护触发值)或电池过度放电能力超过BATT_CAPACITY
7: GPS failsafe(gps安全故障) ECode 1: gps断开锁定至少5秒钟ECode 0: gps恢复锁定
8: GCS failsafe(地面站安全保护) ECode 1: 地面站操纵杆至少五秒钟未变化ECode 0: 恢复地面站更新
9: Fence(地理围栏) ECode 1: 超过围栏限定高度 ECode 2: 超过围栏限定范围 ECode 3:同时超过围栏限定范围和高度 ECode 0: 飞行器回到限定范围内
10: Flight Mode(飞行模式) ECode 0 ~ 17: 飞行器切换到想要的模式失败: 0=Stabilize, 1=Acro, 2=AltHold, 3=Auto, 4=Guided, 5=Loiter, 6=RTL, 7=Circle, 8=Position, 9=Land, 10=OF_Loiter, 11=Drift, 13=Sport, 14=Flip, 15=AutoTune, 16=PosHold, 17=Brake
11: GPS ECode 2: GPS 故障 ECode 0: GPS 故障解除
12: Crash Check(撞击检查) ECode 1: 检测到撞击
下面列出:子系统及错误代码
1:Main(从未使用)
2:无线电(Radio)
ECode 1:“Late Frame”意思是APM的板载ppm编码器,至少2秒钟了没有更新数据。
ECode 0:意思是ppm编码器恢复数据更新,错误已解决。
3:Compass(罗盘)
ECode 1:罗盘初始化失败(很可能是硬件问题)
ECode 2:从罗盘读取数据失败(可能是硬件问题)
ECode:上述错误已解决
4:Optical flow(光流)
ECode 1:初始化失败(很可能是硬件问题)
5:油门安全故障
ECode 1:油门下降到参数FS_THR_VALUE以下,可能 数传 RX/TX失去连接
ECode 0:上述问题解决,意思是 数传 RX/TX恢复连接
6:电池安全故障
ECode 1:电池电压低于参数LOW_VOLT,或电池过度放电能力超过参数BATT_CAPACITY
7:GPS安全故障
ECode 1:GPS断开锁定至少5秒钟
ECode 0:GPS恢复锁定
8:GCS(地面站)安全故障
ECode 1:地面站的操纵杆,至少5秒钟未变化。
ECode 0:恢复地面站的更新
9:围栏
ECode 1:超过电子围栏限定高度
ECode 2:超过电子围栏限定范围
ECode 3:超过限定海拔高度和围栏范围
ECode 1:飞行器回到限定范围内
10:飞行模式
ECode 0 – 10:飞行器不能进入想要的飞行模式
(0 = 自稳,1 = 特技,2 = 定高,3 = 自动,4 = 导航,5 = 悬停,6 = 返航,7 = 盘旋,8 = 定位,9 = 着陆,10 = 光流—悬停)
11:GPS
ECode 2:GPS故障
ECode 0:GPS已故障清除
12:撞击检查
ECode 1:检测到撞击
概述:
在飞行过程中如果地面站GCS与飞控板断开了(超过数传距离或者地面站死机故障),可以根据你的设置进行 RTL返航或者继续完成飞行任务
丢失地面站将会发生以下操作:
• 飞行器锁定:如果你在增稳模式或者特技模式,而且油门是最低值
• RTL:如果你的GPS已经锁定而且离home点距离超过2米
• 降落:如果没有GPS锁定或者离家距离低于2米
• 继续完成飞行任务:如果你是在自动模式和设置了GCS失控保护为选项2(Enabled_continue_in_auto_mode)
如果触发了GCS丢失保护后,GCS又重新连接上了,这不会清除故障保护,还需继续失控后的飞行模式(如RTL),如果你想夺回飞机控制权,你需要手动认为切换到你想要的模式
设置GCS丢失保护:
在地面站–配置调试–全部参数 列表 FS_GCS_ENABLE参数
• 0是禁用GCS保护
• 1 丢失GCS后,启动RTL返航模式
• 2 当前模式为AUTO,会继续完成飞行任务计划,否则执行RTL返航模式
概述:
RC接收机油门失控原理:
一般遥控器接收机都有油门失控功能,就是当接收机接收不发发射机过来的信号时,油门通道(第三通道)会自动切换到一个低于1000 PWM的值(例如950)。飞控板读取到第三通道为950值的时候,就认为RC遥控器已经失控,从而切换对应的保护模式:如 RTL返回起飞点或者AUTO自动继续飞行
如何会触发RC 油门失控保护以及会发生什么:
如果正确设置了油门失控保护,它的启动条件是:
概述:
电池故障保护,可以设置一个阈值,电压或者保留电量值,让飞控自动执行RTL或者降落操作
使用电池故障保护,必须使用一个 电压电流传感器 才能设置和起效。
电池故障保护启动条件:
如果正确设置了电池故障保护,启动条件是:
• 电压低于设置值,超过10秒
• 剩余容量低于设置保留值
如果保护被触发,将会发生什么:
• 什么都不会发生:如果飞行器没有解锁
• 自动上锁:如果在增稳模式或者特技模式,油门为最低值
• 返航——如果在自动模式,已获得GPS锁定,并且离“家”的位置2米以上
• 降落——在所有其他情况下
设置电池失效保护:
• 在地面站-初始设置-必要硬件-故障保护 FailSafe
• 设置一个电池电压阈值(根据电池电压进行设置,例如3S可以设置10.5-10.8)
• 保留容量mah 不建议使用,这可能是不准确的,请设置0,如果不开启。
• 设置切换的模式,如果RTL返航 或者 LAND降落
ËKF / DCM检查故障安全
直升机3.2增加了一个DCM航向检查和一个EKF(检查,以捕捉由于航向估计值不佳而造成的飞行)。
注意
从直升机3.3开始,EKF故障安全取代了GPS故障安全。
什么时候会触发?
在所有主板上默认运行DCM检查,并在GPS隐含航向和DCM的估计航向至少60度(可配置DCM_CHECK_THRESH参数)达一整秒时触发。
EKF检查仅在Pixhawk/pixhack上运行,并且仅在EKF被用作姿态和位置估计的主要来源(即AHRS_EKF_USE = 1)时才运行。当EKF的指南针和速度“方差”高于0.8(可用EKF_CHECK_THRESH参数配置)一秒钟时,将触发此检查。随着估计变得不可信,这个“差异”会增加。 0 =非常值得信赖,> 1.0 =非常不值得信任。如果两个差异均超过EKF_CHECK_THRESH参数(默认值为0.8),EKF / Inav故障安全触发器。
当故障安全触发器会发生什么?
Pixhawk的LED将闪烁红黄色,声音警报将会响起。
如果遥测附带“EKF方差”将出现在HUD上。
EKF / DCM错误将被写入到数据闪存日志中
如果在不需要GPS的飞行模式下飞行,则无法进一步发生,但是在故障清除之前,您将无法切换到自动驾驶飞行模式(Loiter,PosHold,RTL,Guided,Auto)。
如果在需要GPS(Loiter,PosHold,RTL,Guided,Auto)的模式下飞行,车辆将切换到“先导控制”LAND。这意味着飞行员可以控制侧倾角和俯仰角,但是飞行器会下降,降落,最后解除电机的控制。飞行员可以像总是切换到手动飞行模式,包括稳定或AltHold将飞行器控制返航。
调整灵敏度或禁用检查
DCM和EKF检查和故障安全可以通过任务计划程序的配置/调整>>完整参数列表将DCM_CHECK_THRESH或EKF_CHECK_THRESH设置为“0”来禁用。或者,可以通过将此参数从0.8增加到0.9或1.0来使其变得不那么敏感。增加这个参数的值的缺点是,在一个不良的指南针或全球定位系统导致飞行故障时,飞行器将自动切换到降落模式之前仍然飞行。
在APM:COPTER 3.0以上的版本,新加入了一个 简单的电子围栏保护系统,以HOME点为中心的简单“锡罐”形状电子围栏,可以防止你的飞行器超过设定半径和高度,从而触发对应保护模式,比如RTL回家,或者LAND降落。可以通过地面站去设置。
类型:
Cricle:半径范围限制
Altitude:高度限制
Altitude OR Cricle :高度和距离限制
动作:
Report only:
当飞行器超过了设定的电子围栏边界范围,在地面站会提示超过围栏范围
适合使用手机APP软件的玩家
RTL OR LAND:
当飞行器超过了设定的电子围栏边界范围,飞行器将执行RTL或者LAND操作
If the vehicle strays outside these borders it will switch into RTL or LAND. At the moment the fence is breached a backup fence is erected 20m further out (or up). If the copter breaches this backup fence (for example if the the vehicle is not set up correctly or the operator takes control but is unable to bring the copter back towards home) the copter will be switched into RTL again (and another backup fence an additional 20m further out will be created).
可以通过以下方式设置 简单电子围栏:
• 将PIX飞控使用USB或者数传连接到Mission Planner
• 配置/调试>>>地理围栏
• 勾上启用 框
• 类型设置你想要的限制类型:Cricle半径限制或者Altitude 高度限制
• 动作:超过限制执行的操作
• max alt 最高高度限制:设置最大高度
• 最大半径:最大的半径距离
• 返航最低高度:根据飞行环境设置一个理想的返航高度
通过通道7或者通道8开启电子围栏功能:
如果你想通过通道开关来开启和关闭电子围栏,可以这样操作:(新手不建议,容易混乱出错)
• 提前已经设置好并校准好了一个CH7或者CH8通道开关,在你的遥控器上面
• 转到Mission Planner>>配置/调试>>扩展调参
• 设置一个CH7或者CH8,选中Fence功能 (i.e. PWM值大于1800为开启,低于1800为关闭)
警告:
• 最小建议围栏半径为30米
• 围栏要求GPS运行良好,因此在启用围栏时不要禁用GPS布防检查, 也不要使EKF失效保护,相反,如果禁用这些检查,请禁用 电子围栏。
• 为了获得最佳效果,请确认RTL是能正常使用的。
• 启用电子围栏,解锁之前,飞控板将检查GPS是否锁定,否则无法解锁,并报错。
• 如果未启用GPS故障保护,并且启用了电子围栏,并且在飞行时GPS信号丢失或者GPS故障,则将自动禁用电子围栏。
• 如果启用GPS故障安全并且启用Fence并且飞行时您失去GPS锁定,则飞行器将切换到LAND 无论飞行模式如何,都会发生这种情况。 如果不需要LAND序列,则导频可以通过移动飞行模式开关重新进行控制。
• 备份栅栏创建20米从上一个破裂的栅栏不是20米外的车辆的位置。 这意味着如果您选择覆盖围栏,您可能有不到20米重新获得车辆控制,在护栏再次将飞行器切换到RTL(或LAND)之前。 如果你想覆盖围栏,你应该准备好两次切换飞行模式,或者设置启用/禁用围栏开关。
多边形围栏
概述
直升机3.4(及更高版本)包括支持多达84点的多边形围栏。 这个围栏的目的是试图通过启动一个RTL来阻止你的飞行器飞出多边形内的区域,如果在Loiter模式下飞行,飞行器通常会在突破围栏之前停下来。 这个功能是简单的圆形围栏的扩展。
在mission plnner中启用围栏
• 将您的飞行控制器连接到Mission Planner
• 进入配置/调整| 地理围栏屏幕
• 单击“启用”并将类型设置为“polygon"选项
• 多边形定义完成后,您必须单击鼠标右键并单击“极限范围”>>“设置返回位置”。 这个位置实际上并不是由直升机使用的,但是它必须被设置,因为和Plane一样使用了相同的底层库。
使用鼠标右键单击并点击“极限范围”上传多边形围栏到飞行器>>“上传”
目前软件已经内置了 碰撞/撞击 检测功能,在飞行器可能失控并撞击地面的情况下,该功能会自动将电机进行锁定,这减少了飞行器的损坏,并且降低对附近人员及财产二次伤害的可能性。
碰撞检查何时会将电机锁定:
当以下所有情况都超过2秒时:
飞行器经常倾斜角超过30度误差维持1秒以上的情景,建议关闭碰撞检查,以免出现电机被自动停止导致的炸鸡。
如何关闭碰撞检查:
在地面站>>配置调试>>全部参数列表
找到:FS_CRASH_CHECK 改为0禁用
本章节目的是教你使用日志诊断分析常见的5种直接影响飞行器效果的问题
机械故障:
常见的机械硬件故障包括电机、电调失效(或者不同步)、螺旋桨打滑或者脱落等
这些故障在日志中的表现是,期望的(vehicle’s)横滚与俯仰轴与实际的横滚与俯仰轴突然的发散
这种差异可以对比ATT消息的Roll-in vs Roll 和Pitch-in 和Pitch以及NavYaw和Yaw,很容易看的出来。
在上图示例中,飞行器的实际横滚(ROLL)与期望横滚值(ROLL IN)刚开始的时候比较接近,但随后突然发散。飞控板希望控制ROLL IN为水平,实际ROLL值已经无法控制,这一般是一个硬件故障(ESC或者马达、螺旋桨失控),这与软件故障非常不同,如果是软件故障,比如参数不适合导致的严重震荡,ROLL IN和实际的ROLL应该会接近。
振动问题:
因为飞行器的姿态和高度估算严重依赖着加速计,如果严重的震动,会导致定高不稳或者定点悬停飘逸等问题,严重的还会导致高度上下串。
通过闪存日志分析IMU消息中的AccX、AccY和AccZ值,既可了解飞行器震动是否达标或者超标
理想震动范围应该是AccX、AccY 在-3~+3 M/S/S的范围,而AccZ理想值是-15 ~ -5M/S/S
查看振动值,应该从一段平稳飞行的日志中提取分析,因为加速计数值会随着飞行器的上下移动而瞬间改变
振动看起来就好像草坪的草一样。要以一个持续的"草"波形去判断是否在合理范围内
电子指南针(电子罗盘/compass)干扰:
如果电子罗盘被干扰,会直接导致飞行器在依赖电子罗盘的飞行模式(AUTO/LOITER/RTL等)出现自旋、刷马桶效应甚至往一个错误的方向飞行
干扰电子罗盘被干扰的因素很多,比如飞行器内部的:配电板、电调、电机、电源走线、电池等
GPS故障
在自动模式下(AUTO\LOITER\RTL)GPS异常会导致突然飞行一个错误的位置或者来回飘逸
GPS异常一般包括:丢星或者卫星数量突然减少
在闪存日志中,可以很直观的看见卫星数量NSats的减少和HDOP 精度精度 变大
NSats 卫星数量 越多越准确
HDOP 水平(平面)位置精度因子 越小越准确
电源故障
闪存日志中体现为日志结束时直升机还在半空中。(导航高度与气压计测量高度等高度指远高于零)。
图像曲线:
• Dataflash(闪存)日志CTUN消息的气压Alt
• Dataflash日志的GPS信息的RelAlt(结合加速度计+ 气压计高度估计)
• Tlog VFR_HUD alt(结合加速度计+气压高度 估计)
• Tlog的GLOBAL_POSITION relative_alt电路板电压的变化也可能是电源问题的征兆。 主板电压在4.7~5.3v且跳动小于0.15v是正常的。如果超出这个范围,可能是与飞控共享电源的设备导致电源中的异常,从而导致电压拉低或其他奇怪的行为。 可以使用以下方式绘制电路板电压:
• Dataflash CURRENT消息的VCC
• Tlog HWSTATUS的Vcc
其他意想不到的错误及故障保护
当飞行器出现了意想不到的错误,可能会触发对应的故障保护
ERR(错误信息代号)
下面列出:子系统及错误代码
1:Main(从未使用)
2:无线电(Radio)
ECode 1:“Late Frame”意思是APM的板载ppm编码器,至少2秒钟了没有更新数据。
ECode 0:意思是ppm编码器恢复数据更新,错误已解决。
3:Compass(罗盘)
ECode 1:罗盘初始化失败(很可能是硬件问题)
ECode 2:从罗盘读取数据失败(可能是硬件问题)
ECode:上述错误已解决
4:Optical flow(光流)
ECode 1:初始化失败(很可能是硬件问题)
5:油门安全故障
ECode 1:油门下降到参数FS_THR_VALUE以下,可能 数传 RX/TX失去连接
ECode 0:上述问题解决,意思是 数传 RX/TX恢复连接
6:电池安全故障
ECode 1:电池电压低于参数LOW_VOLT,或电池过度放电能力超过参数BATT_CAPACITY
7:GPS安全故障
ECode 1:GPS断开锁定至少5秒钟
ECode 0:GPS恢复锁定
8:GCS(地面站)安全故障
ECode 1:地面站的操纵杆,至少5秒钟未变化。
ECode 0:恢复地面站的更新
9:围栏
ECode 1:超过限定电子围栏高度
ECode 2:超过限定电子围栏范围
ECode 3:超过限定海拔高度和围栏范围
ECode 1:飞行器回到限定范围内
10:飞行模式
ECode 0 – 10:飞行器不能进入想要的飞行模式
(0 = 自稳,1 = 特技,2 = 定高,3 = 自动,4 = 导航,5 = 悬停,6 = 返航,7 = 盘旋,8 = 定位,9 = 着陆,10 = 光流—悬停)
11:GPS
ECode 2:GPS故障
ECode 0:GPS已故障清除
12:撞击检查
ECode 1:检测到撞击
地面站遥测日志(也称为“tlogs”),当你的飞行器链接上地面站的时候,由地面站自动记录的日志
本章节主要介绍如何配置和访问分析遥测日志。
Tlog是在APM / PX4和地面站之间发送的MAVLink遥测消息的记录,并且在您按mp地面站上的连接按钮的时刻自动创建。 格式为YYYY-MM-DD hh-mm-ss.tlog,存储在mp安装文件夹中的“日志”子文件夹中,可以在mp地面站选[配置/调试]界面 [planner]中选择存储位置。
除了“.tlog”文件之外,还创建了“.rlog”文件。 这些包含所有.tlog数据以及来自任务规划者的附加调试输出。 但不能被解析或播放,所以应该被忽略。
设置遥测速率
数据从APM / PX发送到地面站的期望速率可以通过mp地面站>配置/调试>planner界面下的遥测速率下拉列表进行控制。 因为通过遥测链路发送的所有数据也记录在tlog中,所以这也控制了保存到tlog的数据速率。
需要注意的是,由于CPU资源的限制,尤其对于直升机,发送和保存的数据的实际速率可能会低于所请求的速率。
播放任务
如果您正在使用无线遥测并通过任务规划人员连接到APM,您的飞行数据将自动记录。 您可以通过执行以下操作来播放这些日志:
• 打开mp的飞行数据屏幕
• 单击遥测日志选项卡
• 按“加载日志”,找到飞行的tlog文件
并打开
• 按“play”
您还可以使用滑动进度条跳转到日志中的任意时间点,并使用预定义的“速度”按钮控制播放速度。
当日志重播时,HUD界面将移动,并且地图上的飞行器位置将按照飞行中的时间进行更新。 通过“状态”选项卡可以看到单个数据值,甚至可以通过点击地图下方的“调试”复选框,将它们显示在图形中,然后双击数据图例,打开一个框,从中可以精确地选择哪个 数据字段如下图所示。 这将显示记录的数据随着飞行任务的进行而改变。
您可以通过以下操作创建KMZ文件:
• 打开mp的飞行数据屏幕
• 单击遥测日志选项卡
• 按“Tlog> Kml或Graph”按钮
• 按“创建KML + GPX”按钮
• 选择飞行tlog
一个.kmz和.kml文件将沿着原始的.tlog一边创建,这可以在google地球上打开,交互地查看3D飞行路径。 您可以打开Google Earth中的kmz文件来查看航班或路径。 只需双击该文件或拖动它并放入Google Earth。
• 飞行期间使用的不同飞行模式将显示为不同的彩色轨迹。 您可以更改有关飞行路径显示方式的详细信息,包括其颜色以及路径是否延伸到地面:
在左侧的“位置”窗格中查找日志文件的名称。 它应该出现在“临时位置”文件夹中。
右键单击单个路径,然后选择“属性”以打开“编辑路径”窗口。
颜色可以在“样式,颜色”选项卡上更改通过取消检查(检查)“扩展到地面的路径”,可以在“高度”选项卡上删除(添加)路径下的区域
提取参数和Waypoint
您可以按照与创建KML文件相同的步骤从tlog中提取参数和路点,但最后一步选择“Extract Params”或“Extract WPs”。
Extract Params将导致在.log文件旁创建一个.param文件。 此文件是分隔符,包含参数的完整列表(与eeprom中显示的顺序相同)及其在飞行过程中的值。 这可以在excel或文本编辑器中打开。
提取WP将创建一个或多个.txt文件,其中包含上传到APM / PX4的任务。 可以通过切换到飞行计划屏幕,右键单击地图并选择“文件加载/保存”,“加载WP文件”,在任务计划器中打开这些文件
从飞行中绘制数据
可以通过执行以下操作来绘制飞行中的数据:
• 打开任务计划员的飞行数据屏幕
• 单击遥测日志选项卡
• 按“Tlog> Kml或Graph”按钮
• 按““Graph Log””按钮
• 选择飞行tlog
当出现“Graph This”屏幕时,使用左或右鼠标按钮单击要显示的项目旁边的复选框。这些项目分组为“RC_CHANNELS”和“RAW_IMU”等类别 ,可打开对应的分组找到想要的栏目。
如果您使用鼠标左键,该项目的比例尺将显示在图表的左侧。 如果您使用鼠标右键,它将显示在右侧
多次点击复选框,循环显示所有可能的颜色
使用鼠标的中间轮更改图形的缩放,通过按住鼠标左键选择图形区域,或者通过鼠标右键单击图形并选择“将缩放到默认值”