专利名称:用于在分布式i/o系统中实现冗余网络接口模块的方法和系统的制作方法
技术领域:
本发明一般涉及工业自动化网络中的分布式I/O系统。更具体地,本发明涉及用于在分布式I/o系统中的单底板总线上实现冗余备用主网络接口模块的方法和系统。背景可编程控制器例如可编程逻辑控制器(PLC)可用于监控来自各种输入点(S卩,输入传感器)的输入信号,输入信号报告在控制过程中出现的事件和条件。例如,PLC可监控这样的输入条件例如电机速度、温度、压力、容积流量等。PLC具有储存在其存储器内指示PLC 在遇到特定的输入信号或条件时采取什么行动的控制程序。响应于由输入传感器提供的这些输入信号,PLC获取并产生输出信号,其被传送以通过各种输出设备例如执行器和继电器的LC输出点来控制过程。例如,输出信号可由PLC提供以使输送机加速或减速、旋转机器人手臂、打开或关闭继电器、升高或降低温度以及许多其他可能的控制功能。上面提到的输入点和输出点通常分别与输入模块和输出模块相关联。输入和输出模块在本文统称为“I/o模块”。本领域的技术人员可选地将这样的I/O模块称为“I/O卡”或“I/o板”。I/O模块通常适于插入位于底板或由PLC提供的其他附接系统上的相应的插槽中。插槽通过使插入插槽的任何I/o模块耦合到中央处理单元(CPU)的主总线来耦合在一起。CPU本身可以位于卡上,该卡适于插入PLC的底板上的专用插槽中。在许多控制系统中,PLC被布置在主/从网络中,主/从网络包括主PLC和可以包括其它PLC或设备的多个远程从单元。在这种类型的网络中,主PLC控制其自己的I/O连接点并且也控制远程从单元的相应的I/O连接点。来自主PLC的控制命令从数据获取,该数据从远程从单元获得,该数据从连接到每个远程从单元的I/O模块获得。为满足机器制造商和用户的需求,自动化架构已被分散或分布,同时给予与集中式系统可比较的性能。例如,ADVANTYS STB分布式I/O系统是开放式模块化输入/输出系统,它使设计由主控制器通过通信网络如以太网/IP现场总线协议管理的自动化孤立系统变成可能。ADVANTYS STB分布式I/O系统是马萨诸塞州的North Andover的One HighStreet的施耐德自动化公司的产品。(ADVANTYS是施耐德电气公司的商标。)通常靠近机器安装的这些自动化孤立系统有助于减少传感器和执行器的时间和布线成本,同时提高系统的可用性。孤立部件是装配在一个或多个DIN轨道(B卩,标准化轨道)上的电子模块。称为段的这些模块集群将底板总线从每个孤立系统的开端部分运送到末端。孤立总线向兼容模块提供配电、信号检测和电源管理。自动化孤立系统可以包括一个或多个段,这些段包括网络接口模块(NM)、配电模块(PDM)以及诸如I/O模块、总线扩展模块、孤立总线终端和孤立总线扩展的各种架构的额外模块。
孤立系统通常使用用户接口来配置。NM负责向I/O模块分配地址并维持I/O模块的过程映像。NIM和I/O模块都可以在I/O模块中参于基于它们的相对物理位置使用自动寻址协议自动获得它们的地址。NIM负责维持I/O模块的过程映像,这基于I/O模块的地址。NM也代表在单总线上实现的分布式孤立系统上的单个故障点。如果NM出故障或需要被拆除和更换,则与NIM相关联的所有I/O模块停止工作,作为结果,由I/O模块控制的任何自动化部件本质上被断开。在诸如工业自动化系统的网络中,可靠性是至关重要的。例如,在工厂中,如果I/O孤立系统作为NM故障的结果而变得不运转,则生产线将停止并且设备可能被损坏。在这样的环境中,有故障的NM的恢复必须是自动且透明的。因此,需要一种为在单总线分布式I/O系统上的NM提供自动恢复的方法,NM可以对网络上的I/O模块透明地接管对孤立系统的控制。 发明概述本文描述的发明提供了用于在分布式I/O系统中的单总线底板网络上实现冗余NIM作为总线主控器的方法和系统。根据本发明的一个实施方式,第一NM初始化为主要主控NM以及第二 NIM初始化为从属主控NM。所述从属NIM在备用模式下保持在所述总线上并维持与主要[M的配置文件连续同步的配置文件。因此,如果所述主要NIM放弃控制、出故障或必须脱机,则对正被控制的I/O模块透明地,所述从属NM可以立即接管对所述系统的主控权,即“无扰切换”。根据本发明的另一实施方式,如果从属NIM确定主要NIM未能初始化,则所述从属NIM可初始化为临时的主要主控NM。当原始的主要NM能够初始化时,所述原始的主要NIM可以用作临时的冗余NM,以防临时的NM设备出故障。根据本发明,为工业自动化环境提供了一种分布式I/O系统,其包括至少一个I/O模块;第一网络接口模块(NIM),其通过单总线网络耦合到所述I/O模块并适于将从所述I/O模块提供的信息转换成待提供给上游控制器的另一格式,所述第一 NIM适于用作所述总线上的主要主控NM;以及第二 NM,其通过所述单总线网络耦合到所述I/O模块和所述第一 NM,并适于将从所述I/O模块提供的信息转换成待提供给上游控制器的另一格式,所述第二[M适于用作总线上的从属主控NM,并且还适于在所述主要主控NM出故障时接管所述总线的主控权而无需重置所述系统。由于所述主要NIM和所述第二 NM在所述系统的整个正常操作期间保持连续同步,所述第二 NM初始化为所述总线上的新的主要主控NM是控制的无扰转移。根据本发明的另一方面,为工业自动化环境提供了一种在分布式I/O系统中的单个总线上实现冗余网络接口模块(NM)的方法,所述系统具有第一NM和第二NM以及连接到所述总线的I/O模块,所述方法包括以下步骤Ca)在所述第一 NIM处确定所述第一 NIM是所述总线上的主要主控NM ; (b)在所述第二 NIM处确定所述第二 NIM是所述总线上的从属主控NM ; (c)实时地维持所述第一 NM和所述第二 NM之间的同步设备配置;(d)在所述从属NIM处确定所述主要主控NM不再是起作用的;以及(e)由所述第二 NIM接管所述总线的主控权而无需重置所述系统总线。由于在所述第二 NM接管所述总线的主控权时总线重置通信命令没有被发出并且所述总线上的所述设备没有被重启,切换包括从所述主要主控NIM到所述从属主控NIM的无扰转移。
附图
简述本发明作为例子在下图中示出并且不被附图限制,在附图中图IA描绘根据现有技术的具有单总线底板的单NIM分布式I/O系统;图IB描绘根据现有技术的图IA的示例性NM的配置;图2描绘本发明的实施方式可被执行的具有单总线底板的示例性分布式I/O系统;图3描绘根据本文描述的技术的冗余NIM的正常起动序列;图4描绘根据本文描述的技术的主要NM故障序列;图5描绘根据本文描述的技术的在起动时的主要NIM故障序列。
本发明的详细描述图IA描绘根据现有技术的分布式I/O系统100,如通常在工业自动化设施中发现的。系统100包括单个网络接口模块或NM 102。PLC上游(未显示)通过现场总线连接到NIM 102并与NM 102通信。单个NM 102通过单总线网络106连接到其底板并在其底板上通信。网络106可使用任何适当的总线协议——包括众所周知的CANopen协议——来实现。输入/输出或I/O模块110、112和114也连接到底板总线106并能够通过总线106与NIM 102通信。根据实现的具体自动化环境,可以有多于或少于三个的I/O模块。如也本领域中已知的,NM 102可用如图IB所示的各种常规部件实现。NM 102至少包括在NIM的前面与PLC通信的以太网Ι/P插孔122和在NIM的后面用于接收和发送数据业务的底板端口 124。NIM 102还至少包括中央处理器126、系统存储器128和系统总线130,系统总线130耦合不同的系统部件,包括插孔/端口 122和124、中央处理器126和系统存储器128。系统总线130可以是几种类型的总线结构中的任一种,包括存储器总线或者存储器控制器、外围总线和使用各种总线架构中的任一种的局部总线。系统存储器128的结构对于本领域的技术人员来说是众所周知的,并可包括储存在只读存储器(ROM)中的基本输入/输出系统(BIOS)和储存在随机存取存储器(RAM)中的一个或多个程序模块如操作系统、应用程序以及程序数据。此外,NIM 102可包括用于与其他类型的计算机可读介质通过接口连接的驱动器。与图IA的单NM配置相反,本发明的方面提供用于在分布式控制系统如工业自动化网络中实现冗余NIM的方法和系统。图2描绘本发明的实施方式可被执行的示例性单总线网络。分布式I/O系统200同时包括主要NM 202和冗余或从属NM 204。主要NM 202和从属NM 204都通过单总线网络106连接到系统200的底板并在底板上通信。如将在下面详细解释的,根据本发明的一个实施方式,主要NIM 202初始化为主要底板主控NIM,以及从属NM 204也初始化为从属底板主控NM,但是在从属或备用模式中,如果主要主控NIM 202出故障,则从属NM 204准备接管系统200的主控权。在图2中,底板网络106可使用任何总线协议——包括CANopen协议——来实现。I/o模块110、112和114也连接到底板总线106,并能够通过总线106同时与主要NIM 202和从属NM 204通信。根据实现的具体自动化环境,可以有多于或少于三个的I/O模块。此外,根据本发明的实施方式,可以有在主要NM 202和冗余NM 204之间的第二通信链路208。第二通信链路208可使用网络技术如以太网实现,并可用于直接在与底板网络106分离的两个NM 202和204之间的同步和其他通信。
本领域的技术人员将认识到,现场总线网络是可用在工业自动化和过程控制系统中的控制和/或计算机网络。CANopen是常常用于分布式控制系统中的通信的协议。在自动化(CiA)非营利组织中的CAN公布了在自动化行业中用于实现CANopen协议的标准。本文提到的CANopen寻址技术和标准在自动化(CiA)标准草案CiA 301中的CAN中被进一步描述。本领域的技术人员将进一步认识到,本发明的方面可以使用支持在物理上或逻辑上被构造为总线的网络,即,每一节点必须听到在网络上交换的所有消息的网络的其他网络协议来实现。可用于实现本发明的方面的其他网络协议的例子包括DeviceNet和J1939或者其他基于CAN的协议、基于EIA 485的协议例如Modbus串行(Modbus是施耐德电气公司的注册商标)和执行器传感器接口(ASi)。图3描绘根据本发明的一个实施方式的冗余NM的正常起动序列。在图3中,NM202坐落于总线上的NM 204的左边(上游),并因此用作主要NM。NIM 204用作从属或冗余NIM。如图3所描绘的,设备202和204可控制I/O模块110,I/O模块110被进一步定位到总线上的从属NM 204的右边(下游)。根据描绘的实施方式,在事件302时,主要NM202在它接收到外部逻辑低信号时初始化,指示它初始化为总线上的主要NM。此外部信号可来自作为分布式I/O系统的一部分的高阶控制器如PLC或附接到NM 202的其他设备。主 要NM的初始化也可被实现为其左边的接地自动寻址消息,让主要NM知道它是总线上最左边的设备,并因此根据一个实施方式将充当主要NM。在初始化后,主要NM可在事件304时开始将自动寻址消息发送到总线上的主要NM的右边(下游)的其余设备。当从属NM 204在事件304时看到在总线上上游的积极的自动寻址消息时,右边的NM 204在事件306时将该消息传递到下游的I/O模块,并且也知道在事件308时将其本身初始化为总线上的从属NM。可选地,从属NM 204可在接收到外部逻辑高信号时初始化,指示它作为总线上的从属NIM来启动。在初始化为冗余NM之后,冗余NM 204可听到由主要NM 202和I/O模块发送和接收的消息。这些消息在图3中被示为事件318时的输出过程数据和事件320时的输入过程数据。冗余NM 204可以在总线上转发业务,并且也可保存消息中包含的信息(例如关于I/O模块的地址信息)以保持实时配置文件。总线业务也可包括I/O模块的识别,例如在事件310时从识别I/O模块110发送的CANopen模块识别消息。此外在初始化时,从属NIM 204可在事件312时通过发送启动消息例如CANopen启动消息来通知主要NM 202其在总线上的存在,该消息也可传达NIM 204的唯一节点地址。根据本发明的技术,主要NM 202和从属NM 204每个都有两个不同的地址,SP,共享的节点地址和唯一的节点地址。如果根据CANopen协议被实现,则NM 202和204可共享NM节点地址127,以及NM也可每个都有唯一的节点地址分别是节点地址125和节点地址126。这种寻址方案帮助主要和冗余NM完成控制的透明或“无扰”转移,如下所述。上述方法论利用底板总线网络的方面。虽然只有一个[M可以在给定时间控制着总线(即主控),但是两个NM都有听到总线业务的能力(和义务,如果使用CANopen协议来实现)。这允许有相同配置的输入对象字典的两个NIM都维持实时同步的字典。换句话说,在优选的实施方式中,主要NM 202和从属NM 204都保持与总线业务的每个事件连续同
止/J/ O本发明的方面进一步规定通过复制来维持主要和从属NM 202和204上的相同配置文件。虽然两个NM都可在总线上同时收听并因此能够独立地维持当前的配置文件,但是NM之间的分离通信链路允许主要NM 202将配置文件——包括所有的对象字典——的副本发送到从属NM 204。回来参考图3,在事件316时,主要NM 202可通过分离的通信链路208或通过底板总线106复制其配置。然而,配置文件的复制也可在外部发生。例如,在使用以太网/IP协议实现的现场总线网络中,NM可从高阶控制器如PLC接收命令。在这种情况下,主要和从属NIM都可同时从这个外部控制器接收到输出命令,用于同步。根据本文所述的技术,不同的方法可用于将控制从主要NIM转移到从属NM。根据一个实施方式,如果主要NM知道它将被取下,则主要NM可将消息发送到从属NM以转让控制。然而,在突然的故障的情况下,主要NIM可能不能够发送这样的消息,而可能采用上述技术。在另一实施方式中,CANopen或其他协议的心跳消息能力可以用来确定主要NM 是否不再是可用的以及从属NIM应接管总线的主控权。图4描绘当主要NM 202出故障或脱机时从属NM 204可如何接管对总线的主控权。根据此实施方式,如事件402和404所示的,NM 202和204使用它们自己的不同的唯一节点地址来交换心跳消息。然而,为了防止在总线繁忙时的时间期间的错误跳闸,NIM之间的心跳只需要由从属NM 204准时传送,因为如果主要NM 202在事件406时正将CANopen消息如CANopen心跳消息传送到I/O模块,则从属NM 204知道主要NM是运行中的。然而如果主要NM在指定时间间隔内没有传送任何其他信息,主要NM 202可以向从属NM 204传送心跳消息以宣告它仍然是运行中的。例如,根据图4的实施方式,主要NM 202在事件406时传送CANopen心跳消息、在事件408时传送输出过程数据以及然后在事件410时在NMS之间发送心跳消息。主要NM202定期接收输入过程数据,这被示为事件412。从属NM 204在事件414时返回心跳消息并等待来自主要NM 202的后续消息。当从属NM 204在事件416时没有接收到心跳消息或来自主要NM202的其他消息时,从属NM 204可以立即接管总线的主控权。从属NM204可然后在事件418时接管CANopen心跳消息的传送或在事件420时其他心跳消息到总线上的I/O模块的传送。根据图4的实施方式,为实现透明,在NM之间发送的心跳消息之间的间隔可以比发送到I/O模块的CANopen心跳消息快,使得从属NM可以在I/O模块出故障之前接管主控。这个NM转换是真正“无扰的”,即,主要NM的断开和从属NM取代主要单元的连接被执行,使得它不影响分布式I/O系统的行为,除了可能在当前执行的操作中引入的短时间延迟以外。不需要重启和重新初始化该系统,或者强制通信网络的主复位,或关闭底板总线106的操作。(如本文所用的,“重启”包括“热启动”程序)。上游PLC甚至不必知道发生的转移,并且来自下游I/O模块的数据的转移不会受到干扰。分布式I/O系统的操作继续是不间断的,从属NM在422发送输出过程数据并在424接收输入过程数据。图5描绘根据本发明的另一实施方式的异常起动情况。在图5的例子中,预期的主要NM 202 (在左边)未能初始化,因此在指定的时间间隔之后,从属NM 204 (在右边)在事件502时初始化为主要NM。在初始化后,从属NM 204在一段时间内充当系统中的唯一 NM,在事件504-508时执行自动寻址、模块识别和配置。在从属NM 204已被初始化为主要NM之后,左边的NM 202在事件510时尝试初始化为主要NM,并在事件512时发送标准自动寻址消息。根据这个实施方式,当右边的NM 204 (临时的主要NM)检测到左边NM的存在时,右边的NM 204例如通过在事件516时使用地址127发送CANopen启动消息来将启动主要挑战发送到左边的NM 202。在这种情况下,当右边的NM 204对启动消息挑战使用NM节点地址127而不是其从属唯一地址126时,在事件518时左边的NM 202明白它必须初始化为冗余从属NM,而不是初始化为主要NM。一旦左边的NM准备同步,它就在事件522时(使用其从属节点地址)将启动从属消息发送到右边的NM 204。在事件524时,NIM可使用先前所描述的技术之一使它们的设备配置同步,使得这两个NIM有相同配置的对象字典。在整个这个启动过程中,右边的NM 204在事件514、520、526和528时维持总线的主要主控并执行输出过程数据和输入过程数据功能,而左边的NM 202保持从属或冗余的作用。本发明提供了额外的优势,因为在分布式I/O系统200上请求输入数据并控制输出数据的过程控制器如PLC并不需要在主要NM出故障或在从属NIM接管来自主要NM的主控权时被编程来干预。不同于来自从属NM的指示它已接管底板的主控权的报警消息的潜在意识,PLC控制逻辑不负担管理切换。此外,本发明的冗余NM实现不要求PLC具有任何额外的软件或特殊配置来管理或适应切换。另一优势是,因为两个NM具有相同配置的对象字典,没有特别为主要或次要角色配置任一NM所需的额外努力。根据本文所述的本 发明的方面,从主要NM到从属NIM的过渡对附接的I/O模块应该是无扰或透明的,这本质上意味着通信总线不能被临时关闭,如否则重置通信命令或重启程序所需要的。本领域的技术人员将认识到,上述技术可在各种基于总线的联网系统上并使用各种传输介质来实现。基于有线、光纤电缆、无线或其他传输介质的网络可利用本发明。应该进一步注意,本文已经描述了本发明的某些方面,但是本发明不限于所述的实施方式。在阅读或实践本发明时,本领域的技术人员将认识到由本发明所体现的额外变化。下面的权利要求展示本发明的广度。
权利要求
1.一种针对工业自动化环境的分布式i/o系统,包括 至少一个I/o模块; 第一网络接口模块(NIM),其通过单总线网络耦合到所述I/O模块,并适于将从所述I/0模块提供的信息转换成待提供给上游控制器的另一格式,所述第一 NIM适于用作所述总线上的主要主控NM ; 第二 NIM,其通过所述单总线网络耦合到所述I/O模块和所述第一 NIM,并适于将从所述I/O模块提供的信息转换成待提供给上游控制器的另一格式,所述第二 NIM适于用作所述总线上的从属主控NM,并且还适于在所述主要主控NM出故障时接管所述总线的主控权而无需重置所述系统。
2.根据权利要求I所述的分布式I/O系统,其中,所述第二NIM适于初始化为所述总线上的从属主控NM,并且将关于其在所述总线上的存在的消息传送到所述主要主控NM。
3.根据权利要求2所述的分布式I/O系统,其中,所述第二NIM还适于确定所述第一NIM是否不再是起作用的,并且基于这样的确定初始化为所述总线上的新的主要主控NM。
4.根据权利要求3所述的分布式I/O系统,其中,所述第二NIM初始化为所述总线上的所述新的主要主控NIM是控制的无扰转移。
5.根据权利要求I所述的分布式I/O系统,其中,所述第一NIM和所述第二 NIM都在所述系统的整个正常操作期间保持连续同步。
6.一种用于工业自动化环境中的分布式I/O系统的网络接口模块(NM),所述网络接口模块适于作为冗余NM与另一 NIM —起使用,其中,所述分布式I/O系统在单个总线上实现,这两个NIM都适于作为通过所述总线耦合到至少一个I/O模块的主控NM,所述NIM包括 处理器; 存储器,其耦合到所述处理器,其中,所述存储器包含计算机可执行指令以执行以下行为 Ca)将所述NIM初始化为所述总线上的从属NM ; (b)将关于所述从属NIM在所述总线上的存在的消息发送到所述主要NM; (c)实时地维持与所述主要NM的同步设备配置; (d)确定所述主要NIM不再是起作用的;以及 (e)基于这样的确定,初始化为所述总线上的新的主要主控NM而无需重置所述系统。
7.如权利要求6所述的NM,其中,所述存储器还包含计算机可执行指令以执行复制所述主要NIM的配置的行为。
8.如权利要求7所述的NM,其中,复制所述主要NM配置包括通过所述主要NM和所述从属NIM之间的分离的通信链路来使配置文件同步。
9.如权利要求6所述的NIM,其中,所述总线使用CANopen协议。
10.如权利要求6所述的NM,其中,所述NM被定位到所述总线上的所述主要NM的右边和下游。
11.如权利要求6所述的NM,其中,行为(d)包括确定所述主要NM在所述总线上不再传送消息,其中,所述消息包括CANopen心跳消息。
12.如权利要求6所述的NIM,其中,行为(e)中的所述初始化包括从所述主要NIM的无扰切换。
13.一种在工业自动化环境中在分布式I/O系统中的单个总线上实现冗余网络接口模块(NIM)的方法,所述系统具有第一 NIM和第二 NM以及连接到所述总线的I/O模块,所述方法包括以下步骤 (a)在所述第一NM处确定所述第一 NM是所述总线上的主要主控NM ; (b)在所述第二NM处确定所述第二 NM是所述总线上的从属主控NM ; (c)实时地维持所述第一NIM和所述第二 NIM之间的同步设备配置; Cd)在所述第二 NIM处确定所述主要主控NIM不再是起作用的;以及 Ce)由所述第二 NM接管所述总线的主控权而无需重置所述系统总线。
14.如权利要求13所述的方法,其中,所述总线是位于所述分布式I/O系统的底板上的CANopen 总线。
15.如权利要求13所述的方法,其中,在步骤(c)中还包括通过分离的通信链路在所述第二 NM上复制所述第一 NM配置。
16.如权利要求13所述的方法,其中,步骤(d)包括在所述第二NM处确定所述主要主控NM不再在所述总线上传送消息。
17.如权利要求16所述的方法,其中,所述消息是CANopen心跳消息。
18.如权利要求13所述的方法,其中,所述第一NM和所述第二 NM每个在所述总线上具有两个不同的地址,并且所述第一 NM的所述不同地址中的一个与所述第二 NM的所述不同地址中的一个相同,以及所述第一 [M的所述不同地址中的一个与所述第二 NM的所述不同地址中的一个不同。
19.如权利要求13所述的方法,其中,在所述第二NIM接管所述总线的主控权时,总线重置通信命令没有被发出并且所述总线上的设备没有被重启。
20.如权利要求13所述的方法,其中,步骤(e)包括从所述主要主控NIM到所述从属主控NIM的无扰转移。
全文摘要
公开了用于在工业分布式I/O系统(200)中的单个总线(106)上实现冗余主控NIM(202、204)以控制所选择的I/O模块(110、112、114)的方法和系统。根据本发明的方面,两个主控NIM(202、204)在单个总线(106)上相互协作,一个是主要的起作用的主设备(202),以及如果主要主设备(202)不再是起作用的,则在从属备用模式中的第二主设备(204)准备接管该系统的主控权。
文档编号H04L12/40GK102804699SQ201080062750
公开日2012年11月28日 申请日期2010年12月27日 优先权日2009年12月31日
发明者布鲁斯·M·德克尔 申请人:施耐德电器工业公司