單核低速兩輪微微鼠探索控制器的制造方法
【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明涉及一種微微鼠(PIC0M0USE)自動(dòng)控制系統(tǒng),屬于微型迷宮機(jī)器人領(lǐng)域。
【背景技術(shù)】
[0002]微電腦鼠是使用嵌入式微控制器、傳感器和機(jī)電運(yùn)動(dòng)部件構(gòu)成的一種智能行走機(jī)器人,在國外已經(jīng)競賽了將近30年,其常采用兩輪結(jié)構(gòu),兩輪微電腦鼠二維結(jié)構(gòu)如圖1所示。微電腦鼠可以在不同“迷宮”中自動(dòng)記憶和選擇路徑,采用相應(yīng)的算法,快速地到達(dá)所設(shè)定的目的地,圖2中便是微電腦鼠求解的迷宮中的一種。
[0003]隨著微電子技術(shù)、計(jì)算機(jī)控制技術(shù)的不斷進(jìn)步,國外專家在微電腦鼠求解迷宮的技術(shù)基礎(chǔ)之上提出了一種更具有挑戰(zhàn)性的迷宮機(jī)器人一微微鼠,為了增強(qiáng)迷宮復(fù)雜程度以及求解迷宮的難度,迷宮擋墻由原有的180mm變成了 90mm,原有的迷宮由16*16格變成了32*32格,新的迷宮二維結(jié)構(gòu)如圖3所示。電源一旦打開,微微鼠全程完全依靠自身攜帶的傳感器自動(dòng)導(dǎo)航,并求解由1024個(gè)迷宮格組成的各種復(fù)雜迷宮,能夠快速從起點(diǎn)找到一條到達(dá)設(shè)定目標(biāo)點(diǎn)的最佳路徑,然后以最快的速度沖刺到終點(diǎn)。作為一種自助導(dǎo)航智能機(jī)器人,因?yàn)橥ㄟ^無線裝置可以向控制器輸入迷宮信息,微微鼠或者微電腦鼠比蹇國際準(zhǔn)則拒絕使用無線裝置,為了能夠得到微微鼠或者是微電腦鼠探索、沖刺后的信息,只能通過算法快速寄存并儲(chǔ)存其行走信息,當(dāng)完成任務(wù)后通過控制器的RS-232串口或者是USB等接口讀取存儲(chǔ)信息。
[0004]微微鼠在迷宮中探索迷宮過程中要時(shí)刻判斷周圍的環(huán)境,然后傳輸參數(shù)到控制器,由控制器反復(fù)控制其在迷宮方格中精確的加速和減速進(jìn)行運(yùn)動(dòng)。一只優(yōu)秀的微微鼠必須具備良好的感知能力,有良好的行走能力,優(yōu)秀的智能算法,否則將無法完成援直任務(wù)。微微鼠探索迷宮技術(shù)綜合了多學(xué)科知識(shí),對(duì)于提升在校學(xué)生的動(dòng)手能力、團(tuán)隊(duì)協(xié)作能力和創(chuàng)新能力,促進(jìn)學(xué)生課堂知識(shí)的消化和擴(kuò)展學(xué)生的知識(shí)面都非常有幫助,并且微微鼠速宣迷宣技術(shù)的開展可以培養(yǎng)大批相關(guān)領(lǐng)域的人才,進(jìn)而促進(jìn)相關(guān)領(lǐng)域的技術(shù)發(fā)展和產(chǎn)業(yè)化進(jìn)程。
[0005]微微鼠求解迷宮是國際新興的一門技術(shù),由于微微鼠探索迷宮技術(shù)的難度較高以及迷宮設(shè)計(jì)的復(fù)雜性,導(dǎo)致國內(nèi)還沒有研發(fā)此機(jī)器人的單位。如果認(rèn)為微微鼠只是微電腦鼠的簡單拷貝,按照微電腦鼠技術(shù)來設(shè)計(jì)微微鼠,在實(shí)踐中發(fā)現(xiàn)設(shè)計(jì)出的微微鼠存在下列問題:
1、由于求解迷宮數(shù)目的大量增加,原有的微電腦鼠求解迷宮技術(shù)無法用于微微鼠求解現(xiàn)有的復(fù)雜迷宮。
[0006]2、由于微微鼠的尺寸相較于微電腦鼠的尺寸大幅減少,如果微微鼠采用圖1中撤電腦鼠的六組傳感器技術(shù)探測(cè)迷宮,經(jīng)常出現(xiàn)傳感器相互干擾的狀況,導(dǎo)致其讀取迷宮信息失敗。
[0007]3、基于輪式的微微鼠只能被動(dòng)的適應(yīng)迷宮地面的打滑程度,隨著微微鼠探索速度的提高,其打滑概率也極大增加,導(dǎo)致求解迷宮失敗。
[0008]4、由于微電腦鼠伺服系統(tǒng)采用的都是比較低級(jí)的算法,如果直接將這些算法套用在微微鼠上,使得微微鼠在迷宮當(dāng)中的探索一般都要花費(fèi)較長的時(shí)間,這使得在真正的大賽中無法取勝。
[0009]5、由于迷宮擋墻尺寸的減少,使得微微鼠相較于微電腦鼠單格運(yùn)行的距離減少,頻繁的剎車和啟動(dòng)加重了單片機(jī)的工作暈,采用單片機(jī)技術(shù)的微微鼠已經(jīng)無法滿足快速啟動(dòng)和停車的要求。
[0010]6、對(duì)于兩輪驅(qū)動(dòng)的微微鼠來說一般要求驅(qū)動(dòng)其運(yùn)動(dòng)的兩個(gè)電機(jī)PWM控制信號(hào)要同步,受計(jì)算能力的限制單片機(jī)伺服系統(tǒng)很難滿足這一條件,微微鼠在直道探索時(shí)不能準(zhǔn)確的行走在中線上,在高速探索時(shí)很容易撞到迷宮擋墻,導(dǎo)致探索任務(wù)失敗。
[0011]7、由于受單片機(jī)容量和算法影響,微微鼠無法存儲(chǔ)迷宮信息,當(dāng)遇到掉電情況時(shí)所有的信息將消失,這使得整個(gè)探索過程要重新開始。
[0012]8、微微鼠在迷宮探索時(shí),易于受到外界干擾,由于沒有進(jìn)行及時(shí)補(bǔ)償導(dǎo)致微微鼠碰撞迷宮擋墻,最終無法完成任務(wù)。
[0013]9、微微鼠在探索過程中,一旦遇到撞墻情況都會(huì)發(fā)生電機(jī)堵轉(zhuǎn)情況,造成電機(jī)瞬間電流過大,嚴(yán)重時(shí)燒壞電機(jī)。
【發(fā)明內(nèi)容】
[0014]本發(fā)明的目的是借助現(xiàn)有的先進(jìn)控制技術(shù)以及先進(jìn)控制芯片提供一種單核低速兩輪微微鼠探索控制器,滿足初級(jí)者學(xué)習(xí)等方面的需要且解決現(xiàn)有技術(shù)中的諸多問題。
[0015]本發(fā)明采用的技術(shù)方案是:單核低速兩輪微微鼠探索控制器,包括STM32F4控制器、L6207D芯片、電池、第一傳感器S1、第二傳感器S2、第三傳感器S5、第四傳感器S6、陀螺儀G1、第一電機(jī)X、第二電機(jī)Y、第三電機(jī)M、真空裝置和陀螺儀Gl,STM32F4控制器與L6207D芯片信號(hào)連接,第一傳感器S1、第二傳感器S2、第三傳感器S5和第四傳感器S6均位于兩輪微微鼠上表面的一側(cè)、其中兩個(gè)傳感器信號(hào)發(fā)射方向與車輪行進(jìn)方向相同、另外兩個(gè)傳感器信號(hào)發(fā)射方向與車輪行進(jìn)方向間有一定夾角,所述陀螺儀G1與STM32F4控制器信號(hào)連接、當(dāng)微微鼠使用時(shí)所述STM32F4控制器控制陀螺儀處于開啟狀態(tài)且STM32F4控制器對(duì)陀螺儀的角度數(shù)據(jù)進(jìn)行監(jiān)測(cè)、根據(jù)預(yù)設(shè)的直行或轉(zhuǎn)彎時(shí)的角度數(shù)據(jù)與陀螺儀實(shí)際數(shù)據(jù)做出比較、實(shí)現(xiàn)微微鼠運(yùn)動(dòng)方向的校正,所述三個(gè)電機(jī)中的其中兩個(gè)電機(jī)分別與兩輪微微鼠的兩個(gè)車輪一一對(duì)應(yīng)連接、另一個(gè)電機(jī)與真空裝置連接,L6207D芯片與兩個(gè)車輪所對(duì)應(yīng)的兩個(gè)電機(jī)信號(hào)連接,與真空裝置連接的電機(jī)與STM32F4控制器信號(hào)連接。
[0016]作為本發(fā)明的進(jìn)一步改進(jìn),第一傳感器S1的傳感器信號(hào)發(fā)射方向與第二傳感器S2的傳感器信號(hào)發(fā)射方向間的夾角大于等于75°且小于等于90°、第三傳感器S5、第四傳感器S6的傳感器信號(hào)發(fā)射方向間的夾角大于等于75°且小于等于90°。
[0017]作為本發(fā)明的進(jìn)一步改進(jìn),與兩個(gè)車輪對(duì)應(yīng)的兩個(gè)電機(jī)為第一電機(jī)X、第二電機(jī)Y,第一電機(jī)X、第二電機(jī)Y均為永磁直流電機(jī),驅(qū)動(dòng)真空裝置的電機(jī)為第三電機(jī)M且第三電機(jī)為直流電機(jī)。
[0018]作為本發(fā)明的進(jìn)一步改進(jìn),所述的STM32F4控制器為STM32F407控制器,第一傳感器S1、第二傳感器S2、第三傳感器S5和第四傳感器S6均包括紅外發(fā)射傳感器0PE5594A和紅外接收器TSL262。
[0019]本發(fā)明還公開了單核低速兩輪微微鼠探索控制器的控制方法,包括以下步驟:
準(zhǔn)備階段:打開微微鼠電源,微微鼠進(jìn)入自鎖狀態(tài),設(shè)定起點(diǎn)坐標(biāo)與終點(diǎn)坐標(biāo)并等待探索命令;
啟動(dòng)階段:把微微鼠放在迷宮起點(diǎn),接受探索命令,STM32F4控制器首先開啟與真空裝置連接的電機(jī)、通過真空裝置使得微微鼠對(duì)地面具有一定的吸附力,真空裝置開啟后STM32F4控制器將控制信號(hào)發(fā)送至L6207D芯片,L6207D芯片控制與兩個(gè)車輪所對(duì)應(yīng)的兩個(gè)電機(jī)啟動(dòng)并將信號(hào)回饋,STM32F4控制器根據(jù)L6207D芯片的回饋數(shù)據(jù)調(diào)整與真空裝置連接的電機(jī)、使得微微鼠對(duì)地面的吸附力能夠適應(yīng)微微鼠的速度,與兩個(gè)車輪所對(duì)應(yīng)的兩個(gè)電機(jī)啟動(dòng)的同時(shí)第一傳感器S1、第二傳感器S2、第三傳感器S5和第四傳感器S6啟動(dòng)從而對(duì)迷宮擋墻進(jìn)行探測(cè),STM32F4控制器控制陀螺儀處于開啟狀態(tài)且STM32F4控制器對(duì)陀螺儀的角度數(shù)據(jù)進(jìn)行監(jiān)測(cè);
探索階段:第一傳感器S1、第二傳感器S2、第三傳感器S5和第四傳感器S6對(duì)迷宮周邊環(huán)境進(jìn)行判斷并記錄儲(chǔ)存當(dāng)前迷宮擋墻信息,陀螺儀記錄微微鼠的運(yùn)動(dòng)加速度、速度和位置,STM32F4控制器根據(jù)信號(hào)儲(chǔ)存微微鼠當(dāng)前運(yùn)動(dòng)加速度、速度和位置并把向前運(yùn)動(dòng)一格的位置參數(shù)送給STM32F4,STM32F4控制器根據(jù)擋墻的狀態(tài)、位置坐標(biāo)和速度值調(diào)節(jié)與兩個(gè)車輪所對(duì)應(yīng)的兩個(gè)電機(jī)、使得微微鼠直行或利用兩輪間的速度差實(shí)現(xiàn)轉(zhuǎn)彎,當(dāng)微微鼠運(yùn)動(dòng)一格距離到達(dá)新地址時(shí),STM32F4處理器將更新坐標(biāo),判斷其坐標(biāo)是不是終點(diǎn),如果不是將繼續(xù)更新其坐標(biāo),探索過程中STM32F4控制器根據(jù)陀螺儀的數(shù)據(jù)對(duì)微微鼠進(jìn)行控制使得微微鼠直行時(shí)不跑偏、轉(zhuǎn)彎時(shí)角度正確;
返航階段:當(dāng)STM32F4控制器根據(jù)信號(hào)判斷出到達(dá)所設(shè)定的終點(diǎn)時(shí),則設(shè)置返航標(biāo)志并控制與兩個(gè)車輪所對(duì)應(yīng)的兩個(gè)電機(jī)開始返航?jīng)_刺,返航?jīng)_刺中STM32F4控制器根據(jù)陀螺儀的數(shù)據(jù)對(duì)微微鼠速度值進(jìn)行控制使得微微鼠直行時(shí)不跑偏、轉(zhuǎn)彎時(shí)角度正確。
[0020]作為單核低速兩輪微微鼠探索控制器的控制方法的進(jìn)一步改進(jìn),探索階段中,微微鼠向前運(yùn)動(dòng)時(shí),若在任何一個(gè)方格的中心如果確定沒有擋墻運(yùn)動(dòng)范圍,則微微鼠將存儲(chǔ)其坐標(biāo),并把向前運(yùn)動(dòng)一格的位置參數(shù)送給STM32F4控制器,由STM32F4控制器根據(jù)探索控制器速度和加速度要求以及光電編碼器的反饋,生成速度-時(shí)間運(yùn)動(dòng)梯形圖,這個(gè)梯形包含的面積就是與兩個(gè)車輪所對(duì)應(yīng)的兩個(gè)電機(jī)要運(yùn)行的一格的距離,STM32F4控制器根據(jù)這個(gè)梯形圖生成驅(qū)動(dòng)兩軸直流電機(jī)的PWM波,然后STM32F4控制器使能L6207D,調(diào)整電平并由L6207D驅(qū)動(dòng)與兩個(gè)車輪所對(duì)應(yīng)的兩個(gè)電機(jī)向前運(yùn)動(dòng)。
[0021]作為單核低速兩輪微微鼠探索控制