CANlink3.0通信协议详解(二)

描述

此篇文章主要内容:

1.CANLink3.0 应用

2.CANlink3.0接线

3.拨码开关解析

4.心跳机制解析

5.掉站信息解析

1.CANLink3.0 应用

接线

拓扑结构主从结构

2.CANlink3.0接线

接线

扩展卡接口接线

组成 CANlink 网络时,所有设备的以上五根线均要一一对应连在一起。并且必要时在+ 24V 和CGND 间需要外接 24V 直流电源。总线的两端均要加 120 欧姆的 CAN 总线匹配电阻 ( 亦称终端电阻 ),H1U/H2U 远程扩展卡和 CAN 接口卡均内置了匹配电阻,可通过拨码开关接入或断开。

接线

正确的 CANlink 网络接线

接线

错误接线-屏蔽层接地

在各设备 CAN 卡采用 24V 自行供电的情况下,CAN 卡上的 CGND 接线错误

接线

CGND 接线错误

3.拨码开关

接线

拨码开关

接线

CANlink 拨码开关定义

在 PLC 运行状态改变拨码开关,匹配电阻的设置可以及时生效,但波特率和地址并不能立即生效,需要让系统重新启动才可以使用新的设置参数。注意:当 M8284、M8285 分别为 0 时,拨码开关设置的 CAN 地址和 CAN 波特率才分别有效。若需要以软件方式设置为其他的波特率,请查阅 M8285、D8285、D8286 的设置说明

4.心跳机制

就是每隔几分钟发送一个固定信息给服务端,服务端收到后回复一个固定信息如果服务端几分钟内没有收到客户端信息则视客户端断开。

发包方:可以是客户也可以是服务端,看哪边实现方便合理。

心跳包之所以叫心跳包是因为:它像心跳一样每隔固定时间发一次,以此来告诉服务器,这个客户端还活着。事实上这是为了保持长连接,至于这个包的内容,是没有什么特别规定的,不过一般都是很小的包,或者只包含包头的一个空包。心跳包主要也就是用于长连接的保活和断线处理。一般的应用下,判定时间在30-40秒比较不错。如果实在要求高,那就在6-9秒。

应用场景:

在长连接下,有可能很长一段时间都没有数据往来。理论上说,这个连接是一直保持连接的,但是实际情况中,如果中间节点出现什么故障是难以知道的。更要命的是,有的节点(防火墙)会自动把一定时间之内没有数据交互的连接给断掉。在这个时候,就需要我们的心跳包了,用于维持长连接,保活。

5.掉站信息

PLC 提供通过检测寄存器的值判断网络中掉站情况的功能。D7800 是 PLC 从站检测主站是否正常,只有从站 PLC 的 D7800 才有意义。D7801~D7863 是主站监控在网从站状态的寄存器,与主站号对应的寄存器无意义。

接线

掉站监测信息

主站可通过以下程序检测是否存在从站掉站 ( 例中是 10 号、20 号、30 号从站中任一从站掉站时,Y0 导通 )

接线

梯形图掉站程序

CANlink3.0 具有掉站后自动重连的特点,即从站掉站后,会自动检测网络,在通信电缆正常后自动接入网络,主站检测到掉站从站重新接入后会自动将相应寄存器恢复。变频器和伺服掉站后重新接入网络需手动清除面板上的错误字样,其它功能是否受影响请参考变频器和伺服用户手册。注意:PLC 会根据实际状态修正相应寄存器(D7800-D7863)的值,不要尝试对其进行人为的修改。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分