专利名称:将用户地址分配给基于总线的控制系统的总线用户的方法
技术领域:
本发明涉及一种将用户地址分配给基于总线的控制系统的,特别是用于自动化控制工艺过程的控制系统的总线用户的方法,所述方法具有下述步骤:-提供多个总线用户,所述总线用户经由通信媒介彼此连接,-将逻辑用户地址分配给总线用户,以及-校验被分配的逻辑用户地址。本发明还涉及一种用于自动化控制工艺过程的基于总线的控制系统,所述控制系统具有多个总线用户,所述总线用户经由通信媒介彼此连接,其中逻辑用户地址被分配给总线用户,并且具有站,所述站构成为,校验被分配的逻辑用户地址。
背景技术:
这种方法和这种控制系统从DE19934514C1中已知。总线系统在本发明的意义上是一种通信网络,所述通信网络专门构建为用于实现在多个所谓的总线用户和必要时一个中心站之间的数据通信。典型地,在本发明的意义上使用总线系统,以便实现空间上相互远离的控制设备和输入输出设备之间的特别的循环的数据通信。输入输出设备具有输入端和/或输出端,经由所述输入端和/或输出端接收遥感器的信号,或者激励远程执行器。控制设备处理相应于传感器的信号的输入数据并且产生输出数据,输入输出设备从所述输出数据中产生用于执行器的输出信号。通过使用总线系统可以以受限制的布线耗费以与一个或多个控制设备在空间上远离的方式设置多个传感器和执行器。存在多种变型的针对不同需要而研发的总线系统。在许多情况下,总线用户需要各一个单独的用户地址,因此经由通信媒介传递的信息能够与所期望的接收者相关联,并且也一定程度上,用以了解信息的相应的发送者。在总线系统开始运行之前,用户地址的分配通常在配置模式中进行。用于分配用户地址的不同的方法是已知的。一种可能性在于,各个总线用户设有地址选择开关,其中借助于相应的地址选择开关在总线用户自身处调节相应的用户地址。这种方法具有下述缺点:用户地址的分配仅在相应的总线用户的位置处是可行的。总线系统的中央配置是不可行的。因此存在大量的方法,借助所述方法能够将地址从中心站经由总线系统本身分配给总线系统的总线用户。这种方法例如在DE19733906A1中描述。在此,地址分配基于总线用户距所谓的主站的不同的距离,以及基于由此产生的不同的报文传送时间,其中所述主站分配用户地址。借助所述方法,将单独的用户地址相继地分配给多个总线用户。已知的方法当然不适合于在下述总线系统中分配地址,所述总线系统根据欧洲标准EN954-1、IEC/EN61508或EN IS013849-1而应用于传输安全重要的数据。所述标准限定对在运行时能够对人显现危险的机器和机器设备的设计和实现方面的要求。当应经由总线系统例如将来自紧急制动按钮或者安全光栅的使能信号传输到控制器或传输用于电驱动的切断信号时,必须确保,相应的信息源自实际的发送者,并且也到达实际的接收者。例如当在中断安全光栅时机器被错误地切断进而危险的机器继续运行时,错误的地址分配能够导致致命的后果。对于应当在之前所提到的标准的意义上用于控制与安全重要的过程的总线系统而言,地址分配必须是故障安全的。在此,“故障安全”在下文中意味着,至少满足欧洲标准EN954-1的第3类的要求和/或满足根据IEC/EN61508的SIL2的要求或相似的要求。因此,在分配地址时的可能的错误不应导致:被控制的装置进入对于操作者或其它人显现出危险的状态。开始提到的DE19934514C1公开一种用于将用户地址分配给控制系统的总线用户的方法,其中各个总线用户由于总线系统的结构而具有单义限定的物理位置。每个总线用户根据其单义的物理位置校验被分配的逻辑地址。所述方法特别适合于将用户地址分配给所谓的联络总线(interbus)的总线用户,所述联络总线广泛地用于自动化控制生产环境中的工艺过程。然而,根据实际的物理位置对被分配的用户地址进行校验使用联络总线的特别的性质,进而在没有所述特别的性质的情况下不能够传输到其它的总线系统上。DE19940874A1公开一种用于为安全导向的控制系统配置总线用户的另一种方法,其中用户地址被分配给总线用户。在该情况下,尚未配置的总线用户利用预定义的、单义确定的通用地址来登记在中心站中,所述中心站相同连接在总线系统上。中心站将用户地址分配给新登记的总线用户,所述用户地址通过总线用户和所述站之间的后续的数据通信来校验。在此,中心站监控:分别仅配置刚好一个总线用户。所述方法特别适合配置各个总线用户,所述总线用户作为替换设备来代替已经配置的总线系统上的故障的总线用户。然而,当要将地址分配给更大量的总线用户时,所述方法是相当费时的。
发明内容
针对上述背景,本发明的目的是提出一种用于将用户地址故障安全地分配给总线系统的总线用户的替选的方法。特别地,一个目的是提出一种替选的方法,所述方法实现在初始配置时对于多个总线用户进行故障安全的校验。根据本发明的一个方面,所述目的通过开始所述类型的方法来实现,其中总线用户借助于限定的数学运算计算共同的第一校验值,所述校验值与第二校验值作比较,以便校验被分配的逻辑用户地址,其中所述数学运算以限定的起始值开始并且包含多个操作步骤,所述操作步骤使用多个限定的操作数,其中待校验的用户地址中的每一个形成不同的操作数,并且其中每个总线用户执行至少一个操作步骤。根据本发明的另一个方面,所述目的通过开始所述类型的控制系统来实现,其中总线用户构成为,借助于限定的数学运算来计算共同的第一校验值,所述第一校验值在站中与第二校验值做比较,以便校验被分配的逻辑用户地址,其中数学运算以限定的起始值开始并且包含多个操作步骤,所述操作步骤使用多个限定的操作数,其中待校验的用户地址中的每一个形成不同的操作数,并且其中每个总线用户构成为,执行至少一个操作步骤。优选地,站是控制系统的控制单元,并且总线用户是输入输出单元,所述输入输出单元与控制单元交换数据,所述数据代表传感器的输入信号和用于执行器的输出信号。新的方法和新的控制系统使用限定的数学算法,借助于所述算法在多个按次序依次的运算步骤中计算第一校验值。第一校验值与所有待校验的用户地址相关并且在单独的子步骤中由分配有待校验的用户地址的全部总线用户共同计算。优选地,每个总线用户仅准确地“了解”数学运算的总线用户必须在空间上分布的运算步骤期间执行的一个运算步骤(或多个运算步骤)。换句话说,如果总线用户(除了校验用户地址的站之外)不了解全体用于校验的运算步骤和/或操作数,那么这是优选的。因此在该情况下,全部总线用户强制地需要进行校验。此外优选的是,第一校验值是从被分配的用户地址中单义地产生的数值,也就是说,数学运算的结果为用户地址的每个组合提供刚好一个单独的校验值。新的方法和新的控制系统实现快速地和可靠地检验地址分配。能够在一个校验过程中检验任意大量的用户地址。因此,新的方法和新的总线系统在一个配置过程中实现多个总线用户的配置。此外,新的方法和新的控制系统很大程度上与总线系统的物理结构无关。新的方法特别能够在总线系统中使用,其中各个总线用户在通信媒介上的实际的物理位置是未知的或者不能够单义地确定。此外,新的方法能够在将用户地址以任意的次序和/或结构分配给各个总线用户的情况下使用,以至于不出现关于待分配的地址的显著的限制。另一方面,新的方法和新的控制系统提供下述优点:即用户地址能够经由总线系统本身以故障安全的方式和方法分配和校验。因此完全实现上文中所提到的目的。在本发明的一个优选的设计方案中,每个总线用户执行(至少)一个运算步骤,在所述运算步骤中分配给总线用户的用户地址形成操作数。在所述设计方案中,每个总线用户借助“其”用户地址计算“其”运算步骤。替选地,在本发明的其它设计方案中可行的是,总线用户分别借助“外来的(fremd)”用户地址执行分布的运算步骤,也就是说,每个总线用户借助分配给另一总线用户的用户地址计算运算步骤。然而,在优选的设计方案中,校验能够更简单且更快速地执行,因为各个总线用户已经了解分配给其的用户地址。在这两种变型方案中,运算步骤的数量至少与总线用户的数量相同。在另一设计方案中,从中心站将用户地址分配给总线用户,其中中心站借助相同的数学运算、相同的起始值和相同的操作数与总线用户无关地计算第二校验值。在所述设计方案中,中心站了解被分配给各个总线用户的全部用户地址。因此,所述中心站能够容易地执行控制计算。通过比较第一校验值和第二校验值的一致性,借助于相同的数学运算、相同的起始值和相同的操作数计算第二校验值实现极其简单的校验。如果这两个值彼此偏差,那么校验失败,并且优选重复进行地址分配。所述设计方案通过彼此独立地但借助相同的数学运算、相同的起始值和相同的操作数计算这两个校验值而提供极其可靠的检验。在另一个设计方案中,中心站经由通信媒介与总线用户连接,并且所述中心站经由通信媒介获得共同的第一校验值。在所述设计方案的一个优选的变型形式中,中心站是所谓的总线主控,也就是说,与其它的总线用户相比具有特别的权限和/或能力的总线用户。典型地,总线主控例如通过初始化通信循环、提供用于各个总线用户的数据的数据域和/或时间空挡和/或以其他方式确保仲裁,而经由通信媒介控制和/或组织总线用户的通信。所述设计方案具有下述优点:在总线系统自身上进行地址分配是可行的。此外,在总线主控中实施中心站的功能是有利的,因为总线主控典型地一次性地存在于总线系统上,并且与其它的总线用户相比,通常提供更高的智能和/或计算能力。因此,中心站的功能能够相当低成本和有效地容纳在总线主控中。在另一设计方案中,中心站构成为是故障安全的。如早已经在上文中所指出的,“故障安全”意味着,满足根据EN954-1的第3类的或相似的要求的至少一个单故障安全。即使出现故障,也不应当失去系统的安全性。典型地,中心站在所述设计方案中是多通道冗余的,以便实现单故障安全。然而也可以是单通道的实现方案,所述单通道的实现方案满足上述要求。此外,尤其优选的是,(其它的)分配有用户地址的总线用户构建为是非故障安全的,因为根据所述设计方案的新的方法也在该情况下实现故障安全地分配用户地址。当中心站作用为总线系统上的总线主控时,所述设计方案是特别有利的,因为随后仅需要智能的、故障安全的站,并且其它的总线用户能够相对简单且便宜地实现。在另一设计方案中,总线用户以逻辑次序经由通信媒介连接,其中逻辑次序具有第一总线用户,至少一个第二总线用户和最后总线用户。在一些优选的实施例中,总线用户的逻辑次序相应于在预定义的数据帧中的数据的次序,所述数据帧根据桶链的方式由总线用户转发,以便实现总线用户彼此之间的通信和/或与总线主控的通信。在尤其优选的实施例中,总线主控以限定的、重复的时间间隔产生所述数据帧。数据帧依次由总线用户转发,直到所述数据帧最终再次到达总线主控。在所述设计方案中,总线系统特别适合于收集输入数据,所述输入数据代表多个传感器的传感器信号,并且适合于将控制命令输出到分布的控制系统的执行器上。总线用户的逻辑次序实现确定的循环时间以及简单且低成本的实现方案。此外,所述总线系统极其良好地适合于自动化地分配用户地址,其中有利地能够使用用于校验被分配的地址的新的方法。在该情况下尤其有利的是,数学运算不满足结合律,因为随后不仅校验被分配的用户地址,而且还校验总线用户的次序,这如下面根据一个实施例阐述。在另一设计方案中,第一总线用户执行第一运算步骤,所述第一运算步骤使用起始值和第一操作数,以便确定第一中间值,其中第一总线用户将第一中间值发送给第二总线用户,并且其中第二总线用户执行第二运算步骤,在所述第二运算步骤中使用第一中间值和第二操作数,以便确定第二中间值。优选地,最后总线用户执行最终运算步骤,其中使用第二中间值和最终操作数。在所述设计方案中,总线用户以经由通信媒介彼此连接所述总线用户的逻辑次序计算第一校验值。由于被分配的用户地址,逻辑次序能够不同于物理结构,在所述物理结构中总线用户连接到通信媒介上。然而,逻辑次序也能够与物理结构相同。该设计方案实现新的方法的极其简单且低成本的实现方案,并且所述设计方案实现极其快速地校验被分配的用户地址,因为为了再利用而将中间值分别直接地发送给后续的总线用户。在另一设计方案中,最后总线用户借助最终运算步骤计算共同的第一校验值。替选于此,在另一设计方案中可能的是,最后总线用户借助最终运算步骤确定另一中间值,借助所述另一中间值在其它的运算步骤中计算第一校验值。最先提到的设计方案具有下述优点:在少量的运算步骤之后快速地提供第一校验值。相应地,用户地址的校验能够快速地进行。与之相反,最后提到的设计方案具有下述优势:第一校验值能够包含其他的校验步骤和/或计算步骤。一方面,这有利地能够用于校验总线系统的与各个总线用户无关的其它的配置数据。另一方面,第一校验值有利地能够以简化与第二校验值进行比较的方式被调整和/或被改变。在另一设计方案中,以限定的运算步骤次序执行运算步骤,其中第一校验值根据限定的运算步骤序列来改变。在所述设计方案中,即使起始值和操作数总是相同的,数学运算根据被执行的运算步骤的次序而提供不同的结果。优选选择既不满足结合律也不满足交换律的数学运算。所述设计方案具有已经在更上面说明的优点:不仅校验被分配的用户地址,而且也校验总线用户本身的次序。当使用用于传输安全关键的数据的总线系统时,这是尤其有利的,因为一方面难于了解两个相同类型的用户的交换,但是另一方面能够容易地发生并且能够导致严重的后果。在另一设计方案中,数学运算是校验和计算,特别是基于多项式除法的CRC-检验和计算。在尤其优选的实施例中,数学运算是CRC-8、CRC-16或CRC-32校验和计算。缩写CRC代表循环冗余码校验(Cyclical Redundancy Check)。所述循环冗余码校验在此是用于计算数据的校验值的限定的方法。通常,计算CRC校验和,以便能够了解数据传输和数据存储时的错误。一般来说,计算的CRC-校验和在此连同受保护的数据一起传输或存储。在本设计方案中使用相同的算法,以便在成功的数据传输之后,也就是说在用户地址分配之后,在单独的验证步骤中计算校验和,所述校验和使得可检验地址分配的成功。使用CRC算法实现极其便宜且故障安全的实现方案。根据被分配的用户地址的数量和长度有利的是,使用更短或更长的校验和(CRC-8、CRC-16或CRC-32等等)。在另一优选的设计方案中,控制系统在成功的校验之后进入运行,其中在控制系统运行时重复地计算第一校验值。优选地,在控制系统运行时以限定的时间间隔计算第一校验值。此外有利的是,主控为了重复地计算第一校验值而改变起始值。所述设计方案实现在总线系统运行时对配置的总线用户进行简单和快速的校验,以至于能够快速地了解例如由于存储错误、线缆收聚引起的改变或由于总线用户的改变而引起的改变。所述设计方案有助于以有利的方式进一步提高故障安全。在另一设计方案中,操作数还代表总线用户的设备特定的特性,例如序列号、设备类型和/或相应的总线用户的固件级别。借助所述设计方案,以有利的方式不仅监控被分配的用户地址,而且还监控总线用户的单独的特性。因此,所述设计方案有助于进一步提高故障安全。在另一设计方案中,为多个总线用户计算第一校验值,所述多个总线用户少于或多于经由通信媒介连接的总线用户的数量。在所述设计方案中,故意借助多个总线用户来计算第一校验值,所述总线用户的数量与整个待校验的用户地址的数量不同。在优选的实施例中,能够单独地选择待校验的总线用户的数量。优选地,在校验所有被分配的地址之后对数量降低的总线用户进行校验。此外有利的是,能够单独地选择待校验的总线用户。所述设计方案对于下述情况而言实现目的明确的和便捷的诊断,在所述情况中超出总线用户数量的被分配的用户地址的校验失败。因为第一校验值由所有的地址被校验的总线用户共同计算,所以新的方法首先一次性地仅提供关于用户地址的分配是否是整体上无错误地作用的总体声明。然而,借助在所有的用户总线上计算的校验值进行单独的错误分析是困难的。然而,通过目的明确地降低待校验的总线用户的数量能够识别错误源。此外通过对原本未被分配的用户地址进行校验能够测试:是否仍有未经了解的其它的总线用户连接在通信媒介上。因此,所述优选的设计方案简化单独的诊断。显然,上文所提到的和随后尚待阐述的特征在不脱离本发明的范围的情况下,不仅能够应用在各个所提出的组合中,也可以应用在其它的组合中或单独地使用。
在附图中示出本发明的实施例,并且在随后的描述中详细阐述本发明的实施例。其示出:图1示出新的控制系统的实施例的示意图;图2示出用于阐述新的方法的一个优选的实施例的流程图;以及图3示出图1中的控制系统,其中两个总线用户已被交换。
具体实施例方式在图1中,控制系统整体上用附图标记10表示,在所述控制系统中执行新的方法。控制系统10包含控制单元12和多个输入输出单元14,16,18,20。控制单元12在该情况下具有集成的或插入的、具有总线接口 24的总线模块22。总线线路26a连接到总线接口 24上,所述总线线路引导至输入输出单元14上的第一总线接口 24。输入输出单元14具有第二总线接口,另一总线线路26b从所述第二总线接口弓I导至输入输出单元16的第一总线接口。另一总线线路26c从输入输出单元16的另一总线接口引导至输入输出单元18的第一总线接口。另一总线线路26d从输入输出单元18的另一总线接口引导至输入输出单元20的第一总线接口。因此,输入输出单元14至20以一定次序连接到控制单元12的总线模块22上。具有总线模块22的控制单元12、输入输出单元14至20和总线线路26a至26d共同形成总线系统,所述总线系统是控制系统10的一部分,并且所述总线系统实现控制单元12和输入输出单元之间的通信。在此,在本发明的意义上,输入输出单元14至20是总线用户。具有总线模块22的控制单元12在此具有总线主控的功能,用户地址的分配和校验也经由所述总线主控来启动。总线用户在总线主控上的在此描述的次序设置相应于优选的实施例。但是本发明不受限于此并且能够相同地在具有其他拓扑的、例如环形拓扑、星形拓扑或者树形拓扑的总线系统中使用。原则上,也能够在没有总线主控的情况下实现新的方法和新的总线系统,例如因此在总线用户能够在任何时间发送和/或接收的总线系统中实现。每个输入输出单元14至20具有多个连接插口以用于连接传感器和/或执行器。示例地,在输入输出单元20上,连接插口以附图标记28来表示。在输入输出单元18的两个连接插口上,在此示例地连接有两个保护器30a、30b。保护器30a、30b是执行器,总线系统10借助所述执行器产生控制信号以控制工艺过程。每个保护器30a、30b具有多个闭合接触部。每个保护器30a、30b的闭合接触部分别在电源32和待控制的设备34之间串联地设置。示例地,在此设备34为机器人。借助于保护器30a、30b,机器人34能够与电源32分离。
通过附图标记36表示紧急停止按钮,所述紧急停止按钮经由线缆对38连接到输入输出单元18的另一连接插口上。输入输出单元18在到紧急停止按钮36的引出线上产生具有限定的时钟周期的时钟信号40。时钟信号40经由紧急停止按钮36和线缆对38的引回线返回到输入输出单元18。紧急停止按钮36是用于发信号装置或者传感器的一个优选的实施例,所述发信号装置或传感器提供输入信号,所述输入信号由控制单元12来评估。控制单元12根据输入信号产生用于保护器30a,30b的控制信号。保护器30a、30b和紧急停止按钮36在此是执行器和传感器的实例。其它优选的传感器是安全光栅、防护门开关、双手开关或者也是测量如温度、压力、位置、速度等变量的传感器。此外,电磁阀、电驱动器等能够作为执行器连接到输入输出单元14至20上。在图1中,为了简单性仅示出用于保护机器人34的控制系统10,然而没有示出控制机器人34的工作运行的控制系统。原则上,这两个控制系统能够是一样的,也就是说控制系统10不仅控制运行过程也控制安全重要的监控功能。然而在许多情况下,至今为止对于安全功能使用单独的控制系统,因为对控制系统的自身故障安全的需求在安全功能方面显著高于在运行过程的控制方面的安全需求。另一方面,运行过程的控制常常需要比安全功能的控制更高的运算能力。为了控制安全功能,控制单元12典型地构建为是多通道冗余的,这在图1中借助两个微处理器42a、42b象征性地示出,所述微处理器彼此监控和/或交换其结果。也能够使用其它的可编程的逻辑电路,如微控制器、FPGA、ASIC等来代替微处理器。在一些优选的实施例中,可编程的电路42a、42b执行(第二 )校验值的冗余的计算,借助于所述校验值根据新的方法故障安全地校验将用户地址分配给输入输出单元14至20。通过所述控制单元经由总线模块22发送数据报文44并接收来自输入输出单元14至20的响应报文46,控制单元12与输入输出单元14至20通信。在一个优选的实施例中,数据报文和响应报文之间的交换根据如在DE102008060007A1中所描述的方法来进行。相应地,所述参考文献在此关于数据传输的细节通过参引并入本文。然而,用于校验用户地址的新的方法不限制于优选的数据传输方法并且也能够应用在使用用户地址的其他的总线协议中。在当前的情况下,输入输出单元14至20分别从控制单元12获得单独的用户地址48。例如,在此将用户地址OxOF分配给输入输出单元14,将用户地址OxOE分配给输入输出单元16,将用户地址OxOD分配给输入输出单元18,并且将用户地址OxOC分配给输入输出单元20。在优选的实施例中,通过控制单元12经由总线接口 24发送数据报文44,在控制系统10启动之前在配置模式中进行地址的分配,在所述数据报文中分别包含用户地址48。每个已经分配有用户地址的输入输出单元将所述数据报文依次地转发给下一输入输出单元。尚未分配地址的输入输出单元提取包含在所述数据报文中的地址来作为被分配的地址。因此,输入输出单元14至20能够由控制单元12依次地“命名”。随后,控制单元12校验根据如随后借助图片2阐述的方法来校验被分配的用户地址。在此,附图标记50表示代表各总线用户14、16、18、20的具体的用户数据。例如,用户数据是单独的序列号、设备型数(Geriitetypnummer )、固件等级等等。在所示出的
实施例中,总线用户14、16和20具有设备型数0x01,而总线用户18具有设备型数0x02。根据图2,在步骤60中首先设置计数变量n=0。根据步骤62,总线主控,在该情况下即控制单元12随后将用户地址分配给第一总线用户,所述第一总线用户在图2中通常表示为Sn+1。对于根据图1的控制系统10而言,第一总线用户是输入输出单元14,所述输入输出单元从控制单元12获得用户地址OxOF。在步骤64中进行询问:是否将其它的地址分配给其它的总线用户。如果是这种情况,所述方法根据循环66返回到步骤62,其中所述计数变量η增加I。如果所有的用户地址都被分配,那么通过总线主控根据步骤68产生起始值而开始进行优选的验证。在优选的实施例中,起始值是来自于下述数值范围中的数值:被分配的用户地址也源自于所述数值范围。例如,在此假设起始值是0χ7Α。此外,例如假设:主控使用具有生成多项式/+χ +χ1的CRC-8校验和计算作为数学运算。因此,主控经由数据(用户地址)0x0F.0x0E.0x0D和OxOC计算具有起始值0x7A的CRC-8。结果是校验值CV=0xF7。对CRC-8校验和算法的详细描述能够在相关的专业文献中获得以及例如在维基百科的下述地址中获得:http://en.wikidedia.0rg/wiki/Cyclicredundancy check。所指出的维基百科文章在此以其在提交日的状态通过参引并入本文。在步骤72中,主控设置指定待校验的用户地址的数量的值nmax。通过选择一个小于全部连接到总线系统10上的总线用户的数量的值,主控能够将校验限制于数量减少的总线用户。首先假设:主控设置nmax=4,也就是说,所述主控经由所有的输入输出单元14至20执行校验。在下一步骤74中,重新设置计数变量n=l。随后,主控根据步骤76将起始值0x7A发送给总线用户S1,即输入输出单元14。通过所述总线用户S1借助起始值0x7a为其自身的地址OxOF计算CRC-8校验和,总线用户S1计算第一中间值IV115中间结果IV1在该情况下是OxOD。根据步骤80,总线用户S1将第一中间值IV1发送给下一总线用户S2。通过所述下一总线用户使用接收到的中 间值IV1=OxOD作为起始值并且使用其自身地址OxOE作为操作数,所述下一总线用户计算另 一中间值IVn+1。第二中间值IV2在该情况下是0x53。根据步骤84,第二总线用户检验其是否是待校验的总线用户的次序中的最后一个。然而在当前的情况下,仍跟随有两个总线用户(输入输出单元18和20),使得根据循环86在这两个另外的总线用户18和20中执行两个另外的运算步骤。在假设的实例中,第三总线用户(输入输出单元18)获得第二中间值IV2=0x53作为起始值,并且所述第三总线用户借助其自身的用户地址OxOD计算第三中间值IV3=0x61。第四总线用户(输入输出单元20)接收中间值IV3=0x61作为起始值并且借助其用户地址OxOC计算另一中间值IV4=0xF7。因为在次序中没有跟随其它的总线用户,所以输入输出单元20将中间值IV4作为第一校验值发送回总线主控12 (步骤88)。总线主控或者控制单元12根据步骤90检验:接收的校验值IV4是否等于之前计算的校验值CV。如果这两个校验值彼此偏差,那么在地址分配和/或校验时存在错误。相应地,控制单元12根据步骤92产生故障信号。如果相反地这两个校验值彼此相同,那么这是地址分配无错误地进行的标志。控制系统10现在能够过渡到控制运行,这用步骤94表明。在优选的实施例中,在过程控制期间在限定的时间点重复对被分配的地址进行校验,这用循环96来表明。
在所述实施例的一个变型形式中,不仅之前已被分配的用户地址包含在验证中,而且用户特定的数据50也包含在校验中。控制单元12现在经由用户地址和类型编码OxOF、0x01、OxOE、0x01、OxOD、0x02、OxOC,0x01计算校验值CV并且获得校验值CV=0x62作为结果。现在假设:后续地交换输入输出单元16和18,如这在图3中示出。输入输出单元14现在接收起始值0x7A并且借助自身的地址OxOF和设备类型0x01来计算第一中间值IV1=OxTD0 (被交换的)输入输出单元18现在作为第二总线用户而借助起始值0x7D、被分配的地址OxOE和设备类型0x02来计算第二中间值IV2=0x74。第三输入输出单元借助起始值0x74、被分配的地址OxOD和设备类型0x01来计算第三中间值IV3=0xC9。第四输入输出单元借助起始值0xC9、被分配的地址OxOC和设备类型0x01来计算第四中间值OxEC并且将该结果作为(第一)校验值发送回总线主控。这两个校验值CV=0x62和IV4=OxEC的比较指出:尽管地址分配本身是成功的,然而实际的配置不与
期望的配置一致。如之前已经参考图2所提到的,通过所述控制单元首先仅将校验过程执行至第一输入输出单元14并且随后逐步地扩展到各个其它的输入输出单元,控制单元12能够识别错误配置的总线用户。一旦所述控制单元到达被交换的输入输出单元18,那么两个校验值彼此偏差。此外,控制单元12能够为多于额定配置中的总线用户数量的多个总线用户初始化校验过程,和/或所述控制单元能够目的明确地在校验过程中报告实际上未被分配的用户地址,以便以该方式检验:连接在通信媒介上的总线用户是否比所设置的总线用户多。这是尤其有利的,以便检验:根据额定配置而从通信媒介中移除的总线用户是否实际上也是缺失的。在之前所描述的实施例的一个变型形式中,新的方法使用CRC-16校验和计算,其中每个总线用户的地址和类型编码组合成16位的数据值。原则上,其它的数学运算也适合于新的方法,在多个顺序的步骤中执行所述数学运算,进而能够分布在多个总线用户上,并且所述数学运算根据所使用的操作数以及——优选地——根据所执行的操作的运算步骤的次序提供单义的结果。
权利要求
1.将用户地址(48)分配给基于总线的控制系统(10)的,特别是用于自动化控制工艺过程的基于总线的控制系统的总线用户(14,16,18,20)的方法,具有下述步骤: -提供多个总线用户(14,16,18,20),所述总线用户经由通信媒介(26)彼此连接, -将逻辑用户地址(48)分配给所述总线用户(14,16,18,20),以及 -校验被分配的所述逻辑用户地址(48 ), 其特征在于,所述总线用户(14,16,18,20)借助于限定的数学运算(78-86)计算共同的第一校验值(IVn+1),所述第一校验值与第二校验值(CV)作比较(90),以便校验被分配的所述逻辑用户地址(48), 其中所述数学运算以限定的起始值(68)开始,并且包含多个运算步骤(78,82),所述运算步骤使用多个限定的操作数。
其中待校验的用户地址(48)中的每一个形成不同的操作数, 并且其中每个总线用户(14,16,18,20)执行至少一个运算步骤。
2.根据权利要求1所述的方法,其特征在于,每个总线用户(14,16,18,20)执行一个运算步骤,在所述运算步骤中,分配给所述总线用户的所述用户地址(48)形成所述操作数。
3.根据权利要求1或2所述的方法,其特征在于,所述用户地址(48)从中心站(12)分配给所述总线用户(14,16,18,20),其中所述中心站(12)借助相同的所述数学运算、相同的所述起始值和相同的所述操作数与所述总线用户(14,16,18,20)无关地计算所述第二校验值(CV)。
4.根据权利要求3所 述的方法,其特征在于,所述中心站(12)经由所述通信媒介(26)与所述总线用户(14,16,18,20)连接,并且经由所述通信媒介(26)获得所述共同的第一校验值(IVn+1)。
5.根据权利要求3或4所述的方法,其特征在于,所述中心站(12)构成为是故障安全的。
6.根据权利要求1至5之一所述的方法,其特征在于,所述总线用户(14,16,18,20)以逻辑次序经由所述通信媒介(26)连接,其中所述逻辑次序具有第一总线用户(14),至少一个第二总线用户(16,18)和最后总线用户(20)。
7.根据权利要求6所述的方法,其特征在于,所述第一总线用户(14)执行第一运算步骤(78),所述第一运算步骤使用所述起始值和第一操作数,以便确定第一中间值(IVn),其中所述第一总线用户(14)将所述第一中间值(IVn)发送给所述第二总线用户(16,18),并且其中所述第二总线用户(16,18)执行第二运算步骤(82),在所述第二运算步骤中使用所述第一中间值和第二操作数,以便确定第二中间值(ivn+1)。
8.根据权利要求7所述的方法,其特征在于,所述最后总线用户(20)借助所述最终的运算步骤计算所述共同的第一校验值(I Vn+1)。
9.根据权利要求7所述的方法,其特征在于,所述最后总线用户借助所述最终的运算步骤确定另一中间值,借助所述另一中间值在其它的运算步骤中计算所述第一校验值。
10.根据权利要求1至9之一所述的方法,其特征在于,以限定的运算步骤次序执行所述运算步骤,其中所述第一校验值根据所述限定的运算步骤次序来改变。
11.根据权利要求1至10之一所述的方法,其特征在于,所述数学运算是校验和计算,特别是CRC校验和计算。
12.根据权利要求1至11之一所述的方法,其特征在于,所述控制系统(10)在成功校验之后进入运行(94),其中在所述控制系统(10)的运行中重复地(96)计算所述第一校验值。
13.根据权利要求1至12之一所述的方法,其特征在于,所述操作数还代表所述总线用户(14,16,18,20)的设备特定的特性(50)。
14.根据权利要求1至13之一所述的方法,其特征在于,为多个总线用户(14,16,18,20)计算所述第一校验值(IVn+1),所述多个总线用户少于或多于经由所述通信媒介(26)连接的所述总线用户(14,16,18,20)的数量。
15.用于自动化控制工艺过程的控制系统,具有多个经由通信媒介(26)彼此连接的总线用户(14,16,18,20),其中所述总线用户(14,16,18,20)分配有逻辑用户地址(48);以及具有站(12),所述站构成为,校验被分配的所述逻辑用户地址(48), 其特征在于,所述总线用户(14,16,18,20)构成为,借助于限定的数学运算来计算共同的第一校验值(IVn+1),所述第一校验值在所述站(12)中与第二校验值(CV)作比较,以便校验被分配的所述逻辑用户地址(48),其中所述数学运算以限定的起始值(68)开始并且包含多个运算步骤(78-86),所述运算步骤使用多个限定的操作数,其中待校验的用户地址(48)中的每一个形成不同的操作数,并且其中每个总线用户(14,16,18,20)构成为,执行至少一个运算 步骤。
全文摘要
一种基于总线的控制系统,包含多个总线用户(14,16,18,20),所述总线用户经由通信媒介(26)彼此连接。所述总线用户分配有逻辑用户地址(48)。随后校验被分配的用户地址(48)。为了该目的,总线用户(14,16,18,20)借助于限定的数学运算(78-86)计算共同的第一校验值(IVn+1),所述第一校验值与第二校验值(CV)作比较(90)。所述数学运算以限定的起始值(68)开始,并且包含多个运算步骤(78,82),所述运算步骤使用多个限定的操作数。待校验的用户地址(48)中的每一个形成不同的操作数,并且每个总线用户(14,16,18,20)执行至少一个运算步骤。
文档编号H04L12/40GK103168449SQ201180050314
公开日2013年6月19日 申请日期2011年8月4日 优先权日2010年8月19日
发明者托尔斯滕·戈多, 迈克尔·黑特, 迪特马尔·赛青格, 赖纳·豪艾森 申请人:皮尔茨公司