PX4固定翼调试校准流程及实验相关问题记录分析

2019-04-13 11:25发布

pixhawk固定翼调试流程

对于px4固件,其对应选择的一般是qgroundcontrol地面站(APM一般使用Mission Planner)。本次调试的固件版本是1.6.5dev(最新的固件并不稳定,可能会有bug)。基本的调试流程如下: 地面站调试界面
  1. 刷固件,我们刷的是1.6.5dev版本
    这里写图片描述
  2. 选择Airframe,这里我们选择标准的固定翼
    这里写图片描述
  3. 遥控器的校准,这里我们选择的是model1(日本手(右手油门)——左手升降舵和方向舵,右手油门和副翼)
    这里写图片描述
  4. 传感器校准,这里需要注意的是固定翼的空速计,可以在Parameters中的Circuit Breaker中选择禁用相关的空速计和安全开关等
    sensor校准
    这里写图片描述
    选择禁用
  5. 遥控器模式设置,这里我们设置了Manual、Stabilized和Mission三种模式
    这里写图片描述
  6. 电调的校准,电调校准很重要,不做电调行程校准,飞机无法起飞
    这里写图片描述
这里补充一下遥控器和接收机的对频,在遥控器的LINK——SYSTEM——LINK,在LINK在闪烁的时候给接收机上电,接受的红灯变成绿 {MOD},对频成功。
这里写图片描述 相关链接:
px4固件和地面站相关资料

调试过程中的问题记录

本次调试的问题多半为硬件问题,首先遇到的是1,2,3,4通道没有输出(顺便说一下,飞控的主通道和舵机的接法是:针脚1=副翼,针脚2=升降舵,针脚3=油门,针脚4=方向舵)。测试接收机,发现接收机没有直接的输出,更换接收机后,发现依然不行,且指示灯出现时亮时不亮的情况,经过测试,是电源模块出了问题。在解决电源模块问题后,发现电机不转,但副翼可以动,将电源直接连电调,发现电调有问题(这里需要说明一下,如果电机出现慢慢的滴滴声,说明是没有PWM信号,但是有电源输入,如果出现很慢慢的滴滴声,则说明有PWM,但是没有电源输入)。在解决所有硬件问题后,在第二天的使用中,发现调试好的固件又出问题了,经过重重排除,最终发现是PX4固件不稳定的问题,于是没有刷最新的固件,而是刷了之前下好的1.6.5dev版本的固件,所有问题终于全部解决。这里也需要说明一下PX4指示灯的各种含义:
指示灯含义

飞行试验相关问题记录

本次进行了固定翼的Manual、Stabilized、Mission三种模式的测试。其中Mission模式测试了航点飞行。主要出现以下问题:
  1. 飞机副翼、方向、升降舵面偏角过大,导致在操纵方向舵与升降舵时,多次出现舵面失速导致飞机姿态发生剧烈变化。对于这个问题,一个原因是飞机本身问题,舵面过大,不易于操作,另外建议在地面站Manual模式下设置各个舵面的最值,使舵面偏转角度正负不超过30°
  2. 飞机进入自稳模式后,机动性能很差,在关键时刻无法按飞行员的意识及时将飞机改出危险的境地。对于这个问题,需要调整飞控在增稳模式下对飞机姿态的限制,增大飞机可使用俯仰角与滚转角,提高其在增稳模式下的机动性,为了更好的控制,需要对PID值进行调整
  3. 在进行Mission模式时,只能切一次Mission模式,如果后面需要再进行航迹飞行,只能重新load航点信息,这个和旧的代码不一样,旧的代码可以进行多次的Mission模式切换。这个在操作过程中需要格外注意,不可胡乱切Mission模式,这样很可能造成飞机乱飞的情况。
  4. 在测试过程中,发现飞机偏离航迹很远,对于这个问题,经过查资料和询问,很可能是航点设置有问题,航点之间的距离一般有100m左右,每个点的loiter radius为50m,在航点50m之类,飞机认为是到达航点,在代码中会有一个accept radius参数。在测试中,发现高度误差较大,会有1m左右,对于这个定位不准的问题,我们建议使用差分GPS来获得更精确的定位,这样也有利于航迹规划。

后续的研究的一些个人看法

对于还未做的自动起飞和降落问题,经查找,多半是关于APM的自动起飞降落的参数设置:APM固定翼自动起飞,对于这个问题,经过在一些飞控群里的交流,现在可以得到的资料如下:
  1. 对于takeoff点和home点,一般设置二者的距离为100m。takeoff点的角度设置在10~15度。对于降落过程中,需要设置拉飘的角度(拉飘:一般的降落时直接俯冲,但达到某个高度的时候,需要拉升降舵,使飞机变成抬头的姿态来增大阻力,从而降低飞机速度,安全降落)。这个角度在10度左右。
    这里写图片描述
  2. 以下是一些收集到的关于自动起飞和降落的参数设置资料:
    自动起飞参数设置
    对于上面的RWTO_ATRSPD_SCL参数,原来的是130%,这里之所以是30%,是因为作者本人对PX4原生固件代码做了一些修改。
    这里写图片描述
    以上是自动降落的参数设置,其中FW_L1_DAMPING和FW_L1_PRERIOD是L1算法的两个参数,和航点关系很大,可以作进一步研究。
  3. 对于后续的研究代码建议是,主要研究以下代码:
    src/Firmware/src/modules/navigator/mission.cpp
    src/Firmware/src/modules/dataman/dataman.c
    src/Firmware/mavlink/include/mavlink/v2.0/common/mavlink_msg_mission_item.h
    src/Firmware/mavlink/include/mavlink/v2.0/common/mavlink_msg_mission_item_int.h
    src/Firmware/src/lib/runway_takeoff/RunwayTakeoff.cpp