1. INTEWORK VBA简介
INTEWORK VBA ( Vehicle Bus Analyzer,以下简称VBA)是经纬恒润自主研发的一款专业、易用的车载总线监控分析及仿真工具,它集监控、分析、仿真、测量标定、故障诊断等核心功能于一体,服务于研发仿真分析到系统测试验证的整车研发“V流程”。
-
支持的总线网络、协议和数据库文件:
-
总线网络:CAN/CAN FD、LIN、Ethernet等;
-
高层协议:SAE J1939、TCP/IP、SOME/IP、DDS等;
-
诊断协议:ISO 14229、ISO 15765、ISO 13400(DoIP)等;
-
标定协议:ASAM XCP/CCP;
-
通信/诊断/标定数据库: DBC、CP/AP ARXML、LDF、ODX、PDX、CDD、A2L、IDL等。
-
可选版本:

-
软件主界面:

2. INTEWORK VBA功能概览
-
数据库管理
-
支持DBC/LDF/Arxml数据库的导入,根据总线报文自动解析总线信号;
-
支持CAN总线数据库DBC、LIN总线数据库LDF的创建和编辑,并自动更新导入的数据库文件。
-
支持AP/CP ARXML格式的数据库解析。
-
支持XML、IDL(DDS协议)格式的数据库解析。

-
数据监控
-
Trace实时监控解析报文数据
-
支持以表格的方式追踪、监控总线报文,保证运行过程中的所有数据可追溯,表格上支持按照导入的DBC、LDF、ARXML、IDL数据库对总线报文进行实时解析,显示报文下各个信号或服务的值;
-
支持CAN、CANFD、LIN、Ethernet、SAE-J1939、系统变量等类型数据在同一Trace窗口上进行观测分析;
-
支持固定显示模式和滚动显示模式的切换显示,固定模式下会将有关联的报文显示于同一行进行更新,滚动模式下按照报文时间戳排序滚动显示;
-
支持硬件时间戳的显示,界面时间戳精确到1us,支持系统时间的显示;
-
支持绝对时间和相对时间的切换;
-
支持对数据的任意字段进行过滤、排序,并支持多字段组合条件过滤;
-
支持一键折叠展开所有的信号;
-
支持导入、导出功能,要求可导出运行时间内所有历史记录,支持ASC和BLF、PCAP三种数据格式,支持将报文文件直接拖入表格中进行回放;
-
内置多种协议的默认显示模板,并支持用户自定义修改模板;
-
固定模式下支持自动对总线上长时间不活跃的报文和长时间没有发生变化的数据字节进行自动的弱化显示处理;
-
支持Trace上数据的快速筛选,可支持模糊匹配、精确匹配、正则表达式、通配符过滤等方式进行数据筛选,筛选到的符合条件的数据自动在视图上进行高亮显示;
-
支持在Trace表格上进行数据查找,支持正向、反向查找方式,支持按照正则表达式进行数据查找;
-
支持对Trace界面的缓存大小进行用户自定义配置;
-
支持ETH高层协议解析,如SOMEIP、AutosarPdu、DDS等;
-
支持对CAN/CANFD错误帧的详细信息解析,包含错误帧类型,错误发生的位置,错误帧ID等(需要配合V0620/V6400_T硬件)。


-
Logger实时数据记录,以供测量分析
-
支持用户创建多个数据存储模块,并可以配置在运行过程中是否启用;
-
支持对总线数据进行实时存储,支持ASC、BLF、PCAP等数据格式,支持存储文件的名称可按照运行时间等进行动态设置;
-
支持键盘按键触发控制Logger模块开始、停止录制数据。
-
支持运行过程中针对某一时刻的标记打点功能,以便于回放数据时快速定位到需要分析的数据时刻;
-
支持设置单个保存文件大小上限,待保存文件超出上限后自动生成下一个文件;
-
支持对保存数据进行过滤设置,可按照通道、报文ID、ID范围、发送节点、接收节点等条件对保存数据进行过滤设置。

-
Graphic实时波形方式显示信号及变量变化
-
支持同时创建多个Graphic模块,每个Graphic模块上支持可添加任意数量的信号、变量进行观测;
-
支持监控CAN/LIN/Ethernet总线信号、支持报文周期的监控、支持系统变量的监控;
-
支持用户创建自定义总线信号,在Graphic上可对用户自定义信号进行观测分析;
-
支持工程运行过程中信号及变量数据的无限缓存,可随时分析运行过程中的所有历史数据;
-
支持运行过程中XY轴的动态调整;
-
支持CSV、MF4、MAT格式的数据文件的导入导出;
-
支持变量分组功能;
-
支持Graphic间的信号及变量复制;
-
支持监控的信号、变量重名命功能;
-
支持网格线、信号曲线的显示样式自定义设置;支持X、Y轴的刻度自适应;
-
支持在图形上添加标尺线,来观察两个时间点的信号差值;
-
支持对监控界面进行一键截图功能,以便于故障数据的保存;
-
支持切换显示信号的物理值、总线值,同时支持信号离散值的标识;
-
支持实时更新当前监控信号的最小值、最大值、信号数量;
-
支持多标尺间的参数统计、如Y1值、Y2值、差值、平均值等参数;
-
支持多变量/信号共用同一Y轴显示;
-
支持物理值/总线值同时显示;
-
支持快捷键操作控制Graphic界面;
-
支持在Graphic界面直接对信号进行改值仿真。

-
Signal实时信号统计
-
支持用户创建多个信号变量统计模块;
-
支持对总线上异常信号值的实时报警与持续跟踪,支持用户对信号的报警条件进行自定义设置(比如信号值大于10),并支持在软件运行过程中对报警时刻及报文数据实时记录并显示;
-
支持将报警数据导出为Excel报告。

-
Bus Statistics总线工况分析
-
支持实时计算并显示总线负载,支持总线报文数量等数据的实时统计;
-
支持离线回放时负载显示和总线报文数量统计;
-
支持CAN、LIN、ETH类型的负载统计。

-
Video视频流数据的记录与显示
-
支持同时创建多个视频数据源模块,同时对多个视频采集设备进行数据监控分析与记录;
-
支持USB或RJ45两种方式连接到计算机的视频采集设备;
-
支持视频窗口任意大小的拖拽布局;
-
支持在视频监测窗口上同时添加总线信号或系统变量进行同步观测分析;
-
支持mp4格式的视频文件记录;
-
支持已采集的视频数据跟总线数据进行同步回放。
-
GPS地理数据的记录与显示
-
支持对GPS数据的监控,并同步在地图上显示车辆行驶路线、车辆位置、道路信息等数据;
-
支持已采集的GPS数据跟总线数据进行同步回放;
-
支持从CAN总线读取GPS数据并在地图上显示车辆行驶路线、车辆位置、道路信息等数据。

-
数据回放
-
离线回放
-
支持将已录制好的总线数据文件进行离线回放分析,也支持将其他工具录制的总线数据文件导入进行回放分析;
-
支持常规数据文件格式(.asc、.blf、.pcap)、视频文件(.mp4)、GPS数据(.gpsd)文件的回放;
-
支持回放时跳转到任意时间点开始回放,支持动态的调整回放速率;
-
支持回放数据的通道映射功能,可将指定通道的数据在回放时映射到其他通道上进行显示分析;
-
支持多记录文件连续回放的功能。
-
在线回放
-
支持将录制好的CAN/CAN(FD)总线数据按照原始文件的顺序与时间间隔回放到真实总线上,用于复现、分析测试过程中遇到的问题;
-
支持节点过滤功能,支持用户自定义配置回放通道以及节点报文。
-
节点仿真
-
Generators报文仿真窗口
-
每个网段可创建多个Generator模块,进行总线报文的仿真;
-
支持从DBC、LDF、Arxml数据库文件中选择报文,同时支持用户创建自定义报文;
-
支持报文按键触发和周期性触发两种报文发送模式;
-
支持在Generator上对总线信号进行编辑修改,并自动同步更新报文数据场;
-
CAN网段下的Generator模块支持标准帧、扩展帧、远程帧报文的发送,支持对CANFD报文BRS位的配置;
-
CAN网段下的Generator模块序列发送形式,支持用户搭建序列并执行发送;
-
LIN网段下的Generator模块支持配置主机报文、从机报文,并支持LIN调度表的模拟仿真;
-
Ethernet网段下的Packet Builder模块支持用户自定义创建Ethernet、ARP、ICMP、UDP、TCP、SOME/IP(SD)、DOIP、DHCP等多类型报文,并可修改配置字段及对应的数据场报文;
-
Ethernet网段下的Generator Client模块支持用户自定义创建Ethernet、UDP、TCP、SOME/IP(SD)、DOIP等多类型报文,并可修改配置字段及对应的数据场报文,发送时可以自动建立TCP/IP连接。

-
节点仿真
-
支持同步导入数据库中的ECU节点,并同步导入ECU发送的报文,在工程运行时可自动进行报文仿真;
-
支持同步导入LIN总线调度表,可模拟单主节点、单从节点、多从节点等情况下的调度表仿真;
-
支持通过ETH节点同步,生成SOMEIP仿真节点,并搭配V6400_T设备实现基于界面的SOMEIP服务通信;
-
支持通过界面对CAN节点E2E进行配置及仿真,方便进行Checksum和Rolling Counter的信号仿真。

-
脚本仿真
-
支持编写Python脚本,可基于软件提供的脚本编辑器进行代码开发,实现复杂的ECU仿真逻辑;
-
软件中提供了常用的预定义事件触发函数:
| 事件名称 | 描述 |
| onMessage | 发送或收到指定报文时触发 |
| onSignalUpdate | 收到指定的信号时触发 |
| onSignalChange | 识别到指定信号的值发送改变时触发 |
| onErrorFrame | 收到错误帧时触发 |
| onSimulatedMsgChange | 识别到仿真ECU上报文和信号值发生修改时触发 |
| onLINMessage | 识别到仿真ECU上报文和信号值发生修改时触发 |
| onLINErrorMessage | 识别到指定LIN报文错误帧触发 |
| onKey | 当识别到键盘按键(如按键‘K’)时触发 |
| onVariable | 变量的值改变时触发 |
| onPreStart | 工程启动成功前触发 |
| onPreStop | 工程停止运行前触发 |
| onStart | 工程运行成功后触发 |
| onStop | 工程运行停止后触发 |
-
软件中提供了常用函数的封装,如发送报文、设置信号值、获取时间戳等函数;
-
软件中提供了UDS诊断类函数的封装,支持通过脚本函数发送诊断服务;
-
软件中提供了HEX、S19、BIN、MOT文件的解析读取函数的封装;
-
通过脚本编程功能可实现基于不同的Bootloader刷写规范进行刷写流程的开发,满足ECU程序更新场景的使用需求;
-
软件中提供了CAN/CANFD/LIN/Ethernet总线的相关函数支持;
-
软件支持TCP Server/Client协议栈脚本仿真功能;
-
软件中提供了系统变量的读写函数的封装;
-
软件中提供了Logger模块控制开始、停止录制相关函数的封装;
-
软件中内嵌了代码提示、错误语法检测功能;
-
软件支持导入用户开发的python脚本库;
-
软件支持通过在线/离线的方式安装Python开源脚本库;
-
内置E2E功能模块、支持通过C++形式编写Checksum和Rolling Counter变更算法并实现微秒级别的发送延时。
-
Panel可视化图形面板
-
软件支持创建多个图形面板,用户可基于此功能搭建个性化的图形界面;
-
图形面板内置多种控件,如数值输入输出、二进制输入输出、仪表盘、旋钮、文本、滑动条、下拉框、图片和进度条等,提供类似于Microsoft Visio的界面布局功能;
-
控件可关联总线信号、标定测量变量、系统变量,可在输出控件上对总线信号、系统变量进行实时监控与分析,可在输入类型控件上控制总线信号值、标定变量、系统变量值的变化;
-
控件支持属性面板设置,支持宽度、高度、最小值、最大值、显示精度、关联变量路径等参数的设置;
-
布局上控件支持复制、粘贴、删除、剪切、撤销、重做等功能。
-
故障诊断
-
UDS协议故障诊断
-
支持ODX、PDX、CDD格式的诊断数据库导入,支持自动读取诊断数据库中的相关参数;
-
支持用户自定义配置安全认证算法文件路径、物理/功能寻址ID以及ISO 15765相关参数等(Stmin、P2、P2*等);
-
支持14229、13400、15765等常用总线的诊断相关协议;
-
支持整车故障码的一键读取和解析;
-
支持用户自定义诊断服务创建;
-
支持CAN、ETH诊断序列搭建功能。

-
SAE-J1939故障诊断
-
支持SAE-J1939类型数据库的解析与导入;
-
支持运行过程中对SAE-J1939协议报文的解析与信号的计算;
-
支持故障码监控视图,可监控ECU反馈的当前故障、历史故障等信息;
-
支持J1939 DM1/DM2/DM3/DM11等故障诊断指令的仿真。

-
测量标定
-
软件支持基于ASAM CCP、XCP协议对多个ECU进行标定、测量,同时可支持CPP/XCP协议对标定数据进行下载和Flash编程;
-
支持生成A2L文件的创建和编辑;支持导入A2L并自动读取A2L文件中的标定、测量变量和通信参数信息;
-
支持ELF文件解析,地址更新
-
支持界面上对请求ID、响应ID、T1、T2、T3、T4、T5、T6、T7、Polling、字节序、块传输的模式等参数的配置;
-
支持事件通道配置、DAQ配置;
-
支持DLL安全算法解析,支持安全算法接口类型切换和安全算法校验;
-
支持对事件通道、DAQ列表、块传输参数等部分标定参数的实时获取与更新;
-
支持针对指定地址导出HEX文件;
-
支持Program编程,擦除模式可配置选择“整块擦除”、“分块擦除”;
-
支持Calibration下载功能;
-
支持polling及DAQ采集模式;
-
支持标量值、数组、Curve、Map类型;
-
支持多次标定数据文件对比功能,在表格上可以快速筛选到多次标定数据的差异,同时可支持标定数据在软件中针对变量值进行离线修改;
-
支持多ECU同时进行标定测量;
-
支持标定页切换;
-
提供了测量标定模块对外的API接口。

-
自动化测试
-
自动化测试功能包含测试前提配置、测试序列搭建、测试用例执行、测试报告生成功能;
-
测试配置支持用户对报告生成的信息描述进行提前定义;

-
测试序列搭建以Python脚本的形式支持搭建测试用例、内置脚本库中提供了整体测试的框架函数,包括但不限于Testcase、Teststep、Testgroup等测试框架函数;
-
支持基于脚本的MainTest执行用例形式和基于XML的测试用例框架界面执行界面形式;

-
支持生成XML、PDF、Excel以及定制化的测试报告;

-
支持CAN、LIN、ETH相关的触发函数和测试验证函数。
-
对外API
-
VBA目前提供了上百余个COM API接口,其中覆盖软件控制、工程信息、网段数据库信息、诊断模块、标定模块、变量模块、Trace控制及Logger控制等。下表中展示了部分函数及说明:
| 事件名称 | 描述 | 从属模块 |
| Start/Stop | 工程启动/停止。 | Project |
| GetxxBusModule | 获取xxBusModule,以执行xx总线相关操作。 | Project |
| getAllVariablesByGroup | 获取指定系统变量组的变量列表。 | VariableModule |
| getVariableDoubleVal | 获取浮点类型变量值。 | VariableModule |
| setVariableintVal | 设置整型变量值。注:该功能只能在工程运行时执行。 | VariableModule |
| setVariableDoubleVal | 设置浮点类型变量值。注:该功能只能在工程运行时执行。 | VariableModule |
| createCANMsg | 创建一条自定义CAN报文。 | CANBusModule |
| sendMsg | 发送单条报文。 | CANBusModule |
| getSignalPhyVal | 获取总线上接收到的指定信号的物理值。 | CANBusModule |
| setSignalRawVal | 设置node中发送到trace的信号量的总线值。 | CANBusModule |
| startLimitedPeriodMsg | 发送指定次数的周期报文。 | CANBusModule |
| createLINHeaderMsg | 创建一条自定义的LIN主机报文。 | LINBusModule |
| createLINResponseMsg | 创建一条自定义的LIN从机报文。 | LINBusModule |
| setLINSchedule | 根据通道获取绑定的网段下,当前正在仿真的从机任务列表。 | LINBusModule |
| sendDiagPDU | 发送自定义诊断PDU。 | DiagModule |
| diagSecurityAccess | ECU诊断安全认证。 | DiagModule |
| readDTCs | 读取ECU故障码。 | DiagModule |
| getSeedKeyPath | 获取安全认证算法文件路径。 | DiagNode |
| getDiagServiceByName | 获取诊断数据库中加载的指定诊断服务。 | DiagNode |
| getSignalPhyVal | 获取Node中指定信号的物理值。 | Node |
| setSignalRawVal | 设置Node中指定信号的物理值。 | Node |
| getA2LPath | 获取A2L数据库路径。 | CalibrationNode |
| getAllCalibrationElements | 获取所有标定量。 | CalibrationNode |
| readScalarValue | 读取测量量最新值,测量量名称仅支持来自MeasureMangement中getMeasureItem的变量,读取的最新值。 | CalibrationNode |
备注:上述API仅用作示例展示,详情请参看《经纬恒润VBA对外API说明文档》
-
支持python、C++、C#等开发语言调用。
-
其他功能
-
数据转换
-
支持ASC/BLF总线数据文件转换成MAT/MF4/CSV格式数据文件;
-
支持ASC/BLF/PCAP总线数据文件间的相互转换。

-
数据截取
-
支持ASC/BLF总线数据文件按时间进行截取的功能。

-
IO资源配置
-
支持数字信号监控;
-
支持模拟信号监控;
-
支持数字信号仿真。

配置完成后,系统预定义变量模块会自动生成与硬件引脚对应配置的I/O变量。通过Graphic、Signal或者Panel模块可对配置好的I/O引脚的系统变量进行监控。
-
二次采样
-
支持二次采样功能,提升复杂干扰工况下的采集质量。
-
运行环境
| 序号 | 硬件 | 推荐配置 |
| 1 | 处理器 | 双核2.5Ghz以上 |
| 2 | 内存 | 16GB以上 |
| 3 | 硬盘 | 20GB剩余空间以上 |
| 4 | 操作系统 | Win10/Win11 64bit |
3. TestBase VCI硬件接口卡
TestBase VCI (Vehicle Communication Interface,以下简称VCI)总线接口卡,是由经纬恒润自主研发的一款专业、易用的车载总线接口硬件,支持 INTEWORK ® 系列上位机软件与总线通信,包括监控、分析、仿真、诊断及标定等功能。
当前VCI已具备CAN、LIN、ETH系列接口卡,硬件型号依次根据车载以太网数量、CAN通道数量、LIN通道数量命名。具体配置及硬件特点可参看下表:

注:如需了解更多详情,请参看各产品Factsheet或者产品手册
此外,针对多设备级联,部分设备功能需要进行配置的场景,上下位机协同实现了一些特定功能,具体如下:
-
硬件时间同步
VCI系列设备上具有硬件时间同步接口,可以通过上位机的配置界面实现对硬件时间同步的功能配置,支持多设备连接场景下用户自定义选择主时钟,实现微秒级的时间同步。

-
V8000硬件配置
VBA中开放了对V8000的配置功能,用户通过配置可实现端口隔离,端口镜像,VLAN标签等功能;此外,支持对V8000不同端口的状态设置,如Master/Slave状态、100/1000M速率切换等。

-
V6400_T硬件配置
VBA中开放了对V6400_T的配置功能,用户通过配置可实现TAP模式、直连模式等功能;VBA支持对V6400_T不同端口的状态设置,如Master/Slave状态、100/1000M速率切换等;V6400_T中内置了TCP/IP协议栈、DOIP协议栈,通过上下位机协同可以实现Server、Client的节点仿真。

-
远程固件升级
VBA中内置了远程固件升级功能,用户可以根据指示快速升级VCI的固件版本。
