XCP的趋势和应用实例
第三章、XCP的趨勢和應用實例
接下來,從使用XCP進行測量/校準的系統構成開始,依次講解趨勢和應用實例。
測量/校準的系統構成
如前面所述,XCP是主結點側的測量/校準工具和從結點側的ECU之間的通信協議。XCP的主結點側,通常提供為在PC上運行的應用程序(圖19)。相對的,從結點側則提供為ECU中的嵌入式C語言源代碼的形式的軟件模塊,并且在實際的傳輸層的情況下,例如XCP on CAN,它將被集成連接到CAN的通信部分,以便處理XCP協議。
?
圖19:測量/校準工具
?
XCP從結點驅動程序及其提供來源
XCP從結點側的模塊,一般包含作為XCP從結點驅動的協議處理部分和同步測量的處理部分,但該驅動程序通常由提供XCP主結點側應用程序的工具供應商提供。因此,測量/校準工具供應商將提供從結點驅動程序,或協助進行實際的組裝的服務。
集成化的測量/校準系統
對作為校準對象的整體控制進行優化,以合乎要求定義的過程,只通過XCP對ECU進行測量/校準是不能實現的。例如,在本文 “1.什么是測量/校準協議?”的化油器的校準中,就有必要通過傳感器等來測量混合氣體的狀態。這樣的傳感器輸入對于實現實際測量/校準是不可或缺的。
此外,近年來,對汽車的控制也在往復雜化和高功能化方面發展,出現了基于車輛的外部環境進行控制的ECU。一個典型的例子是“自適應巡航控制”,簡稱為“ACC:Adaptive Cruise Control”。在該ECU中,利用電磁波和相機進行的車輛外部環境的檢測(例如通過毫米波雷達檢測前方車輛)的車輛控制,以跟隨和避免碰撞。在這種情況下,需要利用視頻等來測量外部環境的車輛的位置和當時的情況(圖20)。
?
?圖20:集成化的測量/校準工具
在像這樣的校準的實現中,集成化的測量/校準系統是不可或缺的。接下來,將說明校準過程中其次的主要需求。
集成化的測量
不僅是對ECU的測量,還需要同步測量傳感器、汽車網絡、仿真/數字信號、以及車輛的位置和周圍的影像。
測量的離線評估
進行測量可以確認校準結果和控制的有效性,但是在與XCP相關的汽車和一般工業設備的情況下,測量成本在一些情況下很高。例如,使用測試車和測試駕駛員的測量成本非常高,并且容易想象到,對于飛機發動機測量等的成本更高。因此,隨著測量功能的精細化,測量之后的數據分析和測量與校準之間的因果關系的記錄等評估功能需要離線,也就是測量之后進行。
校準參數的管理
如果ECU包含了與控制相關的所有功能,即使改變了要控制的對象,也只要通過校準改變參數,而不用改變控制。在發動機控制中,有些ECU是以零部件的形式從制造商出售的,可以在購買后根據實際發動機進行參數校準。像是這種ECU,根據各種控制對象來改變共用的參數的情況下,有必要針對控制對象來管理適當的一組參數(參數集:Parameter Set)。
此外,在這種情況下,參數的數量增加以匹配更多的控制對象,由多個校準工程師進行更復雜的校準和工作。因此,從這些方面來看,參數管理也是必要的。
對于參數管理,需要包含對多個參數集進行比較、合并和檢索等功能(圖21)。
?
圖21:校準參數的管理示例
?
XCP的應用事例
到目前為止,描述了XCP在測量/校準系統、作用對象的ECU及其網絡中的使用情況,現在開始說明XCP的其它使用情況。
(1)由記錄器(Logger)記錄XCP
在記錄車載網絡或車輛的模擬量(Analog)情況的記錄器中,與此同時,符合XCP標準的產品也能夠滿足“記錄ECU內部狀態”的需求。除了記錄模擬量和車載網絡的輸出結果之外,還可以記錄ECU內部狀態的輸出過程,從而提高分析效率。
(2)測試
存在這樣的系統:在電氣上仿真ECU的外部環境,并執行ECU的操作測試,而后將測試結果作為判斷分析因素,并使用XCP來測量ECU的內部狀態(圖22)。如此,不僅是最終的ECU輸出結果,中間過程也可以得到確認,從而提高測試時的分析效率。
?
圖22:使用Vector的CANoe進行測試使用XCP的ECU?
?
(3)測量器的通用接口
如本文“2.XCP協議通信的構成和和功能”所述,XCP的實現方式為,使用來自主結點的40位XCP地址,訪問測量/校準對象以及得到應答;并且,通過XCP地址指定同步測量的對象,從結點周期性將測量結果數據發送出來。有些產品會使用XCP作為測量器的通用接口。在這種情況下,XCP地址不只用來指定ECU內存,還用作指定要測量的模擬量或傳感器的識別號碼。
這樣,通過使用XCP作為測量器的通用接口,在不改變現有的測量/校準系統的情況下,它可以作為集成的測量對象的一個設備來使用。
?
在EV / HEV車輛開發中使用XCP
接下來,考慮在EV/HEV汽車開發中,使用XCP進行測量/校準的要求。
(1)多個ECU的測量/校準
在HEV的情況下,動力源增加到了兩個:發動機和電機。EV/HEV均需要對電池和再生充電等進行集成控制。除了單主多從的XCP功能之外,還需要在每個分離的網絡上,都能作為主結點的測量/校準工具。
(2)低負載、穩定負載的高速測量
電機的控制周期大約需要在100 [μsec],并且需要對其進行同步的高速測量。此外,在這種情況下,同步測量本身的負載,即XCP的測量處理負載也要求盡可能低。通常的,測量處理負荷在每個測量周期中與測量點的數量成正比,所以測量周期越快,測量負荷對原始控制周期的影響就越大。
?
但是,在電機控制等情況下,由于這種對控制周期的影響是不允許的。換句話說,在負載是低負載的同時,諸如測量點的數量隨測量情況的變化時,要求負載始終是穩定的。
?
案例研究:使用XCP on Ethernet和Vector 的VX1000系統進行測量
下面描述的Vector的“VX1000系統”示例,在執行上述高速測量的同時,以低負載和穩定負載進行測量。(圖23)
?
圖23:VX1000系統的構成示例
?
在本系統中,不需要集成XCP從結點驅動程序,只需要通知同步測量的時機的處理。使用該驅動程序,ECU和VX1000系統通過Nexus Class 3、RTP或DMM等微控制器內存跟蹤的接口,VX1000系統和測量/校準工具是使用XCP on Ethernet(通過TCP/IP或UDP/IP)來連接。從測量/校準工具來看似乎是XCP,但ECU不直接處理XCP從結點,由VX1000系統執行協議轉換的處理。
接下來,將說明在ECU測量周期的時序中,從結點驅動處理是怎樣做到XCP同步測量的。
表3顯示了直接使用各個XCP網絡協議和使用VX1000系統之間的差異。
?
表3:ECU接口的特征
?
在基于模型的開發中使用XCP
在基于模型的開發(MBD:Model Based Development)中,對可執行的模型和被稱為“設備(plant)”的控制對象一起進行仿真是可行的。當進行仿真的準確性提高后,還可以像對實際ECU一樣對其進行校準。此外,為了能夠進行充分的仿真,還需要通過校準,使其成為與設備相匹配的模型。因此,在仿真階段就能夠進行測量和校準是有必要的,這也是基于模型的開發的要求之一。
對模型不僅是仿真,還會通過自動代碼生成器來生成C語言等代碼,并實際的運行。在這種情況下,也有必要對ECU進行與以往相同的測量/校準。另外,可以基于在之前仿真階段校準的結果進行校準,也就是說,校準參數可以得到沿用。
下面我們從仿真和實際ECU兩方面來考慮測量/校準的實現。
仿真
測量/校準的對象是仿真的虛擬模型,必須通過虛擬接口來實現。
實際ECU
測量/校準的對象是ECU,需要使用CAN或FlexRay等實際網絡來實現。
針對這種仿真和實際ECU的差異,由于XCP不會依存于具體網絡,都可以進行測量/校準,所以可以使用在基于模型開發的各個階段。
?
應用舉例:使用Vector“CANape”和“Simulink XCP Server”的進行測量/校準仿真
作為對仿真的模型進行測量/校準的示例,針對Vector“Simulink XCP Server”進行說明(圖24)。
?
?
圖24:CANape和Simulink XCP Server
為了實現對在MATLAB/Simulink上運行的仿真模型的測量/校準,Simulink XCP Server作為為模型提供的XCP接口的Simulink的模塊,可以通過XCP on Ethernet連接到Vector的校準工具“CANape”。就這樣,即使在仿真過程中,也可以進行與真實環境完全相同的測量/校準。
?
一般來說,由于仿真的運行速度比實際的執行時間快,也可以進行比實際執行時間更快的校準,此時獲得的校準參數也取決于模擬的準確性,可以與實際ECU的值大致相當。基于這個校準參數,再開始對實際ECU的測量,可以加快最終校準的完成時間。
XCP是按不會依存于具體網絡、對任意形態的ECU,都可以進行訪問和測量/校準的目標來進行開發和標準化的。最初是從CCP成功的實際業績來開始擴展功能,實現在所有車載網絡的測量/校準。由于其靈活性,它被用作測量器的通用接口,在基于模型的開發中,它也被用作仿真和實際ECU間無差異的相同接口。
預計XCP將在未來的測量/校準的各個方面使用。希望這篇文章能幫助你理解和使用XCP。
總結
以上是生活随笔為你收集整理的XCP的趋势和应用实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: alfresco安装教程
- 下一篇: 我的SAP运维日常