西北工業(yè)大學(xué)自動化學(xué)院(西安 710072) 黃偉華 楊建華 譚 麗 閆旭晟
收費是高速公路建成后營運管理的重要工作,現(xiàn)階段的收費模式大多是人工收費,效率不高。基于射頻技術(shù)的高速公路收費系統(tǒng)采用無線方式,通過安裝在車輛前部的繳費卡和置于收費站內(nèi)的讀卡器進(jìn)行信息交換,是一種全自動收費方式。開發(fā)基于射頻技術(shù)的高速公路自動收費系統(tǒng),對于提高收費效率,降低車輛擁堵率具有積極作用。
此自動收費系統(tǒng)硬件主要由繳費卡、讀卡器與上位機組成,如圖1所示。繳費卡和讀卡器均主要包括兩個模塊:數(shù)據(jù)處理模塊和無線收發(fā)模塊,讀卡器通過串口與上位機通信。
圖1 系統(tǒng)組成結(jié)構(gòu)圖
圖2 無線收發(fā)模塊硬件電路
系統(tǒng)的工作原理為:讀卡器通過無線方式監(jiān)控是否有車輛駛?cè)胧召M站,當(dāng)檢測到有車輛進(jìn)入時,與繳費卡建立通信連接;上位機軟件發(fā)送讀命令,該命令幀以無線的方式發(fā)送至繳費卡,繳費卡隨后向讀卡器回發(fā)卡內(nèi)余額數(shù)據(jù)幀,該數(shù)據(jù)幀包含當(dāng)前車輛電子標(biāo)簽ID和余額數(shù)據(jù);讀卡器再將此數(shù)據(jù)幀發(fā)送至上位機收費軟件,收費軟件根據(jù)電子標(biāo)簽ID對車輛身份進(jìn)行識別后扣除相應(yīng)的繳費金額并更新數(shù)據(jù)庫;最后,上位機發(fā)送寫命令幀,將繳費后的余額數(shù)據(jù)寫入繳費卡。至此,一個完整的車輛自動繳費過程完成。
繳費卡和讀卡器上無線收發(fā)模塊和數(shù)據(jù)處理模塊的硬件設(shè)計基本相同,兩者在自動收費過程中所處的位置不同,在通信中亦完成不同的功能。下面對已實現(xiàn)系統(tǒng)中繳費卡和讀卡器通用的無線收發(fā)模塊和數(shù)據(jù)處理模塊的硬件實現(xiàn)進(jìn)行說明。
無線收發(fā)模塊的主控芯片CC1000是一款單片收發(fā)芯片,該模塊硬件電路[1]如圖2所示。由于CC1000工作時容易受到外部干擾,在設(shè)計時需選擇精度較高的外圍阻容器件,其中諧振電感L101需要具有較高的精度 (±0.5%);布線時合理地分割模擬和數(shù)字信號區(qū);同時采用電容網(wǎng)絡(luò)對電源進(jìn)行濾波等方式來減少干擾。
系統(tǒng)的處理器采用AVR單片機ATmega128L[2],圖3為單片機ATmega128L與射頻芯片CC1000的連接電路示意圖。
圖3 ATmega128L與CC1000的連接
ATmega128L單片機對CC1000的配置通過三線串行數(shù)字接口PALE,PDATA,PCLK[3]完成。單片機的PORTB4~6號引腳分別與之相連,如圖3所示。按照CC1000配置時序的要求,當(dāng)PALE信號為低電平時,在PCLK提供的時鐘信號的驅(qū)動下,7位寄存器地址首先通過PDATA發(fā)送到CC1000;然后PALE信號被拉高,再依次發(fā)送讀/寫控制位和8位配置數(shù)據(jù)。讀取CC1000寄存器值時步驟與之類似,但是數(shù)據(jù)流方向相反。處理器模塊與無線模塊間的數(shù)據(jù)交換通過DCLK和DIO實現(xiàn),數(shù)據(jù)交換的時鐘由CC1000提供。
圖4 CC1000的初始化
ATmega128L的初始化[4,5]主要包括系統(tǒng)時鐘控制單元,定時器,IO口等的初始化。CC1000的初始化比較復(fù)雜,需要遵循嚴(yán)格的順序:首先復(fù)位芯片,重置片內(nèi)所有的寄存器;然后校準(zhǔn)壓控振蕩器(VCO)和鎖相環(huán)(PLL);再打開偏置電路;最后按照應(yīng)用要求將CC1000配置為發(fā)送或接收狀態(tài)。CC1000初始化的具體流程如圖4所示。
在CC1000初始化過程中,為了對電壓波動,溫漂進(jìn)行補償,系統(tǒng)工作前必須先對CC1000片內(nèi)的壓控振蕩器和鎖相環(huán)進(jìn)行校準(zhǔn)。為了防止校準(zhǔn)不成功導(dǎo)致系統(tǒng)死機,在校準(zhǔn)過程中加入了超時控制。通過校準(zhǔn),有效提高了鎖相環(huán)穩(wěn)定性。
系統(tǒng)中數(shù)據(jù)以數(shù)據(jù)幀的方式進(jìn)行傳輸。通信過程中主要用到兩類數(shù)據(jù)幀:信令幀和傳輸幀。由于CC1000沒有內(nèi)建通信協(xié)議,需要自行設(shè)計通信控制策略保證通信的可靠性。
本系統(tǒng)設(shè)計的通信控制策略為:讀卡器首先向繳費卡發(fā)送呼叫請求,然后轉(zhuǎn)入接收狀態(tài)等待接收數(shù)據(jù);繳費卡接收到呼叫請求后轉(zhuǎn)為發(fā)送狀態(tài)開始發(fā)送傳輸幀;讀卡器接收到數(shù)據(jù)后向繳費卡發(fā)送傳輸成功信息;繳費卡接收到傳輸成功信息后重置為接收狀態(tài)等待下一次呼叫,若沒有接收到傳輸成功信息,則保持傳輸幀幀標(biāo)識不變,重新發(fā)送該傳輸幀,以防止數(shù)據(jù)丟幀,保證通信的可靠性。
圖5 通信控制策略
?
為了防止外界干擾造成的通信死機,通信過程中加入了超時控制:如果數(shù)據(jù)傳輸中斷超過規(guī)定的控制時間(程序中為 Timeout),系統(tǒng)會自動重新建立通信連接。完整的通信控制策略如圖5所示。
上位機收費軟件采用LabWindows/CVI[6,7]開發(fā),包括繳費管理,日志管理,用戶管理三個模塊。繳費管理模塊根據(jù)車輛的電子標(biāo)簽ID對車輛進(jìn)行收費;日志管理模塊對當(dāng)日通過該收費站進(jìn)行自動繳費的車輛牌號進(jìn)行記錄,方便以后查詢;通過用戶管理模塊可以方便地創(chuàng)建用戶賬戶,并對用戶權(quán)限進(jìn)行控制。收費系統(tǒng)人機界面如圖6所示。
圖6 上位機收費軟件
在面向高速公路收費的應(yīng)用中,繳費卡與讀卡器之間無線通信的可靠性尤為重要,為此進(jìn)行了多次測試。由于條件所限,測試在實驗室中模擬外場環(huán)境進(jìn)行。測試結(jié)果如表1所示。
最后,將繳費卡按照一定速率通過讀卡器的無線讀卡區(qū)域以此測試上位機收費軟件的功能。測試結(jié)果表明,讀卡器能夠迅速識別繳費器,并能按照設(shè)定的收費標(biāo)準(zhǔn)進(jìn)行費用收取。
通過對系統(tǒng)軟硬件的分析以及實驗測試,證實該系統(tǒng)能夠可靠,穩(wěn)定地進(jìn)行無線通信并能高效地完成自動收費功能。同時,本系統(tǒng)中低功耗無線數(shù)據(jù)傳輸模塊的設(shè)計也可為環(huán)境監(jiān)測,手持無線抄表設(shè)備等能量敏感的應(yīng)用領(lǐng)域提供參考。
[1] Chipcon Corporation.CC1000 datasheet[EB/OL].2002:9~10,25~30
[2] Atmel Corporation.ATmega128L datasheet[EB/OL].2005:46~54,155~180
[3] 徐宏宇.極低功耗無線收發(fā)集成芯片CC1000[J].單片機與嵌入式系統(tǒng)應(yīng)用,2003(7):49~51
[4] 馬潮.高檔8位單片機ATmega128原理與開發(fā)應(yīng)用指南[M].北京:北京航空航天大學(xué)出版社,2004:46~52
[5] 耿德根,宋建國,馬潮 等.AVR高速嵌入式單片機原理與應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2002:16~20
[6] 劉君華,賈惠芹,閻曉艷.虛擬儀器編程語言LabWindows/CVI教程[M].北京:電子工業(yè)出版社,2002:18~41,146~147
[7] 王建新,楊世鳳,隋美.LabWindows/CVI測試技術(shù)及工程應(yīng)用[M].北京:化學(xué)工業(yè)出版社,2006:177~187