王 新,徐 源
(長(zhǎng)沙理工大學(xué) 計(jì)算機(jī)與通信工程學(xué)院,長(zhǎng)沙 410114)
城市化的進(jìn)程導(dǎo)致私家車輛數(shù)量近幾年來在各個(gè)地區(qū)快速增長(zhǎng).根據(jù)權(quán)威機(jī)構(gòu)發(fā)布的統(tǒng)計(jì)數(shù)據(jù),在我國(guó)一線城市中,汽車與停車位的數(shù)量比例為1.25,在二、三線城市該比例高達(dá)2.00,且根據(jù)相關(guān)機(jī)構(gòu)估算,截至2020 年,我國(guó)停車位需求已達(dá)8 000 萬個(gè),缺口巨大,車位資源嚴(yán)重不足[1].實(shí)際上,車輛是一種使用頻率極高的交通工具,其硬性停車需求無法回避,然而停車位的修建速度遠(yuǎn)趕不上私家車輛數(shù)量的增長(zhǎng)速度.伴隨著私家車輛數(shù)量的不斷增加,出現(xiàn)了如停車難、交通堵塞和尾氣排放過量等一系列的問題.
與發(fā)達(dá)國(guó)家相比,我國(guó)城市化進(jìn)度較為滯后,停車?yán)щy的情況近些年才出現(xiàn),對(duì)智能泊車系統(tǒng)的需求及其相關(guān)研究也相對(duì)遲緩[2].但伴隨著我國(guó)共享經(jīng)濟(jì)的發(fā)展和人們消費(fèi)觀念的轉(zhuǎn)變,共享觀念[3]已深深扎根在人們的日常生活中,共享停車軟件也層出不窮.隨著物聯(lián)網(wǎng)技術(shù)的快速發(fā)展和傳感器設(shè)備智能化程度的進(jìn)一步提高,作為嵌入式設(shè)備的核心器件,智能控制器的滲透率進(jìn)一步提升,已從簡(jiǎn)單的家電、電動(dòng)工具等應(yīng)用向智慧硬件、汽車電子、智慧家居、智慧城市等一系列新興領(lǐng)域擴(kuò)展[5].
本文針對(duì)城市停車難的問題,以某私人小區(qū)為主要研究對(duì)象,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于智能傳感器網(wǎng)絡(luò)的共享停車系統(tǒng).
該共享車位系統(tǒng)以FPGA 控制器為核心,分為軟件和硬件2 個(gè)部分.其中,硬件部分包括道閘控制模塊、地鎖控制模塊、地磁檢測(cè)模塊、報(bào)警模塊等,主要負(fù)責(zé)道閘、地鎖和車位的管理;軟件部分包括系統(tǒng)管理軟件和客戶端APP 軟件,主要負(fù)責(zé)位置導(dǎo)航和附近的車位搜索.軟、硬件通過移動(dòng)網(wǎng)絡(luò)進(jìn)行信息的交互:急需停車的用戶利用手機(jī)APP 導(dǎo)航至空閑停車位附近,其泊車需求信息經(jīng)路由器傳至設(shè)備端,通過FPGA 主控模塊控制相關(guān)功能模塊運(yùn)作,直至完成車輛入庫(kù)和出庫(kù)等操作.系統(tǒng)總體設(shè)計(jì)框架如圖1 所示.
圖1 系統(tǒng)總體設(shè)計(jì)方案
本設(shè)計(jì)選取STORM IV_E6 FPGA 開發(fā)板作為主控模塊.該模塊主要包括FPGA 控制器、發(fā)光二極管、溫度傳感器、復(fù)位按鍵、蜂鳴器、UART串口、串行FLASH、VGA 接口、1602 和12864液晶接口、MAX485 接口、電機(jī)驅(qū)動(dòng)接口等.
道閘也被稱為擋車器,是停車場(chǎng)重要的組成部件,被廣泛應(yīng)用于公路收費(fèi)站、停車場(chǎng)等地以管理車輛的進(jìn)出[6].電動(dòng)道閘既能利用無線遙控來操縱閘桿的升降,也能通過停車場(chǎng)管理系統(tǒng)實(shí)現(xiàn)自動(dòng)控制.本設(shè)計(jì)利用無線通信模塊發(fā)送控制信號(hào)至停車場(chǎng)的道閘控制器以控制其運(yùn)作.在FPGA 核心開發(fā)板上,LED1 燈的亮和滅分別表示道閘的開啟和關(guān)閉.
地鎖是一種避免其他人占用自己停車位的機(jī)械設(shè)備.智能地鎖作為一款可以被電腦、手機(jī)等遠(yuǎn)程控制的設(shè)備,解決了舊版地鎖無法實(shí)現(xiàn)實(shí)時(shí)車位共享的弊端[7].本設(shè)計(jì)選用了具有無線通信功能的智能地鎖,并將其固定在共享車位上.當(dāng)?shù)劓i控制器接收到無線通信模塊發(fā)出的入庫(kù)指令后,便會(huì)響應(yīng)并控制地鎖降下,且延時(shí)10 s;若地鎖控制器收到出庫(kù)信號(hào)且地磁檢測(cè)模塊未檢測(cè)到該車位被占,便會(huì)控制地鎖升起.在模擬測(cè)試中,利用LED2 燈的亮和滅分別表示地鎖的降下和升起.為了便于實(shí)驗(yàn)觀察,地鎖的升、降延時(shí)暫設(shè)為10 s,但在實(shí)際場(chǎng)景中,則可根據(jù)車庫(kù)大小等設(shè)定合適的延時(shí)時(shí)長(zhǎng).
地磁傳感器是一種基于電磁感應(yīng)原理的微電子機(jī)械技術(shù)的新式傳感器,其優(yōu)點(diǎn)是體積小、重量輕、能耗低、測(cè)量精確度高等,且極易與計(jì)算機(jī)相連[8].利用地磁傳感器檢測(cè)停車位狀態(tài),不僅對(duì)路面破壞較小,也不易受環(huán)境因素的影響[9],相較于其他檢測(cè)方式更為精準(zhǔn).
本設(shè)計(jì)選用HMC1023 三軸地磁傳感器.當(dāng)?shù)卮艡z測(cè)模塊接收到車輛出庫(kù)信息后,會(huì)即時(shí)檢測(cè)當(dāng)前車位上是否有非法占位的車輛,以避免地鎖升起時(shí)對(duì)其造成損壞.在測(cè)試中,利用開發(fā)板上的KEY1 鍵來表示地磁傳感器檢測(cè)結(jié)果:當(dāng)該按鍵被按下時(shí),輸出低電平,代表地磁檢測(cè)模塊檢測(cè)到當(dāng)前車位上有占位車輛.
當(dāng)用戶進(jìn)行出庫(kù)掃碼時(shí),無線通信模塊發(fā)出車輛出庫(kù)信號(hào),此時(shí)車位地鎖即將升起,但為了避免因當(dāng)前車位被非法占據(jù)而導(dǎo)致地鎖升起時(shí)對(duì)車輛造成損壞,需要通過地磁檢測(cè)模塊及時(shí)檢測(cè)當(dāng)前車位狀態(tài)并報(bào)警[10].本設(shè)計(jì)利用FPGA 開發(fā)板上的蜂鳴器來模擬報(bào)警功能.
常用的無線收發(fā)芯片主要包括nRF 系列和CC2420.其中,nRF24L01 利用串口收發(fā),能量消耗相對(duì)較低,且其信息傳輸速率較高,可達(dá)1 Mb/s[11].由于其數(shù)據(jù)傳輸只占據(jù)少部分通信信道,數(shù)據(jù)發(fā)生沖突的幾率及通信功耗較低,且其外圍電路所需的元器件較少,便于達(dá)到節(jié)點(diǎn)微型,所以本設(shè)計(jì)選用nRF24L01 無線傳輸模塊.
為保證系統(tǒng)可靠性,利用ModelSim 軟件對(duì)道閘、地鎖和報(bào)警模塊進(jìn)行了硬件時(shí)序仿真.其中輸入信號(hào)rst_n 為復(fù)位信號(hào);rece_init_done 為接收模塊初始化成功信號(hào);rece_data_done 為數(shù)據(jù)接收完成信號(hào);rece_cmd_data_i 為所接收的數(shù)據(jù)內(nèi)容;key_dc_i 為接收端按鍵KEY1,用來模擬道閘處的地磁檢測(cè)結(jié)果(當(dāng)有車輛出庫(kù)時(shí),按下該鍵,輸出低電平,表示地磁檢測(cè)發(fā)現(xiàn)當(dāng)前車位上有車占位);輸出信號(hào)led1 為道閘模塊狀態(tài);led2為地鎖模塊狀態(tài);beep_o 為報(bào)警器狀態(tài);rece_rdy_led 為接收模塊初始化成功信號(hào).
當(dāng)車輛入庫(kù)時(shí),無線接收模塊檢測(cè)到車輛入庫(kù)信號(hào),即rece_cmd_data_i 值為000000001,道閘開啟,led1 為高電平;當(dāng)車輛離開道閘后,key_dc_i 由高電平變?yōu)榈碗娖?,道閘關(guān)閉,led1 變?yōu)榈碗娖?;?dāng)無線模塊收到入庫(kù)信號(hào)后會(huì)延時(shí)10 s,地鎖自動(dòng)降下,led2 變?yōu)楦唠娖?,如圖2 所示.當(dāng)車輛出庫(kù)時(shí),無線接收模塊檢測(cè)到車輛出庫(kù)信號(hào),即rece_cmd_data_i 值為00000010,若此時(shí)key_dc_i 為高電平(即當(dāng)前車位上無車占位),則地鎖升起,led2 變?yōu)榈碗娖?,如圖3 所示.
圖2 車輛入庫(kù)時(shí)序仿真
圖3 車輛出庫(kù)時(shí)序仿真
當(dāng)車輛出庫(kù)時(shí),若key_dc_i 為低電平(即當(dāng)前車位上有車非法占位),則beep_o 由低電平變?yōu)楦唠娖?,?bào)警器響起,如圖4 所示.
圖4 報(bào)警模塊時(shí)序仿真
客戶端APP 使用HBuilderX 工具并采用uniapp 框架開發(fā)[12],可以實(shí)現(xiàn)用戶注冊(cè)與登錄、車位查詢和導(dǎo)航等功能.該APP 通過獲取在微信云服務(wù)器內(nèi)所儲(chǔ)存的空閑車位的位置信息,調(diào)用地圖定位接口getInstance 對(duì)用戶進(jìn)行定位,并利用騰訊地圖提供的URI API 喚醒地圖小程序,實(shí)現(xiàn)用戶定位、車位查詢、導(dǎo)航等功能.其與云服務(wù)器的數(shù)據(jù)交互過程如圖5 所示.
圖5 APP 數(shù)據(jù)交互流程
在系統(tǒng)設(shè)計(jì)完成后,模擬實(shí)際應(yīng)用場(chǎng)景,分別對(duì)其設(shè)備端和客戶端進(jìn)行了功能測(cè)試.
當(dāng)系統(tǒng)正常運(yùn)行時(shí),要求道閘和地鎖能及時(shí)響應(yīng)中控設(shè)備指令并反饋?zhàn)陨頎顟B(tài);地磁檢測(cè)模塊能實(shí)時(shí)檢測(cè)車位狀態(tài),并通過nRF24L01 無線傳輸模塊與中控設(shè)備進(jìn)行通信;各功能模塊能穩(wěn)定、協(xié)同工作,實(shí)現(xiàn)系統(tǒng)主要功能.
5.1.1 車輛入庫(kù)
按下發(fā)送端開發(fā)板KEY1 鍵,模擬車輛入庫(kù),此時(shí)LED1 亮起,道閘開啟,如圖6 所示.按下接收端開發(fā)板KEY1 鍵,模擬車輛離開,道閘關(guān)閉,LED1 熄滅;延時(shí)10 s 后,LED2 亮起,地鎖自動(dòng)降下,車輛入庫(kù)測(cè)試成功,如圖7 所示.
圖6 車輛入庫(kù)道閘開啟
圖7 車輛入庫(kù)道閘關(guān)閉
5.1.2 車輛出庫(kù)
按下發(fā)送端開發(fā)板KEY2 鍵,模擬車輛出庫(kù),若地磁檢測(cè)模塊未檢測(cè)到車輛(未按下接收端開發(fā)板KEY1 鍵),則地鎖升起,LED2 熄滅,如圖8 所示.此時(shí),若地磁檢測(cè)模塊檢測(cè)到有車輛非法占位(按下接收端開發(fā)板KEY1 鍵),則蜂鳴器報(bào)警;車輛出庫(kù)完成,地鎖降下,如圖9 所示.
圖8 車輛出庫(kù)地鎖升起
圖9 車輛出庫(kù)地鎖降下
用戶利用手機(jī)客戶端APP 軟件,能夠完成注冊(cè)、登錄等常用功能,如圖10(a)所示;在查詢空閑車位時(shí),與云服務(wù)器進(jìn)行數(shù)據(jù)交互,及時(shí)發(fā)現(xiàn)附近車位并顯示,如圖10(b)所示;利用地圖組件的定位功能鎖定車位位置并導(dǎo)航,如圖10(c)所示;到達(dá)停車位置后與云服務(wù)器進(jìn)行通信,向無線通信模塊發(fā)送相關(guān)信息,系統(tǒng)設(shè)備開始工作.
圖10 客戶端APP 測(cè)試界面
在網(wǎng)絡(luò)暢通的情況下,對(duì)客戶端進(jìn)行了完整的功能測(cè)試,其用戶注冊(cè)、登錄、車位查詢、導(dǎo)航等功能均已成功實(shí)現(xiàn),達(dá)到了預(yù)期目標(biāo).
本研究針對(duì)實(shí)際案例,借助智能傳感器和無線通信技術(shù),給出了以FPGA 為控制核心的共享車位系統(tǒng)的解決方案.該系統(tǒng)采用無線數(shù)據(jù)傳輸手段,實(shí)現(xiàn)了主控單元對(duì)各主要功能模塊的控制和多設(shè)備操作.基于HBuilderX 工具和uni-app框架開發(fā)的客戶端軟件,可以提供用戶注冊(cè)、登錄、車位查詢、導(dǎo)航等功能.硬件時(shí)序仿真和模擬場(chǎng)景測(cè)試結(jié)果表明,該系統(tǒng)能夠穩(wěn)定運(yùn)行.