葛濤+++徐運德+++陳顯東+++段紅委

摘 要:走迷宮的機器人是移動機器人路徑規劃算法的典型應用,在國際上迷宮機器人一直是控制領域和計算機領域的研究熱點問題,文章結合迷宮機器人走迷宮的實際特點,對機器人走迷宮的一些算法進行了研究和改進,從而實現了機器人在無人為干預下自主走迷宮的目標。
關鍵詞:迷宮機器人;單片機;數據通信;智能化
1 走迷宮的機器人設計的目的
隨著科學技術的高速發展,國內的教育和科研機構也日益關注機器人事業,有關科研工作在深度和規模上逐漸提高。一些著名高校基本形成了完整的研究體系,對推動高校的科技創新和產學研一體化產生了重要作用,因此我們將設計一種機器人,能夠在迷宮中尋找出最短路徑。
2 走迷宮的機器人系統設計
本設計以STC89C52單片機系統為控制中心,通過4路紅外電路檢測黑線,并保證小車能夠按照黑線前行,而當單片機檢測到需要轉向的傳感器信號時,單片機通過改變PWM波的占空比來調整小車兩側的電機轉速,從而使其兩側輪產生速度差,以實現小車的轉向。同時超聲波探測周圍障礙物,并通過WIFI模塊實時傳輸給計算機。小車遍歷整個迷宮區域,同時計算機繪制出迷宮概況,并用遞歸算法計算出最短路徑。
3 走迷宮的機器人硬件設計
3.1 總體硬件結構圖
說明:小車以STC89C52單片機控制器,采用紅外傳感器及其處理模塊實現對黑線的循跡;通過單片機產生PWM波對電機進行驅動并通過轉速對小車的方向和速度進行控制;用WIFI模塊將小車周邊障礙物情況傳送給電腦,電腦經過運算后將最優路徑傳輸回小車。數據采集系統以單片機為控制核心,模擬實況、算法分析由計算機完成。
3.2 微處理器的選擇
單片機我們選用STC89C52,該單片機是宏晶公司推出的新一代單片機,指令代碼完全兼容傳統8051單片機;內部集成512字節RAM,具有EEPROM功能和看門狗功能,可上電擦除;通用I/O口32個,3個16位定時器/計數器,且功耗低。對于該項目,晶振不能采用常用12兆晶振,否則通信時便會產生積累誤差,進而產生波特率誤差,影響通信的同步性。采用11.0592兆晶振可以得到非常準確的數值,方便通信。
3.3 WIFI模塊
WIFI模塊我們采用的是ESP8266,它是一款超低功耗的UART-WiFi傳輸模塊,擁有較小封裝尺寸和超低能耗技術,專為移動設備和物聯網應用設計,可將用戶的物理設備連接到WiFi無線網絡上,進行互聯網或局域網通信,實現聯網功能;且支持AT+控制指令集。
3.4 超聲波測障模塊
該模塊采用HC-SR04,具有體積小,精確度強等優點;具有2cm-400cm的非接觸式距離感測功能,可用于障礙物測量。其基本工作原理是:采用IO口TRIG觸發測距,但至少要給10us的高電平信號才能觸發;模塊自動發送8個40kHz的方波,自動檢測是否有信號返回;若有信號返回,則通過 I/O口ECHO 輸出一個高電平,高電平持續的時間就是超聲波從發射到返回的時間。只需5V電源供電,TRIG 觸發控制信號輸入,ECHO回響信號輸出等。
3.5 由于小車底座集成了電池槽和電源轉換,并帶有兩臺電機,所以不需要考慮電池和電機的選擇。
4 走迷宮的機器人軟件設計
4.1 遍歷算法
我們采用小車遍歷迷宮算法,迷宮的線路用黑線搭建進行模擬,橫豎各8條,每一個交點為一個坐標點 ,用二維數組a[8][8]表示(取左上角為起點,右下角為終點,總共64個交點)。
小車初始點為a[0][0],在沒遇到結點(岔路口)時,判斷前、右、左方向上是否有障礙物,如果有兩個或者兩個以上的方向上有時,則按照優先前,其次右,最后左的順序(中右法則)。為了記憶迷宮的詳細信息,需要對迷宮單元的位置進行線路標記。走過的路線用0代替,墻用-1代替,未監測1代替。
如果三個方向都有障礙物(死路),就需要退回去,這時就需要記錄上一次結點的位置。在有兩個或兩個以上的方向可走的時候就將該點坐標記錄,當進入死路的時候就退回上次結點,并將該死路的入口由0改為-1,然后在進行中右法則(如果只剩一個方向則不需要判斷)。對于有多個方向結點,應將結點儲存。
4.2 最短路徑算法
計算機計算最短路徑遞歸算法:迷宮為一個8*8的二維數組;0表示路,-1表示墻,1表示未探索區域,然后求從入口,到出口的最短路程。
從起點開始出發(初始點賦值為1),根據中右定則向四個方向查找(先中其次右最后左),每確定一個方向就對前方的點賦值為此點+1,走過的路徑也可以重復行走。但有一個條件,就是本點+1必須小于已走過的點的值(墻不能走),如果本點+1大于已走過的點的值就退出,這樣遞歸調用,直到找到終點為止。
遞歸每成功調用一次該坐標點的值就為1,將所有1用直線連接起來,就可得到最短距離。
5 結束語
本課題智能機器人擁有主動避障功能,自主識別障礙物并判斷可行走路線,能夠在錯綜復雜的環境規劃出最短路徑,可以應用到探測未知區域,例如實現管道故障排查和路況檢測,或利用其物理特性實現非接觸實時測量,并且不受光線影響,例如實現夜間避障。使其智能化后,可在環境比較惡劣或者對人體有危險的地方工作,比如外星探測、火場救人、處理危險源、進行水下操作。同時還可以應用到無人駕駛公交、工業自動化控制運輸等方面,有著廣闊的應用前景。
參考文獻
[1]童詩白,華成英.模擬電子技術基礎(第四版)[M].高等教育出版社.
[2]閻石.數字電子技術基礎(第五版)[M].高等教育出版社.
[3]傳感器原理及其應用[M].電子科技大學出版社.
[4]超聲波探測器HC-SR04官方文件,WIFI模塊ESP8266官方使用手冊[Z].
作者簡介:葛濤(1995-),男,漢族,山東省菏澤市人,本科,單位:江西科技師范大學,專業:電子信息工程。