引言
隨著汽車的普及和行駛速度的加快,交通事故及傷亡人數(shù)也在逐年上升,。在發(fā)生汽車碰撞事故時(shí),,如何有效地保護(hù)司機(jī)和乘員生命的安全是迫切需要解決的問(wèn)題。安全氣囊作為與安全帶配合使用的被動(dòng)保護(hù)裝置已經(jīng)普及,,成為汽車構(gòu)件中保護(hù)乘員的主要裝備之一,。
氣囊控制系統(tǒng)可分為機(jī)械式、模擬電子式和嵌入式3種類型,。對(duì)于機(jī)械式和模擬電子式控制系統(tǒng),,由于硬件的局限,靈活性受到很大限制,,應(yīng)用日益減少,。新一代的氣囊控制系統(tǒng)均為帶微控制器的嵌入式控制系統(tǒng)。嵌入式控制系統(tǒng)的控制算法由軟件實(shí)現(xiàn),,極大地提高了系統(tǒng)的靈活性,,并具有記錄事故數(shù)據(jù)和與上位機(jī)進(jìn)行通訊的功能。
汽車的安全氣囊要求能在一個(gè)極短的時(shí)間內(nèi)檢測(cè)到汽車碰撞事故的發(fā)生并控制氣囊啟爆,。為了實(shí)現(xiàn)上述目標(biāo),,要求安全氣囊控制系統(tǒng)的微控制器運(yùn)算能力強(qiáng)、I/O口充足,?;诖耍x擇高性能的32位微控制器,,研究并開(kāi)發(fā)出較為實(shí)用的汽車安全氣囊控制系統(tǒng),,具有一定的應(yīng)用和參考價(jià)值。本文在對(duì)國(guó)內(nèi)外先進(jìn)控制系統(tǒng)研究的基礎(chǔ)上,,提出了基于ARMCortexM3內(nèi)核32位微控制器的汽車安全氣囊控制系統(tǒng)的設(shè)計(jì)方案,,并分別進(jìn)行了臺(tái)車和實(shí)車試驗(yàn)。
1 ARMCortexM3內(nèi)核與微控制器LM3S1138
ARM公司面向低成本應(yīng)用領(lǐng)域研發(fā)出32位CortexM3內(nèi)核處理器,。該處理器有效地利用芯片空間,,高度集成了外設(shè),,與內(nèi)核組成了一個(gè)片上系統(tǒng)(SoC)。ARMCortexM3處理器結(jié)合了Thumb2指令32位哈佛微體系結(jié)構(gòu),。Thumb2技術(shù)提高了代碼密度,,比32位編碼減少了26%內(nèi)存使用率,,較16位編碼提高了25%性能,。通過(guò)降低時(shí)鐘頻率,提供更低的功耗,,降低了研發(fā)成本,,提高了企業(yè)效率。芯片上實(shí)現(xiàn)了Tail-Chaining中斷技術(shù),,該技術(shù)把中斷之間的延遲縮短到6個(gè)機(jī)器周期,,在實(shí)際應(yīng)用中可減少70%中斷。
本系統(tǒng)微處理器選用TI公司基于ARMCortexM3內(nèi)核的LM3S1138工業(yè)級(jí)微控制器,。其工作溫度范圍是-40~85°C,并具有良好的電磁兼容特性,,可應(yīng)用于汽車電子領(lǐng)域。
2 系統(tǒng)工作原理與設(shè)計(jì)
2.1 系統(tǒng)的工作原理
安全氣囊控制系統(tǒng)主要由傳感器,、自檢電路,、觸發(fā)電路、通訊電路和報(bào)警電路組成,,如圖1所示,。
其工作原理為:上電后,系統(tǒng)進(jìn)行自檢,,確定觸發(fā)電路是否可以正常工作,。若觸發(fā)電路存在故障,報(bào)警電路進(jìn)行聲光報(bào)警,,表明系統(tǒng)無(wú)法正常工作,,通知駕駛員及時(shí)修理。當(dāng)自檢正常時(shí),,通過(guò)32位微處理器LM3S1138不斷對(duì)加速度傳感器MMA7260測(cè)得的信號(hào)進(jìn)行采樣,。當(dāng)汽車受到一定角度內(nèi)的高速碰撞時(shí),系統(tǒng)在經(jīng)過(guò)算法分析確認(rèn)之后,,立即觸發(fā)氣囊包內(nèi)的點(diǎn)火器,,氣囊迅速充滿氣體,阻擋駕駛員與汽車構(gòu)件之間可能發(fā)生的碰撞,,通過(guò)氣囊上排氣孔的節(jié)流阻尼作用來(lái)緩沖吸收駕駛員動(dòng)能,,從而達(dá)到保護(hù)駕駛員安全的目的。
2.2 系統(tǒng)的硬件設(shè)計(jì)
2.2.1 加速度測(cè)量電路
本文選擇飛思卡爾公司的硅電容加速度傳感器MMA7260,。它具有信號(hào)放大調(diào)理,、低通濾波和補(bǔ)償功能,。該器件的零加速度偏置、滿量程范圍和濾波特性均由制造廠家調(diào)定,,不需要外接無(wú)源元件,。由于該傳感器制作工藝上的高集成度和可靠性,最大程度地降低了外界的干擾,。MMA7260直接采用IC集成封裝,,可直接焊在PCB板上,調(diào)試方便,。
LM3S1138處理器內(nèi)置8通道10位ADC,采樣速率可達(dá)1M/s,精度足夠用于安全氣囊,。傳感器測(cè)得加速度后,從相應(yīng)的輸出管腳輸出電壓值,。通過(guò)LM3S1138處理器內(nèi)置的ADC對(duì)電壓值進(jìn)行模數(shù)轉(zhuǎn)換,,再存入到軟件設(shè)定的數(shù)組中。
加速度測(cè)量電路的硬件原理圖如圖2所示,。
本系統(tǒng)只使用MMA7260三軸加速度傳感的X和Z兩軸來(lái)進(jìn)行水平方向的碰撞判斷,。X軸方向測(cè)量汽車正面碰撞的加速度,Z軸方向測(cè)量汽車垂直方向的加速度,。當(dāng)汽車高速駛過(guò)溝,、坎路面時(shí),會(huì)導(dǎo)致傳感器即使在沒(méi)有發(fā)生碰撞的情況下,,也產(chǎn)生較大信號(hào),。此信號(hào)疊加在低速碰撞的碰撞波形上,導(dǎo)致微控制器誤認(rèn)為高速碰撞,,進(jìn)而發(fā)生誤啟爆,。鑒于此,當(dāng)汽車Z軸(垂直方向),。產(chǎn)生較大的加速度時(shí),,無(wú)論X軸方向加速度如何,安全氣囊均設(shè)計(jì)為不啟爆,。避免了因?yàn)槠嚫咚亳傔^(guò)地面路障時(shí),,安全氣囊引爆所造成的不必要的損失,增強(qiáng)了路面抗干擾性,。
2.2.2 點(diǎn)火觸發(fā)電路
由于氣囊氣體發(fā)生器的點(diǎn)爆時(shí)需20mA電流脈沖,。若直接用LM3S1138的I/O口輸出高電平進(jìn)行引爆,驅(qū)動(dòng)過(guò)小,,無(wú)法滿足要求,。系統(tǒng)選用電磁式繼電器,在LM3S1138輸出口的控制下可驅(qū)動(dòng)大功率的負(fù)載,。由于繼電器會(huì)產(chǎn)生較明顯的干擾,,故在繼電器周圍加抗干擾電路的同時(shí)與光電耦合器配合使用,,使得處理器與觸發(fā)電路光電隔離。當(dāng)碰撞發(fā)生時(shí),,安全氣囊對(duì)身材過(guò)于矮小的成年人或兒童不但沒(méi)有保護(hù)作用,,引爆的巨大沖擊力甚至?xí)⑵鋸椝馈榱烁玫貙?shí)現(xiàn)安全點(diǎn)火和智能化點(diǎn)火,,系統(tǒng)在觸發(fā)回路上設(shè)置一個(gè)座位壓力感應(yīng)裝置,。如果有成年人入座,則裝置閉合,,點(diǎn)火電路可正常工作,。相反,如果裝置斷開(kāi),,則表明無(wú)人入座或只有矮小成年人或兒童入座,觸發(fā)電路不能形成回路,。此時(shí),,即使汽車發(fā)生碰撞且算法發(fā)出點(diǎn)火信號(hào),安全氣囊也不爆破,。這樣,,既防止在無(wú)人入座的狀態(tài)下引爆氣囊而造成的經(jīng)濟(jì)損失,又避免了氣囊對(duì)矮小成年人和兒童造成的傷害,。點(diǎn)火觸發(fā)電路的原理圖如圖3所示,。
2.3 系統(tǒng)的軟件設(shè)計(jì)
系統(tǒng)采用CortexM3內(nèi)核處理器簡(jiǎn)化了軟件開(kāi)發(fā)環(huán)境。
針對(duì)LM3S1138等一系列的微控制器,,TI官方免費(fèi)提供了基于C語(yǔ)言(符合ANSIC標(biāo)準(zhǔn)),。的驅(qū)動(dòng)庫(kù),它包含了眾多固件函數(shù)庫(kù),,對(duì)每一個(gè)外設(shè)都有相應(yīng)例程,,可以很方便地根據(jù)應(yīng)用需要進(jìn)行修改和移植。因此在軟件編程時(shí),,無(wú)需匯編程序的軟件管理,,完全可以用驅(qū)動(dòng)庫(kù)C語(yǔ)言函數(shù)進(jìn)行編程開(kāi)發(fā)。開(kāi)發(fā)應(yīng)用程序時(shí),,利用驅(qū)動(dòng)庫(kù)的例程進(jìn)行模塊化設(shè)計(jì),,不僅程序編寫(xiě)方便,而且代碼簡(jiǎn)潔且可讀性強(qiáng),。對(duì)編寫(xiě)大型程序而言,,采用驅(qū)動(dòng)庫(kù)能增強(qiáng)可靠性和安全性,同時(shí)降低維護(hù)成本,。故本系統(tǒng)軟件程序利用TI公司提供的驅(qū)動(dòng)庫(kù)例程進(jìn)行模塊化程序設(shè)計(jì),,把整個(gè)系統(tǒng)程序分為若干個(gè)小程序或模塊,,分別進(jìn)行獨(dú)立設(shè)計(jì)、編程和測(cè)試,。最后將各模塊構(gòu)建一個(gè)完整的工程,,完成應(yīng)用程序設(shè)計(jì)。將整個(gè)工程分成了主程序,、啟動(dòng)任務(wù),、定時(shí)采樣任務(wù)和串行通信任務(wù)等4大模塊。流程圖如圖4所示,。
2.3.1 主程序模塊
為增加系統(tǒng)的執(zhí)行效率,,實(shí)現(xiàn)多任務(wù)程序運(yùn)行,系統(tǒng)通過(guò)移植,,嵌入了μC/OS-Ⅱ操作系統(tǒng),。程序流程圖中啟動(dòng)任務(wù)模塊為嵌入μC/OS-Ⅱ操作系統(tǒng)時(shí)程序常用模式。
2.3.2 啟動(dòng)任務(wù)模塊
在程序運(yùn)行時(shí),,先執(zhí)行啟動(dòng)任務(wù),,然后根據(jù)按鍵情況,執(zhí)行通訊任務(wù)或定時(shí)采樣任務(wù),。
2.3.3 定時(shí)采樣模塊
軟件中實(shí)現(xiàn)每1s采樣一次加速度并做A/D轉(zhuǎn)換,,存儲(chǔ)在Flash中。若發(fā)生了撞車事故并符合算法的點(diǎn)火條件,,記錄當(dāng)前數(shù)據(jù)存放地址,,適時(shí)發(fā)出點(diǎn)火指令,啟爆氣囊,,同時(shí),,再采樣90個(gè)數(shù)據(jù)點(diǎn)。在分析現(xiàn)場(chǎng)時(shí),,碰撞前的90個(gè)數(shù)據(jù)和撞車后的90個(gè)數(shù)據(jù)可記錄在LM3S1138內(nèi)置的Flash中,,作為黑匣子信息分析事故原因。
本系統(tǒng)選用加入垂直量的移動(dòng)窗積分算法,。由于篇幅所限,,將在后續(xù)文章中論述。
2.3.4 串行通訊模塊
事故發(fā)生后,,PC機(jī)通過(guò)串行口讀出氣囊控制系統(tǒng)黑匣子中的數(shù)據(jù),,作為分析事故之用。開(kāi)發(fā)人員可自行設(shè)置讀取黑匣子水平方向加速度和垂直方向加速度數(shù)據(jù)的密碼,。
3 性能試驗(yàn)
目前汽車業(yè)內(nèi)普遍采用的是5英寸(1英寸=254cm)30ms準(zhǔn)則來(lái)確定安全氣囊的最佳點(diǎn)火時(shí)刻,。在汽車碰撞過(guò)程中,乘員相對(duì)于車體向前移動(dòng)5英寸時(shí)刻的前30ms是氣囊的最佳點(diǎn)火時(shí)刻,。其依據(jù)是大多數(shù)已系好安全帶的轎車乘員與轉(zhuǎn)向盤(pán)之間的間距為12英寸,,氣囊充氣后的厚度為約為7英寸,,氣囊從點(diǎn)爆到充滿氣體的時(shí)間為30ms。當(dāng)氣袋充滿氣體的時(shí)刻乘員恰好與氣袋接觸,,氣囊保護(hù)作用最佳,。若氣囊點(diǎn)火過(guò)早,當(dāng)乘員接觸到氣囊時(shí),,氣囊已泄氣,,起不到保護(hù)作用。
當(dāng)氣囊點(diǎn)火過(guò)晚,,乘員由于慣性前移,,氣囊會(huì)把乘員打傷甚至致死。所以最佳點(diǎn)火時(shí)間是設(shè)計(jì)安全氣囊控制器的關(guān)鍵,。而本系統(tǒng)利用積分窗算法和ARMCortex處理器相結(jié)合,,取得了較好的效果,試驗(yàn)結(jié)果和該準(zhǔn)則基本吻合,。
3.1 臺(tái)車試驗(yàn)
臺(tái)車試驗(yàn)在南昌大學(xué)科技學(xué)院汽車碰撞實(shí)驗(yàn)室進(jìn)行,,如圖5所示。碰撞后,,乘員身體前移的時(shí)刻比碰撞時(shí)刻滯后。滯后的大小主要取決于某款車型的吸能性能,。由于臺(tái)車上只有安全氣囊控制系統(tǒng),,并無(wú)任何吸能裝置,吸能幾乎為零,。故在本試驗(yàn)中,,認(rèn)為碰撞時(shí)刻即為乘員開(kāi)始前移的時(shí)刻。臺(tái)車在滑行軌道上由繩索牽引,。時(shí)速由40km/h逐漸遞增到60km/h,。試驗(yàn)過(guò)程由高速攝像機(jī)錄制,通過(guò)慢放錄像,,測(cè)得在碰撞時(shí)刻后氣囊打開(kāi)時(shí)刻,。數(shù)據(jù)如表1所示。
試驗(yàn)數(shù)據(jù)表明,,氣囊打開(kāi)時(shí)刻與最佳點(diǎn)火時(shí)刻偏差很小,,在此偏差內(nèi)不會(huì)發(fā)生氣囊彈傷乘員或過(guò)早漏氣的現(xiàn)象。
3.2 實(shí)車試驗(yàn)
在國(guó)家某機(jī)動(dòng)車檢測(cè)中心,,用某型號(hào)國(guó)產(chǎn)轎車進(jìn)行了實(shí)車試驗(yàn),。碰撞類型為正面碰撞。駕駛員座椅上放置了假人,,且已系好安全帶,。碰撞時(shí)速為60km/h,。碰撞對(duì)象為蜂窩鋁。假人傳感器數(shù)采系統(tǒng)采樣頻率為1kHz,。通過(guò)前期試驗(yàn)可知,,該款車型的吸能形變過(guò)程約持續(xù)50ms,故在實(shí)車試驗(yàn)前,對(duì)氣囊控制系統(tǒng)的程序進(jìn)行了相應(yīng)修改,。試驗(yàn)現(xiàn)場(chǎng)錄像截圖如圖6所示,。
通過(guò)現(xiàn)場(chǎng)放置的高速攝像機(jī)錄像的回放,可知乘員在向前移動(dòng)了30ms后,,安全氣囊準(zhǔn)確爆破,。實(shí)車試驗(yàn)表明,安全系統(tǒng)控制系統(tǒng)可較為準(zhǔn)確地控制氣囊的最佳點(diǎn)火時(shí)刻,。
4 結(jié)語(yǔ)
由于安全氣囊要求在極短的時(shí)間內(nèi)對(duì)碰撞事故作出處理,,因此要求控制系統(tǒng)能在瞬間完成實(shí)時(shí)處理和復(fù)雜運(yùn)算的過(guò)程,即要求其具有較高的運(yùn)算速度,,時(shí)滯較小,,以適應(yīng)汽車安全氣囊的實(shí)時(shí)控制要求。而一般的8位單片機(jī)編程簡(jiǎn)單,,易于應(yīng)用,,但信號(hào)處理能力不強(qiáng)。本系統(tǒng)采用基于ARMCortexM3內(nèi)核的32位高性能微控制器LM3S1138,嵌入μC/OS-Ⅱ操作系統(tǒng),,利用移動(dòng)積分窗爆破算法,,完成了系統(tǒng)設(shè)計(jì)。臺(tái)車試驗(yàn)和實(shí)車試驗(yàn)表明,,本系統(tǒng)可較為準(zhǔn)確的控制氣囊的最佳點(diǎn)火時(shí)刻,,從而有效保護(hù)駕駛員的安全。系統(tǒng)軟件設(shè)計(jì)部分使用了TI官方免費(fèi)提供的驅(qū)動(dòng)庫(kù),,采用模塊化設(shè)計(jì),,簡(jiǎn)化了開(kāi)發(fā)過(guò)程。LM3S1138微控制器是片上系統(tǒng)(SoC),。集成了ADC,、模擬比較器、flash存儲(chǔ)器等外設(shè)資源并且價(jià)格低廉,,故構(gòu)建的系統(tǒng)集成度高,、體積小、成本低,。LM3S1138多達(dá)46個(gè)I/O口,,增加了系統(tǒng)的可擴(kuò)展性,可在此基礎(chǔ)上研發(fā)多級(jí)智能型汽車安全氣囊控制系統(tǒng)。