DeviceNet数据链路层完全CAN规范和CAN控制器芯片实际特性来定义。CAN规范定义了两种总线状态,“显性”(逻辑0)和“隐性”(逻辑1)。任何发送器都可以将总线驱动为“显性”状态。没有发送器处于显性状态时,总线只能是隐性状态:
CAN定义了四种类型帧: l 数据帧 l 远程帧 l 超载帧 l 出错帧 DeviceNet使用数据帧传送数据。远程帧DeviceNet中没有被使用,超载帧和出错帧则用于例外情况处理。数据帧格式如图所示。 较高优先权数据取总线通信权 同以太网类似,DeviceNet总线空闲时任何节点都可以尝试发送,这提供了网络固有点对点通信能力。当两个或多个节点同时想要访问网络时,非破坏性逐位仲裁机制会解决潜冲突,而不会损失数据或浪费带宽。比较而言,以太网所使用冲突检测器,会导致丢失数据和带宽浪费。发生冲突两个节点必须回退并重新发送数据。 CAN使用唯一、非破坏性逐位仲裁机制。CAN这一特性使解决总线冲突(决定“胜者”时,不会要求优先权高节点重发数据而损失总线吞吐能力。
CAN使用逐位仲裁方法解决冲突。CAN网络上所有接收器一个帧起始位(由隐性转变为显性)同步。标识符和RTR(远程传送请求)位一起组成仲裁区,仲裁区是便于媒体访问。DeviceNet不使用RTR位,总线访问优先权将其考虑内。当设备进行发送时,它要监视(接收)自己发送内容,以确定两者是否一致,可以发送时进行检测。节点发送仲裁区时,发送了一个隐性位同时却接收到一个显性位,它就停止发送。同时进行发送两个节点中,仲裁胜者是具有较低值11位标识符节点。CAN还规定了具有29位标识符数据帧格式,但DeviceNet没有使用该格式。
控制区包括两个固定位和一个4位长度区。长度区可以是0-8中任一个数字,表示数据区中字节数。0-8字节数据长度具有少量但必须频繁交换I/O数据低端设备来说很理想。同时8个字节使简单设备可以灵活发送诊断数据,或向驱动器发送速度基准和加速度值。 CRC校验区是循环冗余校验字,CAN控制器用它来检测帧错误。校验字对它前面位进行计算到。ACK应答中显性位表明发送者以外至少有一个接收器接受到报文。 CAN使用包括CRC和自动重试内多种错误检测和故障限制方法。这些对应用来说高度透明方法,可止故障节点破坏(中断)网络。
图. CAN数据帧
上一篇:用超级终端调试欧陆系列590直流调速' 下一篇:siemens PLC系统功能块在P'
特别声明:机电之家(http://www.jdzj.com )所共享的机电类资料,机电论文、机电类文章、机电企业类管理制度、机电类软件都来自网上收集,其版权归作者本人所有,如果有任何侵犯您权益的地方,请联系我们,我们将马上进行处理。购买的论文都出自原创,保证作者的原创的版权的转让,任何纠纷由法律解决。