陳少偉 潘夢鷂 何哲宇 鐘玉靈





摘 ?要:針對現有車載智能終端手動操作煩瑣,轉移駕駛員注意力進而導致交通安全事故風險等問題,通過對語音控制技術的研究,提出了一種基于語音控制的OBD車載智能終端系統。該系統包括車載智能終端和OBD系統交互端兩大部分,基于語音識別控制可以實現讀VIN碼、讀故障碼、讀數據流和車輛控制等功能。經過實車試驗表明,該系統運行穩定可靠,能夠準確識別語音指令,降低了車載智能終端操作的復雜程度,有效減少了交通安全風險因素。
關鍵詞:語音控制;語音識別;STM32;OBD
中圖分類號:TP391.4;TN929.5 ? ? 文獻標識碼:A 文章編號:2096-4706(2021)12-0041-03
Abstract: In view of the problems that cumbersome manual operation of the existing on-board intelligent terminal, which diverts the driver's attention and then leads to the risk of traffic safety accidents, through the research of voice control technology, an OBD on-board intelligent terminal system based on voice control is proposed. The system includes two parts of on-board intelligent terminal and OBD system interaction terminal. Based on voice recognition control, it can realize the functions of reading VIN code, reading fault code, reading data flow and vehicle control and so on. The real vehicle test shows that the system runs stably and reliably, can accurately recognize voice commands, reduce the complexity of on-board intelligent terminal operation, and effectively reduce traffic safety risk factors.
Keywords: voice control; voice recognition; STM32; OBD
0 ?引 ?言
隨著智能技術的快速發展,汽車智能化產品應用越來越多。OBD,簡稱車載診斷系統,主要用于監測汽車各電控系統工作狀態信息[1],它是汽車內部電子系統和外部電子設備信息交互的主要渠道。基于OBD技術的車載智能終端因能夠給車主提供車輛實時狀態監測、故障快速診斷等功能而得到廣泛應用[2]。車載智能終端主要以固定車載裝置或者手機APP的形式存在[3],駕駛員往往需要手動操作這些車載智能終端,操作繁雜很不方便,在行車過程中容易轉移駕駛員的注意力而導致存在很大的安全駕駛風險。本文對語音控制技術進行了研究,設計了一種基于語音控制的OBD車載智能終端系統,該系統采用語音控制方式,降低駕駛員的操作難度,減輕操作負擔,讓駕駛員專注于汽車安全駕駛,對避免交通安全事故的發生,保障人民生命財產安全有十分重要的意義。
1 ?系統總體結構
基于語音控制的OBD車載智能終端系統總體結構如圖1所示,在一般實際車輛中,OBD接口往往是在駕駛方向盤下面比較隱蔽的地方,本系統需要通過OBD接口和汽車內部電控單元進行交互通信,實現汽車控制和汽車數據獲取等功能。
本系統還需要考慮方便駕駛員擁有良好的人機交互效果,因此,本系統設計了車載智能終端和OBD系統交互端兩大模塊,兩大模塊通過藍牙通信方式實現數據交互,OBD系統交互端的OBD插頭與汽車的OBD接口直接連接。其主要工作過程為:車載智能終端的語音模塊實時監聽駕駛員的語音指令信息,如果監聽到語音指令信息,語音模塊自動把語音信息和內部預設的語音信息進行匹對,如果匹對成果,語音模塊輸出中斷信號給車載智能終端的STM32F1控制模塊進行語音結果獲取,STM32F1控制模塊通過藍牙通信方式把語音指令數據下傳到OBD系統交互端的STM32F1控制模塊,STM32F1控制模塊根據指令的要求獲取汽車的數據或者控制汽車執行相應的動作。若STM32F1控制模塊成功獲取汽車的數據,則通過藍牙通信方式把數據上傳到STM32F1控制模塊,并最終在車載智能終端的顯示模塊中顯示,同時在語音模塊中進行播報。
2 ?硬件設計
2.1 ?智能控制單元
車載智能終端和OBD系統交互端兩大模塊分別擁有一個智能控制單元。車載智能終端涉及語音識別、語音播報、數據顯示、藍牙通信等功能,需要引腳數量比較多和運行速度比較快的單片機。OBD系統交互端需要具有CAN通信模塊以便和車載OBD系統進行交互通信??紤]本系統的實際需求,最終選擇了ST公司的STM32F103ZET6作為兩大模塊智能控制單元的主控芯片。STM32F103ZET6芯片是一款采用基于ARMCortex—M3內核的高性能低功耗處理器[4],工作頻率高達72 MHz,運行速度快,實時性強,還集成非常豐富的外設資源,包括串口、CAN、引腳端口、中斷等,滿足系統多功能實現需求??刂破骶邆涞腃AN控制器,可與車載OBD系統的CAN網絡進行交互通信,實現車輛數據采集和車輛控制。
2.2 ?數據傳輸單元
本系統要求實現車載智能終端和OBD系統交互端之間的數據傳輸,藍牙通信采用無線電波通信,中間省去了通信線束的影響,同時具有和串口通信一樣簡便的軟件編程操作,因此,本系統數據傳輸單元選擇了藍牙通信方式,藍牙模塊型號為HC-02,通過上位機軟件進行AT指令操作設置藍牙模塊參數,該藍牙模塊工作頻段2.4 GHz,內置PCB天線,默認波特率9 600,有效傳輸距離10米,滿足我們系統車內空間工作距離要求[5,6]。
2.3 ?語音交互單元
語音交互單元主要是完成駕駛員與系統之間的語音溝通,包括駕駛員發出語音請求,語音交互單元需要完成語音識別,并且把識別結果以數據形式讓智能控制單元獲取。也包括在駕駛員交互過程中,系統能夠以語音的方式進行應答,比如,在駕駛員喚醒系統的時候,系統能夠說出“小明在,請問有什么事嗎?”的應答詞語,還有能夠播報故障碼、數據流等信息,讓駕駛員有一個非常好的人機交互體驗。因此,本系統采用ICRoute公司的LD3323語音識別模塊[4],該模塊內部集成了穩定高效的語音處理算法,不需用戶額外接Flash、RAM,不需要用戶事先訓練和錄音而完成非特定人語音識別,識別準確率高。這個模塊不但具有語音識別還有語音播報功能,滿足系統的語音交互需求。
2.4 ?信息顯示單元
信息顯示單元主要是顯示故障碼、數據流,以及一些語音交互過程信息等。本系統采用4.3寸的TFTLCD液晶顯示器,分辨率為800×480,16位真彩顯示,滿足信息顯示要求。TFTLCD液晶顯示器采用16位并行方式接口,可以與STM32F103ZET6的FSMC接口直接相連接,有效提高了數據傳輸速度。
3 ?軟件設計
軟件設計包括車載智能終端程序和OBD系統交互端程序兩大部分。OBD系統交互端程序主要根據語音控制指令要求完成車載數據采集和汽車控制等兩個功能。OBD系統交互端程序設計思路和車載智能終端程序是一樣的。本文主要介紹車載智能終端程序設計思路,主程序如圖2所示。主程序首先進行串口、TFTLCD液晶顯示模塊、LD3320語音模塊和芯片中斷等初始化,然后進入while循環程序。在while循環程序里面通過判別標記變量Flag值的不同而跳轉執行相應的功能程序。由于LD3320語音模塊的語音識別和語音播報,還有數據顯示等都會首先觸發中斷,因此,在中斷服務程序里面識別來自不同功能中斷觸發,然后把標記變量flag值修改成相對應的值,最后在主程序里面執行相應的功能程序,如圖3所示。
4 ?系統應用
為了驗證系統設計的可靠性和穩定性,我們選擇在2017款豐田卡羅拉上進行測試,系統實物如圖4所示。我們用車載電源給系統供電,系統上電后立刻進入硬件初始化,然后進入循環監控待機狀態。試驗開始,駕駛員首先說出“小明,在嗎?”一級語音指令,語音識別成功后,車載智能終端立刻說出“小明在,請問有什么事嗎?”緊接著駕駛員就是陸續說出“讀VIN碼”“讀故障碼”“讀數據流”“清故障碼”“控制車輛執行”等二級語音命令,系統最終按指令要求一一順利完成功能,如圖5所示,驗證了系統功能的可靠性。為了驗證語音識別功能的穩定性,我們研究了實際使用環境情況,最終設計了不同駕駛員分別在停車狀態(發動機沒啟動)、行駛狀態等不同場景的語音識別測試項目,測試結果如表1所示。
從表1中可以看出,系統識別成功率在95%左右,達到系統設計要求,滿足駕駛員對系統的控制需要。從表格數據可以發現,停車狀態比行駛狀態效果要好,普通話標準比不標準的駕駛員效果要好。對此,我們采取了增加鄰近發音詞匯的識別,提高了系統的識別可靠性。還有,當語音識別不成功的時候,系統會自動說出“主人,小明聽不清,請您再說一遍”,這樣有效增強了系統的人機語音交互體驗。
5 ?結 ?論
本文設計了一種基于語音控制的OBD車載智能終端系統,該系統經過實車測試,實現了設計功能,語音識別成功率達到系統設計要求。系統操作由傳統的手動操作升級為語音智能操作,降低駕駛員的操作難度,提高駕駛員的駕駛安全性,它是屬于智能語音技術在汽車安全駕駛領域的成功應用。
參考文獻:
[1] 白東,錢松榮.基于OBD的車輛信息管理平臺 [J].微型電腦應用,2017,33(7):65-68.
[2] 陳曉娟,樓培德.基于OBD的車載智能終端現狀及其發展趨勢 [J].軟件,2014,35(10):95-99.
[3] 陳傳燦,徐聰.汽車OBD系統發展綜述 [J].汽車零部件,2016(7):94-96.
[4] 蘇鵬,周風余,陳磊.基于STM32的嵌入式語音識別模塊設計 [J].單片機與嵌入式系統應用,2011,11(2):42-45.
[5] 姜太強.基于STM32F1平臺的AGV避障設計 [J].電子制作,2020(21):19-21.
[6] 徐琬婷,蔣玲,余紅英,等.基于藍牙技術的家用環境監控測試儀設計 [J].西安文理學院學報(自然科學版),2021,24(3):26-30.
作者簡介:陳少偉(1987.10—),男,漢族,廣東廣州人,講師,碩士研究生,主要研究方向:機電液智能測控。