譚勁松
?
一種停車(chē)場(chǎng)智能引導(dǎo)系統(tǒng)的設(shè)計(jì)
譚勁松
重慶安全技術(shù)職業(yè)學(xué)院網(wǎng)絡(luò)與信息安全系,重慶 404020
利用Arduino主控板和超聲波傳感器設(shè)計(jì)了一種停車(chē)場(chǎng)車(chē)位引導(dǎo)系統(tǒng),能夠?qū)崿F(xiàn)對(duì)空車(chē)位的實(shí)時(shí)監(jiān)測(cè),并通過(guò)顯示屏引導(dǎo)車(chē)輛快速找到空車(chē)位,節(jié)約了車(chē)主停車(chē)時(shí)間,提高了停車(chē)場(chǎng)管理效率。
Arduino;車(chē)位引導(dǎo);超聲波傳感器
近些年,隨著我國(guó)經(jīng)濟(jì)的快速發(fā)展,人民的生活水平得到了顯著提高,家用汽車(chē)的數(shù)量也隨之而明顯增多。為此,公共停車(chē)場(chǎng)相繼建立。但是多數(shù)停車(chē)場(chǎng)是由人工引導(dǎo)或車(chē)主無(wú)目的自主尋找的方式進(jìn)入停車(chē)場(chǎng)空停車(chē)位。這種引導(dǎo)方式,存在效率低、費(fèi)時(shí)、停車(chē)位不能有效利用等弊端。為了使駕駛員在停車(chē)場(chǎng)內(nèi)能快速精準(zhǔn)找到空的停車(chē)位,基于Arduino開(kāi)發(fā)了一種實(shí)用的停車(chē)場(chǎng)空閑車(chē)位引導(dǎo)系統(tǒng)。
該停車(chē)場(chǎng)空閑車(chē)位智能引導(dǎo)系統(tǒng)主要有兩部分組成:車(chē)位信息顯示模塊、車(chē)位信息采集模塊。

圖1 停車(chē)場(chǎng)智能引導(dǎo)系統(tǒng)總框圖
車(chē)位信息顯示模塊的主要作用是顯示停車(chē)場(chǎng)內(nèi)空閑車(chē)位所在的區(qū)域及數(shù)量,位于停車(chē)場(chǎng)入口。假設(shè)停車(chē)場(chǎng)被劃分為A1、A2、A3、A4、A5五個(gè)區(qū)域,顯示模塊通過(guò)無(wú)線接收系統(tǒng)接收停車(chē)場(chǎng)內(nèi)所有車(chē)位的停車(chē)與否信息,并在顯示屏上進(jìn)行顯示[1]。
車(chē)位信息采集模塊位于每個(gè)停車(chē)位正上方的天花板上,主要包括車(chē)位占用與否檢測(cè)、車(chē)位狀態(tài)指示及車(chē)位信息無(wú)線發(fā)送。
2.1 硬件總體設(shè)計(jì)

圖2 停車(chē)場(chǎng)智能引導(dǎo)系統(tǒng)硬件原理圖
Arduino是一款操作簡(jiǎn)單、功能強(qiáng)大的開(kāi)源電子平臺(tái)。硬件部分包括Atmel AVR單片機(jī)、I/O接口及相關(guān)外圍電路,軟件部分采用C語(yǔ)言進(jìn)行編程,許多常用功能已采用庫(kù)函數(shù)進(jìn)行封裝,供程序開(kāi)發(fā)者調(diào)用[2]。
系統(tǒng)工作原理:車(chē)位信息采集模塊利用安裝在車(chē)位正上方的超聲波傳感器檢測(cè)車(chē)位狀態(tài),然后傳給Arduino進(jìn)行處理,再通過(guò)無(wú)線發(fā)射模塊,將信息發(fā)送給顯示模塊。

圖3 車(chē)位信息采集模塊電路連接圖
2.2 車(chē)位信息采集模塊
車(chē)位信息采集模塊硬件包括:Arduino主控板、超聲波傳感器、無(wú)線發(fā)射模塊、LED燈。停車(chē)位狀態(tài)信號(hào)獲得后送入Arduino主控板,并通過(guò)安裝在車(chē)位正前方的LED燈進(jìn)行標(biāo)識(shí),紅色LED燈亮表示車(chē)位已占,綠燈LED燈亮表示車(chē)位未占。與此同時(shí),采集模塊通過(guò)nRF24L01將車(chē)位信息發(fā)送至車(chē)位信息顯示模塊。
本設(shè)計(jì)所采用的超聲波傳感器型號(hào)是HC-SR04,它可以非接觸測(cè)量0.03~4 m的距離,測(cè)量精度可達(dá)0.03 m,被安裝在每個(gè)車(chē)位正上方。假設(shè)超聲波傳感器到地面的垂直高度為4 m,并假設(shè)當(dāng)車(chē)位處地面有高于30 cm的物體時(shí),就認(rèn)為車(chē)位已用,即當(dāng)超聲波從發(fā)射到接收的時(shí)間間隔小于0.0?217?647s時(shí),就認(rèn)為車(chē)位上有車(chē)。(4-0.3)/340×2=0.0?217?647s,這些參數(shù)可以根據(jù)停車(chē)場(chǎng)的實(shí)際情況進(jìn)行調(diào)整,以提高判斷準(zhǔn)確率。
LED燈用來(lái)標(biāo)識(shí)每個(gè)車(chē)位的使用狀態(tài)。當(dāng)車(chē)位上有車(chē)時(shí),Arduino主控板D4輸出高電平,紅色LED燈被點(diǎn)亮;當(dāng)車(chē)位空閑時(shí),Arduino主控板D5輸出高電平,綠色LED燈被點(diǎn)亮。LED燈工作電壓范圍為1.5~2.0 V,工作電流范圍為10~20 mA,Arduino主控板提供的電壓為5V。
nRF24L01將Arduino主控板處理后的信息傳遞給車(chē)庫(kù)入口的車(chē)位顯示模塊。nRF24L01是集收發(fā)功能于一體的無(wú)線射頻器件,工作頻段為2.4~2.5 GHz,其功耗極低,收發(fā)模式可以通過(guò)程序設(shè)置,在車(chē)位檢測(cè)模塊端將nRF24L01設(shè)置成發(fā)射模式。
2.3 車(chē)位信息顯示模塊
車(chē)位信息顯示模塊硬件包括:Arduino主控板、nRF24L01、OLED顯示屏[3]。本設(shè)計(jì)采用OLED作為顯示設(shè)備,用來(lái)顯示停車(chē)場(chǎng)剩余車(chē)位的總數(shù)以及剩余車(chē)位所處的具體區(qū)域。OLED,即有機(jī)發(fā)光二極管,其發(fā)光材料采用有機(jī)半導(dǎo)體,在電場(chǎng)驅(qū)動(dòng)下通過(guò)載流子注入而產(chǎn)生的現(xiàn)象。與通用的LCD顯示屏相比,OLED顯示屏可視角度大、安裝簡(jiǎn)單、環(huán)保省電。在車(chē)位信息顯示模塊端,nRF24L01應(yīng)設(shè)置為接收模式。

圖4 車(chē)位信息顯示模塊電路連接圖
本文所設(shè)計(jì)的停車(chē)場(chǎng)智能引導(dǎo)系統(tǒng)是基于Arduino主控板進(jìn)行編程。
3.1 車(chē)位信息采集端程序
車(chē)位信息采集端程序由兩部分組成:車(chē)位信息檢測(cè);車(chē)位信息無(wú)線發(fā)射。軟件流程圖如圖5所示。

圖5 車(chē)位信息采集模塊軟件流程圖
HC-SR04主要代碼:
pinMode(3,OUTPUT);
pinMode(2,INPUT);
digitalWrite(3,LOW);
delayMicroseconds(3);
digitalWrite(3,HIGH);
delayMicroseconds(15);
digitalWrite(3,LOW);
jl=pulseIn(2,HIGH)/58.0;
nRF24L01發(fā)送模式主要代碼:
pinMode(A0,OUTPUT);
Mirf.spi=&MirfHardwareSpi;
Mirf.init();
Mirf.setRADDR((byte *)"Sen01");
adata=analogRead(A0);
byte data[Mirf.payload];
data[0]=adata&0XFF;
data[1]=adata>>8;
Mirf.setTADDR((byte *)"Rec01");
Mirf.send(data);
while(Mirf.isSending());
3.2 車(chē)位信息顯示端程序
車(chē)位信息顯示端程序由兩部分組成:接收車(chē)位檢測(cè)端發(fā)送的A0的值;顯示車(chē)位信息。軟件流程圖如圖6所示。

圖6 車(chē)位信息顯示模塊軟件流程圖
nRF24L01接收模式主要代碼:
Mirf.spi=&MirfHardwareSpi;
Mirf.init();
Mirf.setRADDR((byte *)"Rec01");
Mirf.payload=sizeof(unsigned int);
Mirf.channel=3;
Mirf.config();
Serial.println("接收中...");
byte data[Mirf.payload];
If(Mirf.dataReady())
{
Mirf.getData(data);
adata=(unsigned int)((data[1]<<8)|data[0]);
Serial.print("A0=");
Serial.println(adata);
}
顯示屏模塊主要程序代碼:
display.println("107PARK");
display.setTextColor(WHITE);
display.println(" ");
display.setTextSize(3);
display.print(" 空閑車(chē)位數(shù)量為:");
display.println("xx");
本文設(shè)計(jì)了一種基于Arduino和超聲波檢測(cè)技術(shù)的停車(chē)場(chǎng)車(chē)位引導(dǎo)系統(tǒng),該系統(tǒng)安全可靠、施工方便。系統(tǒng)應(yīng)用在大型停車(chē)場(chǎng)中將顯著提高車(chē)位管理效率、極大地縮短駕駛員尋找空車(chē)位的時(shí)間,對(duì)停車(chē)場(chǎng)自動(dòng)化管理具有較高的實(shí)用價(jià)值。
[1]李坤.智能停車(chē)場(chǎng)車(chē)位檢測(cè)與泊位誘導(dǎo)系統(tǒng)研究與設(shè)計(jì)[D].北京:中國(guó)科學(xué)院大學(xué),2013.
[2]蘭羽,周茜.超聲波測(cè)距系統(tǒng)接收電路研究[J].電子設(shè)計(jì)工程,2012(14):81-83.
[3]蔡睿妍.Arduino的原理及應(yīng)用[J].電子設(shè)計(jì)工程,2012,20(16):155-157.
Design of an Intelligent Parking Guidance System
Tan Jingsong
Department of Network and Information Security of Chongqing Security Technology Career Academy,Chongqing 404020
A parking guidance system is designed which is based on Arduino and multiple ultrasonic sensor. It can realize real-time monitoring of empty car bits, and guide the vehicle through the display screen to find the empty parking space quickly, saved car owners parking time, improved efficiency of car park management.
Arduino; park guidance; multiple ultrasonic sensor
U491.71;U495
A
譚勁松(1976—),男,重慶萬(wàn)州人,重慶安全技術(shù)職業(yè)學(xué)院講師,本科學(xué)歷,研究方向?yàn)槲锫?lián)網(wǎng)技術(shù)應(yīng)用。