通过现场总线耦合器的非循环数据传输的制作方法

文档序号:7717811阅读:159来源:国知局
专利名称:通过现场总线耦合器的非循环数据传输的制作方法
技术领域
本发明涉及一种现场总线耦合器;一种具有至少一个现场总线耦合器的系统;一种用于通过现场总线耦合器传输非循环(azyklische)数据的传输方法以及一种计算机程序产品。本发明尤其涉及一种现场总线耦合器,其设置用来可以实现非循环数据的传输。
背景技术
在自动化领域中,目前所有的现场总线耦合器(Feldbusko卯ler)使两个在电流和逻辑上分开的现场总线相互耦合起来。这种现场总线耦合器在各种不同的实例中体现。例如西门子(Siemens AG)公司制造的现场总线耦合器可以实现以下的现场总线的耦合PROFIBUS DP-PROFIBUS PA, PROFIBUS DP-PROFIBUS DP, PROFINET IO-PROFINET 10。因此现场总线耦合器也可以用来耦合不同制造厂商的控制系统,如果这些控制系统支持相应的现场总线的话。 通常的耦合器具有两个电流上分开的接口,它们通过一个在耦合器里的应用固件连接,以便由此使连接于接口上的现场总线相互耦合。同时通过io(输入输出)-数据来实现耦合,其方法是将一端的输出数据映射到另一端的输入数据上。换言之,耦合器应用程序(Koppler即plikation)将数据从耦合器的一个网端复制到耦合器的另一个网端上。在此,每个在现场总线上叠加的控制系统(例如CPU)都只看作为其耦合器的一半,并且借助于耦合器固件来实施数据映射。 在此,现场总线耦合器的输入_和输出数据根据下层的(皿terlagert)现场总线的情况来确定构造,对于PROFIBUS DP和PA例如在模块里,对于PROFINET 10在子模块里。同时哪些现场总线相互耦合,这关系并不很大,这是因为只有地址模型必须是相互可以转
化的。关于最大可以应用的io-数据,则总是取两个现场总线定义和仪器约束条件中的最小值。 现场总线的这种耦合虽然很好地解决了在各个控制系统之间的10-数据的循环传输,然而并未解决事件或者非循环数据的输送问题。此外模型还有可输送的数据量的限制,这些数据量虽然只需要有时候被发出(所谓的非循环数据),然而通常明显大于最大的、通过各自的现场总线所支持的10-数据总量。 为了能够例如在一个PROFINET里实现一种非循环的数据传输,由现有技术已知了两种可能方案。PROFINET是用于制造_和过程自动化的开放式的、制造厂商普遍使用的工业以太网标准。PROFINET使用TCP/IP和IT标准并且可以实现从企业控制层面至现场层面的连续的通信。此外PROFINET还可以实现所有现场总线系统的无缝集成。
按照第一种可能的方案可以利用另外一种协议(例如基于网上传送输入输出的装置的通信(socketbasierte Kommunikation),如开放式用户通信)。在利用另外一种协议时当然必须调用通信组件(发射_/接收组件)并且在这种情况下通信并不经过耦合器。因此这种方式不能应用在那些现场总线必须是电流上分开的和/或现场总线应用了不同的协议的场景中。因为从用户的角度来看,只有当两个相同的现场总线耦合时,或者只有当
3在不同的现场总线耦合时通常应用一种制造厂商特有的解决方案时,才可能实现一种连续的通信,其中这种制造厂商特有的解决方案提供了一种在不同现场总线之间的选定路线。后者限制了在所要耦合的系统之间的一种附加的路由器/开关/网络集线器,这对于用户来说导致提高了成本。 按照第二种可能的方案可以使一种所谓的微型协议以循环数据为基础模型化,以便可以实现一种在发射器和接收器之间的同步信息交换,其中通过现场总线耦合器进行通信。当然,微型协议的模型化要求由用户进行投入很大的编程工作。因此用户被迫自己来解决该问题,然而这是很费事的。因为用户必须对通信过程进行编程,这投入非常大。即使用户通过一种程序库而减轻了员担,基于微型协议的数据必须一直循环地在现场总线上被输送。这意味着一种循环的固定负荷,其也是在较多的数据量(非循环数据)仅相当少被输送时才存在。问题尤其是在于用户在这样一种情况下必须决定他是否一方面要对于
微型协议预定尽可能少的io-数据,以便使循环的固定负荷保持很小,或者他是否要对于微型协议预定尽可能多的io-数据,以便由微型协议中获得相应的性能。

发明内容
因此本发明的目的是通过一种现场总线耦合器可以使非循环数据的传输得以简化和改善。 本发明的目的利用独立权利要求所述的特征来实现。本发明的优选的实施方式在从属权利要求中加以说明。 通过本发明实现了 一种现场总线耦合器,其具有第一和第二网端;和一种用于通过这种现场总线耦合器传输非循环数据的传输方法,其中现场总线耦合器的每个网端具有至少一个接口,用于连接现场总线。数据组从第一网端被映射到第二网端上并中间存储在存储器里。映射的数据组因此可以通过输入模块在第二网端上提供给第二现场总线,作为输入数据组。 数据组应理解为非循环数据,这些非循环数据与那些持久地经过现场总线耦合器的循环数据相比而只是有时候必须从一个子网传输至另一个子网。同时,非循环数据的数据量比循环数据明显地规模更大,循环数据常常只是由单个比特组成。现场总线,例如象PR0FINET IO,PROFIBUS DP/PA等等目前都已经对参数化数据、诊断数据和用户特有的数据的输送提出了定义,其中输送外壳(Transporthillle)简称为数据组。当机器在子网里必须适应于新的规定和/或条件时,那么例如就必须使数据组通过现场总线耦合器进行传输。如果例如产生了新的要求(Charge),那么必须使相应的参数只是一次性地作为数据组来传输,这种数据组,尤其是相比于循环数据来说,具有大规模的数据容量。换言之,本发明使通常的现场总线耦合器扩展了一个(um eine)非循环的接口。 按照本发明充分利用了 数据组机制可以在现场总线耦合器中特别容易地得以配置。因此使常用的现场总线耦合器的固件这样地适应,即使得此数据组在一个网端上由一个配属的控制系统来接收,并被映射到另一个网端上。在那里则可以由另一个控制系统来调用该数据组,或者说将该数据组发送至这个控制系统。迄今为止这种映射只可能用于循环数据,然而并不用于非循环数据。相应地,本发明以标准机制为基础,因而不需要如同例如在上述的微型协议的情况下投入大而又复杂的程序编程。标准机制的一种这样的利用意味着可靠性和低费用。 通过非循环数据只是在需要时(事件控制的或者根据请求)进行传输并且不存在循环的固定负荷,因此使现场总线耦合器和与之相连的现场总线卸载。尤其是可以放弃基于循环数据的应用协议,这种协议带来了循环的固定负荷。因此使用者不必继续担心是否和如何通过现场总线来传输非循环数据。 但即使现在允许耦合器进行数据组(非循环数据)的映射,但受支持的
数据组的最大容量(Gr6l3e)相应地限制了参与耦合器的现场总线的可能的数量(Mengengerilsten)。现场总线提供了用于数据组的专门协议,这些数据组利用一个指令来传输。现场总线特有地,数据组在其长度方面受到限制(在PROFIBUS DP中例如为240Byte,在PROFINET 10中可能为4Gbyte)。除此之外,也可能存在有仪器特有的限制,它们进一步限制了由现场总线耦合器所支持的容量(Gr6Be )。 因而按照本发明的一种实施方式,事先在现场总线里可以对一个所要映射的数据
组规定最大的容量,以便一方面避免现场总线耦合器的可能的故障,另一方面可以传输尽可能大的数据量。对于所要映射的数据组的最大容量的规定也可以由用户以简单的类型和方式来实现。为此在实践中只需将一个功能组件调用给并适应于现场总线耦合器的固件,
而不需要编程方面的知识。当然,在规定所要映射的数据组的最大容量时也应该重视数据
组进行复制所在的存储器足够大以便可以对具有最大容量的数据组进行中间存储。
本发明的另一个优点在于数据组在耦合器里的传输不取决于所连接的现场总线
的负载状况。数据组作为现场总线的输出数据组在现场总线耦合器上被输出,该耦合器实施其它的过程,如映射和中间存储。换言之,将数据组写入现场总线耦合器的网端里,并从现场总线耦合器的另一个网端中读出该数据组。所连接的现场总线是否过载或者失效,这对于现场总线耦合器的按规则的功能原理来说并不是决定性的。因而尤其可以抑制在通过现场总线耦合器传输数据时,在各自的现场总线里的循环时间的波动(起伏)。 对于每个应该通过现场总线耦合器进行传输的数据组都可以分配一个数据组号
码,其用于进行识别,并且对于连接于现场总线的现场仪器来说可以具有一种特定的意义。存在着不同类型的数据组号码,它们在不同的现场总线标准中来确定。有些数据组号码具有一种固定的意义,有些则是制造厂商特有的,而有些对于用户来说是不容易了解的。 按照本发明的一种实施方式,至少一个输出模块和至少一个输入模块是用来接收和提供数据的混合模块。混合模块的优点在于数据可以读出和写入。在一个可替换的实施方式中,现场总线耦合器在两个网端上包括至少一个输出-和输入-模块。那么例如可以规定某些地址范围用于输入或用于输出。 一个通过现场总线连接于现场总线耦合器的控制系统只是看作相应网端的模块,其中控制系统可以写在输出(子-)模块上并由输入(子-)模块读取。如果在控制系统的网端上设置混合(子-)模块,那么可以由此读取上层的(Uberlagerte)控制系统并写入其中。 如上所述,控制系统在现场总线耦合器的网端上只是看作为对应的模块,这是因为现场总线耦合器使相互耦合的子网在电流和逻辑上彼此分开。这带来的优点在于不会发生现场总线耦合器的故障、病毒或类似情况,并因而不可能从一个子网转送至另一个子网中。 按照本发明的另一种实施方式,现场总线耦合器的至少一个存储器(在该存储器中映射了其中一个网端的数据组)是单个的存储模块,该存储模块以逻辑上划分为用于第一网端的数据和第二网端的数据。各个存储模块例如设计成双端口 (Dual-Port)RAM,其中可以从两端同时地进行存取。通过同时的存取,现场总线耦合器的两个分离开的网端可以用共同的数据工作,而在存取速度上相互不会有限制。这例如在数据组必须在两个方向上被传输时则是有利的。可替换地,现场总线耦合器包括用于第一网端的数据的第一存储器;和用于第二网端的数据的第二存储器,作为单独分开的存储模块。存储器在电流上分离开,其优点在于它们是相互独立无关的,并且一个存储器的故障、病毒或类似物并不对另一个存储器产生影响。因此实现了更高的安全性。按照一种设计方案,逻辑上细分的存储器或者是电流上分开的存储器可以设计成一旦发现有故障或者病毒时就使它们发出警报,因此现场总线耦合器可以在进一步的工作过程中重视该情况。例如现场总线耦合器则可以阻止对失效的存储器的继续存取,而使另一个存储器或者说存储区域如此设置,从而使其从逻辑上划分成用于两个网端的数据。 按照本发明的一种优选实施方式,现场总线耦合器的至少一个存储器设计成FIFO-Poffer(先进先出-缓冲器)。因此映射的数据组可以如此长地保留在存储器里,直到其被相应的控制系统调用为止。 一个随后的数据则同样也被写入在存储器里,然而并没有将已经位于其中的数据组覆盖(Uberschreiben)。将存储器设计成FIFO-Poffer在以下情况下是尤其有利的,即在这些情况下,在现场总线端上的循环时间是不同的。例如可以实现一种FIFO-Puffer,其在其中一个网端上以高速(例如12MBit/s)写入在现场总线耦合器中,而在另一个网端上,以明显更低的速度(例如1.5Mbit/s)读出。当然,如果子网在现场总线耦合器的网端上过载且数据组被映射到该网端上,那么FIFO-Puffe则也是有利的。然后可以使数据组一直停留在缓冲器里,直到其被调用为止,其中随后的数据组并不覆盖还未读取的数据组。 当然,至少一个存储器也可以设计成覆盖存储器(Uberschreiben),在该覆盖存储器中由新的数据组来覆盖还未读取的、现有的数据组。那么将一个数据组无缓冲地从现场总线耦合器的一个网端传输到另一个网端上。当例如两个相同的现场总线相互耦合时,这例如才可能,这些现场总线尤其是具有同样的循环时间,而且因此很有可能的是在一个新的数据组被映射之前来读取映射过的数据组。 按照本发明的另一个方面提出了一种系统,其包括至少两个子网,单个部件在这些子网中通过现场总线相互连接,其中子网的现场总线通过至少一个现场总线耦合器,如上述那样相互耦合。例如按照本发明的系统应用在汽车制造中。在汽车的一条生产线上通常布置了多个焊接机器人,其中分别各有一个或几个焊接机器人构成一个机器人单元。各个机器人单元构成子网并通过现场总线耦合器相互耦合。通过该现场总线耦合器来传输循环数据。这种循环数据通常仅由单个比特(0或1)组成,以便例如通知后续的机器人前面的机器人是否完毕或者没有完毕。通过采用一种按照本发明的现场总线耦合器也就可以以特别简单的型式和方式在子网的仪器之间交换更大量的数据,例如新的配置数据,因而可以明显縮短反应时间。 按照本发明的另一个方面提出了一种计算机程序产品,尤其是数字式存储器介质,具有计算机可执行的指令,用于实施如上述地通过现场总线耦合器传输非循环数据的传输方法。


以下参照附图对本发明的优选实施例进行详细说明。 图1示出了一个系统,其具有按照本发明的一个实施例所述的现场总线耦合器, 和 图2示出了通过按照本发明的现场总线耦合器对非循环数据进行传输的方法的 流程图。
具体实施例方式
图1示出了一种系统l,其由二个子网组成,它们通过一个按照本发明的一个实施 例所述的现场总线耦合器4相互耦合。所示的现场总线耦合器4是一种PR0FINET(PN)/ PROFINET(PN)-耦合器(Koppler),用这种耦合器可以在两个PROFINET-网之间快速而简单 地实现一种对设备重要的、确定的数据耦合。图1所示的PN/PN耦合器因此作为一个仪器, 具有两个PROFINET-接口 ,并分别具有一个输出模块5和一个输入模块6,其中接口与对应 的子网相连接。 如图中在现场总线耦合器4的中间通过直线7所表示的那样,现场总线耦合器确 保了使相互耦合的子网可靠地分离开。这也由此来实现在配置(Projektier皿g)中由一 个PN/PN-耦合器形成两个10-装置。PN/PN耦合器的各自另外的部分被称作为耦合伙伴 (Koppelpartner)。当配置结束时使两个10-装置汇集在一起。 正如开头已经所述地,现场总线耦合器4的输出-和输入数据根据下层的 (imterlagert)现场总线的情况来构造,在子模块里的PR0FINET的情况下(未示出)。每个 子模块设有一个专有的地址,在该地址里写入数据组或者从该地址里读出数据组。在所示 的实施例中还设计了 使循环数据无缓冲地从现场总线耦合器4的输出模块5映射至输入 模块6。因此PN/PN-耦合器永久地将子网的循环输出数据复制于另一个子网的输入数据上 (反之亦然)。按此形式和方式可以实现经过现场总线耦合器的短的传输时间。非循环数据 (数据组)相反从输出模块5被映射到输入模块6的网端10, 11上的存储器8中,该存储器 例如设计成FIF0-Puffer。因此在现场总线耦合器4中, 一起压紧的、现场总线耦合器4的 左和右网端10, 11的子模块(未示出)将写入到网端中的数据组在FIFO-Pipe-Modell(先 进先出-管道-模型)中输送至其它网端,在那里准备将通过在那里上层(Uberlagerte) 的控制系统9来读取。当然在有些情况下也可能合理的是有缓冲地传输循环数据和/或 无缓冲地传输非循环数据。 为了将新输入的数据组通知给上层的控制系统9,可以使用不同的替换方案。 例如可以非同步地将警报通知给上层的控制系统9的用户程序(例如在PROFINET 10 Upload&Retrieval的情况下),或者上层的控制系统9的用户程序可以调出(pollen)在有 效数据中的信息(例如比特的脉冲上升沿(Flanke)) —旦数据组通过上层的控制系统9被 读取,则又使在现场总线耦合器4中的资源释放。此外,当读取的控制系统9或者说供给的 控制系统9停止时,也就可以实现资源的释放。在这种情况下可以相应通知对置端由现有 技术已知的机制(例如在I0-数据特征中的拉/插(Ziehen/Stecken)警报)。为了能够估 计出现场总线耦合器4的资源,当其资源紧缺时,现场总线耦合器允许阻止数据组的写入。为此例如可以预定阈值,超出该阈值,现场总线耦合器4的资源就是紧缺的。由于在读取 数据组时在对置端上将资源释放,因此用户可以通过相应的应用流程控制来阻止资源的溢 出。此外,如果在那里未构建对置端,那就可以在输入模块6中拒绝接收数据组。
图2示出了一种用于通过按照本发明所述的现场总线耦合器的非循环数据的传 输方法的流程图。在第一步骤S1中,现场总线耦合器在其第一网端上接收第一现场总线的 输出数据组,该现场总线连接于现场总线耦合器的第一网端。在第二步骤S2中,将该数据 组映射入现场总线耦合器的存储器中。接着在第三步骤S3中,将映射的数据组提供作为用 于第二现场总线的输入数据组,该现场总线连接于现场总线耦合器的第二网端。同时存储 器(数据组在该存储器里被映射)可以是一种FIFO缓冲器,该FIFO缓冲器将映射的数据 组中间存储,一直到其通过相应的控制系统来读取为止。
权利要求
一种现场总线耦合器(4),具有第一和第二网端(10,11),其中每个网端具有至少一个接口用于连接现场总线,所述现场总线耦合器包括-在所述第一网端(10)上的至少一个输出模块(5),用于接收第一现场总线(2)的非循环输出数据组,以及在所述第一网端(10)上的输入模块(6),用于给所述第一现场总线(2)提供非循环输入数据组,-在所述第二网端(11)上的至少一个输出模块(5),用于接收第二现场总线(3)的非循环输出数据组,以及在所述第二网端(11)上的输入模块(6),用于给所述第二现场总线(3)提供非循环输入数据组;-用于将所述非循环输出数据组从所述第一网端上的所述输出模块传输至所述第二网端上的所述输入模块的装置,-用于将所述非循环输出数据组从所述第二网端上的所述输出模块传输至所述第一网端上的所述输入模块的装置,和-至少一个存储器(8),用于中间存储所述传输的数据组。
2. 根据权利要求1所述的现场总线耦合器(4),其中所述至少一个输出模块(5)和所述至少一个输入模块(6)是用来接收和提供数据的混合模块。
3. 根据上述权利要求中任一项所述的现场总线耦合器(4),其中所述至少一个存储器(8)是单个的存储模块,所述存储模块以逻辑上划分为用于所述第一网端(10)的数据和所述第二网端(11)的数据。
4. 根据权利要求1至2中任一项所述的现场总线耦合器(4),所述现场总线耦合器包括作为分开的存储模块的用于所述第一网端(10)数据的第一存储器(8)以及用于所述第二网端(11)数据的第二存储器(8)。
5. 根据上述权利要求中任一项所述的现场总线耦合器(4),其中所述至少一个存储器(8)设计成FIFO缓冲器。
6. —种系统(l),包括至少两个子网,单个部件(9)在所述子网中通过现场总线相互连接,其中所述子网的所述现场总线(2, 3)通过至少一个根据上述权利要求中任一项所述的现场总线耦合器(4)相互耦合。
7. —种用于通过现场总线耦合器(4)传输非循环数据的传输方法,所述现场总线耦合器将至少两个现场总线(2,3)相互耦合,所述方法包括以下步骤-在所述现场总线耦合器(4)的第一网端(10)上接收(Sl)第一现场总线(2)的输出数据组,-在所述现场总线耦合器(4)的存储器(8)里存储(S2)所述数据组,禾口-将所述存储的数据组提供(S3)作为用于在所述现场总线耦合器(4)的所述第二网端(11)上的第二现场总线(3)的输入数据组。
8. 根据权利要求7所述的传输方法,其中规定所要传输的数据组的最大参量。
9. 一种计算机程序产品,尤其是数字式存储器介质,具有计算机可执行的指令,用于实施根据权利要求7或8所述的方法。
全文摘要
本发明涉及一种现场总线耦合器(4);一种具有至少一个现场总线耦合器(4)的系统(1);一种用于通过现场总线耦合器(4)传输非循环数据的传输方法以及一种计算机程序产品。本发明尤其涉及一种现场总线耦合器(4),其设置用来可以实现非循环数据的传输。现场总线耦合器(4)具有第一和第二网端(10,11),其中每个网端具有至少一个接口用于连接现场总线(2,3)。在第一网端(10)上设有至少一个输出模块(5)用于接收第一现场总线(2)的输出数据组。数据组由第一网端映射到第二网端上并且中间存储在存储器(8)里。映射的数据组可以通过输入模块(6)在第二网端(11)上提供给第二现场总线(3),作为输入数据组。
文档编号H04L12/40GK101753395SQ200910211988
公开日2010年6月23日 申请日期2009年12月10日 优先权日2008年12月10日
发明者哈根·伯默尔, 斯特凡·道森德, 格奥尔格·比勒尔, 西格弗里德·普里勒 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1