LPC2106在足球機(jī)器人控制中的應(yīng)用設(shè)計
摘要:足球機(jī)器人融合了計算機(jī)視覺、模式識別、決策對策、自動控制、無線通信、多智能體合作等多項技術(shù),具有極高的研究價值。本文設(shè)計了基于ARM7微處理器的集中視覺足球機(jī)器人底層控制系統(tǒng),簡化了系統(tǒng)設(shè)計,滿足微型機(jī)器人的控制需要。同時,也有利于足球機(jī)器人自主化的轉(zhuǎn)型和發(fā)展。
關(guān)鍵詞:足球機(jī)器人 嵌入式系統(tǒng) LPC2106 ARM7 PTR2000
以應(yīng)用為中心的嵌入式系統(tǒng),已經(jīng)深入到生活的各個方面。相對于其它領(lǐng)域,智能機(jī)器人系統(tǒng)可以說是嵌入式系統(tǒng)應(yīng)用最典型、最廣泛的領(lǐng)域之一。本文對嵌入式系統(tǒng)在足夠機(jī)器人底層控制系統(tǒng)中的應(yīng)用進(jìn)行研究和設(shè)計。
1 足球機(jī)器人系統(tǒng)
足球機(jī)器人是計算機(jī)視覺、模式識別、決策對策、自動控制、無線通信、智能體設(shè)計與電力傳動、多智能體合作等多項技術(shù)的結(jié)合體,是一個典型的智能機(jī)器人系統(tǒng)。足球機(jī)器人比賽集高科技、娛樂、競技于一體,雖歷時不長,但已經(jīng)成為國際上廣泛開展的高技術(shù)對抗活動,引起社會廣泛的關(guān)注。研究與開發(fā)足球機(jī)器人系統(tǒng),參加機(jī)器人足球賽是研究智能機(jī)器人,跟蹤國際高科技理論技術(shù)的理想切入點,同時也是嵌入式計算機(jī)系統(tǒng)理論聯(lián)系實際的極富生命力的成長點。
從國內(nèi)外的比賽情況來看,目前主要是集中視覺的足球機(jī)器人比賽。如圖1所示,在整個比賽中,視覺系統(tǒng)通過CCD攝像頭和圖像采集卡對場上情景進(jìn)行實時采集和處理,把辨識結(jié)果送給決策系統(tǒng),通過無線發(fā)射器向車體系統(tǒng)發(fā)出一系列控制命令。機(jī)器人根據(jù)主機(jī)命令做出反應(yīng),在場上運動,同時能通過譯碼器進(jìn)行位置控制以及基于傳感器進(jìn)行自動避障和簡單識別環(huán)境。
通常足球機(jī)器人系統(tǒng)可以劃分為機(jī)器人(車體)子系統(tǒng)、通信子系統(tǒng)、視覺子系統(tǒng)和決策子系統(tǒng)四個部分,通過計算機(jī)視覺子系統(tǒng)閉環(huán)而構(gòu)成智能決策和控制系統(tǒng)(如圖2)。從圖2中可以看到,足球機(jī)器人車體是整個系統(tǒng)的執(zhí)行機(jī)構(gòu),它直接體現(xiàn)了整個系統(tǒng)的性能。小車的性能主要由車體性能與車載嵌入式控制系統(tǒng)——微型足球機(jī)器人底層控制系統(tǒng)決定。當(dāng)小車車體具有了良好的運動性能后,小車的性能就由車載嵌入式系統(tǒng)決定了。因此構(gòu)建一個快速、安全、可靠的實時嵌入式系統(tǒng)是整個系統(tǒng)的關(guān)鍵。
2 系統(tǒng)設(shè)計和實現(xiàn)
2.1 系統(tǒng)任務(wù)
通過無線通信系統(tǒng)接受決策子系統(tǒng)傳來的控制指令;根據(jù)運動指令控制小車左右輪轉(zhuǎn)速;通過傳感器判斷場上環(huán)境信息,輔助機(jī)器人定位及運動。
2.2 微處理器選型
傳統(tǒng)的微處理器如51、96系列應(yīng)用于機(jī)器人系統(tǒng),雖然開發(fā)周期短,成本低,但其實時性不好,復(fù)雜的控制算法難以實現(xiàn);另外,增加的外圍電路數(shù)據(jù)轉(zhuǎn)換速度慢,使機(jī)器人的性能得不到充分的發(fā)揮。高速DSP的出現(xiàn)雖然使得系統(tǒng)模塊化和全數(shù)字化,但其開發(fā)套件成本高。與DSP具有同等性能的ARM微處理器資源豐富,具有很好的通用性,其主要技術(shù)優(yōu)點是高性能、低價格、低功耗,可以廣泛的應(yīng)用于各個領(lǐng)域,因此將ARM應(yīng)用于機(jī)器人控制系統(tǒng)不失為一種好的策略。
LPC2106是飛利浦帶有一個支持實時仿真和跟蹤的ARM7TDMI-S微處理器,嵌入128KB高速Flash存儲器。采用3級流水線技術(shù),取指、譯碼和執(zhí)行同時進(jìn)行,能夠并行處理指令,提高CPU運行速度。由于具有非常小的尺寸和極低的功耗,非常適用于那些將小型化作為主要要求的應(yīng)用。多個32位定時器、PWM輸出和32個GPIO使它特別適用于工業(yè)控制和小型機(jī)器人系統(tǒng)。本文就是以LPC2106為核心,設(shè)計結(jié)構(gòu)簡單、性能穩(wěn)定的足球機(jī)器人車體系統(tǒng)。
2.3 車體系統(tǒng)設(shè)計
采用輸出軸配有光電編碼器的小型直流電機(jī)作為驅(qū)動電路。LPC2106產(chǎn)生的PWM波經(jīng)專門的集成電路雙H橋驅(qū)動器L298放大,驅(qū)動左右輪電機(jī)。編碼器輸出兩路具有90度相位差的脈沖,經(jīng)正交脈沖解碼,為CPU提供反饋的計數(shù)值和轉(zhuǎn)動方向。LPC2106透過無線接收模塊接收主機(jī)命令,并融合外傳感器電路反饋的環(huán)境變量進(jìn)行電機(jī)的PID閉環(huán)控制。CPU保留JTAG在線調(diào)試接口,方便程序的編寫、下載和升級。系統(tǒng)硬件組成原理圖如圖3所示。
(1)電機(jī)與驅(qū)動電路
微型直流電機(jī)以其良好的線性特性、優(yōu)異的控制性能和非常高的效率廣泛的應(yīng)用于小功率系統(tǒng)中。為了控制直流電動機(jī),采用定頻脈寬調(diào)制(PWM)控制。這里,由于LPC2106本身就帶有6個PWM輸出口,直接輸出控制信號即可,無須另加電路。不過,其輸出的PWM波功率有限,須由驅(qū)動電路放大后才能驅(qū)動電機(jī)。
考慮到電壓、電流的等級尺寸、外觀等因素,采用了L298來代替三級管所構(gòu)成的驅(qū)動電路。L298驅(qū)動電路如圖4所示。
L298是恒壓恒流雙H橋集成電機(jī)芯片,可同時控制兩個電機(jī),且輸出電流可達(dá)到2A。L298的EN A(第6引腳)、EN B(第11引腳)分別與LPC2106的PWM4和PWM6相連,作為調(diào)制信號。SENSE A,SENSE B為電流反饋引腳。電機(jī)控制方向引腳如表1所列。
表1 L298控制引腳使能邏輯關(guān)系
ENA(B) | IN1(IN3) | IN2(IN4) | 電機(jī)運行情況 |
H | H | L | 正轉(zhuǎn) |
H | L | H | 反轉(zhuǎn) |
H | 同IN2(IN4) | 同IN1(IN3) | 快速停止 |
L | X | X | 停止 |
Vss電壓最小為4.5V,最大可達(dá)36V;Vs電壓最大值也是36V。但經(jīng)過實驗,Vs電壓應(yīng)該比Vss電壓高,否則有時會出現(xiàn)失控現(xiàn)象。
(2)無線接收模塊
小車通過無線接收模塊接收主機(jī)發(fā)出的命令進(jìn)行運動,通信的高速性、穩(wěn)定性和準(zhǔn)確性至關(guān)重要,它將直接影響整個系統(tǒng)的采樣周期。采用PTR2000模塊作為控制核心,它的顯著特別是所需要外圍元件少,設(shè)計非常的方便。傳統(tǒng)的無線通信電路方案不是電路復(fù)雜就是調(diào)試?yán)щy,PTR2000是一款基于nRF401芯片的無線數(shù)據(jù)收發(fā)模塊,最高通信速率為20Kb/s,工作距離為10m內(nèi)。采用抗干擾能力較強(qiáng)的FSK調(diào)制/解調(diào)方式,其工作頻率穩(wěn)定可靠,功耗極低且靈敏度極高,非常適合小型化的設(shè)計且其頻率433.92MHz與434.33MHz可選,很好地滿足了比賽的要求。
圖5給出了PTR2000與LPC2106的接口電路圖。其中,DO、DIIV與分別LPC2106的TXD0(13引腳)和RXD0(14引腳)相連,作為串行通信的通道。CS為PTR2000模塊的頻率選擇信號,PWR為模塊節(jié)能引腳,正常工作為高電平。TXEN是模塊發(fā)射接收控制,由LPC2106的I/O口控制。PRT2000是收發(fā)一體的集成芯片,采用3.3V供電,可以與LPC2106進(jìn)行無縫連接。PRT2000作為發(fā)射端與PC機(jī)相連時,需要通過一個電平轉(zhuǎn)換器(這里用MAX3232)轉(zhuǎn)換成RS-232電平。
主機(jī)采用廣播式通信方式,依次發(fā)送13個字節(jié),如圖6所示,足球機(jī)器人根據(jù)ID指針去響應(yīng)相應(yīng)的字節(jié),并校驗啟動位及自身ID校驗字節(jié),進(jìn)行取舍。
(3)傳感器模塊
場上形勢瞬息萬變,單純依靠視覺系統(tǒng),經(jīng)常出現(xiàn)空跑、頂牛或帶球丟失等情況。為了穩(wěn)定帶球以及避免碰撞,有必要增加相應(yīng)的傳感器來識別場上的物體,實現(xiàn)避障與帶球功能。
(4)電源模塊
系統(tǒng)用同一電源給IC和電機(jī)供電,電池采用8.4V的可充電鋰電池。除直接給電機(jī)供電外,還需分出5V給外圍設(shè)備供電,由于LPC2106是雙電源供電,CPU內(nèi)核為1.8V,I/O口需要3.3V,所以電流電壓經(jīng)7805轉(zhuǎn)換成5V電壓,由線性穩(wěn)壓器TPS76818QD與TPS75733KTT分別提供1.8V和3.3V電壓。同時采用專門的電源監(jiān)控芯片MAX708S,提高了系統(tǒng)的可靠性。
2.4 程序設(shè)計
程序主要由初始化程序、串行通信程序,可調(diào)整PWM波輸出程序、I/O口控制程序組成。主函數(shù)是一個響應(yīng)中斷的循環(huán)結(jié)構(gòu),如圖7所示。
ARM7是一個支持多個操作系統(tǒng)移植的芯片。使用合適的實時操作系統(tǒng)(例如μCLinux等)來代替循環(huán)等待結(jié)構(gòu)的主程序,使程序設(shè)計的任務(wù)大大簡化,方便了系統(tǒng)任務(wù)的擴(kuò)充,有利于系統(tǒng)的升級和轉(zhuǎn)型。從系統(tǒng)移植的角度看,ARM比傳統(tǒng)的51、96系列,甚至DSP單片機(jī)都具有明顯的優(yōu)越性。
3 結(jié)論
本文研究和設(shè)計一個基于ARM7微處理器的車載嵌入式系統(tǒng),不僅滿足了微型足球機(jī)器人控制系統(tǒng)的要求,同時,也為機(jī)器人的轉(zhuǎn)型應(yīng)用提供了良好的技術(shù)支持。