可“监听”的通信用户、通信方法 和具有可“监听”的通信 用户的通信系统 通信系统,例如在德国工业标准DIN 19245T1及DIN 19245T2中和在由彼得·诺伊曼所作的柏林技术出版社出版的“自动化技术中的通信系统”一文中(Peter Neumann:Kommunikationssysteme in der Automatisierungs-technik,Verlag Technik,Berlin)所述的过程现场总线(Profibus)用于实现技术设备中不同的分系统间的信息交换。
实时数据交换,正如用于过程监视或对技术系统的自动控制所要求的实时数据交换那样,具有其特点。过程现场总线(Process Field Bus)是一个由德意志联邦共和国的自动化公司和科学机构实现的标准化工程项目。
过程现场总线是一个现场总线系统并因而在较窄的意义上而言用于对现场的自动化设备的标准连接。
过程现场总线例如可作为自动化工程地过程数据总线系统自成系统地加以应用或作为过程控制系统中的基层通信层自成系统地加以应用。同样也可以考虑将存储器可编程的控制、数字控制、分散的自动化设备或可连接在总线上的传感器及执行机构作为通信-或总线用户。
每个总线用户都是通信系统的一个终端。作为终端的总线用户具有一个通信器件,该通信器件实现了用户对通信系统、总线的连接。通信器件具有一个自己的处理器或一个所谓的ASIC(专用集成电路),基本上能不受用户通常动作影响地对传输过程进行控制。
在通信器件和终端间的数据交换例如可按如下方式进行,终端存储器的一部分就好象是在通信器件中设有的存储器上的“窗口”。人们将此种方法称做共享存储或存储映象I/O。总线的数据被中间存储在为此设置的通信器件的存储区内。终端的控制单元可以直接由通信器件读出数据,就好象这些数据已存储在它自己的主存储器中一样。
就过程现场总线而言,有物理拓朴和逻辑拓朴之分。物理拓朴主要由按照RS-485的线性接口决定。过程现场总线因此是一个串行总线。与此相反,逻辑拓朴一方面相对于由某些总线用户组成的环形链接,这些用户在下面我们称做主动用户,并且另一方面又相对于分别由一个主动用户与其余的并未被包括在该环形链接中的总线用户组成的星形链接,这些其余的并未被包括在该环形链接中的总线用户在下面被称做被动用户。
在主动总线用户中采用标识方法授予总线存取权,其中已知的记号-环-方法是最常用的方法。记号是一个起着标志作用的专用的位模,该记号将由一个主动用户根据逻辑环形链接传递给下一个主动用户。拥有记号的用户具有对媒体的存取权,所述存取权允许或者在有限的时间内允许对总线进行存取,或者在固定数量的传输过程内允许对总线进行存取。
在一个主动用户与一个或多个被动用户间存在逻辑的星形链接。在下面将这样一种星形链接的主动用户称做主控。通过在某个主动用户中实现的全局功能,可由被动的总线用户处调取数据。该调取在下面被称做轮询。只有在某个被动的总线用户由某个主动用户获得分配给它的“允许”(轮询)时,它才可以对媒体进行存取(发送数据)。
现有技术中迄今已知的通信方法的缺点在于,没有固有的发送权的被动通信用户之间是不能进行直接的数据交换的。
因而,本发明的目的在于,提出一种增强的被动通信用户,使之可以直接接收由另一个被动通信用户经总线发送的数据。
该目的通过一个用于与工业控制的总线系统B,尤其是用于与具有可存储器编程控制的总线系统B连接的可“监听”的通信用户(S32-S34)得以实现,
-其中在总线上传输的数据至少具有一个目的标记和一个源标记,
-其中可“监听”的通信用户具有一个自己的标记,
-其中为可“监听”的通信用户设有一个具有至少一个表目的过滤表,该表目分别带有至少两个参数,
-其中第一个参数是目的标记,
-其中第二个参数是源标记,
-其中可“监听”的通信用户一方面当数据的目的标记与其自己的标记一致时,对数据进行接收并且
-其中可“监听”的通信用户另一方面当数据的目的标记和源标记与过滤表表目的相应参数一致时,对数据进行接收。
按照一种有益的设计,为可“监听”的通信用户设有一个暂存所接收数据的缓冲存储区,并且一旦确定,接收的数据是发送给某个可“监听”的通信用户的,则将数据由缓冲存储区传送到一输入存储区中。采用此方式可实现对在总线上传输的数据的暂时存储,其中在缓冲存储区内可对接收的数据的目的标记和源标记进行分析,从而使仅实际指定用于某个可“监听”的通信用户的数据被传送到其输入存储区内,因而本发明的可“监听”的通信用户的设计不会对接收的数据中的有效数据的处理和分析造成影响。
本发明的另一目的在于,提出一种通信系统,其中可以由另一被动的通信用户直接接收由第一被动通信用户通过总线传输的数据。
该目的的实现方案如下,一个由用于工业控制的总线系统,尤其是带有存储器可编程控制的总线系统构成的通信系统具有主动通信用户和被动通信用户,并且至少有一个被动通信用户是“可监听”的通信用户,
-其中在总线上传输的数据具有至少一个目的标记和源标记,
-其中可“监听”的通信用户(S32-S34)具有一个自己的标记K,
-其中为可“监听”的通信用户设有一个带有至少一个表目的过滤表,该表目分别具有至少两个参数,
-其中第一个参表是目的标记,
-其中第二个参数是源标记,
-其中可“监听”的通信用户一方面只有当数据的目的标记与其自己的标记一致时,才对数据进行接收,并且
-其中可“监听”的通信用户另一方面只有当数据的目的标记和源标记与过滤表表目的相应参数一致时,才对数据进行接收。
在由用于工业控制的总线系统,尤其是带有存储器可编程控制的总线系统构成的,具有主动通信用户和被动通信用户的通信系统中,宜采用本发明的可“监听”的通信用户,这是因为采用按照本发明设计的可“监听”的通信用户可以更为有效地在通信系统中实施通信过程。
根据通信系统一有益的设计,可“监听”的通信用户的特征在于,为其设置有一缓冲存储区,在该缓冲存储区内对接收的数据进行中间存储,并且一旦确定,接收的数据是发送给某个可“监听”的通信用户的,则数据由缓冲存储区被传送到一个输入存储区中。按本发明设计的通信用户的优点同样也适用于采用通信用户的通信系统。
本发明的另一目的在于提出一种至少可实现被动通信用户间的直接通讯的通信方法。
该目的通过采用可“监听”的通信用户(S32-S34)的通信方法得以实现,所述用户用于连接在用于工业控制的总线系统(B),尤其是具有存储器可编程控制的的总线系统(B)上,其中在总线(B)上传输的数据(D)至少具有一个目的标记(T)和一个源标记(S),其中可“监听”的通信用户(S32-S34)具有一个自己的标记(K)并且为可“监听”的通信用户(S32-S34)设置有一个带有至少一个的表目的过滤表(F),该表目分别具有至少两个参数(FTx、FSx),其中第一参数(FTx)是目的标记(T)并且其中第二参数(FSx)是源标记(S),其中本方法至少包含下述步骤:
-可“监听”的通信用户(S32-S34)一方面只有当数据(D)的目的标记(T)与其自己的标记(K)一致时,才对数据(D)进行接收并且
-可“监听”的通信用户(S32-S34)另一方面只有当数据(D)的目的标记(T)和源标记(S)与过滤表(F)的表目的相应参数(FTx、FSx)一致时,才对数据进行接收。
按照通信方法的一有益的设计,设置有一个缓冲存储区,在该缓冲存储区对接收数据进行中间存储,并且一旦确定,接收的数据是发送给某个可“监听”的通信用户的,则数据由缓冲存储区被传送到一个输入存储区内。对于按本发明设计的各个通信用户而言所具有的优点同样也适用于通信方法。
就本发明的解决方案及其设计而言,宜采用串行总线,尤其是采用过程现场总线作为总线系统。串行总线可实现甚至远程的抗干扰的数据传输并因而特别适于在工业环境中应用。过程现场总线在自动化工程的应用中得到验证并因而得到了广泛的推广。
下面将对照附图中所示实施例并结合从属权利要求对本发明的进一步的优点和细节加以说明,附图中:
图1示出过程现场总线中的总线用户和通信系统(总线),
图2示出在总线上传输的数据的格式,
图3示出适于实施本发明方法的总线用户,
图4示出按照本发明的示范性的通信过程的用户。
如图1所示,在线性总线B上接有多个主动用户M1、M2和被动用户S32、S33、S34。在此的总线协议是Profibus-DP。用户M1、M2、S32-S34是用于对技术过程进行控制和/或监视的自动化设备。主动用户M1、M2是存储器编程控制(SPS)的中央单元。被动用户S32-S34是可接在总线上的传感器或执行机构或分集式自动化设备,例如用于发送或接收技术过程的状态信息。技术过程主要由为主动用户M1、M2预给定的控制程序监视或控制。尤其是采用控制程序的实时结构对在总线上实现的数据流的方式和方向进行预给定。
根据已有技术,在被动用户S32-34间是不能进行直接通信的;替代此直接通信可实现如下通信,主动用户M1、M2可调取某些被动用户S32-S34的数据或将数据传递给某些被动用户S32-S34。
但如果在第一被动用户,例如S33的范围内的数据要传递给第二被动用户,例如S32,则此点必须在引入至少一个主动总线用户,例如M1的情况下实现。
下面将举例对一个通信过程加以说明,其中在第一被动总线用户S33范围内有一个数据D,该数据D需传递给第二个总线用户S32。只要在本说明书中未明示其它的情况,则始终引用此情况用于进一步说明本发明的实施例。
主动总线用户由被动总线用户S33处调取一个数据D,例如一个数据组或一个输入值。为此主动总线用户M1向被动总线用户S33发送一个专门的数据D,该专门的数据D促使被动总线用户S33将发送的数据传递给主动总线用户M1。
对每个发送的数据D根据总线协议的规定至少补充有有关接收者、目的标记T、和发送者、源标记S的信息。因此一个数据D至少由目的标记T、源标记S和固有的有用数据N构成。在图2中举例示出由此形成的数据结构。根据目的标记T可以明确地判定数据D的接收者。在此情况时,接收者是主动用户M1,主动用户M1接收数据D并对其分析计算。
在对主动用户M1预给定的控制程序的基础上,与具体的通信过程无关,对接收到的数据D的有用数据N的处理是固定的。在选定的举例的通信过程中,需要将有用数据N传送给被动用户S32。在主动用户M1的范围内产生一个数据D,该数据被传递给被动用户S32。采用此方式由从设备S33发送的信息最终到达从设备S32。
有关数据的物理传输本身是公知的。就数据传输的组织而言,对如图1所示的每个总线用户M1、M2、S32-S34,即既包括主动总线用户,又包括被动总线用户,分别至少设有一个输入区E和一个输出区A。
发送的数据D由某个总线用户M1、M2、S32-S34分别存储在其输出区A内并通过总线B传输。在发送数据D的接收者M1、M2、S32-S34处,数据D被传递到输入区E。
一旦接收者M1、M2、S32-S34在其输入区E将数据D的出现记录后,即可对接收的数据D进行分析。该分析至少涉及在数据D中含有的目的标记。如果目的标记T与某接收者的标记一致时,则数据到达其目的地址。
上面对现有技术中已公知的两个没有发送权利的被动总线用户S32-S34间的通信原理作了说明。两个被动总线用户,例如S32和S33间的信息始终采用通过一个主动总线用户M1的迂回路径。
本发明避免了在被动的总线用户S32-S34间的通信过程中采用通过一个主动总线用户M1、M2的不利的迂回路径。
为此增强了被动总线用户S32-S34的功能,使被动总线用户可以“监听”在总线B上进行的传输。由于具有该“监听”功能,因而被动总线用户S32-S34(例如从设备S32)可以不管在总线B上实际传输的数据D是否是发给它的,都可以对数据B进行接收。
在本说明书上面加以说明的通信过程中,为每个总线用户M1、M2、S32-S34及某个接口规定的通信器件KM对总线上的传输进行监视,对该通信器件进行设计,使得仅其目的标记T与某个总线用户的标记一致的数据D被接收。
与上述不同的是,本发明的通信器件KM设计如下,可以接收每个在总线B上传输的数据D。此点将实现被动总线用户S32-S34间有效的通信,下面将对照图3及图4对此进行说明。
由从设备S33传递给从设备S32的数据D首先被传输给一个主动用户M1、M2,例如主控M1。其中对数据D至少补充有接收者的目的标记T,在此例中为主控M1的目的标记,和发送者的源标记S,在此例中为被动用户S33的源标记S。
这时被动总线用户S32-S34对该传输进行“监听”并将数据暂存在一缓冲存储器P(图3)中。
一旦被动总线用户S32-S34在其缓冲存储区P对数据D的出现记录后,即可对数据进行分析计算。该分析计算在采用本发明的通信方法及在按照本发明增强功能的通信用户S32-S34中,涉及的是数据D的目的标记T和源标记S。
为对数据D的目的标记T和源标记S进行分析计算,根据本发明可为某个被动总线用户S32-S34预定一个过滤表F(图4)。该过滤表F的每个表目具有至少两个参数FT、FS,其中这两个参数表示通信用户的地址,例如第一个参数FT表示数据D的接收者M1、M2、S32-S34并且第二个参数FS表示数据D的发送者M1、M2、S32-S34。
过滤表F的表目数量n基本上仅受供过滤表F使用的存储区的限制。从而产生过滤表表目FT1、FS1-FTn、FSn。
为对存储在缓冲存储区P中的数据D进行分析计算,由某个被动总线用户S32-S34将数据D的目的标记T和源标记S与某个过滤表表目FT1、FS1-FTn、FSn进行比较。当过滤表表目FT1、FS1-FTn、FSn的FTx、FSx与被分析的数据D的目的标记T和源标记S一致时,则确定出数据D是发送给某个被动总线用户S32-S34的,在本通信举例中是发送给被动总线用户S32的。
某个被动总线用户S32-S34由缓冲存储区P将这时经确定是发送给它的数据D,接收到其输入区E中(图3)。
随着数据D在接收者S32的输入区E内的出现,以公知的方式开始对数据D的有用数据N进行分析计算及处理。数据D不是发送给它们的其它总线用户将拒绝缓冲存储区P内的存储内容或不对该内容进行分析计算。
在技术设备的设计框架内产生过滤表F的表目FT1、FS1-FTn、FSn,在该技术设备中使用带有按照本发明设计的总线用户S32-S34的通信系统。
因而过滤表表示某些总线用户的相互依赖性。当被动总线用户S33和S34例如是用于接收一有待控制或有待监视的技术过程的状态信息的传感器或分散的自动化设备,且该技术过程的状态信息为另一个分散的自动化设备,例如被动总线用户S32所需,以用于控制该过程TP的一具体的技术装置时,则采用上面简述的技术设备的设计已确定,由总线用户S33提供的数据至少被总线用户S32分析计算。当专用的技术设备的通信系统含有至少一个主动的总线用户M1时,则被动总线用户S32的过滤表F因此至少含有表目FTx=M1、FSx=S33。
或者与通信系统的起动相结合对某些总线用户S32-S34可固定预给定过滤表F或者通过一个用户接口,例如通过一个编码开关或一个键盘事后改变过滤表F。
采用本发明实现的通信关系也适用于由一个主动的用户M1、M2,在此例中为主控M1,向一个被动的用户S32-S34,在此例中为被动用户S32的数据传输的情况。
在由主动的用户M1向被动的用户S32进行数据传输的情况下,对数据D至少补充目的标记T(T=S32)和源标记S(S=M1)。数据D例如含有有用数据N,为对报警情况进行反应,该有用数据必须传递给所有的被动用户S32-S34。在现有技术已公知的数据传输中,主控M1将同一个具有相应适配的目的标记T的数据D顺序地发送给所有参与的被动用户S32-S34。在采用根据本发明实现的数据传输时,主控M1将数据D仅发送给一个被动用户S32,其中只要在其过滤表F中含有表目FTx=S32、FSx=M1,其余的被动用户S33-S34就会与原来的接收者,用户S32同时接收相同的数据D。
由于主动用户M1仅需起动一次数据D的传输,可以省去引发通常必要的其它的传输过程,从而可以减去通信过程的主动用户M1的负载并节省出计算时间用于他用,因而该通信关系是有益的。
另外,由于不管是原来的接收者,被动用户32,还是在过滤表F中具有相应的表目FTx、FSx的其它被动用户S33-S34都同时地对数据D进行接收,该通信关系也是有益的。因而例如可以实现被动用户S32、S33和S34的同步。另外还可以保证由被动用户S32-S34同时实施可能的报警处理,此点采用现有技术中已公知的通信是不可能实现的,这是因为主动用户M1必须将数据D顺序地传递给所有的被动用户S32-S34。
综上所述,对本发明可以简述如下:一个作为通信系统的被动用户且不具有固有的发送权的通信用户S32-S34,却可以对所有通信过程进行“监听”,而根据已有技术它只能接收那些确定向其发送的并根据配属给数据D的目的标记T可以准确识别出的数据D,现在按照本发明它也可以接收到那些其目的标记T和源标记S与在按照本发明增强的通信用户S32-S34中设置的过滤表F的表目FT、FS一致的数据D。采用此方式有益的是,一方面可以实现被动通信用户S32-S34间的直接通信并且另一方面可以实现一个主动的和/或被动的发送者M1、M2、S32-S34与多个按照本发明增强的被动通信用户S32-S34的同时通信。