摘 要:提出一種基于ARM和DSP技術,有基礎設施建設的小型足球機器人無線通信系統(tǒng)。分析該通信系統(tǒng)的設計思路,介紹了該無線通信系統(tǒng)的架構。詳述該系統(tǒng)主機端、足球機器人端和空中接口硬件設計的方法。設計了通信各鏈路的數(shù)據(jù)幀格式和自適應信道編、解碼方案?;谝陨系脑O計,該系統(tǒng)通過協(xié)調通信的有效性、可靠性和自適應,給予通信以充分的保障。
關鍵詞:無線通信; 機器人; ARM; DSP
中圖分類號:TN914; TP242.6文獻標識碼:A
文章編號:1004-373X(2010)15-0067-04
Design and Realization on Wireless Communication System of Small Soccer Robot
LIAO Xiao-chun, YAO Yuan-cheng
(School of Information Engineering, Southwest University of Science and Technology, Mianyang 621010, China)
Abstract: An infrastructural wireless communication system of small soccer robot based on ARM and DSP technology is put forward. The design criterion and architecture of the communication system are analyzed. The hardware design methods of host-end, soccer robot-end and air interface in the system are fully presented. The data frame format for separate communication links and the adaptive encoding and decoding schemes are implemented. The system presents full guarantee to communication by balancing the communication's efficiency, reliability and adaptability.
Keywords: wireless communication; robot; ARM; DSP
0 引 言
多智能體系統(tǒng)(Multiagent System,MAS),作為分布式智能控制研究的一個重要分支,涉及精密機械、機電一體化、傳感、無線通信、圖像處理與識別、決策規(guī)劃、多智能體協(xié)調和自組織學習等諸多領域的前沿研究和技術融合。而小型足球機器人系統(tǒng),作為MAS的一個典型應用,工作于動態(tài)變化和不斷競爭的環(huán)境下,是一種較為復雜的多智能體系統(tǒng)。系統(tǒng)任務的完成需要多個機器人之間的協(xié)作。而協(xié)作必然就需要在多個機器人之間進行通信[1]。
這種動態(tài)變化和強烈競爭的競賽環(huán)境,對通信的要求有:實時性:如何高效地進行通信;魯棒性:如何提供系統(tǒng)通信的可靠性和抗干擾能力;可移植性:如何將硬件、軟件進行模塊化設計,以適應硬件和軟件的不同接口,讓無線通信系統(tǒng)具有一定的適應性。
基于以上的需求分析,本文提出了一種基于ARM和DSP技術,有基礎設施建設的小型足球機器人無線通信系統(tǒng)的基本架構,并分別對小型足球機器人系統(tǒng)的主控單元和各個執(zhí)行體無線通信部分進行了軟、硬件設計。整個系統(tǒng)硬件設計穩(wěn)定、接口豐富,軟件設計靈活;通信的有效性和可靠性有保障,通信的實時性和自適應性也較好。
1 設計思路與系統(tǒng)架構
1.1 設計思路
機器人通信方式與機器人的應用場合,也即是通信需求密切相關。目前,機器人的通信方式主要分為:
黑板模式 即一段公共的存儲區(qū)被多個機器人共享,它們可以對這段存儲區(qū)進行寫入和讀取。這塊公共的存儲區(qū),就像黑板一樣被多個機器人所使用。
聯(lián)邦模式 多個具有一定共性的機器人組成一個聯(lián)邦,再由不同的聯(lián)邦構成整個機器人通信系統(tǒng)。聯(lián)邦內的通信直接在聯(lián)邦內進行傳輸;聯(lián)邦間的通信由每個聯(lián)邦的中繼點像網(wǎng)關一樣進行轉發(fā)。
廣播方式 一個機器人發(fā)送,多個機器人接受。
點對點方式(Point to Point) 一個機器人發(fā)送,被授權的機器人接收。
黑板模式讓多個機器人共享一段存儲區(qū),簡化了通信模式和控制的設計,但是必然會引起通信競爭,需要信號量對存儲區(qū)進行互斥控制和優(yōu)先級管理。聯(lián)邦模式將整個通信系統(tǒng)進行分級管理,可以獲得很高的效率;但是一般只適用于密度較大、分布較廣的多機器人系統(tǒng)。廣播的洪泛常常使得通信阻塞。而點對點方式,通信效率比較高,節(jié)省頻帶。此外,通信系統(tǒng)的設計還需考慮最大可能地抑制通信間的干擾,保證通信的高效性和可靠性。這一點,常常通過頻分多址(FDMA)、空分多址(SDMA)、碼分多址(CDMA)技術實現(xiàn),而不采用時分多址(TDMA)。因為時分多址會引起激烈的競爭[2]。
正是基于以上的設計思路,一個高效、可靠的小型足球機器人無線通信系統(tǒng)要求其物理層盡可能降低干擾;同時為了實現(xiàn)所需的通信模式,要求通信系統(tǒng)硬件接口豐富、軟件設計實現(xiàn)靈活;通信系統(tǒng)的實時性能滿足小型足球機器人競賽的要求[3]。
1.2 系統(tǒng)架構
系統(tǒng)框圖如圖1所示。小型足球機器人系統(tǒng)包括:主機端:完成機器視覺和決策規(guī)劃;通信部分:保障無線通信的高效性和可靠性;足球機器人端:識別和分析接受到的命令數(shù)據(jù),完成比賽動作。
圖1 小型足球機器人系統(tǒng)框圖
這種無線通信系統(tǒng)架構的優(yōu)點如下:
(1) 主機通信功能的實現(xiàn)采用了ARM7-LPC2114芯片,其體積小、功耗低;運行時鐘較高;片上外設和接口豐富,便于系統(tǒng)功能的擴展;軟件開發(fā)支持C語言,便于程序的模塊化設計,提高軟件設計的速度,并從軟件上提高系統(tǒng)的健壯性;支持在其上移植嵌入式操作系統(tǒng)(如μC/OS,μCLinux,VxWorks等),可以更方便地嵌入現(xiàn)有的網(wǎng)絡通信協(xié)議和應用程序,降低了嵌入式系統(tǒng)設計實現(xiàn)的復雜度,增強了系統(tǒng)的可擴展性和穩(wěn)定性[4]。
(2) 足球機器人本體通信功能的實現(xiàn)采用了DSP-LF2704芯片,其數(shù)字信號處理能力較強,便于進行實時處理,甚至可以進行簡單的視頻編、解碼,以實現(xiàn)要求不太復雜的機器視覺實時處理;片內流水線作業(yè),多個控制和運算部件并行工作;片上接口比較豐富,甚至可以將足球機器人通信和電機驅動、控制的功能在一片DSP-LF2704中完成,使得系統(tǒng)復雜度降低,穩(wěn)定性得到提高[5]。
這兩種系統(tǒng)協(xié)同工作,發(fā)揮各自的優(yōu)點,以達到整體系統(tǒng)的最優(yōu)設計,滿足比賽對足球機器人通信系統(tǒng)的要求。
2 系統(tǒng)硬件設計
2.1 通信模塊的選型
作為無線通信的空中接口,通信芯片的選型會直接地影響到系統(tǒng)通信的高效性和可靠性。通過對系統(tǒng)無線通信需求的分析,本系統(tǒng)選定板載Nordic公司nRF2401芯片的PTR4000模塊作為無線數(shù)據(jù)收發(fā)模塊[6]。
PTR4000無線數(shù)據(jù)收發(fā)模塊,工作于2.4 GHz全球開放ISM頻段;采用GMSK調制,抗干擾能力強;125個頻道,滿足多頻點通信和跳頻通信的要求;內置硬件CRC檢錯和點對多點通信地址的控制[7]。
硬件設計方面,PTR4000工作電壓范圍為19~36 V,與ARM7-LPC2114,DSP-LF2704的I/O口33 V TTL電平是兼容的。此外,為了提高PTR4000引腳的驅動能力,采用了一片74HC244緩沖器作為隔離。PTR4000的四種工作方式由引腳PWR,CE,CS控制,如表1所示[8]。
表1 PTR4000工作模式控制表
工作模式PWRCECS
發(fā)射/接收模式110
配置模式101
待機模式100
掉電模式0XX
使用PTR4000之前,需要在配置模式下對它的120 b的配置字進行配置。此后,便可使其進入發(fā)射/接收模式,進行正常的數(shù)據(jù)發(fā)射和接收。不需要進行數(shù)據(jù)發(fā)射和接收時,可以使之工作在待機模式或掉電模式。PTR4000的配置以及數(shù)據(jù)的發(fā)射和接收都可通過SPI接口完成。
此外,PTR4000的工作頻率為2 400~2 524 MHz,有125個頻道可選。射頻工作頻率的計算公式為:
Channel Frequency=2 400 MHz+RF_CH*1 MHz
其中:RF_CH為所選的頻道號,取值范圍為[0,124]的整數(shù)。據(jù)此,本系統(tǒng)便存在兩種可選的通信方案。
(1) 頻分多址方式:不同足球機器人的通信模塊采用不同的頻道。多個足球機器人同時不同頻地工作,提高的通信的效率而不會產(chǎn)生信道上的沖突。在頻道資源的允許下,隔頻使用,加寬使用頻道間的隔離帶,可以進一步降低信道間的干擾。
(2) 跳頻方式:根據(jù)系統(tǒng)要求,設計合適的跳頻圖案,降低外來干擾。足球機器人在競賽過程中,難免有各種各樣的人為和非人為的干擾。跳頻系統(tǒng)的擴頻處理增益和抗干擾的概率或效率公式為:
Gain=B2/B1=N;P=1/N;
式中:B1,B2分別為跳頻前后的帶寬。由此可知,跳頻技術能夠大大提高通信系統(tǒng)抗干擾的能力。綜合比較兩種方案:第一種頻分多址方式實現(xiàn)簡便;第二種跳頻方式性能好,但是其實現(xiàn)的系統(tǒng)開銷也大,可能會影響通信的實時性。所以,本文選擇第一種方案作為主要的通信方式,第二種方案為備用方案。
2.2 主機端通信硬件設計
主機端通信硬件設計,采用了Philips推出的LPC2114作為主控芯片。該芯片采用ARM7內核,基于精簡指令集(Reduced Instruction Set Computing,RISC),總線寬度為32位。時鐘可通過PLL(Phase Lock Loop)對外部時鐘進行倍頻,可實現(xiàn)最大為60 MHz的CPU工作頻率。片上通信外設有2個標準的UART,2個SPI接口和1個I2C接口。該芯片支持“在系統(tǒng)編程”和“在應用編程”兩種編程模式。此外,該芯片采用雙電源設計,CPU內核電壓范圍是:165~195 V,I/O操作電壓范圍是30~36 V;支持空閑和掉電兩種低功耗模式,功耗非常低[9]。因此,采用LPC2114作為主機端通信的主控芯片,外圍電路簡單,系統(tǒng)可靠性高。
主機端通信硬件系統(tǒng),作為聯(lián)系主機和底層足球機器人的紐帶,其主要任務是接受、緩沖主機發(fā)給底層足球機器人的數(shù)據(jù);監(jiān)控和測試通信的信道;根據(jù)信道的特性,對緩沖的數(shù)據(jù)進行成幀處理,進行信道編碼,以保證傳輸?shù)目煽啃浴?/p>
主機端通信嵌入式系統(tǒng)的總體框圖如圖2所示。主控芯片采用雙電源低功耗設計,所以電源上使用L7805,LM1117T-33和LM1117T-18三種穩(wěn)壓芯片,以滿足系統(tǒng)對I/O口和內核電壓的不同要求。系統(tǒng)時鐘由外接無源11 MHz晶振通過片內的PLL倍頻后產(chǎn)生。芯片編程下載ISP方式,通過UART串口即可完成,節(jié)約開發(fā)成本。系統(tǒng)的人機接口,使用數(shù)碼管顯示和行列式鍵盤輸入。數(shù)碼管顯示用戶自定義的數(shù)字信息,可以讓用戶了解通信系統(tǒng)是否工作正常,以及系統(tǒng)的工作狀態(tài)如何;行列式鍵盤輸入,在調試時,可以讓用戶進入特定的調試狀態(tài),輸入所需的命令,切換通信系統(tǒng)的工作狀態(tài),已達到現(xiàn)場快速調試的目的。通信部分:主機發(fā)送來的信號為典型的232電平,須經(jīng)MAX3232轉換為33 V的TTL電平后,才能由主控芯片的UART接受。其次,經(jīng)過主控芯片成幀、信道編碼后的數(shù)據(jù),需要通過數(shù)據(jù)收發(fā)模塊PTR4000,發(fā)送給各個底層足球機器人。數(shù)據(jù)發(fā)送模塊PTR4000與主控芯片的SPI接口都工作于33 V的TTL電平,兩者兼容,可以直接相連。但是為了提高PTR4000引腳的驅動能力,所以在它們兩者之間用74HC244加以緩沖,以保證通信的可靠性。
圖2 主機端通信嵌入式系統(tǒng)總體框圖
2.3 足球機器人端通信硬件的設計
足球機器人端通信硬件的設計,采用TI公司推出的TMS320LF2407作為主控芯片。該芯片采用低功耗設計,片內有32 KB FLASH程序存儲器,片上外設豐富,有串行通信接口(SCI)、串行外圍接口(SPI)、PWM波發(fā)生器、模/數(shù)轉換接口等,非常適合既涉及通信又涉及控制的應用場合。
足球機器人端通信硬件系統(tǒng),主要負責對主機發(fā)送的數(shù)據(jù)進行接收,其包括對接收到的數(shù)據(jù)進行信道解碼;對解碼后的數(shù)據(jù)進行拆幀處理,提取有效的信息;必要時,需要向主機應答。
足球機器人端通信的硬件系統(tǒng),與主機端通信系統(tǒng)基本類似。其采用了+5 V和+33 V的雙電源設計;外接15 MHz有源晶振倍頻;外擴64 KB程序存儲器,64 KB數(shù)據(jù)存儲器;使用SPI接口,經(jīng)74HC244緩沖,從PTR4000模塊接收數(shù)據(jù)。此外,因為LF2407片上有豐富的控制外設,所以電機運動控制算法也可以在LF2407上完成。這樣可以使得外圍電路設計簡化,系統(tǒng)復雜度降低,穩(wěn)定性提高。
3 系統(tǒng)軟件成幀和信道編碼設計
嵌入式系統(tǒng)軟件的設計,首先需要調試所要使用的片上、片外硬件資源的功能和性能;其次,將基本的硬件操作代碼,封裝成基本的驅動庫,供高層的算法所調用。本系統(tǒng)主機端和足球機器人端的軟件都采用C語言開發(fā),方便代碼的維護和移植。其重點在于如何設計各通信鏈路的幀格式,以提高傳輸?shù)母咝?如何設計簡單的信道編、解碼方法,以在實時性得以保證的情況下,提高傳輸?shù)目煽啃浴?/p>
3.1 各通信鏈路的幀格式設計
本系統(tǒng)通信鏈路基本分為三個部分:從主機到ARM7-LPC2114主控芯片;從ARM7-LPC2114主控芯片到無線通信模塊;從ARM7無線通信裝置的無線通信模塊到DSP無線通信裝置的無線通信模塊。各鏈路的幀格式如圖3所示。
圖3 通信各鍵路的幀格式
第一部分鏈路都是有線通信,通信環(huán)境較好,加以屏蔽措施后,還可以進一步減少外界的干擾。此外,因為主機端的通信命令是不斷產(chǎn)生的,所以即使存在極少量的通信差錯,也是可以忍受的。據(jù)此,為了降低系統(tǒng)的復雜度,未對這部分鏈路的通信進行信道編碼。
第三部分無線通信模塊之間空中接口的通信環(huán)境,會因為無線信道的變化和足球機器人的運動而變得十分得惡劣。因此,這一部分的信道編碼是必要的。首先,PTR4000無線通信模塊板載硬件8/16位CRC(Cyclic Redundancy Check)功能;其次,ARM7-LPC2114主控芯片完成用戶自定義的軟件編碼的工作。如果使用PTR4000的硬件CRC功能只能對第三部分鏈路進行信道編碼;如果使用ARM7-LPC2114主控芯片進行軟件編碼,信道編碼的對象是第二、三兩個部分的鏈路。
3.2 信道編碼的設計
由于無線通信模塊PTR4000具有硬件CRC功能,通信信道軟件編碼方案為一種自適應編碼方式:當通信環(huán)境較好時,只依靠硬件CRC進行差錯的校驗,或者在硬件CRC的基礎上加入簡單的奇偶校驗;當通信環(huán)境較為惡劣時,在ARM7無線通信端采用(7,4)線性組合碼和奇偶校驗,進行信道編碼。對于第二種方法,如果信源序列為:
S7S6S5S4S3S2S1S0
分別對高4位和低4位進行(7,4)線性組合編碼和奇偶校驗后,產(chǎn)生如下的編碼:
S7S6S5S4A5A4A3X1
S3S2S1S0A2A1A0X2
A5~A3是對S7~S4的線性組合編碼,X1是對它們的奇偶校驗;A2~A0是對S3~S0的線性組合編碼,X2是對它們的奇偶校驗。接收端接收到數(shù)據(jù)后,采用與生成矩陣相對應的檢驗矩陣進行解碼和糾錯。這樣一種自適應編碼方式是對編碼有效性和可靠性之間矛盾的一種有效的協(xié)調。
4 結 語
基于ARM和DSP技術,有基礎設施建設的小型足球機器人無線通信系統(tǒng),融合了ARM處理器外設接口豐富、系統(tǒng)功能設計實現(xiàn)靈活和擴展能力強,以及DSP處理器數(shù)字信號處理能力強、便于實時處理的特點;為實現(xiàn)通信的有效性和可靠性,為通信各條鏈路設計了合理的數(shù)據(jù)幀格式和自適應信道編、解碼方案。此套小型足球機器人無線通信系統(tǒng)的足球機器人端通信設備已成功于中國科技大學F-180 Robocup小型足球機器人系統(tǒng)中,在調試和比賽環(huán)境中均表現(xiàn)出了較高的通信質量和可靠性,幫助球隊取得了不錯的成績。
參考文獻
[1]WANG Zhi-gang, ZHOU Meng-chu, ADHOC Ansari N. Robot wireless communication systems[J]. Man and Cybernetics, 2003, 33(3): 521-528.
[2]WANG Jin, PREMVUTi S, Tabbara A. A wireless media access protocol (CSMA/CD-W) for mobile robot based distributed robotic systems[J]. Robotics and Automation, 1995(5): 2885-2891.
[3]劉任平.多機器人通信研究[D].北京:北京航空航天大學,1999.
[4]周立功.ARM微控制器基礎與實戰(zhàn)[M].北京:北京航空航天大學出版社,2003.
[5]江思敏.TMS320LF240x DSP硬件開發(fā)教程[M].北京:機械工業(yè)出版社,2003.
[6]陳景航,楊宜民,李健楨.足球機器人無線通信子系統(tǒng)的研究[J].電路與系統(tǒng)學報,2006,11(1):147-150.
[7]鐘碧良,張祺.足球機器人通訊系統(tǒng)的可靠性分析與設計[J].微電子學與計算機,2003,20(1):17-19.
[8]Nordic. Nrf2401 user manual[R]. [2009-04-22]. http://share.eepw.com.cn.
[9] Philips Semiconductors. LPC2114 user manual[R]. [2004-03-04]. http://www.zlgmcu.com.