CAN FD的一致性测试 助力汽车电子智能化
后起之秀——CAN FD:随着各个行业的快速发展,消费者对汽车电子智能化的诉求越来越强烈,这使得整车厂将越来越多的电子控制系统加入到了汽车控制中,且在传统汽车、新能源汽车、ADAS和自动驾驶等汽车领域中也无不催生着更高的需求,由此可见,传统CAN总线已明显无法满足了。对此,Bosch公司推出了在带宽与可靠性方面更为优异的“升级版”CAN——CAN FD。

一 什么是“一致性测试”
一致性测试是用来检测零部件是否符合相关标准的测试流程,从而可保证产品的质量。
在CAN FD网络中,各节点的质量不一致可能会引发网络故障或网络瘫痪等问题,因此为了保证CAN FD网络的正常安全运行,执行CAN FD的一致性测试是非常必要的。
二 CAN FD一致性测试的标准及内容
如果需要对CAN FD网络进行一致性测试,那么就需要遵循以下测试标准。
一致性测试标准:
• ISO 11898;
• ISO 16845;
• ISO 15765;
• 整车厂标准。
根据以上的测试标准,可将CAN FD一致性测试内容分为:
• 物理层一致性测试;
• 数据链路层一致性测试;
• 应用层一致性测试。
| 物理层一致性测试
物理层一致性测试主要是对CAN FD网络节点的电阻特性、电容特性和总线终端电阻以及CAN FD物理电平值等的测试,旨在验证CAN FD节点与系统在电路设计、物理电平和容错性方面的性能。
CAN FD物理层一致性测试的内容如下表所示(节选):

测试项——终端电阻测试:
在CAN FD网络中,需要确保电缆的阻抗保持连续性,才能有效消除在通信电缆中的信号反射,因此在设计网络拓扑结构过程中,CAN FD总线末端会接120Ω的终端电阻,以此来抑制反射。
终端电阻的阻值必须在ISO 11898标准规定的118~132Ω范围内。过大过小的阻值都会对CAN FD通信产生不利影响——阻值过小,会造成信号幅值偏小,从而影响信号识别,通信极不稳定;阻值过大,造成信号幅值偏大,出现信号过冲现象,导致信号下降沿(变缓)时间变长,从而产生位(宽度)识别错误。
测试方法:
使用Q-Automation、示波器和万用表等测试工具进行测量。
测试连接示意图:

按照图示的连接方法连接后,用示波器或者万用表测量CAN_H与CAN_L之间的终端电阻阻值,并且阻值应该在测试标准规定的范围内。
| 数据链路层一致性测试
进行数据链路层一致性测试的主要目的是保证节点的通信参数保持一致性,以使CAN FD网络能够保持正常有效的工作。
CAN FD数据链路层的一致性测试内容如下表所示(节选):

测试项——报文DLC测试:
数据代码长度即DLC(Data Length Code)是用于规定数据场的字节数。在CAN FD网络中,数据场的字节数量上限为64字节。DLC的编码规则如下图所示:

此测试目的在于检测被测设备DUT发出的所有报文是否都具备正确的DLC。
测试方法:
使用Q-Automation、示波器和CAN FD一致性测试盒子等测试工具进行测量。
测试连接示意图:

按照图示连接成功后,需要DUT上电至稳定通信,触发DUT发送CAN FD报文,并用示波器记录DUT所有的数据帧,且需观察1min以上。对比DUT所发送的报文DLC,其应该和通信矩阵中所定义的完全一致。
| 应用层一致性测试
应用层一致性测试验证了节点在网络中通信的完整性,包括上层应用协议、网络管理功能及故障诊断方面的测试,以此确保网络通信的可靠性。
CAN FD应用层的一致性测试内容如下表所示(节选)。

测试项——Busoff恢复策略测试:
为了避免某个节点因自身原因而影响了其他正常节点的通信,CAN FD网络具有严格的错误诊断功能。当节点处于Busoff的状态时,ISO 11898标准规定——当在总线上监测到128次11个连续的隐形位后即可恢复通信。
在实际的CAN FD通信总线中,在总线上监测到128次11个连续的隐形位是非常满足的。但当节点处于Busoff状态时,这是不可靠的。由于只是监测到了128次11个连续的隐形位后就快速恢复了通信,因此通信会有较高的风险。对此,在实际应用中,往往会使用“快恢复”和“慢恢复”策略。
测试方法:
使用Q-Automation、示波器、CAN FD一致性测试盒子等测试工具进行测量。
测试连接示意图:

按照图示连接后,首先使DUT与测试工具正常通信,并让DUT的TEC与REC清零,然后启动CAN FD一致性测试盒子进行干扰,且采用的是连续干扰的方式来对DUT的周期报文进行干扰,使DUT进入Busoff状态;通过Q-Automation对Busoff的快、慢恢复时间来进行分析。
三 CAN FD一致性测试
为了避免人工测量的误差,同时实现CAN FD总线测试的自动化,风丘科技推出了CAN FD一致性测试系统。该系统不仅可完成对CAN FD网络物理层、数据链路层、应用层的测试,还可根据客户需求制定相应的网络管理测试......
请点击此处,查看剩余30%精彩内容!
| 往期回顾
▶ Q-Automation:基于ATX的自动化测试管理软件
▶ Q-Tester 3.8:适用于开发、生产和售后的诊断测试软件

相关文章:
CAN FD的一致性测试 助力汽车电子智能化
后起之秀——CAN FD:随着各个行业的快速发展,消费者对汽车电子智能化的诉求越来越强烈,这使得整车厂将越来越多的电子控制系统加入到了汽车控制中,且在传统汽车、新能源汽车、ADAS和自动驾驶等汽车领域中也无不催生着更高的需求&a…...
微信短链跳转到小程序指定页面调试
首先说下背景:后端给了短链地址,但是无法跳转到指定页面。总是在小程序首页。指定的页面我们是h5页面。排查步骤如下: 1、通过快速URL Scheme 编译。上部普通编译 下拉找到此选项。 、 2、按照小程序的要求的URL Scheme输入。另外后端给的…...
机器学习——聚类算法一
机器学习——聚类算法一 文章目录 前言一、基于numpy实现聚类二、K-Means聚类2.1. 原理2.2. 代码实现2.3. 局限性 三、层次聚类3.1. 原理3.2. 代码实现 四、DBSCAN算法4.1. 原理4.2. 代码实现 五、区别与相同点1. 区别:2. 相同点: 总结 前言 在机器学习…...
【2023研电赛】安谋科技企业命题三等奖作品: 短临天气预报AI云图分析系统
本文为2023年第十八届中国研究生电子设计竞赛安谋科技企业命题三等奖分享,参加极术社区的【有奖活动】分享2023研电赛作品扩大影响力,更有丰富电子礼品等你来领!,分享2023研电赛作品扩大影响力,更有丰富电子礼品等你来…...
The Sandbox 与韩国仁川市合作,打造身临其境的城市体验内容
简要概括 ● The Sandbox 与仁川市联手展示城市魅力,打造创新形象。 ● 本次合作包含多种多样的活动,如 NFT 捐赠活动和针对元宇宙创作者的培训计划。 我们非常高兴地宣布与仁川市合作,共同打造身临其境的城市体验。 双方合作的目的是在国…...
JVM之堆和方法区
目录 1.堆 1.1 堆的结构 1.1.1 新生代(Young Generation) 1.1.2 年老代(Old Generation) 1.1.3 永久代/元空间(Permanent Generation/Metaspace) 1.2 堆的内存溢出 1.3 堆内存诊断 1.3.1 jmap 1.3.2…...
Java 中的 IO 和 NIO
Java 中的 IO 和 NIO Java IO 介绍Java NIO(New IO)介绍windows 安装 ffmpeg完整示例参考文献 Java IO 介绍 Java IO(Input/Output)流是用于处理输入和输出数据的机制。它提供了一种标准化的方式来读取和写入数据,可以…...
Linux-crontab使用问题解决
添加定时进程 终端输入: crontab -e选择文本编辑方式,写入要运行的脚本,以及时间要求。 注意,如果有多个运行指令分两种情况: 1.多个运行指令之间没有耦合关系,分别独立,则可以直接分为两个…...
【设计模式】
文章目录 设计模式分类UML图类与类之间关系的表示方式 设计原则 设计模式分类 创建型模式 用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。单例、原型、工厂、抽象工厂、建造者等 5 种创建型模式。 结构型模式 用于描述如何将类或对象按某种…...
2023_Spark_实验四:SCALA基础
一、在IDEA中执行以下语句 或者用windows徽标R 输入cmd 进入命令提示符 输入scala直接进入编写界面 1、Scala的常用数据类型 注意:在Scala中,任何数据都是对象。例如: scala> 1 res0: Int 1scala> 1.toString res1: String 1scala…...
【深入解析spring cloud gateway】04 Global Filters
上一节学习了GatewayFilter。 回忆一下一个关键点: GateWayFilterFactory的本质就是:针对配置进行解析,为指定的路由,添加Filter,以便对请求报文进行处理。 一、原理分析 GlobalFilter又是啥?先看一下接口…...
c++搜索基础进阶
搜索算法基础 搜索算法是利用计算机的高性能来有目的的穷举一个问题的部分或所有的可能情况,从而求出问题的解的一种方法。搜索过程实际上是根据初始条件和扩展规则构造一棵解答树并寻找符合目标状态的节点的过程。 所有的搜索算法从其最终的算法实现上来看&#…...
管网水位监测的必要性
城市燃气、桥梁、供水、排水、热力、电力、电梯、通信、轨道交通、综合管廊、输油管线等,担负着城市的信息传递、能源输送、排涝减灾等重要任务,是维系城市正常运行、满足群众生产生活需要的重要基础设施,是城市的生命线。基础设施生命线就像…...
无涯教程-Android - 系统架构
Android操作系统是一堆软件组件,大致分为五个部分和四个主要层,如体系结构图中所示。 Linux内核 底层是Linux-Linux 3.6,带有大约115个补丁,这在设备硬件之间提供了一定程度的抽象,并且包含所有必需的硬件驱动程序&am…...
await接受成功的promise,失败的promise用try catch
在 JavaScript 中,await 关键字用于等待一个 Promise 对象的解决(fulfillment)。下面是一个示例: async function example() {try {const result await doSomethingAsync();console.log(result); // 如果 Promise 成功解决&…...
赞奇科技参与华为云828 B2B企业节,云工作站入选精选产品解决方案
8月27日,由华为云携手上万家伙伴共同发起的第二届 828 B2B 企业节拉开帷幕,围绕五大系列活动,为万千中小企业带来精细化商机对接。 聚焦行业数字化所需最优产品,举办超1000场供需对接会,遍及20多个省100多个城市&…...
Docker私有镜像仓库(Harbor)安装
Docker私有镜像仓库(Harbor)安装 1、什么是Harbor Harbor是类似与DockerHub 一样的镜像仓库。Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。Docker容器应用的…...
【深入解析spring cloud gateway】06 gateway源码简要分析
上一节做了一个很简单的示例,微服务通过注册到eureka上,然后网关通过服务发现访问到对应的微服务。本节将简单地对整个gateway请求转发过程做一个简单的分析。 一、核心流程 主要流程: Gateway Client向 Spring Cloud Gateway 发送请求请求…...
2023年行研行业研究报告
第一章 行业概述 1.1 行研行业 行业定义为同一类别的经济活动,这涉及生产相似产品、应用相同生产工艺或提供同类服务的集合,如食品饮料行业、服饰行业、机械制造行业、金融服务行业和移动互联网行业等。 为满足全球金融业的需求,1999年8月…...
linux上vscode中.cpp文件中引入头文件.hpp时报错:找不到头文件(启用错误钵形曲线)
当在.cpp文件中引入系统给定的头文件时:#include < iostream > 或者引入自定义的头文件 :#include <success.hpp> 报错:找不到相应的头文件,即在引入头文件的改行底下标出红波浪线 解决方法为: &#…...
以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...
中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...
DAY 47
三、通道注意力 3.1 通道注意力的定义 # 新增:通道注意力模块(SE模块) class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
在Ubuntu中设置开机自动运行(sudo)指令的指南
在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...
Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
零基础设计模式——行为型模式 - 责任链模式
第四部分:行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习!行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想:使多个对象都有机会处…...
css3笔记 (1) 自用
outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size:0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格ÿ…...
Vite中定义@软链接
在webpack中可以直接通过符号表示src路径,但是vite中默认不可以。 如何实现: vite中提供了resolve.alias:通过别名在指向一个具体的路径 在vite.config.js中 import { join } from pathexport default defineConfig({plugins: [vue()],//…...
