博客
关于我
px4调试bug--添加mavlink_log_info信息
阅读量:387 次
发布时间:2019-03-05

本文共 726 字,大约阅读时间需要 2 分钟。

PX4代码调试确实是一个需要耐心和细致的过程,最近在项目和研究中又一次接触这段代码,遇到了不少新问题,也积累了一些解决方案,这次就记录下来。

在调试PX4代码时,官方建议尽量避免随意修改代码,尤其是用于导航的部分。然而,调试过程中还是遇到了一些需要解决的问题。

问题一:启动时提示"wp index out of bounds"错误

在上电并连接地面站QGC时,出现"wp index out of bounds"的关键错误提示。通过mavlink_log_info的方式查看地面站输出,发现这条警告信息与mavlink_mission.cpp中与序列号相关的代码有关。具体来说,序列号seq在上电后被初始化为一个较大的固定值,超过了实际航点索引的最大值,导致索引越界。

解决方法是通过屏蔽该警告信息,或者在启动时检查seq是否超过某个阈值,若超过则重置seq为0。最终通过更换SD卡解决了这个问题。

问题二:遥控器无法解锁及电调异常

在使用固件版本1.10.1时,遥控器无法解锁,电调声音异常。多次尝试电调校准后问题依旧存在。经过进一步排查,使用示波器检查发现飞控的PWM输出频率异常,约为70多Hz。

解决方法是通过QGC软件调整PWM对应的参数,确保输出频率符合正常范围。

问题三:Gazebo仿真中的预飞行失败

在Gazebo仿真中,出现"preflight failed:compass #0 uncalibrated"的错误提示。解决方法是先对固件进行make clean,然后清除~/.ros/eeprom/parameters文件夹。

其他问题

目前尚未解决一个问题:在某些场景中,飞行器无法正常连接WPA热点,需要进一步调试网络配置。

转载地址:http://pglwz.baihongyu.com/

你可能感兴趣的文章
线程总结
查看>>
【ES9(2018)】Promise.prototype.finally()
查看>>
<hdu - 1002> A + B Problem II
查看>>
Python识别璇玑图中诗的数量
查看>>
Django ORM操作
查看>>
剑指offer[9]——变态跳台阶
查看>>
剑指offer[32]——把数组排成最小的数
查看>>
谈谈关于springboot 添加依赖的那些事
查看>>
RestTemplate post请求
查看>>
.NET之生成数据库全流程
查看>>
CF1466-D. 13th Labour of Heracles
查看>>
CF1475-D. Cleaning the Phone
查看>>
java基础-java与c#接口不同点
查看>>
Java并发工具篇
查看>>
第三方支付(支付宝)
查看>>
nginx基本配置
查看>>
京喜小程序体验评分优化实践
查看>>
ASP.NET的运行原理与运行机制
查看>>
DIV+CSS兼容IE6、IE7、Firefox方法探究
查看>>
加速IE的Javascript的方法
查看>>