一种IO总线之间的0切换冗余系统
文献发布时间:2024-04-18 20:01:30
技术领域
本发明涉及工业控制系统通信技术领域,尤其涉及一种IO总线之间的0切换冗余系统。
背景技术
在工业控制系统中,控制器模块周期性的采集IO模块的实时数据,对数据运算处理后将结果周期性的输出到IO模块。控制系统IO总线用于系统实时数据、控制信号、监控及报警等数据传输,其安全可靠性极其重要,因为它不仅关系到生产效率,甚至于生命和财产安全。在DCS控制系统中,通常采用“冗余”的措施进一步提高其安全可靠性。
目前的工业控制系统中,IO扩展常用的方案是将控制器与通信模块统一连接到一个交换机形成星型结构。通信模块与同机架的IO模块通过本地IO总线连接。但该方案需要应用较多的交换机及通信模块,成本较高,且数据经交换机及通信模块转发,延时较大。因此急需一个能够提供低成本的IO扩展方案,且能够保证IO总线的安全可靠性,避免由于冗余数据造成芯片内存资源耗损。
发明内容
本发明的目的是为了解决上述现有技术中存在的缺点,而提供了一种基于LVDS总线及总线扩展模块的IO总线之间的0切换冗余系统,以IO总线环形总线结构,包括:若干机架、主控制模块、若干通讯模块、若干IO模块、若干BLVDS总线和若干LVDS总线;
每个所述主控制模块或者所述通讯模块通过所述BLVDS总线与若干所述IO模块连接形成一路BLVDS总线网络结构,每路所述BLVDS总线网络结构集成在一个所述机架上;
所述主控制模块与若干所述通讯模块通过所述LVDS总线连接形成LVDS环形网络结构。
进一步地,每个所述BLVDS总线负责对应所述机架内的IO总线数据传输,所述LVDS总线负责所述机架之间的数据传输。
进一步地,所述主控制模块负责整体数据传输权限控制,给所有所述通讯模块以及所述IO模块分配对应的节点地址;
所述通讯模块负责接受来自所述主动控制模块的LVDS数据并且下发至所述通讯模块所在的所述机架上的IO模块中,同时也负责所述通讯模块所在的所述机架上的IO模块数据通讯权限打开时,接收所述IO模块的数据传输至所述主控制模块中;
所述IO模块负责工业控制系统IO总线上实时数据的采集、发送操作。
进一步地,第一路所述LVDS总线将所述主控制模块或所述通讯模块的LVDS总线发送端和下一个所述主控制模块或所述通讯模块的LVDS总线接收端按照顺时针方向依次连接,形成一组顺时针环形网络结构;第二路所述LVDS总线将所述主控制模块或所述通讯模块的LVDS总线发送端和下一个所述主控制模块或所述通讯模块的LVDS总线接收端按照逆时针方向依次连接,形成一组逆时针环形网络结构。
优选地,所述IO总线数据通过所述BLVDS总线网络结构和所述LVDS环形网络结构实现在不同机架上传输,环形网络帧由目的地址、源地址、序号、长度以及数据组成。
更优地,所述目的地址作为所述主控制模块和所述通讯模块是否为本地节点地址的判断依据,同时决策执行接收数据包或转发数据包的操作:
当决策接收数据包时,将数据存储与对应的数据缓存区内进行处理;
当决策转发数据包时,无需继续储存数据,即可将数据包通过该总线发送端传输出去。
其次,所述主控制模块和所述通讯模块在接收到所述BLVDS总线上传输的数据时,将需转发的数据包传输至对应机架上的所述LVDS总线发送端,往所述第一路LVDS总线以及所述第二路LVDS总线两个方向发送;
所述主控制模块和所述通讯模块在接收到所述LVDS总线数据时,将需转发的数据包传输至对应机架上的所述LVDS总线发送端以及BLVDS总线数据发送端,完成环形数据包传递以及本地机架数据包传递的操作,保证数据包冗余传递。
更进一步地,每个所述模块通过序号建立冗余数据过滤窗口,实现重复序号的数据包丢弃操作。
其中,通过将储存深度设置为256bit、将储存位宽设置为序号位宽32bit来建立所述冗余数据过滤窗口的储存区域,将收到的数据包内的所述源地址作为读写地址,将对应源地址的所述冗余数据过滤窗口作为读写数据,实现重复数据无需再一次接受。
与现有技术相比,本发明的有益效果是:
(1)本发明基于LVDS总线及总线扩展模块提出一种IO总线之间的0切换冗余方法,能够避免经典IO扩展方案造成的高额成本,在其中一路通讯总线断连时通过另一路通讯总线实现0切换冗余数据传输,保证IO总线的安全可靠性;
(2)本发明针对环形总线上传输的冗余数据,提出冗余数据过滤机制,避免环形总线上由于冗余数据包造成的芯片内存资源损耗;
(3)本发明提出IO总线环形总线结构,能够实时转发非本地节点的数据包,避免由交换机、通讯模块连接造成的转发延迟;
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
在附图中:
图1为本发明一种IO总线之间的0切换冗余系统结构图;
图2为本发明一种LVDS总线数据帧结构;
图3为本发明一种冗余数据过滤窗口示例图。
具体实施方式
使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
目前IO扩展常用的方案是控制器与通信模块统一连接到一个交换机形成星型结构。通信模块与同机架的IO模块通过本地IO总线连接。但该方案需要应用较多的交换机及通信模块,成本较高,且数据经交换机及通信模块转发,延时较大。因此本实施例提出了基于LVDS总线及总线扩展模块的一种IO总线之间的0切换冗余系统,以IO总线环形总线结构,能够提供低成本的IO扩展方案,且保证了IO总线的安全可靠性。
具体实施例如下:
实施例1
如图1所示,本实施例提供的一种IO总线之间的0切换冗余系统的技术方案包括:四个机架、主控制模块、三个通讯模块、若干IO模块、若干BLVDS总线和两路LVDS总线;
每个所述主控制模块或者所述通讯模块通过所述BLVDS总线与若干所述IO模块连接形成一路BLVDS总线网络结构,每路所述BLVDS总线网络结构集成在一个所述机架上;
所述主控制模块与若干所述通讯模块通过所述LVDS总线连接形成LVDS环形网络结构。
总体的系统结构包括多个机架,机架上主控制模块或者通讯模块和若干个IO模块通过BLVDS总线连接,主控制模块与通讯模块之间通过LVDS总线连接。
其中,BLVDS(Balanced Low Voltage Differential Signaling),即平衡低压差分信号传输,一种用于高速数据传输的电路技术;IO总线用于工业环境下的控制系统中连接输入输出设备的通信接口标准或协议。
具体地,在本实施例中,BLVDS总线负责机架内IO总线数据传输;LVDS总线负责机架与机架之间的数据传输;主控制模块负责整体数据传输权限控制;通讯模块负责接收来自主控制模块的LVDS数据并且下发至所属的IO模块中,或在下属IO模块数据通讯权限打开时,接收下属IO模块的数据并传输至主控制模块中;IO模块主要负责工业控制系统IO总线上,实时数据的采集、发送等操作。
此外,机架上模块的数据传输权限由主控制模块分配,以保证IO总线上数据不会相冲突,确保总线的可靠性;主控制模块将会给所有通讯模块以及IO模块分配对应的节点地址,以保证数据包在传输时能够被对应目的地址节点模块准确接收。
进一步地,第一路所述LVDS总线将所述主控制模块或所述通讯模块的LVDS总线发送端和下一个所述主控制模块或所述通讯模块的LVDS总线接收端按照顺时针方向依次连接,形成一组顺时针环形网络结构;第二路所述LVDS总线将所述主控制模块或所述通讯模块的LVDS总线发送端和下一个所述主控制模块或所述通讯模块的LVDS总线接收端按照逆时针方向依次连接,形成一组逆时针环形网络结构。
具体地,如图1所示,主控制模块的LVDS总线A发送端连接到机架2上通讯模块LVDS总线A的接收端,主控制模块LVDS总线A接收端来自于机架3上通讯模块LVDS总线A的发送端,以此类推,LVDS总线A形成一组顺时针的环形网络结构;主控制设备的LVDS总线B发送端连接到机架3上通讯模块LVDS总线B的接收端,主控制模块LVDS总线B接收端来自机架2上通讯模块LVDS总线B的发送端,以此类推,LVDS总线B形成一组逆时针的环形网络结构。
其中,在本实施例中,机架内实现2路BLVDS总线进行数据传输,机架之间则通过2路LVDS环形网络结构进行数据传输;由主控制模块以及通讯模块并行处理环网数据,保证数据的安全可靠。
进一步地,以该环形网络结构,IO总线数据能够在不同机架上传输,如图2所示,环网数据帧以目的地址、源地址、序号、长度以及数据组成。
具体地,主控制模块和通讯模块以目的地址是否为本地节点地址为判断依据,决策执行接收数据包或转发数据包的操作;决策接收数据包时,将数据存储与对应的数据缓存区内进行处理;决策转发数据包时,无需继续储存数据,即可将数据包通过该总线发送端传输出去。
此外,所述主控制模块和所述通讯模块在接收到所述BLVDS总线上传输的数据时,将需转发的数据包传输至对应机架上的所述LVDS总线发送端,往所述第一路LVDS总线以及所述第二路LVDS总线两个方向发送;
所述主控制模块和所述通讯模块在接收到所述LVDS总线数据时,将需转发的数据包传输至对应机架上的所述LVDS总线发送端以及BLVDS总线数据发送端,完成环形数据包传递以及本地机架数据包传递的操作,保证数据包冗余传递。
其中,在本实施例中,当环网总线上其中一条LVDS总线因未知原因导致断连时,无需切换,直接由另一条LVDS总线继续数据通讯,不需要考虑切换时间,确保模块正常通讯。
进一步地,为了保证工业控制系统IO总线数据的安全性,在模块之间进行冗余数据传输,而当冗余数据传输已经接收并处理过时,重复的数据包无需再一次接收,模块通过序号,建立冗余数据过滤窗口,实现重复序号数据包丢弃的操作。
具体地,模块通过将储存深度设置为256bit、将储存位宽设置为序号位宽32bit来建立所述冗余数据过滤窗口的储存区域,将收到的数据包内的所述源地址作为读写地址,将对应源地址的所述冗余数据过滤窗口作为读写数据,实现重复数据无需再一次接受。
如图3中示例1所示,当模块接收到某一节点模块的数据包时,首先以该节点地址为内部冗余数据过滤窗口储存区域的读地址,读出对应节点地址的冗余数据过滤窗口数据,若当前序号落在冗余数据过滤窗口内,则表示该数据包已被接收过,可丢弃,然后同步保持或更新冗余数据过滤窗口数据;如图3中示例2所示,当模块接收的数据包序号,位于过滤窗口之外,则表示该数据包未曾接收过,可保留,并且同步更新冗余数据过滤窗口数据。
不同于通常的星型结构,本实施例通过LVDS总线实施的环形网络结构,无需多余的交换机进行连接,成本较低,并且数据延迟较低。
同时,本发明实施的0切换冗余方法,能够保证通讯总线发生断连或延迟时,数据总线迅速切换,保证IO总线上模块连接以及数据传输的安全性、可靠性。
此外,本发明实施的冗余数据过滤机制,有效的避免了接收模块芯片内存资源的损耗,提高节点模块的数据收发能力。
最后应说明的是:以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
- 用于机械化防治的农用喷雾助剂
- 一种农业机械玉米收割玉米须分离收获机
- 一种智能农业机械玉米收割机
- 一种用于收割罗布麻的农用机械
- 用于农用机械的操纵系统及联合收割机