張本昌 柳科珍 李龍龍 金熠



摘 要:基于單片機的障距機器人自主導航技術是進行避障研究實驗的重要內容,主要是防止結構的老化、脫落,可以減少不必要的傷亡,主要核心問題有傳感器的選擇和規劃算法的確定,不一樣的傳感器含有不同的原理以及特色,算法不同,所需要的時間復雜度和空間復雜度也不相同,并且可以使用多個傳感器和算法從而實現避障功能。
關鍵詞:單片機;障距機器人;算法;傳感器
隨著嵌入式開發與單片機的迅速發展,使得在日常生活中用單片機實現巨大的功能,障距機器人等一系列嵌入式開發對我們的生活帶來了巨大的改變,使得可以減少不必要的傷亡,例如在毒氣存在的地方可以讓機器人進去探測地形。觀察一下危險,早點排除。
1.障距機器人的避障方法
1)單片機:伴隨著科學技術的發展,單片機的功能也變得越來越強大。體積小、功能較全、抗干擾能力較強、可靠性比較高、結構很合理、指令非常豐富、造價低廉……這些顯而易見的優勢使得單片機可以作為控制系統的核心,以此來提高整個系統的可靠性和可行性,STM32系列具有高性能,低成本,低功耗等特點,適合用于避障小車的研究。
2)原理:首先我們需要了解什么是避障小車:用超聲波傳感器探測前方物體,然后輸入到單片機中處理,在對電極驅動模塊進行控制,從而實現避障的功能。左手定則的使用。
算法:避障算法中比較簡單的一種是Bug算法,基本思想是讓機器人以測障的方式繞過障礙物,然后計算測出的數據,給出相應的解決方案,使得機器人繼續向前移動。為了完成需要回避障礙物的任務,機器人要實現兩個功能:一個是沿直線行走,二是跟蹤的障礙邊界。每個算法都有自己優缺點,Bug算法的優點之一就在于其只需要使用簡單傳感器獲得局部信息而不用去了解全局情況。Bug算法也有缺點,它的效率很低,由于它走了很多不必走的路。雖然效率很低,但能保證機器人達到目標
1.判斷左邊是否有墻,無墻:機器人左轉,前進一步,繼續判斷左。
2.左邊有墻,則判斷前方是否有墻,無則向前一步,跳回第一步
3.前方有墻(此時狀態是左有墻,前有墻),則向機器人右轉,跳回第一步
4)超聲波傳感器:超聲波測距的原理是在正常條件下,空氣中超聲波的速度是一定的,再根據反射時間的差值去確定障礙物與源點之間的距離。反射的聲波根據障礙物的發送和接收時間的發射點之間的差值計算出實際距離。
下圖為超聲波傳感器的原理圖
2.障距機器人的軟硬件安裝
1)硬件安裝。我們的實驗用到了雙層智能測速循跡小車底盤,4WD四驅強磁電機,測速循跡4輪,用到了2WD-51的開發板以及兩個超聲波傳感器,我們需要將避障小車的主要框架建立起來,安裝電機,安裝電池組,安裝STM32芯片以及傳感器。
2)軟件安裝。主要是一些驅動,利用eclipse和keil5進行代碼的編程以及修改,還需要一款燒錄軟件,我們用到普中自動下載軟件,目的是將電腦編譯成功的代碼寫入到STM32芯片中。
參考文獻
[1]秦新林,陳伯亨.單片機的應用——STM32智能小車[J].農家參謀,2019(19):194.
作者簡介:
張本昌(1999-),男,漢,本科,單位:甘肅農業大學信息科學技術學院,研究方向:計算機科學與技術。
通訊作者:王敏(1979-),副教授。