機(jī)器人小車車體主要由車架、車輪、電機(jī)、減速裝置、驅(qū)動電源、單片機(jī)控制電路與無線接收模塊構(gòu)成。它可以按主機(jī)發(fā)出的命令調(diào)整左、右輪轉(zhuǎn)速,以保證按預(yù)定的軌跡運(yùn)動。為適應(yīng)激烈對抗的比賽環(huán)境,機(jī)器人應(yīng)具有高度的機(jī)動性和靈活性。能平穩(wěn)迅速地完成前進(jìn)、后退、轉(zhuǎn)向及急停等動作,運(yùn)動速度和方向要足夠精確。為實現(xiàn)上述性能,機(jī)器人對稱性要好,雙輪由雙電機(jī)分別驅(qū)動,且加;找出幾次都沒變化的開入量比較相鄰兩次開入量:輸出穩(wěn)定的開入量;隊列指針指向下一個一38一接上頁)adda,ro;循環(huán)隊列副本區(qū)賦值;判別啟動條件;比較本次與上次開入量狀態(tài);保存比較結(jié)果;a!=o有變化,進(jìn)行濾波處理;本次沒有變,檢查前幾次;是否變化7i89er:ro3o:;啟動條件滿足,進(jìn)行濾波處理:為o的位開入量己穩(wěn)定3:8a;處理濾波結(jié)果4結(jié)束語狀態(tài)計數(shù)法不受采集次數(shù)的約束,然而與開入量通道數(shù)有關(guān);而窗口濾波法基本不受開入量通道數(shù)的約束,但與采集次數(shù)有關(guān)。因此在采集次數(shù)較多,通道數(shù)少的應(yīng)用中應(yīng)采用狀態(tài)計數(shù)法;在采集次數(shù)較少,通道數(shù)多的應(yīng)用中采用窗口濾波法。
工精度高。由于比賽中對運(yùn)動速度和方向有很高的精度要求,所以需要設(shè)計好運(yùn)動控制模塊。
1模塊設(shè)計首先討論小車接收命令后的控制過程。無線接收模塊將命令字串行發(fā)送到單片機(jī)。每1幀命令字為3個字節(jié)。
第1字節(jié)為小車的標(biāo)志位;第2字節(jié)為小車的左輪速度設(shè)定值;第3字節(jié)直接為小車的右輪速度設(shè)定值。接收到命令字后,先將命令字的第1字節(jié)(即小車的標(biāo)志位)同本小車的標(biāo)志位對比,只有2個標(biāo)志位完全一樣時,才接收命令字的后2個字節(jié)。然后,單片機(jī)接收光電譯碼器的反饋信息,通過運(yùn)動控制器pwm模塊驅(qū)動電機(jī)正反轉(zhuǎn),從而實現(xiàn)對左、右輪速度的閉環(huán)控制,使左、右輪速度達(dá)到設(shè)定值(即主機(jī)發(fā)送的命令值),完成各種基本運(yùn)動。系統(tǒng)硬件結(jié)構(gòu)如所示。
1.1cpu的選擇cpu的選擇很關(guān)鍵,要從效率、功能、經(jīng)濟(jì)等多方面考慮。美國微芯公司(microchip)推出的cmos8位pic系列單片機(jī),具有實用、低價、指令集小、體積小、功能強(qiáng)等特點。pic16687x是微芯公司的中檔產(chǎn)品,采用14位的類risc指令系統(tǒng),在保持低價格的前提下,增加了a/ =轉(zhuǎn)換器、內(nèi)部存儲器、比較輸出、捕捉輸入、pwm輸出、i2c總線和spi總線接口電路、異步串行通信(usart)接口電路、模擬電壓比較器、lc=驅(qū)動、flash程序存儲器等許多功能。
這種單片機(jī)具有如下特點:簡單性:采用類risc指令集,指令數(shù)目少,開發(fā)容易,周期短。
高速:pic采用哈佛總線和類精簡指令集,指令的執(zhí)行速度比一般的單片機(jī)要快45倍。
低功耗:pic采用cmos電路設(shè)計,結(jié)合了諸多的節(jié)電特性,使其功耗很低。
配備有otp(onetimeprogrammable)型、eprom型及flash型等多種形式的芯片,使產(chǎn)品開發(fā)更容易、快捷。
最重要的一點是采用pic可以省略運(yùn)動控制器,pic166876單片機(jī)內(nèi)部集成有2個ccp(捕捉、比較、脈寬調(diào)制pwm)模塊。當(dāng)它工作在pwm方式下時,具有2個脈沖寬度調(diào)制輸出通道,它們可以產(chǎn)生寬度和周期均由編程決定的pwm波形。通過pwm來調(diào)整電壓控制電機(jī)轉(zhuǎn)速。由于cpu自帶了pwm來控制電機(jī),所以完全可以省去運(yùn)動控制器。
綜上所述并基于性價比等綜合考慮,采用pic166876最為理想,它有28引腳,開發(fā)效率高、體積小、價格低,能很好地滿足需要。
1.2電機(jī)與減速器的設(shè)計小電機(jī)有直流電機(jī)和步進(jìn)電機(jī)二種。步進(jìn)機(jī)的優(yōu)點是控制簡便,但受尺寸限制,不好實施。超小型的直流電機(jī)生產(chǎn)廠家則較多,規(guī)格也較齊全,可根據(jù)具體情況進(jìn)行選擇。一般情況下,工作電壓應(yīng)在312v,空載轉(zhuǎn)速8000-pm左右。電機(jī)一旦選定,額定轉(zhuǎn)速就確定了。機(jī)器人的線速度最小應(yīng)大于50cm/s.基于這2個約束條件可以進(jìn)行減速器的設(shè)計。減速器就是齒輪盒,即通過2半徑不同、互相嚙合的齒輪構(gòu)成,工作原理很簡單。使用減速器的目的是降低電機(jī)的轉(zhuǎn)速,實際不需要小車達(dá)到如此高的速度。每輛小車需配2個齒輪盒,分別同電機(jī)和小車車輪相連。
根據(jù)機(jī)器人平均線速度的要求(按100cm/s計算),小車輪半徑!一般為23cm.設(shè)"(cm/s)為小車的線速度,(cm)為小車的輪半徑,為電機(jī)轉(zhuǎn)速,n為齒輪的減速比,pi=3.1415926.由公式"=(2xpix!xn)/(60xn),按平均線速度要求,可計算出減速比約為1:6左右。還可稍降一點,將小車的車輪半徑!=2cm,取齒輪的減速比n=14,=8000帶入上,得到fmax=120cm/s,這一速度值可滿足小車的要求。
1.3測速裝置的設(shè)計小車實際運(yùn)動過程中,由于慣性及機(jī)械上的原因以及快速制動的需要,車輪的實際轉(zhuǎn)速不可能完全等于計算值,這就需要有測速裝置來構(gòu)成小車速度的閉環(huán)反饋,使其速度在短時間內(nèi)達(dá)到設(shè)定值。一般有二種方案:采用霍爾傳感器。在車輪上安裝磁性物質(zhì),然后通過霍爾元件去感應(yīng)。小車車輪每旋轉(zhuǎn)1周,霍爾元件感應(yīng)到磁性物質(zhì)便會觸發(fā)1個脈沖,cpu對脈沖進(jìn)行計數(shù),再記錄所用時間,經(jīng)簡單計算便可得到轉(zhuǎn)速。例如在分鐘內(nèi)統(tǒng)計了x個脈沖,那么轉(zhuǎn)速=x/%.這種方法的優(yōu)點是經(jīng)濟(jì)且結(jié)構(gòu)簡單;缺點是計數(shù)不精確,導(dǎo)致控制上的不精確。由于足球機(jī)器人控制要求精度高,故不宜使用此種方法。
光電碼盤又名光電譯碼器,主要是用來測量轉(zhuǎn)速,它構(gòu)成小車速度的閉環(huán)反饋。光電碼盤具有響應(yīng)速度快、可靠性高,測速準(zhǔn)確等優(yōu)點。光電碼盤主要由光發(fā)射器照射下,通過光電碼盤的盤縫,不斷輸出光電脈沖信號。
輪速同光電脈沖的個數(shù)有著一一對應(yīng)的關(guān)系。光電碼盤一39一分別輸出a、b 2個信號,a代表車輪正轉(zhuǎn)時輸出的脈沖,b代表車輪反轉(zhuǎn)時輸出的脈沖。輸出脈沖如所示。
由可發(fā)現(xiàn),當(dāng)車輪作順時針轉(zhuǎn)動時,a脈沖超前b脈沖1/4個周期;當(dāng)車輪作逆時針轉(zhuǎn)動時,a脈沖落后b脈沖1/4個周期。cpu根據(jù)a、b脈沖的相位關(guān)系判斷車輪的正反轉(zhuǎn)。如cpu讀取光電碼盤的輸出信號,當(dāng)檢測到狀態(tài)ab由00-01-11-10-00時,說明車輪在逆時針轉(zhuǎn)動;當(dāng)檢測到狀態(tài)ab由說明車輪在順時針轉(zhuǎn)動。
光電碼盤的輸入很簡單,只需+5v電源和2根地線輸入。輸出為2個脈沖信號a和b,使用方便。它的一項重要的參數(shù)是脈沖比,即車輪每轉(zhuǎn)1圈產(chǎn)生的脈沖數(shù)。脈沖比越高,精度越高,但會使運(yùn)算量加大,應(yīng)權(quán)衡考慮。本設(shè)計選擇脈沖比為128的光電碼盤,能滿足系統(tǒng)的精度要求,同時運(yùn)算量不大。
每輛小車均配備2個光電碼盤,一般光電碼盤均同直流電機(jī)封裝在一起。
1.4電機(jī)驅(qū)動芯片的選擇cpu輸出p1m信號,電壓為脈沖形式。由于輸出的電流很小,不能使電機(jī)轉(zhuǎn)動,直接將cpu的輸出和直流電機(jī)的輸入相連是不能使電機(jī)轉(zhuǎn)動的。使用電機(jī)驅(qū)動芯片的目的就是將cpu的輸出電流放大,從而獲得足夠大的力矩,驅(qū)動電機(jī)轉(zhuǎn)動。
本設(shè)計選用的是意法半導(dǎo)體聯(lián)合公司(sgs-thomson<生產(chǎn)的電機(jī)驅(qū)動芯片l298n.l298n為含有15個引腳的直插式芯片,其主要性能:(1)體積小:長x寬x高=;(2)操作電壓范圍大:操作電壓fs范圍從4~46v;(3)抗干擾能力強(qiáng):低于1.5v的電壓均視為低電平,對噪聲有較強(qiáng)的抑制作用;(4)配備散熱片,減少溫度對電子元器件的影響;(5)邏輯電平fss為+5v;(6)工作效率高:1塊l298n可以驅(qū)動2臺電機(jī),故每輛小車只需配備1塊l298n;(7)輸出電流大:l298n可以將電流放大l298n共有15根引腳,要同cpu、電源、直流電機(jī)相連。具體連接方式可其技術(shù)資料。
上面已經(jīng)提到pic16f876單片機(jī)內(nèi)部集成有2個ccp模塊。當(dāng)它工作在p1m方式下時,相應(yīng)引腳上可以輸出分辨率為8位或10位的p1m波形。此時必須將trisc寄存器中的第2位清0,以設(shè)置引腳為輸出狀態(tài)。
p1m的輸出有一個時基(周期)和一個保持為高電平的時間,p1m的頻率就是周期的倒數(shù)。p1m的周期可通過向tmr2的周期寄存器pr2寫入設(shè)定,其計算公式:p1m改變pr2寄存器的值,就可以控制輸出的p1m波形的頻率。通過寫入ccpr1l寄存器和ccp1con控制器的4~5位,可以得到p1m的高電平時間設(shè)定值,分辨率可達(dá)10位;由8位的ccpr1l值(作為10位中的高8位)和控制寄存器ccp1con中的第4~5位(作為10位中的低2位)組成。用以下方程可以計算p1m的高電平時間:p1m高電平時間=(ccpr1l:ccp1con(bit5~bit4)x在pr2―定的情況下,通過控制ccpr1l寄存器和ccp1con控制器位第4~5位的值,就可以控制輸出的p1m波形的占空比。將ccp1con寄存器的ccp1m3~ccp1m0位設(shè)置成1100,就可以使ccp1模塊工作于p1m方式。要把ccp模塊設(shè)置為p1m操作時,需按5步進(jìn)行:1)向pr2寄存器寫入相應(yīng)的值,以設(shè)定p1m周期;(2)向ccpr1l和控制寄存器ccp1con中的第5位、第4位寫入相應(yīng)的值,以設(shè)定p1m高電平時間;(3)通過對trisc的第2位清0,以設(shè)定rc2/ccp1引腳為輸出狀態(tài);(4)設(shè)置tmr2的前分頻值,并通過t2con寫入,以使tmr2使能;(5)設(shè)定ccp1模塊為p1m操作。
2小結(jié)驅(qū)動與運(yùn)動控制模塊是足球機(jī)器人小車硬件設(shè)計中的難點和重點,本文詳細(xì)介紹了小車子系統(tǒng)該部分的設(shè)計。其中采用的都是較常用、市面上容易買到的芯片和部件,在滿足控制精確性的基礎(chǔ)上考慮了經(jīng)濟(jì)實用特性,且結(jié)構(gòu)簡潔。據(jù)此設(shè)計出的小車子系統(tǒng)在原理上是完全可行的,也是容易實現(xiàn)的。足球機(jī)器人的研制開發(fā)必將由大學(xué)實驗室走向社會、面向大眾?;谶@種方向,今后的設(shè)計應(yīng)把側(cè)重點從精確控制轉(zhuǎn)向簡潔和經(jīng)濟(jì),使這項高科技運(yùn)動適應(yīng)大眾化的需求。










