本发明涉及一种用于在经由工业控制工程的第一自动化构件与第二自动化构件之间故障安全的通信连接传输数据时识别数据损坏的方法,其中,在传输数据结构时为了保护待传输的报文中的数据结构不仅在第一自动化构件方面、也在第二自动化构件方面形成报文的校验和,数据结构此时包括不同的数据类型。
背景技术:
本发明涉及故障安全通信的技术领域,该故障安全通信主要应用于工业化过程自动化或制造自动化中的现场设备、控制构件和类似装置之间的通信。这样的故障安全的通信也称为F通信,其尤其用于安全相关的应用中,尤其是当通信中的错误能够导致人员、动物或有形资产受到危害时。
为了在上述工程领域中进行故障安全的通信,在现有技术中采用受到特别保护的包交换数据传输,尤其是Profisafe协议。
在EP 2 814 193 B1中描述了一种用于在将数据从发送端传输到至少一个接收端时识别错误的方法。
PNO 2014标准的Profisafe标准V2.6.1在81页从1999行开始描述了如何借助于校验和保护数据结构。在故障安全的环境中,在故障安全的控制器之间进行通信时或与故障安全的I/O模块进行通信时,能够执行单独的错误观察。这些错误观察涉及,尤其是确保,正确地为所期望的连接参与者分配地址,并且使得配置也匹配于两个通信参与者。这主要也涉及这两个通信参与者的数据结构。如果此时出现错误,就必须可靠地识别该错误并且故障安全的通信采取安全的状态。在识别错误时,例如识别了错误的接收端能够负责产生替代值并且将其发送给过程。
在Profisafe标准V2.6.1中已经论述了所有的错误观察,然而其缺点在于,如果错误出现在数据结构中,其不能够被可靠地识别。
技术实现要素:
因此,本发明的目的在于提供一种方法,利用其能够揭示数据传输错误,在其中接收端和发送端具有不同的数据结构。
在前文提到的用于识别数据损坏的方法中,该目的由此地实现,即在形成报文的校验和之前,在第一自动化构件方面为包含在数据结构中的数据类型分配数据特有的代表值,并且随后经由代表值形成结构校验和,并且之后数据结构与经由代表值形成的结构校验和一同传输,其中,在第二自动化构件中,为包含在所接收的传输数据结构中的数据类型重新分配数据特有的代表值,并且重新经由代表值形成更新的结构校验和,在第二自动化构件方面检验传输的结构校验和与重新计算的结构校验和,并且在两个结构校验和彼此不同时识别出数据损坏。
在本发明的意义上,以数学的方式来看待代表值并且相应地是特定类型的元素。决定性的优点在于,现在能够识别出在数据结构内的数据类型的之前未发现的错误。
在上述方法的一个有利的改进方案中,在识别出数据损坏时,通信连接中的数据传输错误被识别,并且为通信连接选择安全的状态,其中,在第二自动化构件中提供预先规划的替代值。
为了对正常报文之中的数据结构引入循环结构校验和,有利的是,在数据传输时,除了为待传输的报文形成的校验和之外,还传输经由代表值形成的结构校验和。
有利的是,数字符号、文本符号又或者数据类型符号被应用为代表值。
优选应用安全协议、尤其是Profisafe协议进行数据传输。
尤其有利地,选择根据OPC UA规格的数据结构作为数据结构。
前文所述的目的同样通过工程系统来实现。其用于设立和/或配置和/或监视工业控制工程的自动化设施中的第一自动化构件和第二自动化构件之间的故障安全的通信连接。自动化构件位于工业控制工程的自动化设施中,经由通信连接也能够传输数据结构。数据结构此时包括不同的数据类型,并且根据本发明具有分配装置,其设计用于为对应于所设立的故障安全的通信连接的数据结构的数据类型分别分配数据特有的代表值,并且将分配关系作为第一和第二自动化构件的分配信息进行输送,为了在经由第一自动化构件和第二自动化构件之间的故障安全的通信连接传输数据时识别数据损坏,该分配信息经由代表值形成结构校验和。
为了在故障安全的通信中保护数据结构,在此在两方面形成数据结构的结构校验和(例如CRC、Hash)并且由连接参与者进行检验。结构校验和在此考虑数据类型以及数据在数据结构中的顺序。在此,数据类型的代表值例如通过数字符号、文本符号(代表符号又或者数据类型符号本身)又或者以字母数字的方式实现。在此重要的是,能够明确地引证每个数据类型。为了计算结构校验和,在连接中设立数据类型的顺序被映射到代表值上并且由此形成校验和。
有利地,在工程系统中,在由自动化构件识别了数据损坏之后,在诊断缓存中进行记录。优选地,设计为可编程逻辑控制器(SPS)的自动化构件将识别的错误记录到错误存储器中,并且工程系统能够查询这些错误。
附图说明
附图描述了本发明的实施例。在此示出:
图1是具有数据类型和用于数据结构的三个实例的原理映射表和分配关系表,
图2是现有技术中从发送端到接收端的数据传输(无错误),
图3是现有技术中发送端和接收端之间的数据传输(数据损坏未识别)
图4是利用数据结构的数据类型的附加的结构校验和在发送端和接收端之间进行的数据传输,并且
图5是具有两个自动化构件之间的故障安全的通信连接的自动化设施。
具体实施方式
图1示出了数据结构20的映射表,其具有第一数据类型21、第二数据类型22、第三数据类型23、第四数据类型24和第五数据类型25。相应地,数据结构20包括五种结构元素(布尔型、整型、双整型、字型、双字型)。为数据类型21、…、25中的每种明确地分配代表值30。数据类型布尔型具有代表值17,数据类型整型具有代表值89,数据类型双整型具有代表值47,数据类型字型具有代表值91并且数据类型双字型具有代表值50。
数据结构A例如由四种数据类型建立并且具有顺序:布尔型、整型、布尔型、整型,相应地,数据类型布尔型被分配有代表值17并且数据类型整型被分配有代表值89。如果现在经由代表值17、89、17、89的顺序形成校验和,则得到对于数据结构实例A特有的校验和0X11223344。
数据结构B具有顺序:整型、布尔型、布尔型、整型的数据类型并且相应地具有代表值89、17、17、89,示例性的经由代表值89、17、17、89的顺序的校验和得出校验和0X59425945。
数据结构C同样具有四种数据类型,并且在此具有数据类型整型、字型、双整型、双字型,相应地被分配有代表值89、91、47、50并且得出示例性的校验和0X9A693BF8。
图2示出了根据现有技术的发送端41和接收端42之间的数据结构20的数据传输。在此传输具有三种数据类型21、22、23的数据结构20。为了传输安全,根据现有技术经由包括数据结构20的整个报文来形成校验和CRCtelegr。将具有数据结构20的报文以及校验和CRCtelegr传输给接收端42,并且在良好的情况下如其发送的那样到达。利用例如包含地址安全信息的起始值在报文上形成校验和CRCtelegr,并且当接收端和发送端双方具有相同的数据解读的时候,排除传输错误。
图3示出了根据现有技术的数据传输错误。发送端41再次向接收端42传输已经在图2中示出的数据结构20。然而,此时在从发送端41到接收端42的传输中窜入错误,即数据结构20中的数据类型的顺序相互交叉。然而如前面那样根据现有技术在整个数据结构上形成校验和CRCtelegr。由此造成的是接收端42和发送端41对数据结构中的数据以没有发现不同的方式进行解读。然而该报文仍被接收端视为有效的报文。
根据图4,现在根据本发明为数据结构20形成附加的结构校验和CRCstruct。附加的结构校验和CRCstruct经由第一数据类型21、第二数据类型22和第三数据类型23的数据特有的代表值30形成。相应地,经由数列17、89、17形成结构校验和CRCstruct。这意味着,在形成报文的校验和CRCtelegr之前,在第一自动化构件11方面为包含在数据结构20中的数据类型21、22、23分配数据特有的代表值30,并且随后经由代表值形成结构校验和CRCstruct,并且之后将数据结构20与经由代表值30形成的结构校验和CRCstruct一起传输,其中,附加地再次附上报文的普通校验和CRCtelegr。另一种可行性在于,将数据结构的校验和CRCstruct作为起始值包含在报文的校验和CRCtelegr中。如果该报文来到第二自动化构件12或接收端42,那么就为包含在接收的数据结构20中的数据类型21、22、23重新分配数据特有的代表值30,并且重新经由代表值30形成结构校验和CRCstruct。在第二自动化构件12方面、即接收端42方面,对传输的结构校验和CRCstruct以及重新计算的结构校验和CRCstruct’进行检验,并且在这两个数据校验和彼此不同时识别出数据损坏。
因为根据图4接收端42和发送端41具有不同的数据结构20,因此报文具有不同的校验和CRCstruct或者不同的起始值,并且报文被接收端视为无效并且因此识别数据损坏。
图5示出了用于设立和/或配置和/或监视故障安全的通信连接1的工程系统E。
工程系统E具有分配装置31,其能够为数据结构20的数据类型21、22、23分配代表值30。
经由“写入”连接参数的分配步骤32,在自动化设施10中在第一自动化构件11和第二自动化构件12中存储对于数据类型21、22、23的代表值30的分配关系信息。