熟女人妻水多爽中文字幕,国产精品鲁鲁鲁,隔壁的少妇2做爰韩国电影,亚洲最大中文字幕无码网站

技術頻道

娓娓工業
您現在的位置: 中國傳動網 > 技術頻道 > 技術百科 > 車用CAN總線網絡快速原型的設計實現

車用CAN總線網絡快速原型的設計實現

時間:2009-03-25 11:58:28來源:ronggang

導語:?本文分析了車用CAN總線網絡的特征,設計并實現了車用CAN總線網絡快速原型系統,解決了將基于快速原型的嵌入式軟件設計和基于網絡仿真的系統分析相結合的問題
摘 要:本文分析了車用CAN總線網絡的特征,設計并實現了車用CAN總線網絡快速原型系統,解決了將基于快速原型的嵌入式軟件設計和基于網絡仿真的系統分析相結合的問題。最后使用THECU-2003硬件平臺與Simulink下的控制模型共同組成的實驗環境驗證了系統設計的有效性。 關鍵詞:CAN總線網絡;快速原型;車用電控單元 Abstract:This paper analyzed the characteristics of vehicle CAN bus, then designed and implemented the rapid prototyping system for vehicle CAN bus. It solved the problem on how to integrate module based embedded software development with network simulation based system analysis. In the end of this paper it verified the validity of the platform by using the experiment composed by THECU-2003 hardware platform and control models built in Simulink. Key words:CAN bus; rapid prototyping; electric control unit 1 引言   隨著車用網絡中被控節點數量和控制復雜度的不斷增加,為了滿足控制要求、降低控制系統開發成本,汽車生產廠商和汽車設計單位對車用嵌入式軟件開發工具的要求越來越高。目前,市場上已經存在一些針對這一應用領域的軟件開發技術和軟件開發工具,例如基于快速原型的軟件設計技術和MATLAB/Simulink、dSPACE開發工具。基于快速原型的軟件設計技術是指軟件設計者通過創建和維護嵌入式軟件的功能模型來描述軟件功能,并且使用面向微處理器的自動代碼生成技術實現下位機代碼快速生成的軟件開發方法。使用這一技術可以提高嵌入式軟件的開發效率,降低開發成本。   但是目前的軟件開發工具都側重于單電控單元(ECU)建模和驗證軟件在單ECU環境下的執行效率和性能;對控制策略在網絡場景下的魯棒性和特征分析支持有限。另一方面,網絡協議仿真和分析工具,如OPNET雖然可以提供網絡場景下協議性能的分析[6],但是由于OPNET上開發的仿真代碼無法直接移植到控制器上,所以開發工作不能方便地實現針對目標系統的重用。   如果我們針對車用CAN總線網絡的應用場景,將基于快速原型的嵌入式軟件設計和基于網絡仿真的分析相結合,實現車用CAN總線網絡的快速原型。在設計前期用模型定義的虛擬硬件代替沒有設計完成或者擁有成本太高的實際硬件,進行初期的系統設計分析;當相應的硬件到位后,替換虛擬硬件,將模型代碼轉化成面向目標系統的目標代碼,進行更接近實際系統的驗證分析;最后當所有實際控制軟件、控制器硬件和被控硬件都完成時,進行集成的全系統實時仿真。這樣可以解決使用相互獨立的工具開發模型和進行仿真驗證所存在的問題。   本文通過對車用CAN總線網絡快速原型的設計實現,提供了一種對車用CAN總線網絡進行設計、仿真和性能分析的系統;系統使用虛擬硬件的方法,通過在Simulink中構造典型車用環境相關的控制器模型和被控對象模型,以及在Windows環境下構造CAN卡仿真程序TH-CAN-Vcard和CAN總線分析工具TH-CAN_Scope,針對車用CAN總線網絡場景,實現了CAN總線網絡環境下控制策略仿真分析和控制代碼生成的有機結合。 2 系統設計與實現 2.1 車用CAN總線網絡的特征分析   CAN 總線是一種串行通信總線。使用帶有沖突檢測的載波偵聽多路訪問方式(即CSMA/CD)進行總線仲裁與控制。為了對車用CAN總線在網絡場景下的性能進行規范,國際標準化組織ISO和美國汽車工程師協會SAE對CAN通信診斷的基準環境都制訂了相關的國際標準。這些標準依據CAN協議的分層結構,從不同層次定義基準測試要求。例如:SAE J2012和ISO/DIS 15031-6對應應用層故障診斷的定義;[3] [7]ISO/DIS15765-2對應網絡層通信協議,通過定義無應答分段數據傳送協議(USDT)提供長消息數據分段/重組、帶流量控制的數據傳輸和板上控制單元與板外測試工具間消息的超時處理控制。[2]   另一方面,各個汽車生產廠家也根據這些國際標準制訂了自己的企業標準,用以規范ECU產品供應商的產品。如戴姆勒克萊斯勒-奔馳集團的CAN通信標準軟件模型分為車輛診斷相關的模塊和與車輛診斷無關的模塊兩部分。其中車輛診斷相關的模塊又分為診斷協議服務(KWP2000)和網絡傳輸協議服務 (ISO-15765-2) ,分別對應應用層服務和網絡層服務的功能描述,定義相關的基準環境參數和測試消息序列。[2]   這些標準對于車用環境下基于CAN總線的診斷服務的內容、網絡傳送消息序列間的邏輯關系和時延要求給出了詳細定義。而依據這些要求,提供一個CAN總線網絡快速原型,真實地模擬具有給定特征的消息序列和數據流,再現可能出現的干擾和誤碼信號就是本設計的核心技術工作。這一工作成果可以提供對網絡流量、網絡效率和網絡響應間相互關系的分析功能,仿真和驗證車用CAN網絡環境中ECU控制代碼的魯棒性和實時性。 2.2 快速原型系統的結構與實現   本快速原型系統有三類節點:有物理CAN硬件接口的實際CAN節點、由TH-CAN-Vcard與Simulink模型組成的虛擬CAN節點和運行TH-CAN-Scope分析工具的監控節點。在設計仿真實驗時,節點的數目沒有限制,僅受具體的CAN應用層的編址方案影響。第一類節點是我們通常使用的CAN節點,這里重點描述后兩類節點的實現。 2.2.1 虛擬CAN節點   虛擬CAN節點由TH-CAN-Vcard與Simulink模型組成,節點實現如圖1所示。當物理CAN卡不存在時,采用虛擬硬件技術,通過選擇CAN卡驅動庫提供的虛擬CAN通道,同時將開發的VCANCtrl控制對象實例化成COM服務器(COM Server)就可以在單機下建立COM服務器與MATLAB中模型(作為COM客戶機)間的聯系。虛擬接收/發送CAN消息到CAN總線的過程,為Simulink下建立的模型提供基本的CAN通信測試功能。   當物理CAN卡存在時,可以直接將模型中的目標CAN通道進行修改,從而使MATLAB中的模型具備與其它物理CAN節點通信的功能,這時多個位于不同PC機上的模型和多個ECU硬件上的控制器代碼可以通過CAN總線建立一個車用CAN網絡仿真分析環境。 [align=center] 圖1 虛擬CAN節點的實現[/align]   TH-CAN-Vcard則是在Windows環境下使用Visual Studio .NET和KVASER公司CAN卡驅動庫開發的CAN卡仿真程序。我們通過ActiveX技術開發了VCANCtrl控制對象,并在VCANCtrl中實現了以下的內部函數:   VCAN_Read 報文接收函數;入口參數為CAN通道句柄、返回參數為在接收緩沖區中的CAN報文的ID、數據包、長度、標識和時間戳。   VCAN_Write 報文發送函數;入口參數為CAN通道句柄,以及待發送CAN報文的ID、數據包、長度和標識。   VCAN_Start CAN卡初始化函數;入口參數為所選CAN通道號、波特率、通道開啟模式、同步模式和同步段,以及CAN控制器工作模式。   VCAN_Close CAN卡關閉函數;入口參數是CAN卡初始化成功時所返回的句柄。 2.2.2 監控節點   監控節點是進行CAN總線消息序列監測和控制的節點,運行TH-CAN-Scope - CAN消息仿真分析工具。TH-CAN-Scope是仿真CAN消息序列和進行仿真結果記錄分析的工具,是使用KVASER公司的CANLIB SDK開發的 Windows 下的應用程序。   TH-CAN-Scope的CAN消息處理功能包括:創建/編輯消息流序列、CAN通信管理、CAN消息序列跟蹤、控制臺人機接口和用于消息序列管理的數據庫維護。其中創建/編輯消息流序列、CAN消息序列跟蹤、控制臺人機接口和與數據庫操作相關的消息序列管理使用用戶線程。而CAN通信管理對實時性要求較高,使用獨立的工作線程,兩個線程通過使用Windows 下的消息處理機制相互通信。   另外,TH-CAN-Scope提供的分析功能包括:在線顯示CAN報文、在線統計CAN總線的使用情況、記錄總線上的CAN報文、主動發送/循環發送CAN擾動報文。并且將一段時間內收集的CAN報文記錄在數據庫中,可以進行更詳細深入的性能分析,通過使用CAN報文編輯工具,可以指定監控節點在時間觸發(在指定的相對時間發送某個/某組CAN消息)和事件觸發(收到某個CAN報文或收到某類CAN報文時發送指定的CAN報文序列)機制下發送觸發報文,以考察CAN總線的性能。 2.3 系統實現技術 2.3.1 MATLAB外部程序接口的實現   TH-CAN-Vcard為MATLAB下的控制器模型和被控模型提供CAN通信的功能,采用了COM技術。與用DDE技術實現的Matlab外部通信方式相比[4], COM技術的性能更好,在Emanuele Ruffaldi等人所做的測試中, COM與DDE相比,寫性能提高了10倍,讀性能提高了30多倍[5]; 另外MATHWORKS 對 DDE接口現在也不再進行繼續的開發,而推薦使用COM接口。   具體使用時,首先我們在Simulink中構造VCAN發送模塊和VCAN接收模塊,使用M語言中的actxcontrol命令將VCANCtrl COM對象實例化,獲得其句柄,然后就可以通過這個實例化句柄調用COM對象中相應的VCAN_Write和VCAN_Read函數,實現Matlab中控制模型的CAN通信支持,在使用上等同于一個有句柄的設備。 2.3.2 數據流模擬和節點同步的實現   為了在CAN總線上產生指定的CAN消息序列,我們通過TH-CAN-Scope定義需要的報文序列,然后通過時間觸發和事件觸發相結合的方式,定義對總線上的CAN消息的響應操作,而相應的控制邏輯,則通過Simulink模型來實現。所以實際的控制策略類似于分布于各個CAN節點中。   節點間的同步是指在總線上的所有CAN節點應該能夠在某一時刻同時產生各自指定的消息序列。使用由TH-CAN-Scope廣播發送自定義的CAN同步發送消息,啟動各節點計時器的方式,可以實現一定精度的節點同步。 2.3.3 CAN總線性能分析的實現   在進行CAN總線的性能分析時,我們實現了以下的分析功能:考察總線負載(包括節點數、各節點信息量和各節點設置的總線速率)的影響;考察節點優先級策略的影響;考察容錯策略(例如發送接收錯誤率過高的節點應該主動退出CAN總線網絡)的影響;以及考察CAN網絡實時性能,主要包括網絡報文消息時延的大小范圍以及報文消息時延的變化。其中,時延大小描述了報文時延的靜態特性,而時延變化則描述了報文時延的動態特性。 3 系統功能測試與分析   為了驗證快速原型系統對多ECU下虛擬硬件和實際硬件混合仿真的支持,我們設計了圖2所示的系統功能測試實驗平臺:其中ECU-A和ECU-B是兩個獨立的硬件ECU,采用實驗室開發的TH-ECU2003控制器;ECU-C和ECU-D是在Simulink中開發的兩個獨立的控制模型,通過VCAN發送模塊和VCAN接收模塊實現軟件仿真CAN卡功能,是虛擬硬件。在測試中,通過在各節點過濾接收到的CAN消息,控制通信流程如圖2所示,即ECU-A -> ECU-B -> ECU-C ->ECD-D -> ECU-A。從而驗證虛擬硬件和實際硬件混合仿真下的所有場景。 [align=center] 圖2 快速原型系統功能測試的實驗平臺[/align]   實驗中,使用TH-CAN-Scope作為監控軟件,對CAN總線上的數據進行了5s的數據采集,并對節點間2000多條CAN消息報文的時延均值和標準方差進行分析(這里的時延包括了節點的處理時延和節點間的傳輸時延),分析結果見表1,實驗證明系統中任意兩個節點間都能進行正常的通信,滿足測試要求,驗證了系統設計的有效性。   表1 實驗中的CAN消息報文時延分析
4 結論   本文針對現有ECU軟件開發工具側重于單ECU建模和現有網絡仿真工具中的開發代碼在目標系統上重用比較困難的問題,設計并實現了車用CAN總線網絡快速原型系統。最后,通過用THECU-2003硬件平臺與Simulink下的控制模型共同組成的仿真環境驗證了快速原型系統設計的有效性。 參考文獻:   [1] Anthony M. Phillips, Functional Decomposition in a Vehicle Control System. Proceedings of the American Control Conference, Anchorage, AK May 8-10, 2002, P3713-3718.   [2] Daimler Chrysler Cop. Network Transport Protocol Requirement Definition, R1.1. May 9, 2000.   [3] Holger Zeltwanger. CAN Standard Review: Change and Enhancements of the ISO11898 [S]. 2000.   [4] 李長虹, 利用多線程實現MATLAB遠程仿真,計算機工程與應用,2003,17.   [5] Emanuele Ruffaldi,, 1.2.3 ways of integrating MATLAB with the .NET. http://www.codeproject.com, 2005.   [6] 劉珩,楊杰,安建平,卿敏, 網絡仿真技術在CAN總線協議分析中的應用, 2003全國仿真技術學術會議論文集,2003.   [7] SAE Standard, Recommended Practice for a Serial Control and Communication Vehicle Network J1939 (Draft) [S]. 1997.

標簽:

點贊

分享到:

上一篇:基于DM642機器視覺系統的設計...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

網站簡介|會員服務|聯系方式|幫助信息|版權信息|網站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網-工業自動化與智能制造的全媒體“互聯網+”創新服務平臺

網站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權所有
粵ICP備 14004826號 | 營業執照證書 | 不良信息舉報中心 | 粵公網安備 44030402000946號

主站蜘蛛池模板: 青川县| 公安县| 五原县| 宿松县| 上虞市| 保康县| 娄烦县| 合江县| 根河市| 伊宁市| 连云港市| 曲松县| 扶风县| 北宁市| 邹平县| 陇南市| 临汾市| 保靖县| 桓台县| 简阳市| 万州区| 得荣县| 霞浦县| 东乡县| 吉隆县| 城市| 昌吉市| 大丰市| 新兴县| 洮南市| 萨嘎县| 霸州市| 马山县| 鹤峰县| 广宗县| 库伦旗| 布拖县| 红安县| 岳阳县| 广灵县| 新宁县|