【如何学习CAN总线测试】——Vector VH6501干扰仪测试BusOff

系列文章目录

【如何学习CAN总线测试】系列文章目录汇总


文章目录

  • 系列文章目录
  • 前言
  • 一、环境搭建
    • 1.硬件环境
    • 2.软件环境
    • 3.原理
  • 二、测试方法
    • 1.打开Disturbance(CAN)工程
    • 2.使能 VH6501
    • 3.MainConfigPanel面板
    • 4.TriggerConfiguration配置
    • 5.Sequence Configuration配置
    • 6.干扰结果


前言

随着近几年汽车智能化水平的大大提升,汽车上各种ECU逐渐增多,CAN总线也是汽车上最重要的网络之一,都离不开CAN总线进行通信,以实现车辆各个系统之间的协调与控制,但由于车辆电子系统的复杂性和总线通信的高频率,可能导致ECU总线干扰通信信号的丢失,影响各个控制单元之间的正常通信和数据传输,进而影响车辆系统的性能和功能,需要一款设备模拟干扰,Vector VH6501由此而生。

Vector VH6501干扰仪介绍:
VH6501是一款CAN/CANFD总线干扰仪,将干扰硬件和网络接口卡集成在一起的一款设备,可以与CANoe进行无缝集成,通过CAPL脚本进行控制。主要功能是数字干扰和模拟干扰,可以通过自定义改变显性或隐性序列实现干扰,也可以实现CAN线对电源或地短路及CAN高低之间短路或者改变两者之间的电阻电容值来进行干扰。
它主要可以用来进行模拟干扰测试、Bus-off测试、采样点测试,观察被测控制器在故障状态下的网络行为、恢复策略及采样点是否满足相应需求;通过模拟真实的干扰场景,测试总线在干扰环境下的稳定性;提高总线的可靠性、检测总线抗干扰能力、保证正常通信。


一、环境搭建

1.硬件环境

1.Vector VH6501上电:将Vector Power Supply 12V/1.25A的电源线一端连接至VH6501的Power/Sync口,另一端连接至电源。
2.VH6501连接电脑:将USB2.0 cable一端连接至VH6501的USB口,另一端连接至电脑。
3.连接DUT至VH6501的第一道通道CH1。

2.软件环境

1.CANoe上位机安装;
2.VH6501驱动安装;
3.通道配置:打开Vector Hardware Config窗口(可通过电脑的控制板->Vector Hardware打开),将CANoe CAN1逻辑通道分配给VH6501的第一道通道,如:
在这里插入图片描述

3.原理

1.在进行 DUT 的 bus off 测试时, Vector 建议干扰 Ack delimiter 位或者 CRC delimiter 位,将该固定值为1 的位干扰为 0,从而产生 form error,干扰一次, DUT 的 TEC 累加 8,在连续 32 次干扰之后, TEC的值为 256, DUT 便会进入 bus off。
2.如要测试 DUT 的恢复时间,例如一次恢复时间,可以连续干扰 33 次,第 32 帧错误帧和第 33 帧错
误帧的时间差值就是恢复时间。


二、测试方法

1.打开Disturbance(CAN)工程

启动CANoe15》选择File》Sample Configurations》Disturbance(CAN)
在这里插入图片描述

2.使能 VH6501

进入工程后,将 VH6501 通道分配给软件通道 CAN1,在下图所示界面设置 Mode 为 CAN,并勾选 Activate 选项使能 VH6501 总线干扰功能。
在这里插入图片描述

3.MainConfigPanel面板

在这里插入图片描述

4.TriggerConfiguration配置

在MainConfigPanel面板中单击Trigger Configuration(标注 1),在打开的 TriggerConfigurationPanel 面板中, CurrentTriggerField 填 上 AckSlot(标注 2), TriggerOffset 填 0(标注 3),回车之后即配置好任一报文的 Ack delimiter 位触发干扰。
在这里插入图片描述

5.Sequence Configuration配置

在 MainConfigPanel 面板,单击 Sequence Configuration (标注 4)打开面板 SequencePanel,
Segment value 选择 Dominant(标注 5),勾选 Arbitration Bit Timing Information(标注 6),
单击 Add Segment(标注 7),填写干扰次数为 32 次(标注 8)。
如要进行多次 bus off 测试,可在 Cycles 填写多个 cycle(标注 9 处进行修改)。
在这里插入图片描述

6.干扰结果

1.单击标注 10 开始进行干扰, Configuration Status 会变为 Trigger is enabled on device,右侧 Disturbance Interface State 三个状态灯全部亮起,表示干扰准备就绪。
2.总线上如有报文就会立即触发干扰。
在这里插入图片描述
3.干扰结果Trace 窗口所示,在此示例中,施加了 33 次干扰,在 32 次干扰后,DUT 进入 bus off 状态,恢复时间为 100ms,可以看到第 32 帧错误帧和第 33 帧错误帧之间的时间间隔就是 100ms,恢复时间可由此测得。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/672037.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

leetcode9. 回文数|详细深入讲解算法

前往题目有 反转一半数字 思路 映入脑海的第一个想法是将数字转换为字符串,并检查字符串是否为回文。但是,这需要额外的非常量空间来创建问题描述中所不允许的字符串。 第二个想法是将数字本身反转,然后将反转后的数字与原始数字进行比较&…

LAXCUS分布式操作系统各版本下载地址

Laxcus分布式操作系统分两种:寄居系统和裸机系统。寄居系统依赖其它操作系统运行,比如Linux,裸机系统直接运行在服务器上,是完整的操作系统。目前裸机系统的7.0版本正在开发中,6.0及以下版本是寄居系统。Windows平台仅…

ubuntu20.04-编译安装Qt5.15.2-C++

文章目录 步骤一:安装依赖项步骤二:下载Qt 5.15源代码步骤三:配置并编译Qt步骤四:配置环境变量注意事项更新于2024年 在Ubuntu 22.04 LTS(Jammy Jellyfish)环境下编译Qt 5.15,由于Ubuntu 22.04的…

【ASP.NET Core 基础知识】--前端开发--集成前端框架

一、前端框架概述 1.1 Angular 特点 Angular是一种流行的前端框架,具有许多特点,这些特点有助于构建现代化、可维护且高性能的Web应用程序。以下是Angular的一些主要特点: 双向数据绑定: Angular提供了强大的双向数据绑定机制&am…

通信图(Communication Diagram)

UML2.0之前叫协作图(Collaboration Diagram) 一、定义 显示在某种情形下对象之间发送的消息。 协作图显示了一系列的对象和在这些对象之间的联系以及对象间发送和接收的消息 二、元素 通信图的组成元素: 对象、链、消息 1、对象 通信图中的对象与顺序图中对象的概念相同&…

js中的事件模型详解

文章目录 一、事件与事件流二、事件模型原始事件模型标准事件模型IE事件模型 一、事件与事件流 javascript中的事件,可以理解就是在HTML文档或者浏览器中发生的一种交互操作,使得网页具备互动性, 常见的有加载事件、鼠标事件、自定义事件等 …

工业以太网交换机引领现代工厂自动化新潮流

随着科技的飞速发展,现代工厂正迎来一场前所未有的自动化变革,而工业以太网交换机的崭新角色正是这场变革的关键组成部分。本文将深入探讨工业以太网交换机与现代工厂自动化的紧密集成,探讨这一集成如何推动工业生产的智能化、效率提升以及未…

C++ bool 布尔类型

在C 中 bool类型占用1个字节长度,bool 类型只有两个取值,true 和 false,true 表示“真”,false 表示“假”。 需要注意的C中使用cout 打印的时候是没有true 和 false 的 只有0和1 ,这里0表示假,非0表示真 …

金融信贷风控系统设计

前言 近一年多以来在金融行业负责风控系统,根据自己工作中的经验,写下这篇文章。既是对自己在风控领域工作的总结,也是给刚入行和准备入行的朋友打个样,希望能有所帮助。 为什么要有风控系统 记得 2016 年信贷行业的发展形势还…

QT QCombox 样式表 比起作用

对QCombox在ui编辑器中进行美化,发现外表美化有效果,但下拉框的高度美化的没效果,查看样式表也没有没问题,样式表中内容如下。 QComboBox#curve_comboBox {min-width: 150px;min-height:40;max-width: 150px;max-height:40;borde…

Tauri 的基本使用笔记

文章目录 前言如何将 Tauri 集成到前端项目?进程间通信(命令)const invoke window.__TAURI__.invoke; 进程间通信(事件)前端 ⇒ RustRust ⇒ 前端我的疑问 开发时的一些技巧用代码打开前端的开发者工具让 Tauri 不要监听文件Rus…

cocos creator 3.x 预制体无法显示

双击预制体,进入详情页,没有显示资源 Bomb 是个预制体,但是当我双击进来什么都没有了,无法对预制体进行可视化编辑 目前我只试出来一个解决方法: 把预制体拖进Canvas文件中,这样就能展示到屏幕上&#xff…

prometheus之mysqld_exporter部署

mysql_exporter部署 下载解压压缩包 mkdir /opt/mysqld_exporter/ cd /opt/mysqld_exporter/ # 修改为自己的软件下载地址 wget http://soft.download/soft/linux/prometheus/mysqld_exporter/mysqld_exporter-0.14.0.linux-amd64.tar.gz tar -zxvf mysqld_exporter-0.14.0.…

C语言探索:选择排序的实现与解读

当我们需要对一组数据进行排序时,选择排序(Selection Sort)是一种简单但效率较低的排序算法。它的基本思想是每次从未排序的数据中选择最小(或最大)的元素,然后将其放置在已排序序列的末尾。通过重复这个过…

Wireshark中的ARP协议包分析

Wireshark可以跟踪网络协议的通讯过程,本节通过ARP协议,在了解Wireshark使用的基础上,重温ARP协议的通讯过程。 ARP(Address Resolution Protocol)地址解析协议,是根据IP地址获取物理地址的一个TCP/IP协议。…

useEffect的依赖项是Object时,即使依赖项的值没发生变化,仍然触发了useEffect

关于useEffect首先需要知道以下三种情况 useEffect(()>{ console.log(没有第二个参数,每次渲染都会触发) })useEffect(()>{ console.log(第二个参数是个【】,初次挂载时会触发) },[])const [age,setAge] useState(0); const [name, setName] us…

计算机网络(第六版)复习提纲27

7 TCP流量控制 A 利用滑动窗口实现流量控制 所谓流量控制,就是让发送方发送速率不要太快,让接收方来得及接收 1 利用窗口进行流量控制 2 持续计时器和零窗口探测报文(仅携带一字节的数据) B TCP的传输效率(TCP报文段的…

Vue-53、Vue技术vuex使用

vuex 是什么 1、概念 专门在Vue 中实现集中式状态(数据)管理的一个Vue 插件,对vue 应用中多个组件的共享状态进行集中式的 管理(读/写),也是一种组件间通信的方式,且适用于任意组件间通信。2、…

无心剑小诗《醉爱平凡人生》

醉爱平凡人生 平凡人生,别样卓越 做调色板上最亮的颜料 没有豪华光环与繁杂束缚 只有一份简单的快乐 不追求虚名,不被物欲左右 安静地享受生活,品味每滴雨露 平凡人生,宛如流淌的小溪 没有壮烈激流,却有恒久细流 不…

pwn旅行之[WUSTCTF 2020]getshell2(一些小知识)

题目分析1 首先打开这个题目的链接的时候,看到了ret2syscall,以为是一个纯正的syscall的题,结果,做的时候发现这个题的危险函数限制的字符串个数不足以写入syscall需要的所有地址,所以,这里参考dalao们的方…