張賓,王辰,洪軻
(無錫城市職業(yè)技術(shù)學院,江蘇無錫,214000)
根據(jù)國家統(tǒng)計局的數(shù)據(jù)[1],近五年(2017-2022)我國民用汽車保有量和駕駛?cè)藛T數(shù)量逐年增加,由汽車引發(fā)的交通事故數(shù)量、傷亡人數(shù)和經(jīng)濟損失雖有波動,但一直保持在較高水平,對人們的生命和財產(chǎn)安全構(gòu)成了巨大的威脅。根據(jù)道路交通安全法的規(guī)定,車輛在道路上發(fā)生故障、事故或其他緊急情況時,駕駛員應立即設(shè)置警示標志。三角警示牌是一種常用的警示標志,用于提醒其他車輛減速慢行,避免二次交通事故的發(fā)生[2]。根據(jù)安靜芳[3]等人的研究,二次交通事故的主要原因包括駕駛員超速、疲勞駕駛、應急操作不當?shù)?,同時道路結(jié)冰濕滑、團霧等極端惡劣天氣也是造成二次交通事故的關(guān)鍵因素。避免二次交通事故的關(guān)鍵是及時有效地警示來車方向的駕駛?cè)藛T,使其有足夠長的時間和距離余量處理突發(fā)情況。因此,提升三角警示牌的警示效果對于減少二次交通事故的發(fā)生至關(guān)重要。普通三角警示牌的警示距離有限,在事故風險更高的惡劣天氣情況下,其警示效果更差。另一方面,普通三角警示牌只能被動地由駕乘人員發(fā)現(xiàn),缺乏主動警示的功能。綜上所述,迫切需要有效的手段來提高三角警示牌的警示效果,以降低二次交通事故發(fā)生的概率和減少二次事故發(fā)生后的損失。
當代社會,智能交通、物聯(lián)網(wǎng)、車聯(lián)網(wǎng)等相關(guān)技術(shù)已經(jīng)發(fā)展成為保障道路交通安全的重要手段。本文基于ESP32單片機模組,設(shè)計了一種智能三角警示牌,旨在通過智能化技術(shù)的應用,提高三角警示牌警示效果。
在普通三角警示牌的基礎(chǔ)上,為通過多種方式和手段提警示效果,本文所設(shè)計的智能三角警示牌主要增加了以下功能:
(1)通過北斗和GPS 模塊獲取智能三角警示牌的精準位置;
(2)通過撥碼配置影響占用的車道,提供更精確的事故位置數(shù)據(jù);
(3)通過4G 模塊將上述位置上傳至服務器端,為事故告警等系統(tǒng)服務提供精準數(shù)據(jù)支撐;
(4)通過ESP32 單片機模組的藍牙或者WiFi 連接手機APP;
(5)通過添加碰撞傳感器,在探測到即將發(fā)生碰撞時向手機APP 發(fā)送報警信息。
為實現(xiàn)上述功能,本文設(shè)計的智能三角警示牌的原理框圖如圖1 所示,主要包括ESP32 單片機模組、電源模塊、定位模塊、撥碼配置模塊、4G 通信模塊和碰撞檢測模塊。
圖1 智能三角警示牌原理框圖
ESP32 單片機模組是智能三角警示牌的核心控制單元,負責與其他模塊交互,實現(xiàn)位置獲取、碰撞檢測、數(shù)據(jù)發(fā)送等系統(tǒng)需求的功能。
定位模塊實現(xiàn)通過衛(wèi)星定位系統(tǒng)獲取所在的經(jīng)緯度坐標,能夠通過串口接收控制模塊的查詢指令并返回位置數(shù)據(jù),用于定位三角警示牌的擺放位置。
撥碼配置模塊采用一個8 位撥碼開關(guān),每位代表一個車道,用于配置智能三角警示牌占用影響的車道,實現(xiàn)對車道級的精確定位,最多支持單向8 車道。
4G 通信模塊通過串口與主控模塊交互,用于將定位模塊和撥碼配置模塊生成的精確定位信息通過蜂窩網(wǎng)絡轉(zhuǎn)發(fā)至服務器上。
碰撞檢測模塊利用超聲波測距模塊,它能夠測量智能三角警示牌與后方物體的距離和速度,ESP32 模塊根據(jù)預設(shè)的參數(shù)來判斷是否存在碰撞的危險。
電源模塊采用電池組供電,電池組輸出電壓12V,經(jīng)過電源調(diào)整電路后輸出3.3V 電源供ESP32 單片機模組和其他模塊使用。
本文選用的主控模塊為樂鑫公司的ESP32-S3-WROOM-1 模組,它包含一顆32bit 主頻高達240MHz 的雙核處理器,并內(nèi)嵌了2.4GHz WiFi 和Bluetooth 5(LE)模塊,適用于多種應用場景[4]。其外圍電路原理圖如圖2 所示。
圖2 ESP32 主控模塊外圍電路原理圖
圖2 中所包括主控模組的最小系統(tǒng)電路和功能模塊的接口電路。最小系統(tǒng)電路包括晶振電路、復位電路、調(diào)試UART 接口電路、JTAG 電路及啟動方式選擇電路等,這些內(nèi)容本文不再贅述。功能模塊包括前述電源模塊、撥碼配置模塊、定位模塊、4G 通信模塊、撥碼配置模塊及碰撞檢測模塊等,它們的內(nèi)部電路或接口將在后面的章節(jié)進行介紹。
主控模塊ESP32-S3-WROOM-1 模組中的核心芯片ESP32-S3 集成了2.4 GHz WiFi (802.11 b/g/n),支持40 MHz 帶寬。ESP32 的Bluetooth 5(LE)可通過Coded PHY 與廣播擴展實現(xiàn)遠距離通信,在使用編碼方案時,可以較小的輸出功率達到更大的覆蓋范圍,在接收機靈敏度為-95 d Bm 時傳輸距離可以達到400 m[5]。2.4G WiFi 在室外環(huán)境下的傳輸距離可以達到150~400m,因此在三角警示牌的擺放范圍內(nèi)(普通道路100m,高速公路200m)能夠通過WiFi 或Bluetooth 5(LE)與手機終端進行正常通信。
定位模塊選用中科微電子的ATGM336H 模塊,該模塊支持多種導航衛(wèi)星系統(tǒng),包括GPS、格洛納斯、北斗和伽利略。它能同時接收多個衛(wèi)星信號,提供準確的位置、速度和時間信息[6]。定位模塊通過圖2 中的JP6 與ESP32 模組的IO4 和IO5 連接,通過串口將定位數(shù)據(jù)發(fā)送給單片機。
為解決GPS 和北斗定位精度達不到車道級的問題,考慮到很多情況下交通事故會占用影響不止一個行車道,本文設(shè)計了由用戶手動選擇撥碼開關(guān)來標識占用車道情況的方案,實現(xiàn)對智能三角警示牌所影響車道的準確定位。如圖2 中SW2 所示,本設(shè)計將一個8 位撥碼開關(guān)通過上拉電阻接入ESP32 的IO 引腳,車道從左到右依次對應第1、2……8 個撥碼開關(guān),最多支持8個車道。受影響的車道開關(guān)閉合,對應的IO引腳為低電平。未受影響正常的車道開關(guān)打開,對應的IO 引腳為高電平。閉合多位撥碼開關(guān)表示多條車道同時受到影響,ESP32通過檢測IO 引腳電平情況,即可得到車道占用情況。
為降低開發(fā)難度和風險,本文選用成熟的4G 模組作為數(shù)據(jù)傳輸模塊,ESP32 模組只需要通過串口與之交互即可實現(xiàn)數(shù)據(jù)傳輸功能。本文選用的成都移訊通科技有限公司4G 數(shù)據(jù)傳輸 模 組, 該 通 信 模 組 支 持GSM、WCDMA、CDMA2000、TDSCDMA、LTE-FDD、LTE-TDD 等 多 種2G/3G/4G 網(wǎng) 絡 頻 段,在不同網(wǎng)絡環(huán)境下性能穩(wěn)定。模組支持多種工作協(xié)議模式,包括AT 命令模式、透傳模式和協(xié)議模式。本文使用的是AT 命令模式,ESP32 單 片機 的IO4 和IO5 與 模 塊RX-TTL 和TX-TTL 通過接插件相連,通過串口向4G 模組發(fā)送AT 命令實現(xiàn)服務器地址配置、定位數(shù)據(jù)發(fā)送等功能。
常見的碰撞傳感器包括接觸式傳感器和非接觸式傳感器兩類。接觸式傳感器通過物理接觸來檢測碰撞,如壓力傳感器、力傳感器等。非接觸式傳感器則通過測量物體之間的距離或反射信號來檢測碰撞,如超聲波傳感器、激光傳感器、紅外線傳感器等。在本文應用場景中,智能三角警示牌有可能會被高速行駛的車輛撞擊毀壞,如果采用接觸式傳感器,很難在電路斷電之前完成碰撞檢測和數(shù)據(jù)發(fā)送,所以接觸式傳感器不適用本文場景。
綜合考慮成本及檢測速度和精度,本文選擇非接觸式的超聲波測距傳感器模組HC-SR04 用于碰撞檢測。HC-SR04超聲波測距模塊可提供 2cm ~400cm 的非接觸式距離感測功能,模塊包括超聲波發(fā)射器、接收器與控制電路,對外有四個接口,分別是:(1)Vcc:+3V~5.5V 電源供電;(2)Trig:觸發(fā)信號;(3)Echo:回響信號;(4)Gnd:接地。HC-SR04 通 過 圖2 中JP5 接 插 件 連 接 到ESP32 的IO17 和IO18 兩個引腳,ESP32 控制IO17 引腳發(fā)出脈沖觸發(fā)信號,并在IO18 引腳上檢測相應的回響信號,通過回響信號寬度即可計算出目標距離。
為確保智能三角警示牌能正常工作足夠長的時間,本文設(shè)計電源采用大容量電池組供電,輸出電壓為12V,而ESP32 等模塊的工作電壓為3.3V,需要通過電源電路對其進行降壓和穩(wěn)壓,電源電路的原理圖設(shè)計如圖3 所示。本文選用了上海貝嶺公司的國產(chǎn)BL8033 作為電源轉(zhuǎn)換芯片,它是一個完全集成的、高效的3A 同步整流降壓轉(zhuǎn)換器,支持4.5V~16V 的輸入電壓范圍,轉(zhuǎn)換效率高達96%,且能在一個較寬的輸出電流負載范圍內(nèi)高效工作,能夠滿足智能三角警示牌所有模塊的電源需求。
圖3 電源電路原理圖
ESP32 芯片整合了WiFi 和藍牙功能,其高性能和低成本的特點使其在物聯(lián)網(wǎng)(IoT)領(lǐng)域中占據(jù)重要地位。同時,樂鑫官方開源了大量的開發(fā)板和開發(fā)工具鏈,因此,ESP32在開源社區(qū)中受到了熱烈的歡迎,并為MicroPython 和Arduino 提供了強大的支持。MicroPython 的目標是為嵌入式系統(tǒng)提供Python 解釋器,與傳統(tǒng)的C 語言開發(fā)相比,使用MicroPython 可以更快速、更簡單地構(gòu)建嵌入式程序。因此,本文選擇使用MicroPython 對ESP32 主控模塊進行開發(fā)。
軟件的運行流程如圖4 所示,整個軟件采用單循環(huán)的方式運行,不使用中斷程序。在智能三角警示牌上電后,首先進行系統(tǒng)初始化工作,然后依次初始化外圍的4G 模塊和定位模塊,連接手機藍牙和WiFi 熱點(手機端告警APP 打開后會創(chuàng)建手機WiFi 熱點),最后通過向4G 模塊發(fā)送AT指令的方式配置接收定位數(shù)據(jù)的服務器地址。在完成初始化工作后,開始循環(huán)判斷是否到達上傳定位數(shù)據(jù)時間(20 秒定時,該時間可以配置),如果達到上傳時間,則開始向定位模塊查詢定位數(shù)據(jù),并讀取撥碼開關(guān)狀態(tài),將上述信息打包成json 格式數(shù)據(jù)通過4G 模塊上傳至服務器。其余時間不間斷利用超聲測距模塊對后方車輛進行檢測,如果檢測到3 米以內(nèi)有物體存在,則立刻通過藍牙和WiFi 向手機APP發(fā)送警報信息。
圖4 系統(tǒng)軟件流程圖
如圖4 所示,軟件的運行流程采用單循環(huán)方式,不采用中斷程序。在智能三角警示牌通電后,首先進行系統(tǒng)初始化,然后依次初始化外圍的4G 模塊和定位模塊,連接手機藍牙和WiFi熱點(手機端告 警APP 打開后會創(chuàng)建手機WiFi 熱點),最后通過向4G 模塊發(fā)送AT 指令的方式配置接收定位數(shù)據(jù)的服務器地址。完成初始化后,開始循環(huán)判斷是否到達上傳定位數(shù)據(jù)的周期(默認20秒,該周期可以根據(jù)實際情況調(diào)整),如果到達上傳時間,便開始向定位模塊查詢定位數(shù)據(jù),并讀取撥碼開關(guān)狀態(tài),將上述信息打包成json 格式數(shù)據(jù)通過4G 模塊上傳至服務器。其余時間則不間斷利用超聲測距模塊對后方車輛進行檢測,如果檢測到3 米以內(nèi)有物體存在,則立即通過藍牙和WiFi向手機APP 發(fā)送警報信息。
本文針對普通三角警示牌警示距離近、定位精度不高、缺乏主動警示等警示效果不佳的問題,利用智能交通、物聯(lián)網(wǎng)等技術(shù)手段,基于ESP32 單片機模組設(shè)計了一款智能三角警示牌。該智能三角警示牌能夠結(jié)合北斗、GPS 的定位數(shù)據(jù)和撥碼開關(guān)手動配置的車道數(shù)據(jù),通過4G 模塊將精確的位置數(shù)據(jù)發(fā)送給服務器,能夠為事故告警系統(tǒng)提供更加精確、詳細的數(shù)據(jù)支持。同時,該智能三角警示牌還能利用超聲波測距模塊對碰撞進行檢測預警,并通過手機APP 向前方的駕乘人員發(fā)送報警信息。此智能三角警示牌不僅能為事故后方車輛駕駛?cè)藛T提供精確的事故位置信息,通過告警系統(tǒng)在足夠遠的地方提醒他們謹慎駕駛,降低二次事故的發(fā)生風險;另一方面,即使后方車輛與智能三角警示牌發(fā)生碰撞,也能向前方駕乘人員發(fā)出警報,保護他們的生命安全。綜上所述,本文設(shè)計的智能三角警示牌能夠有效解決普通三角警示牌警示效果不佳的問題,有效降低二次交通事故的發(fā)生風險,減少二次交通事故發(fā)生時的損失。