使用PX4FLOW的pixhawk悬停模式疑难杂症(二)BAD OPTFLOW HEALTH

在调试PX4FLOW的pixhawk悬停模式时,遇到"BAD OPTFLOW HEALTH"问题,需要额外测距模块配合。HC-SR04未能成功,后选用Benewake TFmini解决问题,通过官方教程完成配置,实现sonarrange和opt_m_x、y正常。固件更新至4.0.7,解决参数缺失问题。

(接上篇 使用PX4FLOW的pixhawk悬停模式疑难杂症(一)驱动安装以及固件烧写)

        3、博主遇到的第三个问题是“BAD OPTFLOW HEALTH”。这个问题也是我在调试过程中遇到的最难的问题。

         官网的教程:PX4FLOW Optical Flow Camera Board — Copter documentation(该链接内容以下称作官网教程一)、Optical Flow Sensor Testing and Setup — Copter documentation(该链接内容以下称作官网教程二)。

        按照官网教程一,很容易实现参数的配置,但进行到下一步,即官网教程二时,博主就遇到了“BAD OPTFLOW HEALTH”的问题,且参数opt_m_x和opt_m_y始终为0,并不是像官网教程二中所说的“non-zero opt_m_x, opt_m_y and an opt_qua values”。这个问题博主啃了很久,最终找到了解决的办法。

        首先,要注意一个细节。虽然PX4FLOW模块上长着一个声呐测距模块,但是英语稍微好一点的朋友可以读懂,PX4FLOW根本就没有使用这个模块,然而依据光流的原理,需要有一个测距模块作辅助测量,所以没有测距,无人机是无法实现悬停的。而且官网教程一这个“Warning”中也写道,让你去买一个额外的测距。所以当你看到有些博客说他自己没有配测距,光靠PX4FLOW最后就实现悬停了,博主认为是很不可信的。

         那么如何选择额外的测距模块呢,请参考此链接:Rangefinders (landing page) — Copter documentation

        在此博主和大家分享在此处走的一个小弯路。这个链接里面列出了十几种测距模块,我选择了其中几个在商店中搜索,发现价格都不菲。碰巧的是当时博主手头正好有一个HC-SR04模块,是博主之前做别的科创比赛用剩下的,就按照这个链接HC-SR04 Sonar Rangefinder — Copter documentation里的指示去配置,但最后没有成功,sonarrange没有数。

         但是这个时候博主有了一个新发现,“BAD OPTFLOW HEALTH”没了! opt_m_x和opt_m_y也有数了!当时博主十分惊喜,因为这证实了光流要有数据必须配额外的测距模块,说明方向对了。然而问题并没有完全解决,因为测距模块没有数,然后博主就到ardupilot论坛里寻求帮助。(在此向大家推荐这个论坛:ArduPilot Discourse。涉及到与ardupilot有关的很专业的问题,只上百度搜是搜不到那么深的,论坛里或许就会有人遇到和你一样的问题,也会有技术大牛的解答)博主在论坛的众多帖子里获得了启发,意思大概是,这个模块太老了,性能也不好,应当换一个。最后博主选择了性价比比较高的Benewake TFmini,价格200多RMB。

         按照这个教程:Benewake TFmini / TFmini Plus lidar — Copter documentation。博主成功配置了该测距模块,最终成功使sonarrange和opt_m_x、y都有了数,于是,就可以进行到官网教程二中的进一步调试了。

        在此,博主还想提一个点。其实官网教程一中也提到了unhealthy的问题:

        在此提出的方法是修改BRD_BOOT_DELAY,然后可能在参数表里找不到这个参数。这个是由于固件版本的问题,版本较低的固件,像3.4.X,就没有这个参数,博主本来也用的这个固件,后来索性换了固件,直接烧到目前最新版的4.0.7,查找参数就有了。不过博主觉得这个参数修改前后没啥区别,最主要的问题还是要有测距模块。

        如果此时,还是会有“BAD OPTFLOW HEALTH” 的报错,可能还有一个原因,请听下篇分解。

 

mini四轴飞行器除了在室外各种超炫动作,但在室内若想不碰壁,就要求mini四轴飞行器具有悬停功能,四轴要有定高功能?小四轴不像大四轴有完善的GPS模块,而且小四轴的重量也很难加装GPS。这个时候选择智能光学流动传感器PX4Flow就是比较好的方案了。 PX4Flow是一款智能光学流动传感器。传感器拥有原生 752×480 像素分辨率,计算光学流的过程中采用了4倍分级和剪裁算法,计算速度达到250Hz(白天,室外),具备非常高的感光度。与其他滑鼠传感器不同,它可以以120Hz(黑暗,室内)的计算速度在室内或者室外暗光环境下工作,而无需照明LED。你也可以对它重新编程,用于执行其他基础的,高效率的低等级机器视觉任务。 PX4Flow主要特征: MT9V034机器视觉CMOS传感器,全局快门 4×4分级图像算法,光流运算速度从120Hz(室内)至250Hz(室外) 高感光度,24×24 μm高像素 板载16位精度陀螺,最大感应角速率2000°/s,最大数据更新速度780 Hz,默认使用高精度模式时最大角速率500°/s 板载输入输出一体化超声波传感器 USB bootloader USB数据波特率最高921600(包含地面站软件QGroundControl所使用的摄像机实时视角) USB供电模式 电路板开孔适合MatrixVision Bluefox MV(摄像机中心作为基准) 电路城语:此资料为卖家免费分享,不提供技术支持,请大家使用前验证资料的正确性!如涉及版权问题,请联系管理员删除! 附件包含以下资料:
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值