CN110663225B - 数据总线用户设备的初始化 - Google Patents
数据总线用户设备的初始化 Download PDFInfo
- Publication number
- CN110663225B CN110663225B CN201880034529.1A CN201880034529A CN110663225B CN 110663225 B CN110663225 B CN 110663225B CN 201880034529 A CN201880034529 A CN 201880034529A CN 110663225 B CN110663225 B CN 110663225B
- Authority
- CN
- China
- Prior art keywords
- data
- bus
- data bus
- data packet
- instruction list
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40169—Flexible bus arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
- H04L12/423—Loop networks with centralised control, e.g. polling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/4026—Bus for use in automation systems
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Small-Scale Networks (AREA)
Abstract
描述用于运行本地总线(6)的、尤其环型总线的数据总线用户设备(7a、7b、……、7n)的方法,所述方法包括:经由本地总线(6)接收第一数据包(17),其中,所述第一数据包(17)具有其所指向的数据总线用户设备(7a、7b、……、7n)的地址(19)和至少一个指令列表(27a、27b、27n),所述指令列表具有用于处理过程数据(25a、25b、25c)的指令组;经由本地总线(6)接收第二数据包(22),其中,所述第二数据包(24)具有过程数据(25a、25b、25c);以及执行用于处理所接收的过程数据(25a、25b、25c)的至少一个指令列表(27a、27b、27n)的指令。此外描述了相应的数据总线用户设备(7a、7b、……、7n)和本地总线主控装置。
Description
技术领域
本发明一般来说涉及数据总线用户设备的初始化,并且尤其涉及借助指令列表将环型总线的数据总线用户设备程序化。
背景技术
数据总线用户设备大多处于自动化系统中。数据总线用户设备用于控制或监视自动化系统的过程。这通过将控制信号例如输出给执行器和/或通过例如由自动化系统的传感器接收测量信号实现。
自动化系统尤其用于控制工业设备、建筑物以及交通工具。对于控制自动化系统来说,大多需要多个传感器和执行器。这些传感器和执行器监视并且控制由系统执行的过程。一个自动化系统的不同的传感器和执行器在这种情况下经常也被称为自动化设备。
这些自动化设备可以直接与自动化系统的控制器连接,或者可以首先与输入模块和输出模块(经常也被称为I/O模块)连接。接着,这些模块又与控制器直接连接。在此,自动化设备可以直接集成在I/O模块中,或者可以与这些I/O模块经由缆线或者无线地连接。
自动化系统的控制器通常借助一个或多个内存可编程的控制器、PLC实现。在此,PLC按等级地或者非中心地设置在自动化系统中。在此,在PLC中存在不同的性能级,从而PLC可以根据计算能力和存储能力承担不同的控制和调节。PLC在最简单的情况下具有输入端、输出端、运行系统(固件)和接口,通过它们可以加载用户程序。用户程序定义了应该如何根据输入切换输出。在这种情况下,输入端和输出端与自动化系统和/或I/O模块连接,并且可以借助在用户程序中寄存的逻辑监视或者控制由自动化系统执行的过程。在此,通过传感器实现过程的监视并且通过执行器实现过程的控制。这种控制器也可以被称为中央控制器或者中央单元,并且至少针对与控制器连接的一个自动化设备或者I/O模块承担控制。
不过,自动化设备与至少一个控制器直接连接或者I/O模块与至少一个控制器以并行接线的方式直接连接(亦即从每个自动化设备或每个I/O模块各布置一条线路以用于上级控制)是相当昂贵的。尤其是随着自动化系统的自动化程度的提高,在并行接线时增加了接线工作量。这在设计、安装、调试和维修时与高成本相关联。
因此,目前在自动化技术中大多使用总线系统,利用总线系统可以将自动化设备或者I/O模块连接到控制器上。总线系统的用户设备也被称为总线用户设备。因为在总线系统上交换数据,所以总线用户设备也经常被称为数据总线用户设备。为了进一步简化各个自动化设备或者I/O模块与总线系统的连接,目前经常借助专门的本地总线将各组自动化设备或者I/O模块上下连接成本地总线系统并且接着将该本地总线的至少一个用户设备与总线系统连接,该总线系统与控制器连接。
在此,本地总线系统可以与用于与控制器连接的总线系统不同。
一组本地总线用户设备的与控制器的总线系统连接的用户设备经常也被称为本地总线主控装置。备选地,也使用本地总线系统的前端的名称。这种本地总线主控装置相对于其他本地总线用户设备来说包含其他的逻辑、电路和功能性,这些逻辑、电路或功能性对于连接到控制器的总线系统上来说是必需的。本地总线主控装置本身也可以包含PLC。这种用户设备也可以具有用于在两个总线系统之间转换的逻辑和电路。因此,本地总线主控装置也可以构造为网关或者总线转换器,并且负责将以其中一个总线系统的格式存在的数据转换成本地总线系统的格式,并且反之亦然。但是,大多不强制将本地总线主控装置专门用于将本地总线连接到上级的总线上。
通常使用的本地总线大多适配于自动化设备的或者I/O模块的特定的使用要求或者考虑到它们的特殊的硬件设计。在此,本地总线系统的自动化设备或者I/O模块的组大多形成自动化系统的用于执行在由自动化系统执行的过程中的特殊任务的分组。针对过程的在总线上交换的数据也经常被称为本地总线数据或者过程数据,因为这些数据包含用于调节或者控制由自动化系统执行的过程的信息。在此,这种数据还可以包括测量数据、控制数据、状态数据和/或其他信息。根据使用的总线协议,这些数据可以前置于其他数据(报头)或者附加在其他数据之后(尾部)。所述其他数据可以包含关于数据的信息或者包含关于在本地总线上的内部通信的信息。在此,已知多种不同的信息,这些信息按照使用的总线协议前置于所述数据或者附加在所述数据之后。
本地总线的一个实例是环型总线,其是本地总线的一种专门的形式,例如由US5472347已知。在环型总线中,数据总线用户设备、例如自动化设备或者I/O模块分别与它们直接相邻的数据总线用户设备连接并且将数据依次从一个数据总线用户设备继续传送给另一个数据总线用户设备。因此,不是同时向所有数据总线用户设备发送数据,而是依次发送,其中,一个数据总线用户设备从其上游的数据总线用户设备获得数据并且将数据继续传送给其下游的数据总线用户设备。数据总线用户设备可以在获得数据和继续传送之间处理获得的数据。当数据到达系列中的最后的数据总线用户设备时,再次将数据从最后的数据总线用户设备依次返回传送到第一个数据总线用户设备。在此,这种返回传送要么通过所有数据总线用户设备实现,要么在数据总线用户设备旁边借助旁路线实现。因此,环型总线具有数据的下行流和上行流。环型总线中的数据大多以数据包的形式传输,数据包经过所有数据总线用户设备。
在这种环型配置方式中或者在其他本地总线中,将数据总线用户设备程序化的成本很高。为了将数据总线用户设备程序化,例如必须中断总线上的传输,或者必须通过外部的接口将数据总线用户设备程序化,其中,数据总线用户设备在这段时间内不能参与总线上的通信。
由此出发,本发明的任务在于,提供一种改进的方法、一种改进的数据总线用户设备以及一种本地总线主控装置,利用该本地总线主控装置也可以在本地总线运行期间将数据总线用户设备程序化,从而数据总线用户设备可以在本地总线运行期间直接在程序化之后处理过程数据。
发明内容
按照本发明的用于运行本地总线的、尤其是环型总线的数据总线用户设备的方法包括经由本地总线接收第一数据包的步骤,其中,所述第一数据包具有其所指向的数据总线用户设备的地址和至少一个指令列表,所述指令列表具有用于处理过程数据的指令组。在这种情况下,“指向”意味着,包含在数据包中的指令列表指定用于本地总线中的特定的数据总线用户设备。指令列表的指令可以预定各种处理步骤,应利用过程数据执行这些处理步骤。在此,所述至少一个指令列表例如包含预定用于处理过程数据的规则的指令。这种规则例如定了数据总线用户设备应从在本地总线上经过的数据流选择哪些过程数据、应读取哪些或者应该在数据总线用户设备的哪些位置上写入过程数据,和/或数据总线用户设备应以其他方式和方法操作哪些过程数据。与之相应地,指令列表定义了数据总线用户设备相对于待处理的过程数据的特性。指令列表所指向的数据总线用户设备可以将指令列表存储在存储器中并且在稍后的时间点将指令列表用于处理过程数据。为此,可以这样存储指令列表,使得能有针对性地找出所述指令列表。在此,存储器可以包括所获取的指令列表的所有类型。在此,重要的是,数据总线用户设备可以访问所接收的至少一个指令列表、亦即访问存储器。相应地,所述至少一个指令列表可以存储在数据总线用户设备本身中,例如存储在数据总线用户设备的存储器中,或者存储在与数据总线用户设备连接的存储器中。在此,在数据总线用户设备和存储器之间的连接可以有线地或无线地实现。也可设想的是,存储器是附加模块,其可以与数据总线用户设备连接。存储器可以任意地设计。
第一数据包也可以称为通信数据包并且优选不包含过程数据。有利地,通信数据包包含尤其用于程序化和/或控制和/或监视和/或识别至少一个数据总线用户设备的数据。有利地,通信数据包具有配属于至少一个数据总线用户设备的地址。数据总线用户设备优选设立用于评价地址并且读取通信数据包,从而数据总线用户设备可以利用存在于通信数据包中的信息、例如指令列表被程序化或者说可以存储所述信息进而程序化。
按照本发明的方法进一步包括经由本地总线接收第二数据包,其中,所述第二数据包具有过程数据。接着,这些接收的过程数据能够通过执行所述至少一个在第一数据包中接收的指令列表的指令来处理。
所述第二数据包也可以被称为过程数据包并且包含过程数据,所述过程数据由本地总线的数据总线用户设备发送和/或接收。有利地,过程数据包不具有用于将过程数据传输给本地总线中的数据总线用户设备或者传输来自数据总线用户设备的过程数据的地址。在过程数据包中,过程数据例如这样设置,使得数据总线用户设备基于过程数据在过程数据包中的相应的位置、例如在所属的相关的数据块(1字节)内的一位或几位识别出属于相应的数据总线用户设备的过程数据。有利地,过程数据包具有标识符(IDE),该标识符配属于该类型的数据包、亦即过程数据包并且能通过数据总线用户设备识别。过程数据也可以称为本地总线数据。
通过使用在符合本地总线标准的通信中发送给数据总线用户设备的第一数据包将该数据总线用户设备程序化,为此不需要外部的程序化。与之相应地,针对数据总线用户设备在本地总线的运行进行时发生程序化。一旦数据总线用户设备存储了包含在数据包中的指令列表,就结束数据总线用户设备的程序化并且该数据总线用户设备可以处理包含在下一个符合本地总线标准的通信中的过程数据。
在按照本发明的方法一种优选的实施方式中,所述方法进一步包括将在第一数据包中接收的地址与数据总线用户设备的地址相比较。仅在所述地址一致时,数据总线用户设备才存储在第一数据包中跟随的指令列表,从而仅将指令列表所指向的数据总线用户设备程序化。然而,地址例如可以是组地址,亦即确定多个数据总线用户设备与地址的一致性,从而可以将多个数据总线用户设备程序化。当多个数据总线用户设备在自动化系统中承担相同的任务并且相应地也配备有相同的传感器和/或执行器、然而例如在自动化过程中占据不同的位置时,这例如是有利的。
在按照本发明的方法一种优选的实施方式中,在符合本地总线标准的循环帧中接收第一和第二数据包。亦即,在相同的循环帧中发送程序以及要利用程序处理的过程数据。但是也可能的是,在不同的循环帧中接收第一和第二数据包。在此,循环帧例如可以定义为周期的(循环的)、优选等距的时隙,在所述时隙中,数据能在本地总线上传输。循环帧例如具有至少一个开始标识符(SOC)和用于传输数据的时域。在此,相继的循环帧的多个开始标识符(SOC)有利地时间上等距地相互间隔开。所谓的时域针对数据包的传输而设定。开始标识符(SOC)和数据包经由本地总线传输并且经过所有数据总线用户设备。开始标识符(SOC)能单独地、亦即作为独立的符号传输或者有利地包含在开始数据包(SOC-包)中。
在循环帧的时域内不传输、传输一个或者传输多个数据包。在循环帧中有利地插入空闲数据(Idle-Data)、特别是邻接至少一个数据包插入。有利地,数据包和/或空闲数据的传输引起在本地总线上的无中断的信号。这种信号能使数据总线用户设备实现针对所述信号在时间上同步。有利地,循环帧附加地具有帧尾。帧尾具有可变的长度并且在用于数据传输的、优选不超过下一个循环帧的随后的开始标识符(SOC)的时域之后。有利地,帧尾具有空闲数据。
有利地,循环帧由本地总线主控装置产生。所述本地总线主控装置已经可以按照待处理的过程数据预定程序。这具有如下优点,即,不发生通信的中断。用于本地总线主控装置的额外的成本(英语:Overhead)也是相当低的,因为本地总线主控装置不必使用额外的通信来程序化或者不必高成本地适配符合本地总线标准的通信,而是本地总线主控装置可以将程序化与常规的过程数据通信结合。
在按照本发明的方法的另一优选的实施方式中,第二数据包进一步具有指令列表索引(ILI)。将所述指令列表索引用于选择用于处理所接收的过程数据的指令列表。指令列表索引向数据总线用户设备报告关于使用所存储的哪种指令列表的信息。因此,一个指令列表索引配属于一个指令列表或者反之亦然,从而借助于指令列表索引可以识别要使用的指令列表。为此,指令列表索引优选具有一配属于一指令列表的值,例如该值指向特定的指令列表或者该指令列表的存储位置。为此,所述值本身可以是存储地址,在那里存储在数据总线用户设备中的指令列表或者在那里至少存储指令列表的第一指令。备选地或附加地,所述值也可以指向存储区域,在该存储区域中保存相应的指令列表。先前提到的情况也可以称为直接分配。然而,指令列表索引的值例如也可以作为输入查找表(英语:Lookup-Table,LUT)而使用。在此,指令列表索引的值是查找表的输入值。查找表的输出值可以是所属的指令列表的第一指令的存储地址或者在其他情况下可以识别指令列表。指令列表索引优选可以具有固定的值域中的值。指令列表索引例如可以来自于0000至1111之间的位值域。但是本领域技术人员清楚,也可以使用其他值域。查找表在软件技术以及硬件技术上例如可以呈逻辑形式并且制定从一输入值到一输出值的一对一的转换,其中,输出值给出关于要使用的指令列表的指示。在此,如何在指令列表索引和指令列表之间建立关联与查找表有关。使用查找表也可以称为间接分配。但是,在直接以及间接分配时,能通过指令列表索引一对一地识别、亦即找出要被数据总线用户设备使用的指令列表。接着,通过数据总线用户设备执行经由指令列表索引找到的指令列表,以用于处理第二数据包中的过程数据。因此,完成所选择的指令列表的指令组。如果指令列表索引包含对未存在于数据总线用户设备上的指令列表的指向,那么数据总线用户设备报告故障。数据总线用户设备也可以忽略指令列表索引并且不完成用于过程数据的指令列表。
在按照本发明的方法的另一优选的实施方式中,第一和第二数据包具有一定量的符号,其中,每个符号具有一定位数、例如8位、即1字节。但是本领域技术人员了解,也可以在其他单元中发生数据包的分段,这种分段包括8位以上或以下。数据包以这种符号的形式(亦即以单元的方式、片段的方式或者间隔的方式)经过本地总线。数据包的这样的部分随后也被称为片段或单元。亦即,数据总线用户设备在每个给出的时间内总是仅存在数据包的一部分。在此,数据总线用户设备逐个符号地接收第一和第二数据包。在处理符号之后,数据总线用户设备将刚刚处理好的部分进一步发送给下游的数据总线用户设备并且在相同的步骤中从上游的数据总线用户设备接收数据包的新的一部分。处理数据包的一部分也可以是,数据总线用户设备跳过数据包的这部分。例如,第一数据包未指向的所有数据总线用户设备可以跳过在该数据包中包含的至少一个指令列表并且仅该第一数据包所指向的数据总线用户设备可以存储所述指令列表。为了确保确定的处理时间,数据包的每个部分总是在数据总线用户设备上维持同样长,无论是否发生处理。这是必需的,以便在接收数据包的新的一部分前,向其他数据总线用户设备给出充分的时间来利用数据包的在这些数据总线用户设备上存在的部分执行它们的处理。在此,第一数据包的这部分的处理要么可以包括跳过、即不处理至少一个指令列表,要么可以包括在第一数据包指向接收相应的部分的数据总线用户设备时存储在数据总线用户设备中。第二数据包的这部分的处理可以是,执行对接收的过程数据的位操作。在这种情况下也可以说,逐位地进行处理。位操作例如可以基于数据总线用户设备所执行的减少的指令组来执行,所述位操作例如是“跳过”(“SKIP”)、“移动”(“MOVE)”、“非”(“NEGATION”)、“增值”(“INCREMENT”)、“与”(“AND”)和“或”(“OR”)或者它们的组合。借助指令列表在数据总线用户设备寄存应该执行哪种位操作。在此,将指令列表在第一数据包中发送给相应的数据总线用户设备并且所述指令列表代表数据总线用户设备的程序。所述指令列表针对第二数据包的每部分或者第二数据包的每位包含至少一个指令、亦即应以相应的位数执行的操作。在此,在指令列表中针对每个符号存在固定数量的或者预定数量的指令。亦即,每个数据总线用户设备在供处理用的时间内针对每个符号执行一定数量的指令。如果数据总线用户设备例如没有以所述位数执行处理,则相应的指令列表针对相应的位数是空的或者具有“跳过”(“SKIP”)指令。指令列表也可以具有特定的指令的重复次数。例如,指令列表可以包含“跳过”(“SKIP”)指令,利用指示重复该指令两次。于是,在这种情况下不处理接下来的两位,而是跳过。也可以针对“移动”(“MOVE)”、“非”(“NEGATION”)、“增值”(“INCREMENT”)、“与”(“AND”)和“或”(“OR”)的指令预设参量。
在按照本发明的方法的另一优选的实施方式,在第一数据包中的地址是第一数据包所指向的数据总线用户设备的一对一的地址。在这种情况下,“指向”意味着,包含在第一数据包内的指令列表仅被这样的数据总线用户设备存储,即其地址与第一数据包中的一对一的地址一致。亦即,仅在其地址与第一数据包中的地址一致的数据总线用户设备上进行程序化。与之相应地,第一数据包也可以被称为定向的数据包或者特定的数据包,因为该数据包仅指定用于一个数据总线用户设备或一组特定的数据总线用户设备,反之,第二数据包不包含地址并且相应地被称为非定向的或非特定的数据包。在此,第二数据包是非特定的,因为该第二数据包携带用于本地总线的所有数据总线用户设备的过程数据。也可以说,第一数据包代表异步的通信,而第二数据包代表同步的通信。第一数据包的通信是异步的,因为第一数据包不需要在每个循环帧内重新发送,而是仅一次地用于数据总线用户设备的程序化。第二数据包的通信是同步的,因为第二数据包循环重复。在此,过程数据不必总是采用相同的值,但是本领域技术人员清楚,在自动化时总是又重复相同的过程步骤,所述过程步骤使得需要存在循环发生的过程数据。
上面提到的任务也通过一种本地总线的、特别是环型总线的数据总线用户设备解决,其中,所述数据总线用户设备具有用于经由本地总线接收第一数据包的器件,其中,所述第一数据包具有其所指向的数据总线用户设备的地址和至少一个指令列表,所述指令列表具有用于处理过程数据的指令组。按照本发明的数据总线用户设备还具有用于经由本地总线接收第二数据包的器件,其中,所述第二数据包具有过程数据。在此,用于接收的器件是接收器电路或收发器电路。所述电路例如在专用集成电路(英语:ASIC)中或者在现场可编程(逻辑)门阵列(英语:FPGA)中实现。
按照本发明的数据总线用户设备还具有用于执行用于处理所接收的过程数据的至少一个指令列表的指令的器件。在此,用于执行的器件可以是单片机或运算电路,该运算电路尤其由集成电路的门元件形成。运算电路也可以构造为数字逻辑,该数字逻辑尤其至少构造为半导体芯片的部件。所述电路可以在ASIC或FPGA中实现。
在按照本发明的数据总线用户设备的一种优选的实施方式中,数据总线用户设备具有用于经由本地主线将接收的第二数据包发送给另一个数据总线用户设备的器件。在此,数据总线用户设备可以逐个符号地经由本地总线将第二数据包发送给另一个数据总线用户设备。在此,所述另一个数据总线用户设备可以是直接跟随进行接收的数据总线用户设备的数据总线用户设备。在此,数据的发送在所有数据总线用户设备中同步、例如以由本地总线主控装置预定的定时同步,或者可以通过接收另一数据包而引起。
上面提到的任务可以通过一种用于运行本地总线的、特别是环型总线的本地总线主控装置的方法来解决,其中,所述的方法包括:针对数据总线用户设备产生具有用于处理过程数据的指令组的至少一个指令列表;产生第一数据包,其中,所述第一数据包具有该第一数据包所指向的数据总线用户设备的地址和所述至少一个指令列表;产生第二数据包,其中,所述第二数据包具有过程数据;以及经由本地总线将第一和第二数据包发送给数据总线用户设备。
在按照本发明的方法的一种优选的实施方式中,第一和第二数据包分别具有一定量的符号,其中,每个符号具有一定位数,并且其中,将数据包逐个符号地发送给数据总线用户设备。与之相应地,本地总线主控装置以时钟方式发送第一和第二数据包,并且所述第一和第二数据包沿下行方向、即远离本地总线主控装置地连续经过所有数据总线用户设备。于是,本地总线中的最后的数据总线用户设备将这些部分沿上行方向、亦即朝向本地总线主控装置地返回发送给本地总线主控装置。在此,返回发送的部分要么再次经过所有数据总线用户设备,要么在所有数据总线用户设备旁传送给本地总线主控装置。
上面提到的任务也通过具有数据总线用户设备的本地总线的、尤其环型总线的本地总线主控装置来解决。在此,所述本地总线主控装置具有用于产生具有用于针对数据总线用户设备处理过程数据的指令组的至少一个指令列表的器件以及用于产生第一数据包的器件,其中,所述第一数据包具有该第一数据包所指向的数据总线用户设备的地址和所述至少一个指令列表。此外,按照本发明的本地总线主控装置具有用于产生第二数据包的器件,其中,所述第二数据包具有过程数据。在此,用于产生的器件可以是处理器、单片机或运算电路,该运算电路尤其由集成电路的门元件形成。运算电路也可以构造为数字逻辑,该数字逻辑尤其至少构造为半导体芯片的部件。所述电路可以在ASIC或FPGA中实现。
此外,按照本发明的本地总线主控装置具有用于经由本地总线将第一和第二数据包发送给数据总线用户设备的器件。在此,在用于发送的器件所产生的循环帧内发送这两个数据包。用于发送的器件也可以在不同的循环帧内发送两个数据包并且产生相应的循环帧。用于发送的器件可以是发送器电路或收发器电路。所述电路例如在ASIC或FPGA中实现。
附图说明
以下借助实施例与附图进一步阐述本发明。由所描述的实施例得出本发明的技术方案的其他细节、特征和优点。图中:
图1示出示例性的自动化系统的示意性框图,其具有内存可编程的控制器和示例性的环型总线;
图2示出用于将数据总线用户设备程序化的第一数据包的示意图;
图3示出用于发送在数据总线用户设备上的过程数据的第二数据包的示意图;
图4示出一示例性的时间流程图,其呈现出图2和图3中示出的数据包经过图1中示出的环型总线的示例性的数据总线用户设备;以及
图5示出用于处理第二数据包的在图2中示出的过程数据的指令列表的示意图。
具体实施方式
图1示出自动化系统的示意性框图。本领域技术人员了解,所示出的自动化系统仅是示例性的并且所有属于该自动化系统的元件、模块、构件、用户设备和单元可以不同地构造,但是仍然可以实现在这里描述的基本功能。
图1中示出的自动化系统具有上级的控制器1,该控制器例如可以利用内存可编程的控制器、PLC实现。这种PLC1原则上用于控制和调节由自动化系统执行的过程。不过目前,自动化系统中的PLC1也承担广泛的功能,比如像所有过程相关的数据的可视化、报警和记录,并且PLC1本身作为人机接口行使功能。存在不同性能级的PLC1,所述性能级具有不同的指标(计算能力、存储能力、输入及输出的点数和类型、以及接口),这些指标使PLC1能实现对自动化系统的过程的控制和调节。PLC1大多具有一个模块化的结构并且包括各个组成部分,这些组成部分分别实现不同的任务。PLC1通常包括中央的计算组件(具有一个或多个中央处理器和存储模块)和多个具有输入端和输出端的组件。
这样模块化构建的PLC1能够通过补充组件而简单地扩展。在此,与过程的复杂性和构建自动化系统的复杂性有关的是在PLC1中需要集成哪些组件。在现今的自动化系统中,PLC1大多也不再是独立的系统,反而,PLC1通过相应的接口(这里未示出)与互联网或内联网连接。这意味着,PLC1是其可以从中获得信息、指令和程序的网络的一部分。例如,PLC1可以通过与处于内联网或互联网中的计算机的连接来接收在过程中输送的资料,从而例如可以通过这种信息优化地控制所述过程的数量和状态。也可设想的是,通过使用者从内联网或互联网的存取来控制PLC1。因此,使用者例如可以借助于计算机(也称为主机)访问PLC1并且检查、变更和修改其用户程序。与之相应的,可以从一个或多个远程控制站或调度中心访问PLC1。必要时,主机可以具有用于呈现过程流程的可视化装置。
为了控制自动化系统的过程,PLC1与自动化设备连接。为了保持低的接线成本,针对这种连接使用总线系统。在图1中示出的实施例中,PLC1借助于上级的总线2与下级的本地总线系统的本地总线主控装置3连接,所述总线在这里示出的实施例中可以是现场总线。但是,在上级的总线2处不仅可以像这里示出的实施例中那样连接本地纵向的本地总线主控装置3,而且也可以连接构造用于与PLC1通信的其他任意用户设备(在这里未示出)。
在这里示出的实施例中,上级的总线2与本地总线主控装置3连接。为此,本地总线主控装置3具有第一接口4,所述第一接口这样设计,使得其可以与上级的总线2连接。为此,接口4例如可以具有插口形式的接收端并且上级的总线2可以具有插头,该插头可以由插口容纳。在此,插头和插口例如可以是模块化插头和模块化插座,亦即上级的总线2的每条芯线都以一定连接在模块化插座中电学地或者光学地连接。但是,对于本领域技术人员来说,也已知设计接口4的其他可能性,从而可以将本地总线主控装置3与上级的总线2电学地或光学地连接。在此,本领域技术人员已知螺纹连接、旋接、卡扣连接或插塞连接,借助于这些连接方式能建立电学的或光学的连接。在此,大多是公插头由母配件容纳。这种容纳方式大多不仅建立电学的或光学的连接,而且也确保两个部件的机械耦联并且可以仅利用一定的力就能再次拆卸。但是也可设想的是,上级的总线2与接口4固定地接线。
在这里示出的实施例中的本地总线主控装置3具有另一个第二接口,以便连接本地总线主控装置3与本地总线。在本地总线上连接或者形成数据总线用户设备7a、7b、……、7n。本地总线以有利的方式这样构造,使得由本地总线主控装置3发送的数据包通过所有与本地总线连接的数据总线用户设备7a、7b、……、7n传输并且返回传输给本地总线主控装置3。在此,一个数据总线用户设备7a、7b、……、7n总是仅从其上游的数据总线用户设备7a、7b、……、7n接收数据包的一部分。包含在这部分中的数据由数据总线用户设备7a、7b、……、7n处理,在此时间段之后,将这部分继续传送给下游的数据总线用户设备7a、7b、……、7n并且同时从上游的数据总线用户设备7a、7b、……、7n接收数据包的新的一部分。数据包的所有部分以这种方式连续经过所有数据总线用户设备7a、7b、……、7n。本地总线以有利的方式构造为环型的结构。这样的本地总线也可以称为环型总线6。备选地,本地总线也可以构造为线型的或星型的或者由前述的组合或混合形式构造。在此,通过本地总线主控装置3的第二接口实现数据包的发送和接收。在这里示出的实施例中,第二接口分成第一部分5a和第二部分5b。第二接口的第一部分5建立环型总线6中的下行连接并且第二接口的第二部分5b建立环型总线6中的上行连接。
在示出的实施例中,环型总线6具有多个数据总线用户设备7a、7b、……、7n,所述环型总线的数据发送方向在图1中示出的实施例中以箭头示出。在这里示出的实施例中,所述数据总线用户设备7a、7b、……、7n分别具有接口8,以便从上游的或前置的数据总线用户设备7a、7b、……、7n接收数据。在数据总线用户设备7a的情况下,该数据总线用户设备经由接口8接收来自上游的本地总线主控装置3的数据。此外,在这里示出的实施例中,数据总线用户设备7a、7b、……、7n分别具有接口9,以便将数据继续传送给下游的或后置的数据总线用户设备7a、7b、……、7n。在数据总线用户设备7a的情况下,所述数据经由接口9发送到下游的数据总线用户设备7b。在此,接口8和9用于沿环型总线6的下行方向、亦即远离本地总线主控装置3传播数据。此外,在该实施例中,数据总线用户设备7a、7b、……、7n也具有接口10和11,以用于沿环型总线6的上行方向、亦即朝向本地总线主控装置3传播数据。在数据总线用户设备7a的情况下,接口10在此设计用于接收来自下游的或后置的数据总线用户设备7b的数据,并且接口11设计用于将数据继续传送给上游的或前置的数据总线用户设备(这里是本地总线主控装置3)。因此,也可以说,接口9和11是发送接口,而接口8和10是接收接口。
在这里示出的实施例中,接口与PLC1的连接或者说数据总线用户设备7a、7b、……、7n的连接借助于线缆或者用于借助电触点直接或间接接触的电路板实现。另一备选方案在于,无线地建立各个连接,并且所述接口均提供对所用的无线标准的必要转换。
即使本地总线主控装置3与各个数据总线用户设备7a、7b、……、7n在这里示出的实施例中呈现为相互间隔的,亦即本地总线主控装置3与数据总线用户设备7a、7b、……、7n非中心地设置,本领域技术人员也清楚,数据总线用户设备7a、7b、……、7n和本地总线主控装置3(也是环型总线6的一个数据总线用户设备)也可以直接相互连接。在此,其中一个数据总线用户设备的触点例如可以作用于直接相邻的数据总线用户设备的相应的容纳端或者容纳触点,以便因此建立在所述数据总线用户设备之间的电连接,以便可以沿下行或上行方向发送数据。数据总线用户设备7a、7b、……、7n例如可以在远离主控装置的一侧具有容纳端并且在面向主控装置的一侧具有触点。于是,如果数据总线用户设备7a、7b、……、7n相应地串列布置,则其中一个数据总线用户设备7a、7b、……、7n的触点相应地嵌接到另一个数据总线用户设备7a、7b、……、7n的容纳端中并且可以产生电连接。于是,本地总线主控装置3在作用于第一数据总线用户设备7a的容纳端的一侧相应地具有触点,以便因此在接口5a和8或者接口5b和11之间产生电连接。不过,本领域技术人员也已知两个直接相邻设置的数据总线用户设备7a、7b、……、7n建立电学的或光学的连接的其他可能性,例如压力接触、闸刀式接触和叉式接触。
如果数据总线用户设备7a、7b、……、7n和本地总线主控装置3直接相互连接,那么它们也可以具有机械的容纳端或者机械的紧固器件,利用这种容纳端或紧固器件可以将数据总线用户设备7a、7b、……、7n与本地总线主控装置3相互连接。在此,数据总线用户设备7a、7b、……、7n例如可以在一侧具有突出部并且在另一侧具有侧凹部。于是,如果数据总线用户设备7a、7b、……、7n串列布置,那么其中一个突出部嵌接到另一个数据总线用户设备7a、7b、……、7n的侧凹部中,从而产生机械的耦联。为了串列布置数据总线用户设备7a、7b、……、7n,这些数据总线用户设备也可以设置在一个共同的容纳端、例如安装轨上。为了紧固在安装轨上,数据总线用户设备7a、7b、……、7n可以具有相应的紧固器件。备选地或附加地,数据总线用户设备7a、7b、……、7n例如也可以具有能可拆卸地连接的紧固器件,利用所述紧固器件可以将数据总线用户设备7a、7b、……、7n紧固在安装轨上或者紧固在另一个容纳端上。为此,能可拆卸地连接的紧固器件是可更换的,并且用于期望的容纳端的相应的紧固器件可以与数据总线用户设备7a、7b、……、7n连接,从而可以将这些数据总线用户设备紧固在期望的容纳端上。
此外,数据总线用户设备7a、7b、……、7n在图1中示出的实施例中也具有处理单元12。所述处理单元12可以是算术逻辑单元或者另一类型的运算器,借助于所述运算器可以处理数据。处理单元12优选是数据总线用户设备7a、7b、……、7n的集成的组成部分,以便确保特别快速且时间上同步地加工数据。
处理单元12也可以被称为数据总线用户设备的总线路。亦即,处理装置12经由输入端8和10接收数据并且将数据输出到输出端9和11上。此外,处理装置12可以从输入端/输出端13和14接收或者输出数据。此外,处理单元12可以访问数据总线用户设备7a、7b、……、7n的存储器(在这里未示出),例如在所述存储器中存储数据、过程数据或指令列表。
处理单元12可以设计用于处理接收的数据以及输出数据。可以从上游的数据总线用户设备或者从数据总线用户设备7a、7b、……、7n的输入端13接收待处理的数据。在此,数据总线用户设备7a、7b、……、7n的输入端13与传感器15连接,所述传感器例如发送测量数据、状态数据等等。可以将处理过的数据输出到下游的数据总线用户设备上或者输出到数据总线用户设备7a、7b、……、7n的输出端14上。在此,数据总线用户设备7a、7b、……、7n的输出端14可以与执行器16连接,所述执行器例如借助其发出的数据执行特定的动作。如果沿上行方向也发生数据的处理,那么也可以从下游的数据总线用户设备7a、7b、……、7n接收数据并且将处理过的数据发送到上游的数据总线用户设备7a、7b、……、7n上。
为了简单起见,在这里示出的实施例中,数据总线用户设备7a、7b、……、7n仅示出为具有一个输入端13和一个输出端14并且数据总线用户设备7b也仅与传感器15和执行器16连接。但是本领域技术人员清楚,数据总线用户设备7a、7b、……、7n可以具有多个输入端和输出端13和14,并且可以与多个不同的传感器15和执行器16连接。在此,描述传感器15的特征在于,传感器15接收数据或信号并且发送给数据总线用户设备7a、7b、……、7n,而执行器16从数据总线用户设备7a、7b、……、7n接收数据或信号并且基于这些数据或信号执行动作。
备选地,接口8、9、10和11可以集成在模块单元中并且数据总线用户设备7a、7b、……、7n可以插接到所述模块单元上。所述模块单元也可以称为环型总线6的基本元件。在此,通过模块单元构建环型基础结构并且数据总线用户设备7a、7b、……、7n是可更换的,从而环型总线6可以利用任意的数据总线用户设备7a、7b、……、7n构建。借助模块单元也确保,即使移除一个数据总线用户设备7a、7b、……、7n,在剩余的数据总线用户设备7a、7b、……、7n之间的通信也不中断,因为这种通信通过仍存在的模块单元执行。
基于其与传感器15或执行器16连接的输入端和输出端13、14,在该实施例中示出的数据总线用户设备7a、7b、……、7n也经常称为I/O模块。即使数据总线用户设备7a、7b、……、7n在这里示出的实施例中呈现为与传感器15或者执行器16空间分离,传感器15或执行器16也可以集成在I/O模块中。
在这里示出的实施例中示出的环型总线6基于数据包或电报的循环重复的序列而经常被称为循环帧通信。在此,例如由本地总线主控装置3生成数据包,所述数据包具有包头部分、过程数据部分或信息数据部分和校验和部分。在此,数据包的过程数据部分或信息数据部分可以具有有效数据、控制数据和过程数据,如图2和图3中所示。将其中一个或多个数据包从本地总线主控装置3沿下行方向发送给环型总线6的第一数据总线用户设备7a。该第一数据总线用户设备通过接口8接收数据包的第一部分。数据包的这样的部分随后也被称为片段或单元。接着,数据总线用户设备7a执行这部分的处理,并且接着将这部分经由接口9继续传送至下一个数据总线用户设备7b,该第一数据总线用户设备7a优选同时接收数据包的第二部分,等等。在此,数据包的这部分的大小、亦即数据包的分段与数据总线用户设备7a、7b、……、7n的接收能力有关,例如可以为了处理而在数据总线用户设备7a、7b、……、7n上同时存在数据包的固定位数、例如8位(Bits)。
与之相应地,数据包以单元的方式、片段的方式或者间隔的方式(例如部分地或者以8位符号)经过数据总线用户设备7a、7b、……、7n。接着,由最后的数据总线用户设备(在这里示出的实施例中是数据总线用户设备7n)处理的数据包沿上行方向经过环型总线6,从而从最后的数据总线用户设备7n开始再次朝向本地总线主控装置3通过所有数据总线用户设备7a、7b、……、7n上行地发送这部分。为此,要么最后的数据总线用户设备7n具有可控的桥,其连接接口9与接口10,要么在最后的数据总线用户设备7n上连接可控的桥(在这里未示出),其承担将循环帧的部分从接口9传送到接口10上的功能。备选地,数据总线用户设备7n的接口10也借助旁路线(这里未示出)直接与本地总线主控装置3的接口5b连接。
如在这里示出的实施例中那样,数据包可以沿上行方向通过各个数据总线用户设备7a、7b、……、7n返回到本地总线主控装置3,而不发生进一步处理。但是也可以设想,沿上行方向再次发生数据包的处理,从而可以两次处理数据包,一次沿下行方向朝向数据总线用户设备7n处理,并且一次沿上行方向朝向本地总线主控装置3处理。沿上行方向例如可以通过信号刷新和/或相移进行处理。
在沿下行方向(亦即远离本地总线主控装置3)或者沿上行方向(亦即朝向本地总线主控装置3)处理数据包时,借助指令列表完成处理,其中,所述指令列表包含指令组,这些指令组可以被数据总线用户设备7a、7b、……、7n的处理单元12处理。指令列表本身在初始化阶段中由本地总线主控装置3发送给各个数据总线用户设备7a、7b、……、7n,或者有利地,在进行通信期间发送给数据总线用户设备7a、7b、……、7n,从而在不中断通信的情况下发生数据总线用户设备7a、7b、……、7n的程序化。
图2示出第一数据包17的示意图,所述第一数据包用于将数据总线用户设备7a、7b、……、7n程序化,而不必中断运行的通信。在此,第一数据包17可以嵌入运行的循环的通信的数据包的序列中并且用于将数据总线用户设备7a、7b、……、7n程序化。在此,数据总线用户设备7a、7b、……、7n的程序化借助于指令列表信息发生,所述指令列表信息在第一数据包17中被发送给待程序化的数据总线用户设备7a、7b、……、7n。
在此,第一数据包17包括通常的包头部分、信息部分和校验和部分。包头部分包含字段18,该字段包含唯一的一次性的位模式IDE,其也可以称为代码字或标识符。数据总线用户设备7a、7b、……、7n了解,当发生位模式MWR时,向数据总线用户设备7a、7b、……、7n提供数据。在此,所述数据可以刚好是用于数据总线用户设备7a、7b、……、7n的指令列表,以便将数据总线用户设备7a、7b、……、7n程序化。第一数据包17的包头还可以包含其他信息,这些信息对于控制或者故障识别来说是需要的(在这里未示出)。
第一数据包17的信息部分包含字段19,在该字段中寄存要寻址的数据总线用户设备7a、7b、……、7n的地址。仅地址与寄存在字段19中的地址一致的数据总线用户设备7a、7b、……、7n读取第一数据包17的信息部分的指令列表数据21。信息部分也还可以具有另一字段20,该字段可以由地址寄存在字段19中的相应的数据总线用户设备7a、7b、……、7n使用,以用于故障识别、故障传播,或者改字段20可以包含应将指令列表数据21存储在哪里的指示。指令列表数据21可以包含至少一个或多个指令列表。在将指令列表存储在相应的数据总线用户设备7a、7b、……、7n之后,也可以说,进行数据总线用户设备7a、7b、……、7n的程序化。在此,指令列表具有指令组,这些指令组定义了要由数据总线用户设备7a、7b、……、7n执行的处理。此外,第一数据包17也还可以具有校验和部分,利用该校验和部分可以执行循环的冗余检查。
在借助第一数据包17将数据总线用户设备7a、7b、……、7n以后,亦即一旦将指令列表存储在数据总线用户设备7a、7b、……、7n中,该数据总线用户设备7a、7b、……、7n就准备处理过程数据。这些过程数据已经可以在相同的循环帧(这种循环帧引起数据总线用户设备7a、7b、……、7n的程序化)中接收,亦即在第二数据包中接收,该第二数据包在循环帧中跟随第一数据包。这种第二数据包在图3中示出。然而,第二数据包22也可以在另一循环帧中接收。
图3示出第二数据包22的示意图,该第二数据包用于将过程数据发送给环型总线6的数据总线用户设备7a、7b、……、7n。在此,所述第二数据包22可以嵌入运行的通信的循环帧中,亦即作为过程数据的部分嵌入。
第二数据包22包括通常的包头部分、信息部分和校验和部分。包头部分包含字段23,该字段包含唯一的一次性的位模式IDE,其也可以称为代码字或标识符。数据总线用户设备7a、7b、……、7n了解,当发生位模式IDE时,传输过程数据包。此外,第二数据包22的包头部分还可以包含其他信息,这些信息可以用于控制和/或故障查找。第二数据包22的信息部分首先可以具有指令列表索引字段24(ILI),其指示出数据总线用户设备7a、7b、……、7n应该使用哪种指令列表。
例如可以在环型总线6的正常运行中规定,所有数据总线用户设备7a、7b、……、7n使用其第一指令列表,反之,在故障情况下使用第二指令列表。也可设想的是,第一指令列表包括用于在循环帧内在第一过程数据包中的过程数据的指令,并且第二指令列表包括用于在循环帧内在第二过程数据包中的过程数据的第二指令组。在此,第一种配置与第二种配置不同。例如,在连接到数据总线用户设备7a、7b、……、7n上的执行器进行工具更换时,需要另一种处理,因为在这种情况下也将其他用于新工具的特定的过程数据(亦即例如位)传输到循环帧中的数据包中。亦即,第一指令列表例如可以在工具更换前使用,反之,第二指令列表在工具更换后使用。指令列表索引24可以直接指向在数据总线用户设备7a、7b、……、7n中存储的指令列表的存储位置,或者指令列表索引可以具有一值,数据总线用户设备7a、7b、……、7n例如可以利用该值经由查找表找到相应的指令列表,从而根据指令列表索引24使用第一或第二指令列表或另一由指令列表索引24指明的指令列表。
此外,第二数据包22的信息部分具有实际的过程数据25a、25b、25c、……。过程数据25a、25b、25c、……在数据总线用户设备7a、7b、……、7n上使用,以便执行控制、调节和评价。过程数据25a、25b、25c、……例如可以发送给执行器,以便引起执行器的调节运动。过程数据25a、25b、25c、……因此可以是控制信号或者被数据总线用户设备7a、7b、……、7n转换成相应的控制信号。过程数据25a、25b、25c、……例如也可以是由与数据总线用户设备7a、7b、……、7n连接的传感器接收的测量值,并且可以用作极限值或调节值,以便相应地控制执行器。亦即,数据总线用户设备7a、7b、……、7n相应地将过程数据25a、25b、25c、……转换成控制信号和/或测量信号,或者反之亦然。
此外,第二数据包22具有计数器值26,该计数器值由每个运行第二数据包22的数据总线用户设备7a、7b、……、7n增值或减值,从而当第二数据包22再次到达本地总线主控装置3上或者第二数据包22的该部分再次到达本地总线主控装置3上时,可以确定是否所有数据总线用户设备7a、7b、……、7n已经处理循环帧,这也固有地得出关于数据总线用户设备7a、7b、……、7n是否具有故障以及未执行处理的信息。此外,第二数据包22也还可以具有校验和部分,利用该校验和部分可以执行循环的冗余检查。
图4示出第一和第二数据包17、22经过环型总线6的相应的数据总线用户设备7a、7b、……、7n的示例性的时间流程图。在这里示出的实施例中,借助第一数据包17将第二数据总线用户设备7b程序化。
在时间τ=1时,仅数据总线用户设备7a从本地总线主控装置3以第一符号接收第一数据包17的位模式MWR。在这种情况下,数据总线用户设备获知,第一数据包17的随后的符号携带指令列表数据21。但是在该时间点,数据总线用户设备7a不知道这些指令列表数据21是否指定用于其本身或者环型总线6中的另一个数据总线用户设备7b、……、7n。通过获得具有位模式MWR的符号可以将数据总线用户设备7a置于接收模式。亦即,数据总线用户设备7a等待存储在可存取的存储器中的指令列表数据21。为了确保环型总线6的确定的特性,所述符号在数据总线用户设备7a上维持一定的时间,之后该数据总线用户设备将该符号继续传送给下游的数据总线用户设备(在这里为数据总线用户设备7b)。
在时间τ=2时,数据总线用户设备7a将第一符号继续传送给第二数据总线用户设备7b并且从本地总线主控装置3获得另一符号。在该时间τ=2内,第二数据总线用户设备7b也处于接收模式中,亦即通过获得具有位模式MWR的符号而处于接收模式中。随着继续传送携带MWR位模式的符号将所有数据总线用户设备7a、7b、……、7n置于接收模式中。
在时间τ=3时,第一数据总线用户设备7a从本地总线主控装置3接收第一数据包17的如下符号,在该符号中表明指令列表数据21所指向的数据总线用户设备7a、7b、……、7n的一对一的地址。在这里示出的实施例中,该符号包含指定用于第二数据总线用户设备7b的指令列表数据21的信息。亦即,如果第一数据总线用户设备7a执行其一对一的地址与所接收的符号中的一对一的地址的比较,那么数据总线用户设备7a确定,其地址与在该符号中给出的地址不一致。在这种情况下,数据总线用户设备7a离开其接收模式,因为已知随后的指令列表数据21不是指定用于该数据总线用户设备7a。在此,对于第一数据总线用户设备7a来说,指令列表数据21指定用于谁是不重要的,重要的仅在于,这些指令列表数据不是指定用于它的,这通过比较得出。
在这里示出的实施例中,在时间τ=4时,第一数据总线用户设备7a将具有地址的符号继续传送给第二数据总线用户设备7b。该第二数据总线用户设备执行在符号中表明的一对一的地址与其一对一的地址的比较并且确定一致性。亦即,随后的指令列表数据21指定用于该数据总线用户设备7b。因此,一旦数据总线用户设备7b在随后的符号中接收指令列表数据21,则这些指令列表数据存储在可存取的存储器中。亦即,将第二数据总线用户设备7b程序化。
虽然通过具有MWR位模式的符号将其他以符号方式运行第一数据包17的数据总线用户设备7n置于接收模式中,不过与随后的携带地址的符号的比较表明,指令列表数据21不是指定用于这些数据总线用户设备7n,从而这些数据总线用户设备可以再次离开接收模式。
在这里示出的实施例中,在第一数据包17之后跟随第二数据包22。该数据包22也以符号方式经过环型总线6、亦即数据总线用户设备7a、7b、……、7n。
在假定的时间τ=n内,第一数据总线用户设备7a接收具有位模式IDE的符号,该符号将数据总线用户设备7a置于处理模式中,因为所述位模式表明,随后的符号携带过程数据25a、25b、25c、……。接着,进一步通过数据总线用户设备7b、……、7n传送所接收的具有位模式IDE的符号,以便将这些数据总线用户设备置于处理模式中。在具有IDE位模式的符号之后跟随具有指令列表索引ILI的符号。数据总线用户设备7a通过指令列表索引获知关于其应使用哪些存储的指令列表,以便处理随后的过程数据25a、25b、25c、……。这些指令列表索引也通过所有数据总线用户设备7b、……、7n传送。在第二数据总线用户设备7b中,所述指令列表索引例如可以指向刚刚存储的指令列表,这些指令列表通过第一数据包17的指令列表数据21接收。因此,在相同的循环帧中,可以进行数据总线用户设备7b的程序化以及之后直接将该程序化用于处理过程数据25a、25b、25c、……。
即使在图2至图4中讨论的实施例中,第一和第二数据包17、22被认为在相同的循环帧中发送,本领域技术人员也清楚,该第一和第二数据包17、22也可以在不同的循环帧中发送,并且一个循环帧也可以仅包含所示的数据包17、22之一。
过程数据25a、25b、25c、……借助于指令列表索引和所存储的指令列表的处理在图5中示出。
图5示出借助于指令列表27a、27b、27n对过程数据25a、25b、25c、……的示例性的处理。在这里示出的实施例中,将指令列表27a、27b、27n作为表格呈现。在此,指令列表27a存储在数据总线用户设备7a中,指令列表27b存储在数据总线用户设备7b中并且指令列表27n存储在数据总线用户设备7n中。在这里示出的实施例中,表格的每行包含两个指令,可以利用数据包的刚好在数据总线用户设备7a、7b、……、7n这两个指令上待定的符号执行这两个指令。但是,本领域技术人员了解,即使这里仅示例性地示出针对两个工作时钟的两个指令,每个符号也可以执行其他数量的指令。此外,本领域技术人员清楚,指令列表27a、27b、27n也可以针对过程数据25a、25b、25c、……的符号中的每位具有单独的指令。仅为了简单和清楚起见,在这里省略了为每位指定相应的指令。
一旦第一数据总线用户设备7a接收具有指令列表索引24的符号,该第一数据总线用户设备就根据指令列表索引24找出适当的指令列表。在这里示出的实施例中,数据总线用户设备7a存储两个指令列表,即指令列表27a'和27a”。在这里示出的实施例中,指令列表索引24指向指令列表27a',例如指向相应的指令列表27a'的第一指令的存储位置。随着获得携带过程数据25a的下一个符号,执行指令列表27a'中的第一指令。数据总线用户设备7a的指令列表27a'的第一行是空的,这以“-”表示。亦即,数据总线用户设备7a不利用接收的第一符号执行处理,因为不存在指令。代替空的指令,指令列表27a'此时也可以具有“跳过”(“SKIP”)指令。针对携带过程数据25b的下一个符号,数据总线用户设备7a在其指令列表27a'中也不具有指令。亦即,所述过程数据25b也不是由数据总线用户设备7a处理,而是仅在一定时间(例如两个工作时钟)内维持在该数据总线用户设备上,以便确保环型总线6的确定的特性,从而针对每个刚好存在的符号为每个数据总线用户设备7a、7b、……、7n提供相同的时间。仅对于到达数据总线用户设备7a的第三符号来说,具有如下指令,即,读取“R”(英语:Read)过程数据25c并且将过程数据25c写入“W”(英语:Write)输出端14,该输出端例如可以与执行器16连接,以便在那里引起调节运动。
在这里示出的实施例中的数据总线用户设备7b也存储两个指令列表,即指令列表27b'和27b”。在此,至少一个指令列表27b'和27b”可以是一种事先通过第一数据包17的指令列表数据21通知数据总线用户设备7b的指令列表。亦即,可以是在获得过程数据25a、25b、25c、……之前直接将数据总线用户设备7b程序化的指令列表。在这里示出的实施例中,指令列表27b'在第一行中包含读取“R”的指令,也就是说,按照携带指令列表索引24的符号从到达数据总线用户设备7b的第一符号读取过程数据25a。第二指令的内容是写入“W”,也就是说,写入刚刚读取的过程数据25a,也就是说,在存储位置0x00处写入到存储器中。对于到达数据总线用户设备7b的第二符号来说,指令列表具有处理步骤,不过这些处理步骤不是直接与携带所述符号的过程数据25b相关联,而是仅利用数据总线用户设备7b在其必须继续传送符号之前所具有的时间。在这里示出的实施例中,指令列表27b'具有读取数据总线用户设备7b的输入端13的指令(这以“R”标记)和从存储器读取事先存储的过程数据25a的指令。输入端的读取例如可以是,读取与输入端13连接的传感器的传感器值。对于到达数据总线用户设备7b的第三符号来说,指令列表27b'具有如下指令:完成从输入端13读取的值与过程数据25a的逐位的组合“AND”和将该组合写入所述符号、亦即覆盖过程数据25c。过程数据25c可以被覆盖,因为这些过程数据已经被第一数据总线用户设备7a读取并且不再被其他数据总线用户设备7b、……、7n需要。以这种方式将计算出的值继续传送给本地总线主控装置3或者控制器1。本领域技术人员了解,在这里也可以执行其他计算或者位操作,并且所给出的位操作仅出于说明的目的而不能限制性地理解。
数据总线用户设备7n也可以具有两个指令列表27n'和27n”,其中,通过指令列表索引24表明应使用哪个指令列表27n'或27n”。在这里示出的实施例中,指令列表索引24指示所有数据总线用户设备7a、7b、……、7n使用它们的第一指令列表,亦即数据总线用户设备7n使用其第一指令列表,即指令列表27n'。在这里示出的实施例中,所述指令列表27n'仅具有一个用于按照指令列表索引24到达数据总线用户设备7n的第二符号的指令,其中,所述指令的内容是读取“R”过程数据25b。
本领域技术人员了解,不限制性地理解指令列表的这里示出的实例,并且在实现本发明时存在任意类型的指令列表和指令的任意组合,而不会背离本发明的思想。
在此描述的方法也可以实现为包含计算机可读的介质,其包括引起计算机执行至少一种所述方法的代码。在此,计算机可读的介质可以任意地实现并且在载体介质、如DVD、CD、硬盘或其他载体介质上提供。
附图标记列表
1 内存可编程的控制器(PLC)
2 上级的总线
3 本地总线主控装置
4 第一接口
5a、5b 第二接口
6 环型总线
7a、7b、7n 数据总线用户设备
8 第一下行数据接口
9 第二下行数据接口
10 第一上行数据接口
11 第二上行数据接口
12 处理单元
13、14 输入端/输出端
15 传感器
16 执行器
17 第一数据包
18 MWR代码字
19 地址
20 另一字段
21 指令列表数据
22 第二数据包
23 IDE代码字
24 指令列表索引
25a、25b、25c 过程数据
26 计数器值
27a、27b、27c 指令列表
Claims (17)
1.用于运行本地总线(6)的数据总线用户设备(7a、7b、……、7n)的方法,所述方法包括:
经由本地总线(6)接收第一数据包(17),其中,所述第一数据包(17)具有其所指向的数据总线用户设备(7a、7b、……、7n)的地址(19)和至少一个指令列表(27a、27b、27n),所述指令列表具有用于处理过程数据(25a、25b、25c)的指令组;
经由本地总线(6)接收第二数据包(22),其中,所述第二数据包(24)具有过程数据(25a、25b、25c);并且
执行用于处理所接收的过程数据(25a、25b、25c)的所述至少一个指令列表(27a、27b、27n)的指令。
2.根据权利要求1所述的方法,其中,所述本地总线(6)是环型总线。
3.根据权利要求1或2所述的方法,其中,所述第一和第二数据包(17、22)是一个循环帧的或两个循环帧的有效数据。
4.根据权利要求1或2所述的方法,其中,所述第一和第二数据包(17、22)具有一定量的符号,其中,每个符号具有一定位数。
5.根据权利要求4所述的方法,其中,接收第一和第二数据包(17、22)包括逐个符号地接收第一和第二数据包(17、22)的符号。
6.根据权利要求4所述的方法,其中,指令的执行包括逐个符号地处理所接收的过程数据(25a、25b、25c),其中,以指令列表(27a、27b、27n)的固定量的指令处理每个符号。
7.根据权利要求6所述的方法,其中,逐个符号地处理所接收的过程数据(25a、25b、25c)包括逐位地处理所接收的过程数据(25a、25b、25c)。
8.根据权利要求7所述的方法,其中,所述逐位地处理包括:
对所接收的符号的至少一位执行位操作,以用于获得至少一个处理好的过程数据。
9.根据权利要求1或2所述的方法,其中,所述地址是一对一的地址,所述一对一的地址用于与数据总线用户设备(7a、7b、……、7n)按地址通信。
10.本地总线(6)的数据总线用户设备(7a、7b、……、7n),所述数据总线用户设备(7a、7b、……、7n)具有:
用于经由本地总线(6)接收第一数据包(17)的器件,其中,所述第一数据包(17)具有其所指向的数据总线用户设备(7a、7b、……、7n)的地址(19)和至少一个指令列表(27a、27b、27n),所述指令列表具有用于处理过程数据(25a、25b、25c)的指令组;
用于经由本地总线(6)接收第二数据包(22)的器件,其中,所述第二数据包(24)具有过程数据(25a、25b、25c);以及
用于执行用于处理所接收的过程数据(25a、25b、25c)的至少一个指令列表(27a、27b、27n)的指令的器件。
11.根据权利要求10所述的数据总线用户设备,其中,所述本地总线(6)是环型总线。
12.根据权利要求10或11所述的数据总线用户设备(7a、7b、……、7n),其还具有:用于经由本地总线(6)将接收的第二数据包(22)发送给另一个数据总线用户设备(7a、7b、……、7n)的器件。
13.用于运行本地总线(6)的、尤其环型总线的方法,其中,所述方法包括:
针对数据总线用户设备(7a、7b、……、7n)产生至少一个指令列表,所述指令列表具有用于处理过程数据(25a、25b、25c)的指令组;
产生第一数据包(17),其中,所述第一数据包(17)具有该第一数据包(17)所指向的数据总线用户设备(7a、7b、……、7n)的地址(19)和所述至少一个指令列表(27a、27b、27n);
产生第二数据包(22),其中,所述第二数据包(22)具有过程数据(25a、25b、25c);以及
经由本地总线(6)将第一和第二数据包(17、22)发送给数据总线用户设备(7a、7b、……、7n)。
14.根据权利要求13所述的方法,其中,所述本地总线(6)是环型总线。
15.根据权利要求13或14所述的方法,其中,所述第一和第二数据包(17、22)分别具有一定量的符号,其中,每个符号具有一定位数,并且其中,将数据包(17、22)逐个符号地发送给数据总线用户设备(7a、7b、……、7n)。
16.具有数据总线用户设备(7a、7b、……、7n)的本地总线(6)的、尤其环型总线的本地总线主控装置(3),所述本地总线主控装置(3)具有:
用于针对数据总线用户设备(7a、7b、……、7n)产生至少一个指令列表的器件,所述指令列表具有用于处理过程数据(25a、25b、25c)的指令组的器件;
用于产生第一数据包(17)的器件,其中,所述第一数据包(17)具有该第一数据包(17)所指向的数据总线用户设备(7a、7b、……、7n)的地址(19)和所述至少一个指令列表(27a、27b、27n);
用于产生第二数据包(22)的器件,其中,所述第二数据包(22)具有过程数据(25a、25b、25c);以及
用于经由本地总线(6)将第一和第二数据包(17、22)发送给数据总线用户设备(7a、7b、……、7n)的器件。
17.根据权利要求16所述的本地总线主控装置,其中,所述本地总线(6)是环型总线。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102017208818.4 | 2017-05-24 | ||
DE102017208818.4A DE102017208818A1 (de) | 2017-05-24 | 2017-05-24 | Initialisierung von Datenbusteilnehmern |
PCT/EP2018/062941 WO2018215295A1 (de) | 2017-05-24 | 2018-05-17 | Initialisierung von datenbusteilnehmern |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110663225A CN110663225A (zh) | 2020-01-07 |
CN110663225B true CN110663225B (zh) | 2022-02-18 |
Family
ID=62222656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880034529.1A Active CN110663225B (zh) | 2017-05-24 | 2018-05-17 | 数据总线用户设备的初始化 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11736318B2 (zh) |
EP (1) | EP3632051A1 (zh) |
CN (1) | CN110663225B (zh) |
DE (1) | DE102017208818A1 (zh) |
WO (1) | WO2018215295A1 (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1321271A (zh) * | 1999-08-30 | 2001-11-07 | Ip菲力股份有限公司 | 控制程序产品及数据处理系统 |
CN1332407A (zh) * | 2000-07-05 | 2002-01-23 | 智原科技股份有限公司 | 用以执行多重指令组的数据处理装置 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5165024A (en) * | 1990-04-12 | 1992-11-17 | Apple Computer, Inc. | Information transfer and receiving system with a ring interconnect architecture using voucher and ticket signals |
US5457683A (en) * | 1993-05-07 | 1995-10-10 | Apple Computer, Inc. | Link and discovery protocols for a ring interconnect architecture |
US5472347A (en) | 1993-09-17 | 1995-12-05 | Allen-Bradley Company, Inc. | System for interconnecting I/O modules for data communications over a common backplane |
US6510141B1 (en) * | 1996-11-27 | 2003-01-21 | Dynarc Inc. Dha Dynamic Network Architecture Inc. | Link auto-configuration protocol specification topology |
JPH10228421A (ja) | 1997-02-14 | 1998-08-25 | Nec Ic Microcomput Syst Ltd | メモリアクセス制御回路 |
US6496516B1 (en) * | 1998-12-07 | 2002-12-17 | Pmc-Sierra, Ltd. | Ring interface and ring network bus flow control system |
WO2002015517A2 (en) * | 2000-08-16 | 2002-02-21 | Microchip Technology Incorporated | Remote configuration of network node via controller area network messages |
US20020191603A1 (en) * | 2000-11-22 | 2002-12-19 | Yeshik Shin | Method and system for dynamic segmentation of communications packets |
US20020084655A1 (en) | 2000-12-29 | 2002-07-04 | Abb Research Ltd. | System, method and computer program product for enhancing commercial value of electrical power produced from a renewable energy power production facility |
US20030167348A1 (en) * | 2001-07-02 | 2003-09-04 | Globespanvirata, Inc. | Communications system using rings architecture |
DE10337699B4 (de) * | 2003-08-16 | 2006-01-12 | Phoenix Contact Gmbh & Co. Kg | Verfahren und Vorrichtung zur Übertragung von Daten über ein Busnetz unter Verwendung des Broadcast-Prinzip |
US8626882B2 (en) * | 2005-10-07 | 2014-01-07 | GM Global Technology Operations LLC | Reconfigurable communication for distributed embedded systems |
US7539888B2 (en) * | 2006-03-31 | 2009-05-26 | Freescale Semiconductor, Inc. | Message buffer for a receiver apparatus on a communications bus |
CN101178644B (zh) * | 2006-11-10 | 2012-01-25 | 上海海尔集成电路有限公司 | 一种基于复杂指令集计算机结构的微处理器架构 |
US8782771B2 (en) | 2007-06-19 | 2014-07-15 | Rockwell Automation Technologies, Inc. | Real-time industrial firewall |
US8122279B2 (en) * | 2008-04-21 | 2012-02-21 | Kabushiki Kaisha Toshiba | Multiphase clocking systems with ring bus architecture |
US9444757B2 (en) * | 2009-04-27 | 2016-09-13 | Intel Corporation | Dynamic configuration of processing modules in a network communications processor architecture |
US8291136B2 (en) * | 2009-12-02 | 2012-10-16 | International Business Machines Corporation | Ring buffer |
WO2014006448A1 (en) | 2012-07-03 | 2014-01-09 | Freescale Semiconductor, Inc. | Cut through packet forwarding device |
US8824603B1 (en) * | 2013-03-01 | 2014-09-02 | Futurewei Technologies, Inc. | Bi-directional ring-bus architecture for CORDIC-based matrix inversion |
KR101576050B1 (ko) | 2014-09-12 | 2015-12-11 | 한국전기연구원 | 복수 노드의 소프트웨어 업그레이드를 위한 방법, 이를 위한 장치 및 시스템 |
CN105046913A (zh) * | 2015-07-09 | 2015-11-11 | 广西牛博物联信息技术有限公司 | 远程环境监测数据采集系统 |
US9871674B2 (en) * | 2015-09-30 | 2018-01-16 | International Business Machines Corporation | Bridging between differing communication buses |
-
2017
- 2017-05-24 DE DE102017208818.4A patent/DE102017208818A1/de active Pending
-
2018
- 2018-05-17 WO PCT/EP2018/062941 patent/WO2018215295A1/de active Application Filing
- 2018-05-17 CN CN201880034529.1A patent/CN110663225B/zh active Active
- 2018-05-17 EP EP18726426.2A patent/EP3632051A1/de active Pending
-
2019
- 2019-11-25 US US16/693,964 patent/US11736318B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1321271A (zh) * | 1999-08-30 | 2001-11-07 | Ip菲力股份有限公司 | 控制程序产品及数据处理系统 |
CN1332407A (zh) * | 2000-07-05 | 2002-01-23 | 智原科技股份有限公司 | 用以执行多重指令组的数据处理装置 |
Non-Patent Citations (2)
Title |
---|
"Performance Evaluation of an Adaptive FPGA for Network Applications";C. Kachris等;《Seventeenth IEEE International Workshop on Rapid System Prototyping (RSP"06)》;20060626;全文 * |
《一种卫星延时遥测分类处理和下传方法》;杨聪伟;《飞行器测控学报》;20140825;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110663225A (zh) | 2020-01-07 |
DE102017208818A1 (de) | 2018-11-29 |
US11736318B2 (en) | 2023-08-22 |
WO2018215295A1 (de) | 2018-11-29 |
EP3632051A1 (de) | 2020-04-08 |
US20200092136A1 (en) | 2020-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110663222B (zh) | 处理过程数据 | |
CN110663228B (zh) | 用于连接数据总线用户设备的模块单元 | |
US20230139414A1 (en) | Bus converter | |
US20240111708A1 (en) | Status signal output | |
US10985941B2 (en) | Initialization of a local bus | |
US11947475B2 (en) | Synchronized processing of process data and delayed transmission | |
CN110663225B (zh) | 数据总线用户设备的初始化 | |
CN110710165B (zh) | 确定本地总线的数据总线用户设备的方法和本地总线主控装置 | |
CN110663029B (zh) | 分布式处理过程数据 | |
CN110663232B (zh) | 指令的预加载 | |
CN110663230B (zh) | 本地总线主机以及运行本地总线的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |