成 玲,龐 有
(中國石油大學(華東)計算機科學與技術學院,山東 青島)
近年來,由于駕駛員的自身因素而導致的交通事故事件頻頻發生,嚴重威脅道路交通安全。根據世界衛生組織發布的全球道路安全狀況報告顯示,每年約有135 萬人死于交通事故,這也是5 至29 歲人群的首要死亡原因[1]。車輛、駕駛員和道路交通環境是引起道路交通事故的三大因素[2]。世界衛生組織統計的數據顯示,分心駕駛、超速駕駛、酒后駕駛、未規范系安全帶、吸毒或其它精神活性物質影響是引發道路交通事故的主要風險[3]。本文利用人工智能和物聯網技術設計實現一個具有感知、決策和按制功能的駕駛員安全行車智能監測系統,通過對駕駛員在行車過程中存在的危險因素進行有效的監測、報警,在一定程度上可以減少因駕駛員自身問題而導致的道路交通事故,有效提高行車過程中的安全性。
基于AIOT(人工智能物聯網)的駕駛員安全行車智能監測系統是利用物聯網技術結合人工智能構建的具有監測、顯示和預警功能的系統[4]。此系統可以在駕駛員即將駕駛和正在駕駛時監測和判斷其自身存在的可能導致道路交通安全事故的因素,并進行預警[5]。如表1 所示,駕駛員自身可能引發交通事故風險的因素主要有三類。根據可能導致道路交通安全事故風險的類型,本系統的主要功能需求整理如下:

表1 駕駛員自身可能存在的危險因素
(1) 能夠監測駕駛員在行車過程中的行為狀態,識別出危險動作。
(2) 能夠監測在行車中會影響駕駛員行車安全的相關生命指標和關鍵身體參數。
(3) 能夠監測車內所有妨礙駕駛員正常安全駕駛的環境因素。
(4) 對所有監測到不利于安全駕駛的數據發起預警,提醒駕駛員采取措施調整。
根據系統應有的功能需求,駕駛員安全行車智能監測系統由感知層、網關層、應用層三個結構層次組成,各層次分別承擔不同的任務但又緊密聯系、環環相扣,最終整體實現數據采集、數據傳輸、數據處理、數據應用的功能。駕駛員安全行車智能監測系統整體設計如圖1 所示。

圖1 駕駛員安全行車智能監測系統整體設計框圖
感知層主要承擔數據采集的功能,實時采集與駕駛員息息相關的三類數據:駕駛員行為狀態、駕駛員身心參數、駕駛員環境信息。采集到的靜時心率、血氧濃度數據匯聚到Arduino 主板,通過藍牙進行網關層傳輸;呼出氣體酒精濃度、駕駛艙環境中的溫度、濕度、有害氣體濃度、照明強度數據則匯聚到CC2530 終端,通過Zigbee 向協調器傳輸。感知層采集的信息與具體對應的傳感器件型號如表2 所示。

表2 系統監測數據與傳感器型號對照
網關層的功能主要由樹莓派(Raspberry Pi 4B)實現,其任務主要是對來自感知層的數據進行整合、處理,并把整合后的數據包和數據處理結果發送到應用層。對于攝像頭采集到的圖像,樹莓派調用人工智能算法進行檢測與識別,保留識別后的結果,最后將該結果放入數據包上傳至應用層。
應用層的功能主要是對網關層上傳的數據進行應用,具體包括數據展示和預警。阿里云物聯網平臺通過MQTT 協議獲取網關層的數據包,再將具體的單個數據放在阿里云物聯網應用的網頁端和移動端進行展示,以供用戶實時查看。系統的預警平臺通過GPIO 口與網關層連接,根據網關層數據-閾值的比對結果來判斷是否觸發報警系統。
2.1.1 傳感器數據采集
各類數據的采集分別由對應的傳感器完成,傳感器與CC2530 終端連接,傳感器在AO 引腳上的模擬輸出電壓的值與被測氣體濃度成正比。空氣中酒精濃度、可燃有害氣體越高,輸出電壓越高;而較低的濃度會產生較低的輸出電壓。傳感器在工作過程中會加熱,為了防止可燃氣體爆炸,傳感器還設置了兩層由精細不銹鋼制成的防爆炸網。
以MQ-3 酒精氣體濃度傳感器為例,傳感器的靈敏度特性曲線如圖2(a)所示,其中RS表示傳感器在不同氣體中的電阻值,R0表示傳感器在潔凈空氣中的電阻值。根據靈敏特性曲線可計算出傳感器輸出電壓與酒精濃度的關系,如圖2(b)所示。

圖2 MQ-3 傳感器靈敏特性曲線圖及酒精濃度與輸出電壓的關系
2.1.2 數據打包與發送
完成了傳感器數據的采集后,需要將各個獨立的數據組成一個字符串數據包,以方便終端設備發送到協調器。數據從傳感器采集到協調器以及網關的流通過程如圖3 所示。分別獲取溫度、濕度數據的十位和個位數;對酒精濃度進行換算,把單位轉換為ppm,同時分別獲取換算后的酒精濃度數據的個位、十位和百位數。最后將所有的單個字符按照順序重新組合成新的字符串報文。

圖3 數據在感知層的流通示意
2.2.1 建立連接
在搭建網關設備與阿里云物聯網平臺的數據通路之前,需要在物聯網平臺創建相應的產品,在云平臺獲取Link SDK,以供網關設備接入物聯網平臺,通過該SDK 實現網關物理設備與阿里云物聯網平臺的連接。
2.2.2 數據上傳
首先我們需要完成MQTT 服務器和客戶端的連接,才能上傳數據到阿里云物聯網平臺。網關層設備使用點對點模式,通過MQTT 協議的Publish 發送數據到物聯網平臺。在此過程中,樹莓派屬于消息的發布者,阿里云物聯網平臺是消息的訂閱者。設備上報消息示意如圖4 所示。

圖4 設備上報消息示意
進入阿里云物聯網平臺按制臺,創建產品“駕駛員安全行車智能監測系統”,并在此產品下新建設備“Raspberry_Pi_4B”。設備創建成功后,便可獲得設備證書。在“功能定義”頁簽里面添加自定義功能完成物模型配置,應用層的數據展示在阿里云的IoT Studio實現,本系統主要使用Web 端和移動端可視化開發功能。在進行應用開發前,需要在“項目管理”中將上文提到的在阿里云物聯網平臺創建的“駕駛員安全行車智能監測系統”產品關聯到當前的IoT Studio。
完成項目關聯后,在“應用開發”頁簽中點擊新建Web 應用。對于需要實時更新數據的組件,需要把數據源選擇為“設備”,便可以實時獲取并展示設備上報的屬性和事件數據。
駕駛員安全行車智能監測系統的報警系統主要以燈光和聲音的形式警示駕駛員。當駕駛員的身體、所處環境或行為狀態出現異常時,對應顏色的報警指示燈光就會亮起,隨之發出聲音警報。報警功能函數每個周期運行一次,每一次解析感知層的數據包后,都會進行一次與閾值的對比。若在下一個周期中數據恢復正常,則在新的對比中撤銷警報。
分別將DHT11 溫濕度傳感器、光敏傳感器、MQ-3 酒精濃度傳感器、MQ-2 有害氣體傳感器和其他相關傳感器連接到感知層的CC25530 終端上。開啟電源后,各個傳感器不斷的采集數據,并通過串口顯示到電腦上,通過串口數據可以知道各傳感器獲得的數據信息。串口輸出的數據由兩部分組成:前半部分的字母“T-H-A-A-G-L”為數據標識,分別表示溫度、濕度、酒精濃度輸出電壓值、酒精濃度值(以ppm 為單位)、有害氣體濃度、照明狀態;后半部分為6 個數據,分別與前面的6 個標識對應。當CC2530 終端與協調器成功組網后,數據開始往協調器發送。網關會將這6個數據提取出來,成為獨立的數值。
駕駛員行為狀態識別的測試重點以檢測人體動作及狀態為主,車輛與地點不影響測試結果。本次測試的實驗集為多張有著明顯危險駕駛行為的圖片,如雙手離開方向盤、閉眼,以及未系安全帶和駕駛中使用手機等多項危險駕駛行為都能被系統成功檢測。
將前期傳感器采集數據經過網關上傳到應用層后,能夠在阿里云物聯網應用的Web 端實時顯示出來。同時,酒精濃度、濕度、照明狀態如果達到了報警閾值,則會成功的觸發系統報警,對應的警示燈也會同時亮起,發出警報。
針對當前嚴峻的社會道路交通安全形勢,本文提出了一種基于AIOT 的駕駛員安全行車智能監測系統的設計方案。系統結合了AI 圖像識別算法,能夠直觀地獲取司機的危險駕駛行為;另外通過裝置酒精濃度傳感器,在車輛啟動前獲取司機呼出氣體的酒精濃度,有效阻止各種酒后駕駛行為;同時系統還為用戶提供了添加或刪除進行二次開發的功能。綜上所述,系統實現了以駕駛員為中心,能夠對駕駛員身心信息、駕駛員行為狀態、駕駛艙環境狀況等多個方面進行全面的行車安全監測,并且對影響行車安全的相關風險因素進行實時警報,從而有效避免了因駕駛員自身問題而導致的道路交通事故,在一定程度上彌補市面上針對駕駛員的安全監測車載系統的空白。