siemens x
技術(shù)

便攜式安全氣囊診斷儀的設(shè)計與研究

2025China.cn   2009年01月09日

一、前言

 

近幾年來,為減少汽車事故中對乘員的傷害,越來越多的轎車開始配備安全氣囊[1]。但是,人們往往會質(zhì)疑氣囊是否正常工作、是否起到預(yù)期的保護效果。因此越來越多的氣囊ECU設(shè)置了黑匣子功能,能夠保存事故發(fā)生時的重要數(shù)據(jù)信息以便于事故處理[2]。

 

由于國內(nèi)和國際都沒有針對氣囊ECU規(guī)定其數(shù)據(jù)存儲和輸出格式,加上技術(shù)保密的原因,導(dǎo)致每個生產(chǎn)氣囊ECU的廠商都有自己的一套標準,這個標準往往只有制造商具有解釋權(quán)。當事故發(fā)生后,只有制造商能夠讀出氣囊ECU里面的數(shù)據(jù)并對其進行解釋,為避免承擔由于氣囊故障造成事故的責(zé)任,制造商很有可能對數(shù)據(jù)進行處理,這就很難使公眾相信黑匣子數(shù)據(jù)處理后的結(jié)果[3]

 

解決這種問題的辦法就是設(shè)計制造一種第三方專業(yè)設(shè)備,能夠?qū)饽?/SPAN>ECU進行數(shù)據(jù)讀出、解析,客觀公正地反映事故中氣囊的工作狀況,從而對事故處理起到一個更好的輔助作用。

 

作者主要針對QH32F以及QH42OCS型氣囊ECU以及乘員識別系統(tǒng)設(shè)計一套對應(yīng)的便攜式氣囊診斷儀,能夠方便地讀出氣囊ECU中的事故數(shù)據(jù)以及故障碼,并對數(shù)據(jù)進行解碼顯示,便于事故現(xiàn)場對數(shù)據(jù)進行處理。

 

二、氣囊診斷儀系統(tǒng)功能需求

 

與氣囊ECU的數(shù)據(jù)通信目前氣囊ECU與外界的通信方式一般可以采取SCI、CAN總線、KWP2000等形式,由于CAN網(wǎng)絡(luò)已經(jīng)成為汽車車身的一個重要網(wǎng)絡(luò)形式,該診斷儀采用CAN總線和氣囊ECU建立通信[4]

 

和上位機的信息共享由于上位機具有更強大的運算能力,有更為豐富和靈活的軟件對數(shù)據(jù)進行分析和處理,因此主要的數(shù)據(jù)處理工作需要由上位機完成,通過和診斷儀的通信實現(xiàn)信息共享。

 

氣囊工作狀態(tài)及故障指示診斷儀的主要功能是通過和氣囊ECU建立通信,顯示出氣囊的工作狀態(tài)等信息,因此需要診斷儀能夠通過顯示組件顯示出這些相關(guān)信息。

 

數(shù)據(jù)讀取、存儲、管理及分析診斷儀需要能夠永久保存讀出的氣囊信息,并能在事故現(xiàn)場對數(shù)據(jù)進行一些初步分析。

 

具有多重權(quán)限和用戶管理功能由于使用者的不確定性,需要對診斷儀設(shè)定不同的權(quán)限,避免無關(guān)人員對數(shù)據(jù)的破壞或篡改。

 

功能清晰,便于操作對于診斷儀常用的功能設(shè)置常用功能鍵,其它非常用功能通過軟件進行切換,并設(shè)置方便的軟件菜單。

 

便攜性由于事故現(xiàn)場的環(huán)境無法預(yù)知,因此需要診斷儀具有很強的移動性,能夠隨身攜帶。

 

三、氣囊診斷儀系統(tǒng)結(jié)構(gòu)設(shè)計

 

該診斷儀系統(tǒng)由硬件部分和軟件部分組成,每個部分都劃分成幾個模塊,便于進行模塊化設(shè)計,圖1是診斷儀整個系統(tǒng)的框圖。

 

 

 

(一)氣囊診斷儀硬件設(shè)計

 

1MCU和數(shù)據(jù)存儲器

 

51系列單片機在國內(nèi)工業(yè)控制領(lǐng)域應(yīng)用相當廣泛,具有很好的價格優(yōu)勢,因此設(shè)計使用51系列單片機作為診斷儀主控芯片,具體型號為ATMEL公司生產(chǎn)的89C52芯片。外擴存儲器使用一片NVRAM,同時起到數(shù)據(jù)存儲器和程序RAM的作用。圖3是診斷儀MCU和數(shù)據(jù)存儲器框圖。

 

 

 

2是診斷儀硬件部分的模塊圖。

 

 

 

 

2.和氣囊ECU的通信電路設(shè)計

 

診斷儀的MCU并沒有內(nèi)置CAN控制器,因此采用PHILIPS公司的CAN控制器SJA1000,總線收發(fā)器采用82C250。圖4是診斷儀MCUCAN控制器框圖。

 

 

 

3.液晶顯示電路設(shè)計

 

為了能夠顯示氣囊的狀態(tài)信息以及顯示各個功能菜單,診斷儀使用型號為RT12864M的漢字圖形點陣液晶顯示模塊,可顯示漢字及圖形。圖5是診斷儀MCU和顯示組件框圖。

 

 

 

4.鍵盤輸入電路設(shè)計

 

診斷儀使用一塊8×8的矩陣鍵盤和外界進行交互,為減小單片機的計算壓力,使用鍵盤控制器82C79進行鍵盤掃描、編碼、消抖。圖6是診斷儀MCU和鍵盤控制器框圖。

 

 

 

5.電源電路設(shè)計

 

診斷儀的MCU、存儲器以及液晶顯示模塊等都工作在5V電壓下,考慮到事故發(fā)生后汽車往往停止供電,想要實現(xiàn)和氣囊ECU的通信,必須同時給其ECU供電,一般使用通信線直接給氣囊ECU供電。而氣囊ECU工作在12V電壓下,因此診斷儀電源需要12V電源??紤]到系統(tǒng)的便攜性,這里使用一塊1800mAh12V鋰電池作為電源,它的輸出經(jīng)過LC濾波后直接接到CAN通信線上,單片機需要的5V電壓是經(jīng)過DC轉(zhuǎn)換芯片2576轉(zhuǎn)換得到。

 

6.其它電路

 

除了上述電路外,為滿足診斷儀的其它功能需求,還需要有復(fù)位電路、看門狗電路和串口通信電路等。這里使用Xiacr的看門狗復(fù)位芯片X25045,集成最常用的3種功能:看門狗定時器、電壓管理和串行EEPROM,它能夠減少成本和線路板面積。串行EEPROM具有512B,用它保存用戶信息和系統(tǒng)使用權(quán)限信息。

 

另外,和PC機的串口通信使用常用的MAX232進行電平轉(zhuǎn)換。圖7是診斷儀其它接口電路框圖。

 

 

 

(二)氣囊診斷儀軟件設(shè)計

 

1.系統(tǒng)軟件功能需求[5]

 

數(shù)據(jù)通信、解碼及顯示功能作為診斷儀,要能夠?qū)崿F(xiàn)和待診斷設(shè)備的通信,從待診斷設(shè)備中讀出故障碼和數(shù)據(jù)并進行存儲或者顯示。其中數(shù)據(jù)需要以曲線的方式進行顯示,故障碼需要對其進行解碼,找到對應(yīng)的故障組件,進而顯示到顯示屏上。

 

數(shù)據(jù)分類管理功能由于診斷儀一次可能讀取多個氣囊ECU的數(shù)據(jù),因此需要對數(shù)據(jù)進行分類管理。

 

數(shù)據(jù)處理功能為能夠在現(xiàn)場得到一些有用信息,要求診斷儀對數(shù)據(jù)進行初步的分析和處理,因此需要有簡單的數(shù)據(jù)處理功能,包括濾波、消除零漂和傳感器標定等功能。

 

氣囊工作狀態(tài)實時顯示功能在診斷氣囊ECU時,同樣需要知道氣囊ECU的當前狀態(tài)。比如當氣囊ECU未發(fā)出點火信號時,因此其內(nèi)部沒有故障碼和其它各種數(shù)據(jù),這時就需要診斷儀獲取氣囊ECU的工作狀態(tài),以比較直觀的方式提示操作者。

 

CAN總線調(diào)試助手功能在調(diào)試氣囊ECU時,由于使用的是CAN總線,因此要知道CAN總線的工作狀態(tài)。診斷儀最好具有CAN總線調(diào)試功能,顯示CAN總線的工作狀態(tài)以及對特定的數(shù)據(jù)進行實時觀測,這個功能實際上具有通用性,同樣能夠應(yīng)用于其它使用CAN總線的場合。

 

數(shù)據(jù)共享功能由于診斷儀的數(shù)據(jù)處理功能有限,而PC機具有豐富的第三方數(shù)據(jù)處理軟件,因此主要的數(shù)據(jù)后處理應(yīng)該依靠PC機完成,診斷儀要能夠和上位機采用串口通信,傳輸存儲的數(shù)據(jù)和故障碼。

 

串口調(diào)試助手功能由于診斷儀使用串口通信,因此可參照CAN總線,同樣設(shè)置串口通信調(diào)試功能,能夠改變波特率,發(fā)送和接收特定的字符或字符串,這也可作為一個通用的便攜式串口調(diào)試助手使用。目前串口設(shè)備的應(yīng)用相當廣泛,便攜式的串口調(diào)試助手能夠和PC機一樣和這類設(shè)備建立通信,是一個很好的調(diào)試工具。

 

自檢測功能作為專用診斷設(shè)備,不僅能對氣囊ECU進行診斷,還應(yīng)能夠進行自檢測,否則診斷儀自身的故障可能造成數(shù)據(jù)的讀取失敗甚至數(shù)據(jù)清除。診斷儀自檢測需在開機時進行,確保診斷儀的正常工作。診斷儀的自檢測包括電源電壓、CAN總線通信、串口通信、存儲器存儲、液晶和鍵盤的工作狀態(tài)等。其中電源電壓的檢測依靠氣囊ECU,這是因為診斷儀的單片機本身沒有AD采樣模塊,而單獨使用AD芯片將會使成本不必要地上升,考慮到CAN總線的通信線實際上也是電源線,因此可使用氣囊ECUAD模塊。診斷儀通過CAN總線發(fā)送電源電壓檢測指令,氣囊ECU進行AD采樣并將結(jié)果通過CAN總線發(fā)回診斷儀,診斷儀再通過查表法得到電源電壓對應(yīng)的電量,完成電量的自檢測。

 

用戶管理功能診斷儀對操作者設(shè)置不同的使用權(quán)限。

 

幫助功能由于診斷儀的功能很多,每種功能對應(yīng)的操作也不同,特別是軟件的使用,因此設(shè)置幫助功能,顯示特定狀態(tài)下的幫助信息,幫助操作者掌握診斷儀的使用。

 

8是診斷儀系統(tǒng)控制軟件的功能需求模塊圖,軟件開發(fā)時,實際是先進行模塊開發(fā),最后進行模塊的整合。

 

 

 

2.系統(tǒng)主程序

 

診斷儀系統(tǒng)主程序的基本功能是進行系統(tǒng)各設(shè)備的初始化,驗證用戶信息等。另外,由于系統(tǒng)的中斷源較多,且有部分操作具有實時性要求,因此主程序表現(xiàn)為背景程序,承擔絕大部分的數(shù)據(jù)處理功能。圖9是診斷儀主程序的基本流程圖。

 

 

 

3.系統(tǒng)子程序控制策略

 

系統(tǒng)輔助子程序診斷儀系統(tǒng)輔助子程序主要包括硬件的初始化、驅(qū)動程序以及一些底層的代碼,由于這部分程序直接和硬件相關(guān),因此控制軟件主要參照硬件的使用說明編寫標準控制函數(shù),預(yù)留程序的控制接口。

 

中斷子程序由于診斷儀的系統(tǒng)比較復(fù)雜,部分操作占用較多的時間,為保證系統(tǒng)的實時性,設(shè)置3個中斷源:CAN總線接收中斷(外部中斷0)、鍵盤中斷(外部中斷1)和串口接收中斷。和上位機通信時,診斷儀不需要對CAN總線以及鍵盤等中斷源進行響應(yīng),因此設(shè)置串口接收中斷具有高優(yōu)先級。CAN總線上發(fā)送給診斷儀的數(shù)據(jù)需要診斷儀進行迅速接收和存儲,否則可能出現(xiàn)重疊錯誤,因此設(shè)置CAN總線接收中斷比鍵盤中斷具有較高的優(yōu)先級。

 

中斷子程序策略診斷儀的部分功能對于實時性要求較高,為得到更快和更有效的代碼,需要在中斷服務(wù)程序中只做一些比較簡單的操作,而把長的數(shù)據(jù)處理放在背景程序(主程序)中完成,這樣既可充分利用背景程序中的等待時間,又能很好保證系統(tǒng)的實時性。在這3個中斷子程序里,都只進行簡單的操作。其中串口接收中斷僅保存接收到的字符串到緩沖區(qū),并設(shè)置標志位,為背景程序指示有串口中斷發(fā)生;CAN總線接收中斷也只把CAN總線的數(shù)據(jù)保存到緩沖區(qū),并設(shè)置標志位;鍵盤中斷只讀取鍵值到緩沖區(qū)。在背景程序(主程序的無限循環(huán))中,按照順序查詢每個標志位是否設(shè)置,如果檢測到某個標志位設(shè)定,則執(zhí)行相應(yīng)的操作,否則繼續(xù)往下查詢。

 

四、結(jié)論

 

對于配置安全氣囊的汽車,在發(fā)生碰撞事故后,需要有便攜的專用設(shè)備讀出氣囊ECU中的黑匣子數(shù)據(jù),便于進行事故分析。

 

由于每個生產(chǎn)安全氣囊的廠商制定的通信規(guī)范都不一致,因此很難開發(fā)一種通用的診斷設(shè)備,作者主要針對使用CAN總線通信的氣囊ECU。

 

氣囊診斷儀是便攜式儀表,具有通用的鍵盤、液晶顯示屏、CPU等模塊,通過CAN總線和氣囊ECU實現(xiàn)通信,通過串口和PC實現(xiàn)數(shù)據(jù)共享,能夠讀出氣囊ECU中的數(shù)據(jù)存儲或者實時顯示,并具有簡單的數(shù)據(jù)處理功能。

 

氣囊診斷儀可以作為通用的便攜式CAN總線調(diào)試助手和串口調(diào)試助手使用。

 

作者針對“黑匣子局面”進行一次有益的嘗試,但由于無法獲取各個廠商的數(shù)據(jù)格式,所以主要使用試驗室的數(shù)據(jù)格式,因此要想真正擺脫這種局面,需要得到各個廠家的配合,需要數(shù)據(jù)格式的公開、透明和標準化。

 

標簽:便攜式 安全氣囊診斷儀 設(shè)計與研究 我要反饋 
2024世界人工智能大會專題
即刻點擊并下載ABB資料,好禮贏不停~
優(yōu)傲機器人下載中心
西克
2024全景工博會
專題報道