采用AVR Flash微控制器的電動車窗防夾系統(tǒng)
汽車上可自動關(guān)閉的電動車窗或車門設(shè)備潛藏著卡死,擠壓以及可能傷人的危險。它們必須能夠反向移動以防止馬達所施加的力超出正常限制。這種特性意味著必須持續(xù)監(jiān)視速度、電流和玻璃的位置。
由于成本和簡化的原因,本文所描述的系統(tǒng)使用普通的帶有霍爾效應(yīng)傳感器的刷式馬達?;谒俣群团ぞ貙?dǎo)數(shù)的檢測算法已通過健壯性和容錯性的驗證。該算法可用于所有帶有A/D 轉(zhuǎn)換器和通過變化引發(fā)中斷的I/O 口的AtmelAVR Flash 微控制器。本文描述的是基本原理,Atmel網(wǎng)站上的應(yīng)用筆記有關(guān)于實現(xiàn)的詳細描述。
現(xiàn)代汽車中的電動設(shè)備
目前,在高端客用汽車中電子組件和系統(tǒng)在成本中已占20%以上。增加電子設(shè)備的數(shù)目可以更好的控制傳感器和致動器,從而增強汽車的舒適性和安全性。可以預(yù)測,大部分的中等或高級汽車將會系統(tǒng)性的裝備電動車窗或車門系統(tǒng)。這些設(shè)備中的絕大多數(shù)是全自動的,這意味著它們必須附帶安全系統(tǒng)以防止傷人或機械故障。已有法規(guī)設(shè)立了電動系統(tǒng)必須遵守的規(guī)則。這一點在車窗的升起和車門的滑動上尤其正確的。這篇應(yīng)用筆記介紹了如何實現(xiàn)一個防夾算法,該算法最初是用于電動車窗系統(tǒng),但可以輕易地移植到其它可移動設(shè)備中。
標準
汽車電動車窗受國際標準的約束,如美國的MVSS118 或歐洲的74/60/EEC。在如何降低對兒童的危險度方面,這些文檔所提出的要求如下:檢測區(qū)域:4mm 至200mm;最大夾物力為100N;夾住時可以反向;確定偏轉(zhuǎn)角測試:5N/mm 至 20N/mm。
關(guān)于硬件
對于確定關(guān)鍵夾物區(qū)是否有障礙物進入的不同檢測策略有:
(1)無機械接觸。在夾物力施加至物體上之前就有反應(yīng)。因為沒有外力施加在物體上,這是最優(yōu)的保護方式。它還不依賴于振動、空氣動力學(xué)變化或變形。但該方法要求有集成的傳感器(紅外、超聲波,等等)以及相關(guān)的電路模塊和線路,從而導(dǎo)致附加成本。
(2)有機械接觸。所測到的壓力傳遞給系統(tǒng)用于指示有物體被夾住。在這方面,設(shè)計者還有兩種基本的技術(shù)可用:方向測量(力學(xué)傳感器或接觸器集成進車門密封中,這些解決方案成本一直都很高并限制了車窗/車門的樣式設(shè)計),或者通過物理監(jiān)測的無方向測量(這是一種整體成本上最優(yōu)的解決方案)。
防夾算法詳述
夾物檢測算法一開始就要符合標準(FMVSS118 & 74/60/EEC)的要求:檢測區(qū)域為4 至200 毫米;最在施加力100 牛;夾住物體時反轉(zhuǎn)方向;標準的確認性測試。
必須要自適合的原因包括:– 提升系統(tǒng)中的機械部分將會隨著時間而變化(老化、局部變形、磨損,等等);– 電子特性會有很大的變化;– 環(huán)境對磨擦力的影響(溫度、濕度、結(jié)冰等);系統(tǒng)不應(yīng)對擾動和不正確的夾物檢測有反應(yīng)。對于空氣的磨擦、道路的振動、斷電等都必須是健壯的。
使用馬達的解決方案的物理參數(shù)
必須可以通過馬達的電流算出施加在玻璃上的力。在速度方面可以持續(xù)提供移動部件的位置信息。這些參數(shù)都可以用于確定是否遇到物體以及:該物體是否在檢測區(qū);所施加的力是否超限。
本文描述了一種防夾算法,該算法通過測量電機電流和霍爾效應(yīng)速度指示器來工作。只須很少的改動,就可以將該算法用于象滑動車門或蓬頂這樣的系統(tǒng)中。
夾物檢測算法
一般情況下,夾物檢測算法的運行是通過間接測量車窗提升系統(tǒng)的,包括電流(扭矩)和位置(速度)。與算法相關(guān)的應(yīng)用筆記采用了兩種技術(shù),它們是基于:
存貯在無沖突內(nèi)存中的校準扭矩:執(zhí)行初步學(xué)習(xí)順序,將扭矩值存貯在內(nèi)存中。這種技術(shù)很耗費內(nèi)存,并要求規(guī)定校準順序。
速度推導(dǎo)計算:很有意義的一種技術(shù),因為它對內(nèi)存要求較少,但需要更多的計算,具有兩種方法的優(yōu)點。
在AVR上的實現(xiàn)
前幾段詳細描述的算法已經(jīng)實現(xiàn),并在一塊AVR ATmega88 開發(fā)板上進行了測試。圖2 描述的是用以實現(xiàn)算法的硬件。它采用了一塊標準的ATmega88 以及模擬鏈來測量電機電流。硬件帶有兩個霍爾效應(yīng)傳感器。馬達的方向是通過一個兩極延遲來控制的,并通過一個場效應(yīng)管來激活馬達的開關(guān)。
系統(tǒng)內(nèi)編程Flash
系統(tǒng)內(nèi)編程允許任何位于端系統(tǒng)內(nèi)的AVR 微控制器進行編程和再編程。通過一個簡單的三線SPI 接口,系統(tǒng)內(nèi)編程器與AVR 微控制器進行串行通訊,從而重編程芯片上的所有非易失性內(nèi)存。系統(tǒng)內(nèi)編程無須將芯片從系統(tǒng)中物理上拿出。這樣無論是在實驗室的開發(fā)階段,還是現(xiàn)場的軟件或參數(shù)的升級,均可以節(jié)約時間和資金。在最終產(chǎn)品階段將代碼上傳進Flash 存儲器中時,在多個應(yīng)用和自定義版本中使用同一個標準的AVR Flash 微控制器可以簡化總量管理。
軟件描述
所有代碼使用IAR EWAVR 4.1 以C 語言方式實現(xiàn)?;竟δ?位置管理、初始 化、電流管理、車窗操作、防夾監(jiān)測)的實現(xiàn)需要2KB Flash。增加擴展功能象校準、阻塞點的檢測和存儲,可將代碼大小擴展至4KB。軟件代碼可在Atmel的網(wǎng)站中獲得,其結(jié)構(gòu)如下:
初始化腳通過一個霍爾效應(yīng)傳感器(對信號沿的升起和下降敏感)改變所要用的中斷。它還初始化用于測量速度和馬達電流的時鐘和ACD。
這個函數(shù)從EEPROM 或以初始值方式加載車窗提升參數(shù),以初始化車窗提升器。這些參數(shù)包括車窗的大小、傳感器值、夾物閾值、夾物區(qū)域、已知的最后的位置,等等。如果在位置參數(shù)上是一個缺省值,它能夠請求一個下降的命令在底端限制值上初始化車窗提升器。
這個函數(shù)是將車窗提升參數(shù)存進EEPROM。
這個函數(shù)包含了車窗提升狀態(tài)機。它通過已有的事件參數(shù)控制車窗的操作。監(jiān)視車窗的位置、上升和下降端的限制以及防夾系統(tǒng)的狀態(tài)。返回車窗提升器的狀態(tài)(與get_window_state 函數(shù)的值相同)。
這個中斷子例和在霍爾傳感器沿執(zhí)行。它計算滾動方向、位置、推導(dǎo)速度和馬達電流參考值。通過計算連續(xù)的方向變化,它還能夠檢測出霍爾效應(yīng)傳感器的缺省值(傳感器沒有連接至一個中斷腳上)。
這個函數(shù)強制車窗在一個定義好的步驟后停下來。該函數(shù)返回車窗提升狀態(tài)機的狀態(tài)(這個返回值用于window_ctrl 函數(shù)中)。
建立車窗提升狀態(tài):用于強制性操作中(如停止請求…)
計算最后8 個采樣點的均值。用于過濾馬達電流。
這個函數(shù)監(jiān)視啟動按鈕,產(chǎn)生操作命令事件并傳遞給window_ctrl 函數(shù)。
關(guān)于AVR 微控制器在汽車方面應(yīng)用的更多的信息可在以下址中找到:www.atmel.com/products/avr/auto
霍爾傳感器相關(guān)文章:霍爾傳感器工作原理
霍爾傳感器相關(guān)文章:霍爾傳感器原理
評論