陳 偉,施國(guó)梁
(蘇州大學(xué) 電子信息學(xué)院,江蘇 蘇州 215006)
近年來汽車網(wǎng)絡(luò)越來越受到人們的關(guān)注,無線通信技術(shù)在消費(fèi)電子的汽車化和更環(huán)保、更安全、更方便的駕車環(huán)境的要求下不斷應(yīng)用和發(fā)展,尤其是如何能夠提高駕車安全、減少甚至排除交通事故已經(jīng)成為當(dāng)前一個(gè)重要的研究課題[1]。而高精度、高可靠性、寬廣的監(jiān)測(cè)視角以及高性價(jià)比的防碰撞系統(tǒng)成為迫在眉睫的需要。其中的關(guān)鍵問題是快速、準(zhǔn)確計(jì)算出汽車行駛的安全距離。而測(cè)距的方法不同就會(huì)大大影響車輛的防碰撞控制。因此,這里提出了一種通過無線通信技術(shù)實(shí)時(shí)的將車輛行駛數(shù)據(jù)發(fā)送給對(duì)方的系統(tǒng),從而通過算法得到準(zhǔn)確的車間距離[2]。
本系統(tǒng)關(guān)鍵技術(shù)在于無線數(shù)據(jù)傳輸技術(shù)的應(yīng)用。微功率短距離無線數(shù)據(jù)傳輸技術(shù)作為一種無線通信實(shí)用技術(shù),一般使用單片射頻收發(fā)芯片,加上微控制器和少量外圍器件構(gòu)成專用或通用無線通信模塊[3],只需根據(jù)指令操作就可實(shí)現(xiàn)數(shù)據(jù)無線傳輸功能。
一個(gè)無線數(shù)據(jù)傳輸系統(tǒng)可由微控制器,單片射頻收發(fā)芯片以及少量輔助設(shè)備和顯示設(shè)備構(gòu)成[4],無線傳輸系統(tǒng)結(jié)構(gòu)如圖1所示。
該系統(tǒng)包括微處理器、無線收發(fā)模塊、液晶顯示模塊和外圍的輔助模塊。自車通過無線收發(fā)模塊向其周圍通信范圍內(nèi)的其他車輛廣播自己的行駛數(shù)據(jù)(包括位置、車速和航向等)和接收并顯示從其他車輛發(fā)來的數(shù)據(jù),同理,其他車輛也同樣廣播自己的數(shù)據(jù)和接收并顯示來自他車的數(shù)據(jù),該系統(tǒng)實(shí)現(xiàn)了車間的雙工通信。
圖1 無線傳輸系統(tǒng)結(jié)構(gòu)
微處理器選用 STC公司最新第六代加密型 CPU——STC12C5A60S2單片機(jī)。該單片機(jī)將大量的外圍模塊整合到單片機(jī)內(nèi),包括看門狗、兩個(gè)串行通訊口(UART0、1)、一個(gè) SPI口、一個(gè) 10位 A/D轉(zhuǎn)換器、基本定時(shí)器(Basic Timer)等,同時(shí)具有60 kB的ROM和1280 B的RAM,處理速度比普通的8051快8~12倍,足夠滿足系統(tǒng)要求,且該單片機(jī)具有簡(jiǎn)單實(shí)用、成本低,抗干擾能力強(qiáng),功耗低等特點(diǎn)[5]。STC12C5A60S2單片機(jī)外圍電路如圖2所示。
圖2 CPU外圍電路
短距離無線收發(fā)模塊包括無線發(fā)射器和無線接收器兩部分組成,其通信的基本原理是發(fā)射器的數(shù)據(jù)通過無線發(fā)射出去,接收器天線接收后,進(jìn)行處理,得到正確的、經(jīng)過檢驗(yàn)的準(zhǔn)確數(shù)據(jù)[6]。該模塊的通信示意圖如圖3所示。
圖3 短距離無線通信示意
CC1101是 Chipcon公司最新的高性能無線通信芯片,其電路主要設(shè)定為在315 MHz、433 MHz、868 MHz和915 MHz的 ISM(工業(yè),科學(xué)和醫(yī)學(xué))和 SRD(短距離設(shè)備)頻率波段,也可以容易地設(shè)置為 300~348 MHz、400~464 MHz和800~928 MHz的其他頻率。CCl101集成了一個(gè)高度可配置的調(diào)制解調(diào)器,支持不同的調(diào)制格式,其數(shù)據(jù)傳輸率最高可達(dá) 500 kb/s。通過開啟集成在調(diào)制解調(diào)器上的前向誤差校正選項(xiàng),能使性能得到提升。在發(fā)射狀態(tài)下,其發(fā)射功率可編程調(diào)節(jié),其最大發(fā)射功率達(dá)到+10 dBm,且接收靈敏度可達(dá)-110 dBm,抗干擾能力強(qiáng),功耗較低。
該設(shè)計(jì)中 CCll01通過對(duì) 4線 SPI接口(SI,SO,SCLK和CSn)和GDO2測(cè)試接口的配置進(jìn)行工作。SPI接口是一種同步串行通信接口,CSn是芯片選擇引腳,當(dāng)該引腳為低電平時(shí),SPI接口可以通信,否則不能通信。SI和S0為數(shù)據(jù)傳輸引腳,SI為數(shù)據(jù)輸入,SO為數(shù)據(jù)輸出。SCLK為同步時(shí)鐘,在時(shí)鐘的上升沿或下降沿?cái)?shù)據(jù)被寫入或讀出;若信道中有數(shù)據(jù),GDO2腳電平跳變[7]。
在此,MCU通過軟件去設(shè)置各種射頻參數(shù)和其他輔助功能。在無需外加功放電路的情況下,可使其通訊距離達(dá)到200 m以上。該系統(tǒng)采用 433 MHz頻段,STC12C5a60S2的P1.4 、P1.5 、P1.6、 P1.7引腳分別與 CC1101的 SPI口的 CSn、SI、SO、SCLK連接,對(duì)其進(jìn)行寄存器配置和無線數(shù)據(jù)收發(fā)控制;該單片機(jī)的P3.2腳與CC1101的GDO2腳連接,當(dāng)信道中有數(shù)據(jù)時(shí),GDO2腳電平跳變,單片機(jī)產(chǎn)生中斷并進(jìn)行數(shù)據(jù)接收。無線收發(fā)電路如圖4所示。
圖4 無線收發(fā)電路
該系統(tǒng)采用模塊化設(shè)計(jì)方法,以便提高代碼重復(fù)利用率、便于調(diào)試排錯(cuò),并易于擴(kuò)展。該部分主要完成車輛數(shù)據(jù)交換,并將接收的數(shù)據(jù)顯示到液晶屏上??傮w流程圖如圖5所示。
圖5 總體流程
該系統(tǒng)將每輛車視為一個(gè)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)都是對(duì)等的,即每個(gè)節(jié)點(diǎn)是交替進(jìn)入發(fā)送狀態(tài)和接受狀態(tài)的。在某段時(shí)間內(nèi),A節(jié)點(diǎn)采用廣播方式廣播數(shù)據(jù),此時(shí),B節(jié)點(diǎn)發(fā)生中斷并接收數(shù)據(jù),直到該數(shù)據(jù)通信結(jié)束;之后,發(fā)送節(jié)點(diǎn)和接受節(jié)點(diǎn)狀態(tài)交換,即是,B節(jié)點(diǎn)開始廣播數(shù)據(jù),A節(jié)點(diǎn)發(fā)生中斷并接受數(shù)據(jù),以此繼續(xù)下去。各發(fā)送節(jié)點(diǎn)采用不同的時(shí)間延遲來間隔發(fā)送數(shù)據(jù)。通信協(xié)議格式如圖6所示。
圖6 通信協(xié)議格式
長(zhǎng)度:字頭+長(zhǎng)度+數(shù)據(jù)+校驗(yàn),系統(tǒng)設(shè)為21;
數(shù)據(jù):系統(tǒng)中需要傳輸節(jié)點(diǎn)的經(jīng)緯度、速度以及航向等數(shù)據(jù),預(yù)留18個(gè)字節(jié);
校驗(yàn):字頭+長(zhǎng)度+數(shù)據(jù)的累加,系統(tǒng)設(shè)為0xAB。
系統(tǒng)上電之后,可根據(jù)需要進(jìn)行設(shè)置。這里需對(duì)P1口,P3口用到的引腳狀態(tài)進(jìn)行設(shè)置。當(dāng)初始化SPI口時(shí),可以對(duì)SPCTL寄存器和SPSTAT寄存器根據(jù)具體要求設(shè)置。在這里,選擇主機(jī)模式,同步時(shí)鐘頻率為晶振頻率的1/8,數(shù)據(jù)字的最高位先傳送,在時(shí)鐘上升沿對(duì)數(shù)據(jù)進(jìn)行采樣。
SPI口初始化程序?yàn)椋?/p>
在上電之初,CCllO1處于默認(rèn)狀態(tài),需要對(duì)相應(yīng)的寄存器進(jìn)行設(shè)置才能工作。CCll01有40多個(gè)寄存器需要配置,其決定了CCll01的工作模式,具體配置可以參照CCll01的詳細(xì)參考資料。在設(shè)置寄存器值時(shí),使用SPI接口通信,該程序涉及單片機(jī)的SPSTAT、SPDAT等寄存器。首先把欲配置的寄存器的地址或數(shù)據(jù)寫入數(shù)據(jù)寄存器SPDAT中,當(dāng)檢測(cè)到SPSTAT寄存器的SPIF位為高時(shí),即數(shù)據(jù)寄存器已空,數(shù)值發(fā)送完。參照上面提到的寄存器讀寫方式,可以依次對(duì)CCll01內(nèi)部寄存器進(jìn)行配置。完成一個(gè)CC1101寄存器設(shè)置的程序?yàn)椋?/p>
配置寄存器結(jié)束之后,CC1101處于等待狀態(tài),可以通過STX和SRX指令使其進(jìn)入發(fā)射或接收狀態(tài),進(jìn)行數(shù)據(jù)傳輸。
測(cè)試場(chǎng)景為:天氣晴,測(cè)試地點(diǎn)為電子信息樓前的馬路上,將系統(tǒng)放在車上,即設(shè)置三個(gè)節(jié)點(diǎn)分別為A、B、C三點(diǎn)。
通過硬件的測(cè)試,驗(yàn)證整個(gè)系統(tǒng)靜態(tài)和低速動(dòng)態(tài)環(huán)境下的實(shí)用性。
(1)靜態(tài)性能
條件為:A、B、C三點(diǎn)都靜止,之間相距一定距離。
結(jié)果:節(jié)點(diǎn)間數(shù)據(jù)傳輸正確率100%,最大延時(shí)小于10 ms,傳輸距離最大為240 m,通信穩(wěn)定。因此,靜態(tài)性能符合應(yīng)用要求。
(2)動(dòng)態(tài)性能
條件為:A、B、C都以低速行駛,之間相距一定距離。
結(jié)果:節(jié)點(diǎn)間數(shù)據(jù)傳輸正確率99%,最大延時(shí)小于100 ms,傳輸距離最大220 m,通信穩(wěn)定。因此該系統(tǒng)低速動(dòng)態(tài)性能較好。
通過對(duì)以STC12C5a60S2為微處理器,以CC1101為無線收發(fā)器的通信系統(tǒng)的軟硬件設(shè)計(jì)實(shí)現(xiàn),對(duì)該系統(tǒng)的工作原理及其接口進(jìn)行分析,對(duì)此車間無線數(shù)據(jù)交換系統(tǒng)的各項(xiàng)性能及其動(dòng)靜態(tài)性能指標(biāo)進(jìn)行深入研究,從測(cè)試結(jié)果中可看出此CC1101無線通信模塊在車載上的應(yīng)用中具有良好的靜態(tài)和低速動(dòng)態(tài)性能,但若要使該系統(tǒng)滿足中高速移動(dòng)要求,則還需對(duì)其進(jìn)行進(jìn)一步的測(cè)試和改進(jìn),而其將對(duì)后期的大范圍車輛碰撞預(yù)警項(xiàng)目開發(fā)起到指導(dǎo)性作用。
[1] 胡瑜.汽車防碰撞系統(tǒng)的應(yīng)用與研究[J].機(jī)械工程與自動(dòng)化,2010,8(04):214-216.
[2] 金純,柳興,萬寶紅,等.IEEE802.11P:車載環(huán)境下的無線局域網(wǎng)[J].通信技術(shù),2009,42(01):323-325.
[3] 王秀梅,劉乃安.利用2.4 GHz射頻芯片CC2420實(shí)現(xiàn)ZigBee無線通信設(shè)計(jì)[J].國(guó)外電子元器件,2005,3(03):59-62.
[4] 王曉利.智能汽車防追尾互通信系統(tǒng)的研究[J].通信技術(shù),2011,44(09):92-94.
[5] 陳桂友.增強(qiáng)型8051單片機(jī)實(shí)用開發(fā)技術(shù)[M].北京:北京航空航天大學(xué)出版社,2010:15-250.
[6] 李路,嚴(yán)明,何友國(guó).基于PIC單片機(jī)的無線報(bào)警系統(tǒng)設(shè)計(jì)[J].通信技術(shù),2011,44(03):48-50.
[7] 李麗軍,王代華,祖靜.基于CC1100的無線數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)[J].國(guó)外電子測(cè)量技術(shù),2007,26(12):42-45.