干货分享 | TSMaster用户必看:以太网通信仿真用户手册

干货分享 | TSMaster用户必看:以太网通信仿真用户手册

在汽车电子开发中,以太网通信仿真已成为ECU测试、诊断和网络分析的关键环节。TSMaster作为一款强大的汽车电子仿真和测试工具,为工程师提供了高效的以太网通信解决方案。本手册将带您深入解析TSMaster的以太网通信配置、报文收发、协议仿真及自动化测试技巧,助您快速上手并提升开发效率。

本文关键词:TSMaster,以太网通信仿真


本文中所用到的一些样式和符号,可以参考以下表格说明。

样式表格说明
符号表格说明

目前用户在软件开发时,面临着如下需要以太网通信仿真的场景:

  • 多ECU通信,进行功能验证:真实ECU未开发完全;
  • 模拟复杂通信工况和故障,测试系统的鲁棒性:真实ECU构造该类场景困难;
  • 汽车软件升级,验证与其它版本兼容性:需不同版本的真实ECU;
  • 不同的供应商提供的ECU通信、协作验证:不同供应商ECU协作不便;
  • 其它开发/测试等问题。

基于以上用户问题,TSMaster开发者为用户开发了以太网通信仿真模块。该仿真模块使用以太网通讯协议,旨在高度模拟真实ECU之间的通信,为用户提供全面且有效的解决方案。

以太网通信仿真模块模拟真实ECU发送和接收通信报文的过程,验证软件在处理不同类型报文时的准确性和稳定性。该模块可灵活模拟各种通信故障场景,满足系统鲁棒性测试需求。比如,模拟网络延迟、数据包丢失、错误报文注入等故障情况,帮助开发者测试软件在复杂通信工况下的应对能力。


以太网通信仿真模块主要包含以下三个功能区:

  • 工具栏
  • 节点显示
  • 报文列表

3.1 工具栏

常用功能显示集合。

以太网通信仿真模块工具栏
图1: 工具栏

窗体图标说明如下:

窗体图标说明

3.2 节点显示

显示数据库的节点。鼠标悬浮在节点显示上,双击2次可勾选或取消勾选该节点。

节点显示
图2: 节点显示

3.3 报文列表

显示数据库中的所有报文。

报文列表
图3:报文列表

报文列表每列数据说明如下:

报文列表每列数据说明

此章节包含以太网通信仿真使用的相关内容。

4.1 导入以太网数据库

支持以下导入以太网数据库(arxml\xml)方式:

▲ 拖拽数据库文件到TSMaster软件内,即可默认加载到数据库对应的总线类型通道1上,然后在TSMaster软件内,可以修改该数据库绑定到指定通道上,操作如下图所示:

拖拽数据库文件
图4: 拖拽数据库文件
选择相关通道和数据库
图5: 选择相关通道和数据库

▲ 在TSMaster中,点击【分析】->【数据库】->选择对应总线->右击对应通道,添加数据库,如下图所示:

添加数据库
图6: 添加数据库

经过上述操作,已经成功将数据加入TSMaster软件中。

4.2 以太网通信仿真配置

4.2.1 通道选择

在TSMaster中,选中【硬件】->【通道选择】,在弹出的界面,选择Ethernet的通道,可选择虚拟通道或真实硬件通道。

实际操作如下图所示:

选择Ethernet通道
图7: 选择Ethernet通道

4.2.2 勾选通用配置

在TSMaster中,选中【硬件】->【TCP/IP协议栈】,在弹出的界面,选择通用配置,勾选“保持运行过程中动态创建的配置,否则在断开连接的时候会被清除掉”。

勾选通用配置
图8: 勾选通用配置

4.3 以太网通信仿真

4.3.1 配置报文

在TSMaster中,选中【仿真】->【以太网通信仿真】。在弹出的界面,勾选报文,配置“Interval(ms)”的值,配置后会按照周期时间发送报文。可配置“Data”的值。

配置报文
图9: 配置报文

4.3.2 启动仿真

在TSMaster中,点击启动连接。选中【仿真】->【以太网通信仿真】,在弹出的界面,点击启动仿真。

启动仿真
图10:启动仿真

4.3.3 Ethernet报文信息抓包

在TSMaster中,选中【分析】->【报文信息】。可在弹出的Ethernet报文信息界面中,查看到仿真发送的报文。

仿真报文抓包
图11: 仿真报文抓包

在抓包后,可点击“Detail View1”显示数据栏1,即下图红框的按键;然后点击报文,可在左侧显示解析的信息;解析信息如下:

显示解析的信息
数据栏1
图12: 数据栏1

可点击“Detail View2”显示数据栏2,即下图红框的按键;然后点击报文,可在左侧显示解析的信息;上半部分是显示解析出的字段;下半部分是十六进制和ASCII码显示的原始数据;上半部分的解析如下:

数据栏2
数据栏2
图13: 数据栏2

4.4 故障模拟

4.4.1 模拟网络延迟

在以太网通信仿真界面,修改Interval(ms)的值,可以设置报文发送的周期;修改Phase(ms)的值,可以设置报文发送相位;如下图设置发送周期500ms,发送相位100ms,从而模拟出网络延迟。

模拟网络延迟
图14: 模拟网络延迟

4.4.2 模拟数据包丢失

在以太网通信仿真界面,不勾选对应的报文,在仿真时就不会发送,从而模拟数据包丢失的情况。

模拟数据包丢失
图15: 模拟数据包丢失

4.4.3 模拟数据错误报文

在以太网通信仿真界面,可修改Data字段,设置错误值,从而模拟数据错误报文的发送。

编辑Data字段
图16: 编辑Data字段

5.1 API列表

5.1.1 eth_rbs_set_pdu_phase_and_cycle_by_name

以太网通信仿真API

5.1.2 eth_rbs_configure

以太网通信仿真API

5.1.3 eth_rbs_activate_all_networks

以太网通信仿真API

5.1.4 eth_rbs_activate_network_by_name

以太网通信仿真API

5.1.5 eth_rbs_activate_node_by_name

以太网通信仿真API

5.1.6 eth_rbs_activate_pdu_by_name

以太网通信仿真API

5.1.7 eth_rbs_set_signal_value_by_element

以太网通信仿真API

5.1.8 eth_rbs_set_signal_value_by_address

以太网通信仿真API

5.1.9 eth_rbs_get_signal_value_by_element

以太网通信仿真API

5.1.10 eth_rbs_get_signal_value_by_address

以太网通信仿真API

5.1.11 eth_rbs_start

以太网通信仿真API

5.1.12 eth_rbs_is_running

以太网通信仿真API

5.1.13 eth_rbs_stop

以太网通信仿真API

5.2 API使用案例

在本章节中,将展示如何调用API来实现一系列功能,涵盖勾选发送报文、设定报文发送周期、设置报文数据值以及启动仿真等操作。

5.2.1 初始化环境

参考章节4.1与4.2的内容,按照其中的指引依次完成以太网数据库的导入、对应通道的选择以及配置项的勾选等操作。

5.2.2 如何调用API

在【设计】 -> 【C小程序】模块中添加C小程序编辑器。添加完成后,该编辑器支持调用章节5.1中所提及的全部API。

添加C小程序编辑器
图17: 添加C小程序编辑器

在C小程序编辑器里,存在多种事件类型,下面以程序启动事件为例进行说明。可以通过右键操作来添加程序启动事件,将所需代码逻辑编写在该事件对应的代码区域内。如此一来,当程序启动运行时,这些代码逻辑便会自动执行。

添加程序启动事件
图18:添加程序启动事件

5.2.3 代码说明

在新增的程序启动事件代码区域编辑以下示例代码,该代码的功能是周期性地发送指定报文,并且在发送过程中动态修改报文的发送值。具体逻辑如下:

1)勾选名为“PDUTXDemo1_0”的PDU报文,使其处于激活状态。

2)对“PDUTXDemo1_0”报文进行参数设置,将其相位设定为0ms,发送周期设定500ms。

3)设置名为”SignalDemo1_0_0″的信号值为1。

4)启动以太网通信仿真,开始报文周期性发送。

5)仿真启动后,进入循环操作,交替设置名为”SignalDemo1_0_0″的信号值为0和1。

6)结束循环操作后,停止仿真以太网通信仿真。

周期性地发送指定报文示例代码

5.2.4 编译与执行

在C小程序编辑器里,当你点击“编译”按键,编辑器会立即开始对代码进行编译处理。编译完成后,系统会明确给出编译结果提示,显示“编译成功”或者“编译失败”。

若提示编译失败,需要仔细查看具体的提示信息,根据这些信息定位并修改代码中存在的错误,然后再次尝试编译。

若提示编译成功,编辑器将自动生成与代码对应的可执行文件,后续可运行该文件来验证程序的功能。

编译代码
图19: 编译代码

因为以太网通信仿真启动需基于TSMaster启动连接,所以执行上述生成的可执行文件之前,必须先确保TSMaster已启动并完成启动连接操作。只有在TSMaster处于已启动连接状态时,执行该可执行文件才不会出现运行异常。

启动连接
图20:启动连接

在C小程序编辑器界面中,点击“运行”按键,便会执行该可执行文件。

运行编译文件
图21:运行编译文件

5.2.5 执行结果

启动可执行文件后,可以在以太网通信仿真界面查看相关信息。该界面呈现的内容与示例代码中调用API进行的设置完全一致,具体包括:已勾选的对应报文、设置好的报文发送周期、报文中信号值的具体数值,同时还能看到以太网通信仿真已成功启动。

编译文件执行结果
图22: 编译文件执行结果

与此同时,在【Ethernet 报文信息】界面里,你能够观察到正在发送的报文。报文中的数据值处于循环变化状态,这正是示例代码里通过循环交替将信号值设置为0和1所呈现出的效果。循环结束后,会停止以太网通信仿真;至此,示例代码完成全部执行流程。

报文抓包
图23:报文抓包
小贴士:
1、软件下载:
点击下方软件下载链接,直接下载安装,建议下载 beta 版本:

2、软件升级:
在电脑有互联网连接的前提下,可以在软件内检查升级至最新版本。

注:大红鹰dhy登录界面智能技术支持邮箱:support@tosunai.cn,欢迎大家前来咨询!(须注明公司及联系方式)

发表回复

zh_CNChinese
×
×

产品入口: 产品添加到购物车