Loading...
墨滴

jasonj333

2021/09/14  阅读:22  主题:红绯

VBA工具使用

VBA,Vehicle Bus Analyser,恒润公司开发的一款汽车总线工具,具备对总线数据的监控与分析、节点仿真、报文发送、总线负载统计、离线回放、故障诊断、多媒体数据监控等功能,目前支持的总线类型包含CAN、CANFD、LIN,优势是价格便宜,由于功能较少所以容易上手,缺点嘛,也是功能较少,且不稳定,目前还不支持Ethernet

环境搭建

和Vector的CANoe类似,VBA工具也是由软件和硬件组成

硬件VCI,Vehicle Communication Interface,一般有4个通信接口,支持8路通道,也就是每个接口有2路

软件VBA,也就是我们所说的上位机,打开后需要新建工程

文件-新建-VBA工程

创建工程成功后,自动进入工程界面

device.config是设备配置项,可以把硬件通道和创建的软件channel映射到一起,类似于CANoe中的Hardware-Network Hardware-Driver

功能介绍

再来看下此工程下的其他功能

Sources下展示了创建工程时配置的通道数,也可以在CANNetworks或LINNetworks上右击创建新的channel

每个通道下还可以

  • 导入DBC文件
  • 导入诊断ODX文件
  • 创建仿真节点
  • 创建Generator,类似于CANoe里的IG面板
  • 创建回放节点

可以看出Sources类似于CANoe里的Simulation Setup

这里先提一句,在Nodes上右击创建节点时,会自动打开该节点对应的脚本,类似于CANoe里创建节点时导入的capl文件,只是VBA用的编程语言不是capl,而是开源的python,具体的接口函数后面再聊

而Monitors下可以

  • 创建trace窗口
  • 创建波形图
  • 创建信号监控窗口
  • 创建Logger节点
  • 创建面板

可以看出这些功能也和CANoe里的类似

这里重点说一下面板,创建的面板也提供各种控件,可以和信号或系统变量相关联,可以在脚本中通过回调函数触发使用

对于面板还需要注意的是,如果未运行VBA,打开的面板是编辑模式,如果运行VBA,打开的面板是运行状态

接口函数

VBA软件内部内置了一些函数供用户使用

事件函数

提供的事件函数类似于capl里的事件型函数

其他函数

比如创建CAN报文的CANMessage

发送单条报文的sendMsg

发送周期报文的sendPeriodMsg

诊断相关的函数

处理数据的函数

操作文件的函数

其他的函数可以在帮助文档中查看

当然VBA也支持第三方库的引用,具体用法请咨询技术支持

总结

在使用过程中,也遇到了一些问题,比如经常性的软件卡死,write窗口如果打印过于频繁会很难停止,面板里的控件偶尔会丢失

总的来说,如果你只是想抓取总线上的报文,或做一些仿真的功能,VBA完全可以满足

即使是从来没有接触过的新手,花半天到一天时间,浏览VBA里的帮助文档,就可以熟练使用

但是如果想用它来做大型的测试用例设计,个人不建议使用


jasonj333

2021/09/14  阅读:22  主题:红绯

作者介绍

jasonj333