CN106020136A - 用于定义槽位地址的方法及系统 - Google Patents

用于定义槽位地址的方法及系统 Download PDF

Info

Publication number
CN106020136A
CN106020136A CN201610181948.0A CN201610181948A CN106020136A CN 106020136 A CN106020136 A CN 106020136A CN 201610181948 A CN201610181948 A CN 201610181948A CN 106020136 A CN106020136 A CN 106020136A
Authority
CN
China
Prior art keywords
module
storehouse
address
modules
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610181948.0A
Other languages
English (en)
Other versions
CN106020136B (zh
Inventor
钱德雷什·R·乔杜里
格雷戈里·A·迈赫尔
罗伯特·J·克雷奇曼
西瓦拉姆·巴拉苏布拉马尼安
肯德尔·R·哈里斯
爱德华·C·科尔斯贝格
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Rockwell Automation Technologies Inc
Original Assignee
Rockwell Automation Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Rockwell Automation Technologies Inc filed Critical Rockwell Automation Technologies Inc
Publication of CN106020136A publication Critical patent/CN106020136A/zh
Application granted granted Critical
Publication of CN106020136B publication Critical patent/CN106020136B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
    • G05B19/4186Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication by protocol, e.g. MAP, TOP
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/404Coupling between buses using bus bridges with address mapping
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5038Address allocation for local use, e.g. in LAN or USB networks, or in a controller area network [CAN]
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/21Pc I-O input output
    • G05B2219/21069At start up check I-O and store addresses in secure device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/21Pc I-O input output
    • G05B2219/21081At start up, check I-O configuration and store addresses in ram
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/21Pc I-O input output
    • G05B2219/21091First module initializes its address, then signals next to do same, serial
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33141Communication system software module independent from medium, protocol, address

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Small-Scale Networks (AREA)

Abstract

本公开涉及用于定义槽位地址的方法及系统。公开了一种用于给工业控制系统中的模块分配槽位地址的方法及系统。模块以菊花链拓扑被建立。在上电时,链中的第一模块从用户可配置的输入端读取其槽位地址或者将其槽位地址设置成默认值。第一模块使用特定单跳消息来与其紧右方近邻通信。邻近的模块进行通信以接收彼此的消息。然后,第一模块设置在模块之间的使能信号并且以固件消息将槽位编号发送至近邻。近邻检查是否设置了使能信号并且验证槽位编号为有效槽位编号。如果设置了使能信号并且槽位编号为有效槽位编号,则邻近的模块接受槽位并且向其紧接在后的近邻重复相同步骤,以此类推直至最后一个模块为止。

Description

用于定义槽位地址的方法及系统
相关申请的交叉引用
本申请要求于2015年3月27日提交的美国临时申请序列号62/139,337的优先权,该申请的全部内容通过引用并入本文。
技术领域
本发明涉及工业控制系统,并且具体地涉及用于对工业控制系统中的模块定义槽位地址的方法及系统。
背景技术
工业控制器如可编程逻辑控制器(PLC)是用于对例如工厂环境中的工业过程或机器的控制的专用电子计算机系统。工业控制器在许多方面不同于传统计算机。工业控制器被物理地构建成对冲击和损坏具有大幅度更强鲁棒性并且更佳地抵抗外部污染物和极端环境条件。处理器和操作系统针对实时控制被最优化,并且执行允许现成的定制化程序的语言以与多种不同的控制器应用兼容。工业控制器可以具有用户接口,用于如通过具有键盘、鼠标和显示器的本地连接的终端来访问、控制和/或监视工业控制器。
随着工业过程的复杂度增加,越来越多的设备被连接至工业控制器。这些设备通常分布在机器周围或者被沿生产线分布。越来越多的设备以及这些设备在机器周围的分布要求更复杂的控制程序。此外,分布的设备要求设备之间的通信。
工业控制器可以利用一个或更多个不同数量和类型的网卡或适配器与受控系统中的其他控制器、网络设备进行通信,或者通过适于更可靠的且更可用的实时通信的特定“控制网络”与用于待控制的过程或机器的设备进行通信。在工业控制系统中常用的这样的控制网络包括例如控制网、设备网、以太网/IP和串行实时通信协议,其技术参数被公布并且其协议由众多制造商和供应商广泛使用。控制网络通过保证最大通信延迟而不同于标准通信网络如以太网。例如,这可以通过对网络的带宽进行预调度和/或提供高可用性的冗余通信能力来获得。控制网络还在物理方面彼此不同,例如,介质的类型(例如,同轴电缆、双绞线、光纤等),其操作的协议(例如,波特率、信道数量、字传送大小、连接的消息收发的使用等),以及数据如何被格式化和数据如何被收集成标准消息。
为了在不同模块之间进行通信,每个模块要求可以向其传送数据消息的地址。此外,每个模块的地址需要不同于系统中的其他模块的地址,以确保数据消息递送至正确模块。对地址的手动配置会是消耗时间的,尤其是在数量不断增加的模块方面。分布的模块可能要求在位置之间移动以访问每个模块并且完成手动配置。手动配置还容易有人为失误,从而可能导致一个或更多个模块被分配不正确或完全一样的地址。
为了减小调试过程的长度并且降低人为失误的可能性,开发出了用于自动地给模块分配地址的方法。然而,这些自动分配例程通常由中央控制器如PLC或人机接口(HMI)来执行。中央控制器必须与系统中的每个模块通信以给模块分配地址。表或数据库通常必须由定义控制系统的结构的系统设计师来创建并且存储在控制器中。对网络的将来修改要求对表或数据库的更新。此外,工业网络中的单个点的故障可能防止自动分配例程结束,从而延迟受控系统的操作,直至解决故障为止。
从而,将期望提供一种用于给工业控制系统中的模块分配槽位地址的改进的方法和系统。
发明内容
本文中公开的主题描述了用于给工业控制系统中的模块分配槽位地址的方法和系统。模块可以连接至背板,如罗克韦尔自动化公司的专有背板,并且使用工业协议进行通信。模块以梳状拓扑被建立,其中以菊花链拓扑被连接的多个模块被标识为模块库。第一模块也称为库主,其位于模块库的一端。在上电时,库主从用户可配置的输入端如交换机或表盘读取其槽位地址。因为一些库主模块未将用户可配置输入端置于其上,在不存在用户可配置的输入端的情况下,库主给自身分配槽位0。在对用户可配置输入端进行读取之后,库主使用仅单跳传播(例如,仅传播至菊花链中的下一设备)的特定消息来与其紧右方近邻通信。这确保在槽位分配过程期间每个模块仅与其紧近邻有沟通。两个模块通信以接收彼此的信息(例如,MAC地址)。在获知到存在近邻之后,库主将两个模块之间的逻辑连接或使能线升高至高状态或激活状态。然后,库主以固件消息向近邻发送槽位编号。库主通过将自身槽位编号加1来计算这个槽位编号。可选地,可以通过将自身槽位编号加上任何预定义数字来定义槽位编号。当近邻接收到这个消息时,近邻首先检查消息是否来自其已知为其紧左方近邻的模块。例如可以通过将所存储的MAC地址与消息的发送者的MAC地址进行比较来执行检查。如果验证成功,则库主检查使能线是否激活并且还验证发送至其的槽位编号为有效槽位编号,例如在可接受范围内。如果所有验证步骤都成功,则近邻接受槽位地址。这个模块现在对其紧右方近邻重复相同步骤,以此类推直至最后一个模块为止。当库中的最后一个模块获知其不具有右方近邻时,该模块声称其自身为库中的“最后一个模块”,并且向库主发送返回包含库大小的消息。
协议还包括“现成”机制,其中,每个模块在得到其槽位地址分配时,开始向库主发送周期性消息以要求对接受通用工业协议(CIP)通信的许可。仅在库主从最后一个模块接收到确认库中分配槽位地址成功完成的库大小消息时,库主对请求者授予许可。这个协议分散槽位寻址方案并且使每个模块负责给紧近邻分配槽位地址/从紧近邻接受槽位地址,从而减小管理整个槽位寻址方案的一个设备上的负担。还提供了一种安全机制,其中,可以仅在整个库中寻址成功时才开始CIP通信。
根据本发明的一个实施方式,公开了一种用于给工业控制系统中的多个模块分配地址的方法。将第一地址分配给选自多个模块中的第一模块。多个模块中的每一个按序列连接,用于在每个模块之间进行通信,并且第一模块位于该序列的第一端并且将第一地址分配给自身。利用第一模块生成第二地址,其中,第二地址不同于第一地址。将第二地址传送至位于库中的第二模块,其中,第二模块选自所述多个模块。通过第二模块对第二模块所接收的第二地址进行验证,并且在第二模块验证了第二地址时,利用第二模块将第二地址分配给第二模块。利用库中的其余模块中的每一个重复生成第二地址、传送第二地址、验证第二地址、以及分配第二地址的步骤,其中,针对其余模块中的每一个用唯一的地址来替代第二地址,直至库中的所述多个模块中的每一个接收到唯一的地址中的一个为止。
根据本发明的另一实施方式,公开了一种用于给工业控制系统中的多个模块分配地址的方法。将第一地址分配给第一模块,其中,第一模块选自所述多个模块。第一模块位于库中并且将第一地址分配给自身,以及其余模块沿库以序列方式被连接。位于沿库距第一模块最远处的端部模块连接回至第一模块。在第一模块中生成二进制模式,用于传送至所述多个模块中的每一个并且一次一位地传送。测量在多个模块中的每一个中接收二进制模式的所有位耗费模块的持续时间。将第一地址从第一模块传送至其他模块中的每一个,以及将唯一的地址分配给其他模块中的每一个。其他模块中的每一个根据所测量的持续时间和第一地址来确定其唯一的地址,并且每个模块给自身分配其唯一的地址。
根据本发明的又一实施方式,公开了一种用于给工业控制系统中的多个模块分配地址的系统。该系统包括选自所述多个模块中的第一模块,其中,第一模块包括至少一个电连接器和槽位分配器。槽位分配器能够在第一模块上被执行以管理对多个槽位地址的自动分配。选自多个槽位地址中的第一槽位地址被分配给第一模块。系统还包括多个附加模块,其中,每个附加模块选自所述多个模块中。第一模块和每个附加模块定义一个模块库。附加模块中的每一个包括第一电连接器和第二电连接器,第一电连接器操作上连接至第一模块或者附加模块中的另一模块;第二电连接器操作上连接至附加模块中的另一模块或者端盖。第一模块与多个附加模块中的每一个进行通信以验证第一模块和多个附加模块中的每一个被分配多个槽位地址中的一个。
根据具体实施方式和附图,对于本领域技术人员而言,本发明的这些和其他优势和特征将变得明显。然而应当理解,尽管指示本发明的优选实施方式,但是具体实施方式和附图是以示出性方式给出并且并非限制。可以在不偏离本发明的精神的情况下在本发明的范围内做出许多变化和修改,本发明包括所有这样的修改。
附图说明
在附图中示出了本文中公开的主题的各种示例性实施方式,在整个附图中,相同的附图标记表示相同的元件,以及在附图中:
图1是根据本发明的实施方式的用于工业控制系统的基础模块库的等轴测视图;
图2是根据本发明的实施方式的单个I/O基础模块的等轴测视图;
图3是根据本发明的一个实施方式的单个模块库的框图表示;
图4是多个图3中的模块库的框图表示;
图5是根据本发明的另一实施方式的单个模块库的简化示意图表示;
图6是根据本发明的另一实施方式的单个模块库的简化示意图表示;
图7是根据本发明的再一实施方式的单个模块库的简化示意图表示;
图8是根据本发明的一个实施方式的用于槽位分配的消息包的图形表示;以及
图9是图8中使用的模块的部分框图表示。
在描述附图中示出的本发明的各种实施方式时,出于清楚起见将动用特定专业术语。然而,并非意在将本发明限制于所选择的特定术语,并且要理解的是,每个特定术语包括以类似方式操作以实现类似目的的所有技术等同方式。例如,经常使用词“连接”、“附接”或与其类似的术语。这些词并不限制于直接连接而是包括通过其他元件进行的连接,其中,本领域技术人员将这样的连接理解成是等同的。
具体实施方式
首先转向图1,示出了根据本发明的一个实施方式的工业用于控制系统的模块库10。模块库10包括从左到右并排布置的一系列外壳,所述外壳具有一般可描述为立方体的复杂形状。所述一系列外壳包括最左边的适配器模块12、接下来是第一I/O模块14、第二I/O模块16以及第三I/O模块18。每个模块保持与其他模块非常接近,从而利于并排的电连接。此外,参见图2,每个模块可以通过附接至DIN导轨50来保持。在替选实施方式中,一个或更多个模块可以保持有较大的间距,并且具有由网络布线支持的电连接。
适配器模块12还可以包括位于一个或更多个相应的表面上的多个不同的连接器22以及用于系统监视的视觉显示器20和/或LED。可能的连接器例如可以包括:多个RJ-45网络连接器,用于将库网络连接至例如远程计算机或可编程逻辑控制器(PLC);通用串行总线(USB)和/或IEEE1394连接器,用于本地连接的终端或设备;或者本领域中公知的任何其他有利的连接器。适配器模块12还包括用于向库供电的电源连接器24。
可以设想,每个模块可以包括基座和安装到所述基座的底架。再次参照图1,不同的I/O模块14、16可以利用公共基座13,其中,该公共基座13包括模块之间共同的部件如邻近模块之间和端子26、28之间的互连件以及连接至底架15、17的连接器。每个底架15、17包括模块之间不同的部件如逻辑电路,以接收输入或驱动输出、或者处理模拟或数字信号。每个底架15、17可以被插入到基座13中并且被设置为完整的I/O模块14、16。其他模块如适配器模块12和第三I/O模块18可以类似地包括基座和底架配置,其中用于每个其他模块的基座不同于用于第一和第二I/O模块14、16的基座13。根据本发明的另一实施方式,每个模块可以具有单个壳体,或者可选地,可以使用包括单个壳体或基座和底架构造的模块的组合。每个模块的基座可以包括电连接和基本逻辑,以利于模块之间的公共系统背板。
I/O模块14、16和18还可以分别包括用于接收在每个外壳的表面上露出的导体的多个电端子(或端子块)26、28和30,以可释放地保持在I/O模块和受控过程或机器上的设备(未示出)之间的电导体通信。在I/O模块的每个底架在大小、颜色和形状方面可以类似于其他底架,但这些方面可能由于功能而不同。根据基座和I/O模块的功能,存在于每个端子块26、28和30中的端子的数目可以不同。I/O模块14、16和18可以例如被配置成接收模拟或数字的输入或输出。输入或输出电压可以是例如5至48VDC之间的直流电压或120VAC的交流电压。
现在参考图2,示出了根据本发明的实施方式的用于I/O模块的示例性基座40。I/O模块基座40具有壳体,该壳体具有左侧部41和右侧部42。每个侧部还可以包括可释放电连接器44,可释放电连接器44被支承在每个侧部上并且被露出以连接到左侧部和右侧部上的邻近模块。I/O模块基座40还可以包括可释放机械连接器46,用于通过例如附接到DIN导轨50将I/O模块保持在相对于邻近模块的位置。如上所述,每个I/O模块基座40还可以包括多个电端子(或端子块)45,用于接收外壳的表面上露出的导体,以可释放地保持在受控过程或机器上的设备与保持在I/O模块的底架内的I/O功能卡之间的电导体通信。可以在基座40上设置一个或更多个槽位48,以在基座40和安装在基座上的底架之间建立电连接。类似地,可以设置一个或更多个配合插孔49,以与基座建立机械连接并且将底架完全保持至基座。
接下来转至图3,根据本发明的实施方式表示了模块的单个库10。适配器模块12位于库10中的最左边的位置,并且多个I/O模块14以沿库10向右移动的方式依次连接。然而,并不旨在对配置进行限制。可以设想,适配器模块12可以位于最右边的位置或处于该库10内的位置。背板19被建立用于在模块中的每个模块之间进行通信。背板19可以是总线、离散的连接件或其组合。背板19可以在电路板、电缆或基座内的其他导体上被路由到模块基座的侧部上的电连接器。邻近的电连接器可配合在一起,以建立模块之间的直接电连接。可选地,电缆可以在远离于彼此布置的电连接器之间延伸,或者可以利用直接和远程连接的组合来形成背板19。根据所示的实施方式,背板19在位于库10中的模块中的每个模块之间形成菊花链。附加的逻辑连接11在模块中的每个模块之间建立。逻辑连接11也可以在电路板、电缆或基座内的其他导体上被路由到模块基座的侧部上的电连接器。邻近的电连接器可以配合在一起,以建立模块之间的直接电连接。可选地,导体可以在模块之间连接,以建立模块之间的逻辑连接11。根据本发明的又一实施方式,逻辑连接11可以在模块之间沿背板19被传送。
在包括多个库的系统中,每个库可以根据各种网络拓扑如环形、星形、或其组合连接。如图4所示的,根据本发明的示例性实施方式,模块可以以梳状拓扑连接。第一库10a包括处于最左边的位置的适配器模块12,并且附加库10b,10c中的每个包括位于最左边的位置处的扩展模块25。扩展模块25可以包括适配器模块12的功能的子集,并且可以仅包括例如用于连接至适配器模块12而不连接至其他外部网络的连接器。然而,可以设想,附加库10可以包括第二或其他附加适配器模块12。可选地,适配器模块12和扩展模块25的组合可以被包括作为工业网络的每个库10中的最左边的模块。每个库10包括连接在库10上的模块之间的单独的背板,并且适配器和扩展模块25提供库10之间的通信。网络介质23连接在每个适配器模块上的端口22和每个扩展模块上的端口27之间,以建立库10之间的通信。
在操作中,将相对于如图3所示的模块的单个库10来讨论定义槽位地址的一个实施方式。每个库中的模块中的一个被定义为库主。优选地,库中的一端上的模块被选择为库主。在所示的实施方式中,最左边的模块或适配器模块12被选择为库主,其中该库主被配置为在上电时执行槽位寻址例程。
还参照图8和图9,相对于示例性库主100和连接至库主100的附加模块110讨论槽位寻址例程。虽然库主100和附加模块110可以执行不同的功能且包括不同的部件,但各自共享某些元件,并且出于方便起见,将相对于如图9所示的单个框图来讨论库主100和附加模块110二者。库主100和附加模块110被示出为具有基座120和底架130。基座120包括成对的背板连接器122,其中,第一背板连接器122a位于基座120的一侧上,而第二背板连接器122b位于基座120的另一侧上。每个背板连接器122被配置成与邻近模块上的互补连接器接合。背板124在两个连接器122之间内部地路由,并且与底架130中的处理器132通信。基座120还包括模块之间的用于如图3所示的逻辑连接11的连接128。逻辑电路126可以包括在基座120中,以处理逻辑连接以及通过各基座120的其他信号,并且将逻辑连接11上的信号提供给处理器132。
底架130还包括与处理器132通信的存储器134,并且被配置成存储指令和用于库主100或附加模块110的配置参数。槽位ID选择器140也可以被包括在底架130中。在一些实施方式中,库主100与附加模块110可以不包括槽位ID选择器140。如将在下面更详细地讨论的,库主100利用槽位ID选择器140来确定其给自身的初始槽位分配。如果库主100不包括槽位ID选择器,则库主100可以给自身分配预定的槽位编号如零、一或任何其他期望的槽位编号。进一步设想,每个模块可以包括槽位ID选择器140,且每个模块还可以包括存储在存储器134中的库主例程。配置参数中的一个可以被设置为:定义模块作为库主,然后所选择的模块可以执行库主例程并且访问槽位ID选择器140,以确定其槽位分配。如下面更详细地讨论的,没有被选择作为库主的任何模块将接收槽位分配。
在上电时,库主100给自己分配槽位地址。库主100从槽位ID选择器140读取值,并且将该值分配作为其槽位地址。如果不存在槽位ID选择器,库主100为自己分配默认值如零或一作为槽位地址。控制系统中的每个模块必须被分配为后续通信的唯一地址。因此,工业控制系统的调试过程中,对于将作为库主100的每个模块而言,槽位ID选择器140被设置成唯一值。例如,槽位ID选择器140可以是针对每个库主100的槽位地址需要的可以被设置为二进制值的一系列DIP开关。因此,系统中的每个库主100可以在上电时给自身分配唯一的槽位地址。
在给自身分配槽位地址之后,各库主100针对库10中的其余模块启动槽位寻址例程。接下来转向图8,库主100首先启动邻近检测例程,以确定是否有任何模块110邻近于库主100被连接。根据图3所示的实施方式,库主12位于库10的最左侧,并且附加的I/O模块14被连接在右侧。关于图8所示的槽位寻址例程和实施方式的讨论,将利用相同的配置。由于库主100处于最左边的位置,邻近检测例程仅须确定模块110是否被连接到库主100的右侧。然而,由于该模块尚未被分配槽位地址,因此库主100不能生成用于与模块110通信的传统数据包(如果存在的话)。
库主100制备用于沿背板19传送至邻近模块110的邻近检测包。每个模块(库主100和任何附加模块110)具有由制造商分配给模块的媒体访问控制(MAC)地址。库主100在邻近检测消息包内包括其MAC地址。然而,由于库主100不知道另一模块110是否被连接,而即使在知道另一模块110被连接的情况下,也不知道邻近模块的槽位地址或MAC地址,库主100必须发出可以由任何邻近模块110接收的广播消息。标准广播消息将沿着背板19传送至库中的每个模块110。然而,邻近监视消息是唯一的单跳消息。由于每个库10以菊花链配置的方式来配置,广播消息在被发送至任何后续模块之前,必须穿过邻近模块110。每个模块110被配置成识别邻近检测广播消息,并防止该消息的进一步传送,使得邻近检测消息为单跳消息。
在一些应用中,控制器架可以包括开口槽位,或者DIN导轨安装的模块库可以包括无底架插入的开口基座。开口槽位或基座建立通过开口槽位或基座至下一全槽位或插入有底架的基座的背板通信路径。因为开口槽位或基座不包括作用于消息的处理器132,该消息被传递至下一全槽位或下一插入有底架的基座,如果下一全槽位或下一插入有底架的基座被发现的话。用于建立背板连接的开口槽位或基座的硬件也可以被配置成使用于该消息的计数器递增,使得库主100和下一填充邻近模块110之间的槽位距离是已知的。
在接收到邻近检测消息时,邻近模块110制备邻近检测响应消息。邻近模块110从邻近检测消息中提取MAC地址,并且将MAC地址存储在其存储器134中,以识别近邻在其左边。邻近模块110将其自身的MAC地址嵌入在邻近检测响应消息中,并且将所述邻近检测响应消息包发送至库主100。如果槽位距离是已知的,正如上面所指出的,邻近模块110可以将槽位距离类似地嵌入在邻近检测响应消息中。可选地,可以仅在发送邻近检测响应消息时检测槽位距离,以指示有填充近邻与库主100紧邻近或与库主100相隔一定距离。
库主100在接收到邻近检测响应消息时,能够将新槽位地址分配给邻近模块110。库主100从邻近检测响应消息中提取MAC地址,并且将该MAC地址存储在其存储器134中,以识别该近邻在其右侧。库主100计算用于邻近模块110的新槽位地址。根据本发明的一个实施方式,可以通过将其自身的槽位地址加一来确定新槽位地址。可选地,在邻近检测或邻近检测响应消息传送期间检测到的槽位距离可以被加入到槽位地址。然后,库主100制备用于邻近模块的单播槽位分配消息,其中,库主100可以包括其自身的MAC地址作为源模块并且将邻近模块的MAC地址作为目的地模块。邻近模块110的新槽位地址被包括在槽位分配消息的数据部分中。然后,库主100将槽位分配消息传送到邻近模块110,并且同时,设置经由模块之间的逻辑连接11传送的使能逻辑位。因此,库主100将数据包和硬件使能信号二者发送至邻近模块110,以指示其给邻近模块110分配新槽位地址。
邻近模块110转而接收槽位分配消息并检测逻辑连接11上的使能逻辑位,并且为自身分配新的槽位地址。邻近模块110首先确认该槽位分配消息是从在其紧左侧的模块接收到的。邻近模块110从槽位分配消息中的源模块中提取MAC地址,并将该MAC地址与先前在邻近检测处理期间存储的MAC地址进行比较。邻近模块110还验证使能信号存在于逻辑连接11上作为其给自身分配槽位分配消息中的槽位地址的指示。当邻近模块110确认所接收到的槽位分配消息是来自在其紧左侧的模块的并且确定是给自身分配槽位分配消息中的槽位地址时,邻近模块110从槽位分配消息中提取槽位地址,并将该槽位地址存储在其存储器134中。
在给自身分配了新槽位地址时,邻近模块110转而继续进行槽位寻址例程。邻近模块110启动新的邻近检测例程,以确定是否有任何其他模块110沿库10邻近于其右侧连接。如果另一模块110存在,则第一邻近模块110和第二邻近模块110执行上述用于邻近检测和槽位分配消息的步骤。该处理重复进行,直至沿库的所有邻近模块110分配了新槽位地址为止。
当最右侧的模块110启动邻近检测序列时,其确定没有其他模块110在其右侧。模块上的右手侧连接器可以不具有连接或具有端盖从而提供终接连接。在任一实施方式中,邻近检测消息没有接收到响应,则最右侧的模块110确定其是库10中的最后模块。最右侧模块110生成用于传送回库主100的库大小消息。库大小消息包括库10的大小的指示。库10的大小的指示例如可以是最后模块110的槽位地址,或者可选地,库大小字段可以被包括在每个槽位分配消息中,并随着连续模块110分配新的槽位地址而递增。最右侧模块可以知道或可以不知道库主100的MAC地址或槽位地址。根据本发明的一个实施方式,库主100的MAC地址或槽位地址被包括在每个槽位分配消息中,使得每个附加模块110能够将库主100的地址存储在其相应的存储器134中。如果最右侧的模块知道库主100的地址,则可以生成库大小消息作为至库主100的单播消息。如果最右侧的模块不知道库主100的地址,则库大小消息可以是沿库10的背板19回传的广播或者多播消息。每个附加模块110传递库大小消息而不作用于该消息,同时库主100接收库大小消息,并防止其超出了库10被传送到工业网络中的其他库10和/或设备。
当接收到库大小消息时,库主100立即使库10中的每个模块开始执行模块的控制功能。例如,控制功能可以是在输出端子处设置输出信号或者读取输入端子的输入信号。控制功能还可以包括从工业网络接受CIP通信以传送模块与执行控制程序的工业控制器之间的输入端和/或输出端的状态。例如,CIP通信可以是以太网/IP、设备网、控制网或适应CIP协议的其他网络。库主100从库大小消息中提取库大小的指示。如果库大小的指示直接标识存在的邻近模块110的数量,则值可以被直接存储到库主的存储器134中。如果库大小的指示是最右模块的槽位地址,则库主100可以从最右模块的槽位地址中减去其槽位地址以确定库10中的邻近模块110的数量并且将该值存储在其存储器134中。然后,库主100生成被传送到库中的每个邻近模块110的准备消息。在接收到准备消息时,每个模块110可以开始参与CIP通信。
接下来参照图4,工业控制系统可以包括多个库10a、10b、10c。在上电时,分配给每个库10a、10b、10c的库主100启动如上所讨论的针对其相应库的槽位寻址例程。根据图示的实施方式,适配器模块12是第一库10a的库主100,并且每个扩展模块25是第二库10b和第三库10c的库主100。当接收到来自相应库中的最右模块的库大小信息时,每个库主100可以执行附加步骤以确定是否连接另一库主100。网络线缆23连接每个库主100,并且库主100可以在工业网络上发送广播或多播消息以识别其他库主100。每个附加库主100可以产生响应。如果在工业控制系统中存在多个库主100,然后,每个库主100可以向其他库主传送后续消息,以对在其相应库内使用的槽位地址的范围进行识别。如果一个或更多个库10使用相同范围或交叠范围,则检测到设置故障。设置故障可以被传送回中央处理器如PLC以向中央处理器和/或技术人员提醒分配冲突。此外,如果检测到设置故障,则每个库主100可能会延迟或取消至其库的准备消息的传送,从而防止具有交叠槽位地址的库10接受CIP通信。然后,合适的人员可以重新配置一个或更多个库主100的槽位ID选择器140以改正交叠槽位地址配置。
接下来参照图5,示出了分布式槽位寻址系统的第二实施方式。根据图示的实施方式,适配器模块60在模块库的最左侧连接,而多个I/O模块80彼此邻近连接并且沿着模块库延伸到右边。适配器模块60包括适配器基座62和适配器底架64。适配器模块60被配置为库主并且包括槽位分配例程。可以设想,可以在位于适配器基座62、适配器底架64或其组合中的处理器上执行槽位分配例程。槽位分配例程被配置为在数据输出端66上向邻近模块提供二进制输出信号。适配器模块60还包括被配置为生成要在时钟输出端68上被输出到邻近模块的时钟信号的时钟电路。数据输出端66和时钟输出端68可以是专用信号线,或者可选地,数据输出端66和时钟输出端68可以经由背板进行传送。在任一实施方式中,信号可以经由每个基座模块62、82的一侧上的电连接器44被输出到邻近模块。
每个I/O模块80包括I/O基座82和I/O底架84,其中对于库10中的每个I/O模块80,I/O基座82优选地相同,并且不同的I/O底架根据输入端或输出端的所需数量和类型插入到每个基座82。每个I/O基座82包括每个侧部上的用于连接至邻近模块的电连接器44。I/O基座82包括被配置为从邻近基座到左边分别接纳数据输出端66和时钟输出端68的第一输入端86或数据输入端,以及第二输入端88或时钟输入端。每个I/O基座82还包括DQ触发器85。如本领域技术人员所理解的,每个DQ触发器在D端子上向数据输入端提供一个时钟周期延迟。提供给D端子的数据最初被锁存在DQ触发器85内并且当在CLK输入端处接收到下一个时钟脉冲时,D端子上的数据被提供到Q端子处,同时存在于D端子上的新数据被锁存到DQ触发器85内。每个I/O基座82还包括数据输出端92和时钟输出端94。数据输出端92连接到DQ触发器85的Q端子并且时钟输出端94直接连接到时钟输入端88。因此,每个I/O基座82将时钟信号从适配器基座62传递到下一个邻近的I/O基座82而没有任何逻辑延迟,而由适配器基座62传送的数据信号被传递到下一个邻近的I/O基座82,其中在每个I/O基座82具有一个时钟周期延迟。
端盖91可以连接到每个库10中的最后的I/O模块80的右侧。端盖91具有第一输入端93或数据输入端,以及第二输入端95或时钟输入端,被配置为从最后的I/O模块接纳数据输出端92和时钟输出端94。在端盖91内,设置环回连接,其将数据输入端93连接到数据输出端97以用于传送回适配器模块60。每个I/O模块80包括第三输入端96或环回输入端,以及第三输出端90或环回输出端,其中环回输入端96连接到环回输出端90以将数据信号传递通过每个I/O模块而没有任何逻辑延迟。适配器模块60还包括被配置接收来自最左I/O模块80的数据信号的环回输入端70。因此,在传递通过每个I/O模块80之后,从适配器模块输出的数据信号返回到适配器模块60。
虽然相对于适配器模块60和多个I/O模块80以及其相应的基座62、82讨论了图示的实施方式,但是可以设想,在不脱离本发明的范围的情况下,本发明的其他实施方式可以使用其他模块如网络模块、扩展模块、计数器模块等,以及相应基座可以包括上述的输入端、输出端和逻辑电路的组合。
在上电时,适配器模块60启动另一实施方式的分布式槽位寻址例程以将槽位地址分配给库10中的每个模块。最初,操作为库主的适配器模块60给其自身分配槽位地址。以类似于上面所讨论的方式,适配器模块60(即库主100)从槽位ID选择器140读取值,并且将该值分配为其槽位地址。如果不存在槽位ID选择器,则适配器模块60(即库主100)给其自身分配默认值如零或一作为其槽位地址。
此外,在上电时,I/O模块80的每个数据输入端86处的数据处于预定状态如零。适配器模块60接下来生成二进制数据模式以用于传送给每个邻近I/O模块80,其中,二进制数据模式具有n位。位的数量是可配置的并且被存储在存储器中或者例如被预定义为所使用的基座的类型或版本的函数。根据一个实施方式,二进制数据模式包括八位。数据模式的第一位被设置在数据输出端66上并且因此,存在于最右I/O模块80的数据输入端86。然后,适配器模块60开始驱动时钟输出端上的时钟信号68,亦即,适配器模块60切换时钟输出端68上的时钟信号的状态。
在每个时钟周期中,I/O模块中的DQ触发器85将存在于数据输入端86上的数据传递到数据输出端92。在第一时钟周期中,将数据模式的第一数据位从最左I/O模块80的数据输入端86传递到最左I/O模块80的数据输出端92。然后,数据模式的第一数据位在下一邻近I/O模块80的数据输入端86是可用的。适配器模块60还将数据模式的第二位置于在适配器模块60的数据输出端66,以使得数据模式的第二位现在存在于最左I/O模块80的数据输入端86。在适配器模块60将新的位置于在其数据输出端66并且每个I/O模块80将存在于其数据输入端86上的位传递到相应的数据输出端92的情况下,在每个时钟周期重复序列。
当最后的I/O模块80将根据数据模式的位传递到其数据输出端92时,该位变为可用于端盖91的数据输入端93。如先前所讨论的,端盖91包括环回连接,以使得存在于端盖的数据输入端93上的数据被置于环回输出端97处。环回输出端97上的这个数据被传送通过每个I/O模块80返回到适配器模块60。适配器模块60继续切换时钟信号直到适配器模块60接收到二进制模式中的返回到其环回输入端70所有的位为止。
由适配器模块60所生成的二进制模式优选地是预定模式并且每个I/O模块80已知。由于模式传递通过每个I/O模块80,I/O模块保持在其时钟输入端88处接收的时钟周期数的计数。例如,计数可以保留在I/O底架84中执行的处理器中,其还接收时钟信号。当二进制模式的所有的位到达每个I/O模块80时,I/O模块对所需的时钟周期数进行存储以接收I/O模块80上的存储器中的位模式。
在适配器模块60在其环回输入端70接收到完整的位模式之后,适配器模块生成槽位计算消息以传送到每个I/O模块80。槽位计算信息是广播或多播消息,其由库主发送到在其上设置有库主的库10中的每个其他模块,并且适配器模块60将其分配给其自身的槽位地址插入到槽位计算消息中。当接收到槽位计算消息时,每个I/O模块80使用所需的时钟周期数接收二进制位模式以确定其自身的槽位地址。每个I/O模块80沿着库需要一个附加的时钟周期来接收整个位模式。因此,第一I/O模块80将一个时钟周期添加到槽位计算消息中的槽位地址,而第二I/O模块80将两个时钟周期添加到槽位计算消息中的槽位地址。每个相继的I/O模块80给其自身分配的槽位地址递增地高于从I/O模块80到其左边的槽位地址。
如先前所讨论的,在一些应用中,控制器架可以包括开口槽位或者DIN导轨安装的模块库可以包括没有插入底架的开口基座。开口槽位或基座建立背板通信路径通过开口槽位或基座到下一个全槽位或具有插入的底架的基座;然而,由于开口槽位或基座不包括处理器132作用于槽位计算消息,所以对于开口槽位或基座确定没有槽位地址。例如,每个全槽位或基座可以通过从接收位模式所需的时钟脉冲总数中减去二进制位模式的长度进而确定相应模块距库主的槽位距离来得到开口槽位。对于邻近的相应槽位地址,全模块因此可以增加槽位距离而不是增量值。
在每个I/O模块80给其自身分配槽位地址之后,I/O模块80向适配器模块60发送回模块准备。模块准备消息包括每个I/O模块已确定并且给其自身分配的槽位地址。然后,适配器模块60可以比较槽位地址以验证库中的每个槽位地址是唯一的。作为这个验证的结果,适配器模块60能够确定每个I/O模块80正确地接收到二进制数据模式,并且还给其自身正确地分配唯一的槽位地址。当验证完成时,适配器模块60可以向每个I/O模块80发送回准备消息,使得库10中的所有模块能够开始从工业网络接受通用工业协议(CIP)通信。
接下来参照图6,每个模块可以被配置为设置槽位分配处理中的冗余。具有双适配器基座63的适配器模块61可以设置有I/O模块81,每个I/O模块81具有双I/O基座83。可以设想,适配器底架64和I/O底架84可以是与那些在单基座62、82上使用的底架相同的底架,但是可选地,还可以设置用于适配器模块61和I/O模块81中的每一个的唯一的底架。
每个双基座63、83包括冗余槽位分配硬件。适配器模块61在第一数据输出端66a和第二数据输出端66b上一前一后地输出二进制模式。类似地,在第一时钟输出端68a和第二时钟输出端68b上一前一后地输出时钟信号。I/O模块81在第一数据输入端86a和第二数据输入端86b上接收数据信号并且在第一时钟输入端88a和第二时钟输入端88b上接收时钟信号。第一数据信号和第一时钟信号被提供给第一DQ触发器85a,并且第二数据信号和第二时钟信号被提供给第二DQ触发器85b。每个DQ触发器85a、85b的输出被提供给I/O模块81的相应的数据输出端92a、92b。端盖99包括双回环路径,双回环路径类似地都通过每个I/O模块81被传递回适配器模块61。
在冗余槽位分配硬件的情况下,每个I/O模块能够自身监视槽位分配硬件的故障。I/O底架84/I/O基座82或其组合中的处理器可以对存在于每个数据输入端86a、86b上的数据位或者每个时钟输入端88a、88b上的时钟信号进行比较,以验证I/O模块81已在每个成对的输入端处接收到相同数据。处理器可以对存在于每个数据输出端92a、92b的数据位进行类似地比较,以验证第一触发器85a和第二触发器85b正确操作。此外,处理器可以保持每个时钟信号的单独计数并且基于存在于第一输入端组和第二输入端组中每一个处的数据来独立地计算槽位地址。如果在槽位分配处理期间的任何点处数据并不一致,则I/O模块81可以生成故障消息,并且将消息传送回适配器模块61。
可选地,I/O模块81还可以被配置为在检测到冗余硬件之间的错误时执行诊断例程。例如,如果数据输出不一致,则处理器可以给每个DQ触发器85a、85b的输入端提供数据,切换时钟位并且验证存在正确输出。如果一个DQ触发器出现故障,则I/O模块81可以忽略发生故障的硬件路径并且利用仍在运行的硬件路径。以此方式,I/O模块81仍可以给其自身分配正确的槽位地址并且当路径中的一个路径出现故障时使槽位寻址例程能够完成。I/O模块81仍可以生成并且向适配器模块60传送故障消息或者将故障消息传送回中央PLC以向操作者提醒故障,使得可以在方便的机会替换或修理I/O模块81。
根据又一实施方式,如图7所示,双基座63、83中的DQ触发器85a、85b可以相对于彼此以相反的方向连接。适配器模块61以如前所述相同的方式传送第一数据输出端66a和第二数据输出端66b上的二进制模式。然而,如图所示,来自第二数据输出端66b的二进制模式最初传递通过每个基座83和端盖99,然后开始朝向适配器基座63环回。在每个时钟周期,不是将位从左传递到右通过基座83,而是将位从右传递到左。
通过在两个方向上发送位模式通过基座83,图7示出的实施方式允许即使在设备之间出现硬件故障的情况下也能发生槽位分配。例如,如果单基座故障以使得没有数据信号可以传送通过基座,则在位于故障设备的左边的模块利用从左到右传递位模式的情况下仍可以发生槽位寻址,以及利用从右到左传递位模式可以发生位于故障的设备的右边的模块的槽位寻址。
可以设想,上面关于图5和图6所讨论的槽位寻址例程还可以用于具有多个库10的工业控制系统。再次参照图4,工业控制系统可以包括多个库10a、10b、10c。在上电时,分配给每个库10a、10b、10c的库主100启动如上所讨论的针对其相应库的槽位寻址例程,并且每个库主100给其自身分配唯一的槽位地址。在每个库主100验证在其库10中的附加模块被正确确定并且分配给其自身唯一的槽位地址之后,每个库主100可以执行附加的步骤以确定是否连接另一库主100以及控制系统中的所有模块是否如上所述具有唯一的槽位地址。
上述槽位寻址过程提供了在整个控制系统分配槽位地址的分布式方法。采用最低配置以仅确保模块的每个库使用槽位地址的唯一范围,模块可以自动检测系统中的其他模块并且生成唯一的槽位地址以进行通信。相较于必须检测系统中的所有模块并且给其分配地址的集中式模块,可以更快地发生槽位寻址。这样的系统对于系统内的单点故障更稳健。每个模块都保留被分配给它的槽位地址直到电力循环为止。在随后上电时,每个库模块重复该过程。例如,这样的模块化还使得控制系统的部段能够被断电以进行维护、扩充或升级以及当电力回归时,该库在不需要对整个系统分配新地址的情况下给其自身重新分配槽位地址。
应当理解,本发明将其应用不限于本文中所阐述的部件的布置和结构的细节。本发明能够具有其他实施方式以及以各种方式来实施或实现。对前述的变化和修改都在本发明的范围内。还应理解,本文中所公开和限定的本发明扩展至根据文本和/或附图所述或明白的两个或更多个单个特征的所有可选组合。所有这些不同组合构成本发明的各种可选方面。本文中所描述的实施方式解释用于实施本发明的已知最佳模式,并且使本领域的其他技术人员能够使用本发明。

Claims (20)

1.一种用于给工业控制系统中的多个模块分配地址的方法,所述方法包括以下步骤:
将第一地址分配给模块库中的第一模块,所述第一模块选自所述多个模块,其中,所述多个模块中的每一个按序列被连接用于在每个所述模块之间通信,并且所述第一模块位于所述序列的第一端并且将所述第一地址分配给自身;
利用所述第一模块生成第二地址,所述第二地址不同于所述第一地址;
将所述第二地址传送至位于所述库中的第二模块,所述第二模块选自所述多个模块;
验证所述第二模块接收的所述第二地址,其中,所述验证通过所述第二模块执行;
当所述第二模块验证了所述第二地址时,利用所述第二模块将所述第二地址分配给所述第二模块;以及
利用所述库中的其余模块中的每一个,重复生成所述第二地址、传送所述第二地址、验证所述第二地址以及分配所述第二地址的步骤,其中,针对所述其余模块中的每一个用唯一的地址来替代所述第二地址,直至所述库中的所述多个模块中的每一个接收到所述唯一的地址中的一个为止。
2.根据权利要求1所述的方法,其中,所述库中的所述多个模块中的每一个以菊花链的形式被连接,并且其中,在将所述第二地址传送至所述第二模块的步骤之前,所述方法包括以下步骤:
在所述第一模块中生成单跳消息;
沿所述菊花链将所述单跳消息仅传送至与所述第一模块邻近连接的模块,其中,所述菊花链中的邻近模块尚未分配地址;以及
响应于指示存在所述邻近模块的所述单跳消息,从所述邻近模块传送消息。
3.根据权利要求2所述的方法,其中,在沿所述菊花链的所述邻近模块中的每一个之间连接有使能线,所述方法进一步包括以下步骤:
当在所述邻近模块中的每一个之间传送所述唯一的地址时,在所述使能线上发送使能信号,其中,在每个模块处验证所述唯一的地址的步骤包括从所述邻近模块接收所述使能信号。
4.根据权利要求1所述的方法,进一步包括以下步骤:
利用端部模块生成库大小消息,所述端部模块位于沿所述库距所述第一模块最远处,并且其中,所述库大小消息包括位于所述库中的模块的数量;以及
在所述端部模块给自身分配了所述唯一的地址中的一个之后,将所述库大小消息从所述端部模块传送至所述第一模块。
5.根据权利要求4所述的方法,进一步包括以下步骤:
在所述第一模块处接收所述库大小消息;
经由所述第一模块验证所述多个模块中的每一个的所述唯一的地址不同;以及
当所述第一模块验证了所述多个模块中的每一个的所述唯一的地址不同时,将启动自动操作消息从所述第一模块传送至所述库中的其他模块中的每一个。
6.根据权利要求1所述的方法,其中,所述工业控制系统包括至少两个库并且每个库包括多个模块,其中,每个库中的所述多个模块中的一个被选择作为所述库的所述第一模块。
7.根据权利要求6所述的方法,进一步包括以下步骤:
将在第一库内分配的所述唯一的地址从所述第一库的第一模块传送至第二库的第一模块;以及
验证在所述第一库内分配的所述唯一的地址不同于分配给所述第二库的所述唯一的地址。
8.一种用于给工业控制系统中的多个模块分配地址的方法,所述方法包括以下步骤:
将第一地址分配给选自所述多个模块中的第一模块,其中,所述第一模块位于库中并且将所述第一地址分配给自身,并且其中,所述多个模块沿所述库以序列方式被连接,并且位于沿所述库距所述第一模块最远处的端部模块连接回至所述第一模块;
在所述第一模块中生成二进制模式,用于向所述多个模块中的每一个传送;
将所述二进制模式一次一位地传送至所述多个模块中的每一个;
测量在所述多个模块中的每一个中接收所述二进制模式的所有位耗费所述模块的持续时间;
将所述第一地址从所述第一模块传送至其他模块中的每一个;以及将唯一的地址分配给所述其他模块中的每一个,其中,所述其他模块中的每一个根据在对应模块中测量的所述持续时间和所述第一地址来确定所述唯一的地址。
9.根据权利要求8所述的方法,进一步包括以下步骤:
当一次一位地传送所述二进制模式时从所述第一模块传送时钟信号;以及
在所述其他模块中的每一个处接收所述时钟信号,其中,所述时钟信号驱动所述模块中的每一个内的触发器来使所述二进制模式通过所述模块一次一位地移位。
10.根据权利要求9所述的方法,其中,
所述第一模块从第一输出端和第二输出端一前一后地传送所述二进制模式,
所述第一模块从第三输出端和第四输出端一前一后地传送所述时钟信号,
所述其他模块中的每一个在第一输入端和第二输入端处接收所述二进制模式,
所述其他模块中的每一个在第三输入端和第四输入端处接收所述时钟信号,
所述其他模块中的每一个包括第一触发器和第二触发器,
所述其他模块中的每一个的所述第一输入端和所述第三输入端连接至所述第一触发器,以及
所述其他模块中的每一个的所述第二输入端和所述第四输入端连接至所述第二触发器。
11.根据权利要求8所述的方法,进一步包括以下步骤:
在所述二进制模式被传送至所述多个模块中的每一个之后,将所述二进制模式传送回至所述第一模块;
在接收到所述二进制模式时在所述第一模块中生成槽位计算消息;以及
将所述槽位计算消息传送至所述其他模块中的每一个,其中,在所述其他模块中的每一个接收到所述槽位计算消息之后,执行将所述唯一的地址分配给所述其他模块中的每一个的步骤。
12.根据权利要求8所述的方法,进一步包括以下步骤:
将每个唯一的地址从所述其他模块传送至所述第一模块;以及
在所述第一模块处验证所述其他模块中的每一个生成了不同的唯一的地址。
13.根据权利要求8所述的方法,其中,所述工业控制系统包括至少两个库并且每个库包括多个模块,其中,每个库中的所述多个模块中的一个被选择作为所述库的所述第一模块。
14.一种用于给工业控制系统中的多个模块分配地址的系统,所述系统包括:
选自所述多个模块中的第一模块,所述第一模块包括:
至少一个电连接器;
槽位分配器,其在所述第一模块上可执行以管理多个槽位地址的自动分配,其中,选自所述多个槽位地址中的第一槽位地址被分配给所述第一模块;以及
多个附加模块,每个附加模块选自所述多个模块,其中,所述第一模块和每个附加模块定义一个模块库,并且其中,所述附加模块中的每一个包括:
第一电连接器,其操作上连接至所述第一模块与所述附加模块中的另一模块中的一个;以及
第二电连接器,其操作上连接至所述附加模块中的另一模块与端盖中的一个,其中,所述第一模块与所述多个附加模块中的每一个进行通信以验证所述第一模块和所述多个附加模块中的每一个被分配所述多个槽位地址中的一个。
15.根据权利要求14所述的系统,其中,所述第一模块的所述至少一个电连接器、每个附加模块的所述第一电连接器以及每个附加模块的所述第二电连接器被配置成传送多个数据消息,其中,所述槽位分配器进一步可执行:
生成邻近发现消息;
将所述邻近发现消息从所述至少一个电连接器传送至邻近模块,其中,所述邻近模块选自所述多个附加模块中的一个,并且所述邻近模块的所述第一连接器操作上连接至所述至少一个电连接器;
从所述邻近模块接收标识存在所述邻近模块的消息;
利用所述第一模块生成第二槽位地址,所述第二槽位地址不同于所述第一槽位地址;以及
将包括所述第二槽位地址的槽位分配消息传送至所述邻近模块。
16.根据权利要求15所述的系统,其中,所述槽位分配器进一步可执行:
响应于从所述邻近模块接收到标识存在所述邻近模块的所述消息,生成使能信号;以及
经由所述第一模块与所述邻近模块之间的逻辑连接将所述使能信号输出至所述邻近模块。
17.根据权利要求14所述的系统,其中,
所述第一模块的所述至少一个电连接器、每个附加模块的所述第一电连接器以及每个附加模块的所述第二电连接器被配置成传送二进制模式和时钟信号;
所述多个附加模块中的每一个进一步包括操作上串联连接在所述第一电连接器与所述第二电连接器之间的触发器;
所述槽位分配器进一步可执行:
将所述二进制模式和所述时钟信号从所述至少一个电连接器传送至邻近模块,其中,所述邻近模块选自所述多个附加模块中的一个,并且所述邻近模块的第一电连接器操作上连接至所述至少一个电连接器,以及
从所述多个附加模块中的位于沿所述模块库距所述第一模块最远处的一个附加模块接收所述二进制模式;以及
所述多个附加模块中的每一个可操作以存储在开始接收所述时钟信号与接收到完整的所述二进制模式之间的持续时间。
18.根据权利要求17所述的系统,其中,
所述槽位分配器进一步可执行:
生成其中包括所述第一槽位地址的槽位计算消息,以及
将所述槽位计算消息传送至所述多个附加模块中的每一个;
所述多个附加模块中的每一个根据所述第一槽位地址和开始接收所述时钟信号与接收到完整的所述二进制模式之间的所述持续时间来确定唯一的槽位地址;以及
所述唯一的槽位地址是所述多个槽位地址中的一个。
19.根据权利要求14所述的系统,其中,所述第一模块是第一库主模块,所述系统进一步包括:
第二模块库,所述第二模块库包括:
第二库主模块;以及
多个附加模块。
20.根据权利要求19所述的系统,其中,所述第一库主模块和所述第二库主模块均包括手动槽位标识选择器。
CN201610181948.0A 2015-03-27 2016-03-28 用于定义槽位地址的方法及系统 Active CN106020136B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562139337P 2015-03-27 2015-03-27
US62/139,337 2015-03-27

Publications (2)

Publication Number Publication Date
CN106020136A true CN106020136A (zh) 2016-10-12
CN106020136B CN106020136B (zh) 2018-09-21

Family

ID=56014775

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610181948.0A Active CN106020136B (zh) 2015-03-27 2016-03-28 用于定义槽位地址的方法及系统

Country Status (3)

Country Link
US (1) US10162783B2 (zh)
EP (1) EP3076250B1 (zh)
CN (1) CN106020136B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109839871A (zh) * 2017-11-24 2019-06-04 通用电气航空系统有限公司 控制模块电路及初始化电气系统中的可控单元的方法
CN109839870A (zh) * 2017-11-24 2019-06-04 通用电气航空系统有限公司 控制模块电路及其编程组件、及关联永久标识的方法
CN114518739A (zh) * 2020-11-20 2022-05-20 罗克韦尔自动化技术公司 容错背板槽位分配

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3410240B1 (en) * 2017-05-30 2021-07-07 Schneider Electric Industries SAS Method for replacing and/or cloning at least some devices of a machine
US10194553B1 (en) * 2017-11-11 2019-01-29 Rockwell Automation Asia Pacific Business Center Pte. Ltd. Selectively installable and removable auxiliary wiring device for I/O module
GB2598827B (en) * 2017-11-24 2022-08-03 Ge Aviat Systems Ltd Method and apparatus for initializing a controller module
EP3512163A1 (de) 2018-01-12 2019-07-17 Siemens Aktiengesellschaft Übertragen von signalen
US20200078120A1 (en) * 2018-09-07 2020-03-12 Ethicon Llc Modular surgical energy system with module positional awareness with digital logic
US11095272B2 (en) * 2018-09-21 2021-08-17 Taiwan Semiconductor Manufacturing Company, Ltd. Flip-flop cell
US10826782B2 (en) * 2018-10-30 2020-11-03 Ge Aviation Systems Limited Method and apparatus for initializing a controller module
GB2579233A (en) * 2018-11-27 2020-06-17 Edwards Ltd A method relating to controllers of a vacuum pumping and/or abatement system
US11147181B2 (en) 2019-09-26 2021-10-12 Rockwell Automation Technologies, Inc. Distributed modular input/output (I/O) system with redundant ethernet backplane networks for improved fault tolerance
US10986748B1 (en) * 2019-09-26 2021-04-20 Rockwell Automation Technologies, Inc. Input/output system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19750470A1 (de) * 1997-11-14 1999-06-02 Woehr Otto Gmbh Verfahren zur Adressierung von Baugruppensteuerungen einer Parkanlage für Kraftfahrzeuge
US6738920B1 (en) * 2000-11-28 2004-05-18 Eaton Corporation Method for deriving addresses for a plurality of system components in response to measurement of times of receipt of two signals by each component
US20060059325A1 (en) * 2004-09-10 2006-03-16 Milne Alan L Apparatus and method for assigning addresses to components or modules in a system
CN102007755A (zh) * 2008-03-06 2011-04-06 西门子工业公司 共同电力和通信总线结构上的自动寻址设备及其方法
US20140089548A1 (en) * 2012-09-26 2014-03-27 Ronald Norman Prusia Systems, Methods, and Articles of Manufacture To Stream Data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19750470A1 (de) * 1997-11-14 1999-06-02 Woehr Otto Gmbh Verfahren zur Adressierung von Baugruppensteuerungen einer Parkanlage für Kraftfahrzeuge
US6738920B1 (en) * 2000-11-28 2004-05-18 Eaton Corporation Method for deriving addresses for a plurality of system components in response to measurement of times of receipt of two signals by each component
US20060059325A1 (en) * 2004-09-10 2006-03-16 Milne Alan L Apparatus and method for assigning addresses to components or modules in a system
CN102007755A (zh) * 2008-03-06 2011-04-06 西门子工业公司 共同电力和通信总线结构上的自动寻址设备及其方法
US20140089548A1 (en) * 2012-09-26 2014-03-27 Ronald Norman Prusia Systems, Methods, and Articles of Manufacture To Stream Data

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109839871A (zh) * 2017-11-24 2019-06-04 通用电气航空系统有限公司 控制模块电路及初始化电气系统中的可控单元的方法
CN109839870A (zh) * 2017-11-24 2019-06-04 通用电气航空系统有限公司 控制模块电路及其编程组件、及关联永久标识的方法
CN109839871B (zh) * 2017-11-24 2022-03-18 通用电气航空系统有限公司 控制模块电路及初始化电气系统中的可控单元的方法
CN109839870B (zh) * 2017-11-24 2022-07-08 通用电气航空系统有限公司 控制模块电路及其编程组件、及关联永久标识的方法
CN114518739A (zh) * 2020-11-20 2022-05-20 罗克韦尔自动化技术公司 容错背板槽位分配

Also Published As

Publication number Publication date
CN106020136B (zh) 2018-09-21
EP3076250A1 (en) 2016-10-05
EP3076250B1 (en) 2020-03-11
US10162783B2 (en) 2018-12-25
US20160283427A1 (en) 2016-09-29

Similar Documents

Publication Publication Date Title
CN106020136A (zh) 用于定义槽位地址的方法及系统
CN209327858U (zh) 用于将现场设备通信地耦合到远程终端单元的装置
US10095594B2 (en) Methods and apparatus to implement communications via a remote terminal unit
EP2544058B1 (en) High availability device level ring backplane
US10739745B1 (en) Modular backplane for an industrial controller
EP3798769B1 (en) Distributed modular i/o device with configurable single-channel i/o submodules
JP2016143415A (ja) プロセス制御システムにおいて3線式フィールド機器を制御装置へと通信可能に接続するための装置、端子台
US20120041572A1 (en) Controller network and method of controlling a controller network
CN103404082A (zh) 连接异常检测方法、网络系统和主装置
CN101728725A (zh) 具有不同水平的冗余的可插式底座
EP3798770B1 (en) Removable terminal block assembly that permits an i/o base to operate in simplex mode or duplex mode
CN107592187B (zh) 一种基于双通道表决系统的表决方法
US6021356A (en) Control system using programmable logic controller
Felser PROFIBUS Manual: A collection of information explaining PROFIBUS networks
US9861002B1 (en) Single channel I/O in a modular sub-chassis
EP4002809A1 (en) Fault tolerant backplane slot assignment
Singh et al. Dual redundant profibus network architecture in hot standby fault tolerant control systems
US11147181B2 (en) Distributed modular input/output (I/O) system with redundant ethernet backplane networks for improved fault tolerance
AU2023211867A1 (en) Address assignment for a modular power distribution unit
US11789433B2 (en) Systems and methods for coordinating insertion and/or removal of redundant input/output (I/O) components
WO2021182147A1 (ja) 端末監視装置
JP2003233404A (ja) 監視制御システムおよびその試験方法
RU2574837C2 (ru) Система логического управления (варианты)

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: ohio

Applicant after: Rockwell automation technologies

Address before: ohio

Applicant before: Rockwell Automation Tech Inc.

GR01 Patent grant
GR01 Patent grant