openmv集成应用_使用OpenMV引导无人机飞行
無人機調試,飛控硬件定制、固件修改,日志分析,請QQ聯系:3500985284
一、添加測試程序
由于這里添加了新的硬件外設,無法直接進行軟件仿真,所以我們需要先編寫一些代碼,模擬出OpenMV發送數據到飛控,然后才能進行軟件仿真。當我們通過軟件仿真把OpenMV引導數據引導無人機飛行的頂層邏輯跑通之后,再進行實際飛行測試,這樣能盡量較少在外場Debug的工作量。
二、在引導模式下飛行
添加頂層邏輯代碼,在Guided模式下,如果OpenMV有引導數據過來,就將目標航點設置為識別點,從而飛機將自動飛向目標點。
三、進行模擬飛行
編譯——模擬——Debug——編譯——模擬——……測試通過。
四、刪除測試程序,進行實物飛行
如下圖所示,在“ardupilot/ArduCopter/ArduCopter.cpp”文件中,刪除紅框里的代碼(注意有兩個紅框),就刪掉了測試程序,下一步可以進行實物飛行測試。
在實物測試中如果遇到問題,請按照本文下方“第六部分 疑難解答”里的步驟檢查問題所在。
五、應用展望
通過測試發現,OpenMV的性能基本滿足大學生電子設計競賽級別的應用需求,但是對于對于更加復雜的應用來講,OpenMV的性能就略顯不足了,后期我們的課程將會添加使用“NVIDIA Xavier NX”來實現更加復雜的AI技術來引導無人機飛行的例程,敬請期待!
但是,“技術實現”不同于單純的“科學研究”,它是一個不斷權衡利弊、不斷折中的過程。OpenMV在易用性、低功耗、體積、重量、成本方面,比“NVIDIA Xavier NX”要強很多,因此將OpenMV集成到無人機上,并不代表者“低端”,一切都需要從實際需求角度出發來進行選擇。
六、疑難解答
本節的例程雖然代碼量不大,但是由于牽涉到兩個硬件設備的聯調,因此請大家不要指望能非常順利地一遍走通所有步驟,遇到問題的時候,請按照如下步驟進行檢測:
1、將OpenMV通過USB接電腦,在線運行,不用解鎖飛機,手拿著飛機對準被識別物體,確保它的確是識別到了目標物體;
這一步解決圖像識別數據源頭的問題,存在如下可能:
沒摘掉鏡頭蓋?
OpenMV鏡頭視場角太小,實際飛行中目標物體一直沒有進入視野?
室外環境,逆光情況下太陽嚴重干擾圖像識別效果?
OpenMV程序沒有寫對?運行一段時間死機了?
2、使用USB轉串口模塊接OpenMV的串口TX引腳,在電腦上的“串口調試助手”上查看原始的幀是否正確發送了出來,波特率是否正確;
注意,這一步看似麻煩,實際上這一步是發現問題的最關鍵一步,存在如下可能:
OpenMV的串口TX、RX弄反了?
OpenMV的引腳號搞錯了,接的根本就不是OpenMV的串口TX引腳?
OpenMV串口的波特率弄錯了?雖然通過串口調試助手可以看到一堆十六進制數據在不斷輸出,但是仔細觀察發現數據的幀頭、幀結構不對;
OpenMV端的線虛接?或者虛焊?甚至線纜本身是虛的?這個概率不小!
3、檢查連線是否正確,注意OpenMV的串口TX接的是飛控的串口RX;
注意這是串口連線時最常見的錯誤!
4、檢查飛控的全部參數列表中對應串口的參數是否設置正確(以視頻教程里的講解為準);
我猜測有30%的人會在這里出問題。
5、如果以上各個步驟檢查無誤,并且如果你是按照教程里的講解自己手寫的代碼,請直接使用教程中的代碼試試,如果教程中的代碼可以正常運行,而你的代碼不行,請使用Github Desktop這個軟件一行行對比你寫的代碼哪里有問題。
學習本節課的內容遇到問題后,在我們的微信群里提問之前,請嚴格按照上述步驟進行錯誤排查,如果上述所有步驟檢查后依然有問題,再到群里提問,看看大家有沒有好的建議。
無人機調試,飛控硬件定制,固件修改,log日志分析,飛控驅動添加
請QQ聯系:3500985284
微信公眾號:“怒飛垂云”,掃描下圖添加
閱讀次數:
1,231
總結
以上是生活随笔為你收集整理的openmv集成应用_使用OpenMV引导无人机飞行的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 换了那么多台电脑换了那么多台电脑怎么办
- 下一篇: 事实表和维度表是怎么造数据_从电商数据指