朱利軍 王應海
摘要:為提高微微鼠探索迷宮的穩(wěn)定性,并減少微微鼠在復雜迷宮中的探索時間,論文提出了基于STM32F429和A3P250的雙核控制器,智能S轉法的探索法則通過六條不同軌跡來實現(xiàn)轉入和轉出,短距離調(diào)整實現(xiàn)微微鼠不同探索路徑的銜接,陀螺儀的加入可以實現(xiàn)微微鼠直線位置和轉彎的精確補償,前墻傳感器和陀螺儀組合保證了連續(xù)轉彎姿態(tài)的準確性;微微鼠高速探索實驗表明,S轉法能顯著提高微微鼠轉法的穩(wěn)定性和快速性,有利于縮短微微鼠在迷宮中的探索時間。
關鍵詞:微電腦鼠;S轉法;探索;陀螺儀
中圖分類號:TM301? ? ? 文獻標識碼:A
文章編號:1009-3044(2021)30-0020-04
開放科學(資源服務)標識碼(OSID):
Design and Realization of Dual Core Pico-mouse Maze Searching
ZHU Li-jun, WANG Ying-hai
(Department of Electronic Engineering, Suzhou Industrial Park Institute of Vocational Technology, Suzhou 215123, China)
Abstract: To improve the stability and reduce the searching time of pico-mouse in complex maze, a dual core controller based on stm32f429 and a3p250 is proposed in this paper. Intelligent s-turning rule is realized by turning in and out through six different tracks. The short adjustment distance of turning in of and out realizes the connection of different searching path.Gyroscope can realize the accurate position correction of pico-mouse in the straight and turning compensation of the micro mouse, and the combination of front wall sensors and gyroscope ensures the accuracy of continuous turning posture; The high-speed searching experiment of the pico-mouse shows that the s-turning rule can significantly improve the stability and rapidity of the pico-mouse turning, which is conducive to shorten the searching time of the pico-mouse in the maze.
Key words: pico-mouse; s turning; searching; Gyroscope
1 引言
微電腦鼠是一種集感知、判斷、行走功能于一體的迷宮搜尋機器人,它依靠自身攜帶的多種傳感器探測并感知不同的“迷宮”,然后依靠人工智能算法求解并自動記憶其搜尋路徑,然后在最短的時間內(nèi)到達設定的迷宮目的地[1-4]。
隨著計算機技術、電力電子技術以及智能控制技術的不斷進步,基于微電腦鼠求解迷宮的技術基礎,產(chǎn)生了一種更復雜的迷宮機器人——微微鼠:迷宮擋墻減少為原來的1/2,原有的256個迷宮變成了1024格,由于迷宮變得更加復雜,求解迷宮的難度也變得異常艱難,新迷宮二維結構如圖1所示。
微微鼠攜帶的電源一旦打開,控制器便開啟其自身攜帶的傳感器,微微鼠依靠這些傳感器探索由1024個迷宮格組成的各種復雜迷宮,并依靠這些傳感器在迷宮中自主導航,然后依靠人工智能算法找到一條從起點到設定目標點的最佳路徑。微微鼠在探索過程中時刻依靠自身攜帶的傳感器判斷周圍的環(huán)境,環(huán)境參數(shù)經(jīng)傳感器轉化后傳輸?shù)娇刂破?,由控制器控制微微鼠其復雜迷宮格的啟動、加速、減速和停止。微微鼠要想求解1024個迷宮格組成的各種復雜迷宮,必須具備良好的環(huán)境探測感知能力和良好的行走能力,并且此機器人必須有多種人工智能算法,否則將無法完成探索求解任務。國內(nèi)研究時間此機器人較短,開發(fā)的控制技術比較落后,因此,需要對現(xiàn)有的微微鼠重新設計。
2 基于ARM+FPGA雙核微微鼠硬件原理
STM32F429是由STM公司生產(chǎn)基于ARM Cortex-M4內(nèi)核的32位flash微控制器。STM32F4系列主頻高達168MHz,并且支持單周期DSP指令和浮點單元,STM32F429集成了多個定時器、ADC、DAC等先進外設,這些功能使得F4系列比較適合使用于控制和信號處理功能混合的數(shù)字信號控制系統(tǒng)[5-6]。
FPGA采用了邏輯單元陣列結構,內(nèi)部包括可配置邏輯模塊、輸出輸入模塊和內(nèi)部連線三個部分,此特性使得FPGA可以根據(jù)需要自由編程以滿足實際需要,這種特性使得FPGA芯片可以提高系統(tǒng)集成度和可靠性,并且易于實現(xiàn)小批量生產(chǎn)。A3P250是ACTEL公司設計的一種基于Flash技術的邏輯門陣列的器件,采用了顆粒架構,具有250K個門結構,具有極低的內(nèi)核電壓(1.5 V),具有抗輻射好、耐高低溫、功耗低等特點,這些特點使得A3P250特別適合用于高性能的伺服控制。
在吸收國外先進控制思想的基礎上,論文在基于ARM(STM32F429)的微微鼠運動控制器基礎上引入FPGA(A3P250)形成雙核控制器,控制器以A3P250為處理核心,實現(xiàn)微微鼠快速探索時多軸伺服信號的實時處理,雙核控制器原理如圖2所示。
基于ARM+FPGA的雙核控制器把STM32F429從復雜的伺服控制算法中解脫出來,只實現(xiàn)伺服控制器的部分信號處理和FPGA的控制邏輯,并實時響應各種中斷,F(xiàn)PGA的加入可有效提高微微鼠在復雜迷宮探索時的穩(wěn)定性和快速性。
為減少微微鼠在迷宮行走中各種傳感器采樣的周期,提高多軸微微鼠迷宮探索中對行走路徑中迷宮擋墻的采樣頻率,本論文把原有的六組傳感器探測迷宮的方式改良成了基于四組傳感器探測迷宮的全新探測模式,攜帶四組傳感器的新型微微鼠二維結構如圖3所示。
如圖3所示:由紅外發(fā)射和紅外接收組成的傳感器組S1、S6共同作用用于判斷微微鼠探索時前方擋墻,傳感器S3判斷微微鼠探索時路徑左邊擋墻的存在,傳感器 S4判斷微微鼠探索時路徑右邊擋墻的存在,同時S3和S4的傳感器組合作為微微鼠探索行走時直線導航依據(jù)。
為了提高微微鼠在各種復雜迷宮中探索行走時的穩(wěn)定性,本論文在微微鼠高速探索伺服系統(tǒng)中加入了MEMS三軸陀螺儀G1,在整個探索期間,陀螺儀G1全程開啟,三軸陀螺儀實時進行檢測,可以對微微鼠的位置進行實時補償,減少了微微鼠較大偏離設定位置現(xiàn)象的發(fā)生,有效提高了微微鼠快速探索時的穩(wěn)定性和可靠性。
3 高速微微鼠探索原理
剛啟動瞬間,微微鼠一旦接到雙核控制器發(fā)出的探索命令,紅外傳感器組S1和S6首先對初始化的探索路徑前方環(huán)境進行判斷,如果經(jīng)S1和S6反饋,控制器判斷微微鼠剛啟動瞬間探索路徑前方有迷宮擋墻存在,STM32F429發(fā)送求解錯誤中斷請求給A3P250,A3P250首先響應中斷,然后禁止多路PWM使能端工作,封鎖驅動微微鼠行走伺服電機的PWM信號,微微鼠原地自鎖;如果雙核控制器發(fā)現(xiàn)沒有迷宮擋墻進入前方的探索路徑,微微鼠將以按照設定的參數(shù)完成最佳路徑的探索。
3.1 行走加減速
在微微鼠探索求解迷宮階段,將按照圖4所示的速度-時間圖形規(guī)律進行啟動、加速、減速和停止,圖中速度-時間曲線包含的面積就是微微鼠在某段運動路徑上需要運行的探索距離。
3.2微微鼠S轉法探索原理
在微微鼠沿著迷宮行走過程中,如果存在一段如圖5所示的探索路徑,微微鼠控制器將存儲其當前坐標(x,y),并按照不同的人工智能算法開始實現(xiàn)復雜的位置和方向的變換。
由于傳統(tǒng)的微微鼠智能算法人工智能程度較低,一般的探索軌跡如圖6所示。分析圖6的運動軌跡可以看出:微微鼠需要多次的啟動和停車,反復的啟停和加減速一般來說需要更長的運動時間,而且這條運動軌跡相對于來說距離較長。
為了縮短探索路徑并減少探索時間,本文提出了一種新型連轉探索算法:S轉法,其原理如圖7所示。
如圖7所示,S轉法把路徑分解,通過六段不同的軌跡來實現(xiàn)復雜環(huán)境中的轉彎:首先通過R90_leading實現(xiàn)轉彎前的姿態(tài)調(diào)整,ARM聯(lián)合FPGA,把短距離R90_Leading轉換成驅動直流電機運動的PWM波,推動微微鼠向前探索,雙核控制器再結合傳感器的各種反饋,實時調(diào)整微微鼠的姿態(tài),保證微微鼠運動方向能夠平行兩邊的擋墻;完成轉入前的姿態(tài)調(diào)整后,ARM聯(lián)合FPGA,把弧度R90_arc轉換成各種采樣周期下的直流電機運動的PWM波,實現(xiàn)微微鼠的轉彎探索,雙核控制器再結合陀螺儀的反饋,實時對轉彎角度進行補償,保證微微鼠按照預設的軌跡運行;當微微鼠完成90度的轉彎后,R90_passing實現(xiàn)轉彎后的姿態(tài)調(diào)整,ARM聯(lián)合FPGA,把短距離R90_passing轉換成驅動直流電機運動的PWM波,推動微微鼠向前姿態(tài)調(diào)整,雙核控制器再結合傳感器的各種反饋,實時調(diào)整微微鼠的姿態(tài),保證微微鼠運動方向能夠平行兩邊的擋墻,完成與L90_leading的交接,然后控制器進入L90_leading,L90_arc,L90_passing的轉換,控制微微鼠實現(xiàn)從當前迷宮中的轉出動作,左轉的軌跡原理類似于右轉,左轉完成后再接入右轉,這樣就實現(xiàn)了S轉法。
4 軟件設計
對于本文設計的基于STM32F429+A3P250的雙核高速微微鼠,在接到探索命令之前,它通常被放置在迷宮起點處,雙核高速探索控制器使其首先進入起點處的自鎖狀態(tài),一旦控制器發(fā)出探索命令,微微鼠將根據(jù)實際的導航環(huán)境,依靠自身的傳感器開始求解路徑,由A3P250產(chǎn)生的直流PWM驅動信號經(jīng)驅動橋放大后,實現(xiàn)微微鼠在復雜迷宮中的快速探索。本論文設計的微微鼠探索程序原理如圖8所示。
5 實驗
圖9所示為微電腦鼠和本文設計的微微鼠實物對比。通過對比可以看出,基于ARM+FPGA的雙核微微鼠具有更小的體積和質(zhì)量,有利于提高微微鼠高速探索時的動態(tài)性能。
圖10所示為所設計的微微鼠在S轉法前探索時的畫面。從圖中可以看出,微微鼠行走的方向平行于兩邊的迷宮擋墻,并處于當前迷宮格的中線上,為S轉法探索奠定了堅實的基礎。
圖11所示為微微鼠S轉法時的畫面。
從圖11微微鼠在復雜迷宮探索運行的圖片可以看出,該微微鼠沿著預設的曲線方向運行,這說明控制器已經(jīng)按照紅外傳感器組S1、S3、S4、S6和陀螺儀的反饋進行了精確補償。
6 結論
基于STM32F429和A3P250雙核控制器的使用使得微微鼠具有更小的尺寸和質(zhì)量,并降低了其重心,有利于提高微微鼠高速探索時的動態(tài)性能;陀螺儀的加入使得雙核探索控制器可以精確控制微微鼠的運動方向,易于微微鼠實現(xiàn)高速探索時姿態(tài)的精確調(diào)整;多傳感器組合可以實時對高速運行的微微鼠進行干擾補償,有利于提高微微探索時的準確性和穩(wěn)定性,進一步減少其迷宮探索時間。
參考文獻:
[1] Chen N.A vision-guided autonomous vehicle:an alternative micromouse competition[J].IEEE Transactions on Education,1997,40(4):253-258.
[2] Tetta CM .The evolution of the Micromouse Competition[J].IEEE Potentials,1986,6(4): 32-37.
[3] Xin Y. Research and Realization on Micrornouse for Maze Searching in Coalmine[M].Coal Technology,2010:60-69.
[4] 金余義,劉克申,任陽暉.基于測距紅外傳感器的輪式迷宮機器人設計[J].單片機與嵌入式系統(tǒng)應用,2013,13(9):74-77.
[5] 王偉奇,王澳剛,董化雄,等.基于STM32F429的蜘蛛六足機器人[J].智能機器人,2018(3):9-12.
[6] 劉宏興.基于STM32F429的植保無人機飛控系統(tǒng)的設計[D].長春:吉林大學,2019.
【通聯(lián)編輯:梁書】