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