写在前面的话:有一阵子没有看px4的代码了,由于项目和论文的需要,又要接触这个。其中又遇到一些新的问题,找到了一些新的解决方法,故在此记录一下(总是在几种飞控代码之间跳来跳去,没有认真研究一个,有点遗憾)
PX4的代码调试还没有找到什么好的方法,官方很多地方也不建议修改,用来做导航是比较舒服的。
- 坑1,上电连上地面站QGC后,提示关键错误, " wp index out of bounds", 采用mavlink_log_info的方式打印地面站输出看到,其对应消息在mavlink_mission.cpp中,对应变量seq变量在上电后处置为7000+(一个固定值),大于count导致,字面意思是航点索引越界,但是并没有用到航点信息。最初,考虑屏蔽该warning ,或者在上电之后某处加上判断,if ( seq>1000) , seq = 0. 最后,更换SD卡之后,问题消失。
- 对应固件版本1.10.1,遥控器无法解锁,电调声音异常,经多次电调校准后仍然是一个效果。通过上古方法校准电调通过(确保电调没有问题,电机没有问题),无奈之下,通过示波器查看飞控的PWM输出波形,发现其输出频率在70多us,该问题可以通过在QGC中PWM对应的参数进行修改即可。
- 在gazebo仿真中如果出现preflight failed:compass #0 uncalibrated. 解决方法是,先对固件进行make clean , 然后删除~/.ros/eeprom/parameters,即可.
- 出