魏秋蘭,翁寅生,代新雷,彭小紅,趙轉(zhuǎn)轉(zhuǎn)
(1.陜西交通職業(yè)技術(shù)學(xué)院,陜西 西安 710018;2.中煤科工集團(tuán)西安研究院有限公司,陜西 西安 710077)
為了解決城市中時常出現(xiàn)道路嚴(yán)重積水影響正常交通,甚至引發(fā)財產(chǎn)損失或人員傷亡的問題。近年來,眾多學(xué)者對積水監(jiān)測和預(yù)警系統(tǒng)的建立和開發(fā)進(jìn)行了較多的研究。張麗等[1]建立了基于GPS無線通信技術(shù)和CAN總線有線通信技術(shù)的水位實時監(jiān)測系統(tǒng),該系統(tǒng)采用 CAN總線技術(shù)對水位數(shù)據(jù)有線近程傳輸,并通過GPS網(wǎng)絡(luò)技術(shù)對水位數(shù)據(jù)進(jìn)行無線遠(yuǎn)程傳輸,實現(xiàn)對不同地區(qū)水位實時、可靠的監(jiān)控。王國偉等[2]以AT89C51芯片為核心的水情監(jiān)測系統(tǒng),采用SDI-12總線來連接多個傳感器,實現(xiàn)了對水情監(jiān)測系統(tǒng)的數(shù)據(jù)的采集、存儲和監(jiān)測。張偉等[3]在 ARM 嵌入式系統(tǒng)的平臺上利用 GSM/GPRS通信技術(shù)建立了城市道路積水自動監(jiān)測與預(yù)警系統(tǒng),同時對不同車輛類型設(shè)置了分級警戒水位等級,有效實現(xiàn)了城市道路水位的監(jiān)測和預(yù)警功能。徐敏等[4]選擇超聲波傳感器對道路水位進(jìn)行測量,翻斗式雨量傳感器對雨量數(shù)據(jù)進(jìn)行監(jiān)測,具有準(zhǔn)確度高、運行穩(wěn)定可靠的特點。陳春梅等[5]采用超聲波檢測水位信息,基于嵌入式小系統(tǒng)控制數(shù)據(jù)采集和現(xiàn)場警示,利用 GSM 模塊無線傳輸,實現(xiàn)了非接觸式測量與遠(yuǎn)程水位監(jiān)控和報警,具備較強的實時性和可靠性。
上述研究工作為解決城市道路積水監(jiān)測和預(yù)警問題提供了良好的基礎(chǔ),但目前針對通過利用何種系統(tǒng)或方法來避免汽車因涉水而熄火和電氣設(shè)備的損壞的研究報道很少。路虎運動版配涉水感應(yīng)系統(tǒng),當(dāng)車輛經(jīng)過涉水路面時,外后視鏡下側(cè)的超聲波傳感器也可監(jiān)測出后視鏡與水面之間的距離。路虎自主開發(fā)的“Wade Sensing”涉水感應(yīng)控制單元便開始計算涉水深度,并將相關(guān)信息顯示在中控臺觸摸屏上,同時在車輛接近最大涉水深度時,向駕駛員發(fā)出警示信號。2014年3月李助軍等[6]提出了研制一種汽車涉水遠(yuǎn)程報警裝置的思路,但未開發(fā)實物。2016年 12月肖銳等[7]開發(fā)了汽車涉水智能報警系統(tǒng),通過手剎位置傳感器判斷車輛處于行車或是駐車狀態(tài),然后通過光電式液位傳感器監(jiān)測不同危險階段的涉水深度。汽車涉水行駛時可發(fā)出相應(yīng)的多級報警提醒,有效避免行車時因盲目涉水而導(dǎo)致的中途熄火問題;在汽車駐車時,基于SIM900A模塊撥打車主的電話或發(fā)送短信提醒車主,實現(xiàn)汽車駐車涉水時的遠(yuǎn)程控制報警,車主在接到電話和短信后可及時將車輛轉(zhuǎn)移。另外,該系統(tǒng)可以利用雨滴傳感器根據(jù)室外天氣情況自動開啟整套系統(tǒng)。周贊等設(shè)計以AT89C52 型單片機作為控制中心,并連接了光電式液位傳感器模塊,通過在汽車不同高度、角度和位置的監(jiān)控,實現(xiàn)不同程度涉水情況下的汽車警報服務(wù)[8]。但其也有不足之處:一是沒有集成在一塊電路板上,沒有形成最終的可供商用的產(chǎn)品;二是選用的液位傳感器是開關(guān)量輸出形式,只有液位達(dá)到事先裝好并設(shè)定的水平時才能報警;三是雖然采用了SIM900A通信模塊,但是系統(tǒng)只用到了撥打電話和發(fā)短信的功能,并沒有用到GPRS的功能,沒有建立服務(wù)器,系統(tǒng)無法與服務(wù)器建立聯(lián)系,所以無法進(jìn)行網(wǎng)絡(luò)授時,發(fā)短信和電話的時間就會發(fā)生錯亂。目前,基于 STM32數(shù)據(jù)處理單元的單片機系統(tǒng)受到了廣泛的應(yīng)用[9-13]。為此,本研究將設(shè)計一款基于 STM32單片機可自動識別雨量、根據(jù)雨量自動開啟電源進(jìn)行工作,并實時顯示當(dāng)前車輛涉水高度的汽車涉水報警系統(tǒng)。
涉水報警器的硬件組成主要包括單片機、水位傳感器、雨滴傳感器、顯示屏、聲光報警器、CAN通信接口、遠(yuǎn)程的手機終端以及服務(wù)器,如圖1所示。該硬件組成結(jié)構(gòu)以單片機為核心,選用意法半導(dǎo)體(ST)公司生產(chǎn)的內(nèi)核為Cotex-M3的 STM32F103系列的單片機,水位傳感器選用易于安裝和具有模擬量輸出的傳感器。由于顯示內(nèi)容少,顯示屏可選擇小型的單色屏,報警裝置可選用顯示屏的背景燈和蜂鳴器。
系統(tǒng)平時處于待機模式,當(dāng)雨滴傳感器檢測到一定的雨量時系統(tǒng)自動啟動,防止在關(guān)機后系統(tǒng)失效。顯示屏采用小型的單色屏,顯示當(dāng)前水位、設(shè)定水位和當(dāng)前時間等信息。
圖1 系統(tǒng)硬件組成結(jié)構(gòu)
該涉水報警器的測量原理是雨滴傳感器自動感應(yīng)雨量大小,當(dāng)達(dá)到設(shè)定雨量時自動啟動本系統(tǒng)工作。利用超聲波水位傳感器實時測量水面高度,并實時顯示在顯示屏上,當(dāng)達(dá)到涉水報警的高度值時,系統(tǒng)的GPRS模塊將該水面高度和GPS的定位和時間發(fā)送給設(shè)定的用戶從而提醒用戶汽車涉水情況。
系統(tǒng)的CPU選擇STM32F103VB的單片機,該單片機為Cortex-M3內(nèi)核,32位處理器,哈佛結(jié)構(gòu),72M主頻,具有12位模數(shù)轉(zhuǎn)換通道、SPI、UART、CAN等豐富的外設(shè),可以滿足該系統(tǒng)的使用要求。
傳感器供電后,當(dāng)雨量測量電路可以將雨量的信號采集下來分析,從而了解當(dāng)前是否在下雨,從而自動讓系統(tǒng)從休眠轉(zhuǎn)入工作狀態(tài)。
圖2 天合雨量傳感器
圖2為天合雨量傳感器,安裝在擋風(fēng)玻璃內(nèi)表面,使用紅外技術(shù)和伺服控制,采用先進(jìn)光學(xué)傳感器系統(tǒng)、模擬信號處理和控制算法,可以實現(xiàn)從細(xì)雨到暴雨的自動調(diào)節(jié)。
圖3 LIN總線通信電路
由于雨量傳感器的電氣接口為低速LIN總線,速率只能達(dá)到20kbps,因此單片機要實時讀取雨量傳感器的大小,需要設(shè)計LIN總線通信電路。如圖3所示,MC33661芯片實現(xiàn)LIN總線電平和單片機CMOS電平的轉(zhuǎn)換,T3為浪涌保護(hù)電路,可以減少外部浪涌對單片機的損壞。單片機的端口通過NPN三極管Q12控制LIN總線的喚醒,另一端口為LIN總線的使能端,高電平使能。MC33661的RXD和TXD分別是單片機的收發(fā)引腳。
圖4 涉水深度測量電路
如圖4所示為涉水深度測量電路,傳感器為超聲波傳感器,輸出接口為0~5V,該信號輸入后經(jīng)過運放U18提高輸入阻抗,并經(jīng)過R1和R2進(jìn)行分壓得到輸入信號的一半,再經(jīng)過R3和C1濾波輸入到單片機的模擬量采集通道,電路中DB2是防止浪涌影響測量,DB1用于將運放后的電壓嵌位在0~VDDA之間,由于參考電壓為2.5V,因此它限制了輸入信號只能在0~5V之間,從而有效的保護(hù)了輸入信號過高損壞單片機的接口。
圖5 GPS、GSM、GPRS電路
為了便于將汽車涉水報警信息實時的發(fā)送到遠(yuǎn)處的手機或計算機終端,系統(tǒng)設(shè)計了GPS、GSM和GPRS電路。如圖5所示,該電路采用AIR800模塊,支持四頻段GSM/GPRS模塊,它的工作頻段是:GSM850MHz,GSM900MHz,DCS 1800MHz和 PCS1900MHz,GPS定位支持 GPS/Beidou/GLONASS/Galileo/QZSS/SBAS。貼片式模塊,采用LCC封裝,內(nèi)嵌 TCP、UDP、PPP、HTTPS、SSL等協(xié)議,已內(nèi)嵌的擴展AT命令。
電路中的U7用于將5V電源轉(zhuǎn)換為4.08V給模塊供電,不至于模塊損壞。LS1為揚聲器,MK1為麥克風(fēng),右下側(cè)電路為揚聲器和麥克風(fēng)電路,實現(xiàn)用戶可以語音說話和聲音的回放。設(shè)計的卡座可插入移動和聯(lián)通的2G手機卡,該模塊只支持2G網(wǎng)絡(luò)。GPS天線采用陶瓷天線,GPRS天線采用IPEX接口與外部天線連接。
圖6 蜂鳴器報警電路
蜂鳴器驅(qū)動電路如圖6所示,當(dāng)出現(xiàn)異常時候系統(tǒng)可以報警進(jìn)行提示。單片機輸出高電平時,NPN三極管Q14導(dǎo)通,蜂鳴器下端接地,兩端就出現(xiàn)電壓。由于是無源蜂鳴器,單片機輸出PWM才能控制蜂鳴器發(fā)聲音,頻率的高低決定聲音的大小。
圖7 液晶外觀及顯示電路
液晶采用高清 ips 0.96寸 TFT顯示屏,驅(qū)動芯片是st7735。本型號為IPS顯示屏比普通TFT LCD顯示屏的顏色更鮮艷,可視角度更廣,分辨率為80*160,顯示方向可以調(diào)整,可以橫屏也可以豎屏。接口為SPI接口,顯示顏色為65535色。工作電壓為3.3V供電。其LCD模塊外觀及液晶顯示電路如圖7所示。顯示屏的供電電壓為3.3V,用過單片機的I2C接口控制液晶接口SCL和SDA(引腳3和4),RESn由單片機的IO口控制來復(fù)位液晶,DC為數(shù)據(jù)和命令接口,CSn為片選型號,低有效,這幾個信號配合實現(xiàn)了液晶屏的顯示。BLK為背光電路控制引腳,接上拉電路使液晶一直處于背光狀態(tài)。
涉水報警系統(tǒng)的開發(fā)環(huán)境是KeiluVison5,采用標(biāo)準(zhǔn)庫函數(shù)和模塊化編程,以C程序為基本語言進(jìn)行編程和調(diào)試。
水位傳感器輸出信號為 0~5V,輸出電壓為檢測距離是50~1000mm。單片機供電電壓是 3.3V,參考電壓是 VREF=2.5V,當(dāng)外部輸入5V時候,經(jīng)過放大倍數(shù)為0.5倍的放大電路可得到外部輸入信號的一半大小。因此,假設(shè)采樣的電壓值為Vs,涉水深度為Sw,涉水對應(yīng)的傳感器輸出電壓為Vi,則采樣電壓與被測電壓的關(guān)系為:
由于0~5V或者0~4095對應(yīng)50~1000mm,因此根據(jù)線性變換公式可以計算得到:
由式(1)和式(2)可知
因此被測水位與單片機采樣的AD值對應(yīng)關(guān)系可由(式3)求出,AD為0~4095對應(yīng)被測水位為50~1000mm。
由于汽車在運行過程中,水位傳感器由于振動帶來水位的跳動,可以采用IIR低通濾波器的方式濾除高頻信號。
系統(tǒng)中雨量大小的測量可直接依LIN協(xié)議根據(jù)PID和各字節(jié)含義解析來獲取直接讀取。
該系統(tǒng)的主程序流程圖如圖8所示。系統(tǒng)通電后單片機進(jìn)行系統(tǒng)初始化,再對單片機的定時器、PWM、ADC、CAN和LIN總線等進(jìn)行初始化,再對GPS、GSM和GPRS初始化。這些初始化結(jié)束后系統(tǒng)開始啟動LIN總線讀取雨量傳感器,然后單片機將該值與設(shè)定的下雨值進(jìn)行判斷。如果大于設(shè)定的下雨值,系統(tǒng)認(rèn)為現(xiàn)在是在下雨,那么單片機喚醒水位檢測系統(tǒng)開始工作,讀取水位傳感器的值后,單片機判斷水位是否達(dá)到報警值。如果水位沒有達(dá)到報警值則繼續(xù)循環(huán)讀取水位并跟新水位值,如果水位達(dá)到報警值則讀取GPS數(shù)據(jù),同時蜂鳴器報警提示,單片機調(diào)用GPRS和GSM發(fā)送程序發(fā)送短信息和數(shù)據(jù)。另外單片機調(diào)用 CAN通信程序,將該報警信息發(fā)送到 CAN網(wǎng)絡(luò)上,可以讓局域網(wǎng)內(nèi)其他控制器讀到。然后單片機繼續(xù)監(jiān)測水雨量,如果雨量小于設(shè)定值,認(rèn)為沒有下雨,則系統(tǒng)進(jìn)入休眠,進(jìn)入讀取雨量傳感器和判斷的循環(huán)中,如果雨量大于設(shè)定值則繼續(xù)啟動工作,重復(fù)水位檢測和報警程序。
圖8 報警系統(tǒng)主程序設(shè)計
設(shè)計的汽車涉水報警器如圖9所示,采用DB9插座與外部水位傳感器、供電電源和雨量傳感器相連。為了便于實驗,一方面通過LIN總線讓雨量傳感器感知下雨,系統(tǒng)一直工作;另一方面,將水位傳感器豎直向下對著盛有水的水盤,這時用米尺記錄傳感器與水平面的豎直高度并進(jìn)行測量距離的校正。校正后,移動水位傳感器進(jìn)行測量,并設(shè)置報警距離為90mm,如圖10所示。當(dāng)水位傳感器距離地面100mm時,打開電源開關(guān),系統(tǒng)工作,顯示屏顯示“WARNING……”,同時蜂鳴器響起音樂,手機上收到短信,根據(jù)顯示的北緯和東經(jīng)可以查詢該位置位于西安市,圖10的右圖為短信截屏的上半部分。再關(guān)閉電源將水位傳感器移近到80mm時,打開電源讓系統(tǒng)開始工作,顯示屏顯示“System is OK”。
圖9 涉水報警器實物圖
圖10 顯示屏顯示圖與手機收到短信的報警截圖
該汽車報警器在室內(nèi)進(jìn)行模擬實驗,可以實現(xiàn)水位的準(zhǔn)確測量,并能根據(jù)水位設(shè)定的閾值進(jìn)行蜂鳴器報警和短消息報警。該功能的實現(xiàn)對下雨天汽車涉水報警具有積極的意義。