干货分享 | 手把手教学:TSMasterAPI插件导入与ECUTEST联合仿真指南

在汽车电子ECU开发与测试中,联合仿真已成为提高测试效率、确保系统稳定性的关键手段。而TSMaster作为汽车电子仿真与测试的综合工具,结合ECUTEST的专业测试能力,能够实现高效的自动化测试。本文将详细介绍TSMasterAPI插件如何导入、核心API接口函数讲解。

本文关键词:TSMasterAPI, ECUTEST, API接口


当前 TSMaster 为广大 ecutest 使用用户提供了程控 TSMaster 软件以及硬件接口,在ECUTEST 软件中可以分别查看到对应的接口名称。

程控 TSMaster 上位机 UI 界面来实现 SIL 仿真的接口名为:TSOUN: TSMaster SIL Kit;程控 TOSUN 旗下硬件产品来实现 SIL 仿真的接口名为:TOSUN: Hardware SIL Kit。如下图所示:

TSMasterAPI插件导入与ECUTEST

1.1 导入 TSMasterAPI

1.1.1 部署插件

TOSUN 官方即将在安装 TSMaster 时,提供 ECUTEST 插件环境,由用户选择是否安装该插件,与安装 C++\Python 环境同样的方式进行勾选安装。

TSMasterAPI插件导入与ECUTEST

同时如果用户希望在第一时间使用该插件,可以联系 TOSUN 销售或技术同时获取插件包,然后手动放入 ECUTEST 软件中,放置位置如下图所示:

TSMasterAPI插件导入与ECUTEST

1.1.2 工作区导入插件

用户在创建 ECUTEST workspace 时,勾选“Show workspace settings”->“Copy tutorial files”->下拉框选择“TSMasterAPI”->“OK”,即可在工作区中查看到“TSOUN: TSMaster SIL Kit”与“TSOUN: Hardware SIL Kit”。

TSMasterAPI插件导入与ECUTEST

1.2 TOSUN: TSMaster SIL Kit

1.2.1 创建 test bench configruation

首先创建“test bench configruation”->“new create new tool host”->”Local”;此时就可以在 tool host 窗口中查看到“TOSUN: TSMaster SIL Kit”。

右键“TOSUN: TSMaster SIL Kit”->“Add tool”->“TSMaster_project_path”中填入 TSMaster 的工程路径,点击保存即可。

(1)创建 “test bench configruation”

TSMasterAPI插件导入与ECUTEST

(2)“Create new tool host”

TSMasterAPI插件导入与ECUTEST

(3)“TOSUN: TSMaster SIL Kit”->“Add tool”

TSMasterAPI插件导入与ECUTEST

(4)“保存”

TSMasterAPI插件导入与ECUTEST

(5)“启动”

TSMasterAPI插件导入与ECUTEST

(6)“Connect tool”

TSMasterAPI插件导入与ECUTEST

(7)接口调用

TSMasterAPI插件导入与ECUTEST

1.3 TOSUN:Hardware SIL Kit

1.3.1 创建 test bench configruation

首先创建“test bench configruation”->“new create new tool host”->”Local”;此时就可以在 tool host 窗口中查看到“TOSUN: Hardware SIL Kit”。右键“TOSUN: TSMaster SIL Kit”->“Add tool”->“TSMaster_App_Name”中填入 TSMaster 的应用程序名,点击保存即可。

(1)创建 “test bench configruation”

TSMasterAPI插件导入与ECUTEST

(2)“Create new tool host”

TSMasterAPI插件导入与ECUTEST

(3)“TOSUN: TSMaster SIL Kit”->“Add tool”

technical articles 20250701 12 ECUTEST

(4)“保存”

TSMasterAPI插件导入与ECUTEST

(5)“启动”

TSMasterAPI插件导入与ECUTEST

(6)“Connect tool”

technical articles 20250701 14 ECUTEST

(7)接口调用

technical articles 20250701 17 ECUTEST

2.1 TOSUN: TSMaster SIL Kit

2.1.1 start_simulation

参数名称start_simulation()
功能介绍rpc 客户端启动服务端 TSMaster 仿真
调用位置创建 rpc 客户端之后调用
输入参数无参
返回值==0: 函数执行成功
其他值: 函数执行失败
示例start_simulation()

2.1.2 simulation_is_running

参数名称simulation_is_running()
功能介绍返回服务端 TSMaster 是否开启仿真
调用位置创建 rpc 客户端之后调用
输入参数无参
返回值==0: 函数执行成功
其他值: 函数执行失败
示例ret =simulation_is_running()
if ret:
print(“已开启仿真”)

2.1.3 stop_simulation

参数名称stop_simulation()
功能介绍rpc 客户端停止服务端 TSMaster 仿真
调用位置创建 rpc 客户端之后调用
输入参数无参
返回值==0: 函数执行成功
其他值: 函数执行失败
示例stop_simulation()

2.1.4 get_sysvar_value

参数名称get_sysvar_value(SysvarName:str)->(errorcode, double)
功能介绍获取系统变量值
调用位置激活 rpc 客户端之后调用
输入参数SysvarName: 系统变量名
返回值==Ret[0]:错误码, ==0 为成功, 其他失败
Ret[1]:信号值
示例ret,value = get_sysvar_value(‘Var0’)
if ret == 0 and value==100:
Print(“ok”)

2.1.5 set_sysvar_value

参数名称get_sysvar_value(SysvarName:str, value:double)->errorcode
功能介绍获取系统变量值
调用位置激活 rpc 客户端之后调用
输入参数SysvarName: 系统变量名
Value: 设置值
返回值==0: 函数执行成功
其他值: 函数执行失败
示例set = set_sysvar_value(‘Var0’ ,100)

2.1.6 get_cansignal_value

参数名称get_cansignal_value(cansignalName:str)->(errorcode, double)
功能介绍获取系统变量值
调用位置激活 rpc 客户端之后调用
输入参数cansignalName: 信号地址
返回值==Ret[0]:错误码, ==0 为成功, 其他失败
Ret[1]:信号值
示例ret, value = get_cansignal_value( ‘0/CAN_FD_Powertrain/Engine/ABSdata/CarSpeed’)
if ret == 0 and value==100:
Print(“ok”)

2.1.7 set_cansignal_value

参数名称set_cansignal_value (cansignal:str, value:double)->errorcode
功能介绍设置系统变量值
调用位置激活 rpc 客户端之后调用
输入参数cansignalName: 信号地址
Value: 设置值
返回值==0: 函数执行成功
其他值: 函数执行失败
示例sset_cansignal_value( ‘0/CAN_FD_Powertrain/Engine/ABSdata/CarSpeed, 100)

2.1.8 get_linsignal_value

参数名称get_linsignal_value (linsignalName:str)->(errorcode, double)
功能介绍获取系统变量值
调用位置激活 rpc 客户端之后调用
输入参数LinsignalName: 信号地址
返回值Ret[0]:错误码, ==0 为成功, 其他失败
Ret[1]:信号值
示例ret,value = get_linsignal_value( ‘0/LIN_Powertrain/Engine/ABSdata/CarSpeed)
if ret == 0 and value==100:
Print(“ok”)

2.1.9 set_linsignal_value

参数名称set_linsignal_value (linsignal:str, value:double)->errorcode
功能介绍设置系统变量值
调用位置激活 rpc 客户端之后调用
输入参数LinsignalName: 信号地址
Value: 设置值
返回值==0: 函数执行成功
其他值: 函数执行失败
示例set_linsignal_value( ‘0/LIN_Powertrain/Engine/ABSdata/CarSpeed, 100)

2.1.10 get_frsignal_value

参数名称get_frsignal_value (frsignalName:str)->(errorcode, double)
功能介绍获取系统变量值
调用位置激活 rpc 客户端之后调用
输入参数frsignalName: 信号地址
返回值Ret[0]:错误码, ==0 为成功, 其他失败
Ret[1]:信号值
示例ret,value = get_frsignal_value( ‘0/FR_Powertrain/Engine/ABSdata/CarSpeed)
if ret == 0 and value==100:
Print(“ok”)

2.1.11 set_frsignal_value

参数名称set_frsignal_value (frsignal:str, value:double)->errorcode
功能介绍设置系统变量值
调用位置激活 rpc 客户端之后调用
输入参数frsignalName: 信号地址
Value: 设置值
返回值==0: 函数执行成功
其他值: 函数执行失败
示例set_frsignal_value( ‘0/FR_Powertrain/Engine/ABSdata/CarSpeed, 100)

2.2 TOSUN: Hardware SIL Kit

2.2.1 set_hardware_config

参数名称set_hardware_config()->error_code
功能介绍为当前程序配置硬件设备
调用位置在连接之前调用,如果不在修改通道配置的情况下可以不执行
输入参数无参
返回值==0: 函数执行成功
其他值: 函数执行失败
示例set_hardware_config()

2.2.2 connect

参数名称connect()->error_code
功能介绍连接硬件设备
调用位置配置好硬件通道之后
输入参数无参
返回值==0: 函数执行成功
其他值: 函数执行失败
示例connect()

2.2.3 disconnect

参数名称disconnect()->error_code
功能介绍断开硬件设备
调用位置配置好硬件通道之后
输入参数无参
返回值==0: 函数执行成功
其他值: 函数执行失败
示例disconnect()

2.2.4 send_msg

参数名称send_msg(AMsg:TLIBCAN|TLIBCANFD|TLIBLIN|TLIBFlexRay)->error_code
功能介绍单帧发送报文
调用位置连接硬件之后
输入参数AMsg: 报文对象
返回值==0: 函数执行成功
其他值: 函数执行失败
示例AMsg = TLIBCAN(0x123)
send_msg(AMsg)

2.2.5 send_cyclic_can_msg

参数名称send_cyclic_can_msg (AMsg:TLIBCAN|TLIBCANFD, ATime)->error_code
功能介绍周期发送 CAN/CANFD 报文
调用位置连接硬件之后
输入参数AMsg: 报文对象
ATime: 周期,时间单位为ms 1 表示 1ms 100 表示 100ms
返回值==0: 函数执行成功
其他值: 函数执行失败
示例AMsg = TLIBCAN(0x123)
send_cyclic_can_msg(AMsg, 100)

2.2.6 recv_can_msg

参数名称recv_can_msg (AChnidx, ACount, IsIncludeTx)->AMsgList
功能介绍周期发送 CAN/CANFD 报文
调用位置连接硬件之后
输入参数AChnidx: 接收报文的指定通道
ACount: 接收报文的最大数量
IsIncludeTx: 是否包含发送报文
返回值AMsgList: 接收报文列表
示例AMsgs = recv_can_msg(0, 100, False)

2.2.7 recv_lin_msg

参数名称recv_lin_msg(AChnidx, ACount, IsIncludeTx)->AMsgList
功能介绍接收 lin 报文
调用位置连接硬件之后
输入参数AChnidx: 接收报文的指定通道
ACount: 接收报文的最大数量
IsIncludeTx: 是否包含发送报文
返回值AMsgList: 接收报文列表
示例AMsgs = recv_lin_msg(0, 100, False)send_msg(AMsg)

2.2.8 recv_flexray_msg

参数名称recv_flexray_msg(AChnidx, ACount, IsIncludeTx)->AMsgList
功能介绍接收 flexray 报文
调用位置连接硬件之后
输入参数AChnidx: 接收报文的指定通道
ACount: 接收报文的最大数量
IsIncludeTx: 是否包含发送报文
返回值AMsgList: 接收报文列表
示例AMsgs = recv_flexary_msg(0, 100, False)

您对TSMaster的哪个功能最感兴趣?或在实际应用中遇到过哪些问题?

欢迎在评论区分享你的经验或疑问,任何想法或建议也可以评论区留言互动,将有机会获得TOSUN神秘大礼包哦~

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

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

注:太阳集团6138技术支持邮箱:support@tosunai.cn,欢迎大家前来咨询!(须注明公司及联系方式)

发表回复

zh_CNChinese
×
×

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

XML 地图