物流技术网

登录

物流相关设备自动化控制现场总线

网络和现场总线模块-CAN总线

供应商:
埃姆依(武汉)系统工程有限公司
企业类型:
其他

产品简介

网络和现场总线模块-CAN总线CAN总线已经获得了巨大的成功,尤其是在机械制造领域,而且正在变得越来越重要

详细信息

网络和现场总线模块-CAN总线

CAN总线已经获得了巨大的成功,尤其是在机械制造领域,而且正在变得越来越重要。成功的原因包括高抗干扰性,高速数据传输,易用性以及确定性实时能力。CAN对于拥有易管理的远程I/O节点数和较少轴数的应用而言是理想的解决方案。作为现场总线,CAN总线在处理规模更大更复杂的机器时会受到限制。然而对于这些应用而言,POWERLINK是扩展至更高性能范围的理想之选。

报文传输按照生产者-消费者原则

CAN的报文传输是基于“生产者-消费者原则”。由生产者节点发送的报文可以由所有其它消费者节点接收。为此,报文并不是由目的地址标明,而是由一个明确的“报文标识符”标记。报文发送给所有网络节点也被称为“广播”。在CAN协议中,报文通常有一个11位长的标识符(标准格式)。这意味着每个系统可以定义2048个不同的报文。这个数字足以应对大多数的应用。然而,对于特殊应用(如重型车辆),也可以使用29位长的标识符(扩展格式),并定义最多5.12亿个不同的报文。节点必须过滤掉与总线上的报文流相关的报文。

多主站,事件导向报文发送

一旦总线空闲,CAN网络的每个节点都可以启动报文传输。由于可能同时出现一个以上的网络节点开始发送报文的情况,因此需要一个仲裁过程以确保实际上只有一个节点继续发送其报文。

由于每个节点都可以启动报文发送,因此可以在所有网络节点间直接发送报文。因而也可以仅在需要时发送报文,即一个相应的事件已经发生。与循环发送报文相比,结果大大降低了总线负载,减少了所需的数据传输速率。

无损,逐位总线仲裁

由于在一个CAN网络中,一旦总线空闲,每一个节点就会开始发送报文,因此多个节点可以在同一时间开始发送。为了防止破坏节点间发送的数据,在所有同时仲裁的报文中确定具有优先级的报文的过程被称为“仲裁阶段”。只有发送优先级报文的网络节点才可以继续发送其报文。报文标识符数值的报文优先级。图1显示了总线仲裁机制。在仲裁阶段,每个节点都会监控总线上的信号电平。仲裁阶段由发送报文标识符以及所谓的RTR位所组成。如果一个网络节点检测到一个显性总线电平(显性位),虽然它已产生一个隐性电平(隐性位),那么它会立即中止传输过程,因为在这种情况下会同时发送更高优先级的报文;所以它就进入了接收状态。由于报文都会通过总线仲裁发送,因此该过程确保了“无损”总线访问。

优先导向报文传送

上述仲裁过程保证了在各种情况下,总线一旦空闲,就会始终传输具有优先级的报文。报文优先级是由报文标识符的值确定的。该数值越小,报文的优先级就越高。优先导向报文原则可以非常有效地利用带宽传输数据。因此,低优先级的报文99%占用总线而基本不会延迟具有较高优先级的报文传输。对于具有优先级的报文而言,约130 µs的等待时间会导致1 Mbit/s的传输速率。另一方面,在设计CAN系统的时候,必须确保高优先级报文不会经常占用总线。例如,可以引入所谓的最小“传输阻塞时间”(CANopen:禁止时间)。
 
CAN使用的逐位仲裁机制要求在一个位时间间隔内对分布在总线上的所有网络节点上的本地位电平进行比较。由于在总线上分配信号所需的信号传播时间与总线长度成正比,因此有必要根据总线长度的增加相应延长一个位间隔的持续时间。因而根据下述公式,总线长度(网络扩展)与位速率成反比:位速率(Mbit/s) x 总线长度(m) ≤60。