朱江華 周文華 蘇晨曦 郭修其 高維
(1.浙江大學(xué),杭州 310027;2.寧波高發(fā)汽車控制系統(tǒng)股份有限公司,寧波 315100)
主題詞:電子換擋器 AUTOSAR 自學(xué)習(xí)算法 電機位置控制
電子換擋器的主要技術(shù)特點是基于線控技術(shù)完成擋位信號采集、換擋邏輯判斷以及電驅(qū)動換擋輸出等。由電子換擋系統(tǒng)的工作原理可知,其關(guān)鍵技術(shù)包括:確保換擋響應(yīng)時間及控制精度滿足系統(tǒng)要求;確保系統(tǒng)批量制造、裝配過程中產(chǎn)品性能的一致性和可靠性;控制系統(tǒng)在實現(xiàn)控制功能的同時還必須確保其軟、硬件滿足嚴(yán)格的功能安全要求。圍繞電子換擋器的相關(guān)關(guān)鍵技術(shù),國內(nèi)外高校與企業(yè)相繼開展了大量的研發(fā)工作和試驗研究。
國際標(biāo)準(zhǔn)化組織(International Organization for Standardization,ISO)于2011 年提出了適用于道路車輛的功能安全標(biāo)準(zhǔn)ISO 26262:2011,并在實踐中不斷對其進行更新完善。日益嚴(yán)苛的車輛安全要求無疑彰顯了ISO 26262 的重要性,而汽車開放系統(tǒng)架構(gòu)(AUTomotive Open System ARchitecture,AUTOSAR)的提出,不僅可以極大限度地保證汽車電子控制系統(tǒng)的功能安全,還可以提高汽車電子軟件系統(tǒng)代碼的可移植性和可擴展性,并實現(xiàn)對現(xiàn)有應(yīng)用層軟件的復(fù)用。國內(nèi)外均對AUTOSAR 在電子控制單元(Electronic Control Unit,ECU)上的應(yīng)用有較為深入的研究,并成功將其應(yīng)用于各類汽車電控系統(tǒng)。
本文以AUTOSAR 層次化、模塊化的設(shè)計思想為基礎(chǔ),基于電子換擋控制器的功能安全需求建立控制器軟件架構(gòu),利用功能安全認證軟件工具鏈完成底層基礎(chǔ)軟件和核心控制算法的開發(fā),并在指定變速器上展開試驗驗證,通過內(nèi)置通用校準(zhǔn)協(xié)議(Universal Calibration Protocol,XCP)和第三方標(biāo)定工具完成整機標(biāo)定和性能監(jiān)測。
電子換擋控制器硬件系統(tǒng)采用雙芯片(主控芯片+監(jiān)控芯片)硬件架構(gòu),如圖1 所示。其中,主控芯片選用英飛凌AURIX 微處理器TC234。該微處理器內(nèi)置具有鎖步功能的校驗核,搭配硬件安全模塊(Hardware Security Module,HSM)、輸入/輸出監(jiān)控(I/O Monitor,IOM)、錯誤檢查和糾正(Error Checking and Correcting,ECC)校驗等措施保證程序安全可靠地執(zhí)行。監(jiān)控芯片選用英飛凌公司的TLF35584,該芯片不僅能為主控芯片、傳感器提供穩(wěn)定的工作電壓,還具有獨立的時間看門狗和窗口看門狗,為主控芯片提供較高的診斷覆蓋率。選用英飛凌公司的TLE92104 作為換擋電機的預(yù)驅(qū)芯片。所用芯片均達到汽車安全完整性等級(Automotive Safety Integrity Level,ASIL)C的要求。
圖1 電子換擋控制器硬件架構(gòu)示意
根據(jù)ISO 26262:2018,汽車電控系統(tǒng)的軟件架構(gòu)設(shè)計準(zhǔn)則包括:
a.軟件組件合理分層;
b.限制軟件組件的大小與復(fù)雜性;
c.限制接口的規(guī)模;
d.每個軟件組件內(nèi)的高內(nèi)聚;
e.限制軟件組件之間的耦合;
f.適當(dāng)?shù)恼{(diào)度特性;
g.限制中斷的使用;
h.適當(dāng)?shù)目臻g隔絕;
i.分享資源的合適管理。
AUTOSAR軟件架構(gòu)將整個軟件系統(tǒng)合理劃分成應(yīng)用層、運行時環(huán)境(Run-Time Environment,RTE)和基礎(chǔ)軟件(Basic Software,BSW)層,并且通過標(biāo)準(zhǔn)接口實現(xiàn)各模塊之間的獨立性,很好地滿足了上述準(zhǔn)則的要求。根據(jù)電子換擋控制器的功能需求,其軟件架構(gòu)設(shè)計如圖2所示。
圖2 電子換擋控制器AUTOSAR軟件架構(gòu)
軟件開發(fā)工作主要包括針對特定微處理器的基礎(chǔ)軟件層配置與開發(fā)、運行時環(huán)境配置和面向控制系統(tǒng)功能需求的應(yīng)用層軟件開發(fā)。前兩者主要通過AUTOSAR工具平臺展開,后者通過MATLAB/Simulink圖形化開發(fā)工具及代碼自動生成工具實現(xiàn)。模塊化的應(yīng)用層軟件組件架構(gòu)設(shè)計由DaVinci Developer 完成,分層化的運行時環(huán)境與基礎(chǔ)軟件層的配置由DaVinci Configurator Pro完成,各模塊的描述符和配置均以一種稱為AUTOSAR XML(ARXML)的標(biāo)準(zhǔn)格式表示。特別地,使用EB Tresos Studio 工具配置微控制器抽象層(Microcontroller Abstraction Layer,MCAL)。
AUTOSAR基礎(chǔ)軟件層結(jié)構(gòu)如圖3所示,由4個部分組成:
圖3 基礎(chǔ)軟件層結(jié)構(gòu)
a.MCAL,該層位于基礎(chǔ)軟件層的最底部,包含了與主控芯片相關(guān)的驅(qū)動程序。本文利用EB Tresos Studio 對MCAL 進行配置,并基于ARXML 在DaVinci Configurator Pro 中對配置參數(shù)進行同步。
b.ECU 抽象層,該層對整個ECU 進行抽象與封裝,并提供統(tǒng)一的接口實現(xiàn)對存儲、通信與I/O 的訪問。圖4給出了I/O硬件抽象的配置與實現(xiàn)方案。應(yīng)用層軟件組件不能直接調(diào)用MCAL 的接口讀取所需的輸入信號,只能通過I/O 硬件抽象的接口對MCAL 進行訪問。在DaVinci Developer 中完成對I/O硬件抽象模塊的架構(gòu)設(shè)計和接口定義后,在生成的C 文件中手動添加代碼調(diào)用MCAL 對上層開放的應(yīng)用程序接口(Application Programming Interface,API)函 數(shù)Dio_WriteChannel、Dio_ReadChannel等。
圖4 I/O硬件抽象配置與實現(xiàn)
c.服務(wù)層,該層位于基礎(chǔ)軟件層的最高層,為應(yīng)用層和其他基礎(chǔ)軟件模塊提供基礎(chǔ)服務(wù)。服務(wù)層可以按照服務(wù)對象的不同分為系統(tǒng)服務(wù)、存儲器服務(wù)和通信服務(wù)。
除AUTOSAR 操作系統(tǒng)外,屬于服務(wù)層的模塊均與硬件無關(guān)。AUTOSAR操作系統(tǒng)作為系統(tǒng)服務(wù)中極為重要的一部分,通過任務(wù)管理、中斷處理、事件機制、資源管理等措施對整個電子換擋器的控制系統(tǒng)進行實時管理。
d.復(fù)雜驅(qū)動,該模塊橫跨MCAL、ECU 抽象層和服務(wù)層。復(fù)雜驅(qū)動雖然在AUTOSAR 中無法被標(biāo)準(zhǔn)化,但是具有執(zhí)行AUTOSAR 接口的強大邊界能力,因此可以實現(xiàn)處理復(fù)雜傳感器和執(zhí)行器的特定功能。如圖5所示,以換擋電機的預(yù)驅(qū)芯片TLE92104 的驅(qū)動程序為例,在DaVinci Developer 中完成對該模塊的運行實體(Runnable)設(shè)計與接口定義后,在生成的C文件中根據(jù)芯片應(yīng)用原理對驅(qū)動程序進行配置。
圖5 TLE92104驅(qū)動配置與實現(xiàn)
RTE 位于應(yīng)用層與基礎(chǔ)軟件層之間,是AUTOSAR虛擬功能總線(Virtual Function Bus,VFB)的具體實現(xiàn)。如圖6所示,RTE提供標(biāo)準(zhǔn)化的通信接口保證應(yīng)用層軟件組件之間、應(yīng)用層軟件組件與基礎(chǔ)軟件層之間的通信。其中,通過S/R接口實現(xiàn)數(shù)據(jù)的傳輸,通過C/S接口完成服務(wù)的調(diào)用。
圖6 RTE配置與實現(xiàn)
RTE 實現(xiàn)對運行實體的管理與調(diào)度。運行實體作為用戶程序的最小劃分單元,操作系統(tǒng)無法直接對其進行調(diào)度。RTE 為運行實體提供必要的觸發(fā)事件與資源,并將運行實體映射到操作系統(tǒng)的任務(wù)中,通過對任務(wù)的調(diào)度實現(xiàn)運行實體的執(zhí)行。如圖6 所示,在生成的RTE 實現(xiàn)文件(RTE.c)中,定義了運行實體的映射與調(diào)用。
應(yīng)用層包括擋位輸入及換擋邏輯判斷模塊、擋位角度自學(xué)習(xí)模塊、換擋電機位置控制模塊以及其他輔助模塊,相應(yīng)軟件組件在DaVinci Developer 中完成設(shè)計與配置并導(dǎo)出對應(yīng)的ARXML文件。在MATLAB/Simulink中導(dǎo)入ARXML 文件并完成各模塊的圖形化開發(fā)以及代碼自動生成。這里給出電子換擋控制器的2 個核心功能組件,即擋位角度自學(xué)習(xí)算法和換擋電機位置控制算法的設(shè)計與實現(xiàn)過程。
擋位角度自學(xué)習(xí)的目的是保證不同換擋機構(gòu)、不同擋位均能找到目標(biāo)擋位的精確位置。擋位角度自學(xué)習(xí)算法的設(shè)計需滿足:覆蓋變速器零部件在制造和裝配過程中可能出現(xiàn)的差異性,保證換擋過程的精準(zhǔn)控制;自學(xué)習(xí)方法對不同的換擋機構(gòu)具有一定的普適性。
圖7所示為某變速器的電子換擋器換擋機構(gòu),同類變速器的換擋機構(gòu)均具有如下類似特征:
圖7 電子換擋器換擋機構(gòu)示意
a.精確的擋位定位都處在雞冠齒槽底部中央,而底部中央附近存在較寬的近似對稱的平緩區(qū)域,鎖止銷由于阻力的作用可停留在該區(qū)域的任意位置,進而影響定位精度;
b.不同換擋機構(gòu)、不同擋位的雞冠齒槽底部平緩區(qū)域的寬窄程度存在差異;
c.鎖止銷離開底部區(qū)域時受到的阻力會明顯增大,此時有別于底部區(qū)域的特征是微小增加的驅(qū)動力矩不會導(dǎo)致鎖止銷與雞冠齒相對位置發(fā)生明顯變化。
如圖8所示,換擋電機輸出微小的驅(qū)動電流即可保證鎖止銷在雞冠齒底部區(qū)域左右擺動,在步進增加電流時擺動范圍不斷增大,當(dāng)某一時刻增加的驅(qū)動電流不能導(dǎo)致擺動范圍擴大時,即可認為鎖止銷已經(jīng)到達離開底部區(qū)域的臨界點。
圖8 鎖止銷受力分析示意
自學(xué)習(xí)算法的要點是:
a.驅(qū)動電流須確保鎖止銷在雞冠齒槽底部區(qū)域明顯擺動,防止因摩擦阻滯而產(chǎn)生對臨界點的誤判;
b.臨界點的判斷須在雞冠齒大范圍運動時,避免因靜摩擦而產(chǎn)生不確定性;
c.對底部特征差異比較大的驅(qū)動機構(gòu)建立不同的邊界判斷條件。
根據(jù)上述特征在Stateflow 中設(shè)計擋位角度自學(xué)習(xí)算法,如圖9 所示。自學(xué)習(xí)開始之后,首先閉環(huán)控制換擋電機輸出至初始目標(biāo)擋位位置,然后開環(huán)輸出振蕩微小脈沖使換擋電機左右擺動以尋找左右臨界點,并記錄換擋電機角度(規(guī)定向右為換擋電機角度增大方向)。根據(jù)記錄的左右擺動結(jié)束后的換擋電機角度驗證是否滿足邊界判斷條件。若滿足,表明該擋位角度自學(xué)習(xí)結(jié)束;若不滿足,步進增加換擋電機驅(qū)動電流后繼續(xù)進行邊界判斷條件的驗證。
圖9 擋位角度自學(xué)習(xí)算法Stateflow模型
在換擋電機驅(qū)動過程中,電子換擋執(zhí)行機構(gòu)的顯著特點是負載變化激烈,激烈變化的負載特性對快速、精確的換擋電機位置控制提出了很高的要求?;谏鲜鎏匦?,本文采用雙閉環(huán)PID 來控制換擋電機位置,即換擋電機角度閉環(huán)控制和速度閉環(huán)控制。其中,主控制環(huán)為角度閉環(huán),用于確保換擋電機角度的穩(wěn)態(tài)精度以及動態(tài)跟蹤性能,副控制環(huán)為速度閉環(huán),用于抑制換擋電機在負載突變時的轉(zhuǎn)速波動。
在Simulink中搭建該控制算法的圖形化模型,如圖10所示。其中,換擋電機角度PID模塊和速度PID模塊被封裝成子系統(tǒng),內(nèi)置抗積分飽和模塊。PID控制參數(shù)分別與換擋電機角度和換擋電機轉(zhuǎn)速相關(guān)??紤]到換擋電機驅(qū)動電流對整個控制過程可能產(chǎn)生的影響,在雙閉環(huán)的輸出環(huán)節(jié)增加換擋電機實際電流對最終占空比輸出的限值模塊。
圖10 換擋電機位置控制算法Simulink模型
完成應(yīng)用層軟件組件設(shè)計、RTE設(shè)計與基礎(chǔ)軟件層設(shè)計等工作后,通過DaVinci 工具和Embedded Coder 工具生成相應(yīng)的源代碼,并利用TASKING將源代碼編譯、鏈接成可執(zhí)行文件(HEX)。
系統(tǒng)設(shè)計完成后在上汽通用五菱汽車股份有限公司CTF25 變速器上展開驗證試驗。該變速器使用2 個直流有刷電機作為執(zhí)行單元完成P/R/N/D/S 擋位的切換,利用MLX90365霍爾芯片檢測換擋電機位置并輸出電壓模擬信號至換擋控制器。換擋執(zhí)行器的結(jié)構(gòu)如圖11所示。
圖11 換擋執(zhí)行器結(jié)構(gòu)
試驗過程基于XCP on CAN 協(xié)議在ETAS INCA 上建立監(jiān)控和標(biāo)定平臺。通過英特佩斯ValueCan3 建立主機與從機之間的CAN通訊。測試平臺如圖12所示。
圖12 電子換擋控制器測試平臺
擋位角度自學(xué)習(xí)算法要求各個擋位多次自學(xué)習(xí)結(jié)果的偏差不超過0.5°。整個自學(xué)習(xí)過程的換擋電機驅(qū)動脈沖寬度調(diào)制(Pulse Width Modulation,PWM)占空比變化與換擋電機角度變化如圖13所示。擋位角度自學(xué)習(xí)過程中,通過每個擋位步進增加驅(qū)動電流找到左右臨界點角度,滿足擋位角度自學(xué)習(xí)成功的條件后進入下一擋位角度的自學(xué)習(xí)。
圖13 擋位角度自學(xué)習(xí)過程的換擋電機驅(qū)動PWM占空比和換擋電機角度變化
自學(xué)習(xí)過程中INCA 自動記錄每個擋位的自學(xué)習(xí)角度。該自學(xué)習(xí)算法經(jīng)過了充分的試驗驗證,圖14 所示為其中隨機選取的50 組擋位角度自學(xué)習(xí)結(jié)果的分布情況,具體的數(shù)據(jù)分析結(jié)果如表1 所示。結(jié)合圖14與表1 可以發(fā)現(xiàn),各擋位自學(xué)習(xí)角度偏差均不超過0.5°,且各次自學(xué)習(xí)的結(jié)果表現(xiàn)出了極高的一致性,表明該自學(xué)習(xí)算法具有極高的魯棒性,滿足變速器的性能要求。
表1 擋位角度自學(xué)習(xí)結(jié)果分析
圖14 各擋位的擋位角度自學(xué)習(xí)結(jié)果分布情況
換擋電機位置控制要求為:相鄰擋位之間的換擋時間不超過150 ms;目標(biāo)擋位角度靜態(tài)偏差不超過0.5°。根據(jù)擋位角度自學(xué)習(xí)算法得到各擋位的準(zhǔn)確角度,并按照上述角度進行換擋電機位置控制算法的驗證,結(jié)果如圖15所示。
圖15 不同擋位間隔換擋電機位置控制結(jié)果
由圖15 可得,在不同擋位間隔的換擋中電機位置控制均取得了比較理想的控制效果。換擋時間和目標(biāo)角度偏差(見表2)均在性能要求范圍以內(nèi)。
表2 不同換擋間隔的換擋時間與目標(biāo)角度偏差
本文基于AUTOSAR 完成了電子換擋控制器軟件架構(gòu)設(shè)計,通過MATLAB/Simulink 和AUTOSAR 平臺相關(guān)工具完成了控制器應(yīng)用層、基礎(chǔ)軟件層和運行時環(huán)境的設(shè)計,開發(fā)了擋位角度自學(xué)習(xí)算法和換擋電機位置雙閉環(huán)控制算法,以英飛凌TC234 微處理器為硬件平臺,在上汽通用五菱的CTF25 型CVT 變速器上展開了試驗驗證。試驗結(jié)果表明:該擋位角度自學(xué)習(xí)算法具有良好的自學(xué)習(xí)精度,能夠保證各擋位角度多次自學(xué)習(xí)的偏差遠小于0.5°,可以確保生產(chǎn)制造過程中的系統(tǒng)一致性;該換擋電機位置控制算法具有良好的響應(yīng)速度和角度控制精度,能夠滿足整車換擋性能的控制要求。