李睿智
學(xué)號19021211293
轉(zhuǎn)載自https://blog.csdn.net/m0_37575064/article/details/78761967
【嵌牛導(dǎo)讀】該系統(tǒng)可以模擬雷達(dá)探測的基本工作方式当凡,但由于雷達(dá)使用微波探測堤结,這在一個創(chuàng)新課題中難以實(shí)現(xiàn)掀泳,因此采用超聲波模擬微波信號晃虫,盡管該系統(tǒng)在不管是在探測距離還是在信號處理方面都與真正的軍事探測雷達(dá)有很大差別,但是與倒車?yán)走_(dá)或者小車避障雷達(dá)有很多相似之處硕淑,加以改進(jìn)便可應(yīng)用于以上場景左权。該系統(tǒng)能夠?qū)χ車綀A兩米內(nèi)的障礙物進(jìn)行探測藕帜,系統(tǒng)簡單,卻功能完備樱调,包括下位機(jī)與上位機(jī)兩部分的設(shè)計约素。下位機(jī)主要涉及的串口通信、步進(jìn)電機(jī)控制笆凌、IIC通信等基本的硬件方面的知識圣猎,而上位機(jī)采用QT來設(shè)計上位機(jī)界面,Qt是一個基于C++的框架乞而,用來開發(fā)界面很方便送悔,最大的優(yōu)點(diǎn)是跨平臺,可用于PC爪模、ARM及Android端欠啤。該項(xiàng)目對初學(xué)者提高硬件方面的能力或者嵌入式方面的入門有很大的益處。
【嵌牛鼻子】雷達(dá)屋灌、上位機(jī)洁段、IIC通信、嵌入式
【嵌牛提問】該系統(tǒng)是如何模擬雷達(dá)探測的共郭,運(yùn)用了哪些嵌入式上的知識祠丝?
【嵌牛正文】
該系統(tǒng)的主要設(shè)計目標(biāo)。
????? ?上位機(jī)發(fā)出“啟動”信號后
????? ?下位機(jī)開始掃描四周的障礙物
????? ?下位機(jī)將探測到的障礙物的距離數(shù)據(jù)傳到上位機(jī)
????? ?上位機(jī)進(jìn)行數(shù)據(jù)處理并更新類雷達(dá)界面的顯示落塑。
該系統(tǒng)的主要功能模塊
?????? 下位機(jī)由STM32作為主控纽疟,實(shí)現(xiàn)障礙物的探測和對四周的掃描,并實(shí)現(xiàn)和上位機(jī)的通信憾赁,上位機(jī)軟件設(shè)計主要有用戶界面繪制污朽,接收下位機(jī)傳來的數(shù)據(jù)并進(jìn)行分析處理,根據(jù)接收到的每一幀的距離與角度更新雷達(dá)圖的繪制龙考,同時進(jìn)行任務(wù)管理蟆肆。
下面對該系統(tǒng)下位機(jī)各個模塊使用的器件進(jìn)行簡要介紹
????? 主控模塊主要采用STM32F103VET6開發(fā)板作為主控板矾睦,其最高頻率為72MHz,ARM系列Cortex-3內(nèi)核炎功,512K大小的flash枚冗。對于探測模塊有兩個方案,一是HC-SR04超聲波模塊加DS18B20溫度傳感器蛇损,二是US100超聲波模塊赁温,其自帶溫度補(bǔ)償功能(即彌補(bǔ)不同溫度對勝訴的影響)。后來我們選用了方案二淤齐。掃描模塊我們選用了28步進(jìn)電機(jī)股囊,其步距角為5.625度,減速比1:32更啄,之所以沒有48步進(jìn)電機(jī)還是從小電機(jī)更小巧輕便來考慮稚疹,采用ULS2003驅(qū)動器作為電機(jī)驅(qū)動,采用藍(lán)牙通信祭务,使探測系統(tǒng)能夠靈活移動内狗。
下位機(jī)程序設(shè)計過程中需要注意的問題
? ? ? 電機(jī)一直單方向轉(zhuǎn)動掃描周圍障礙物的話,會使電機(jī)的連線纏繞阻礙其運(yùn)轉(zhuǎn)义锥,因此我設(shè)定電機(jī)每轉(zhuǎn)動1圈后反轉(zhuǎn)柳沙。其次是超聲波直線傳播,如果探測面凹凸不平拌倍,不能及時接受回響信號偎行,會使電機(jī)的轉(zhuǎn)動卡頓,同時也使得上位機(jī)的繪圖速度不一致贰拿。為了解決這個問題蛤袒,規(guī)定探測距離為2m。
上位機(jī)程序的設(shè)計
???????? 上位機(jī)使用QT來設(shè)計界面膨更,QT含有豐富的API妙真,我們可以直接調(diào)用其圖形庫來設(shè)計雷達(dá)界面。在雷達(dá)背景圖的繪制中荚守,包括角度坐標(biāo)珍德,距離坐標(biāo),分割線矗漾,同心圓锈候,掃描線的繪制,通過代碼來實(shí)現(xiàn)敞贡。
起初并未考慮到障礙物對象的管理問題泵琳,在程序運(yùn)行過程中,發(fā)現(xiàn)內(nèi)存占用越來越大的情況,于是做出改進(jìn)获列。采取的辦法是對雷達(dá)界面內(nèi)的障礙物數(shù)量進(jìn)行上限規(guī)定谷市,并將每次新建的障礙物對象交由隊列管理。當(dāng)障礙物對象數(shù)量達(dá)到上限時击孩,將隊列中處于隊首位置的對象進(jìn)行釋放迫悠,使程序的內(nèi)存處于動態(tài)平衡的狀態(tài)下。
最后的主要成果圖如下
系統(tǒng)不足
????? 一巩梢、主控板直接采用現(xiàn)成的開發(fā)板创泄,太過不笨重,而且全部使用杜邦線連接括蝠,系統(tǒng)可靠性差验烧,并未自己畫電路板來集成。
????? 二又跛、供電方面,直接用適配器供電若治,限制了該系統(tǒng)的靈活移動