李富 付璇 覃建寧 喻叢兵 譚勁松
摘? 要:智能安全駕駛監(jiān)測(cè)系統(tǒng)基于酒后駕駛監(jiān)測(cè)模塊、駕駛員行為狀態(tài)監(jiān)控模塊、智能可穿戴模塊和服務(wù)器端來(lái)實(shí)現(xiàn)系統(tǒng)的功能。酒后駕駛監(jiān)測(cè)模塊基于MQ-3型氣敏傳感器收集車(chē)內(nèi)氣體酒精濃度信息;駕駛員行為狀態(tài)監(jiān)控模塊基于Dlib人臉識(shí)別和OpenCV計(jì)算機(jī)視覺(jué)實(shí)時(shí)計(jì)算駕駛員注意力集中程度;智能可穿戴模塊基于各種內(nèi)嵌式傳感器芯片收集駕駛員的心率血壓和體溫等指標(biāo);服務(wù)器端基于阿里云ECS服務(wù)器,使用JAVA語(yǔ)言編程,為移動(dòng)端APP提供優(yōu)質(zhì)的后臺(tái)服務(wù)。
關(guān)鍵詞:安全駕駛;汽車(chē);傳感器;物聯(lián)網(wǎng);智能可穿戴設(shè)備
中圖分類(lèi)號(hào):TP277? ? 文獻(xiàn)標(biāo)識(shí)碼:A? 文章編號(hào):2096-4706(2023)06-0013-05
An Intelligent and Safe Driving Monitoring System
LI Fu, FU Xuan, QIN Jianning, YU Congbing, TAN Jinsong
(Wuxi University, Wuxi? 214105, China)
Abstract: The intelligent and safe driving monitoring system is based on drink-driving monitoring module, driver behavior state monitoring module, intelligent wearable module and server terminal to realize the functions of system. The drink-driving monitoring module collects vehicle gas alcohol concentration information based on MQ-3 gas sensor. The driver behavior state monitoring module calculates the focusing degree of driver concentration in real time based on Dlib face recognition and OpenCV computer vision. The intelligent wearable module collects driver heart rate, blood pressure, body temperature and other indicators based on various embedded sensor chips. The server terminal is based on AliCloud ECS server, and it uses JAVA language programming to provide quality background service for mobile APP.
Keywords: safe driving; vehicle; sensor; Internet of Things; smart wearable device
0? 引? 言
據(jù)公安部統(tǒng)計(jì),截至2022年6月底,全國(guó)機(jī)動(dòng)車(chē)保有量達(dá)4.06億輛,其中汽車(chē)3.10億輛,新能源汽車(chē)1 001萬(wàn)輛;機(jī)動(dòng)車(chē)駕駛?cè)?.92億人,其中汽車(chē)駕駛?cè)?.54億人[1]。2022年上半年全國(guó)新注冊(cè)登記機(jī)動(dòng)車(chē)1 657萬(wàn)輛,新領(lǐng)證駕駛?cè)? 103萬(wàn)人[1]。隨著我國(guó)宏觀(guān)經(jīng)濟(jì)的快速穩(wěn)定發(fā)展、居民收入水平的大幅度上升、道路交通設(shè)施的日益完善、城鎮(zhèn)化進(jìn)程的加快以及置換需求的持續(xù)增加,未來(lái)我國(guó)汽車(chē)產(chǎn)銷(xiāo)量將保持持續(xù)穩(wěn)定增長(zhǎng)。一直以來(lái),安全都是汽車(chē)行業(yè)發(fā)展的第一主題,汽車(chē)為人們的生活和工作帶來(lái)了極大便利,其基礎(chǔ)保障就是安全。在相關(guān)調(diào)查結(jié)果中顯示,大多數(shù)交通安全事故的發(fā)生與駕駛員之間都存在直接的聯(lián)系,由此可以看出駕駛員在交通安全當(dāng)中的重要性。面對(duì)數(shù)量如此龐大的駕駛員人群,如今的智能安全駕駛系統(tǒng)并不全面,沒(méi)有完整的體系,只是單純的酒精檢測(cè)或疲勞駕駛檢測(cè),也沒(méi)有完善的處理和應(yīng)對(duì)方式,對(duì)于突發(fā)情況不能有效的處理。針對(duì)這個(gè)現(xiàn)象,我們團(tuán)隊(duì)推出了一款智能安全駕駛系統(tǒng)。我們相信,這款智能安全駕駛系統(tǒng)的問(wèn)世將會(huì)為安全駕駛領(lǐng)域增添更多的活力,加快行業(yè)在汽車(chē)領(lǐng)域的布局與發(fā)展。
1? 系統(tǒng)組成及功能
這款智能安全駕駛監(jiān)測(cè)系統(tǒng)主要包括酒后駕駛監(jiān)測(cè)模塊、駕駛員行為狀態(tài)監(jiān)控模塊、智能可穿戴設(shè)備模塊(測(cè)量出車(chē)主的體溫、心跳、血壓、血脂等指標(biāo))和服務(wù)器端。各模塊之間單獨(dú)工作,互不干擾,將收集的數(shù)據(jù)傳送給移動(dòng)端,共同實(shí)現(xiàn)系統(tǒng)目標(biāo)功能。
酒后駕駛監(jiān)測(cè)模塊主要功能是在汽車(chē)啟動(dòng)前,對(duì)駕駛員呼出氣體進(jìn)行酒精濃度檢測(cè),杜絕駕駛員出現(xiàn)酒后駕車(chē)的危險(xiǎn)行為。當(dāng)氣體中酒精濃度達(dá)到閾值時(shí),系統(tǒng)會(huì)觸發(fā)警報(bào)并自動(dòng)撥號(hào)給親屬。當(dāng)然,酒精濃度閾值可以根據(jù)實(shí)際需要進(jìn)行適當(dāng)調(diào)整,但不予超過(guò)交警查酒駕的標(biāo)準(zhǔn)。并將檢測(cè)記錄將上傳給后臺(tái)APP。
駕駛員行為狀態(tài)監(jiān)控模塊主要功能是通過(guò)攝像頭采集駕駛員實(shí)時(shí)行為動(dòng)態(tài),防止駕駛員出現(xiàn)疲勞駕駛的危險(xiǎn)行為。利用人臉檢測(cè)算法,參考疲勞認(rèn)定標(biāo)準(zhǔn)參數(shù),實(shí)時(shí)精準(zhǔn)檢測(cè)駕駛員瞇眼、哈欠、點(diǎn)頭等行為,觸發(fā)語(yǔ)音警告。并將行為日志傳給后臺(tái)。在汽車(chē)行駛過(guò)程中,通過(guò)駕駛員上前方攝像頭(指向駕駛員的面部),提供駕駛員實(shí)時(shí)行為狀態(tài),如瞇眼,哈欠,點(diǎn)頭等,并發(fā)出語(yǔ)音警告。
通過(guò)智能可穿戴設(shè)備,實(shí)時(shí)測(cè)量車(chē)主的體溫、心跳、血壓、血脂等生理健康指標(biāo)。將收集的生理數(shù)據(jù)進(jìn)行存儲(chǔ)分析,在客戶(hù)端生成健康報(bào)表提供給用戶(hù),若生理指標(biāo)突發(fā)異常,自動(dòng)撥號(hào)給家屬,并在客戶(hù)端上報(bào)實(shí)時(shí)位置。
服務(wù)器端主要功能是在網(wǎng)絡(luò)中為手機(jī)APP提供計(jì)算和應(yīng)用服務(wù)。對(duì)海量數(shù)據(jù)進(jìn)行處理,并通過(guò)APP反饋給用戶(hù),方便用戶(hù)掌握和了解自己的情況。
系統(tǒng)整體架構(gòu)如圖1所示
2? 系統(tǒng)各模塊功能實(shí)現(xiàn)
該系統(tǒng)以Jetson控制處理模塊為核心中樞,以手機(jī)APP和移動(dòng)通信模塊作為外設(shè)與用戶(hù)進(jìn)行信息交互,原理圖如圖2所示。手環(huán)、酒精度檢測(cè)傳感器后和攝像頭首先各自進(jìn)行數(shù)據(jù)采集,之后將數(shù)據(jù)上傳到Jetson控制處理模塊,Jetson控制處理模塊將數(shù)據(jù)進(jìn)行處理之后傳到手機(jī)APP反饋給用戶(hù),當(dāng)數(shù)據(jù)出現(xiàn)異常時(shí),通過(guò)移動(dòng)通信模塊直接提醒用戶(hù),并撥號(hào)給親屬。
2.1? 酒后駕駛監(jiān)測(cè)模塊
該模塊酒精濃度檢測(cè)裝置是一款實(shí)用性強(qiáng)、安全可靠的氣體乙醇濃度檢測(cè)工具[2],可安裝在汽車(chē)方向盤(pán),使用MQ-3型氣敏傳感器收集酒精濃度信息,通過(guò)使用A/D轉(zhuǎn)換器完成到數(shù)字信號(hào)的轉(zhuǎn)換,控制系統(tǒng)根據(jù)單片機(jī)系統(tǒng)接收到的數(shù)字信號(hào)對(duì)應(yīng)的酒精濃度檢測(cè)值同預(yù)先設(shè)定的濃度值進(jìn)行比較[3]。最后通過(guò)檢測(cè)結(jié)果判斷是否撥號(hào)告知家屬。同時(shí)該模塊還具有酒精濃度閾值設(shè)定功能,可以根據(jù)相關(guān)法律法規(guī)或用戶(hù)需要設(shè)定修改酒精濃度閾值,并進(jìn)行保存。
酒精濃度檢測(cè)裝置框圖如圖3所示。MQ-3氣體傳感器輸出信號(hào)經(jīng)信號(hào)調(diào)理電路處理,輸出隨酒精濃度變化的電壓信號(hào),將電壓信號(hào)送入單片機(jī)系統(tǒng),經(jīng)A/D轉(zhuǎn)換,與設(shè)定的酒精濃度閾值進(jìn)行比較,判斷是否觸發(fā)警報(bào)。
2.2? 駕駛員行為狀態(tài)監(jiān)控模塊
駕駛員行為狀態(tài)監(jiān)控模塊基于主流的OpenCV計(jì)算機(jī)視覺(jué)庫(kù)開(kāi)發(fā),采用基于Dlib機(jī)器學(xué)習(xí)庫(kù)的人臉檢測(cè)模塊,運(yùn)用SVM特征分類(lèi)方法,實(shí)現(xiàn)駕駛員駕駛狀態(tài)的精準(zhǔn)判別和疲勞駕駛的預(yù)警防范[4]。經(jīng)查閱相關(guān)文獻(xiàn),疲勞在人體面部表情中表現(xiàn)出大致三個(gè)類(lèi)型:哈欠(嘴部保持一定時(shí)間的大幅度張開(kāi)狀態(tài))、瞇眼(眼部在一段時(shí)間內(nèi)保持瞇眼狀態(tài)的行為)、點(diǎn)頭(頭部在一段時(shí)間內(nèi)保持上下晃動(dòng))[5]。該模塊從人臉朝向、位置、瞳孔朝向、眼睛開(kāi)合度、眨眼頻率、瞳孔收縮率等數(shù)據(jù)入手,基于Dlib人臉識(shí)別68特征點(diǎn)檢測(cè)、分別獲取左右眼、面部和嘴巴標(biāo)志的索引,通過(guò)OpenCV計(jì)算機(jī)視覺(jué)對(duì)視頻流進(jìn)行灰度化處理,獲取特征點(diǎn)位置數(shù)據(jù),并通過(guò)這些數(shù)據(jù),實(shí)時(shí)地計(jì)算出駕駛員的注意力集中程度,分析駕駛員是否疲勞駕駛和及時(shí)作出安全提示,疲勞認(rèn)定標(biāo)準(zhǔn)如表1所示,疲勞監(jiān)測(cè)流程如圖4所示。
2.3? 智能可穿戴模塊
該模塊主要是基于穿戴式智能手環(huán)內(nèi)嵌傳感器芯片來(lái)進(jìn)行駕駛員的心率、血壓和體溫?cái)?shù)據(jù)指標(biāo)的檢測(cè)。檢測(cè)結(jié)束后將數(shù)據(jù)傳輸給移動(dòng)端APP,通過(guò)特定算法對(duì)數(shù)據(jù)進(jìn)行分析,如若發(fā)現(xiàn)異常,將自動(dòng)撥號(hào)給家屬,并上傳實(shí)時(shí)位置。內(nèi)嵌的芯片主要包括YK1801脈搏傳感器芯片、HR6707脈搏芯片、SFB9712算法芯片和WD3703溫度傳感器芯片。YK1801脈搏傳感器芯片采用光電式容積脈搏波描記(PPG)的方式感應(yīng)人體的脈搏信息并加以提取,通過(guò)模擬前端芯片HR6707和算法芯片SFB9712輸出血壓、心率等串口信號(hào)[6]。WD3703溫度傳感器通過(guò)GPIO接口和SFB9712算法芯片連接,從算法芯片SFB9712的串口UART或者IIC接口輸出溫度數(shù)據(jù)。
2.4? 服務(wù)器端
該系統(tǒng)主要采用的是阿里云ECS服務(wù)器,使用docker-compose將微服務(wù)容器化自動(dòng)化部署,并進(jìn)行微服務(wù)編排,使用了阿里云容器服務(wù)提供的彈性計(jì)算應(yīng)對(duì)不同規(guī)模的訪(fǎng)問(wèn)靈活的伸縮服務(wù)集群,并且使用redis分布式數(shù)據(jù)庫(kù)來(lái)進(jìn)行數(shù)據(jù)庫(kù)唯一ID的生成。
后臺(tái)服務(wù)器采用ECS處理后臺(tái)業(yè)務(wù)流程與邏輯。ECS服務(wù)器使用CentOS 7作為服務(wù)器操作系統(tǒng),CentOS 7有著一系列獨(dú)特的特性,例如支持PTPv2,支持40G以太網(wǎng)卡以及在兼容的硬件上支持以UEFI安全模式啟動(dòng)安裝,當(dāng)然這其中最令人矚目的就是在內(nèi)核層面支持Docker技術(shù)了,將應(yīng)用程序與系統(tǒng)完全隔離,讓其在系統(tǒng)之間實(shí)現(xiàn)遷移的時(shí)候不需要停機(jī),提高了應(yīng)用程序的移動(dòng)性和靈活性。使用java8jdk+redis+rabbitmq+mysql+docker-compose+nginx搭建環(huán)境,為移動(dòng)端APP提供優(yōu)質(zhì)的服務(wù)支持。項(xiàng)目后臺(tái)使用了時(shí)下比較流行的微服務(wù)框架SpringCloud作為主要開(kāi)發(fā)技術(shù),它不僅繼承了SprintBoot部署方便、開(kāi)發(fā)便利、維護(hù)成本極低和容錯(cuò)率高的優(yōu)點(diǎn),而且還有著活躍的開(kāi)發(fā)社區(qū),更新頻率極快,支持跨語(yǔ)言的服務(wù)調(diào)用,可拓展性,穩(wěn)定性極強(qiáng),可較好的實(shí)現(xiàn)高并發(fā)高可用。后臺(tái)服務(wù)器使用了目前流行的RESTful風(fēng)格。前后端分離,減少耦合度,降低前后溝通造成的一系列不必要的成本,同時(shí)確保了項(xiàng)目服務(wù)集群之間更好的通信,使后臺(tái)應(yīng)對(duì)高并發(fā)高可用的能力增強(qiáng)。
采用分布式數(shù)據(jù)庫(kù)設(shè)計(jì),本項(xiàng)目的分布式數(shù)據(jù)庫(kù)基于redis+MySQL,同時(shí)利用redis的lua腳本執(zhí)行功能,在每個(gè)節(jié)點(diǎn)上通過(guò)lua腳本生成唯一ID來(lái)確保分布式數(shù)據(jù)庫(kù)數(shù)據(jù)的最終一致性,很好的處理了多臺(tái)應(yīng)用服務(wù)器的并發(fā)訪(fǎng)問(wèn),保證了數(shù)據(jù)的安全性與高可靠性。
使用Nginx進(jìn)行反向代理,直接解決了一切由微服務(wù)架構(gòu)和前后端分離開(kāi)發(fā)所帶來(lái)的跨域問(wèn)題,同時(shí)實(shí)現(xiàn)負(fù)載均衡,使集群之間的訪(fǎng)問(wèn)更流暢與自然。
使用docker-compose進(jìn)行微服務(wù)編排,本項(xiàng)目的部署采用docker這一當(dāng)下較為熱門(mén)的虛擬化容器技術(shù),由于考慮到了有高并發(fā)訪(fǎng)問(wèn)的產(chǎn)生和高可用需求的提出,所以采用了doker-compose技術(shù)進(jìn)行編排,使繁雜的部署簡(jiǎn)化,減少日后遷移服務(wù)器的成本,同時(shí)架構(gòu)更為契合。
使用swagger2進(jìn)行后臺(tái)接口的文檔化,自動(dòng)化文檔的生成,降低了開(kāi)發(fā)和維護(hù)成本。
3? 實(shí)驗(yàn)與測(cè)試
在系統(tǒng)功能開(kāi)發(fā)完成后,我們對(duì)系統(tǒng)進(jìn)行了功能測(cè)試。系統(tǒng)實(shí)際效果如圖5所示。
3.1? 酒精檢測(cè)功能
實(shí)驗(yàn)人員向方向盤(pán)附近噴灑酒精噴霧,酒后駕駛檢測(cè)模塊檢測(cè)到酒精氣體,Jetson控制處理模塊接收到酒后駕駛檢測(cè)模塊上傳的數(shù)據(jù),對(duì)其進(jìn)行處理和判斷,通過(guò)APP反饋給用戶(hù),蜂鳴器發(fā)出警報(bào),并通過(guò)通信模塊聯(lián)系親屬,如圖6所示。
3.2? 駕駛員行為狀態(tài)檢測(cè)功能
實(shí)驗(yàn)人員分別做出哈欠,點(diǎn)頭,打電話(huà),抽煙等行為,通過(guò)OpenCV計(jì)算機(jī)視覺(jué)對(duì)視頻流進(jìn)行處理,獲取特征點(diǎn)位置數(shù)據(jù),并通過(guò)這些數(shù)據(jù),實(shí)時(shí)地計(jì)算出駕駛員的注意力集中程度,分析駕駛員是否疲勞駕駛和及時(shí)作出安全提示,實(shí)際效果如圖7所示。
3.3? 心率血壓體溫檢測(cè)功能
實(shí)驗(yàn)人員分別模擬正常情況和突發(fā)情況,對(duì)其功能進(jìn)行全面檢測(cè)。正常情況下,手環(huán)會(huì)將用戶(hù)的健康指標(biāo)上傳給Jetson控制處理模塊,Jetson控制處理模塊會(huì)將數(shù)據(jù)與標(biāo)注健康指標(biāo)數(shù)據(jù)區(qū)間進(jìn)行對(duì)比,若數(shù)據(jù)正常,將數(shù)據(jù)上傳到APP生成健康報(bào)表。當(dāng)遇到突發(fā)情況時(shí),Jetson控制處理模塊將對(duì)通信模塊發(fā)出指令,發(fā)送信息和實(shí)時(shí)位置給親屬,實(shí)際效果如圖8所示。
4? 工作原理
在汽車(chē)啟動(dòng)時(shí),酒后駕駛監(jiān)測(cè)模塊會(huì)首先開(kāi)始工作,對(duì)車(chē)內(nèi)氣體中酒精含量進(jìn)行檢測(cè),若酒精濃度超標(biāo),則會(huì)通過(guò)通信模塊,直接聯(lián)系親屬,并在A(yíng)PP端形成日志記錄。若車(chē)內(nèi)氣體未檢測(cè)出酒精,則汽車(chē)開(kāi)始正常運(yùn)行。在運(yùn)行過(guò)程中,駕駛員行為狀態(tài)監(jiān)測(cè)模塊將實(shí)時(shí)監(jiān)測(cè)駕駛員行為,若出現(xiàn)非正常行為,將通過(guò)蜂鳴器及時(shí)發(fā)出警報(bào),以提醒駕駛員,糾正當(dāng)前行為。同樣在A(yíng)PP形成日志記錄。運(yùn)行過(guò)程中,智能可穿戴模塊也將實(shí)時(shí)上傳健康指標(biāo),如若發(fā)現(xiàn)異常,將通過(guò)發(fā)送信息和實(shí)時(shí)位置聯(lián)系親屬。用戶(hù)通過(guò)APP查看其行車(chē)狀態(tài),APP也將為用戶(hù)生成專(zhuān)屬建議,為下次行車(chē)安全保駕護(hù)航。
5? 結(jié)? 論
隨著現(xiàn)代科技的發(fā)展,汽車(chē)行業(yè)迎來(lái)了一系列革新,各方面技術(shù)的逐步完善大幅降低了因技術(shù)原因?qū)е碌慕煌ㄊ鹿?。那如何?guī)避人為因素引發(fā)的交通事故,是我們當(dāng)下不得不面臨的一個(gè)問(wèn)題。對(duì)此,我們團(tuán)隊(duì)開(kāi)發(fā)了這樣一款智能安全駕駛監(jiān)測(cè)系統(tǒng)。通過(guò)實(shí)際場(chǎng)景測(cè)試了系統(tǒng)的各項(xiàng)功能,均達(dá)到了預(yù)期結(jié)果,在后續(xù)的工作中,我們將繼續(xù)關(guān)注汽車(chē)安全領(lǐng)域的發(fā)展,進(jìn)一步完善該系統(tǒng),使其早日投入市場(chǎng),發(fā)揮其應(yīng)有的價(jià)值。
參考文獻(xiàn):
[1] 公安部公布2022年上半年全國(guó)機(jī)動(dòng)車(chē)及駕駛?cè)藬?shù)據(jù) [J].道路交通管理,2022(7):5.
[2] 高偉群,陳成成,劉斌,等.酒精濃度檢測(cè)語(yǔ)音報(bào)警系統(tǒng) [J].中外企業(yè)家,2018(21):118.
[3] 鐵爭(zhēng)鳴.汽車(chē)防酒駕控制裝置設(shè)計(jì)研究 [J].微型電腦應(yīng)用,2020,36(5):120-123.
[4] 孫世若,王天琪,張淼,等.“守衛(wèi)者”智能行車(chē)守護(hù)系統(tǒng) [J].物聯(lián)網(wǎng)技術(shù),2019,9(3):12-15.
[5] 吳士力,唐振民,劉永.多特征融合的隨機(jī)森林疲勞駕駛識(shí)別算法 [J].計(jì)算機(jī)工程與應(yīng)用,2020,56(20):212-219.
[6] 楊林,紀(jì)小敏,張新鋒.淺談社區(qū)老年人健康管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) [J].中國(guó)設(shè)備工程,2019(23):183-185.
作者簡(jiǎn)介:李富(1979—),男,漢族,山東高密人,高級(jí)工程師,碩士,主要研究方向:嵌入式系統(tǒng)設(shè)計(jì)。
收稿日期:2022-11-02