无人机调试,飞控硬件定制、固件修改,日志分析,请QQ联系:3500985284
一、添加测试程序
由于这里添加了新的硬件外设,无法直接进行软件仿真,所以我们需要先编写一些代码,模拟出OpenMV发送数据到飞控,然后才能进行软件仿真。当我们通过软件仿真把OpenMV引导数据引导无人机飞行的顶层逻辑跑通之后,再进行实际飞行测试,这样能尽量较少在外场Debug的工作量。
二、在引导模式下飞行
添加顶层逻辑代码,在Guided模式下,如果OpenMV有引导数据过来,就将目标航点设置为识别点,从而飞机将自动飞向目标点。
三、进行模拟飞行
编译——模拟——Debug——编译——模拟——……测试通过。
四、删除测试程序,进行实物飞行
如下图所示,在“ardupilot/ArduCopter/ArduCopter.cpp”文件中,删除红框里的代码(注意有两个红框),就删掉了测试程序,下一步可以进行实物飞行测试。
在实物测试中如果遇到问题,请按照本文下方“第六部分 疑难解答”里的步骤检查问题所在。
五、应用展望
通过测试发现,OpenMV的性能基本满足大学生电子设计竞赛级别的应用需求,但是对于对于更加复杂的应用来讲,OpenMV的性能就略显不足了,后期我们的课程将会添加使用“NVIDIA Xavier NX”来实现更加复杂的AI技术来引导无人机飞行的例程,敬请期待!
但是,“技术实现”不同于单纯的“科学研究”,它是一个不断权衡利