TMS320F2812在足球機(jī)器人上的應(yīng)用 作者: 時(shí)間:2007-03-09 來(lái)源:網(wǎng)絡(luò) 加入技術(shù)交流群 掃碼加入和技術(shù)大咖面對(duì)面交流海量資料庫(kù)查詢(xún) 收藏 摘要:介紹了RoboCup小型組足球機(jī)器人的結(jié)構(gòu)及其底層控制系統(tǒng)的性能要求,詳細(xì)闡述了TMS320F2812作為主控芯片在足球機(jī)器人底層控制中的地位及其在通訊、電機(jī)控制、帶球和擊挑球控制等方面的具體應(yīng)用。 關(guān)鍵詞:TMS320F2812 足球機(jī)器人 控制系統(tǒng) 機(jī)器人研究是近年來(lái)國(guó)際上一個(gè)極為活躍的研究方面,涉及了模式識(shí)別、人工智能等眾多學(xué)科。RoboCup小型組(也稱(chēng)F180組)足球機(jī)器人對(duì)抗賽是國(guó)際上近些年興起的機(jī)器人足球比賽項(xiàng)目,國(guó)內(nèi)高校參加該項(xiàng)目比賽僅有兩三年的歷史。該項(xiàng)比賽涉及到機(jī)械設(shè)計(jì)、理論力學(xué)、嵌入式系統(tǒng)與傳感器、無(wú)線通訊、控制理論、模式識(shí)別、人工智能等多種學(xué)科和技術(shù)的交叉與融合,具有較大的難度和挑戰(zhàn)性。 機(jī)器人足球競(jìng)賽本質(zhì)上是決策和車(chē)體性能的競(jìng)賽。由于小型組機(jī)器人足球比賽涉及到實(shí)際機(jī)器人的設(shè)計(jì)和控制,所以車(chē)體性能在其中占據(jù)著尤為重要的地位。而其底層控制的好壞又決定著車(chē)體機(jī)械性能是否能夠得到充分發(fā)揮。顯而易見(jiàn),作為底層控制“大腦”的主控芯片在其中起著至關(guān)重要的作用。近年來(lái),隨著比賽對(duì)機(jī)器人各項(xiàng)性能指標(biāo)要求的逐年提高以及機(jī)器人結(jié)構(gòu)復(fù)雜性的逐步增加,主控芯片的負(fù)擔(dān)越來(lái)越重,大多數(shù)機(jī)器人足球隊(duì)伍都在不斷地提高主控芯片的檔次以適應(yīng)越來(lái)越激烈的國(guó)際競(jìng)爭(zhēng)。本文將把TMS320F2812芯片具體應(yīng)用到足球機(jī)器人上。圖11 芯片介紹 TMS320F2812是TI公司2003年正式推出的32位定點(diǎn)DSP,是目前用于工業(yè)控制和機(jī)器人控制等領(lǐng)域中的最當(dāng)檔的DSP之一。該芯片性能優(yōu)越,比起TMS320LF2407A來(lái)講,各項(xiàng)性能指標(biāo)都有了顯著的提高;該芯片資源非常豐富,可大大簡(jiǎn)化外圍電路設(shè)計(jì)。其主要資源和性能性標(biāo)如下: (1)高主頻,即150MHz的主頻。 (2)低功耗,1.8V和3.3V供電。 (3)128K內(nèi)部FLASH,18K內(nèi)部SARAM,可外擴(kuò)1M存儲(chǔ)器。存儲(chǔ)器是統(tǒng)一編址的,其尋址空間達(dá)4M。 (4)中斷資源豐富,可支持45個(gè)外設(shè)級(jí)中斷和3個(gè)外部中斷。提取中斷向量和保存現(xiàn)場(chǎng)只需9個(gè)時(shí)鐘周期,響應(yīng)迅速。 (5)擁有雙事件管理器EVA和EVB,控制更加靈活。圖2(6)擁有兩個(gè)SCI口和一個(gè)SPI口,增加了數(shù)據(jù)緩存功能;傳輸頻率可達(dá)MHz量級(jí)。此外串行通訊模塊還包括增強(qiáng)的eCAN總線和新增的McBSP,能足夠多種通訊的需要。 (7)16個(gè)通道的12位A/D接口可靈活設(shè)置采樣方式。 (8)可使用多達(dá)56個(gè)可編程且可復(fù)用的I/O口。 (9)擁有三個(gè)系統(tǒng)級(jí)定時(shí)器和兩個(gè)屬于事件管理器的定時(shí)器。 2 TMS320F2812在小型足球機(jī)器人上的使用 2.1 車(chē)體控制電路的性能要求 基于前兩層機(jī)器人足球隊(duì)的經(jīng)驗(yàn)和當(dāng)今國(guó)際強(qiáng)隊(duì)的現(xiàn)狀,新一代機(jī)器人在結(jié)構(gòu)上進(jìn)行了很大改進(jìn),主要表現(xiàn)在以下幾點(diǎn):四個(gè)單排萬(wàn)向輪、擊球機(jī)構(gòu)、挑球機(jī)構(gòu)以及帶球機(jī)構(gòu)。機(jī)器人主體結(jié)構(gòu)如圖1所示。圖3以上改進(jìn)使得新車(chē)體在結(jié)構(gòu)上有了速度快、可控性好和功能全等特點(diǎn)。為了充分發(fā)押車(chē)體的性能,同時(shí)達(dá)到高速運(yùn)動(dòng)時(shí)較高的控制精度,對(duì)車(chē)體的控制電路,尤其是對(duì)在底層控制中起“大腦”作用的主控芯片提出了相應(yīng)的要求,主要有以下幾點(diǎn): (1)保證了與上位機(jī)通訊的可靠性和及時(shí)性。 (2)擊球和挑球的可控性。使用升壓電路增加擊挑球的力度;為了達(dá)到傳球和控制挑球落點(diǎn)的效果,要求對(duì)放電時(shí)間可控,初步預(yù)計(jì)應(yīng)精確到0.1ms。 (3)帶球電機(jī)的可控性。借以增加帶球的穩(wěn)定性,適應(yīng)不同的實(shí)際情況。 (4)保證車(chē)體高速運(yùn)動(dòng)下的可控性,這一點(diǎn)是最重要的。由于采用了新的機(jī)械和動(dòng)力結(jié)構(gòu),車(chē)體最高實(shí)際速度超過(guò)3m/s,有可能出現(xiàn)打滑情況,所以上層控制大約為每120ms進(jìn)行一次校正。為了保證精度,必須在底層對(duì)車(chē)體進(jìn)行實(shí)時(shí)校正,所以在硬件上使用碼盤(pán)和加速度傳感器作為反饋元件,在軟件上使用神經(jīng)網(wǎng)絡(luò)確定系統(tǒng)參數(shù),這樣對(duì)主控芯片的運(yùn)算能力就提出了較高的要求。 (5)提供必要的自檢手段和狀態(tài)標(biāo)志以及必要的設(shè)計(jì)余量。綜合以上考慮,充分利用已有經(jīng)驗(yàn)和現(xiàn)有代碼的可移植性,最終決定使用TI公司正式推出的TMS320F2812作為主控芯片。 2.2 TMS320F2812在底層控制中的應(yīng)用 作為主控芯片,TMS320F2812在整個(gè)控制系統(tǒng)中占據(jù)著核心的地位,它與其它部分電路的關(guān)系如圖2所示。 2.2.1 通訊 為了滿足高速通信和可靠性要求,無(wú)線通訊模塊采用準(zhǔn)藍(lán)牙無(wú)線通訊模塊nRF2401,并為通訊模塊單獨(dú)配上一個(gè)TMS320LF2407處理器。 通過(guò)設(shè)置SCICTL2將TMS320F2812的SCI通訊設(shè)置為中斷方式,并通過(guò)設(shè)置SCIRXBUF和SCITXBUF,開(kāi)啟TMS320F2812的SCI數(shù)據(jù)緩沖區(qū)。TMS320F2812中SCI所帶的16字節(jié)FIFO能有效地減少中斷次數(shù),提高通訊速度和接收與發(fā)送數(shù)據(jù)的可靠性,不會(huì)象以前那樣在數(shù)據(jù)量較大的情況下輕易出現(xiàn)數(shù)據(jù)丟失的現(xiàn)象。有效地保證了與上位機(jī)通訊的可靠性。 在實(shí)際測(cè)試當(dāng)中發(fā)現(xiàn),由于通訊硬件的緣故,通訊存在死區(qū)的現(xiàn)象仍然不能完全解決。但考慮到上位機(jī)決策程序?yàn)槊?0ms發(fā)送一次新命令,通過(guò)對(duì)命令間隔的計(jì)時(shí),底層程序就能檢測(cè)出是否存在通訊異常。如果存在,則底層決策系統(tǒng)代替上層決策系統(tǒng)發(fā)送隨機(jī)游走及轉(zhuǎn)動(dòng)命令,使機(jī)器人的達(dá)能正常通訊的區(qū)域。2.2.2 擊球機(jī)構(gòu)和挑球機(jī)構(gòu)的控制 將加在擊球機(jī)構(gòu)和挑球機(jī)構(gòu)的電壓升到90V,可保證擊挑球的力度,實(shí)測(cè)擊出球的初速度達(dá)4m/s以上,而挑球距離則達(dá)2m以上。 擊挑球控制電路原理圖如圖3所示??刂茡羟蚝吞羟蚍烹姇r(shí)間可以調(diào)節(jié)擊球和挑球力度,使之能完成不同距離的傳球、擊球和可控落點(diǎn)的挑球。為此,采用一個(gè)定時(shí)器控制放電時(shí)間,這樣可以輕松地將放電時(shí)間精度控制在0.1ms以?xún)?nèi),且每次擊球和挑球都有較好的重復(fù)性。 為了防止同時(shí)使用擊球機(jī)構(gòu)和挑球機(jī)構(gòu)造成機(jī)械損壞,在底層軟件程序使用一個(gè)互斥信號(hào)量的同時(shí)還增加了一個(gè)互鎖電路,并在底層控制程序中對(duì)放電頻率進(jìn)行限制,以保證電路和機(jī)構(gòu)。 需要指出的是,擊球機(jī)構(gòu)和挑球機(jī)構(gòu)的使用還應(yīng)受到球檢測(cè)情況的限制。如果球沒(méi)有緊挨著機(jī)器人,那么擊球和挑球動(dòng)作就沒(méi)法達(dá)到應(yīng)有的效果,甚至只是無(wú)謂地出擊,白白損失進(jìn)攻機(jī)會(huì)。因此,僅當(dāng)確定緊挨著機(jī)器人時(shí)才允許打開(kāi)放電電路,否則需等待機(jī)會(huì)。 2.2.3 帶球電機(jī)的控制 根據(jù)試驗(yàn)結(jié)果,要在不同情況達(dá)到最好的帶球效果,并不需要對(duì)帶球電機(jī)進(jìn)行精確控制,所以帶球電機(jī)沒(méi)有帶碼盤(pán)且只允許向一個(gè)方向旋轉(zhuǎn)。 為了實(shí)時(shí)監(jiān)測(cè)是否帶穩(wěn)球,設(shè)計(jì)了一個(gè)紅外檢測(cè)電路,如圖4所示。該電路的輸出僅需一個(gè)I/O口就能完成檢測(cè)。底層控制系統(tǒng)對(duì)其進(jìn)行定時(shí)檢測(cè),并經(jīng)過(guò)軟件濾波就可以確定球是否被機(jī)器人帶住。2.2.4 驅(qū)動(dòng)電機(jī)的控制 新型的單排萬(wàn)向輪相對(duì)于雙排萬(wàn)向輪來(lái)說(shuō)減少了體積,并提供了較好的可控性和較大的摩擦力。但在實(shí)際試驗(yàn)中發(fā)現(xiàn),在高加速度情況下輪子依然會(huì)出現(xiàn)比較嚴(yán)重的打滑現(xiàn)象。另外,四輪設(shè)計(jì)雖然增加了動(dòng)力性能,但同時(shí)也存在著四輪著地不均勻、受力不平衡的現(xiàn)象。如此,碼盤(pán)已不足以提供足夠的反饋信息,控制的復(fù)雜度也因此而大大增加了,傳統(tǒng)的PID已不足以解決所面臨的問(wèn)題,僅僅依靠上層的視覺(jué)反饋則延時(shí)過(guò)大,無(wú)法達(dá)到所要求的高速運(yùn)動(dòng)下的控制精度。為此,增加了一個(gè)二維加速度傳感器,用DSP的捕獲功能采集加速度傳感器反饋信息,并經(jīng)過(guò)適當(dāng)?shù)能浖V波將當(dāng)前加速度反饋給控制主程序,用以改善底層的運(yùn)動(dòng)控制。再加上上層的視覺(jué)反饋和決策層的整體PID調(diào)整,雙閉環(huán)的PID控制使車(chē)體在高速運(yùn)動(dòng)情況下的控制精度有了很大提高。運(yùn)動(dòng)控制框圖如圖5所示。 由于帶球機(jī)構(gòu)和四個(gè)輪子都是由電機(jī)通過(guò)減速箱直接驅(qū)動(dòng)的,因此很容易出現(xiàn)因堵轉(zhuǎn)而燒毀電機(jī)的情況。為了保護(hù)電機(jī),除了在機(jī)械上盡可能做好保護(hù)以外,在底層決策上也對(duì)此作了監(jiān)測(cè)。當(dāng)發(fā)現(xiàn)電機(jī)轉(zhuǎn)速和期望值相差過(guò)大,且在一段時(shí)間(如300ms)后仍然沒(méi)有任何改變,則認(rèn)為該電機(jī)正處于諸轉(zhuǎn)狀態(tài)并關(guān)閉一段時(shí)間以保護(hù)電機(jī)。 2.2.5 自檢手段和設(shè)計(jì)余量考慮 為了在盡可能短的時(shí)間里掌握車(chē)體狀況,增加一個(gè)四段撥碼開(kāi)關(guān)和一個(gè)七段LED,通過(guò)不同撥碼組合可以運(yùn)行不同的自檢程序,并實(shí)時(shí)地將結(jié)果通過(guò)七段LED顯示出來(lái)。 雖然在底層控制中采用TMS320LF2407A并使用傳統(tǒng)的PID控制也基本夠用,但根據(jù)車(chē)體力學(xué)特性所建立起來(lái)的控制模型和實(shí)際情況并不完全相符,基于此模型所作的控制也因此并沒(méi)有完全達(dá)到初始設(shè)想的控制精度,選用此芯片的足球機(jī)器人與國(guó)際強(qiáng)隊(duì)相比也還有一定的差距。為此,在底層控制上嘗試使用神經(jīng)網(wǎng)絡(luò)等控制方法,這樣必須留有足夠的計(jì)算能力余量。TMS320F2812高達(dá)150MHz的主頻可以比較好地滿足對(duì)計(jì)算能力的要求。 為了存儲(chǔ)每次神經(jīng)網(wǎng)絡(luò)試驗(yàn)所得到的參數(shù),使用TMS320F2812的SPI口,并外擴(kuò)一個(gè)串行FLASH,如圖6所示。 同時(shí),為了改善控制中對(duì)角速度反饋不足的情況,還預(yù)留了角速度傳感器的電路接口,為進(jìn)一步提高控制精度作準(zhǔn)備。圖72.3 總程序流程 基于TMS320F2812的底層控制程序基本上是在定時(shí)中斷下完成的,圖7中給出了定時(shí)中斷流程的基本框圖。 由圖可看出主程序分支頗多,為保證精度,要求濾波和控制計(jì)算頻繁,選用TMS320F2812就是為了保證控制的實(shí)時(shí)性。實(shí)測(cè)表明,在TMS320F2812中的實(shí)際程序約1.6ms一個(gè)循環(huán),符合預(yù)期目標(biāo),且為更為精確和復(fù)雜的控制預(yù)留了相應(yīng)的性能余量。 本文介紹了TMS320F2812在新一代足球機(jī)器人上的應(yīng)用,涉及了通訊、擊政治協(xié)商會(huì)議和挑球控制、傳感器的使用和濾波以及多達(dá)五個(gè)電機(jī)的驅(qū)動(dòng)和控制。充分用到了TMS320F2812片上的豐富資源。 從以上的應(yīng)用可以看到,TMS320F2812延續(xù)了TI公司2000系列DSP在電機(jī)控制領(lǐng)域的優(yōu)勢(shì),并進(jìn)一步擴(kuò)充了各種片上資源,使之應(yīng)用領(lǐng)域更為廣闊。主頻也有充了各種片上資源,使之應(yīng)用領(lǐng)域更為廣闊。主頻也有數(shù)倍的提高,彌補(bǔ)了之前使用的TMS320LF2407A在計(jì)算能力上的不足,使其能夠滿足更為復(fù)雜的實(shí)時(shí)性要求和更為復(fù)雜的控制要求,必將在測(cè)控領(lǐng)域有著廣闊的應(yīng)用前景。
評(píng)論