基于rs-422的工业总线网络装置、系统及通信方法_2

文档序号:9527472阅读:来源:国知局
A(可编程逻辑器件)或类似具有数据处理能力的装置实现。本实施例中网络装置20包括链路层控制单元22和至少两个物理层控制单元21,上述链路层控制单元22和至少两个物理层控制单元21可结合网络装置20的硬件的软件实现。
[0034]在上述网络装置中,每一物理层控制单元21用于连接一个RS-422收发器30,并通过该RS-422收发器30来级联其他模块,从而形成菊花链拓扑结构(在该拓扑结构中,每一节点均包括一个网络装置)。物理层控制单元21用于实现与RS-422收发器30的接口功能,例如在发送端完成并行数据的串行化、数据编码,并集成时间信息于数据中;在接收端完成时间信息的提取,串行数据的采样、串并转换以及数据的译码工作。链路层控制单元22用于完成端口环路的控制,例如闭合物理层端口以实现数据流的转发或是环回,实现数据转发,完成链路层的各种状态管理,完成链路层帧的解析和处理等。此外,链路层控制单元22还提供数据内存空间区,以完成非周期数据(sdo)、周期数据(pdo)和寄存器单元的映射,实现数据链路层和应用层的数据交互。
[0035]为避免链路断开或链路中设备抖动而影响通信的稳定性,上述网络装置具有链路自动检测功能。具体地,上述链路层控制单元22包括环路控制子单元221,每一物理层控制单元21包括链路检测子单元。其中,链路检测子单元用于在总线空闲(即链路中无数据传输)时监听来自连接的RS-422收发器30的诊断脉冲,并在预设时间内连续接收到诊断脉冲时确认连接建立、否则确认连接断开;环路控制子单元221仅在链路检测子单元确认连接建立时将对应的物理层控制单元所连接的上一级或下一级节点加入链路。链路层控制单元22的数据收发子单元222仅在连接到RS-422收发器30的上一级节点或下一级节点位于链路时,才将数据转发到该上一级节点或下一级节点,否则将数据环回到链路中的另一节点。
[0036]通过上述方式,网络装置20在连接线路空闲状态下,不断地以设定频率产生诊断脉冲(某一固定频率信号),与该节点的网络装置20连接的另一节点在固定时间窗内如果没有监听到该诊断脉冲,则判断链路断开,同时自动闭合对应的端口,数据不再级联到下一级节点,而是直接通过本网络装置转发给上一级节点。在链路断开的情况下,节点会不断监听连接线路上的脉冲群,在固定的时间窗宽内连续检测到诊断脉冲时,则判断链路通信建立。
[0037]特别地,每一物理层控制单元21还包括总线状态侦听子单元和特征脉冲发送单元,其中总线状态侦听子单元,用于在总线状态空闲时向连接的RS-422收发器30发送空闲码(idle码),并通过RS-422收发器30发送到其连接的另一网络装置20 ;而特征脉冲发送单元则在接收到空闲码时不断地以设定频率向连接的RS-422收发器30发送诊断脉冲,并通过RS-422收发器30发送到其连接的另一网络装置20 (即级联的上一或下一节点)。
[0038]如图3所示,是本发明基于RS-422的工业总线网络系统实施例的网络拓扑。该系统包括主节点40和多个从节点50,上述主节点40和从节点50分别包括上述的网络装置20,且主节点40和多个从节点50的网络装置20经由RS-422收发器30连接成菊花链;主节点40的网络装置通过读取各个从节点50的网络装置的环路控制子单元的链路状态获取链路的拓扑结构,以进行数据发送。
[0039]这样,主节点40的数据经由从节点50转发到目的节点,且主节点40和从节点50通过逻辑寻址方式完成周期性数据(Pdo)的发送和接收。具体地,主节点40和从节点50的网络装置20的链路层控制单元22包括数据收发子单元222 ;主节点的数据收发子单元222将发送给所有从节点50的周期性交互数据封装到同一数据帧并发送到链路中,且发送给每一从节点50的周期性交互数据分别位于该数据帧中的预设位置;每一从节点50的数据收发子单元222接收到数据帧后,从数据帧的预设位置读取周期性交互数据或写入周期性交互数据到数据帧的预设位置,并将数据帧转发到链路中的其他从节点50。
[0040]上述基于RS-422的工业总线网络系统,通过逻辑寻址,所要访问的从节点50共用帧头、帧尾、帧控制场、校验场,因此在多从节点50中,相对地缩短了通信周期,提高了通信效率。
[0041]该基于RS-422的工业总线网络系统还通过广播寻址、自增寻址、节点寻址的方式完成非周期数据(sdo)发送和接收。具体地,主节点40和从节点50的网络装置20具有一个数据缓冲区,且该主节点40和从节点50的数据收发子单元222通过握手机制实现非周期性数据的交互。
[0042]此外,主节点40和从节点50的网络装置20还分别包括状态管理单元,其中从节点50的状态管理单元用于完成本节点的链路状态管理;主节点40的状态管理单元通过自增寻址方式设置各个从节点50的节点地址并根据各个从节点50的特征信息配置各个从节点的通信参数。
[0043]如图4所示,是本发明基于RS-422的工业总线通信方法实施例的流程示意图,该方法包括以下步骤:
[0044]步骤S41:主节点和多个从节点的物理层分别在总线空闲时监听来自连接的RS-422收发器的诊断脉冲,上述主节点和从节点经由RS-422收发器连接成菊花链。
[0045]步骤S42:每一节点判断是否在预设时间内连续接收到诊断脉冲,若在预设时间内连续接收到诊断脉冲,则执行步骤S43,否则执行步骤S44。
[0046]步骤S43:连续接收到诊断脉冲的节点确认连接建立,该节点的物理层在确认连接建立时将连接的节点加入链路(若先前未加入链路)。
[0047]步骤S44:未连续接收到诊断脉冲的节点确认连接断开,将连接的节点从链路中删除(若先前该节点在链路中)。
[0048]在各个节点完成链路管理后,主节点通过读取各个从节点的链路状态获取链路的拓扑结构。
[0049]在链路拓扑结构获取之后,主节点将发送给所有从节点的周期性交互数据封装到同一数据帧并发送到链路中,且发送给每一从节点的周期性交互数据分别位于该数据帧中的预设位置;从节点在接收到数据帧后从预设位置读取周期性交互数据或写入周期性交互数据到数据帧的预设位置,并将数据帧转发到链路中的其他从节点。对于非周期性数据,主节点和从节点分别具有一个数据缓冲区,且该主节点和从节点通过握手机制实现非周期性数据的交互。
[0050]在数据收发之前,还可包括链路管理步骤:多个从节点分别完成本节点的链路状态管理;主节点通过自增寻址方式设置各个从节点的节点地址并根据各个从节点的特征信息配置各个从节点的通信参数。
[0051]如图5、6所示,是上述基于RS-422的工业总线系统及通信方法应用到机器人控制系统的示意图。机器人控制器61通过RS-422收发器和多个外设之间进行数据交互,上述外设具体可包括1模块65、AD模块64、DA模块63、编码器模块62。
[0052]该机器人控制系统提供了冗余的网络拓扑,结合物理层的链路自动检测功能,能够有效的保证链路不因某一个设备链路失效而影响系统通信的正常进行。
[0053]在上述系统运行时,具体包括以下过程:
[0054](I)系统电源接通后,系统进入初始化(INIT)阶段。机器人控制器61和各个外设中的网络装置的物理层不断的以一定频率发送脉冲群,连接方在固定的时间窗内如果没有接监听到该脉冲,则判断链路链接失效,同时链路层自动闭合对应的端口。在链路失效的情况下,物理层不断监听连接线路的脉冲群,当在固定的时间窗内连续监听到某一频率脉冲时,则判断链路建立,同时链路层打开对应的端口。基于此
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1