目录

1、通讯速率和数据长度不同的问题

2、非ISO CAN FD与ISO CAN FD设备的通讯问题

3、多设备切换的通讯问题

4、测试平台共用的问题


对汽车电子技术感兴趣的小伙伴请关注公众号:美男子玩编程,公众号优先推送最新技术博文,创作不易,请各位朋友多多点赞、收藏、关注支持~

因为受制于产品的稳定性考验,改造成本等问题,没法快速全面普及CAN FD。另外,在2012年底提出CAN FD到2015年中成为ISO CAN FD。

也就是说目前市场上大部分都还是在用传统的CAN2.0,有一小部分用非ISO标准的CAN FD,一部分用ISO标准的CAN FD。

这样会遇到一个问题:传统CAN与CAN FD共存的网络中,如何解决彼此通讯?

将可能存在的问题分成了4类。

1、通讯速率和数据长度不同的问题

这个问题里面,又分成如下几种情况:

  • 传统CAN节点以1Mbit/s 传输数据到 CAN FD;
  • CAN FD设备以8Mbit/s传输数据到传统CAN;
  • 传统CAN节点向 CAN FD节点传输8字节的数据;
  • CAN FD节点向传统CAN 节点传输64字节的数据。

第1种情况和第3种情况是可以直接通过的,因为CAN FD天然向下兼容CAN2.0。

CAN FD节点向传统CAN 节点传输64字节的数据,需要采用可编程CAN FD路由器。预先编程并下载到路由器,CAN FD数据通过路由器后可以按照预先设置的程序将数据做拆包等处理再转成8字节转发出去给传统CAN设备。

2、非ISO CAN FD与ISO CAN FD设备的通讯问题

非ISO CAN FD与 ISO CAN FD的共同点在于:传输速率一致,数据长度一致。区别在于:后者引入了一个3位的填充位计数器以及额外的校验位,另外,CRC计算值也不同。

所以两者是不兼容的,因此CiA建议所有的CAN FD应用需注明ISO CAN FD或non-ISO CAN FD。

2012年底到2015年中之前有很多厂家已经开发了CAN FD产品,但是那个是非ISO标准的CAN FD产品,并且已经有少部分产品已经在市场流通。而这些非ISO产品的供应商也没法完全收回或者销毁原有产品,所以这些供应商仍然需要解决这个问题。

3、多设备切换的通讯问题

未来的CAN网络,较长时间内都会存在着传统CAN与CAN FD并存的情况。

那么在一个共存网络中,就需要解决某几个设备之间交叉通讯的问题、多个切换的问题、以及一个设备需要同时与CAN FD节点和传统CAN节点通讯的切换问题。

如下图所示,一个网络中只有EMS与ABS是用CAN FD的,如果是EMS和ABS通信,这个时候只要对CAN FD之间的数据1:1转发即可。但是如果是EMS或者ABS与其他ECU通信,那么这时就需要将CAN FD数据切换为传统CAN再转发。

否则可能会遇到以下两种问题:

1、使用CAN FD网络时,需要ECU和CAN控制器、收发器均支持CAN FD通讯。当CAN网络中某些节点升级为CAN FD时,车辆上CAN与CAN FD处于共存的情况,因为普通的CAN节点无法正常解析CAN FD报文,节点就会一直报错,出现大量错误报文,导致总线通讯异常。

2、假设CAN FD的数据传输速率是5Mbit/s,而CAN的传输速率为500Kbit/s,平常使用上位机软件解析CAN报文的时候需要设置对应的波特率,否则报文无法解析。可能会遇到波特率不匹配,不能被正常解析,节点报错,导致CAN FD报文无法正常发送,干扰总线的正常运行。

当然也是有一些解决办法的,如下:

1、CAN节点忽略CAN FD报文

支持CAN2.0的ECU忽略CAN FD报文不对其进行识别,这样虽然无法对CAN FD报文进行解析处理,但是也不会将其识别为错误帧,总线可以保证正常通讯。

因为CAN FD是向下兼容CAN的,保证CAN FD节点可以正常接收所有类型的CAN报文,CAN节点无法接收解析CAN FD报文,该解决方案仅可作为临时使用。

2、全部节点升级为CAN FD

将所有网络上所有的节点都替换成CAN FD,由于CAN FD可以向下兼容CAN,此时的网络既可以进行CAN报文收发也可以进行CAN FD报文收发。但是由于整体网络全部更新替换,成本较高,所以使用率很低。

3、利用CAN网桥进行CAN FD与CAN的转换

在原有的CAN网络上通过CAN网桥与新的CAN FD节点进行连接,将传统的CAN总线网络通过协议转换与CAN FD网络进行融合,快速实现CAN设备的升级。当接收到CAN FD报文的时候,CAN网桥会采用直转、合并、拆分三种方式实现传统CAN的8字节长度和CAN FD的64字节长度的互相转换,无损还原原有数据。

4、测试平台共用的问题

CAN FD节点在进行环境测试、疲劳测试、寿命测试等的情况下,只需要测试设备本身的性能,而与通讯速率/字节数无关,因此,这几类测试可以沿用传统CAN设备的测试平台。

而CAN FD通讯性能的测试、兼容性测试等涉及到通讯机制本身,因此这类测试需要用新的CAN FD测试工具。

一个完整的测试需要同时满足以上所有测试条件,因此存在两种测试平台的交互。


详解CAN总线:什么是CAN总线?

详解CAN总线:高速CAN总线和低速CAN总线的特性

详解CAN总线:CAN协议分层结构及功能

详解CAN总线:CAN节点硬件构成方案

详解CAN总线:常用CAN连接器的使用方法

详解CAN总线:CAN总线报文格式—数据帧

详解CAN总线:标准数据帧和扩展数据帧​​​​​​

详解CAN总线:CAN总线报文格式—遥控帧

详解CAN总线:CAN总线报文格式—错误帧

详解CAN总线:CAN总线报文格式—过载帧

详解CAN总线:CAN总线报文格式—帧间隔

一文搞懂CAN和CAN FD总线协议

CAN与CAN FD通信之间存在的问题相关推荐

  1. can协议crc计算_详解CAN/CAN FD通信中的循环冗余校验(CRC)方法

    数据校验是为保证数据的完整性进行的一种验证操作.CAN通信采用CRC校验作为一种重要的错误检测手段,是节点判断CAN帧信息的完整性并产生确认应答的依据. 在现场总线通信和控制的实际应用中,工业应用环境 ...

  2. 单工通信、半双工通信和全双工通信之间有什么区别。

    简单的说: 单工通信就是只能从A到B,如[广播] 半双工通信是A到B,B到A都行,但不能同时进行.如[对讲机] 全双工通信是A到B,B到A都行,可以同同时进行.如[电话] ----- 详细如下: 全双 ...

  3. PC和DSP通信以及MCU和DSP通信之间的切换

    壬戌之秋,七月既望,苏子与客泛舟游于赤壁之下.清风徐来,水波不兴.举酒属客,诵明月之诗,歌窈窕之章.少焉,月出于东山之上,徘徊于斗牛之间.白露横江,水光接天.纵一苇之所如,凌万顷之茫然.浩浩乎如冯虚御 ...

  4. 详解CAN总线:CAN总线通信优先级机制

    目录 1.数据帧和遥控帧的优先级 2.标准格式和扩展格式的优先级 在详解CAN总线:CAN总线报文格式-数据帧文章中,讲解到仲裁段.仲裁段用于写明需要发送到目的CAN节点的地址.确定发送的帧类型(当前 ...

  5. 详解CAN总线:CAN总线故障界定与管理

    目录 1.错误状态的种类 2.故障界定规则 对汽车电子技术感兴趣的小伙伴请关注公众号:美男子玩编程,公众号优先推送最新技术博文,创作不易,请各位朋友多多点赞.收藏.关注支持~ CAN总线故障界定的目标 ...

  6. 详解UDS CAN诊断:DiagnosticSessionControl Service(SID:0X10)

    目录 1.诊断请求 2.诊断响应 2.1.肯定响应 2.2.否定响应 诊断和通信管理功能单元(Diagnostic and communication management functional un ...

  7. Linux进程通信(一)——pipe管道

    本章内容 采用pipe管道如何进行进程之间的通信 pipe管道进程通信的规则和限制 Linux中pipe管道的实现机制和管理pipe管道的结构体 什么是进程通信 进程通信就是两个进程之间进行数据交换, ...

  8. 1、Linux中的socket与TCP通信

    socket介绍 1.所谓 socket(套接字),就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象. 2.一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制. ...

  9. CAN FD 在 iMX8 计算机模块上的应用

    ​By Toradex胡珊逢 CAN 总线在工业.汽车行业具有非常广泛的应用,为网络中设备之间点对点通信提供一种可靠.稳定.经济的方案.伴随网络中设备节点的增加,由于 1Mbps 速率和最长数据 8  ...

  10. TCAN114x-Q1部分组网增强型CAN FD收发器(SBC_CAN的收发器)

    目录 TCAN114x-Q1部分组网增强型CAN FD收发器 1.功能 2.应用程序 3.描述 4.设备比较表 5.引脚配置与功能 8.规格 8.1绝对最大评级 9.参数测量信息 10.详细描述 10 ...

最新文章

  1. 【组队学习】【31期】基于Python的办公自动化
  2. python类私有函数_python-面向对象-14-私有方法
  3. mitmdump脚本中使用requests模块发送请求
  4. Linux 命令:pwd、touch、ll、wget
  5. 前端-选项卡(菜单栏)
  6. Spring中实体类为什么不需要注册成bean?
  7. 53 - leetcode 1. 两数之和 数据结构map类
  8. htcvr设备计算机配置,VR对电脑配置要求高吗?HTC Vive电脑配置要求
  9. matlab面向对象多态性,MATLAB面向对象程序设计10版.pptx
  10. Javascript实现鼠标框选元素后拖拽被框选的元素
  11. rabbitmq-web-stomp 优化过程
  12. TST扫描电镜与透射电镜有什么不同?
  13. 投稿状态(status)记录 IEEE wireless communications letters (IEEE WCL)
  14. 中国网:防火墙之父发声
  15. Mac 中英文输入法切换快捷键caps lock失效解决办法
  16. winform工具1-图片去除水印
  17. Oracle 10g Scheduler 特性
  18. JS 判断input输入框日期时间格式是否符合YY-MM-DD HH:MM:SS和是否符合实际日期规范方法以及SQL时间日期格式转化存储
  19. C语言课程设计——实现简单的管理系统
  20. 华为HCIP-DATACOM题库解析161-190(821)

热门文章

  1. 条形码转化成二维码_免费在线条形码生成器_村美小站
  2. html生成一维码,一维码条形码生成工具
  3. 前端:【学成在线项目】HTML+CSS详细制作过程(代码只做参考)
  4. 计算机 画图软件 快捷键大全,教你完整版电脑CAD快捷键大全
  5. NPI新产品导入管理--陈新春老师
  6. 光伏风电系统PSCAD仿真成功
  7. 如何使用Photoshop修改论文中插图颜色
  8. fiddler抓包工具-WIFI远程连接
  9. 非常好用的模糊pid温度控制算法_高度集成高速多点温度PID控制方案
  10. 谷歌浏览器Google Chrome离线安装包下载