基于ZYNQ AP SoC的安全駕駛系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
疲勞駕駛和酒駕是嚴(yán)重的交通違法行為,駕駛員疲勞行車時(shí),會(huì)造成反應(yīng)遲鈍、困倦、四肢無(wú)力,不能及時(shí)發(fā)現(xiàn)路面交通情況以采取準(zhǔn)確的駕駛操控措施,極易發(fā)生交通事故[1]。據(jù)交通部統(tǒng)計(jì),2015年間,由于駕駛員疲勞駕駛導(dǎo)致的交通事故占總數(shù)的10.64%,在重特大交通事故中約占45%。在美國(guó),每年與疲勞駕駛相關(guān)的車禍奪去了15000人的生命。而酒后的駕駛員會(huì)出現(xiàn)視覺(jué)障礙、運(yùn)動(dòng)反射神經(jīng)遲鈍、判斷力降低。有數(shù)據(jù)顯示,在中國(guó),每年因酒駕導(dǎo)致的交通事故占40%~50%,可見(jiàn),車輛裝備具有疲勞檢測(cè)和酒駕提醒的安全駕駛系統(tǒng)的必要性。
先進(jìn)駕駛輔助系統(tǒng)(Advanced Driver Assistant System),簡(jiǎn)稱ADAS,是利用安裝于車上的各式各樣的傳感器, 在第一時(shí)間收集車內(nèi)外的環(huán)境數(shù)據(jù), 進(jìn)行靜、動(dòng)態(tài)物體的辨識(shí)、偵測(cè)與追蹤等技術(shù)上的處理, 從而能夠讓駕駛者在最快的時(shí)間察覺(jué)可能發(fā)生的危險(xiǎn), 以引起注意和提高安全性的主動(dòng)安全技術(shù)。ADAS 采用的傳感器主要有攝像頭、雷達(dá)、激光和超聲波等,可以探測(cè)光、熱、壓力或其它用于監(jiān)測(cè)汽車狀態(tài)的變量, 通常位于車輛的前后保險(xiǎn)杠、側(cè)視鏡、駕駛桿內(nèi)部或者擋風(fēng)玻璃上。早期的ADAS 技術(shù)主要以被動(dòng)式報(bào)警為主,當(dāng)車輛檢測(cè)到潛在危險(xiǎn)時(shí), 會(huì)發(fā)出警報(bào)提醒駕車者注意異常的車輛或道路情況。對(duì)于最新的ADAS 技術(shù)來(lái)說(shuō),主動(dòng)式干預(yù)也很常見(jiàn)。
硬件系統(tǒng)架構(gòu)及方案基于ZYNQ AP SoC(ZYNQ All Programmable SoC)的安全駕駛系統(tǒng)的硬件系統(tǒng)[2]如圖1所示,系統(tǒng)主要由高速CMOS圖像傳感器Ov7725、130萬(wàn)像素USB網(wǎng)絡(luò)攝像頭、Zynq-7000可擴(kuò)展處理芯片、數(shù)據(jù)存儲(chǔ)單元DDR3、HDMI顯示屏、酒精傳感器和喇叭等組成。Xilinx公司的Zynq-7000可擴(kuò)展處理芯片是整個(gè)系統(tǒng)的核心,其包含處理系統(tǒng)(Processing System,PS)和可編程邏輯(Programmable Logic,PL)兩部分,PS部分集成了最高頻率為667GHz的高性能雙核ARM Cortex-A9處理器,而PL部分包含28nm工藝的FPGA(Field-Programmable Gate Array)邏輯單元和DSP資源。
PL端通過(guò)I2C協(xié)議驅(qū)動(dòng)[3]Ov7725攝像頭,將攝像頭采集的圖像數(shù)據(jù)緩存于一個(gè)異步時(shí)鐘FIFO(First Input First Output)隊(duì)列中,而FIFO的寫時(shí)鐘由Ov7725攝像頭模塊提供,異步讀時(shí)鐘由VDMA Engine提供,并在讀過(guò)程進(jìn)行灰度圖轉(zhuǎn)換,后將數(shù)據(jù)讀入VDMA Engine。
PS端通過(guò)AMBA高速總線AXI_HP接口,驅(qū)動(dòng)DDR3控制器,并讀取一幀圖片數(shù)據(jù),并對(duì)圖片進(jìn)行臉部識(shí)別等圖像處理,得到人臉五官特征值。(3)PS端同時(shí)通過(guò)USB-Host總線對(duì)網(wǎng)絡(luò)攝像頭進(jìn)行配置,并得到圖像數(shù)據(jù),在Linux系統(tǒng)下將圖像通過(guò)HDMI顯示器顯示,并將圖像數(shù)據(jù)存儲(chǔ)到SD存儲(chǔ)卡中。(4)PS端在Linux系統(tǒng)下驅(qū)動(dòng)內(nèi)部集成的12位精度ADC轉(zhuǎn)換器,將酒精傳感器采集的模擬信號(hào)進(jìn)行數(shù)字轉(zhuǎn)換。
預(yù)警提示最終通過(guò)調(diào)用程序預(yù)設(shè)的語(yǔ)音組合,由HDMI接口輸出到帶功放或者音頻接口的HDMI顯示設(shè)備,達(dá)到提醒駕駛員的目的。