姜俊杰 姚錫凡 張毅
摘 ?要: 為了滿足智能停車場對車位狀態(tài)監(jiān)控的需求,便于停車場的運營,開發(fā)了一種可實現(xiàn)多車位狀態(tài)檢測的系統(tǒng)。首先,使用HC?SR04超聲波測距模塊采集車位狀態(tài)數(shù)據(jù);然后,使用CC2530開發(fā)板和ZigBee技術組建無線系統(tǒng)的協(xié)調器和終端設備,傳輸車位狀態(tài)數(shù)據(jù);最后,使用Visual Studio 2010設計上位機以接收RS 232串口數(shù)據(jù),顯示車位狀態(tài),且計算出停車時長和停車費用、車位總數(shù)以及剩余車位數(shù)量。經測試表明,所設計系統(tǒng)可達到預期效果,具有實用參考價值。
關鍵詞: ZigBee技術; 車位檢測; 超聲波測距; 數(shù)據(jù)接收; 無線傳輸; 串口通信
中圖分類號: TN92?34 ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼: A ? ? ? ? ? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2020)07?0121?05
Realization of parking space detection system based on ultrasonic and ZigBee
JIANG Junjie1, YAO Xifan1, ZHANG Yi2
(1. School of Mechanical and Automotive Engineering, South China University of Technology, Guangzhou 510640, China;
2. Department of Mechanical & Electrical Engineering, Guangdong Communication Polytechnic, Guangzhou 510800, China)
Abstract: In order to meet the demand of intelligent parking lots for monitoring the status of parking spaces and facilitate the operation of parking lots, a detecting system of multi?parking space status was developed. The ultrasonic ranging module HC?SR04 is utilized in the system to collect the status data of parking spaces. The coordinator and end devices in the wireless system are set up with CC2530 development boards based on the ZigBee technology to transmit the status data of parking spaces. An upper computer is designed with Visual Studio 2010 to receive the data from RS 232 serial port, display parking space status, and calculate the parking time, parking charge, the number of total parking spaces and remaining parking spaces. The testing result indicates that the designed system can achieve the desired effect and has practical reference value.
Keywords: ZigBee technology; parking space detection; ultrasonic ranging; data acceptance; wireless transmission; serial port communication
0 ?引 ?言
21世紀以來,我國的經濟已經得到了迅速的發(fā)展,汽車制造產業(yè)也在科技革命的推動下迅猛發(fā)展,其保有量的年增長率也越來越高,極大地方便了人們的日常出行,使人們的生活水平不斷提高[1]。但我國兩億八千一百萬輛的汽車數(shù)據(jù)量無疑會使我國交通運載能力面臨巨大的壓力?;谕\囯y的現(xiàn)實,發(fā)達國家于20世紀60年代提出了停車誘導系統(tǒng)(Parking Guidance System,PGS)[2]。實現(xiàn)PGS關鍵技術之一就是依靠車位檢測技術來監(jiān)測有無停車,其中常用的車位檢測方法有:感應線圈檢測[3]、地磁檢測[4]、超聲波檢測、紅外檢測[5]、視頻車位檢測[6]。前兩種方法安裝維護成本高,在實施時會破壞停車場[7],后兩種方法的檢測精度易受環(huán)境影響,而超聲波檢測則具有成本低、壽命長、穩(wěn)定性相對可靠的優(yōu)點。
進入21世紀,無線通信技術逐漸成為主流,從而取代了架設操作復雜的有線通信方式。常見的無線通信技術包括藍牙,WiFi,ZigBee,NFC等,其中,ZigBee技術因其低功耗、低成本而受到許多應用領域的青睞[8]。ZigBee用于大型停車場領域具有如下優(yōu)勢:不必擔心網(wǎng)絡容量的問題[9]; ZigBee能更快定位找到車輛;可以構造星型、樹型和網(wǎng)狀三種網(wǎng)絡拓撲結構[10],保證無線數(shù)據(jù)傳輸?shù)母咝c可靠。
智能停車場系統(tǒng)的發(fā)展離不開先進可靠的車位檢測技術、數(shù)據(jù)傳輸方式以及功能強大的停車軟件,因此本文著重研究車位檢測系統(tǒng)。
1 ?總體設計
1.1 ?總設計方案
一個完整的停車誘導系統(tǒng)包括以下四部分:車位信息采集、車位信息處理、車位信息傳輸和車位信息發(fā)布[11]。本文的車位檢測系統(tǒng)著重實現(xiàn)其中的第一、第三和第四部分功能,因此,將總設計方案分成以下三個部分:車位信息采集、車位信息傳輸和車位信息顯示,總設計方案圖如圖1所示。
1.2 ?車位信息采集
通過傳感器實現(xiàn)停車場車位信息的實時采集[12],需要選擇車位檢測方式以及相應的控制器。超聲波檢測方式與其他方式相比,具有便于安裝、體積小、技術成熟、工作壽命長的優(yōu)點,因此選用超聲波檢測方式。具體采用HC?SR04超聲波測距模塊,此外,選用TI德州儀器公司生產的CC2530F256芯片作為控制器。
1.3 ?車位信息傳輸
實現(xiàn)車位數(shù)據(jù)采集終端與顯示平臺之間的數(shù)據(jù)通信,需要選用合適的通信方式和設備。表1對常用的四種無線通信方式進行對比,考慮到一個停車場多車位的實際情況,滿足使用條件的有WiFi和ZigBee兩種。與WiFi相比,ZigBee具有更低的發(fā)射功率、更高的安全性和自組網(wǎng)的特點,因此,選用ZigBee技術完成車位信息的傳輸。
1.4 ?車位信息顯示
顯示部分利用Visual Studio 2010設計一個上位機平臺,通過RS 232串口傳輸[7]接收來自ZigBee協(xié)調器的數(shù)據(jù),在平臺上顯示當前時刻、測距結果、車位占用情況(紅色即被占用/綠色即空)、停車時長和停車費用、車位總數(shù)以及剩余車位數(shù)量等。
2 ?基于超聲波的車位檢測
2.1 ?實驗硬件
如圖2所示,單個車位檢測所用到的硬件包括一塊CC2530F256開發(fā)板(圖中右側部分)、一個HC?SR04超聲波測距模塊(圖中左側部分)、杜邦線以及下載器。HC?SR04模塊與CC2530F256開發(fā)板通過杜邦線連接,即GND與GND、VCC與5 V引腳、Trig與P1.1、Echo與P0.6分別連接。下載器連接開發(fā)板和計算機,用來編譯和調試程序。
2.2 ?程序設計
IAR 8.10是一款用于TI單片機的編程軟件,采用IAR 8.10編寫程序,程序流程如圖3所示。整個程序包括主程序、測距程序以及串口通信程序。
2.3 ?實驗驗證
程序設計完成后,用下載器進行下載和調試,并使用USB轉串口線連接底板與計算機,打開串口調試助手,選擇正確的串口(COM3)和波特率(9 600),得到如圖4所示的測距結果。
為驗證車位檢測的測距效果,將連有超聲波測距模塊的開發(fā)板固定在天花板上并更換不同高度的待測物,在HC?SR04超聲波測距模塊的測量范圍(2~400 cm)內進行了多次測距實驗,并與手工測量進行對比,得到測距誤差,如表2所示。
由表2數(shù)據(jù)可知,隨著距離的增加,誤差及相對誤差都有所增大,其誤差主要來源于以下方面:
1) 環(huán)境因素的影響,包括溫度、壓力、濕度和密度[13],其中,最主要的影響因素是溫度;
2) 發(fā)射與接收時間差,粉塵等物質導致實際測量時未必是第一個回波的過零觸發(fā),使時間略微變大;
3) 超聲波波束與探測目標之間的夾角不等于90°,導致測量結果大于實際距離。考慮到相對誤差低于3%,且距離閾值設置合理時,測距的誤差不會導致車位狀態(tài)發(fā)生變化,因此可以認為該車位檢測是可靠的。
3 ?基于ZigBee的無線數(shù)據(jù)傳輸
3.1 ?硬件選擇
為實現(xiàn)多車位的檢測,在硬件資源的限制下設計了可檢測兩個車位的系統(tǒng)。在2.1節(jié)車位檢測硬件部分的基礎上新增了CC2530F256開發(fā)板和天線,把天線安裝在開發(fā)板的接口上,最后本實驗所用到的硬件如圖5所示,其中,兩塊開發(fā)板作為終端設備使用,另一塊開發(fā)板作為協(xié)調器使用。
3.2 ?物理地址讀寫
一個CC2530F256單片機具有兩種64位的物理地址,分別為Primary IEEEE address和Secondary IEEE address,前者由制造商定義,只讀且無法寫入,后者可在SmartRF Flash Programmer軟件中進行讀寫。默認的Secondary IEEE address是FF FF FF FF FF FF FF FF,為將協(xié)調器和兩個終端設備進行區(qū)分,需要對其進行重寫。讀寫后的三個設備的Primary IEEEE address和Secondary IEEE address如表3所示。
3.3 ?基于Zstack協(xié)議棧的程序設計
Zstack協(xié)議找是TI公司為ZigBee提供的一個解決方案,選用的版本為ZStack?CC2530?2.5.1a,在Zstack協(xié)議棧的APP層中的SampleApp.c文件內對程序進行修改以實現(xiàn)數(shù)據(jù)傳輸功能,程序流程如圖6所示。
3.4 ?數(shù)據(jù)傳輸驗證
在程序設計中定義了1#終端設備向協(xié)調器發(fā)送的數(shù)據(jù)格式為“1:xxxcm”,2#終端設備向協(xié)調器發(fā)送的數(shù)據(jù)格式為“2:xxxcm”。其中,xxx表示所測得的距離;終端設備向串口發(fā)送的數(shù)據(jù)格式為“Axxx#”和“Bxxx#”,A表示1#終端設備,B表示2#終端設備。
將協(xié)調器與計算機連接,協(xié)調器上的LED1與LED2常亮,CSN閃爍,隨后三個燈暗,而LED1則閃爍三次,表明成功建立網(wǎng)絡;給兩個終端設備通電,會請求加入網(wǎng)絡,終端設備上的LED1閃爍三次,則表示成功加入網(wǎng)絡,在計算機端打開串口調試助手,選擇COM3,打開串口,車位數(shù)據(jù)便會顯示在窗口上,如圖7所示。
4 ?上位機軟件設計
4.1 ?界面設計
在visual studio 2010中選擇創(chuàng)建Windows窗體應用程序,插入Label,TextBox,GroupBox,ComboBox,Button,Timer,PictureBox控件,并修改各控件的名稱、大小等屬性,完成后的上位機界面效果如圖8所示。
在圖8中,上位機界面分成了四個部分。左側,是停車場的界面圖,車位狀態(tài)將呈現(xiàn)在本區(qū)域中,由于硬件中只有兩個終端設備,故只能檢測兩個車位(P1,P2)的停車情況,因此,將P3~P10標記為“建設中”,更多的終端設備將在后續(xù)工作中連入;中間顯示當前時刻,可選擇串口名稱和波特率,打開或者關閉串口;右側可對距離閾值進行修改,顯示兩個停車位的測距結果以及各車位對應的停車時長和停車費用;最后,在界面的底部位置統(tǒng)計出車位總數(shù)和剩余車位數(shù)量。
4.2 ?程序設計
在代碼頁中對相應的控件進行程序設計,程序的設計思路是以串口的打開和關閉作為開始和結束,之間包括數(shù)據(jù)的接收和處理以及界面的顯示,如圖9所示。
4.3 ?功能驗證
在完成上位機軟件設計后,對其功能效果進行驗證,本文的停車車位模塊和軟件中存在兩個車位,故分成四種狀態(tài):
① 兩個車位都空;
② 1#車位空、2#車位被占用;
③ 1#車位被占用、2#車位空;
④ 兩個車位都被占用。
選擇相應的串口名稱和波特率,在本文中選擇的“串口”是COM3,選擇的“波特率”是9 600。打開串口,兩個車位的實際測距結果在對應文本框中顯示,用戶可根據(jù)停車場實際情況及需求在“設置距離”文本框中輸入數(shù)值。點擊兩個“設置”按鈕,車位狀態(tài)將會顯示(紅色即被占用/綠色即空),同時統(tǒng)計出剩余車位的數(shù)量。若車位狀態(tài)為紅色,表示有車停入,在“停車時長”文本框中開始計時(為方便測試,以秒為單位),同時“停車費用”文本框中的數(shù)值也隨之增長(計費方式為5元/h,不滿一小時記作一小時);若車位狀態(tài)變?yōu)榫G色,表示有車離開,此時計時停止,顯示最終停車費用;若車位狀態(tài)再次變?yōu)榧t色,則從0開始計時計費,以此類推。圖10是狀態(tài)①對應的上位機界面圖,表4是對應四種狀態(tài)下,上位機和下位機上顯示的內容。
5 ?結 ?語
本文開發(fā)了基于超聲波與ZigBee的車位檢測系統(tǒng),具體工作包括:
1) 采用CC2530F256開發(fā)板以及HC?SR04超聲波測距模塊等硬件,設計和開發(fā)了一種基于超聲波的車位檢測模塊,使用IAR 8.10進行程序編寫,并通過串口調試助手軟件進行車位檢測實驗驗證,證明該模塊用于停車場的車位檢測是可行的。
2) 選用ZigBee技術進行車位信息的傳輸,基于Zstack?2.5.1a協(xié)議棧,在APP層中對代碼進行修改以滿足實際需求,展示數(shù)據(jù)包的捕獲過程,最后使用串口調試助手驗證數(shù)據(jù)傳輸?shù)男Ч?/p>
3) 使用Visual Studio 2010軟件,基于C#語言設計上位機軟件,該軟件可以模擬出停車場的界面并且可以實時更新車位狀態(tài)的信息,此外,還可以顯示當前時刻、測距結果、停車時長和停車費用、車位總數(shù)以及剩余車位數(shù)量,距離閾值具有可修改性以滿足特定狀況的需要。
最后,將上述三部分工作結合進行功能驗證,表示系統(tǒng)運行是可行的。在未來進一步的研究工作中將連入更多的終端設備并結合具體的停車場景進行。
注:本文通訊作者為姚錫凡。
參考文獻
[1] 王斯琪.基于Zigbee的超聲波車位檢測誘導系統(tǒng)設計[D].石家莊:石家莊鐵道大學,2015.
[2] 王勁楓.基于ZigBee無線網(wǎng)絡的停車誘導系統(tǒng)研究[D].貴陽:貴州師范大學,2018.
[3] 耿寸召.基于ZigBee技術的停車場車位檢測系統(tǒng)設計[D].呼和浩特:內蒙古大學,2013.
[4] 高全勇.基于地磁的車輛探測系統(tǒng)研制[D].北京:中國科學院大學,2017.
[5] 程義民.大型停車庫車位檢測及信息系統(tǒng)設計[D].呼和浩特:內蒙古大學,2014.
[6] 陳春龍.智能高清車位檢測儀的設計及在停車場管理系統(tǒng)中的應用[D].秦皇島:燕山大學,2017.
[7] ZHU Hongmei, YU Fengqi. A vehicle parking detection method based on correlation of magnetic signals [EB/OL]. (2015?04?14) [2015?07?08]. https://doi.org/10.1155/2015/361242.
[8] 張貝貝,周祖榮.基于ZigBee技術的智能水浸系統(tǒng)設計[J].計算機工程與設計,2016,37(11):3130?3135.
[9] 岳學軍,劉永鑫,王葉夫,等.基于ZigBee與地磁傳感技術的停車誘導系統(tǒng)[J].計算機應用,2014,34(3):884?887.
[10] 畢燁,陳嶠鷹.基于計算機的停車場監(jiān)控系統(tǒng)研究[J].現(xiàn)代電子技術,2016,39(10):84?87.
[11] 朱齊媛,林俊杰,陳新原.基于物聯(lián)網(wǎng)的停車泊位誘導系統(tǒng)的設計[J].科技視界,2018(10):11?13.
[12] 蔡亮.車位信息采集系統(tǒng)設計[J].電子技術與軟件工程,2015(9):272.
[13] 胡延蘇,高昂.超聲波測距誤差分析及校正研究[J].計算機測量與控制,2015,23(8):2820?2823.