一種基于arm9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),包括:電池檢測(cè)模塊,按鍵信息模塊,全數(shù)字最小硬件伺服單元,左、右電機(jī)驅(qū)動(dòng)單元,左、右陀螺儀,左、右控制電機(jī);所述電池檢測(cè)模塊、按鍵信息模塊、全數(shù)字最小硬件伺服單元、左、右電機(jī)驅(qū)動(dòng)單元電性連接于左、右控制電機(jī);左、右陀螺儀與全數(shù)字最小硬件伺服單元連接,所述按鍵信息模塊中設(shè)置有自動(dòng)搜索模塊和調(diào)取信息模塊。通過上述方式,本發(fā)明中的系統(tǒng)舍棄了單獨(dú)左轉(zhuǎn)與右轉(zhuǎn)的簡(jiǎn)單組合,通過分解運(yùn)動(dòng)曲線并借助前方導(dǎo)航傳感器為微電腦鼠提供一種連轉(zhuǎn)快速?zèng)_刺的實(shí)用性全數(shù)字伺服控制系統(tǒng),令微電腦鼠更加靈活快速運(yùn)動(dòng)。
【專利說明】—種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種微電腦鼠伺服系統(tǒng),特別是涉及一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)。
【背景技術(shù)】
[0002]微電腦鼠是使用嵌入式微控制器、傳感器和機(jī)電運(yùn)動(dòng)部件構(gòu)成的一種智能行走機(jī)器人,微電腦鼠可以在不同“迷宮”中自動(dòng)記憶和選擇路徑,采用相應(yīng)的算法,快速地到達(dá)所設(shè)定的目的地。微電腦鼠比賽在國外已經(jīng)有30幾年的歷史,現(xiàn)在每年國際上都要舉行上百場(chǎng)類似的微電腦鼠大賽。
[0003]微電腦鼠競(jìng)賽采用運(yùn)行時(shí)間、迷宮時(shí)間和碰觸這三個(gè)參數(shù),從速度、求解迷宮的效率和電腦鼠的可靠性三個(gè)方面來進(jìn)行評(píng)分,不同的國家采用不同的評(píng)分標(biāo)準(zhǔn),最有代表的四個(gè)國家標(biāo)準(zhǔn)為:
美國:IEEE APEC國際微電腦鼠機(jī)器人競(jìng)賽,探索時(shí)間、沖刺時(shí)間和固定的接觸扣分,都記入總成績(jī),得分=探索時(shí)間/30 +沖刺時(shí)間+固定接觸扣分;
日本:全日本國際微電腦鼠機(jī)器人大會(huì)(專家級(jí)),總成績(jī)僅計(jì)算沖刺時(shí)間,得分=最佳沖刺時(shí)間;
英國:微電腦鼠機(jī)器人挑戰(zhàn)賽,探索時(shí)間、沖刺時(shí)間和可變的接觸扣分都記入總成績(jī),得分=探索時(shí)間/30 +沖刺時(shí)間+變動(dòng)接觸扣分;
新加坡:機(jī)器人大賽,探索時(shí)間、沖刺時(shí)間記入總成績(jī);每次接觸機(jī)器人將減少一次嘗試機(jī)會(huì),得分=探索時(shí)間/30 +沖刺時(shí)間。
[0004]從上面的國際標(biāo)準(zhǔn)來看,沖刺時(shí)間決定整個(gè)微電腦鼠的成敗,由于國內(nèi)研發(fā)此機(jī)器人的單位較少,相對(duì)研發(fā)水平比較落后,研發(fā)的微電腦鼠結(jié)構(gòu)如圖1,長時(shí)間運(yùn)行發(fā)現(xiàn)存在著很多安全問題,即:
(I)作為微電腦鼠的眼睛采用的是超聲波或者是一般的紅外傳感器,而且傳感器的設(shè)置有誤,使得微電腦鼠在快速?zèng)_刺時(shí)對(duì)周圍迷宮的判斷存在一定的誤判,使得微電腦在快速?zèng)_刺的時(shí)候容易撞上前方的擋墻。
[0005](2)作為微電腦鼠的執(zhí)行機(jī)構(gòu)采用的是步進(jìn)電機(jī),經(jīng)常會(huì)遇到丟失脈沖的問題出現(xiàn),導(dǎo)致對(duì)沖刺位置的記憶出現(xiàn)錯(cuò)誤,有的時(shí)候找不到?jīng)_刺的終點(diǎn)。
[0006](3)由于采用步進(jìn)電機(jī),使得機(jī)體發(fā)熱比較嚴(yán)重,不利于在大型復(fù)雜迷宮中快速?zèng)_刺。
[0007](4)由于采用比較低級(jí)的算法,使得最佳迷宮的計(jì)算和沖刺路徑的計(jì)算都有一定的問題,研發(fā)的微電腦鼠基本上不會(huì)多次自動(dòng)加速?zèng)_刺,在一般迷宮當(dāng)中的沖刺一般都要花費(fèi)15?30秒的時(shí)間,這使得在真正的國際復(fù)雜迷宮大賽中無法取勝。
[0008](5)由于微電腦鼠在快速?zèng)_刺過程中需要頻繁的剎車和啟動(dòng),加重了單片機(jī)的工作量,單片信號(hào)處理器無法滿足微電腦鼠快速?zèng)_刺的要求。
[0009]( 6 )相對(duì)采用的都是一些體積比較大的插件元器件使得微電腦鼠的體積和重量比較龐大,而且重心較高,無法滿足快速?zèng)_刺的要求。
[0010](7)由于受周圍環(huán)境不穩(wěn)定因素干擾,特別是周圍一些光線的干擾,單片機(jī)控制器經(jīng)常會(huì)出現(xiàn)異常,引起微電腦鼠失控,抗干擾能力較差。
[0011](8)對(duì)于差速控制的微電腦鼠來說,一般要求其兩個(gè)電機(jī)的控制信號(hào)要同步,但是對(duì)于單一單片機(jī)來說很難辦到,使得微電腦鼠在高速?zèng)_刺時(shí)會(huì)在迷宮當(dāng)中搖擺幅度較大,經(jīng)常出現(xiàn)撞墻的現(xiàn)象發(fā)生,導(dǎo)致沖刺失敗。
[0012](9)由于受單片機(jī)容量和算法影響,微電腦鼠對(duì)迷宮的信息沒有存儲(chǔ),當(dāng)遇到掉電情況時(shí)候所有的信息將消失,這使得整個(gè)沖刺過程無法完成。
[0013](10)由于沒有角速度傳感器的輔助進(jìn)行轉(zhuǎn)彎,經(jīng)常出現(xiàn)轉(zhuǎn)彎角度過小或者過大的現(xiàn)象發(fā)生,然后依靠導(dǎo)航的傳感器進(jìn)行補(bǔ)償,導(dǎo)致在連續(xù)多次轉(zhuǎn)彎的迷宮中出現(xiàn)撞墻的現(xiàn)象發(fā)生,致使沖刺失敗。
[0014](11)采用單個(gè)傳感器探知前方迷宮的擋墻,極易收到外界干擾,致使前方傳感器錯(cuò)誤引導(dǎo)快速?zèng)_刺的微電腦鼠,導(dǎo)致微電腦鼠在迷宮中沖刺不到位或者撞墻,致使沖刺失敗。
[0015]因此,需要對(duì)現(xiàn)有的基于單片機(jī)控制的微電腦鼠控制器進(jìn)行重新設(shè)計(jì)。
【發(fā)明內(nèi)容】
[0016]本發(fā)明主要解決的技術(shù)問題是提供一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),能夠?yàn)槲㈦娔X鼠提供一個(gè)基于兩輪的快速連轉(zhuǎn)沖刺系統(tǒng),利用快速驅(qū)動(dòng)控制器L298N的作用,有利于微電腦鼠在比賽中取得好成績(jī)。
[0017]為解決上述技術(shù)問題,本發(fā)明米用的一個(gè)技術(shù)方案是:提供一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),包括:電池檢測(cè)模塊、按鍵信息模塊、全數(shù)字最小硬件伺服單元、左電機(jī)驅(qū)動(dòng)單元、右電機(jī)驅(qū)動(dòng)單元、左陀螺儀、右陀螺儀、左控制電機(jī)與右控制電機(jī),所述電池檢測(cè)模塊、按鍵信息模塊、全數(shù)字最小硬件伺服單元、左電機(jī)驅(qū)動(dòng)單元、右電機(jī)驅(qū)動(dòng)單元電性連接于左控制電機(jī)與控制右電機(jī);所述左陀螺儀和右陀螺儀電性連接于所述全數(shù)字最小硬件伺服單元;所述電池檢測(cè)模塊中設(shè)置有電荷顯示單元,所述電荷顯示單元與按鍵信息模塊之間電性連接,所述按鍵信息模塊中設(shè)置有自動(dòng)搜索模塊和調(diào)取信息模塊,所述自動(dòng)搜索模塊和調(diào)取信息模塊與按鍵信息模塊連接,根據(jù)按鍵信息伺服系統(tǒng)能夠?qū)崿F(xiàn)自動(dòng)搜索模塊和調(diào)取信息模塊的選取,所述按鍵信息模塊電性和伺服控制單元電性連接。
[0018]在本發(fā)明一個(gè)較佳實(shí)施例中,所述全數(shù)字最小硬件伺服單元中設(shè)置有沖刺選擇模塊和沖刺運(yùn)動(dòng)模塊,信號(hào)由沖刺選擇模塊通過篩選后流向沖刺運(yùn)動(dòng)模塊后進(jìn)行傳輸。
[0019]在本發(fā)明一個(gè)較佳實(shí)施例中,所述沖刺選擇模塊進(jìn)一步包含有自動(dòng)沖刺模塊、快速?zèng)_刺模塊和設(shè)定速度沖刺模塊;所述沖刺運(yùn)動(dòng)模塊中進(jìn)一步包含有環(huán)境判斷單元、啟動(dòng)沖刺單元和沖刺單元,所述沖刺運(yùn)動(dòng)模塊中設(shè)置有紅外傳感器、光電編碼器和電流傳感器,所述紅外傳感器與環(huán)境判斷單元之間相互連接,所述沖刺運(yùn)動(dòng)模塊中進(jìn)一步包含有:坐標(biāo)存儲(chǔ)模塊、對(duì)信號(hào)進(jìn)行控制的運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、對(duì)直流電機(jī)進(jìn)行驅(qū)動(dòng)控制的快速驅(qū)動(dòng)控制器L298N、對(duì)左控制電機(jī)與控制右電機(jī)進(jìn)行控制與驅(qū)動(dòng)的電機(jī)運(yùn)動(dòng)模塊,所述坐標(biāo)存儲(chǔ)模塊、參數(shù)指令模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、快速驅(qū)動(dòng)控制器L298N、PWM信號(hào)模塊和電機(jī)運(yùn)動(dòng)模塊之間電性連接。[0020]在本發(fā)明一個(gè)較佳實(shí)施例中,所述環(huán)境判斷單元中進(jìn)一步包含有中斷請(qǐng)求模塊,紅外傳感器發(fā)出的信號(hào)經(jīng)擋墻反射后由接收器接收后向運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元發(fā)出中斷請(qǐng)求,運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元接收所述中斷請(qǐng)求信號(hào)并作出相應(yīng)的響應(yīng);所述中斷請(qǐng)求模塊與運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元之間連接、所輸出PWM波經(jīng)快速驅(qū)動(dòng)控制器L298N輸送至電機(jī)運(yùn)動(dòng)模塊,L298N與電機(jī)運(yùn)動(dòng)模塊之間電性連接。
[0021]在本發(fā)明一個(gè)較佳實(shí)施例中,所述啟動(dòng)沖刺單元中進(jìn)一步包含有信息接收模塊、距離生成模塊,所述信息接收模塊與運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、距離生成模塊、快速驅(qū)動(dòng)控制器L298N和電機(jī)運(yùn)動(dòng)模塊之間相互連接;所輸出PWM波經(jīng)快速驅(qū)動(dòng)控制器L298N輸送至電機(jī)運(yùn)動(dòng)模塊,所述傳感器模塊、快速驅(qū)動(dòng)控制器L298N與電機(jī)運(yùn)動(dòng)模塊之間電性連接。
[0022]在本發(fā)明一個(gè)較佳實(shí)施例中,所述沖刺單元中進(jìn)一步包含有速度加減模塊、距離生成模塊和沖刺模塊,所述速度加減模塊、距離生成模塊、沖刺模塊電性連接至坐標(biāo)存儲(chǔ)?!缞A,所述沖刺模塊還進(jìn)一步包含有直線沖刺單元、轉(zhuǎn)向沖刺單元和曲線沖刺單元。
[0023]在本發(fā)明一個(gè)較佳實(shí)施例中,所述直線沖刺單元中進(jìn)一步包含有直線沖刺模塊,所述直線沖刺模塊與坐標(biāo)存儲(chǔ)模塊、參數(shù)指令模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、快速驅(qū)動(dòng)控制器L298N和電機(jī)運(yùn)動(dòng)模塊依次電性連接,所述光電編碼器和電流傳感器與所述運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元與快速驅(qū)動(dòng)控制器L298N電性連接。
[0024]在本發(fā)明一個(gè)較佳實(shí)施例中,所述轉(zhuǎn)向沖刺單元中進(jìn)一步包含有轉(zhuǎn)向沖刺模塊、曲線運(yùn)動(dòng)控制模塊、誤差補(bǔ)償模塊和陀螺儀旋轉(zhuǎn)模塊,所述轉(zhuǎn)向沖刺模塊、曲線運(yùn)動(dòng)控制模塊、誤差補(bǔ)償模塊與坐標(biāo)存儲(chǔ)模塊、參數(shù)指令模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、與參數(shù)轉(zhuǎn)化模塊之間相互連接,所輸出PWM波經(jīng)快速驅(qū)動(dòng)控制器L298N輸送至電機(jī)運(yùn)動(dòng)模塊,所述陀螺儀模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元與快速驅(qū)動(dòng)控制器L298N之間電性連接。
[0025]在本發(fā)明一個(gè)較佳實(shí)施例中,所述曲線沖刺單元中進(jìn)一步包含有曲線沖刺模塊、曲線運(yùn)動(dòng)控制模塊、坐標(biāo)更新模塊、誤差補(bǔ)償模塊、陀螺儀旋轉(zhuǎn)模塊,所述曲線沖刺模塊、曲線運(yùn)動(dòng)控制模塊、坐標(biāo)更新模塊、誤差補(bǔ)償模塊與所述坐標(biāo)存儲(chǔ)模塊、參數(shù)指令模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元之間相互連接、所輸出PWM波經(jīng)快速驅(qū)動(dòng)控制器L298N輸送至電機(jī)運(yùn)動(dòng)模塊,所述陀螺儀模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元與快速驅(qū)動(dòng)控制器L298N電性連接。
[0026]本發(fā)明的有益效果是:本發(fā)明提供一種能夠用于實(shí)現(xiàn)微電腦鼠快速連轉(zhuǎn)沖刺的伺服系統(tǒng),利用各個(gè)模塊之間的相互作用,將微電腦鼠連接為一個(gè)整體。利用全數(shù)字伺服控制系統(tǒng)和陀螺儀的旋轉(zhuǎn)作用,能夠令微電腦鼠在比賽中更加靈活、快速。
【專利附圖】
【附圖說明】
[0027]為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其它的附圖,其中:
圖1是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的結(jié)構(gòu)示意圖;
圖2為本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)的全數(shù)字最小硬件伺服單元框圖; 圖3為本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的沖刺模塊框圖;
圖4是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的微電腦鼠迷宮示意圖;
圖5是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的微電腦鼠二維示意圖;
圖6是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的為微電腦鼠速度曲線圖;
圖7是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的微電腦鼠自動(dòng)沖刺程序示意圖;
圖8是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的為微電腦鼠右轉(zhuǎn)沖刺示意圖;
圖9是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的微電腦鼠左轉(zhuǎn)沖刺示意圖;
圖10是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的連轉(zhuǎn)樓梯迷宮;
圖11是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的連轉(zhuǎn)樓梯示意圖;
圖12是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的連轉(zhuǎn)樓梯參數(shù)示意圖;
圖13是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的連轉(zhuǎn)U型迷宮;
圖14是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的連轉(zhuǎn)U型示意圖;
圖15是本發(fā)明一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng)一較佳實(shí)施例的連轉(zhuǎn)U型迷宮參數(shù)示意圖。
[0028]附圖中各部件的標(biāo)記如下:1、左控制電機(jī);2、右控制電機(jī);3、紅外傳感器。
【具體實(shí)施方式】
[0029]下面將對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅是本發(fā)明的一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0030]請(qǐng)參閱圖1、圖2和圖3,本發(fā)明實(shí)施例提供如下技術(shù)方案。
[0031]在一個(gè)實(shí)施例中,一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),包括:電池檢測(cè)模塊、按鍵信息模塊、全數(shù)字最小硬件伺服單元、左電機(jī)驅(qū)動(dòng)單元、右電機(jī)驅(qū)動(dòng)單元、左陀螺儀、右陀螺儀、左控制電機(jī)與右控制電機(jī),所述電池檢測(cè)模塊、按鍵信息模塊、全數(shù)字最小硬件伺服單元、左電機(jī)驅(qū)動(dòng)單元、右電機(jī)驅(qū)動(dòng)單元電性連接于左控制電機(jī)與控制右電機(jī);所述左陀螺儀和右陀螺儀電性連接于所述全數(shù)字最小硬件伺服單元;所述電池檢測(cè)模塊中設(shè)置有電荷顯示單元,所述電荷顯示單元與按鍵信息模塊之間電性連接,所述按鍵信息模塊中設(shè)置有自動(dòng)搜索模塊和調(diào)取信息模塊,所述自動(dòng)搜索模塊和調(diào)取信息模塊與按鍵信息模塊連接,根據(jù)按鍵信息伺服系統(tǒng)能夠?qū)崿F(xiàn)自動(dòng)搜索模塊和調(diào)取信息模塊的選取,所述按鍵信息模塊電性和伺服控制單元電性連接。
[0032]區(qū)別于現(xiàn)有技術(shù),在一個(gè)實(shí)施例中,所述全數(shù)字最小硬件伺服單元中設(shè)置有沖刺選擇模塊和沖刺運(yùn)動(dòng)模塊,信號(hào)由沖刺選擇模塊通過篩選后流向沖刺運(yùn)動(dòng)模塊后進(jìn)行傳輸。
[0033]所述沖刺選擇模塊進(jìn)一步包含有自動(dòng)沖刺模塊、快速?zèng)_刺模塊和設(shè)定速度沖刺模塊;所述沖刺運(yùn)動(dòng)模塊中進(jìn)一步包含有環(huán)境判斷單元、啟動(dòng)沖刺單元和沖刺單元,所述沖刺運(yùn)動(dòng)模塊中設(shè)置有紅外傳感器、光電編碼器和電流傳感器,所述紅外傳感器與環(huán)境判斷單元之間相互連接,所述沖刺運(yùn)動(dòng)模塊中進(jìn)一步包含有:坐標(biāo)存儲(chǔ)模塊、對(duì)信號(hào)進(jìn)行控制的運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、對(duì)直流電機(jī)進(jìn)行驅(qū)動(dòng)控制的快速驅(qū)動(dòng)控制器L298N、對(duì)左控制電機(jī)與控制右電機(jī)進(jìn)行控制與驅(qū)動(dòng)的電機(jī)運(yùn)動(dòng)模塊,所述坐標(biāo)存儲(chǔ)模塊、參數(shù)指令模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、快速驅(qū)動(dòng)控制器L298N、電機(jī)運(yùn)動(dòng)模塊之間電性連接。
[0034]所述環(huán)境判斷單元中進(jìn)一步包含有中斷請(qǐng)求模塊,紅外傳感器發(fā)出的信號(hào)經(jīng)擋墻反射后由接收器接收后向運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元發(fā)出中斷請(qǐng)求,運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元接收所述中斷請(qǐng)求信號(hào)并作出相應(yīng)的響應(yīng);所述中斷請(qǐng)求模塊與運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元之間連接、所輸出PWM波經(jīng)快速驅(qū)動(dòng)控制器L298N輸送至電機(jī)運(yùn)動(dòng)模塊,L298N與電機(jī)運(yùn)動(dòng)模塊之間電性連接。
[0035]所述啟動(dòng)沖刺單元中進(jìn)一步包含有信息接收模塊、距離生成模塊,所述信息接收模塊與運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、距離生成模塊、PWM信號(hào)模塊、快速驅(qū)動(dòng)控制器L298N和電機(jī)運(yùn)動(dòng)模塊電性連接;所述距離生成模塊與所述光電編碼器和電流傳感器電性連接至PWM信號(hào)模塊。
[0036]所述沖刺單元中進(jìn)一步包含有速度加減模塊、距離生成模塊和沖刺模塊,所述速度加減模塊、距離生成模塊、沖刺模塊電性連接至坐標(biāo)存儲(chǔ)模塊,所述沖刺模塊還進(jìn)一步包含有直線沖刺單元、轉(zhuǎn)向沖刺單元和曲線沖刺單元。
[0037]所述直線沖刺單元中進(jìn)一步包含有直線沖刺模塊,所述直線沖刺模塊與坐標(biāo)存儲(chǔ)模塊、參數(shù)指令模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、快速驅(qū)動(dòng)控制器L298N和電機(jī)運(yùn)動(dòng)模塊依次電性連接,所述光電編碼器和電流傳感器與所述運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元與快速驅(qū)動(dòng)控制器L298N電性連接。
[0038]所述轉(zhuǎn)向沖刺單元中進(jìn)一步包含有轉(zhuǎn)向沖刺模塊、曲線運(yùn)動(dòng)控制模塊、誤差補(bǔ)償模塊和陀螺儀旋轉(zhuǎn)模塊,所述轉(zhuǎn)向沖刺模塊、曲線運(yùn)動(dòng)控制模塊、誤差補(bǔ)償模塊與坐標(biāo)存儲(chǔ)模塊、參數(shù)指令模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、與參數(shù)轉(zhuǎn)化模塊之間相互連接,所輸出的PWM波經(jīng)快速驅(qū)動(dòng)控制器L298N輸送至電機(jī)運(yùn)動(dòng)模塊,所述陀螺儀模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元與快速驅(qū)動(dòng)控制器L298N之間電性連接。
[0039]所述曲線沖刺單元中進(jìn)一步包含有曲線沖刺模塊、曲線運(yùn)動(dòng)控制模塊、坐標(biāo)更新模塊、誤差補(bǔ)償模塊、陀螺儀旋轉(zhuǎn)模塊,所述曲線沖刺模塊、曲線運(yùn)動(dòng)控制模塊、坐標(biāo)更新模塊、誤差補(bǔ)償模塊與所述坐標(biāo)存儲(chǔ)模塊、參數(shù)指令模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元之間相互連接、所輸出PWM波經(jīng)快速驅(qū)動(dòng)控制器L298N輸送至電機(jī)運(yùn)動(dòng)模塊,所述陀螺儀模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元與快速驅(qū)動(dòng)控制器L298N電性連接。
[0040]為了能夠使微電腦鼠的快速連轉(zhuǎn)沖刺伺服系統(tǒng)更明顯的作用于微電腦鼠的運(yùn)動(dòng),請(qǐng)參閱圖4、圖5、圖6、圖7、圖8、圖9、圖10、圖11、圖12、圖13、圖14和圖15。
[0041]打開微電腦鼠電源瞬間,系統(tǒng)將會(huì)按照?qǐng)D7的方式完成沖刺。首先系統(tǒng)要完成初始化,然后等待按鍵信息,未接到按鍵信息命令之前,微電腦鼠在起點(diǎn)坐標(biāo)(0,0)等待控制器發(fā)出的沖刺命令。根據(jù)按鍵信息,本發(fā)明有以下三種沖刺方法:(I)按下START(啟動(dòng))鍵,系統(tǒng)放棄以前的迷宮信息,先進(jìn)行搜索,搜索完成后生成優(yōu)化的沖刺迷宮信息,微電腦鼠進(jìn)入自動(dòng)多次沖刺階段;(2)按下RESET (復(fù)位)+STRAT (啟動(dòng))鍵,系統(tǒng)調(diào)出已經(jīng)探索后的最優(yōu)迷宮,然后沿著起點(diǎn)開始快速向終點(diǎn)(7,7)、(7,8)、(8,7)、(8,8)沖刺;(3)按下RESET(復(fù)位)+STRAT (啟動(dòng))+SPEED (速度)鍵,系統(tǒng)調(diào)出已經(jīng)探索后的最優(yōu)迷宮,然后沿著起點(diǎn)以設(shè)定的沖刺速度開始快速向終點(diǎn)(7,7)、(7,8)、(8,7)、(8,8)沖刺。
[0042]微電腦鼠在起點(diǎn)坐標(biāo)(0,0)接到任務(wù)后,為了防止放錯(cuò)沖刺方向,其前方的紅外傳感器S1、S6對(duì)前方的環(huán)境進(jìn)行判斷,確定有沒有擋墻進(jìn)入運(yùn)動(dòng)范圍。(I)存在擋墻時(shí),向ARM9 (S3C2440A)發(fā)出中斷請(qǐng)求,ARM9 (S3C2440A)會(huì)對(duì)中斷做第一時(shí)間響應(yīng),然后禁止L298N的使能端ENA和ENB工作,封鎖微電腦鼠的左控制電機(jī)I和右控制電機(jī)2的PWM驅(qū)動(dòng)信號(hào),使其靜止在原地,然后二次判斷迷宮確定前方信息,防止信息誤判;(2)如果沒有擋墻進(jìn)入前方的運(yùn)動(dòng)范圍,微電腦鼠將進(jìn)行正常的沖刺。
[0043]在微電腦啟動(dòng)沖刺瞬間,傳感器S1、S2、S3、S4、S5、S6 (六個(gè)獨(dú)立的紅外發(fā)射管0PE5594A發(fā)出的紅外光經(jīng)接收器TSL262接受后轉(zhuǎn)化為周圍迷宮的信息)判斷周圍的環(huán)境并送給ARM9 (S3C2440A),然后由ARM9 (S3C2440A)根據(jù)沖刺迷宮信息生成圖6的梯形圖生成速度-時(shí)間運(yùn)動(dòng)圖的指令給定值,這個(gè)圖形包含的面積就是微電腦鼠左控制電機(jī)1、右控制電機(jī)2要運(yùn)行的距離S。然后結(jié)合光電編碼盤和電流傳感器的反饋生成驅(qū)動(dòng)兩軸直流電機(jī)的PWM波與方向。PWM波經(jīng)L298N后驅(qū)動(dòng)兩個(gè)獨(dú)立電機(jī),完成整個(gè)加速過程直到達(dá)到?jīng)_刺設(shè)定速度,并把處理數(shù)據(jù)通訊給ARM9 (S3C2440A),由ARM9 (S3C2440A)繼續(xù)處理后續(xù)的運(yùn)行狀態(tài)。
[0044]本發(fā)明舍棄了傳統(tǒng)單一速度沖刺模式,按照?qǐng)D6的速度和時(shí)間曲線控制微電腦鼠的加速和減速,梯形圖包含的面積為微電腦鼠運(yùn)動(dòng)Z格的距離。在微電腦鼠沿著Y軸向前快速?zèng)_刺過程中如果迷宮信息中顯示前方有Z格直線坐標(biāo)下沒有擋墻進(jìn)入前方的運(yùn)動(dòng)范圍,系統(tǒng)進(jìn)入沖刺子程序I。微電腦鼠將存儲(chǔ)其現(xiàn)在的坐標(biāo)(X,Y),ARM9(S3C2440A)把向前運(yùn)動(dòng)Z格的位置參數(shù)根據(jù)沖刺條件的不同計(jì)算出速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序生成形成當(dāng)前條件下的速度-時(shí)間梯形圖。由于直流電機(jī)的速度和電壓成正比例,根據(jù)這個(gè)梯形圖圖就可以生成控制左右輪直流電機(jī)的PWM波,然后ARM9 (S3C2440A)通過調(diào)整L298N管腳0UT1、0UT3為高電平,0UT2、0UT4為低電平,控制左右輪的左控制電機(jī)I和右控制電機(jī)2向前運(yùn)動(dòng)。當(dāng)?shù)竭_(dá)設(shè)定目標(biāo)時(shí),將更新其坐標(biāo)為(X,Y+Z),在其向前運(yùn)動(dòng)過程到達(dá)既定目標(biāo)時(shí),在Y+Z〈15的前提下,判斷其坐標(biāo)是不是(7,7)、(7,8)、(8,7)、(8,8)其中的一個(gè),如果不是將繼續(xù)更新其坐標(biāo),如果是的話通知控制器已經(jīng)沖刺到目標(biāo),然后置返航探索標(biāo)志為1,沖刺標(biāo)志為0,微電腦鼠準(zhǔn)備沖刺后的二次返程探索,去搜尋更優(yōu)的迷宮路徑。
[0045]在微電腦鼠沿著Y軸反向向前快速?zèng)_刺過程中如果迷宮信息中顯示前方有Z格直線坐標(biāo)下沒有擋墻進(jìn)入前方的運(yùn)動(dòng)范圍,系統(tǒng)進(jìn)入沖刺子程序I。微電腦鼠存儲(chǔ)其現(xiàn)在的坐標(biāo)(X,Y),ARM9 (S3C2440A)把向前運(yùn)動(dòng)Z格的位置參數(shù)根據(jù)沖刺條件的不同計(jì)算出速度參數(shù)以及加速度參數(shù)指令值。然后結(jié)合光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序生成形成當(dāng)前條件下的速度-時(shí)間梯形圖。由于直流電機(jī)的速度和電壓成正比例,根據(jù)這個(gè)梯形圖圖就可以生成控制左右輪直流電機(jī)的PWM波,然后ARM9 (S3C2440A)通過調(diào)整L298N管腳OUT 1、0UT3為高電平,0UT2、0UT4為低電平,控制左右輪的左控制電機(jī)I和右控制電機(jī)2向前運(yùn)動(dòng)。系統(tǒng)進(jìn)入沖刺子程序1,當(dāng)?shù)竭_(dá)設(shè)定目標(biāo)時(shí),將更新其坐標(biāo)為(X,Y-Z)。在其向前運(yùn)動(dòng)過程到達(dá)既定目標(biāo)時(shí),在確定Υ-Ζ>0的前提下,判斷其坐標(biāo)是不是(7,7)、(7,8)、(8,7)、(8,8)其中的一個(gè);如果不是將繼續(xù)更新其坐標(biāo),如果是的話通知控制器已經(jīng)沖刺到目標(biāo),然后置返航探索標(biāo)志為1,沖刺標(biāo)志為0,微電腦鼠準(zhǔn)備沖刺后的二次返程探索,去搜尋更優(yōu)的迷宮路徑。
[0046]在微電腦鼠沿著Y軸向前運(yùn)動(dòng)過程中如果有擋墻進(jìn)入前方的運(yùn)動(dòng)范圍,并且此時(shí)迷宮信息中左方有擋墻時(shí),系統(tǒng)進(jìn)入沖刺子程序2。微電腦鼠將存儲(chǔ)此時(shí)坐標(biāo)(X,Y),然后進(jìn)入圖8所示的曲線運(yùn)動(dòng)軌跡。在右沖刺轉(zhuǎn)彎時(shí),ARM9(S3C2440A)首先把行走直線很短的距離DashTurn_R90_Leading按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值。然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N。然后控制左右輪以相同的加速度和速度直線前進(jìn)。當(dāng)?shù)竭_(dá)既定目標(biāo)時(shí),傳感器參考值R90_FrontWallRef開始工作,防止外界干擾開始做誤差補(bǔ)償。誤差補(bǔ)償結(jié)束后開始調(diào)整直流左控制電機(jī)I和直流右控制電機(jī)2速度為DashTurn_R90_VelXl和DashTurn_R90_VelYl,此時(shí)控制器會(huì)把曲線運(yùn)動(dòng)軌跡DashTurn_R90_Arcl按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值。然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N。然后控制左右輪以恒定的比值Cl進(jìn)行轉(zhuǎn)彎。當(dāng)?shù)竭_(dá)既定目標(biāo)后,立即調(diào)整微電腦鼠速度為DashTUrn_R90_VelX2和DashTurn_R90_VelY2,此時(shí)控制器會(huì)把曲線運(yùn)動(dòng)軌跡DashTurn_R90_Arc2按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值。然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪以恒定的比值C2進(jìn)行轉(zhuǎn)彎。當(dāng)?shù)竭_(dá)既定目標(biāo)后,陀螺儀保證微電腦鼠在其控制下已經(jīng)右轉(zhuǎn)90度,控制器把直線行走很短的距離DashTurn_R90_Passing按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值。然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪以相同的加速度和速度前進(jìn)。當(dāng)?shù)竭_(dá)既定目標(biāo)后,通過四段不同的軌跡完成整個(gè)右轉(zhuǎn)彎的軌跡曲線運(yùn)動(dòng)。此時(shí)將更新其坐標(biāo)為(X+1,Y),在X+l〈15的前提下,判斷其坐標(biāo)是不是(7,7)、(7,8)、(8,7)、(8,8)其中的一個(gè)。如果不是將繼續(xù)更新其坐標(biāo),如果是的話通知控制器已經(jīng)沖刺到目標(biāo),然后置返航探索標(biāo)志為1,沖刺標(biāo)志為O,微電腦鼠準(zhǔn)備沖刺后的二次返程探索,去搜尋更優(yōu)的迷宮路徑。
[0047]在微電腦鼠沿著Y軸向前運(yùn)動(dòng)過程中如果有擋墻進(jìn)入前方的運(yùn)動(dòng)范圍,并且此時(shí)迷宮信息中左方有擋墻時(shí),系統(tǒng)進(jìn)入沖刺子程序3。微電腦鼠將存儲(chǔ)此時(shí)坐標(biāo)(X,Y),然后進(jìn)入圖9所示的曲線運(yùn)動(dòng)軌跡。在左沖刺轉(zhuǎn)彎時(shí),ARM9(S3C2440A)首先把行走直線很短的距離DashTurn_L90_Leading按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值。然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N。然后控制左右輪以相同的加速度和速度直線前進(jìn)。當(dāng)?shù)竭_(dá)既定目標(biāo)時(shí),傳感器參考值R90_FrontWallRef開始工作,防止外界干擾開始做誤差補(bǔ)償。誤差補(bǔ)償結(jié)束后開始調(diào)整直流左控制電機(jī)I和直流右控制電機(jī)2速度為DashTurn_L90_VelXl和DashTurn_L90_VelYl,此時(shí)控制器會(huì)把曲線運(yùn)動(dòng)軌跡DashTurn_L90_Arcl按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值。然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪以恒定的比值C3進(jìn)行轉(zhuǎn)彎。當(dāng)?shù)竭_(dá)既定目標(biāo)后,立即調(diào)整微電腦鼠速度為DashTUrn_L90_VelX2和DashTurn_L90_VelY2。此時(shí)控制器會(huì)把曲線運(yùn)動(dòng)軌跡DashTurn_L90_Arc2按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪以恒定的比值C4進(jìn)行轉(zhuǎn)彎。當(dāng)?shù)竭_(dá)既定目標(biāo)后,陀螺儀保證微電腦鼠在其控制下已經(jīng)左轉(zhuǎn)90度,控制器把直線行走很短的距離DashTurn_L90_Passing按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N。然后控制左右輪以相同的加速度和速度前進(jìn),當(dāng)?shù)竭_(dá)既定目標(biāo)后通過四段不同的軌跡完成整個(gè)左轉(zhuǎn)彎的軌跡曲線運(yùn)動(dòng)。此時(shí)將更新其坐標(biāo)為(X-1,Y),在X-l〈15的前提下,判斷其坐標(biāo)是不是(7,7)、(7,8)、(8,7)、(8,8)其中的一個(gè),如果不是將繼續(xù)更新其坐標(biāo),如果是的話通知控制器已經(jīng)沖刺到目標(biāo),然后置返航探索標(biāo)志為1,沖刺標(biāo)志為O,微電腦鼠準(zhǔn)備沖刺后的二次返程探索,去搜尋更優(yōu)的迷宮路徑。
[0048]在微電腦鼠沿著X軸、Y軸向前運(yùn)動(dòng)過程中如果有類似圖10的樓梯型迷宮擋墻進(jìn)入前方的運(yùn)動(dòng)范圍,系統(tǒng)進(jìn)入沖刺子程序4。微電腦鼠將存儲(chǔ)此時(shí)坐標(biāo)(X,Y),然后進(jìn)入圖
11、圖12所示的曲線運(yùn)動(dòng)軌跡。在一次左沖刺轉(zhuǎn)彎時(shí),ARM9 (S3C2440A)首先把行走直線很短的距離Leadingl按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪以相同的加速度和速度直線前進(jìn)。當(dāng)?shù)竭_(dá)既定目標(biāo)時(shí),把此時(shí)的迷宮坐標(biāo)更新為(Χ+1,Y),傳感器參考值L90_FrontWallRef開始工作,防止外界干擾開始做誤差補(bǔ)償。誤差補(bǔ)償結(jié)束后開始調(diào)整直流左控制電機(jī)I和直流右控制電機(jī)2速度為DashTurn_L90_VelXl和DashTurn_L90_VdYl,此時(shí)控制器會(huì)把曲線運(yùn)動(dòng)軌跡L_Arcl按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值。然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪的速度以恒定的比值進(jìn)行轉(zhuǎn)彎。當(dāng)?shù)竭_(dá)既定目標(biāo)后,立即調(diào)整微電腦鼠速度為DashTurn_L90_VelX2和DashTurn_L90_VelY2,此時(shí)控制器會(huì)把曲線運(yùn)動(dòng)軌跡L_Arc2按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪的速度以恒定的比值進(jìn)行轉(zhuǎn)彎。當(dāng)?shù)竭_(dá)既定目標(biāo)后,陀螺儀保證微電腦鼠在其控制下已經(jīng)左轉(zhuǎn)90度,控制器把直線行走很短的距離Passingl+Leading2,按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪以相同的加速度和速度前進(jìn),當(dāng)傳感器S5的值產(chǎn)生有高電平到低電平的躍變時(shí),更新微電腦鼠坐標(biāo)為(X+1,Y+1),微電腦鼠繼續(xù)以當(dāng)前的速度和加速前進(jìn)。當(dāng)?shù)竭_(dá)既定目標(biāo)時(shí),傳感器參考值R90_FrontWallRef開始工作,防止外界干擾開始做誤差補(bǔ)償。誤差補(bǔ)償結(jié)束后開始調(diào)整直流左控制電機(jī)I和直流右控制電機(jī)2速度為DashTurn_R90_VelXl和DashTurn_R90_VelYl,此時(shí)控制器會(huì)把曲線運(yùn)動(dòng)軌跡R_Arcl按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪速度以恒定的比值進(jìn)行轉(zhuǎn)彎。當(dāng)?shù)竭_(dá)既定目標(biāo)后,立即調(diào)整微電腦鼠速度為DashTurn_R90_VelX2和DashTurn_R90_VelY2,此時(shí)控制器會(huì)把曲線運(yùn)動(dòng)軌跡R_Arc2按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N。然后控制左右輪速度以恒定的比值進(jìn)行轉(zhuǎn)彎;當(dāng)?shù)竭_(dá)既定目標(biāo)后,陀螺儀保證微電腦鼠在其控制下右轉(zhuǎn)90度,控制器把直線行走很短的距離Passing2+Leading3按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N。然后控制左右輪以相同的加速度和速度前進(jìn),當(dāng)傳感器S2的值產(chǎn)生有高電平到低電平的躍變時(shí),微電腦鼠完成一個(gè)樓梯的沖刺,更新微電腦鼠坐標(biāo)為(X+2,Y+1)。依此類推,當(dāng)微電腦鼠完成Z格樓梯迷宮沖刺時(shí),在Z格的坐標(biāo)為(X+Z,Y+Z),沖出Z格樓梯迷宮的坐標(biāo)為(X+Z+1,Y+Z),在X+Z+l〈15和Y+Z〈15的前提下,判斷其坐標(biāo)是不是(7,7)、(7,8)、(8,7)、(8,8)其中的一個(gè)。如果不是將繼續(xù)更新其坐標(biāo),如果是的話通知控制器已經(jīng)沖刺到目標(biāo),然后置返航探索標(biāo)志為1,沖刺標(biāo)志為0,微電腦鼠準(zhǔn)備沖刺后的二次返程探索,去搜尋更優(yōu)的迷宮路徑;
在微電腦鼠沿著X軸、Y軸向前運(yùn)動(dòng)過程中如果有類似圖13的U型迷宮擋墻進(jìn)入前方的運(yùn)動(dòng)范圍,系統(tǒng)進(jìn)入沖刺子程序5。微電腦鼠將存儲(chǔ)此時(shí)坐標(biāo)(X,Y),然后進(jìn)入圖14、圖15所示的曲線運(yùn)動(dòng)軌跡。在一次左沖刺轉(zhuǎn)彎時(shí),ARM9(S3C2440A)首先把行走直線很短的距離Leadingl按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N。然后控制左右輪以相同的加速度和速度直線前進(jìn);當(dāng)?shù)竭_(dá)既定目標(biāo)時(shí),把此時(shí)的迷宮坐標(biāo)更新為(X+1,Y),傳感器參考值L90_FrontWallRef開始工作,防止外界干擾開始做誤差補(bǔ)償。誤差補(bǔ)償結(jié)束后,控制器會(huì)把曲線運(yùn)動(dòng)軌跡L_Arcl按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪的速度以恒定的比值轉(zhuǎn)彎。當(dāng)?shù)竭_(dá)既定目標(biāo)后,立即調(diào)整微電腦鼠的速度,控制器會(huì)把曲線運(yùn)動(dòng)軌跡L_Arc2按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪的速度以恒定的比值轉(zhuǎn)彎。當(dāng)?shù)竭_(dá)既定目標(biāo)后,控制器把直線行走很短的距離PaSSingl+Leading2,按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪以相同的加速度和速度前進(jìn)。當(dāng)傳感器S2的值產(chǎn)生有高電平到低電平的躍變時(shí),更新微電腦鼠坐標(biāo)為(X+1,Y+1),微電腦鼠繼續(xù)以當(dāng)前的速度和加速前進(jìn),當(dāng)?shù)竭_(dá)既定目標(biāo)時(shí),傳感器參考值L90_FrontWallRef?開始工作,防止外界干擾開始做誤差補(bǔ)償。誤差補(bǔ)償結(jié)束后,微電腦鼠繼續(xù)左轉(zhuǎn),控制器會(huì)把曲線運(yùn)動(dòng)軌按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪的速度以恒定的比值轉(zhuǎn)彎。當(dāng)?shù)竭_(dá)既定目 標(biāo)后,立即調(diào)整微電腦鼠的速度,控制器會(huì)把曲線運(yùn)動(dòng)軌跡L_Arc2按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪的速度以恒定的比值轉(zhuǎn)彎。當(dāng)?shù)竭_(dá)既定目標(biāo)后,控制器把直線行走很短的距離Passing2按照不同的沖刺條件時(shí)間要求轉(zhuǎn)化為速度參數(shù)以及加速度參數(shù)指令值,然后結(jié)合左控制電機(jī)I和右控制電機(jī)2上的光電編碼器和電流傳感器的反饋經(jīng)內(nèi)部位置、速度和加速度控制程序,生成控制左右輪的PWM波給L298N,然后控制左右輪以相同的加速度和速度前進(jìn)。到達(dá)既定目標(biāo)后,微電腦鼠完成一個(gè)U型迷宮的沖刺,更新微電腦鼠坐標(biāo)為(X,Y+1),并判斷其坐標(biāo)是不是(7,7)、(7,8), (8,7)、(8,8)其中的一個(gè)。如果不是將繼續(xù)更新其坐標(biāo),如果是的話通知控制器已經(jīng)沖刺到目標(biāo),然后置返航探索標(biāo)志為1,沖刺標(biāo)志為O,微電腦鼠準(zhǔn)備沖刺后的二次返程探索,去搜尋更優(yōu)的迷宮路徑。
[0049]當(dāng)微電腦鼠沖刺到達(dá)(7,7)、(7,8)、(8,7)、(8,8)后會(huì)準(zhǔn)備沖刺后的返程探索以便搜尋更優(yōu)的路徑,控制器會(huì)調(diào)出其已經(jīng)存儲(chǔ)的迷宮信息,然后計(jì)算出可能存在的其它最佳路徑,然后返程開始進(jìn)入其中認(rèn)為最優(yōu)的一條。
[0050]在本發(fā)明的具體實(shí)施例中,為了能夠?qū)崿F(xiàn)微電腦鼠快速?zèng)_刺準(zhǔn)確的坐標(biāo)計(jì)算功能,微電腦鼠左右的傳感器S2、S3和S4、S5會(huì)時(shí)刻對(duì)周圍的迷宮擋墻和柱子進(jìn)行探測(cè)。如果S2、S3或者S4、S5發(fā)現(xiàn)傳感器信號(hào)發(fā)生了躍變,則說明微電腦鼠進(jìn)入了迷宮擋墻和柱子的交接點(diǎn),此時(shí)側(cè)面?zhèn)鞲衅鱏2或者是S5會(huì)精確探測(cè)這一時(shí)刻。當(dāng)再次出現(xiàn)躍變時(shí),說明老鼠已經(jīng)開始離開當(dāng)前的迷宮格子,ARM9 (S3C2440A)會(huì)根據(jù)微電腦鼠當(dāng)前運(yùn)行的距離進(jìn)行計(jì)算并根據(jù)對(duì)傳感器反饋信息進(jìn)行補(bǔ)償。本發(fā)明在高速直流左控制電機(jī)I的X軸和Y軸上加入了 512線的光碼盤,由于精度較高,使得微電腦鼠的坐標(biāo)計(jì)算不會(huì)出現(xiàn)錯(cuò)誤,保證了微電腦鼠快速?zèng)_刺迷宮信息的準(zhǔn)請(qǐng)性。
[0051]在微電腦鼠進(jìn)入迷宮返程探索時(shí),其導(dǎo)航的傳感器S1、S2、S3、S4、S5、S6將工作,并把反射回來的光電信號(hào)送給ARM9(S3C2440A),經(jīng)ARM9(S3C2440A)運(yùn)算后確定現(xiàn)在迷宮所處位置。然后由ARM9 (S3C2440A)根據(jù)當(dāng)前迷宮生成PWM波和送控制信號(hào)給L298N:如果進(jìn)入已經(jīng)搜索的區(qū)域?qū)⒓哟驪WM波的占空比,使微電腦鼠進(jìn)行快速前進(jìn),減少迷宮搜索的時(shí)間;如果是未知返回區(qū)域則采用正常速度搜索,并時(shí)刻更新其坐標(biāo)(X,Y),并判斷其坐標(biāo)是不是(0,0),如果是置返航探索標(biāo)志為O,沖刺標(biāo)志為1,微電腦鼠進(jìn)入沖刺階段。
[0052]優(yōu)選地,在微電腦鼠運(yùn)動(dòng)過程中,如果系統(tǒng)出現(xiàn)了干擾,ARM9(S3C2440A)會(huì)根據(jù)當(dāng)前狀態(tài)對(duì)電流加以補(bǔ)償,快速調(diào)整電流環(huán)的PID參數(shù),使得系統(tǒng)快速穩(wěn)定下來,防止高速?zèng)_刺時(shí)干擾對(duì)系統(tǒng)的影響;為了能夠減少光源對(duì)微電腦鼠沖刺的干擾,本發(fā)明加入了光電傳感器S7,此傳感器會(huì)在微電腦鼠沖刺階段對(duì)周圍的異常光源進(jìn)行讀取,并自動(dòng)送給控制器做實(shí)時(shí)補(bǔ)償,消除了外界光源對(duì)沖刺的干擾。
[0053]在微電腦鼠快速?zèng)_刺過程中,電池提供的瞬時(shí)功率是一定的,在沖刺速度一定的條件下,加速度越大時(shí),需要的力矩就越大,此時(shí)需要電池提供的電流就越大,為了保護(hù)電池,本發(fā)明加入了電流傳感器,杜絕了加速時(shí)對(duì)電池的傷害。
[0054]優(yōu)選地,當(dāng)微電腦完成整個(gè)沖刺過程到達(dá)(7,7)、(7,8)、(8,7)、(8,8),微電腦鼠會(huì)置探索標(biāo)志為1,微電腦鼠返程探索回到起始點(diǎn)(0,0)。ARM9 (S3C2440A)將控制L298N使得微電腦起始點(diǎn)中心點(diǎn)停車,然后重新調(diào)整L298N的0UT1、0UT2、0UT3和0UT4的電平,使得左控制電機(jī)I和右控制電 機(jī)2以相反的方向運(yùn)動(dòng),并在陀螺儀的控制下,原地旋轉(zhuǎn)180度,然后停車I秒,二次調(diào)取迷宮信息。然后根據(jù)算法算出優(yōu)化迷宮信息后的最優(yōu)沖刺路徑,然后置沖刺標(biāo)志為1,系統(tǒng)進(jìn)入二次快速?zèng)_刺階段。然后按照沖刺----探索---沖刺,完成多次的沖刺,以達(dá)到快速?zèng)_刺的目的。
[0055]以上所述僅為本發(fā)明的實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其它相關(guān)的【技術(shù)領(lǐng)域】,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。
【權(quán)利要求】
1.一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),其特征在于:包括:電池檢測(cè)模塊、按鍵信息模塊、全數(shù)字最小硬件伺服單元、左電機(jī)驅(qū)動(dòng)單元、右電機(jī)驅(qū)動(dòng)單元、左陀螺儀、右陀螺儀、左控制電機(jī)與右控制電機(jī),所述電池檢測(cè)模塊、按鍵信息模塊、全數(shù)字最小硬件伺服單元、左電機(jī)驅(qū)動(dòng)單元、右電機(jī)驅(qū)動(dòng)單元電性連接于左控制電機(jī)與控制右電機(jī);所述左陀螺儀和右陀螺儀電性連接于所述全數(shù)字最小硬件伺服單元;所述電池檢測(cè)模塊中設(shè)置有電荷顯示單元,所述電荷顯示單元與按鍵信息模塊之間電性連接,所述按鍵信息模塊中設(shè)置有自動(dòng)搜索模塊和調(diào)取信息模塊,所述自動(dòng)搜索模塊和調(diào)取信息模塊與按鍵信息模塊連接,根據(jù)按鍵信息伺服系統(tǒng)能夠?qū)崿F(xiàn)自動(dòng)搜索模塊和調(diào)取信息模塊的選取,所述按鍵信息模塊電性和伺服控制單元電性連接。
2.根據(jù)權(quán)利要求1所述的一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),其特征在于:所述全數(shù)字最小硬件伺服單元中設(shè)置有沖刺選擇模塊和沖刺運(yùn)動(dòng)模塊,所述信號(hào)由沖刺選擇模塊通過篩選后流向沖刺運(yùn)動(dòng)模塊后進(jìn)行傳輸。
3.根據(jù)權(quán)利要求2所述的一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),其特征在于:所述沖刺選擇模塊進(jìn)一步包含有自動(dòng)沖刺模塊、快速?zèng)_刺模塊和設(shè)定速度沖刺模塊;所述沖刺運(yùn)動(dòng)模塊中進(jìn)一步包含有環(huán)境判斷單元、啟動(dòng)沖刺單元和沖刺單元,所述沖刺運(yùn)動(dòng)模塊中設(shè)置有紅外傳感器、光電編碼器和電流傳感器,所述紅外傳感器與環(huán)境判斷單元之間相互連接,所述沖刺運(yùn)動(dòng)模塊中進(jìn)一步包含有:坐標(biāo)存儲(chǔ)模塊、對(duì)信號(hào)進(jìn)行控制的運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、對(duì)直流電機(jī)進(jìn)行驅(qū)動(dòng)控制的快速驅(qū)動(dòng)控制器L298N、對(duì)左控制電機(jī)與控制右電機(jī)進(jìn)行控制與驅(qū)動(dòng)的電機(jī)運(yùn)動(dòng)模塊,所述坐標(biāo)存儲(chǔ)模塊、參數(shù)指令模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、快速驅(qū)動(dòng)控制器L298N、PWM信號(hào)模塊和電機(jī)運(yùn)動(dòng)模塊之間電性連接。
4.根據(jù)權(quán)利要求3所述的一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),其特征在于:所述環(huán)境判斷單元中進(jìn)一步包含有中斷請(qǐng)求模塊,紅外傳感器發(fā)出的信號(hào)經(jīng)擋墻反射后由接收器接收后向運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單兀發(fā)出中斷請(qǐng)求,運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元接收所述中斷請(qǐng)求信號(hào)并作出相應(yīng)的響應(yīng);所述中斷請(qǐng)求模塊與運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元之間連接、所輸出PWM波 經(jīng)快速驅(qū)動(dòng)控制器L298N輸送至電機(jī)運(yùn)動(dòng)模塊,L298N與電機(jī)運(yùn)動(dòng)模塊之間電性連接。
5.根據(jù)權(quán)利要求3所述的一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),其特征在于:所述啟動(dòng)沖刺單元中進(jìn)一步包含有信息接收模塊、距離生成模塊,所述信息接收模塊與運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、距離生成模塊、快速驅(qū)動(dòng)控制器L298N和電機(jī)運(yùn)動(dòng)模塊之間相互連接;所輸出PWM波經(jīng)快速驅(qū)動(dòng)控制器L298N輸送至電機(jī)運(yùn)動(dòng)模塊,所述傳感器模塊、快速驅(qū)動(dòng)控制器L298N與電機(jī)運(yùn)動(dòng)模塊之間電性連接。
6.根據(jù)權(quán)利要求3所述的一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),其特征在于:所述沖刺單元中進(jìn)一步包含有速度加減模塊、距離生成模塊和沖刺模塊,所述速度加減模塊、距離生成模塊、沖刺模塊電性連接至坐標(biāo)存儲(chǔ)模塊,所述沖刺模塊還進(jìn)一步包含有直線沖刺單元、轉(zhuǎn)向沖刺單元和曲線沖刺單元。
7.根據(jù)權(quán)利要求6所述的一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),其特征在于:所述直線沖刺單元中進(jìn)一步包含有直線沖刺模塊,所述直線沖刺模塊與坐標(biāo)存儲(chǔ)模塊、參數(shù)指令模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、快速驅(qū)動(dòng)控制器L298N和電機(jī)運(yùn)動(dòng)模塊依次電性連接,所述光電編碼器和電流傳感器與所述運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元與快速驅(qū)動(dòng)控制器L298N電性連接。
8.根據(jù)權(quán)利要求6所述的一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),其特征在于:所述轉(zhuǎn)向沖刺單元中進(jìn)一步包含有轉(zhuǎn)向沖刺模塊、曲線運(yùn)動(dòng)控制模塊、誤差補(bǔ)償模塊和陀螺儀旋轉(zhuǎn)模塊,所述轉(zhuǎn)向沖刺模塊、曲線運(yùn)動(dòng)控制模塊、誤差補(bǔ)償模塊與坐標(biāo)存儲(chǔ)模塊、參數(shù)指令模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元、與參數(shù)轉(zhuǎn)化模塊之間相互連接,所輸出PWM波經(jīng)快速驅(qū)動(dòng)控制器L298N輸送至電機(jī)運(yùn)動(dòng)模塊,所述陀螺儀模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元與快速驅(qū)動(dòng)控制器L298N之間電性連接。
9.根據(jù)權(quán)利要求6所述的一種基于ARM9兩輪微電腦鼠快速連轉(zhuǎn)沖刺伺服系統(tǒng),其特征在于:所述曲線沖刺單元中進(jìn)一步包含有曲線沖刺模塊、曲線運(yùn)動(dòng)控制模塊、坐標(biāo)更新模塊、誤差補(bǔ)償模塊、陀螺儀旋轉(zhuǎn)模塊,所述曲線沖刺模塊、曲線運(yùn)動(dòng)控制模塊、坐標(biāo)更新模塊、誤差補(bǔ)償模塊與所述坐標(biāo)存儲(chǔ)模塊、參數(shù)指令模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元之間相互連接、所輸出PWM波經(jīng)快速驅(qū)動(dòng)控制器L298N輸送至電機(jī)運(yùn)動(dòng)模塊,所述陀螺儀模塊、運(yùn)動(dòng)控制器ARM9轉(zhuǎn)化單元與快 速驅(qū)動(dòng)控制器L298N電性連接。
【文檔編號(hào)】G05D1/02GK103529839SQ201310469093
【公開日】2014年1月22日 申請(qǐng)日期:2013年10月10日 優(yōu)先權(quán)日:2013年10月10日
【發(fā)明者】王應(yīng)海, 張好明 申請(qǐng)人:蘇州工業(yè)園區(qū)職業(yè)技術(shù)學(xué)院