|
基于紅外線和超聲波傳感器的新型測距系統(tǒng)設(shè)計 傳感器是人工智能研究中非常重要的一環(huán),要想要讓機器更加智能,就需要用傳感器來賦予它們像人一樣的各種感官。文章結(jié)合了紅外線傳感器測距較短、精度較高,超聲波傳感器測距較長、精度較低的特點,設(shè)計了一款以 STM32 單片機為核心,將紅外線傳感器 GP2Y0A02YK0F 與超聲波傳感器 HC-SR04 融合的新型測距系統(tǒng),并優(yōu)化了測距算法。通過實驗表明,該系統(tǒng)可以彌補單一傳感器測距性能的不足,提高了測距精度,具有結(jié)構(gòu)簡單、成本低及使用方便等優(yōu)點。將該新型測距系統(tǒng)應(yīng)用到智能無人小車的控制系統(tǒng)中,可提升小車的避障性能,效果顯著。 0 引言 紅外線傳感器測量數(shù)據(jù)精度高但是測量距離較短,而超聲波傳感器的測量距離長但精度較低 [1], 所以本文選用在性能上互補的超聲波傳感器和紅外線傳感器融合使用,結(jié)合兩種傳感器的優(yōu)缺點,將二者測得的數(shù)據(jù)進(jìn)行算法融合,在一段較長的測距范圍內(nèi)得到更精確的測量數(shù)據(jù)。新的測距系統(tǒng)可以應(yīng)用于多種場合,具有結(jié)構(gòu)簡單、成本低等優(yōu)點,在無人車、機器人等領(lǐng)域有廣泛的應(yīng)用價值 [2-3]。 1 新型測距系統(tǒng)總體設(shè)計 設(shè)計方案:分別使用紅外線和超聲波傳感器測量一組距離數(shù)據(jù),將兩組數(shù)據(jù)傳輸?shù)娇刂葡到y(tǒng),利用融合算法計算出第 3 組數(shù)據(jù),并利用實驗值修正算法參數(shù)。將修正后的第 3 組數(shù)據(jù)作為最終測距值,測量范圍為 20 ~ 150cm。將數(shù)據(jù)傳輸?shù)娇刂贫诉M(jìn)行監(jiān)測,接收部分在接收到數(shù)據(jù)后,同時進(jìn)行數(shù)據(jù)處理,最終形成可視化輸出 [4]。 圖 1 測距系統(tǒng)方案 2 系統(tǒng)硬件設(shè)計 2.1 控制部分 本文選用 STM32F103ZET6 芯片作為微處理器,該芯片成本低、功耗低,但是運算功能強大、功能眾多,可以根據(jù)不同的優(yōu)先級先后執(zhí)行中斷程序,能夠滿足本系統(tǒng)的需求。 2.2 測距部分 超聲波在傳播過程中遇到介質(zhì)會被反射,利用超聲波的這一特性便可以進(jìn)行超聲波測距。 設(shè)計選用 HC-SR04 超聲波傳感器模塊作為超聲波測距部分,此模塊性能穩(wěn)定,測量范圍為 2~ 400cm,測量距離大、盲區(qū)小,擁有高達(dá) 0.3cm 的測距精度。 將超聲波傳感器發(fā)射端對著被測對象發(fā)射,超聲波傳感器的接收端接收到反射回的超聲波后,根據(jù)發(fā)射和接收的時間差就可以計算超聲波的傳播距離。 紅外線測距部分選用夏普 gp2y 系列的紅外線傳感器,夏普的紅外線測距傳感器采用三角測量原理。三角測量是一種間接測量目標(biāo)距離的方法,又叫三邊量測法。設(shè)計將目標(biāo)定為一個三角形的第 3 個點,當(dāng)確定了一條邊長和發(fā)射光線、反射光線的兩個角度后,可以由此計算出與目標(biāo)的距離。紅外線傳感器測量原理,如圖 2 所示。利用數(shù)學(xué)的幾何知 識,傳感器到物體的距離 D,可以由如下公式求得:D=( X/L)× f (1) 在 型 號 的 選 擇 上, 綜 合 考 慮 了 超 聲 波 傳 感器 的 測 距 范 圍 與 設(shè) 計 目 標(biāo), 本 系 統(tǒng) 最 終 選 擇 使 用GP2Y0A02YK0F 紅外線傳感器。這款紅外線測距傳感器測量精度高,測量范圍在 20 ~ 150cm。 2.3 信號傳輸部分 LCD1602 液晶顯示器是一種字符顯示器,在顯示時,有兩行內(nèi)容,每行有 16 個字符的顯示器,總共擁有 16 個引腳。LCD1602 主要顯示經(jīng)過系統(tǒng)數(shù)據(jù)處理后的最終數(shù)據(jù),也就是測得的小車與前放障礙物之間的距離。 2.4 無人車實驗平臺 3 測距算法設(shè)計 3.1 超聲波測距 HC-SR04 采 用 IO 口 TRIG 觸 發(fā) 測 距, 提 供 一個 10us 以上的高電平脈沖觸發(fā)信號,模塊內(nèi)部將會發(fā)送 8 個 40kHz 周期電平并檢測回波。當(dāng)檢測到信號返回時,輸出回響信號。回響信號的脈沖寬度與測量距離成正比。回響信號的脈沖寬度為高電平持續(xù)時間, T 是高電平持續(xù)時間。表達(dá)式如下:L1=( V×Δ T)/2 (2) 如果發(fā)射信號的周期太短,那么發(fā)射信號會對回響信號產(chǎn)生影響,因此設(shè)置脈沖觸發(fā)信號的發(fā)射周期為 100ms。 3.2 紅外線測距 圖 3 GP2Y0A02YK0F 傳感器特性曲線 3.3 算法設(shè)計 此時,得到一個 k 1 和 k 2 的數(shù)值。 同時考慮到本系統(tǒng)所選用的超聲波測距傳感器的有效距離略大于紅外線測距傳感器的有效距離。因此,當(dāng)接收到超聲波傳感器的數(shù)據(jù)時再進(jìn)行一次判斷,得到的結(jié)果小于 20cm 或大于 150cm 時,直接以超聲波傳感器的數(shù)據(jù)為最終數(shù)據(jù)。當(dāng)數(shù)據(jù)范圍在 20 ~ 150cm 時,結(jié)合兩個傳感器的數(shù)據(jù),利用式(3)計算得出最終數(shù)據(jù)。本系統(tǒng)設(shè)計的重點在于測量 20 ~ 150cm 內(nèi)的數(shù)據(jù)。測距系統(tǒng)流程,如圖 4 所示。 表 1 在可測量范圍內(nèi)的實驗測量數(shù)據(jù) 注:k1=0.568;k2=0.422 平均相對誤差 =0.1154% 4 實驗數(shù)據(jù)及分析 通過表 1 可以發(fā)現(xiàn),利用超聲波傳感器和紅外線傳感器的融合測距,在測量范圍內(nèi)的平均相對誤差小于 0.3%,滿足檢測系統(tǒng)的精度要求,說明該測距系統(tǒng)方案可行。 因超聲波測距與紅外線測距均會受到外界因素的影響,若要進(jìn)一步提高測量精度,可設(shè)置不同環(huán)境下的 k1、k2 值。通過藍(lán)牙控制,使系統(tǒng)在不同情況使用不同的 k1、k2 值。 5 結(jié)語 本文設(shè)計了一種基于紅外線和超聲波傳感器的新型測距系統(tǒng)。該系統(tǒng)結(jié)構(gòu)具有簡單、成本低及精度高的優(yōu)點,融合了紅外線和超聲波傳感器的特點,改進(jìn)了測距算法,從而提高了測量精度,并擁有較大的測量范圍。將該系統(tǒng)應(yīng)用在智能無人車中,能提升無人車的避障性能,同時也為基于多傳感器的測距系統(tǒng)設(shè)計提供了一種新思路。 參考文獻(xiàn) 班寧產(chǎn)品匯總 |