can 总线怎么分:谈一谈伺服控制中的CAN总线技术 CAN到底怎么样
can 总线怎么分:谈一谈伺服控制中的CAN总线技术 CAN到底怎么样CAN遵从OSI模型,按照OSI基准模型,CAN结构划分为两层:数据链路层和物理层,如下图所示。CAN总线的分层结构尽管 CAN 协议已经有很长的历史,但它仍处在改进之中。一个由数家公司组成的 ISO任务组织定义了一种时间触发 CAN 报文传输的协议。现在,CAN 在全球市场上仍然处于起始点,汽车厂商将会在他们所生产汽车的串行部件上使用 CAN。另外,大量潜在的新应用(例如:娱乐)正在呈现——不仅可用于汽车,也可用于家庭消费。同时,结合高层协议应用的特殊保安系统对 CAN 的需求也正在稳健增长。德国专业委员会 BIA 和德国安全标准权威 TÜV 已经对一些基于 CAN 的保安系统进行了认证。
J1939,这也是一个基于 CAN 的应用子协议,由 SAE 的 Truck and Bus 协会制定。J1939是一个非模块化的方案,简单易学,但灵活性很差。当然,生产 CAN 模块集成器件的 15 家半导体厂商主要聚焦于汽车工业。
从 1990 年中期起,Infineon公司和 Motorola 公司已向欧洲的客车厂商提供了大量的 CAN 控制器。从 1990 年后期起,远东的半导体厂商也开始提供 CAN 控制器。1994 年,NEC 推出了CAN 芯片 72005。
从 1992 年起,Mercedes-Benz开始在他们的高级客车中使用 CAN 技术。第一步使用电子控制器通过 CAN 对发动机进行管理;第二步使用控制器接收人们的操作信号。这就使用了 2 个物理上独立的CAN 总线系统,它们通过网关连接。其他的客车厂商也纷纷赶来斯图加特学习,在他们的客车上也使用 2套 CAN 总线系统。
尽管 CAN 协议已经有很长的历史,但它仍处在改进之中。一个由数家公司组成的 ISO任务组织定义了一种时间触发 CAN 报文传输的协议。现在,CAN 在全球市场上仍然处于起始点,汽车厂商将会在他们所生产汽车的串行部件上使用 CAN。
另外,大量潜在的新应用(例如:娱乐)正在呈现——不仅可用于汽车,也可用于家庭消费。同时,结合高层协议应用的特殊保安系统对 CAN 的需求也正在稳健增长。德国专业委员会 BIA 和德国安全标准权威 TÜV 已经对一些基于 CAN 的保安系统进行了认证。
CAN总线的分层结构
CAN遵从OSI模型,按照OSI基准模型,CAN结构划分为两层:数据链路层和物理层,如下图所示。
按照IEEE 802.2和802.3 标准,数据链路层又划分为:
1、逻辑链路控制(LLC-Logic Link Control)。
2、媒体访问控制(MAC-Medium Access Control)。
物理层又划分为:
1、物理信令(PLS-Physical Signalling)。
2、物理媒体附属装置(PMA-Physical Medium Attachment)。
3、媒体相关接口(MDI-Medium Dependent Interface)。
MAC子层运行借助称之为“故障界定实体(FCE)”的管理实体进行监控。故障界定是使判别短暂干扰和永久性故障成为可能的一种自检机制。物理层可借助检测和管理物理媒体故障实体进行监控(例如总线短路或中断,总线故障管理)。
LLC和MAC两个同等的协议实体通过交换帧或协议数据单元(PDU-Protocol Data Unit)和(N)-用户数据组成,为传送一个NPDU (N-1)层实体必须通过(N-1)服务访问点(SAP-Service Access Point)[(N-1)-SAP].NPDU借助于(N-1)层服务数据单元(SDU-Service Data U nit)[(N-1)-SDU]传至(N-1)层,其服务功能允许NPDU的传送。
SDU是接口数据,对其识别预先在(N)层实体间进行,亦即,它表示逻辑数据单元由服务进行传送。CAN协议的数据链层既不提供分配一个SDU至多个PDU 也不提供分配多个SDU至一个PDU的方法,亦即,NPDU直接由相应的NSDU和层指定控制信息N-PCI构成。
CAN总线的特点
CAN具有十分优越的特点,使人们乐于选择。这些优越的特点包括:
1、多主控制
当总线空闲时,连接到总线上的所有单元都可以启动发送信息,这就是所谓的多主控制的概念。
先占有总线的设备获得在总线上进行发送信息的资格。这就是所谓的CSMA/CR(Carrier Sense MultipleAccess/Collosion Avoidance)方法
如果多个设备同时开始发送信息,那么发送最高优先级ID消息的设备获得发送资格。
2、信息的发送
在CAN协议中,所有发送的信息要满足预先定义的格式。当总线没有被占用的时候,连接在总线上的任何设备都能起动新信息的传输,如果两个或更多个设备在同时刻启动信息的传输,通过ID来决定优先级。ID并不是指明信息发送的目的地,而是指示信息的优先级。
如果2个或者更多的设备在同一时刻启动信息的传输,在总线上按照信息所包含的ID的每一位来竞争,赢得竞争的设备(也就是具有最高优先级的信息)能够继续发送,而失败者则立刻停止发送并进入接收操作。因为总线上同一时刻只可能有一个发送者,而其它均处于接收状态,所以,并不需要在底层协议中定义地址的概念。
3、系统的灵活性
连接到总线上的单元并没有类似地址这样的标识,所以,添加或去除一个设备,无需改变软件和硬件,或其它设备的应用层软件。
4、通信速度
可以设置任何通讯速度,以适应网络规模。
对一个网络,所有单元必须有相同的通讯速度,如果不同,就会产生错误,并妨碍网络通讯,然而,不同网络间可以有不同的通讯速度。
5、远程数据请求
可以通过发送“遥控帧”,请求其他单元发送数据。
6、错误检测、错误通知、错误恢复功能
所有单元均可以检测出错误(错误检测功能)。检测到错误的单元立刻同时通知其它所有的单元(错误通知功能)。如果一个单元发送信息时检测到一个错误,它会强制终止信息传输,并通知其它所有设备发生了错误,然后它会重传直到信息正常传输出去(错误恢复功能)。
7、错误隔离
在CAN总线上有两种类型的错误:暂时性的错误(总线上的数据由于受到噪声的影响而暂时出错);持续性的错误(由于设备内部出错(如驱动器坏了、连接有问题等)而导致的)。CAN能够区别这两种类型,一方面降低常出错单元的通讯优先级以阻止对其它正常设备的影响,另一方面,如果是一种持续性的错误,将这个设备从总线上隔离开。
8、连接
CAN总线允许多个设备同时连接到总线上且在逻辑上没有数目上的限制。然而由于延迟和负载能力的限制,实际可连接得设备还是有限制的,可以通过降低通讯速度来增加连接的设备个数。相反,如果连接的设备少,通讯的速度可以增加。
CAN与其它通信方案的比较
CAN总线与其它通信网的不同之处在于:
一是报文传送中不包含目标地址,它是以全网广播为基础。各接收站根据报文中反映数据性质的标识符过滤报文,该收的收下,不该收的丢弃。其好处是可在线上网下网、即插即用和多站接收;
二是特别强化了对数据安全性的关注,满足控制系统及其它较高数据要求的系统需求。
在实践中,有两种重要的总线分配方法:按时间表分配和按需要分配。在第一种方法中,不管每个节点是否申请总线,都对每个节点按最大期间分配。由此,总线可被分配给每个站并且是唯一的站,而不论其是立即进行总线存取或在一特定时间进行总线存取。
这将保证在总线存取时有明确的总线分配。在第二种方法中,总线按传送数据的基本要求分配给一个站,总线系统按站希望的传送分配。因此,当多个站同时请求总线存取时,总线将终止所有站的请求,这时将不会有任何一个站获得总线分配。为了分配总线,多于一个总线存取是必要的。
CAN实现总线分配的方法,可保证当不同的站申请总线存取时,明确地进行总线分配。这种位仲裁的方法可以解决当两个站同时发送数据时产生的碰撞问题。不同于Ethernet网络的消息仲裁,CAN的非破坏性解决总线存取冲突的方法,确保在不传送有用消息时总线不被占用。
甚至当总线在重负载情况下,以消息内容为优先的总线存取也被证明是一种有效的系统。虽然总线的传输能力不足,所有未解决的传输请求都按重要性顺序来处理。在CSMA/CD这样的网络中,如Ethernet 系统往往由于过载而崩溃,而这种情况在CAN中不会发生。
CAN总线的应用
CAN总线在组网和通信功能上的优点以及其高性价比据定了它在许多领域有广阔的应用前景和发展潜力。这些应用有些共同之处:CAN实际就是在现场起一个总线拓扑的计算机局域网的作用。
不管在什么场合,它负担的是任一节点之间的实时通信,但是它具备结构简单、高速、抗干扰、可靠、价位低等优势。CAN总线最初是为汽车的电子控制系统而设计的,目前在欧洲生产的汽车中CAN的应用已非常普遍,不仅如此,这项技术已推广到火车、轮船等交通工具中。
汽车制造中的应用
应用CAN总线,可以减少车身布线,进一步节省了成本,由于采用总线技术,模块之间的信号传递仅需要两条信号线。布线局部化,车上除掉总线外其他所有横贯车身的线都不再需要了,节省了布线成本。
CAN总线系统数据稳定可靠,CAN总线具有线间干扰小、抗干扰能力强的特点。CAN总线专为汽车量身定做,充分考虑到了汽车上恶劣工作环境,比如点火线圈点火时产生的强大的反充电压,电涡流缓冲器切断时产生的浪涌电流及汽车发动机仓100℃左右的高温。