移花接木,玩转CANoe的几种扩展接口应用(四)——VT系统

2024-01-02 07:50

本文主要是介绍移花接木,玩转CANoe的几种扩展接口应用(四)——VT系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

前言

VT系统

连接方法

配置方法

调用方法

手动调用

自动调用

分析和应用

总结


 

前言

        见《移花接木,玩转CANoe的几种扩展接口应用(一)——便携式接口设备》

        见《移花接木,玩转CANoe的几种扩展接口应用(二)——CAN干扰注入设备》

        见《移花接木,玩转CANoe的几种扩展接口应用(三)——Scope示波器设备》

VT系统

        VT系统是Vector官方的一套模块化硬件在环(HIL)仿真测试设备,它包含了可供模型实时运行的处理器、能够模拟各种ECU传感器信号的仿真板卡、能够测量各种ECU执行器动作的信号测量板卡。ECU的输入信号(例如PWM信号)可以由CANoe测试程序定义,并且在VT模块上创建。ECU的输出信号经过测量和预处理(例如平均值、有效值或PWM参数),并以处理后的形式传递给CANoe测试程序VT系统的实物如下图所示。

连接方法

        Vector官方提供的VT系统有非常丰富的配置可以选择,不同配置的VT系统在使用方式和控制方法上是相通的,我们以手中现有的VT系统(VT8012+VT6000+VT6303+…)为例,展示其在CANoe上的扩展应用方法,框图如下所示。

        首先将VT板卡上的仿真和测量接口分别与DUT的各个I/O连接,然后VT的RJ45与电脑连接,最后把VT系统的电源适配器和DUT的供电接口连接到电源,VT系统的硬件接口如下图所示。

配置方法

第一步,IP适配

        VT6000 与上位机使用 TCP/IP 通讯,需要将上位机网卡与 VT6000 的 IP 配置在同一网段。如下图将 PC网卡地址为 192.168.100.10(或 192.168.101.10),子网掩码 255.255.255.0。 

        在 CANoe -> Hardware -> VT System Configuration -> Choose Network Adapter,选择连接到 VT System 的网卡,如下图所示。

第二步,板卡适配。

        在 CANoe  -> Hardware  -> VT System Configuration  -> Modue  ->Add Modue,添加连接到 VT系统的板卡,如下图所示。

        对板卡及各通道进行自定义重命名。

调用方法

       把VT系统作为CANoe的扩展接口进行调用时,可以有手动调用和自动调用两种方式,这里我们以上述VT6306以太网板卡为例进行演示。

手动调用

        通过CANoe人工手动调用VT系统上的以太网板卡,与其他VN系列以太网接口卡的用法类似,可以手动添加IG窗口,并使用Trace窗口进行观察,手动调整窗口中的各个功能按钮,对报文进行人工分析。

第一步,建立网络节点

        在Simulation Setup窗口中添加一个以太网通道,并将起与前面配置好的VT系统中的VT6306板卡匹配起来,这里可以选择VT6306板卡中的第一个以太网通道。然后在该网络上建立一个仿真的IG节点,如下图所示。

第二步,发送以太网报文

        在以太网IG窗口中新建一条UDP Message,启动CANoe后点击Now,这帧最简单的以太网报文就从VT6306板卡发送出去了。

 第三步,检查以太网报文

        当一条以太网报文从VT系统发出后,既可以从外部的ECU检查是否收到该报文,也可以在CANoe的Trace窗口观察报文发送的情况,如下图所示。

自动调用

        通过CANoe自动调用VT6306板卡,就是使用CAPL脚本,实现对板卡上各个以太网通道的自动发送和接收,相当前面手动调用中所有的人工操作变成了程序控制。

        这里我们以最简单的以太网报文发送为例,重点介绍CANoe与VT6306板卡的调用关系,这个板卡的其他更多使用方法,后期将会另开一个专题进行讲解。

        首先在CANoe中建立一个网络节点,然后在节点中编写如下函数即可,如下所示。

variables
{UdpSocket socket;
}on start
{socket = UdpSocket::Open( 0, 40000 );socket.SendTo( ipGetAddressAsNumber("255.255.255.255"), 40001, "Hello", 5 );
}

分析和应用

        VT系统能够更全方位、多角度地对ECU进行全面测试,包括了ECU功能、UDS诊断等等,而不只局限在CAN网络通信一个方面。而且VT系统具有模块化、通用化、可扩展的特性,用户甚至可以基于FPGA自定义板卡,使用起来更加灵活和方便,能够大幅提升硬件开发工程师在分析问题时的工作效率。同时VT系统不仅可以扩展成大型的测试台架,也能精简成小巧的桌面机箱,满足工程师们多种场景的应用。

总结

        以上就是本人在对CANoe扩展接口进行总结分析时,讲解的第四种扩展接口。主要讲解了VT系统的功能配置、连接方法、配置方法、调用方法,最后分析了这种扩展接口应用的特点和适用场景。

        后续还会更新另外几种CANoe扩展接口的应用方法,欢迎评论区留言、点赞、收藏和关注,这些鼓励和支持都将成为笔者持续分享的动力。


版权声明:原创文章,转载和引用请注明出处和链接,侵权必究!

这篇关于移花接木,玩转CANoe的几种扩展接口应用(四)——VT系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/561800

相关文章

JDK21对虚拟线程的几种用法实践指南

《JDK21对虚拟线程的几种用法实践指南》虚拟线程是Java中的一种轻量级线程,由JVM管理,特别适合于I/O密集型任务,:本文主要介绍JDK21对虚拟线程的几种用法,文中通过代码介绍的非常详细,... 目录一、参考官方文档二、什么是虚拟线程三、几种用法1、Thread.ofVirtual().start(

java中判断json key是否存在的几种方法

《java中判断jsonkey是否存在的几种方法》在使用Java处理JSON数据时,如何判断某一个key是否存在?本文就来介绍三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目http://www.chinasem.cn录第一种方法是使用 jsONObject 的 has 方法

linux系统中java的cacerts的优先级详解

《linux系统中java的cacerts的优先级详解》文章讲解了Java信任库(cacerts)的优先级与管理方式,指出JDK自带的cacerts默认优先级更高,系统级cacerts需手动同步或显式... 目录Java 默认使用哪个?如何检查当前使用的信任库?简要了解Java的信任库总结了解 Java 信

MySQL中C接口的实现

《MySQL中C接口的实现》本节内容介绍使用C/C++访问数据库,包括对数据库的增删查改操作,主要是学习一些接口的调用,具有一定的参考价值,感兴趣的可以了解一下... 目录准备mysql库使用mysql库编译文件官方API文档对象的创建和关闭链接数据库下达sql指令select语句前言:本节内容介绍使用C/

利用Python操作Word文档页码的实际应用

《利用Python操作Word文档页码的实际应用》在撰写长篇文档时,经常需要将文档分成多个节,每个节都需要单独的页码,下面:本文主要介绍利用Python操作Word文档页码的相关资料,文中通过代码... 目录需求:文档详情:要求:该程序的功能是:总结需求:一次性处理24个文档的页码。文档详情:1、每个

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

Java 缓存框架 Caffeine 应用场景解析

《Java缓存框架Caffeine应用场景解析》文章介绍Caffeine作为高性能Java本地缓存框架,基于W-TinyLFU算法,支持异步加载、灵活过期策略、内存安全机制及统计监控,重点解析其... 目录一、Caffeine 简介1. 框架概述1.1 Caffeine的核心优势二、Caffeine 基础2

使用Node.js和PostgreSQL构建数据库应用

《使用Node.js和PostgreSQL构建数据库应用》PostgreSQL是一个功能强大的开源关系型数据库,而Node.js是构建高效网络应用的理想平台,结合这两个技术,我们可以创建出色的数据驱动... 目录初始化项目与安装依赖建立数据库连接执行CRUD操作查询数据插入数据更新数据删除数据完整示例与最佳

Oracle数据库在windows系统上重启步骤

《Oracle数据库在windows系统上重启步骤》有时候在服务中重启了oracle之后,数据库并不能正常访问,下面:本文主要介绍Oracle数据库在windows系统上重启的相关资料,文中通过代... oracle数据库在Windows上重启的方法我这里是使用oracle自带的sqlplus工具实现的方

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求: