麻志濱 徐安然 張敏
摘 要: 設(shè)計(jì)了一種簡(jiǎn)易的不停車收費(fèi)系統(tǒng)。設(shè)計(jì)用單片機(jī)AT89C52控制無線模塊,形成發(fā)射機(jī)和接收機(jī),實(shí)現(xiàn)車輛信息的傳遞,并通過串口顯示在計(jì)算機(jī)上。采用的nRF24L01無線模塊、數(shù)字信號(hào)編碼和二次調(diào)制方式之間的加密通信原理,軟件設(shè)計(jì)采用自上而下的模塊化設(shè)計(jì)思想,使系統(tǒng)具有分布式、小型化的特點(diǎn)。測(cè)試結(jié)果表明,該系統(tǒng)具有抗干擾性強(qiáng)、功耗低、反應(yīng)速度快、傳輸效率高和簡(jiǎn)單的特點(diǎn)。
關(guān)鍵詞: 無線通信; AT89C52; nRF24L01; 不停車收費(fèi)
中圖分類號(hào): TN911?34 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2014)06?0044?03
0 引 言
電子不停車收費(fèi)系統(tǒng)(ETC)利用車輛自動(dòng)識(shí)別技術(shù)完成車輛與收費(fèi)站之間的無線數(shù)據(jù)通信,進(jìn)行車輛自動(dòng)識(shí)別和相關(guān)數(shù)據(jù)的交換,再通過計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行收費(fèi)數(shù)據(jù)的處理,從而實(shí)現(xiàn)不停車自動(dòng)收費(fèi)[1]。這一技術(shù)具有提高高速公路收費(fèi)站口的通行能力,減少道路阻塞現(xiàn)象、提高行車安全、使公路收費(fèi)走向電子自動(dòng)化、減少收費(fèi)管理的成本等優(yōu)點(diǎn)。目前,在美國、歐洲、日本等許多發(fā)達(dá)國家和地區(qū)的電子收費(fèi)系統(tǒng)已經(jīng)聯(lián)網(wǎng)并形成規(guī)模效益,其明顯的社會(huì)經(jīng)濟(jì)效益具有強(qiáng)大的吸引力。
本文設(shè)計(jì)并制造了一種基于51單片機(jī)的簡(jiǎn)易ETC系統(tǒng)。攜帶有各種車輛信息的單片機(jī),通過對(duì)獨(dú)立鍵盤的控制,實(shí)現(xiàn)不同信息的發(fā)送。信息將會(huì)由特定的編碼,通過無線模塊和天線發(fā)送給接收機(jī),當(dāng)接收機(jī)收到信息后,又通過接收機(jī)的單片機(jī)控制串口芯片,將接收到的信息顯示在上位機(jī)上。
1 不停車收費(fèi)系統(tǒng)的設(shè)計(jì)
本方案是通過單片機(jī)對(duì)nRF24L01的無限模塊進(jìn)行控制,編輯nRF24L01的工作模式和編碼方式,將信息通過無線模塊的天線發(fā)射出去,接收機(jī)的天線獲取信息后再由無線模塊傳遞回單片機(jī),并通過上位機(jī)直接顯示出車輛信息,并做簡(jiǎn)單處理。系統(tǒng)框圖如圖1所示[2]。
1.1 硬件電路設(shè)計(jì)
硬件電路主要由AT89C52單片機(jī),LED燈,獨(dú)立鍵盤,nRF24L01無線集成模塊,9針串口(母),MAX232串口控制芯片,供電的干電池組成。本設(shè)計(jì)選擇nRF24L01無線集成模塊,主要考慮nRF24L01無線芯片,有自動(dòng)編碼的功能,有較好的抗干擾性,工作頻率很高,可以達(dá)到2.4 GHz。這樣大大縮小了對(duì)天線體積的要求,實(shí)現(xiàn)電路時(shí)可以做到簡(jiǎn)潔且高效地實(shí)現(xiàn)最終功能。
該電路能夠?qū)崿F(xiàn)無線數(shù)據(jù)和信號(hào)的傳輸。具體設(shè)計(jì)為字符編碼的傳輸,具體電路包含MCU最小系統(tǒng)電路、電源電路、無線傳輸電路、顯示電路、鍵盤控制電路幾部分構(gòu)成。該系統(tǒng)整體電路包含兩個(gè)分開的部分:發(fā)送模塊電路、接收模塊電路。電路圖如圖2、圖3所示[3?4]。
1.1.1 單片機(jī)時(shí)鐘電路
單片機(jī)的晶振電路中的電容C1和C2的典型值通常選擇30 pF左右,該電容的大小會(huì)影響振蕩電路頻率的高低、振蕩器的穩(wěn)定性和起振的快速性。晶體振蕩頻率的范圍通常在1.2~12 MHz。晶體的頻率越高,系統(tǒng)的時(shí)鐘頻率越快,單片機(jī)的運(yùn)行速度越快。AT89C52常選擇振蕩頻率12 MHz的石英晶體。
1.1.2 單片機(jī)復(fù)位電路
復(fù)位是單片機(jī)的初始化操作,只需要給AT89C52的復(fù)位引腳RST加上大于2個(gè)機(jī)器周期(即24個(gè)時(shí)鐘振蕩周期)的高電平就可以使AT89C52復(fù)位。復(fù)位時(shí),單片機(jī)初始化為0000H,從0000H單元開始執(zhí)行程序。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)程序運(yùn)行錯(cuò)誤(如程序跑飛)或操作錯(cuò)誤使系統(tǒng)處于鎖死狀態(tài)時(shí),也需要復(fù)位鍵使RST腳為高電平,使AT89C52擺脫“跑飛”或“死鎖”狀態(tài)而重新啟動(dòng)。
1.1.3 電源電路
該系統(tǒng)中的無線模塊要用3.3 V電源供電,而單片機(jī)的需要5 V供電,所以需要加個(gè)穩(wěn)壓芯片這里采用HT7133進(jìn)行穩(wěn)壓處理。把5 V穩(wěn)降至3.3 V來供給無線傳輸模塊使用。經(jīng)測(cè)試完全滿足各器件的運(yùn)行要求。
1.1.4 無線傳輸電路
無線傳輸電路通過nRF24L01進(jìn)行傳遞,它可以進(jìn)行無線收發(fā),但只能進(jìn)行半雙工傳遞方式,因而其收發(fā)電路的接線方式是相同的。
1.1.5 按鍵控制電路
由于本設(shè)計(jì)中,預(yù)設(shè)的按鍵數(shù)量不多,所以采用獨(dú)立鍵盤,由單片機(jī)I/O口直接控制。每個(gè)按鍵代表一輛車的信息卡,通過檢測(cè)按鍵是否按下,來確定是否有車輛通過,而按下的按鍵,則代表通過的車輛信息。
1.1.6 上位機(jī)控制電路
上位機(jī)控制電路主要是為了完成對(duì)文字的控制,因?yàn)樯衔粰C(jī)即計(jì)算機(jī)是最常使用的設(shè)備,而且操作過程實(shí)用方便,因此采用上位機(jī)進(jìn)行控制。上位機(jī)采用VC進(jìn)行程序的編寫,最終完成系統(tǒng)功能。
1.2 程序設(shè)計(jì)
軟件編程主要實(shí)現(xiàn)對(duì)單片機(jī)和無線模塊的控制,實(shí)現(xiàn)無線模塊的模式設(shè)置和信息發(fā)送,還有時(shí)鐘電路等的控制,并最終實(shí)現(xiàn)無差錯(cuò)的傳輸車輛信息。
利用KEIL軟件編寫C語言程序,控制發(fā)射機(jī)和接收機(jī)核心系統(tǒng)單片機(jī)89C52芯片,使芯片進(jìn)一步控制nRF24L01無線模塊進(jìn)行無線數(shù)據(jù)的通信,實(shí)現(xiàn)車輛信息在兩個(gè)模塊之間的傳輸。主要包括:無線模塊的定義及初始化,I/O口分配的程序編寫,LED燈程序控制,獨(dú)立鍵盤程序控制,無線模塊收發(fā)模式控制,無線模塊收發(fā)信息的控制,串口控制程序、上位機(jī)編寫等。
程序總體設(shè)計(jì)流程圖如圖4所示,主程序構(gòu)成無限循環(huán),主要完成單片機(jī)初始化,按鍵檢測(cè),按鍵處理,延時(shí),待機(jī)等待的狀態(tài)顯示等功能[5]。
圖4 程序總體設(shè)計(jì)流程圖
1.2.1 按鍵控制子程序
按鍵主要用于人機(jī)界面的輸入,按鍵子程序主要用于按鍵的檢測(cè)。由于綜合考慮按鍵硬件去抖動(dòng)成本要比軟件去抖動(dòng)成本高很多,因此電路采用軟件去抖。其過程如圖5所示。
1.2.2 無線模塊控制程序
nRF24L01自動(dòng)應(yīng)答機(jī)制為ENAA=1時(shí),nRF24L01進(jìn)入自動(dòng)應(yīng)答機(jī)制。Prim?RX配置其處于Prim TX或Prim RX。自動(dòng)應(yīng)答機(jī)制分為PTX(發(fā)射源)和PRX(接收源)兩種:PTX是主動(dòng)發(fā)送后等待應(yīng)答,PRX是等待應(yīng)答后被動(dòng)發(fā)送。
例如一個(gè)nRF24L01配置為PTX,另一個(gè)設(shè)為PRX,二者就可以自動(dòng)通信。
Prim TX mode下無線模塊控制程序框圖如圖6所示。
1.2.3 上位機(jī)編寫
用VC++軟件編寫上位機(jī),使由單片機(jī)串口發(fā)送來的數(shù)據(jù)可以顯示在上位機(jī)上,并進(jìn)行簡(jiǎn)單的處理[6]。
2 系統(tǒng)實(shí)現(xiàn)效果
該不停車收費(fèi)系統(tǒng)所實(shí)現(xiàn)的功能如圖7所示,其無線模塊收發(fā)機(jī)實(shí)物圖如圖8所示。
系統(tǒng)設(shè)計(jì)完成后,通過編程后下載到單片機(jī)中對(duì)系統(tǒng)功能進(jìn)行了調(diào)試。結(jié)果證明,該系統(tǒng)能滿足設(shè)計(jì)要求。調(diào)試結(jié)果效果圖如圖9所示[7]。
3 結(jié) 論
本設(shè)計(jì)從經(jīng)濟(jì)實(shí)用的角度出發(fā),采用美國Atmel公司的單片機(jī)AT89S52與nRF24L01作為主控芯片與無線收發(fā)單元,結(jié)合外圍的鍵盤輸入、LED顯示等電路并用C語言編寫主控芯片的控制程序,實(shí)現(xiàn)了一款可以實(shí)現(xiàn)無線收發(fā)車輛信息的硬件系統(tǒng),設(shè)計(jì)完全可以達(dá)到設(shè)計(jì)目地,且有一定的拓展性。使用單片機(jī)制作的接收機(jī)和發(fā)射機(jī)具有軟硬件設(shè)計(jì)簡(jiǎn)單,易于開發(fā),成本較低,安全可靠,操作方便等特點(diǎn),實(shí)現(xiàn)了ETC車道所用的功能上的模擬。
不過,本設(shè)計(jì)實(shí)現(xiàn)的功能較為單一,存儲(chǔ)的信息量有限,而真正的不停車收費(fèi)系統(tǒng)管理,有強(qiáng)大的數(shù)據(jù)庫作為支撐,可以進(jìn)行大量信息的交流,并具有很強(qiáng)的抗干擾能力,還能通過網(wǎng)絡(luò)實(shí)現(xiàn)收費(fèi)。所以本設(shè)計(jì)只是實(shí)現(xiàn)了強(qiáng)大的不停車收費(fèi)系統(tǒng)的硬件平臺(tái)的模擬[8]。
參考文獻(xiàn)
[1] 廉飛宇,范伊紅,張?jiān)? ETC電子不停車收費(fèi)的技術(shù)研究[J].計(jì)算機(jī)工程與應(yīng)用,2007,43(5):204?207.
[2] 王曉峰,張致恒,張波,等.基于nRf2401的高速路不停車收費(fèi)系統(tǒng)[J].電力學(xué)報(bào),2009,24(5):431?433.
[3] 李后上,康敏,傅秀清.應(yīng)用RFID的數(shù)控刀具識(shí)別系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代制造工程,2011(5):32?38.
[4] 房澤平.基于雙MCU和nRF2401的無線傳感器網(wǎng)絡(luò)系統(tǒng)[J].自動(dòng)化儀表,2009,30(8):25?27.
[5] 劉曉紅,何永洪.基于nRF2401的無線數(shù)據(jù)通信系統(tǒng)[J].電視技術(shù),2008,32(z1):212?218.
[6] 丁永紅,孫運(yùn)強(qiáng).基于nRF2401的無線數(shù)傳系統(tǒng)設(shè)計(jì)[J].國外電子測(cè)量技術(shù),2008,27(4):45?47.
[7] 辛潔,孫運(yùn)強(qiáng),張倫.基于ATmega16和nRF2401的無線射頻收發(fā)系統(tǒng)設(shè)計(jì)[J].電子測(cè)試,2009(4):60?64.
[8] 張煜,葛海波.基于nRF2401的跳頻無線傳輸系統(tǒng)的實(shí)現(xiàn)[J]. 西安郵電學(xué)院學(xué)報(bào),2009,14(5):27?31.
1.2.2 無線模塊控制程序
nRF24L01自動(dòng)應(yīng)答機(jī)制為ENAA=1時(shí),nRF24L01進(jìn)入自動(dòng)應(yīng)答機(jī)制。Prim?RX配置其處于Prim TX或Prim RX。自動(dòng)應(yīng)答機(jī)制分為PTX(發(fā)射源)和PRX(接收源)兩種:PTX是主動(dòng)發(fā)送后等待應(yīng)答,PRX是等待應(yīng)答后被動(dòng)發(fā)送。
例如一個(gè)nRF24L01配置為PTX,另一個(gè)設(shè)為PRX,二者就可以自動(dòng)通信。
Prim TX mode下無線模塊控制程序框圖如圖6所示。
1.2.3 上位機(jī)編寫
用VC++軟件編寫上位機(jī),使由單片機(jī)串口發(fā)送來的數(shù)據(jù)可以顯示在上位機(jī)上,并進(jìn)行簡(jiǎn)單的處理[6]。
2 系統(tǒng)實(shí)現(xiàn)效果
該不停車收費(fèi)系統(tǒng)所實(shí)現(xiàn)的功能如圖7所示,其無線模塊收發(fā)機(jī)實(shí)物圖如圖8所示。
系統(tǒng)設(shè)計(jì)完成后,通過編程后下載到單片機(jī)中對(duì)系統(tǒng)功能進(jìn)行了調(diào)試。結(jié)果證明,該系統(tǒng)能滿足設(shè)計(jì)要求。調(diào)試結(jié)果效果圖如圖9所示[7]。
3 結(jié) 論
本設(shè)計(jì)從經(jīng)濟(jì)實(shí)用的角度出發(fā),采用美國Atmel公司的單片機(jī)AT89S52與nRF24L01作為主控芯片與無線收發(fā)單元,結(jié)合外圍的鍵盤輸入、LED顯示等電路并用C語言編寫主控芯片的控制程序,實(shí)現(xiàn)了一款可以實(shí)現(xiàn)無線收發(fā)車輛信息的硬件系統(tǒng),設(shè)計(jì)完全可以達(dá)到設(shè)計(jì)目地,且有一定的拓展性。使用單片機(jī)制作的接收機(jī)和發(fā)射機(jī)具有軟硬件設(shè)計(jì)簡(jiǎn)單,易于開發(fā),成本較低,安全可靠,操作方便等特點(diǎn),實(shí)現(xiàn)了ETC車道所用的功能上的模擬。
不過,本設(shè)計(jì)實(shí)現(xiàn)的功能較為單一,存儲(chǔ)的信息量有限,而真正的不停車收費(fèi)系統(tǒng)管理,有強(qiáng)大的數(shù)據(jù)庫作為支撐,可以進(jìn)行大量信息的交流,并具有很強(qiáng)的抗干擾能力,還能通過網(wǎng)絡(luò)實(shí)現(xiàn)收費(fèi)。所以本設(shè)計(jì)只是實(shí)現(xiàn)了強(qiáng)大的不停車收費(fèi)系統(tǒng)的硬件平臺(tái)的模擬[8]。
參考文獻(xiàn)
[1] 廉飛宇,范伊紅,張?jiān)? ETC電子不停車收費(fèi)的技術(shù)研究[J].計(jì)算機(jī)工程與應(yīng)用,2007,43(5):204?207.
[2] 王曉峰,張致恒,張波,等.基于nRf2401的高速路不停車收費(fèi)系統(tǒng)[J].電力學(xué)報(bào),2009,24(5):431?433.
[3] 李后上,康敏,傅秀清.應(yīng)用RFID的數(shù)控刀具識(shí)別系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代制造工程,2011(5):32?38.
[4] 房澤平.基于雙MCU和nRF2401的無線傳感器網(wǎng)絡(luò)系統(tǒng)[J].自動(dòng)化儀表,2009,30(8):25?27.
[5] 劉曉紅,何永洪.基于nRF2401的無線數(shù)據(jù)通信系統(tǒng)[J].電視技術(shù),2008,32(z1):212?218.
[6] 丁永紅,孫運(yùn)強(qiáng).基于nRF2401的無線數(shù)傳系統(tǒng)設(shè)計(jì)[J].國外電子測(cè)量技術(shù),2008,27(4):45?47.
[7] 辛潔,孫運(yùn)強(qiáng),張倫.基于ATmega16和nRF2401的無線射頻收發(fā)系統(tǒng)設(shè)計(jì)[J].電子測(cè)試,2009(4):60?64.
[8] 張煜,葛海波.基于nRF2401的跳頻無線傳輸系統(tǒng)的實(shí)現(xiàn)[J]. 西安郵電學(xué)院學(xué)報(bào),2009,14(5):27?31.
1.2.2 無線模塊控制程序
nRF24L01自動(dòng)應(yīng)答機(jī)制為ENAA=1時(shí),nRF24L01進(jìn)入自動(dòng)應(yīng)答機(jī)制。Prim?RX配置其處于Prim TX或Prim RX。自動(dòng)應(yīng)答機(jī)制分為PTX(發(fā)射源)和PRX(接收源)兩種:PTX是主動(dòng)發(fā)送后等待應(yīng)答,PRX是等待應(yīng)答后被動(dòng)發(fā)送。
例如一個(gè)nRF24L01配置為PTX,另一個(gè)設(shè)為PRX,二者就可以自動(dòng)通信。
Prim TX mode下無線模塊控制程序框圖如圖6所示。
1.2.3 上位機(jī)編寫
用VC++軟件編寫上位機(jī),使由單片機(jī)串口發(fā)送來的數(shù)據(jù)可以顯示在上位機(jī)上,并進(jìn)行簡(jiǎn)單的處理[6]。
2 系統(tǒng)實(shí)現(xiàn)效果
該不停車收費(fèi)系統(tǒng)所實(shí)現(xiàn)的功能如圖7所示,其無線模塊收發(fā)機(jī)實(shí)物圖如圖8所示。
系統(tǒng)設(shè)計(jì)完成后,通過編程后下載到單片機(jī)中對(duì)系統(tǒng)功能進(jìn)行了調(diào)試。結(jié)果證明,該系統(tǒng)能滿足設(shè)計(jì)要求。調(diào)試結(jié)果效果圖如圖9所示[7]。
3 結(jié) 論
本設(shè)計(jì)從經(jīng)濟(jì)實(shí)用的角度出發(fā),采用美國Atmel公司的單片機(jī)AT89S52與nRF24L01作為主控芯片與無線收發(fā)單元,結(jié)合外圍的鍵盤輸入、LED顯示等電路并用C語言編寫主控芯片的控制程序,實(shí)現(xiàn)了一款可以實(shí)現(xiàn)無線收發(fā)車輛信息的硬件系統(tǒng),設(shè)計(jì)完全可以達(dá)到設(shè)計(jì)目地,且有一定的拓展性。使用單片機(jī)制作的接收機(jī)和發(fā)射機(jī)具有軟硬件設(shè)計(jì)簡(jiǎn)單,易于開發(fā),成本較低,安全可靠,操作方便等特點(diǎn),實(shí)現(xiàn)了ETC車道所用的功能上的模擬。
不過,本設(shè)計(jì)實(shí)現(xiàn)的功能較為單一,存儲(chǔ)的信息量有限,而真正的不停車收費(fèi)系統(tǒng)管理,有強(qiáng)大的數(shù)據(jù)庫作為支撐,可以進(jìn)行大量信息的交流,并具有很強(qiáng)的抗干擾能力,還能通過網(wǎng)絡(luò)實(shí)現(xiàn)收費(fèi)。所以本設(shè)計(jì)只是實(shí)現(xiàn)了強(qiáng)大的不停車收費(fèi)系統(tǒng)的硬件平臺(tái)的模擬[8]。
參考文獻(xiàn)
[1] 廉飛宇,范伊紅,張?jiān)? ETC電子不停車收費(fèi)的技術(shù)研究[J].計(jì)算機(jī)工程與應(yīng)用,2007,43(5):204?207.
[2] 王曉峰,張致恒,張波,等.基于nRf2401的高速路不停車收費(fèi)系統(tǒng)[J].電力學(xué)報(bào),2009,24(5):431?433.
[3] 李后上,康敏,傅秀清.應(yīng)用RFID的數(shù)控刀具識(shí)別系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代制造工程,2011(5):32?38.
[4] 房澤平.基于雙MCU和nRF2401的無線傳感器網(wǎng)絡(luò)系統(tǒng)[J].自動(dòng)化儀表,2009,30(8):25?27.
[5] 劉曉紅,何永洪.基于nRF2401的無線數(shù)據(jù)通信系統(tǒng)[J].電視技術(shù),2008,32(z1):212?218.
[6] 丁永紅,孫運(yùn)強(qiáng).基于nRF2401的無線數(shù)傳系統(tǒng)設(shè)計(jì)[J].國外電子測(cè)量技術(shù),2008,27(4):45?47.
[7] 辛潔,孫運(yùn)強(qiáng),張倫.基于ATmega16和nRF2401的無線射頻收發(fā)系統(tǒng)設(shè)計(jì)[J].電子測(cè)試,2009(4):60?64.
[8] 張煜,葛海波.基于nRF2401的跳頻無線傳輸系統(tǒng)的實(shí)現(xiàn)[J]. 西安郵電學(xué)院學(xué)報(bào),2009,14(5):27?31.