梅明杰,肖 波,韓 濤,楊袁江,李 斌,王 憬
(湖北師范大學(xué)電氣工程與自動化學(xué)院,黃石 435002)
隨著社會經(jīng)濟(jì)發(fā)展,交通服務(wù)逐漸智能化,智能交通在提升交通效率、保障安全、服務(wù)公眾等方面成效顯著,是未來交通發(fā)展的重要方向[1]。目前大多數(shù)停車場缺乏停車引導(dǎo)裝置,駕駛員在需要停車時無法及時獲取區(qū)域準(zhǔn)確停車資源信息,導(dǎo)致時間大多浪費(fèi)在尋找車位和等待車位上[2]。傳統(tǒng)停車引導(dǎo)裝置使用AR 識別技術(shù),其價格昂貴且檢修維護(hù)復(fù)雜,需要上位PC機(jī)處理數(shù)據(jù)。
本文使用STM32 作主控芯片,并使用成本較低的光電傳感器為主采集模塊,能大幅降低停車引導(dǎo)裝置的成本,使停車引導(dǎo)裝置更好地普及,從而提升通行效率,增強(qiáng)出行幸福感,并讓停車場有了更大的車流量承載能力,一定程度上改善城市交通。
本系統(tǒng)設(shè)計了以STM32 為主控芯片的智能停車引導(dǎo)系統(tǒng),主要由光電傳感器模塊、攝像頭模塊、STM32F103 主控芯片、一級引導(dǎo)顯示屏、二級引導(dǎo)顯示燈組成,系統(tǒng)總體設(shè)計框圖如圖1所示。其原理是通過光電傳感器模塊、攝像頭模塊采集停車場實況信息,顯示屏和指示燈顯示實時空閑車位余量和空閑車位分布情況,給駕駛員提供分級引導(dǎo)。其中光電傳感器安裝在各個停車位上,攝像頭懸掛,實施方式如圖2所示。
圖1 系統(tǒng)總體設(shè)計框圖
圖2 采集模塊方位示意圖
本系統(tǒng)硬件部分包括STM32F103主控芯片、傳感器采集模塊和顯示模塊。
本系統(tǒng)采用STM32F103芯片作為主控制器,該芯片是一種基于ARM Cortex-M3 內(nèi)核的單片機(jī),具有高性能、低成本、低功耗嵌入式等特點[3]。對于停車引導(dǎo)系統(tǒng),采用STM32 作為主控芯片能帶來更高的性價比和豐富的外設(shè)資源,其集成了I/O 系統(tǒng),適用于停車場內(nèi)多車位光信號的采集,以及引導(dǎo)顯示屏的控制。主控芯片在工作時,會實時接收傳感器模塊采集的車位實況信息,處理后控制顯示模塊顯示正確引導(dǎo)信息。
本系統(tǒng)采用光電傳感器模塊進(jìn)行停車場內(nèi)光信號的采集,如圖3所示,該模塊集成了光敏電阻、可調(diào)電位器、LM393 電壓比較芯片、輸出指示燈等元件。傳感器安裝于停車場各個車位上,并根據(jù)不同位置的光照強(qiáng)度調(diào)節(jié)電位器,以改變接在反相端INA-端的閥值翻轉(zhuǎn)電壓,使傳感器準(zhǔn)確判斷車位的遮光情況。
圖3 光電傳感器模塊原理圖
其中LM393 電壓比較器作模數(shù)轉(zhuǎn)換芯片,將光敏電阻接收光照時產(chǎn)生的電阻值變化變成電壓信號傳遞給電壓比較器的同相輸入端INB+,變化的電壓信號與電壓比較器的反相輸入端INA-端的基準(zhǔn)電壓相比較,當(dāng)同相端INB+電壓大于反相端INA-端電壓時,電壓比較器的輸出端OUT 輸出高電平電壓;當(dāng)同相端INB+電壓小于反相端INA-端電壓時,電壓比較器的輸出端OUT輸出低電平電壓。
在車位占用的遮光狀態(tài)時,光敏電阻的電阻值很大,電阻R1 與該光敏電阻組成的分壓點電壓升高,使同相端INB+電壓大于反相端INA-端電壓,電壓比較器的輸出端OUT 輸出高電平電壓,表示車位占用。在車位空余有光照時,光敏電阻的電阻值很小,電阻R1 與該光敏電阻組成的分壓點電壓下降,使同相端INB+電壓小于反相端INB-端電壓,電壓比較器的輸出端OUT 輸出低電平電壓,表示車位空余[4]。從而將光信號轉(zhuǎn)換為數(shù)字量信號,并實現(xiàn)車位是否占用的判斷。
攝像頭采集模塊采用OV5640 攝像頭,該攝像頭具有最高500 萬的像素,通過DVP 接口與主控芯片進(jìn)行連接??奢敵霾蕡D、灰度等格式,并自動對焦,調(diào)節(jié)圖像的飽和度及白平衡。在本系統(tǒng)中與光電傳感器配合使用,判斷停車位上的遮光物體是否為車輛,將識別結(jié)果傳輸?shù)街骺匦酒瑥亩岣哕囄挥嗔坑嬎愕臏?zhǔn)確性。
本系統(tǒng)顯示模塊包括一級引導(dǎo)顯示屏和二級車位顯示燈,一級引導(dǎo)顯示屏置于停車場道路交匯口處,顯示相鄰?fù)\嚪謪^(qū)的車位余量,二級車位顯示燈顯示本分區(qū)所有車位的占用情況,實現(xiàn)對車輛的分級引導(dǎo)。其中一級引導(dǎo)顯示屏采用LCD12864 顯示屏,該屏幕由128 列64行的矩陣顯示點構(gòu)成,可顯示中文漢字和英文字符,為駕駛員提供更直觀的停車信息,實施方式如圖4所示。一級引導(dǎo)顯示屏只顯示相鄰分區(qū)的車位余量,為了給駕駛員提供完善的停車引導(dǎo)服務(wù),需配合二級車位顯示燈。
圖4 一級引導(dǎo)顯示屏
二級車位顯示燈通過LED 燈的亮滅表示各個車位的占用情況,其中LED 燈串聯(lián)在傳感器輸出端,亮起表示該車位占用,如圖5 所示,LED 指示燈配合車位分布平面圖,可直觀地將本分區(qū)空余車位分布情況提供給駕駛員,幫助駕駛員選擇適合的停車位,完成停車引導(dǎo)。
圖5 二級車位顯示燈
本系統(tǒng)軟件設(shè)計主要由采集程序設(shè)計和顯示器控制程序設(shè)計兩部分組成,其中采集程序?qū)⒐怆妭鞲衅骱蛿z像頭采集的數(shù)據(jù)處理并計算得出各分區(qū)車位余量,并由顯示器控制程序控制輸出到顯示屏中,完成分級停車引導(dǎo)[5]。
本系統(tǒng)需要讓STM32 主控芯片實時處理光電傳感器和攝像頭采集到的車位實況數(shù)據(jù),判斷各車位占用情況,并計算各個分區(qū)的車位余量,通過并行口通信將各分區(qū)車位余量信息輸出到顯示屏,控制顯示屏顯示相鄰分區(qū)的車位余量信息。當(dāng)車位實況發(fā)生變化時,系統(tǒng)能檢測到并及時更新顯示屏上的引導(dǎo)信息,確保系統(tǒng)提供正確的停車引導(dǎo)服務(wù)。系統(tǒng)主程序流程如圖6所示,初始化后開始第一個周期的車位余量檢測,計算出各分區(qū)的車位余量,通過顯示屏控制程序?qū)⒅付ǚ謪^(qū)的車位余量數(shù)據(jù)輸出顯示,完成本周期的停車引導(dǎo)任務(wù),并以50 ms為周期循環(huán)進(jìn)行車位余量檢測和顯示,實時更新車位余量信息的顯示。
圖6 系統(tǒng)主程序流程圖
主控芯片STM32 接收光電傳感器處理后的車位實況信息,并通過各個車位對應(yīng)引腳接收到的電平信號判斷該車位是否被占用。以A分區(qū)為例,定義整型變量NumA,依次判斷各車位占用情況,若車位空余,則NumA++,判斷完A區(qū)所有車位后得出A區(qū)剩余車位NumA,并將NumA數(shù)據(jù)輸出到顯示屏控制程序中進(jìn)行顯示,輸出本輪結(jié)果后延時,以50 ms為周期進(jìn)行下一輪數(shù)據(jù)的采集和處理,采集程序流程如圖7所示[6]。
圖7 光電傳感器采集流程圖
本系統(tǒng)采用OV5640 攝像頭采集車位實況照片,通過車牌字模的模糊匹配算法識別車位上是否有車牌號,若未識別到車牌,則該車位可能被非車輛的其他物體遮光,并判斷為該車位處于空余狀態(tài),流程如圖8 所示。攝像頭以QVGA 分辨率采集圖像后,對圖片進(jìn)行灰度處理,存入主控芯片STM32 的RAM 中,完成初始化。隨后檢測圖片中的車牌邊緣并進(jìn)行圖像矯正,使車牌字符規(guī)整。矯正圖像后捕捉圖像中的字符圖像,并分割車牌圖像使字符獨(dú)立,將字符圖片與預(yù)存車牌號字體的字符模板比對并匹配,重合度達(dá)到設(shè)定值表示本次識別結(jié)果為車牌,并判斷該車位被占用;若識別不到車牌,則表示該停車位被其他物體、灰塵等遮光,或傳感器故障,判斷為車位空余。
圖8 攝像頭控制流程圖
LCD12864 液晶顯示器是一種點陣型的液晶顯示器,其形式是128×64 個顯示單元,通過設(shè)定的初始化程序?qū)CD12864 顯示屏進(jìn)行初始化,以此來開啟顯示屏的液晶顯示,顯示屏控制流程如圖9所示。初始化完成后調(diào)用漢字顯示編碼,逐行完成漢字內(nèi)容的顯示,該內(nèi)容為固定內(nèi)容,不隨車位實況而變動。隨后調(diào)用車位余量的計算結(jié)果,并調(diào)用對應(yīng)數(shù)字的字模編碼,顯示該車位余量數(shù)字,車位余量數(shù)字以50 ms為周期實時更新。其中漢字字模和數(shù)字字模均為16×16 像素的宋體,以32 個十六進(jìn)制數(shù)儲存于數(shù)組中,對應(yīng)一個漢字或數(shù)字的256 bit 字模編碼,在顯示程序中被調(diào)用[7]。
圖9 顯示屏控制流程圖
本系統(tǒng)使用Keil 軟件對程序進(jìn)行編譯,并在Proteus 軟件中進(jìn)行仿真調(diào)試,仿真效果如圖10 所示,該顯示內(nèi)容會隨著傳感器采集的信號變化實時更新車位余量數(shù)字,顯示內(nèi)容與車位實況一致,且二級引導(dǎo)顯示燈正確顯示剩余車位分布情況。
圖10 仿真顯示效果
在實物調(diào)試中,本系統(tǒng)使用SPI串行口通信控制OLED屏作為一級引導(dǎo)顯示屏,二級引導(dǎo)顯示燈中,紅色LED 燈亮起表示該車位占用,顯示效果如圖11 所示。經(jīng)驗證,顯示模塊根據(jù)車位占用實時更新引導(dǎo)內(nèi)容,實現(xiàn)停車引導(dǎo)。
圖11 實物運(yùn)行效果圖
本文在停車需求與汽車總量比例失調(diào),且停車引導(dǎo)設(shè)施不完善的背景下,設(shè)計了智能停車引導(dǎo)系統(tǒng),此次設(shè)計完成了停車場各分區(qū)實時車位余量信息的顯示、車位占有情況的指示與停車引導(dǎo)。其中以STM32 為主控芯片,并采用了光電傳感器作為信息采集模塊,可大幅減少停車引導(dǎo)設(shè)備的生產(chǎn)與維護(hù)成本,并且STM32 主控芯片具有一定的擴(kuò)展性,可為停車場提供后續(xù)升級空間;光電傳感器相較于傳統(tǒng)的AR 智能識別技術(shù)具有更高的穩(wěn)定性和經(jīng)濟(jì)性,適合使用在形如地下停車場的光照強(qiáng)度固定場所,也為停車引導(dǎo)信息的顯示提供了便利。