董傳平,李軍偉*,周英超,張廣世,李凱,岳涵,單坤山
1.山東理工大學交通與車輛工程學院,山東淄博 255049;2.天潤智能控制系統集成有限公司,山東文登 264413; 3.濰柴雷沃重工股份有限公司,山東濰坊 261206
懸架是連接車身與車橋之間的重要部件,能夠很大程度緩解來自路面的振動。相比于傳統的鋼板彈簧,空氣懸架具有振動低、剛度和阻尼可調、使用壽命長等諸多優點[1]。21世紀以來,隨著汽車電子技術的不斷發展,電控空氣懸架系統(electrically controlled air suspension,ECAS)能夠實現剛度、阻尼等自動調節,具有良好的自適應性和主動性[2-5],滿足人們對舒適性和行駛平順性的要求,已經成為未來新型主動懸架的發展方向[6]。
傳統的空氣懸架使用開環控制系統,無法根據外部激勵實時調整電磁閥的驅動電流,本文中設計一種基于增量式比例積分微分(proportion integral differential,PID)的電流閉環控制系統,通過調節空氣懸架內比例電磁閥電流,實現對空氣懸架阻尼的精準調節。
空氣懸架工作環境惡劣,需要在不同溫度、濕度等復雜的環境因素下工作,其控制系統應采用能夠適應惡劣工作環境、具有可靠性能的控制器。為了增加可靠性、降低生產成本,主控芯片應具有高性能、低成本和低功耗等優勢,還應集成脈寬調制(pulse width modulation,PWM)模塊、高精度的模數 (analog to digital,A/D) 轉換模塊以及串行通信(serial peripheral interface,SPI)端口等功能模塊。因此,選擇16位微控制器MC9S12XEP100作為主控芯片。MC9S12XEP100具有16位微控制器的優勢,同時又具有堪比32位微控制器的高性能,8通道PWM滿足使用需求,2個16通道、12位A/D轉換器可以保證A/D采集的準確性。
最小系統是單片機維持內部運行所要求的最簡單電路。采用頻率為4 MHz的晶振輸出穩定的時鐘信號提供給主控芯片,寫入器接口電路可以在程序開發過程中擦除和下載微控制器內的程序、在線調試、觀測變量的變化等,復位電路中RESET引腳常接VCC,當RESET引腳被拉低時可以使單片機強制復位。
由于車載蓄電池的輸出電壓為12 V,應通過降壓芯片將12 V電壓轉換為5 V,供主控芯片及各子模塊使用。電源供電電路原理如圖1所示,其中U1為TPS5430模塊,為降壓穩壓器,內部包含過流限制、過壓保護和熱關斷保護功能[7-10],該芯片運行的外部環境溫度為-40~125 ℃,能夠將5.5~36.0 V的輸入電壓穩定地輸出為5 V;比例電磁閥需要12 V電壓驅動,圖中Q2為P溝道MOS管,Q1為三極管,MOS管的源極VBAT連接車載蓄電池,柵極通過電阻連接到三極管的集電極,BoradPwrON連接到控制器主控芯片的輸入輸出(input output,IO)口,只有當BoradPwrON端口接收到來自主控芯片的高電平時,MOS管的漏極VBAT_PO才輸出12 V電壓。

圖1 電源供電電路原理圖
A3942四通道高邊柵極驅動器是一款高度集成的柵極驅動器,串行外設接口SPI的相容性可以使該裝置輕松地集成到現有的硬件電路中。A3942外圍電路原理如圖2所示,圖中U4為A3942模塊, SDO、SDI、CSZ和SCLK為SPI端口,可以進行輸出控制以及故障診斷,FAULT引腳用來指示故障,通過電阻R16上拉到VCC,當內部出現故障時FAULT引腳輸出低電平,將A3942_FAULT引腳拉低,當控制器檢測到A3942_FAULT引腳為低電平時則表示A3942內部發生故障;ENB引腳控制使能輸出;IN1~IN4為輸入引腳,G1~G4為輸出引腳。以第一路通道為例介紹A3942模塊的連接情況,IN1連接主控芯片PWM輸出,G1連接MOS管的柵極,S1連接MOS管的源極,D1連接MOS管的漏極,U2為AD8211模塊。

圖2 A3942外圍電路原理圖
電控空氣懸架電流閉環控制系統主要通過電子控制單元(electronic control unit,ECU)為比例電磁閥驅動電路輸出不同占空比的PWM信號,不同電流下比例電磁閥開度不同,從而控制油液的流動,實現電控空氣懸架的阻尼調節。車載速度傳感器與加速度傳感器采集當前車身的速度和加速度,ECU根據當前車身速度與加速度計算出當前狀態下空氣懸架的期望阻尼,根據比例電磁閥的特性,通過阻尼與電流之間的對應關系求解出期望的阻尼所對應的電流。AD8211將連接電磁閥電路檢測電阻的2個引腳(#Solenoid_CH1_P、#Solenoid_CH1_N)之間的壓差放大20倍,通過#Solenoid_CH1_CRT引腳輸出電壓信號給主控芯片,主控芯片通過A/D采集結果計算出當前驅動電路中的實際電流作為反饋值,該反饋值與電流的期望值進行比較得出電流偏差,通過PID進行調節,實現比例電磁閥電流的閉環控制。
主控芯片通過SPI與A3942模塊通信來控制輸出以及診斷故障。A3942模塊SPI通信的時鐘頻率最高為8 MHz,要求時鐘極性和時鐘相位相應的寄存器值均設置為0。
對SPI模塊進行初始化配置時,首先通過讀取狀態寄存器和數據寄存器將接收標志位清0,然后通過配置波特率寄存器的分頻因子設置SPI波特率,通過SPI控制寄存器設置時鐘極性、時鐘相位、主機模式和高位先發等配置。
主控芯片采集車身速度傳感器和加速度傳感器信號,計算當前空氣懸架的期望阻尼;采集AD8211模塊信號,計算當前電磁閥電路中電流作為PID的反饋;因此電流采集模塊的精確性直接影響電流閉環控制系統控制效果。
MC9S12XEP100提供16通道、12位的高精度A/D模塊,初始化A/D模塊時,通過控制寄存器設置采用的時間和頻率,配置采用精度。對電磁閥驅動電路電流進行A/D信號采集時,先進行中值濾波再進行均值濾波,降低干擾信號對控制系統的影響。
主控芯片產生不同占空比的PWM信號驅動電磁閥,MC9S12XEP100擁有8個獨立的可編程周期和占空比的PWM通道。2個8位的PWM通道可編程實現聯結為16位分辨率,帶有可編程的中心對齊輸出模式和左對齊輸出模式,擁有4個可供選擇的時鐘源,可以實現寬范圍的時鐘頻率配置。
初始化PWM模塊時,首先應通過寄存器設置時鐘頻率,選擇時鐘源,設置輸出對齊方式以及PWM的脈沖極性。
PID及其衍生算法是目前國際上應用最廣泛的控制算法之一,相對其他控制算法簡單,參數易于調整,廣泛應用于工業控制領域。PID控制器包括3部分:比例環節、積分環節和微分環節[11]。比例環節能夠快速的降低誤差,但是在穩態后容易產生穩態誤差;積分環節通過對誤差進行累計,使穩態誤差逐步縮小;微分環節對誤差的變化趨勢進行預測,避免超調[12-13]。本系統PID的控制原理如圖3所示,其中執行機構由A3942模塊及外圍MOS管等電路組成,測量元件由AD8211模塊及主控芯片的A/D采集模塊組成。

圖3 控制原理圖
PID控制算法的表達式為:
,
(1)
式中:u(t)為控制器輸出的控制量,為PWM的占空比;e(t)為電流偏差,等于期望電流與實際電流的差,A;Kp為比例環節權重;Ki為積分時間常數;Kd為微分時間常數;t為時間,s。
電控空氣懸架系統屬于離散系統,所以采用離散化PID控制,其表達式為:
(2)
根據式(2)可以得出增量式PID表達式為:
Δ(u(t))=Kp[e(t)-e(t-1)]+Kie(t)+Kd[e(t)-2e(t-1)+e(t-2)] 。
(3)
增量式PID沒有誤差累計,Δ(u(t))只與最近3次的電流偏差有關,當系統出現問題時不會嚴重影響系統工作,容易獲得較好的控制效果。
PID控制程序需要周期執行,理論上執行周期時間越短控制效果越好。經實際測試,PID控制程序執行時間約為0.25 ms,在實際應用中,控制器還需要對其他信息進行處理,綜合考慮控制器負載情況,將PID控制程序執行周期設為2 ms,既可以獲得較好的控制效果,又使得控制器的負載率不至于過高,PID的控制流程如圖4所示。

圖4 PID控制流程圖
為了驗證所設計的電流閉環控制系統的準確性與可靠性,對所設計的電流閉環控制系統進行了功能完整性測試。在實驗室搭建功能測試硬件平臺,在比例電磁閥驅動電路中串聯高精度的電流表,實時觀測當前電路中的電流,方便與設定電流進行比較;并在試驗臺架搭建了功能測試平臺, 主要對所設計的電流閉環控制系統能否準確控制產生期望的電流進行測試。
在確保線路正確連接的情況下接通電源,采用試湊法對PID參數進行整定,3組不同的PID參數下穩態電流的變化情況如圖5所示。

圖5 不同參數下電流對比
由圖5可知:第一組參數下的實際電流最為穩定,其電流全部落在了允許的誤差范圍之內,其余2組參數的實際電流均超出誤差允許范圍,選擇第一組參數作為PID的控制參數。
PID的動態特性在實際應用中至關重要,為了觀測PID的動態特性,設置期望電流為500 mA,記錄電流變化情況如圖6所示。

圖6 電流動態特性
由圖6可知,經過40 ms系統趨于穩定,實際電流維持在497~503 mA,滿足調節時間為60 ms和誤差為±3 mA的要求。
為了驗證該組參數的性能,在同一組PID控制參數下對300~1200 mA電流進行調節,將測試電流與設定的期望電流進行比較,部分測試數據和期望電流比較如表1所示。
由表1可知:通過該組PID控制參數調節的電流閉環控制系統能夠將比例電磁閥驅動電路的電流誤差維持在±3 mA以內,從而實現對空氣懸架阻尼的精準調節。

表1 部分測試數據與期望電流 mA
A3942四通道高邊柵極驅動器具有豐富的故障檢測功能,輸出故障寄存器為8位數據寄存器,通過SPI將內部故障寄存器中的數據發送出來。
故障寄存器的D0是短接至地(short-to-ground,STG)故障位,每路MOS管的漏極到源極的電壓都會受到監控。在測試STG故障時,將MOS管的源極接地,讀取A3942模塊SPI端口發送的數據,若D0為1,表示檢測到STG故障。
故障寄存器的D1為短接至電源(short-to-battery,STB)故障位,首先配置引腳或者通過SPI將A3942模塊柵極驅動輸出關閉,如果Sx引腳的電壓超過閾值電壓,則會鎖存STB故障。當某個通道的STB故障被鎖存時,該通道的柵極驅動輸出被禁止,直至故障位被清除(通過輸入寄存器D3)或者狀態故障診斷被屏蔽(通過輸入寄存器D4)。在測試STB故障時,將MOS管的源極接12 V電源,讀取A3942模塊SPI端口發送的數據,若D1為1,表示檢測到STB故障。
故障寄存器的D2為負載開路(open load,OL)故障位,一個小的偏置電流從通道的Sx引腳流出,如果負載開路,Sx引腳的電壓將上升到 OL 故障檢測閾值以上,模塊鎖存OL故障。當某通道的OL故障被鎖存時,該通道的柵極驅動輸出被禁止,直至故障位被清除(通過輸入寄存器D3)或者狀態故障診斷被屏蔽(通過輸入寄存器D4)。測試OL故障時,將比例電磁閥電路斷開,讀取A3942模塊SPI端口發送的數據,若D2為1,表示檢測到OL故障。
故障寄存器的D3為熱警告故障位,A3942 芯片上集成了一個管芯溫度監視器。如果芯片溫度接近最大允許水平,將觸發熱警告信號。在測試熱警告故障時,使用熱風槍持續加熱A3942模塊一段時間,讀取A3942模塊SPI端口發送的數據,若D3為1,表示檢測到熱警告故障。
故障寄存器的D4為電荷泵欠壓故障位,電荷泵必須保持一個高于 VBB 的電壓保護帶,以便在需要打開MOS管時為柵極充電。如果在電荷泵上檢測到欠壓條件,所有輸出將被禁用。測試時將A3942的供電電壓降低,讀取A3942模塊SPI端口發送的數據,若D4為1,表示檢測到電荷泵欠壓故障,在實際測試中,當A3942芯片的供電低于4 V時,則鎖存電荷泵欠壓故障。
為了方便對系統進行故障診斷,通過Python設計了一款故障診斷系統上位機軟件,通過控制器局域網絡(controller area network, CAN)總線與控制器通信,并將故障數據進行解析。電流閉環控制故障診斷軟件連接測試界面如圖7所示。將控制器通過CAN卡與上位機連接,選擇合適的波特率之后點擊“打開CAN卡”按鈕即可初始化CAN卡配置,點擊“連接測試”按鈕即可測試當前通信的連接狀態。當需要對某個通道進行診斷時,下拉菜單選擇想要診斷的通道,點擊“讀取故障”按鈕,“診斷狀態欄”顯示目前通道的故障狀態,并附帶維修建議,當對當前通道存在的故障做出維修后,點擊“清除故障”按鈕,即可清除當前通道的故障,以通道1短接至電源為例,讀取與清除故障運行結果如圖8所示。

圖7 連接測試界面 圖8 通道1讀取故障與清除故障
基于增量式PID的電控空氣懸架電流閉環控制系統,設計了電控空氣懸架控制器的硬件電路,實現了增量式PID對比例電磁閥驅動電流的準確調節,電流誤差維持在±3 mA之內;開發了故障診斷系統,實時顯示當前故障狀態及維修建議。該系統可以精準調節電控空氣懸架的阻尼。