在汽車電子開發(fā)中,以太網(wǎng)通信仿真已成為ECU測試、診斷和網(wǎng)絡(luò)分析的關(guān)鍵環(huán)節(jié)。TSMaster作為一款強大的汽車電子仿真和測試工具,為工程師提供了高效的以太網(wǎng)通信解決方案。本手冊將帶您深入解析TSMaster的以太網(wǎng)通信配置、報文收發(fā)、協(xié)議仿真及自動化測試技巧,助您快速上手并提升開發(fā)效率。
本文關(guān)鍵詞:TSMaster,以太網(wǎng)通信仿真
目錄
Catalog
1. 符號說明
2.功能概要
3.Windows窗體
4. 示例
5. 接口
1
符號說明
本文中所用到的一些樣式和符號,可以參考以下表格說明。
2
功能概要
目前用戶在軟件開發(fā)時,面臨著如下需要以太網(wǎng)通信仿真的場景:
▲多ECU通信,進行功能驗證:真實ECU未開發(fā)完全;
▲模擬復(fù)雜通信工況和故障,測試系統(tǒng)的魯棒性:真實ECU構(gòu)造該類場景困難;
▲汽車軟件升級,驗證與其它版本兼容性:需不同版本的真實ECU;
▲不同的供應(yīng)商提供的ECU通信、協(xié)作驗證:不同供應(yīng)商ECU協(xié)作不便;
▲其它開發(fā)/測試等問題。
基于以上用戶問題,TSMaster開發(fā)者為用戶開發(fā)了以太網(wǎng)通信仿真模塊。該仿真模塊使用以太網(wǎng)通訊協(xié)議,旨在高度模擬真實ECU之間的通信,為用戶提供全面且有效的解決方案。
以太網(wǎng)通信仿真模塊模擬真實ECU發(fā)送和接收通信報文的過程,驗證軟件在處理不同類型報文時的準(zhǔn)確性和穩(wěn)定性。該模塊可靈活模擬各種通信故障場景,滿足系統(tǒng)魯棒性測試需求。比如,模擬網(wǎng)絡(luò)延遲、數(shù)據(jù)包丟失、錯誤報文注入等故障情況,幫助開發(fā)者測試軟件在復(fù)雜通信工況下的應(yīng)對能力。
3
Windows窗體
以太網(wǎng)通信仿真模塊主要包含以下三個功能區(qū):
▲工具欄
▲節(jié)點顯示
▲ 報文列表
3.1 工具欄
常用功能顯示集合。
圖1: 工具欄
窗體圖標(biāo)說明如下:
3.2 節(jié)點顯示
顯示數(shù)據(jù)庫的節(jié)點。鼠標(biāo)懸浮在節(jié)點顯示上,雙擊2次可勾選或取消勾選該節(jié)點。
圖2: 節(jié)點顯示
3.3 報文列表
顯示數(shù)據(jù)庫中的所有報文。
圖3:報文列表
報文列表每列數(shù)據(jù)說明如下:
4
示例
此章節(jié)包含以太網(wǎng)通信仿真使用的相關(guān)內(nèi)容。
4.1導(dǎo)入以太網(wǎng)數(shù)據(jù)庫
支持以下導(dǎo)入以太網(wǎng)數(shù)據(jù)庫(arxml\xml)方式:
▲ 拖拽數(shù)據(jù)庫文件到TSMaster軟件內(nèi),即可默認(rèn)加載到數(shù)據(jù)庫對應(yīng)的總線類型通道1上,然后在TSMaster軟件內(nèi),可以修改該數(shù)據(jù)庫綁定到指定通道上,操作如下圖所示:
圖4: 拖拽數(shù)據(jù)庫文件
圖5: 選擇相關(guān)通道和數(shù)據(jù)庫
▲ 在TSMaster中,點擊【分析】->【數(shù)據(jù)庫】->選擇對應(yīng)總線->右擊對應(yīng)通道,添加數(shù)據(jù)庫,如下圖所示:
圖6: 添加數(shù)據(jù)庫
經(jīng)過上述操作,已經(jīng)成功將數(shù)據(jù)加入TSMaster軟件中。
4.2以太網(wǎng)通信仿真配置
4.2.1 通道選擇
在TSMaster中,選中【硬件】->【通道選擇】,在彈出的界面,選擇Ethernet的通道,可選擇虛擬通道或真實硬件通道。
實際操作如下圖所示:
圖7:選擇Ethernet通道
4.2.2 勾選通用配置
在TSMaster中,選中【硬件】->【TCP/IP協(xié)議棧】,在彈出的界面,選擇通用配置,勾選“保持運行過程中動態(tài)創(chuàng)建的配置,否則在斷開連接的時候會被清除掉”。
圖8: 勾選通用配置
4.3 以太網(wǎng)通信仿真
4.3.1 配置報文
在TSMaster中,選中【仿真】->【以太網(wǎng)通信仿真】。在彈出的界面,勾選報文,配置“Interval(ms)”的值,配置后會按照周期時間發(fā)送報文。可配置“Data”的值。
圖9: 配置報文
4.3.2 啟動仿真
在TSMaster中,點擊啟動連接。選中【仿真】->【以太網(wǎng)通信仿真】,在彈出的界面,點擊啟動仿真。
圖10:啟動仿真
4.3.3Ethernet報文信息抓包
在TSMaster中,選中【分析】->【報文信息】。可在彈出的Ethernet報文信息界面中,查看到仿真發(fā)送的報文。
圖11: 仿真報文抓包
在抓包后,可點擊“Detail View1”顯示數(shù)據(jù)欄1,即下圖紅框的按鍵;然后點擊報文,可在左側(cè)顯示解析的信息;解析信息如下:
圖12: 數(shù)據(jù)欄1
可點擊“Detail View2”顯示數(shù)據(jù)欄2,即下圖紅框的按鍵;然后點擊報文,可在左側(cè)顯示解析的信息;上半部分是顯示解析出的字段;下半部分是十六進制和ASCII碼顯示的原始數(shù)據(jù);上半部分的解析如下:
圖13: 數(shù)據(jù)欄2
4.4 故障模擬
4.4.1 模擬網(wǎng)絡(luò)延遲
在以太網(wǎng)通信仿真界面,修改Interval(ms)的值,可以設(shè)置報文發(fā)送的周期;修改Phase(ms)的值,可以設(shè)置報文發(fā)送相位;如下圖設(shè)置發(fā)送周期500ms,發(fā)送相位100ms,從而模擬出網(wǎng)絡(luò)延遲。
圖14: 模擬網(wǎng)絡(luò)延遲
4.4.2 模擬數(shù)據(jù)包丟失
在以太網(wǎng)通信仿真界面,不勾選對應(yīng)的報文,在仿真時就不會發(fā)送,從而模擬數(shù)據(jù)包丟失的情況。
圖15: 模擬數(shù)據(jù)包丟失
4.4.3 模擬數(shù)據(jù)錯誤報文
在以太網(wǎng)通信仿真界面,可修改Data字段,設(shè)置錯誤值,從而模擬數(shù)據(jù)錯誤報文的發(fā)送。
圖16: 編輯Data字段
5
接口
5.1 API列表
5.1.1 eth_rbs_set_pdu_phase_and_cycle_by_name
5.1.2eth_rbs_configure
5.1.3eth_rbs_activate_all_networks
5.1.4eth_rbs_activate_network_by_name
5.1.5eth_rbs_activate_node_by_name
5.1.6eth_rbs_activate_pdu_by_name
5.1.7eth_rbs_set_signal_value_by_element
5.1.8eth_rbs_set_signal_value_by_address
5.1.9eth_rbs_get_signal_value_by_element
5.1.10eth_rbs_get_signal_value_by_address
5.1.11eth_rbs_start
5.1.12eth_rbs_is_running
5.1.13eth_rbs_stop
5.2API使用案例
在本章節(jié)中,將展示如何調(diào)用API來實現(xiàn)一系列功能,涵蓋勾選發(fā)送報文、設(shè)定報文發(fā)送周期、設(shè)置報文數(shù)據(jù)值以及啟動仿真等操作。
5.2.1 初始化環(huán)境
參考章節(jié)4.1與4.2的內(nèi)容,按照其中的指引依次完成以太網(wǎng)數(shù)據(jù)庫的導(dǎo)入、對應(yīng)通道的選擇以及配置項的勾選等操作。
5.2.2 如何調(diào)用API
在【設(shè)計】 -> 【C小程序】模塊中添加C小程序編輯器。添加完成后,該編輯器支持調(diào)用章節(jié)5.1中所提及的全部API。
圖17:添加C小程序編輯器
在C小程序編輯器里,存在多種事件類型,下面以程序啟動事件為例進行說明。可以通過右鍵操作來添加程序啟動事件,將所需代碼邏輯編寫在該事件對應(yīng)的代碼區(qū)域內(nèi)。如此一來,當(dāng)程序啟動運行時,這些代碼邏輯便會自動執(zhí)行。
圖18:添加程序啟動事件
5.2.3 代碼說明
在新增的程序啟動事件代碼區(qū)域編輯以下示例代碼,該代碼的功能是周期性地發(fā)送指定報文,并且在發(fā)送過程中動態(tài)修改報文的發(fā)送值。具體邏輯如下:
1)勾選名為“PDUTXDemo1_0”的PDU報文,使其處于激活狀態(tài)。
2)對“PDUTXDemo1_0”報文進行參數(shù)設(shè)置,將其相位設(shè)定為0ms,發(fā)送周期設(shè)定500ms。
3)設(shè)置名為"SignalDemo1_0_0"的信號值為1。
4)啟動以太網(wǎng)通信仿真,開始報文周期性發(fā)送。
5)仿真啟動后,進入循環(huán)操作,交替設(shè)置名為"SignalDemo1_0_0"的信號值為0和1。
6)結(jié)束循環(huán)操作后,停止仿真以太網(wǎng)通信仿真。
5.2.4編譯與執(zhí)行
在C小程序編輯器里,當(dāng)你點擊“編譯”按鍵,編輯器會立即開始對代碼進行編譯處理。編譯完成后,系統(tǒng)會明確給出編譯結(jié)果提示,顯示“編譯成功”或者“編譯失敗”。
若提示編譯失敗,需要仔細(xì)查看具體的提示信息,根據(jù)這些信息定位并修改代碼中存在的錯誤,然后再次嘗試編譯。
若提示編譯成功,編輯器將自動生成與代碼對應(yīng)的可執(zhí)行文件,后續(xù)可運行該文件來驗證程序的功能。
圖19: 編譯代碼
因為以太網(wǎng)通信仿真啟動需基于TSMaster啟動連接,所以執(zhí)行上述生成的可執(zhí)行文件之前,必須先確保TSMaster已啟動并完成啟動連接操作。只有在TSMaster處于已啟動連接狀態(tài)時,執(zhí)行該可執(zhí)行文件才不會出現(xiàn)運行異常。
圖20:啟動連接
在C小程序編輯器界面中,點擊“運行”按鍵,便會執(zhí)行該可執(zhí)行文件。
圖21:運行編譯文件
5.2.5 執(zhí)行結(jié)果
啟動可執(zhí)行文件后,可以在以太網(wǎng)通信仿真界面查看相關(guān)信息。該界面呈現(xiàn)的內(nèi)容與示例代碼中調(diào)用API進行的設(shè)置完全一致,具體包括:已勾選的對應(yīng)報文、設(shè)置好的報文發(fā)送周期、報文中信號值的具體數(shù)值,同時還能看到以太網(wǎng)通信仿真已成功啟動。
圖22: 編譯文件執(zhí)行結(jié)果
與此同時,在【Ethernet 報文信息】界面里,你能夠觀察到正在發(fā)送的報文。報文中的數(shù)據(jù)值處于循環(huán)變化狀態(tài),這正是示例代碼里通過循環(huán)交替將信號值設(shè)置為0和1所呈現(xiàn)出的效果。循環(huán)結(jié)束后,會停止以太網(wǎng)通信仿真;至此,示例代碼完成全部執(zhí)行流程。
圖23:報文抓包
-
以太網(wǎng)通信
+關(guān)注
關(guān)注
2文章
54瀏覽量
11286 -
仿真
+關(guān)注
關(guān)注
52文章
4268瀏覽量
135700 -
ecu
+關(guān)注
關(guān)注
14文章
930瀏覽量
55734
發(fā)布評論請先 登錄


三菱電機微型可編程控制器MELSEC iQ-F FX5以太網(wǎng)通信的用戶手冊
MELSEC iQ F FX5用戶手冊(以太網(wǎng)通信篇)

QnUCPU用戶手冊(內(nèi)置以太網(wǎng)端口通信篇)

MELSEC iQ R以太網(wǎng)用戶手冊(應(yīng)用篇)

工業(yè)以太網(wǎng)通信LSI(R-IN32M4-CL2) 用戶手冊外圍功能Rev.3.00

工業(yè)以太網(wǎng)通信LSI(R-IN32M4-CL2)用戶手冊(電路板設(shè)計版)Rev.2.00

工業(yè)以太網(wǎng)通信 LSI(R-IN32M4-CL2) 用戶手冊 Rev.2.00

Renesas 入門套件以太網(wǎng)和 USB 應(yīng)用板用戶手冊

初步用戶手冊 帶 32位 RISC CPU 內(nèi)核的 ERTEC 400 增強型實時以太網(wǎng)控制器用戶手冊

工業(yè)以太網(wǎng)通信LSI(R-IN32M4-CL2) 用戶手冊外圍功能Rev.3.00

工業(yè)以太網(wǎng)通信LSI(R-IN32M4-CL2)用戶手冊(電路板設(shè)計版)Rev.2.00

工業(yè)以太網(wǎng)通信 LSI(R-IN32M4-CL2) 用戶手冊 Rev.2.00

軟件更新 | 以太網(wǎng)通信仿真功能已上線!TSMaster 202503 版本更新速覽

評論