什么是CAN总线协议?CAN总线协议具体分析!

很难找到一篇能够适合初学者can总线原理的文章,因此小编本着通俗易懂的原则编写此文!
本文说的can即是一种总线,也是一种协议。因此,我们常听见can总线,也常听见can协议。
can协议和canopen协议是两套不同的协议。从软硬件层次来划分,can协议属于硬件协议,而canopen属于软件协议。
什么是can总线?
can总线应用于汽车,实现电子控制器和传感器之间的通信
l高可靠性、低成本的通信协议。
l最初由robert bosch于1986年开发。
l主要应用于汽车、卡车、拖拉机、工业机器人。
想象一下,一辆汽车就像一个人:
øcan总线是神经系统,使身体各部分之间的通信得以实现。
øecu通过can总线连接,该总线相当于一个中央网络系统。
什么是ecu?
l在汽车can总线系统中,ecus可以是发动机控制单元、安全气囊或音频系统。
l一辆现代汽车最多可以有70辆ecus。
can总线5大特性
l低成本:ecus通过单个can接口进行通信,布线成本低。
l高集成:can总线系统允许在所有ecus上进行集中错误诊断和配置。
l可靠性:该系统对子系统的故障和电磁干扰具有很强的鲁棒性,是汽车控制系统的理想选择。
l高效率:可以通过id对消息进行优先级排序,以便最高优先级的id不被中断。
l灵活性:每个ecu包含一个用于can总线收发芯片,随意添加can总线节点。
can总线发展史
l未出现前:汽车ecus依靠越来越复杂的点对点布线。
l1986年:bosch公司开发了can总线协议作为汽车电子解决方案,并在sae大会上发布。
l1991年:bosch公司发布了can2.0,包涵can 2.0a (11 位) 和can 2.0b (29 位)。
l1993年:can总线列入标准(iso 11898)。
l2012年:bosch公司发布了can fd 1.0
l今天:几乎每一辆汽车都有can总线系统,它广泛应用于卡车、公共汽车、工业车辆、船舶、飞机和工业自动化。
can总线网络
can总线网络主要挂在can_h和can_l,各个节点通过这两条线实现信号的串行差分传输,为了避免信号的反射和干扰,还需要在can_h和can_l之间接上120欧姆的终端电阻,但是为什么是120欧姆呢?那是因为电缆的特性阻抗为120欧。
can收发器
can收发器的作用是负责逻辑电平和信号电平之间的转换。
即从can控制芯片输出逻辑电平到can收发器,然后经过can收发器内部转换将逻辑电平转换为差分信号输出到can总线上,can总线上的节点都可以决定自己是否需要总线上的数据。具体的管教定义如下:
can信号表示
can总线采用不归零码位填充技术,也就是说can总线上的信号有两种不同的信号状态,分别是显性的(dominant)逻辑0和隐形的(recessive)逻辑1,信号每一次传输完后不需要返回到逻辑0(显性)的电平。
can收发器有txd,rxd是与can控制器连接的。发送器接到网络的是cl和ch。cl与ch是差分电路。can网络上是用cl于ch的电压差来表示逻辑“0”和逻辑“1”。所以can网络中只能单向传输。
can总线通信协议
协议格式
如何解析
下面是使用canloggerx000的汽车的一个示例日志文件:
# logger type: canlogger2000
# hw rev: 6.xx
# fw rev: 5.51
# logger id: id0001
# session no.: 9
# split no.: 3
# time: 20170508t064128
# value separator: ;
# time format: 4
# time separator:
# time separator ms:
# date separator:
# time and date separator: t
# bit-rate: 500000
# silent mode: false
# cyclic mode: false
timestamp;type;id;data
08t064254150;0;34d;1003fafa000d00ff
如果我们查看上面的原始can总线数据样本,可能会注意到:
原始的can总线数据没有意义!
这是因为我们需要将数据转换成按比例计算的工程值——也就是人类可读的形式。
要做到这一点,我们需要知道一些事情:
例如,在34d中的64位数据中,可能会有3个不同参数的数据,每个参数都有一个特定的起始点和位长。
针对这3个不同参数的数据,我们需要要知道如何解码:
每个参数都需要偏移量和刻度值
[数据值]=[偏移]+[刻度]x[原始数据值]

红米4X和荣耀6A哪个好? 对比之下谁更惊艳
智能语音电话机器人的优势都有哪些
5G时代该如何服务垂直行业
MWC:人工智能及视觉芯技术,瑞芯微一一亮相
区块链可以帮助企业跟踪供应商单一产地的产品
什么是CAN总线协议?CAN总线协议具体分析!
电感计算公式
软件定义存储将改变数据中心
安防监控系统怎样选择合适的镜头
树莓派 3 或开启物联网革命的大门
戴尔XPS132in1评测 翻转变形更加扩展使用场景
ABB新型流量计的推出,助力优化电动机车氢燃料的利用
半导体投资机构的逻辑和方向探讨
快速判断mos管封装引脚的三个极和它的好坏
最强大的人工智能系统 | NVIDIA DGX-2
凌力尔特LTC4079电池充电器的特点分析
工业显示器清洁要求及注意事项
主动夜视技术和被动夜视技术对比
Rapidus社长:将以设计制造协同优化(DMCO)改写先进制程流片成本
华为荣耀v8、一加3T与小米5splu综合对比简评