1.CAN FD发展的背景介绍

随着总线技术在汽车电子领域越来越广泛和深入的应用,特别是自动驾驶技术的迅速发展,汽车电子对总线宽度和数据传输速率的要求也越来也高,传统CAN(1MBit/s,8Bytes Payload)已难以满足日益增加的需求。

因此在2012年,Bosch发布了新的CAN FD标准 (CAN with Flexible Data Rate) ,CAN FD继承了CAN的绝大多数特性,如同样的物理层,双线串行通信协议,基于非破坏性仲裁技术,分布式实时控制,可靠的错误处理和检测机制等;同时CAN FD弥补了CAN在总线带宽和数据长度方面的不足。

2015年6月30日,国际标准化组织(ISO)已经正式认可CAN FD,并无反对票通过ISO 11898-1作为国际标准草案。

2.CAN FD简介

2.1CAN FD的报文结构

CAN FD在控制场中新引入了三个位:

  • EDL位(Extended Data Length),原CAN数据帧中的保留位r, 该位功能为:
    隐性: 表示 CAN FD 报文 (采用新的 DLC 编码和 CRC 算法
    显性: 表示 CAN 报文

  • BRS位(Bit Rate Switch):该位功能为:

    隐性:表示转换可变速率
    显性:表示不转换速率

  • ESI位(Error State Indicator):该位的功能为:

    隐性:表示发送节点处于被动错误状态(Error Passive)
    显性:表示发送节点处于主动错误状态(Error Active)


另外,CAN FD采用新的DLC编码方式,控制场有四个位组成了数据长度码(DLC),DLC包含了扩展的有效数据长度;有效数据长度可能为12,16,20,24,32,48和64个字节,如图2所示。

2.2CAN FD提高通信速率的方法

CAN FD提高通信速率主要是两种方法:一是提高波特率;二是提高有效载荷。

2.3CAN FD的优势

基于背景所述以及如上关于报文结构和提高通信速率的方法的说明,我们可以总结出一些CAN FD的优势:

  • 该协议能够支持更高的速率,可以更快的刷写ECU;
  • 在单个数据帧内传送率可达64字节,避免了经常发生的数据分拆传输的状况;
  • 对汽车行业而言,CAN-FD协议显得非常重要,CAN线束和其它物理层面元件可重新再利用;
  • 更高的带宽,在电动车以及今后的动力CAN上应用更有优势
  • 上层应用层架构不需要改变,在原来基础上扩展即可。

3. CAN与CAN FD通信的问题

因为受制于产品的稳定性考验,改造成本等问题,没法快速全面普及CAN FD。另外,在2012年底提出CAN FD到2015年中成为ISO CAN FD。也就是说目前市场上大部分都还是在用传统的CAN2.0,有一小部分用非ISO标准的CAN FD,一部分用ISO标准的CAN FD。

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

首先,我们先来看下主要会有哪些问题:

  • 共存网络中,如何解决通讯速率和数据长度不同的冲突?
  • 如何解决非ISO CAN FD与ISO CAN FD设备的通讯问题?
  • 共存网络中,如何解决某几个设备之间交叉通讯的问题,多个切换的问题?
  • 如何解决一个设备需要同时与CAN FD节点和传统CAN节点通讯的切换问题?
  • 如何解决测试平台共用的问题?(如针对非通讯状态下的:疲劳测试,寿命测试,环境测试等,共用平台)
  • 如何对CAN FD产品做测试?

4. CAN与CAN FD通信问题的解决方法

4.1 解决通讯速率和数据长度不同的问题

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

  1. 传统CAN节点以1Mbit/s 传输数据到 CAN FD:解决方法是可以直接通过,因为CAN FD是向下兼容CAN2.0的。
  2. CAN FD设备以8Mbit/s传输数据到传统CAN:解决方法是采用可编程CAN FD路由器:先将传统CAN FD的速率自动降为1Mbit/s再转出去。
  3. 传统CAN节点向 CAN FD节点传输8字节的数据:解决方法是可以直接通过,因为CAN FD是向下兼容CAN2.0的。
  4. CAN FD节点向传统CAN 节点传输64字节的数据:解决方法是采用可编程CAN FD路由器:预先编程并下载到路由器,CAN
    FD的数据通过路由器后可以按照预先设置的程序将数据做拆包等处理再转成8字节转发出去给传统CAN设备。

4.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产品的供应商也没法完全收回或者销毁原有产品,所以这些供应商仍然需要解决这个问题。

解决方法是采用可编程CAN FD路由器,实现两种CAN FD机制的转换。

4.3 解决多设备切换的通讯问题

未来的CAN网络,较长时间内都会存在着传统CAN与CAN FD并存的情况。部分亟需解决速率问题的节点会率先采用CAN FD技术。其他对实时要求不高的节点仍然会保存原有技术并存在着。
那么在一个共存网络中,就需要解决某几个设备之间交叉通讯的问题,多个切换的问题?以及一个设备需要同时与CAN FD节点和传统CAN节点通讯的切换问题?

举例如图4所示,一个网络中只有EMS与ABS是用CAN FD的,解决方法其实也是用CAN FD的网关;如果是EMS和ABS通信,PCAN-Router FD网关这个时候只要对CAN FD之间的数据1:1转发即可;如果是EMS或者ABS与其他ECU通信,那么这时PCAN-Router FD网关就需要将CAN FD数据切换为传统CAN再转发。

4.4 解决测试平台共用的问题

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

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

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

解决方法也是采用Router FD可以将同一个待测的CAN FD设备连入不同的测试平台中,最终完成各项测试任务。

4.5 如何测试CAN FD产品?

关于CAN FD节点的测试,应该主要包括如下测试:

  1. CAN FD报文测试(收发机制),这个可以使用一些工具供应商提供的CAN FD总线测试工具,如德国PEAK公司的PCAN-USB
    FD硬件+PCAN-Explorer6软件或者其它公司的类似产品。
  2. CAN FD互操作性测试,互操作性测试由于涉及到各个厂家产品之间的测试,目前大部分这个测试都是通过CiA实验室来做的。
  3. CAN FD网络模拟故障测试,这个可以使用一些工具供应商提供的CAN FD总线测试工具来测试,如德国PEAK公司的PCAN-Diag FD或者其它公司的类似产品。
  4. OEM要求的其它测试,根据实际要求来选择测试工具,或者委托第三方。

5. CAN FD测试工具简介

5.1 PCAN-Router FD

PCAN-Router FD是一个两路的可编程的CAN FD的网关,可以完美的解决4.1—4.4的CAN和CAN FD之间的转换问题。

5.2 PCAN-USB FD硬件+PCAN-Explorer6软件

PCAN-USB FD硬件是一路CAN FD转USB接口的CAN FD接口卡,可以将CAN FD和CAN数据通过USB传输到电脑上;结合软件PCAN-Explorer6,可以做CAN FD通信机制方面的测试;PCAN-Explorer6软件也支持DBC文件,后期还将支持XML文件,可以用于分析CAN FD报文所携带的信号,创建图形面板,生成信号的历史曲线等。

5.3 PCAN-Diag FD

PCAN-Diag FD是一个手持式的CAN/CAN FD诊断仪,具有监控CAN/CAN FD网络通信,测试终端电阻,总线负载,总线电压等功能,也能做为一个小型的示波器使用,特别适用于现场检测和排除总线故障。

5.4 PCAN-Router Pro FD

PCAN-Rouer Pro FD是1个6路的可编程的CAN FD网关,可以解决CAN和CAN FD之间的转换问题,也可以作为CAN/CAN FD记录仪使用。

6. 总结

本文总结的CAN与CAN FD之间通信的问题,在未来很长一段时间内都会存在。因此,相信我们提出的解决方案,不管是对主机厂还是零部件供应商,应该都很有实用价值。

【汽车总线技术】CAN FD与CAN网络共存的解决方案相关推荐

  1. 【汽车总线技术】CAN和CAN FD总线故障诊断

    在总线测试的过程中,总会遇到各种各样的问题,本文主要总结了平时测试过程中经常遇到的一些典型问题,并给出解决方案.如果总线出现故障,大致可以按照标题顺序来检查. 1.断线 如果线缆破损,CAN通讯则无法 ...

  2. LIN总线增强型校验_雷洪钧:汽车总线及车载网技术概述

    点击蓝字,一键关注 走进<公共交通资讯>,及时掌握公交领域的行业政策.管理理论.科技信息.专家观点和先进经验... ... 张晓亮:我国城市公共交通智能化发展情况分析 王竹:浅谈公交驾驶员 ...

  3. 汽车数字化技术CAN总线数据应用是落脚点

    在现代汽车技术发展中,已经有95%以上的汽车采用了CAN总线协议,部分娱乐系统采用了以太网,结合4G/5G的商业化应用,已经将原有封闭式的内部数据闭环的汽车连接到互联网,我们的用户不但可以远程解锁他们 ...

  4. 一文看懂四大汽车总线:LIN、CAN、FlexRay、MOST

    前言 随着汽车工业的发展,汽车各系统的控制逐步向自动化和智能化转变,汽车电气系统变得日益复杂.传统的电气系统大多采用点对点的单一通信方式,相互之间少有联系,这样必然会形成庞大的布线系统. 据统计,一辆 ...

  5. 汽车以太网技术发展现状与趋势探究

    本文由涂孝军,张莹,李晓平联合创作 前言 随着半导体技术和智能化技术的发展演进,越来越多的新技术在汽车领域得到了推广,汽车电器成本在整车成本中所占比重也在不断增长,实现车载控制器间数据交互的网络带宽也 ...

  6. 汽车总线系统网络学习之CAN总线入门

    汽车总线系统网络学习之CAN总线入门 第一课 CAN总线入门 第一课 一.CAN总线介绍 CAN总线全称:Controller Area Network (车载网络局域网) 汽车CAN协议,建立在IS ...

  7. 【虹科云展厅专题】虹科赋能汽车智能化云展厅——汽车总线专题

    虹科2023年开年福利 聚焦前沿技术,[虹科赋能汽车智能化云展厅]正式上线,本次云展厅围绕"汽车以太网/TSN.汽车总线.智能网联.电子测试与验证.自动驾驶"等核心话题,为您带来如 ...

  8. 几种常见的传统汽车总线传输通信技术

    当前主流的汽车混合网络主要由 CAN.LIN.Flex Ray.MOST.LVDS 等车载网络总线构成.这些网络标准都是由汽车行业制定,属于较封闭的标准,很难与外部设备及网络服务连接,有浓重的汽车行业 ...

  9. pci总线定时协议_汽车总线测试的“解忧杂货店”

    "我的回答之所以发挥了作用,原因不是别的,是因为大家自己很努力." -- 东野圭吾<解忧杂货店> 相信很多读者都看过东野圭吾的书<解忧杂货店>或者同名电影, ...

  10. CAN总线技术 | CAN脱颖而出的“秘密”

    CAN总线在汽车网络中脱颖而出的"秘密": 节点间采用多主通讯方式. 采用短帧结构,标准数据帧8个字节,500K波特率,用200多us就能发完. 报文ID值越小,优先级越高. 非破 ...

最新文章

  1. 迟来的2017年计划
  2. STM32 电机教程 8 - 步进电机开环电流控制
  3. Java正则表达式代码案例
  4. 联想一体机电源键不亮_联想/兄弟打印机复印一体机激光器清洁教程
  5. Python之令人心烦意乱的字符编码与转码
  6. android自定义图片+文字控件四种实现方法,Android自定义“图片+文字”控件四种实现方法之 二--------个人最推荐的一种...
  7. 八种常见的 SQL 错误用法
  8. C/C++静态库编译报错(/usr/bin/ld:cannot find -lpthread,/usr/bin/ld:cannot find -lc)
  9. 目标检测论文阅读:Multi-scale Location-aware Kernel Representation for Object Detection(CVPR2018)
  10. 【Python】实现最大最小距离算法
  11. 【极客思考】计算机网络:Wireshark抓包分析TCP中的三次握手与四次挥手
  12. c语言程序设计支持win10,win tc 64位下载-wintc C语言编译器64位下载 1.9.1 win10兼容版 - 河东下载站...
  13. python编程基础及应用教程答案_Python编程基础教程
  14. Java入门基础第2天《java jdk下载与安装教程》
  15. GM8285C是一颗将TTL信号转换成单路LVDS信号的转接芯片
  16. 中国行政区域shp shx csv 等地图数据下载
  17. 计算机协会报名范文,2020年大学计算机协会活动计划书范文
  18. 手机软件设计大赛报名信息
  19. Flink Event Time / Processing Time / Ingestion Time (事件时间/处理时间/摄取时间)
  20. 新东方 词根词缀 excel_词根词缀记忆英语单词,高效,不易遗忘

热门文章

  1. AV1代码学习:av1_encode_strategy、denoise_and_encode、av1_encode函数
  2. 阿里云物联网平台如何进行云产品流转
  3. 小程序请求openid错误码40163
  4. 海康 hikvision SDK 初始化、登录、布防、监听
  5. SAS笔记#通过TABULATE过程制作汇总报表
  6. 【STM32f401学习之路-00】搭建工程环境
  7. 关系型数据库的一对一、一对多、多对一、多对多关系
  8. ICP算法、Robust_ICP算法
  9. 9 Nextflow configuration
  10. Flink WaterMark 详解及结合 WaterMark 处理延迟数据