本地总线的初始化的制作方法

文档序号:19667820发布日期:2020-01-10 21:57阅读:179来源:国知局
本地总线的初始化的制作方法

本发明一般涉及本地总线的初始化,特别是借助于相对寻址的本地总线中的信息查询。



背景技术:

总线系统,尤其是本地总线系统已成为现代自动化设备中必不可少的部分。自动化设备尤其用于控制工厂、建筑物和交通工具。为了控制自动化设备,通常需要多个传感器和执行器。这些传感器和执行器监视和控制由设备执行的过程。在此,自动化设备的不同传感器和执行器在此通常称为自动化仪器。

这些自动化仪器可以直接连接到自动化设备的控制部,或者可以首先连接到输入和输出模块,这些模块通常称为e/a模块。这些模块又可以直接连接到控制部。

在此,自动化仪器在此可以直接集成在e/a模块中,也可以通过电缆或无线方式连接到e/a模块。

自动化设备的控制部通常借助一个或多个存储可编程控制部sps完成。在此,可以在自动化设备中分层或分散地布置sps。在此,在sps中具有不同的性能等级,这样他们就可以根据计算和存储容量来接管不同的控制和调节。在最简单的情况下,sps具有输入,输出,操作系统(固件)和接口,可通过该接口加载用户程序。用户程序定义了如何根据输入切换输出。在此,输入和输出可以连接到自动化仪器和/或e/a模块,并且借助用户程序中存储的逻辑可以监视或控制由自动化设备执行的过程。在此,过程的监控由传感器完成,并且过程的控制由执行器完成。控制部也可以称为中央控制部或中央单元,并承担至少对连接到该控制部的自动化仪器或e/a模块的控制。

但是,自动化仪器与至少一个控制部或e/a模块与至少一个控制部的直接连接采用并行布线的形式,即,从每个自动化设备或每个e/a模块分别将一条线路布设到上级控制部,非常繁琐。恰好是随着自动化设备自动化程度的提高,在并行布线中增加了布线成本。这与规划、安装、调试和维护上的巨大成本有关。

因此,当今在自动化技术中通常使用总线系统,通过该总线系统可以将自动化仪器或e/a模块连接到控制部。为了进一步简化单个自动化仪器或e/a模块与总线系统的连接,如今单个自动化仪器或e/a模块的编组借助专门的本地总线首先相互连接至本地总线系统,并且然后该本地总线的至少一个用户设备连接到总线系统,该总线系统连接到控制部。在此,本地总线系统可能不同于总线系统,总线系统用于实现与控制部的连接。

与控制部的总线系统连接的一组本地总线用户设备的用户设备通常称为本地总线主机。备选地,使用术语:本地总线系统的前端。与其他本地总线用户设备相比,该本地总线主机可以包含其他逻辑、电路或功能,这些逻辑、电路或功能对于连接到控制部的总线系统都是必需的。而且,本地总线主机本身可以包括sps。该用户设备还可以具有用于在两个总线系统之间进行转换的逻辑和电路。因此,本地总线主机也可以构造为网关或总线转换器,并确保将以总线系统格式的数据转换为本地总线系统的格式,反之亦然。但是,在大多数情况下不强制的是,本地总线主机专门用于将本地总线连接到上级总线。

所使用的本地总线主要是针对自动化仪器或e/a模块的特定应用需求而协调的,或者考虑到其特殊的硬件设计。在此,本地总线系统的自动化仪器或e/a模块的编组通常构成自动化设备的子组,用于在由自动化设备执行的过程中执行特定任务。在总线上交换的用于过程的数据通常也称为本地总线数据或过程数据,因为该数据包括用于调节或控制由自动化设备执行的过程的信息。在此,这些数据在此尤其可以包括测量数据、控制数据、状态数据和/或其他信息。根据所使用的总线协议,在这些数据之前可以设置其他数据(报头)或为这些过程数据附加其他数据(尾部)。

这些其他数据可以包括关于数据的信息,或者包括关于本地总线上的内部通信的信息。在此,已知各种不同的信息,这些信息可以根据所使用的总线协议设置在过程数据之前或附加到数据。连接到本地总线的本地总线用户设备也可以称为数据总线用户设备,因为这些本地总线用户设备在本地总线上交换数据。在此,数据总线用户设备可以特别是通过例如将控制信号输出到执行器和/或通过例如从传感器接收测量信号来控制或监视过程。数据总线用户设备将控制信号和/或测量信号转换为本地总线的过程数据,反之亦然。数据总线用户设备也可以称为本地总线用户设备。

在此,环形总线是本地总线的一种特殊形式,例如从us5472347a已知。在环形总线中,数据总线用户设备(例如自动化仪器或e/a模块)分别连接到其直接相邻的数据总线用户设备,并且数据根据顺序从一个数据总线用户设备转发到另一个数据总线用户设备。在本地总线上传输的数据也可以称为本地总线数据。因此,并非所有数据总线用户设备都同时发送数据,而是根据顺序,其中数据总线用户设备从其上游数据总线用户设备接收数据,并将数据转发到其下游数据总线用户设备。在数据接收和转发之间,数据总线用户设备可以处理接收到的数据。当数据到达顺序中的最后的数据总线用户设备时,来自最后的数据总线用户设备的数据又根据顺序返回到第一数据总线用户设备。在此,返回可以由所有数据总线用户设备完成,也可以在旁路线路的帮助下绕过他们。因此,环形总线具有数据的下行流和上行流。环形总线中的数据通常以通过所有数据总线用户设备的数据包的形式传输。

为了发送给特定的数据总线用户设备,为数据包提供了与数据总线用户设备相对应的地址,从而具有相应地址的数据总线用户设备知道的是,数据包已定向到该数据总线用户设备。在现有技术中,数据总线用户设备经常根据其在环形总线中的物理顺序在环形总线中寻址。然而,这使得环形总线的自我管理非常不灵活和静态,特别是当新的数据总线用户设备插入环形总线或替换旧的数据总线用户设备时。

因此,本发明的目的是提供一种方法和装置,利用这些方法和装置在交换数据总线用户设备或初始化本地总线时也可以进行灵活寻址,并且利用这些方法和装置还可以以简单的方式收集有关相应数据总线用户设备的信息。



技术实现要素:

该目的通过独立权利要求的方法和装置来实现。在从属权利要求中描述了有利的实施方式。

用于与连接到包括本地总线主机的本地总线、特别是环形总线的数据总线用户设备进行通信的根据本发明的方法包括:从本地总线主机向所有数据总线用户设备发送第一数据包,以按顺序对通信就绪的数据总线用户设备进行计数,其中,第一数据包具有第一计数器值,该第一计数器值由每个通信就绪的数据总线用户设备按顺序改变。在此,第一计数器值可以是例如二进制值。换句话说,利用单个第一数据包,确定已经通信就绪的数据总线用户设备的数量。在此通信阶段,无需对数据总线用户设备进行寻址。用于计数的第一数据包可以例如以循环帧的形式发送到本地总线。

在此,循环帧例如可以被定义为反复(循环)优选等距的时间间隔,在该时间间隔中可以在本地总线上传输数据。循环帧具有例如至少一个起始标识符(soc)和用于数据传输的时间范围。在此,彼此连续循环帧的多个起始标识符(soc)有利地在彼此时间等距的距离中。所提到的时间范围被设置用于数据包的传输。起始标识符(soc)和数据包通过本地总线传输,并通过所有数据总线用户设备。起始标识符(soc)是独立的,即可以作为独立符号被传输或有利地被包含在起始数据包(soc包)中。

在循环帧的时间范围内,没有、一个或多个数据包被传输。有利地,空载数据(休眠数据)被插入到循环帧中,尤其是邻近至少一个数据包。

有利地,数据包和/或空载数据的传输在本地总线上引起不间断的信号。该信号实现数据总线用户设备对该信号进行时间同步。有利地,循环帧还具有尾部。尾部具有可变的长度,并且跟随用于数据传输的时间范围优选地直到下一个循环帧的下一个起始标识符(soc)。有利地,尾部具有空载数据。

每个已经通信就绪的数据总线用户设备都可以在接收到单个的数据包后,更改(例如递增或递减)包含在数据包中的第一个计数器值,然后将数据包或包含计数器值的数据包部分转发给下一个数据总线用户设备。尚未通信就绪的数据总线用户设备仅在不更改第一计数器值的情况下转发数据包。在此,如果数据总线用户设备与本地总线时钟同步并且可以接收数据包并转发数据包并且能够对数据包执行处理,则数据总线用户设备可以是通信就绪。如果本地总线是环形总线,则来自最后的数据总线用户设备的数据包,无论是否最后的数据总线用户设备已经通信就绪,都将被返回到本地总线主机。备选地,环形总线也可以由桥接单元封闭,该桥接单元将在下行方向中接收到的数据包再次在上行方向上进行发送。这要么通过所有数据总线用户设备再次发生,以使它们可以再次执行处理,要么通过旁路连接经过所有数据总线用户设备。然后,根据第一计数器值,本地总线主机将知道本地总线的有多少个数据总线用户设备已通信就绪。为了信息查询,本地总线主机随后生成多个第二数据包。在此,多个第二数据包与通过第一计数器值显示的通信就绪的数据总线用户设备的数量相对应。如果例如第一计数器值指示存在n个通信就绪的数据总线用户设备,则还将生成n个第二数据包并在本地总线上发送,其中n是自然整数。随后,将多个第二数据包从本地总线主机发送到本地总线。在每种情况下,所生成的第二数据包中的一个被确定用于通信就绪的数据总线用户设备,并根据通信就绪的数据总线用户设备的相应的相对位置在顺序内分配给该数据总线用户设备。换句话说,通信就绪的数据总线用户设备已按特定顺序更改了第一数据包的第一计数器值。多个第二数据包优选地以与改变第一计数器值的顺序相对应的顺序发送到本地总线。然后,这些第二数据包可用于响应各个数据总线用户设备,而无需知道其地址。也就是说,借助于第一数据包,确定了通信就绪的数据总线用户设备在本地总线中的相对位置,然后将该相对位置用于寻址通信就绪的数据总线用户设备或给这些数据总线用户设备分配第二数据包并发送。通过使用数据总线用户设备的相对位置,该相对位置不取决于数据总线用户设备的物理位置,而是取决于他的通信就绪性,因此可以进行灵活的通信和信息收集。在此,多个第二数据包中的每个数据包在此被精确地分配给数据总线用户设备,该数据总线用户设备使用该第二数据包将信息转发到本地总线主机。因此,本地总线主机在通信的此阶段中以数据总线用户设备更改了第一数据包的第一计数器值的顺序来寻址数据总线用户设备。

在此描述的在本地总线上传输的数据包也可以称为电报。数据包也可以称为通信数据包,通信数据包尤其用于编程和/或控制和/或监视和/或识别至少一个数据总线用户设备。

数据总线用户设备可以特别是通过例如将控制信号输出到执行器和/或通过例如从传感器接收测量信号来控制或监视过程。数据总线用户设备将控制信号和/或测量信号转换为本地总线的数据,反之亦然。

在根据本发明的方法的优选实施方式中,用于第一计数的单个使用的数据包具有与对应于第一计数器值的数量由本地总线窗口生成并被发送到本地总线的多个第二数据包相同的类型。

在根据本发明的方法的优选实施方式中,多个第二数据包中的每个数据包具有用于分配数据包的第二计数器值,其中每个第二数据包中的第二计数器值不同,即具有不同的起始值。该第二计数器值用于数据总线用户设备的相对寻址。如果数据总线用户设备识别用于相对寻址的数据包的第二计数器值对应于特定参考值,则该数据总线用户设备识别出:带有第二计数器值的数据包被确定用于数据总线用户设备。在相对寻址中,每个数据总线用户设备都改变多个第二数据包中的每个第二数据包的第二计数器值。在此,该改变可以是第二计数器值的递增或递减。在此,本地总线主机可以适于根据所计数的数据总线用户设备的数量(即第一计数器值)来适配第二计数器值,使得每个第二计数器值都不同。此外,每个第二计数器值都被适配成使得通过数据总线用户设备通过更改第二计数器值,第二计数器值在仅正好一个通信就绪的数据总线用户设备时达到参考值。在此,在所有数据总线用户设备中,参考值可以是相同的参考值。因此第二计数器值相应地与每个数据包不同。如果数据包的第二计数器值在通信就绪的数据总线用户设备上达到参考值,则该数据总线用户设备知道数据包被确定用于此数据总线用户设备。为此,可以将每个数据总线用户设备设计为在多个第二数据包的每个数据包中的第二计数器值与参考值之间进行比较。例如,第二计数器值可以由二进制表示来反映。

例如,多个第二数据包的作为被发送的第一数据包可以具有第二计数器值,该第二计数器值对应于第二计数器值的可能值范围的最高二进制表示。这意味着多个第二数据包的作为发送的第一数据包在第二计数器值中仅具有一。在此,值范围可以取决于可以连接到本地总线的最大数量的数据总线用户设备。如果第一数据总线用户设备递增多个第二数据包的作为发送的第一数据包的第二计数器值,那么其将经历交零,即,二进制表示仅具有零。备选地,参考值也可以是多个有效最后位的交零。如果第一数据总线用户设备的参考值为零,则第一数据总线用户设备在此提到的示例中识别出:数据包被定向到第一数据总线用户设备,也就是说被分配给该第一数据总线用户设备。从多个第二数据包发送到本地总线的第二数据包可以被确定用于第二数据总线用户设备,也就是说定向到该第二数据总线用户设备。在此数据包中,本地总线主机可以将第二计数器值设置到这样的值:该值可以在该其记录交零之前由两个数据总线用户设备递增。多个第二数据包的作为发送的第二数据包因此可以由第一数据总线用户设备增加,并且由第一数据总线用户设备递增到最高的二进制表示,也就是说,递增到仅具有一的值。但是由于没有记录交零,因此第一数据总线用户设备知道数据包不被设置用于第一数据总线用户设备,而是在本地总线上进一步发送给下一个通信就绪的数据总线用户设备。该数据总线用户设备再次递增了已经一次增量的第二计数器值。在这种情况下,将经历交零,以便通信就绪的第二数据总线用户设备知道该数据包被确定用于第二数据总线用户设备。以这种方式,本地总线主机可以经由第二计数器值及其对参考值的获得,将多个第二数据包中的所有数据包分配到各个通信就绪的数据总线用户设备或寻址或定向到各个数据总线用户设备。在此,本领域技术人员清楚的是,即使在此描述了递增并且交零也被假定为参考值,这也可以通过递减和交一来实现。也就是说,作为发送的第一数据包的第二计数器值设置为零。

如果第二计数器值递减,则计数器值仅跳到一。多个数据包的作为发送的第二数据包则相应地包含一作为第二计数器值的起始值,等等。此外,本领域技术人员知道可以使用其他计数机制,并且可以将第二计数器值相应设置成与这些计数机制相对应。在计数机制的情况下,优选地,计数器值可以被设置为仅具有正好一次参考值,从而导致数据包的一对一分配。例如,也可以先与参考值进行比较,并且然后进行递增/递减。

如果数据总线用户设备由于该数据包中的第二计数器值已达到与存储在数据总线用户设备中的参考值相对应的参考值而识别出该数据包定向到该数据总线用户设备,因此数据总线用户设备可以将存储在数据总线用户设备中的信息写入到被定向到数据总线用户设备处的数据包的字段中。例如,数据总线用户设备可以在该字段中写入其地址。这样,本地总线主机可以收集有关数据总线用户设备的信息。

在根据本发明的方法的优选实施方式中,该方法包括:在传导通过本地总线之后,即在通过每个通信就绪的数据总线用户设备已经处理了至少一个数据包之后,比较本地总线主机上的多个数据包的至少一个数据包的第一计数器值和第二计数器值。如果在第一计数和数据包返回之间在本地总线主机上没有其他数据总线用户设备通信就绪,则在第一计数器值和第二计数器值之间存在限定的关系。例如,多个第二数据包的第一数据包的第二计数器值等于第一计数器值减去一,并且多个第二数据包的最后的数据包的第二计数器值等于参考值,例如等于零。这是由于第二计数器值适应于由第一计数器值计数的数据总线用户设备数量。然后,根据数据总线用户设备的数量(即由第一计数器值指示的数量)由每个数据总线用户设备恰好一次改变多个第二数据包中的每个数据包的第二计数器值。如果新的数据总线用户设备在第一计数过程中借助第一计数器值和多个第二数据包的发送通信就绪,则本地总线主机将无法识别到第一计数器值和第二计数器值之间的固定关系。在这种情况下,本地总线主机再次将具有第一计数器值的单个第一数据包发送给数据总线用户设备,在这种情况下,本地总线主机再次对通信就绪的数据总线用户设备进行计数。随后,例如可以将新的计数器值与旧的计数器值进行比较。如果这些匹配,则可以确定的是,在传输中存在错误,或者尽管数据总线用户设备信令了该通信就绪性,但是该数据总线用户设备由于处理具有第一计数器值的第一数据包而无法处理多个第二数据包。如果新的第一计数器值偏离旧的计数器值,则至少一个另外的数据总线用户设备已通信就绪。在这种情况下,本地总线主机再次发送多个第二数据包,其中该数量匹配到新的第一计数器值,并且多个第二数据包的第二计数器值也匹配到新的第一计数器值。重复此方法,直到该比较显示在此期间没有其他数据总线用户设备通信就绪。

在根据本发明的方法的优选实施方式中,本地总线主机以一定的时间间隔发送具有第一计数器值的单个第一数据包,以便检查连接在本地总线上的数据总线用户设备的数量。

在根据本发明的方法的优选实施方式中,在接收到多个第二数据包之后,本地总线主机再次发送具有第一计数器值的数据包,以便在此期间检查是否没有其他数据总线用户设备通信就绪。这意味着本地总线主机验证在多个第二数据包中获得的数据。

通过具有数据总线用户设备的本地总线、特别是环形总线的本地总线主机也实现了上述目的。在此,本地总线主机具有一种向所有数据总线用户设备发送第一数据包的装置,其中第一数据包用于按顺序对通信就绪的数据总线用户设备进行计数。在此,第一数据包可以具有第一计数器值,该第一计数器值由每个通信就绪的数据总线用户设备按顺序改变。然后,在接收到第一数据包后,本地总线主机可以借助数据包的第一计数器值来确定有多少个数据总线用户设备已通信就绪。此外,本地总线主机具有用于发送多个第二数据包的装置,其中,其数量基于第一计数器值。每个第二数据包基于通信就绪的数据总线用户设备的相应相对位置按顺序被分配给这些数据总线用户设备,其中该分配可以借助第二计数器值进行。在此,用于发送的装置可以是发送器电路或收发器电路。可以在专用集成电路(asic)或现场可编程(逻辑)门阵列(fpga)中实现电路。

上述目的还通过一种用于与具有通信就绪的数据总线用户设备的本地总线、特别是环形总线的本地总线主机进行通信的方法来实现。该方法包括:在通信就绪的数据总线用户设备上接收本地总线主机的第一数据包,其中,第一数据包具有第一计数器值,由通信就绪的数据总线用户设备改变数据包中的第一计数器值,接收多个第二数据包,其中每个第二数据包具有第二计数器值。此外,该方法包括:将存储在通信就绪的数据总线用户设备中的信息(例如地址)写入到被分配给通信就绪的数据总线用户设备的多个第二数据包的数据包的字段中。在此,数据总线用户设备可以识别的是,当数据总线用户设备改变数据包的第二计数器值并且然后数据总线用户设备达到参考值时,给该数据总线用户设备从多个第二数据包中分配数据包。在此,每个数据包中的多个第二数据包的第二计数器值不同,因此如果所有通信就绪的数据总线用户设备都改变多个第二数据包的数据包的第二计数器值,则仅正好一次达到该参考值。

上述目的也通过具有本地总线主机的本地总线、尤其是环形总线的通信就绪的数据总线用户设备来实现。通信就绪的数据总线用户设备具有:从本地总线主机接收第一数据包的装置,其中第一数据包具有第一计数器值;用于改变第一数据包中的第一计数器值的装置;用于接收多个第二数据包的装置;以及用于将存储在通信就绪的数据总线用户设备中的信息(例如地址)写入到被分配给通信就绪的数据总线用户设备的多个第二数据包的数据包的字段中的装置。

通过包括本地总线主机和至少一个数据总线用户设备的本地总线系统也实现了上述目的。

本地总线主机具有一种向所有数据总线用户设备发送第一数据包的装置,其中第一数据包用于按顺序对通信就绪的数据总线用户设备进行计数。在此,第一数据包可以具有第一计数器值,该第一计数器值由每个通信就绪的数据总线用户设备按顺序改变。此外,本地总线主机可以包括用于接收第一数据包的装置,该第一数据包具有由每个通信就绪的数据总线用户设备改变的第一计数器值。然后,在接收到第一数据包后,本地总线主机可以借助数据包的第一计数器值来确定有多少个数据总线用户设备已通信就绪。此外,本地总线主机具有用于发送多个第二数据包的装置,其中,其数量基于第一计数器值。每个第二数据包基于通信就绪的数据总线用户设备的相应相对位置按顺序被分配给这些数据总线用户设备,其中,该分配借助第二计数器值进行。在此,可以通过给每个第二数据包给定第二计数器值的不同起始值来完成分配。

通信就绪的数据总线用户设备具有:从本地总线主机接收单个的第一数据包的装置;其中第一数据包具有第一计数器值;用于改变第一数据包中的第一计数器值的装置;用于接收多个第二数据包的装置;以及用于将存储在通信就绪的数据总线用户设备中的信息(例如地址)写入到被分配给通信就绪的数据总线用户设备的多个第二数据包的数据包的字段中的装置。

本地总线主机可以具有用于接收由通信就绪的数据总线用户设备改变的第二数据包的装置,并且可以读取由通信就绪的数据总线用户设备写入到第二数据包中的数据。

上述目的还通过一种包含代码的计算机可读介质来实现,该代码引起计算机执行本文描述的方法之一。在此,该代码可以存储在本地总线主机和/或数据总线用户设备中。在优选实施方式中,代码被存储在本地总线主机的固件存储器中或数据总线用户设备可访问的存储器中。

附图说明

接下来借助实施例利用附图更详细地解释本发明。从所描述的实施例得到本发明的主题的进一步细节、特征和优点。图示:

图1是根据本发明的具有存储可编程控制部、上级总线和多个示例的数据总线用户设备的示例自动化设备的示意性框图;

图2示出了具有第一和第二计数器值的示例性数据包;

图3示出了由图1所示的数据总线用户设备发送单个数据包以对数据总线用户设备进行计数;

图4示出了图1所示的数据总线用户设备为了数据总线用户设备的信息查询而发送多个数据包;

图5a/b示出了图1所示的数据总线用户设备与通信就绪的附加的数据总线用户设备发送多个数据包;

图6示出了由图1所示的数据总线用户设备再次发送单个数据包以对数据总线用户设备进行计数;并且

图7a/b示出了图1所示的数据总线用户设备为了数据总线用户设备的信息查询而再次发送多个数据包。

具体实施方式

图1示出了自动化设备的示意性框图。本领域技术人员将理解,所示的自动化设备只是示例,并且属于自动化设备的所有元件、模块、构件、用户设备和单元都可以进行不同配置,但仍然可以满足此处描述的基本功能。

图1所示的自动化设备具有上级控制部1,上级控制部例如可以通过存储可编程控制部sps来实现。这样的sps1基本上用于控制和调节由自动化设备执行的过程。但是,当今自动化设备中的sps1还承担更广泛的功能,例如可视化、报警和记录与过程有关的所有数据,并且因此sps1充当人机接口。存在不同性能等级的sps1,其具有不同的资源(计算容量、存储器容量、输入和输出以及接口的数量和类型),这些资源使sps1实现控制和调节自动化设备的过程。sps1通常具有模块化构造,并且包括单个组件,每个组件执行不同的任务。通常,sps1包括中央计算结构组(具有一个或多个主处理器和存储模块)和多个具有输入和输出的结构组。通过添加结构组,可以轻松扩展此类模块化构造的sps1。在此,取决于过程的复杂性和自动化设备的结构的复杂性的是哪些结构组必须集成在sps1中。在当今的自动化设备中,sps1通常也不再是独立的系统,而是通过相应的接口(此处未显示)将sps1连接到互联网或内联网。

这意味着sps1是网络的一部分,通过该网络或从该网络中sps1可以获得信息,指令,程序等。例如,sps1可以通过与位于内联网或互联网上的计算机的连接来获取有关过程提供的材料的信息,因此例如通过了解材料的数量或性质可以最佳控制该过程。也可以设想的是,sps1由使用者从内联网或互联网进行的访问进行控制。因此例如使用者在计算机(也称为主计算机)的帮助下可以访问sps1并检查、更改或纠正其用户编程。因此,可以从一个或多个远程控制站或控制中心访问sps1。如果需要,主计算机可以具有可视化设备,用于表示过程序列。

为了控制自动化设备的过程,将spsl连接到自动化仪器。为了保持较低的接线成本,针对这些连接而使用总线系统。在图1所示的实施例中,sps1借助于上级总线2连接到下级本地总线系统的本地总线主机3,该上级总线2在这里所示的实施例中可以是现场总线。然而在上级总线2上不仅可以如这里所示的实施例中那样连接着本地总线的本地总线主机3,而且还连接着被设计用于与sps1通信的任何其他用户设备(这里未示出)。

在这里示出的实施例中,上级总线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。第二接口的第一部分5a在环形总线6中建立下行连接,并且第二接口的第二部分5b在环形总线6中建立上行连接。

环形总线6(环形总线的数据发送方向用箭头在图1所示的实施例中示出)在此处所示的实施例中具有数据总线用户设备7a、7b,...,7n。在这里所示的实施例中,这些数据总线用户设备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还具有用于在环形总线6的上行方向上,即向本地总线主机3传播数据的接口10和11。在此,在数据总线用户设备7a的情况下,接口10被设计成从下游或后续的数据总线用户设备7b接收数据,并且接口11被设计成将数据转发给上游或先前的数据总线用户设备,这里是本地总线主机3。所以也可以说,接口9和11是发送接口,而接口8和10是接收接口。

在此处所示的实施例中,接口和sps1或数据总线用户设备7a、7b,...,7n的连接通过电缆或电路板和/或通过电触头直接或间接接触来实现。另一备选方案是,单个连接是通过无线方式建立的,并且接口提供了对所用无线标准的必要转换。

即使在这里示出的实施例中,本地总线主机3和单个数据总线用户设备7a、7b,...,7n彼此分开地示出,本地总线主机3也因此与数据总线用户设备7a、7b,...,7n分散地布置,技术人员知道数据总线用户设备7a、7b,...,7n和还代表环形总线6的数据总线用户设备的本地总线主机3也可以直接彼此连接。在此,例如一个数据总线用户设备的触头可以嵌入到直接相邻的数据总线用户设备的相应的容纳部或容纳触头,以便在数据总线用户设备之间建立电连接,从而可以在上行方向和下行方向上发送数据。例如,数据总线用户设备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连接,以便可以将它们紧固在期望的容纳部上。

此外,在图1所示的实施例中,数据总线用户设备7a、7b,...,7n还具有处理单元12,该处理单元例如包括处理部件和逻辑单元。处理单元12也可以称为数据总线用户设备的整个电路。也就是说,处理单元12经由输入8和10接收数据,并且在输出9和11上输出数据。此外,处理单元12可以从输入和输出13和14接收或输出数据。

此外,处理单元12可以访问数据总线用户设备7a、7b,...,7n的存储器12’,其中例如存储有数据、过程数据或指令列表。

处理单元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之间的通信也不会中断。

由于该实施例中所示的数据总线用户设备7a、7b,...,7n由于其能够与传感器15或执行器16连接的输入和输出13、14而也经常被称为e/a模块。即使在这里示出的示例性实施例中,数据总线用户设备7a、7b,...,7n被示为与传感器15或执行器16在空间上分离,因此传感器15或执行器16也可以集成在e/a模块中。

在此示出的实施例中示出的环形总线6基于循环帧通信。

每个数据包由本地总线主机3在下行方向上发送到环形总线6的第一数据总线用户设备7a。第一数据总线用户设备通过接口8接收数据包的第一部分。数据包的这一部分在下面也称为一块或一个单元。数据总线用户设备7a然后执行该部分的处理,然后将其通过接口9转发给下一个数据总线用户设备7b,优选第一数据总线用户设备7a接收同时接受数据包的第二部分,等等。在此,数据包的部分的大小,即数据包的细分在此取决于数据总线用户设备7a、7b,...,7n的容量,例如固定数量的位,例如数据包的8位能够同时存在于数据总线用户设备7a、7b,...,7n处,以进行处理。

相应地,数据包例如以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的上行方向上。例如,在上行方向上,处理可以通过信号刷新和/或相移来进行。

但是,在可以在承载过程数据的本地总线6上发送数据包之前,必须对本地总线6进行初始化。也就是说,本地总线主机3必须获得关于存在哪些数据总线用户设备7a、7b,...,7n的知识,并且可以从该数据总线用户设备中查询信息。如果将本地总线6设计为在运行期间也可以更改数据总线用户设备7a、7b,...,7n(称为热交换),那么本地总线主机3也必须能够在运行期间识别新的数据总线用户设备并从新的数据总线用户设备查询信息。

根据本发明,本地总线主机3使用第一数据包和多个第二数据包用于该起始的初始化或中间初始化。第一数据包以未寻址到本地总线6上的方式被发送,并且通过所有数据总线用户设备7a、7b,...,7n。然后,多个第二数据包随后在本地总线6上传输,并且同样通过所有数据总线用户设备7a、7b,...,7n。第一数据包和多个第二数据包在此可以是相同的类型。在图2中通过示例示出了相应的数据包。

在图2中示例性地示出的数据包17包括一般的头部分(也可以称为报头),信息部分(也可以称为净荷),以及校验和部分(也可以称为校验和)。

头部分包括字段18,该字段包含明确仅一次出现的位模式enum,该位模式也可以称为代码字或标识符。唯一的位模式或代码字的数量和配置取决于本地总线6上使用的编码。但是,备选地或附加地,也可以在所使用的总线协议中定义特殊的位模式或代码字。在此很重要的是,数据总线用户设备7a、7b,...,7n可以从字段18的位模式或代码字中一对一地识别出涉及哪种类型的数据包17。在此处所示的实施例中,数据总线用户设备7a、7b,...,7n知道当接收到具有位模式enum的字段18时,它是用于初始化或者中间初始化的数据包17。

头部分还可以包括可用于控制或检查数据包17和其中包含的数据的其他信息。在此,本领域技术人员知道头部分中可能包含的许多字段。

数据包17的信息部分具有几个字段,这些字段可用于初始化以及中间初始化。在此,数据包17具有第一计数器值23和第二计数器值19。在此,第一计数器值23用于对本地总线6上的数据总线用户设备7a、7b,...,7n进行计数。在此,第一计数器值23由通信就绪的每个数据总线用户设备7a、7b,...,7n改变,也就是说由例如可以处理数据包17的每个数据总线用户设备7a、7b,...,7n改变。该改变可以在于递增或递减第一计数器值23的值。如果数据包17已经通过本地总线6,即再次到达本地总线主机3,则其知道多少通信就绪的数据总线用户设备7a、7b,...,7n连接到本地总线6。此外,数据包17还具有第二计数器值19,该第二计数器值用于将数据包17分配给通信就绪的数据总线用户设备7a,b,...,7n,如将在下面参考图3至图7更详细地说明那样。

此外,数据包具有字段20,数据总线用户设备7a、7b,...,7n可以使用该字段来将其存储的地址传送给本地总线主机3。数据包17还具有字段21,本地总线主机3可利用该字段向数据总线用户设备7a、7b,...,7n分配新地址。此外,数据包17还可以具有另一个字段22,该字段可以携带用于相应的数据总线用户设备7a、7b,...,7n的控制信息。本领域技术人员已知的是,即使在这里预定了字段19至23的特定顺序和数量,也可以在不脱离本发明的主题的情况下偏离字段的这种布置和数量。此外,本领域技术人员已知的是,即使在这里仅显示了查询地址信息的示例,也可以查询数据总线用户设备7a、7b,...,7n的其他信息而且与此对应的字段可以被包括在数据包17中。

在这里所示的实施例中,数据包17被分成每个8位的符号。数据总线用户设备7a、7b,...,7n也以此细分接收和处理数据包17。这意味着,首先本地总线主机3将符号或字段enum18发送到第一数据总线用户设备7a,在预定时间之后,本地总线主机3将数据包17的头部分的另一个符号发送到数据总线用户设备7a,数据总线用户设备又同时将符号或字段enum18发送到数据总线用户设备7b。这样,数据包17的所有部分都通过相应的数据总线用户设备7a、7b,...,7n,其中,在任何给定时间,每个数据总线用户设备7a、7b,...,7n始终仅持有并且因此可以处理数据包17的一块或一部分。

图3通过示例的方式示出了本地总线6的初始化。在这里所示的实施例中,只有数据总线用户设备7a和7n通信就绪。尽管数据总线用户设备7b存在于本地总线6上,但数据总线用户设备尚未通信就绪,这通过数据总线用户设备7b仅传送下行数据流和上行数据流的事实来说明。在给定时间,本地总线主机3逐个符号地向通信就绪的数据总线用户设备7a发送第一数据包17。这由本地总线6的位置(a)处的第一数据包17指示。也就是说,数据总线用户设备7a首先以一对一的位模式接收第一数据包17的字段18,并且具有以下知识:现在进行初始化。然后当在数据总线用户设备7a处接收到字段23时,数据总线用户设备可以对字段执行处理,即改变该字段23的值。在这里所示的实施例中,字段23具有二进制值,并且数据总线用户设备7a使二进制值递增。在这里示出的实施例中,第一计数器值23的值已经由本地总线主机3设置为0000,并且数据总线用户设备7a将该值递增了一个到0001。也就是说,在通过数据总线用户设备7a之后,该数据包与从本地总线主机3发送的数据包17不同。这在此处示出的示例性实施例中还以数据包的标识被示出为数据包17”。数据总线用户设备7a本身也逐个符号地将数据包17”转发下一个数据总线用户设备7b。由于数据总线用户设备7b尚未通信就绪,因此数据总线用户设备将数据包17”的符号直接转发到下一个数据总线用户设备,在此示出的示例性实施例中,转发到总线用户设备7n。这由本地总线6的位置(b)处的数据包17”指示。数据包17”因此未被尚未通信就绪的数据总线用户设备7b处理,也就是说,第一计数器值的值对应于值,数据总线用户设备7a已经将该第一计数器值递增到该值,即0001。数据总线用户设备7n然后接收数据包17”并且首先识别一对一的位模式18。当数据总线用户设备7n已经接收到具有第一计数器值23的符号时,由于数据总线用户设备7n已经通信就绪,因此第一计数器值23递增到0010。数据总线用户设备7n将这样改变的数据包17”返回传送到本地总线主机3。这由在本地总线6的位置(c)处的数据包17”表示。然后,本地总线主机3可以从数据包17”中读出第一计数器值23,并且从而可以获悉在本地总线6上存在多少通信就绪的数据总线用户设备7a、7n。这是因为仅通信就绪的数据总线用户设备7a、7n改变了计数器值23,而尚未通信就绪的数据总线用户设备7b却没有改变该计数器值。

随后,本地总线主机3生成数据包17,但是以第一计数器值23表示的通信就绪的数据总线用户设备7a、7n的数量生成,这在图4中示出。在此处所示的示例性实施例中,本地总线主机3生成与第一计数器值23相对应的两个第二数据包17a和17b。每个数据包17a、17b具有第二计数器值19a、19b。借助于该第二计数器值19a、19b,将两个数据包17a、17b分配给通信就绪的数据总线用户设备7a和7n。为此,本地总线主机3将数据包17a的第二计数器值19a设置为第二计数器值19a可以假定的最高二进制表示,在这里在示例性实施例中设置为1111。将第二数据包17b的第二计数器值19b设置为与数据包17a相比减小的值,这里为1110。随后,数据包17a、17b从本地总线主机3发送到第一数据总线用户设备7a。这由本地总线6的位置(a)处的数据包17a和17b指示。第一数据总线用户设备7a逐个符号接收两个数据包17a和17b。在此,数据总线用户设备7a分别递增两个数据包17a和17b的第二计数器值19a和19b。如果数据总线用户设备7a在递增第二计数器值19a、19b之一时确定存在交零,也就是说,数据包的第二计数器值19a、19b在递增时跳至零,则数据总线用户设备7a识别出第二计数器值19a、19b跳到零时的相应数据包17a、17b被指向数据总线用户设备7a。

在这里示出的实施例中,首先发送的数据包17a被指向数据总线用户设备7a。在该数据总线用户设备7a处,当第二计数器值19a由数据总线用户设备7a增加时,第二计数器值19a经历交零。数据总线用户设备7a在这种情况下知道穿过数据总线用户设备7a的以下符号被确定用于该数据总线用户设备7a。因此,在本实施例中,第二计数器值19a被前置于数据包17a的信息部分中的其他字段,因此在识别到第二计数器值19a的交零时,数据总线用户设备7a可以处理以下符号。在这里示出的实施例中,数据总线用户设备7a被设计为将其地址写入指向数据总线用户设备7a的数据包17a的字段20a中。在这里所示的实施例中,数据总线用户设备7a的地址是#42。本领域技术人员知道的是,数据总线用户设备7a还可以被设计为将其他信息写入数据包17a中,并且在此仅作为示例使用地址信息。数据总线用户设备7a通过接收具有发送的第二数据包17b的一对一的位模式18b的符号来确定数据包17a的末端。数据总线用户设备7a还增加该数据包17b的第二计数器值19b。然而由于第二计数器值19b的值是由本地总线主机3调节的,使得数据包17b的第二计数器值19b的值与数据包17a的第二计数器值19a的值相比减小了一,所以没有检测到交零,但是数据包17b的第二计数器值19b仅从1110被设置为1111。数据总线用户设备7a逐个符号地将数据包17a”和17b”转发到下一个数据总线用户设备7b。然而由于该下一个数据总线用户设备仍未通信就绪,因此将数据包17a”,17b”不变地转发到下一个数据总线用户设备7n。这由本地总线6的位置(b)处的数据包17a”和17b”指示。数据总线用户设备7n还逐个符号地接收数据包17a”和17b”,并且该数据总线用户设备7n还适于增加第二计数器值19a、19b的值。这导致的是,数据包17a”第二计数器值19a的值从0000被设置为0001,并且数据包17b”第二计数器值19b的值经历交零。在这种情况下,数据总线用户设备7n识别出:数据包17b”定向到数据总线用户设备7n并且知道以下符号被指向数据总线用户设备7n。与数据总线用户设备7a对应,数据总线用户设备7n将其地址插入数据包17b’的字段20b中,其中7n数据总线用户设备的地址为#88。同样在此本领域技术人员已知的是,可以将地址信息以外的信息写入数据包17b’中。数据总线用户设备7n将数据包17a”和17n”的符号转发到本地总线主机3。这由本地总线6的位置(c)处的数据包17a”和17b”指示。本地总线主机3接收具有字段20a和20b的数据包17a”和17b”,并因此知道数据总线用户设备7a具有地址#42,并且数据总线用户设备7n具有地址#88。如果数据总线用户设备7a、7n适于将其他信息写入数据包17a、17b,则本地总线主机3获得该信息的相应知识。在此,本地总线主机3可以验证的是,如果最后的数据包17b”的第二计数器值19b的值等于0,则初始化成功,前提是在上行方向上没有发生数据包的进一步处理。

图5a和5b示出了与图4相同的情况,即两个数据包17a和17b传送通过本地总线6,其中每个通信就绪的数据总线用户设备7a、7b,...,7n在检测到的第二计数器值19a、19b的值交零的情况下将其地址写入相应数据包17a、17b的随后的字段20a、20b中。然而,与图4中的情况相反,在图5a和5b中,在此期间例如在穿过第一数据包17之后以对通信就绪的数据总线用户设备进行计数之后并且在通过第二数据包17a、17b之前,数据总线用户设备7b已经通信就绪。这意味着,数据总线用户设备7b不仅简单地传送通过数据包17a’和17b’,而是对该数据包进行处理。从本地总线主机3到数据总线用户设备7a,对应于图4的情况。这由本地总线6的位置(a)处的数据包17a和17b指示。数据总线用户设备7a接收数据包17a、17b,增加相应的第二计数器值19a、19b的值,并且在数据包17a中检测该数据包17a的第二计数器值19a的值的交零,并将其地址#42写入数据包17a的字段20a中。数据总线用户设备7a还将数据包17b的第二计数器值19b的值增加1110至1111的值,并将数据包17a”,17b”转发到下一个数据总线用户设备7b。

这由本地总线6的位置(b)处的数据包17a”和17b”指示。数据总线用户设备7b现在通信就绪,并执行与数据总线用户设备7a和7n相同的处理。数据总线用户设备7b相应地增加相应数据包17a”,17b”的第二计数器值19a、19b的值,并且在数据包17b”的第二计数器值19b的值中检测交零。也就是说,数据总线用户设备7b将其地址#56写入数据包17b’的字段20b中。数据包17a”和17b”从数据总线用户设备7b传递到下一个数据总线用户设备7n。这由本地总线6的位置(c)处的数据包17a”和17b”指示。但是,数据总线用户设备7n没有在任何数据包17a”,17b”中还检测到交零,因为定向到该数据总线用户设备7n的数据包17b”已经被第二数据总线用户设备7b用来传送其地址。尽管数据总线用户设备7n相应地增加了相应数据包17a”,17b”的第二计数器值19a、19b的值,但是不传送其地址。然而,数据总线用户设备7n将数据包17a”,17b”转发到本地总线主机3。这由本地总线6的位置(d)处的数据包17a”’和17b”’指示。本地总线主机3识别出最后数据包17b”’的第二计数器值19b的值偏离于零。这意味着,本地总线主机3识别出发送的数据包17a、17b的数量与通信就绪的数据总线用户设备7a、7b,...,7n的数量不匹配。在此,本地总线主机3从最后数据包17b”’的第二计数器值19b的值与用于对通信就绪的数据总线用户设备7a、7b,...,7n进行计数的第一计数器值23的值之间的偏差中识别出多少个通信就绪的数据总线用户设备7a、7b,...,7n已被添加。本地总线主机3可以使用该信息来重新发送相应数量的数据包。然而,在识别到一个或多个新的数据总线用户设备7b已经通信就绪之后,本地总线主机3可以等待预定时间,然后再次发送单个第一数据包17,以对现在存在于本地总线6处的通信就绪的数据总线用户设备7a、7b,...,7n进行计数,这在图6中示出。

图6示出了存在于本地总线6上的通信就绪的数据总线用户设备7a、7b,...,7n的重新计数。在给定时间,本地总线主机3逐个符号地向通信就绪的数据总线用户设备7a发送单个第一数据包17。这由在本地总线6的位置(a)处的数据包17表示。也就是说,数据总线用户设备7a首先以一对一的位模式接收数据包的字段18,并且具有以下知识:现在进行初始化。然后当在数据总线用户设备7a处接收到字段23时,数据总线用户设备可以对字段执行处理,即改变该字段23的值。在这里所示的实施例中,字段23具有二进制值,并且数据总线用户设备7a使二进制值递增。在这里示出的实施例中,第一计数器值23的值已经由本地总线主机3设置为0000,并且数据总线用户设备7a将该值递增了一个到0001。也就是说,在经过数据总线用户设备7a之后,该数据包不同于由本地总线主机3发送的数据包17,这在此处示出的实施例中还以将数据包标识为数据包17”的方式示出。数据总线用户设备7a本身也逐个符号地将数据包17”转发下一个数据总线用户设备7b。数据总线用户设备7b接收数据包17”,并且递增第一计数器值23的值。也就是说,在通过数据总线用户设备7b之后,该数据包与从数据总线用户设备7a发送的数据包17”不同。这在此处示出的示例性实施例中还以数据包的标识被示出为数据包17”。数据总线用户设备7b本身也逐个符号地将数据包17”转发下一个数据总线用户设备7n。数据总线用户设备7n接收数据包17”,并且递增第一计数器值23的值。也就是说,在通过数据总线用户设备7n之后,该数据包与从数据总线用户设备7b发送的数据包17”不同。这在此处示出的示例性实施例中还以数据包的标识被示出为数据包17”’。数据总线用户设备7n本身也逐个符号地将数据包17”’发送到本地总线主机3。本地总线主机3然后知道多少通信就绪的数据总线用户设备7a、7b,...,7n具有本地总线6。

随后,本地总线主机3再次生成多个第二数据包17a、17b、17c。各个数据包17a、17b、17c的第二计数器值19a、19b、19c的值分别适于将数据包17a、17b、17c根据顺序分配给各个数据总线用户设备7a、7b,...,7n。这在图7a和7b中示出。

本地总线主机3调整各个数据包17a、17b、17c的第二计数器值19a、19b、19c的值,使得数据包分别相差一个值,并且第一数据包17a具有第二计数器值19a的最高值。数据包17a、17b、17c被逐个符号地发送到本地总线6。这由本地总线6的位置(a)处的数据包17a、17b、17c指示。数据总线用户设备7a接收数据包17a、17b、17c,并且在每种情况下增加相应数据包17a、17b、17c的第二计数器值19a、19b、19c的值。在数据包17a的情况下,当第二计数器值19a增加时,数据总线用户设备7a检测到交零并且识别出该数据包17a被指向数据总线用户设备7a。因此,数据总线用户设备7a将其地址#42写入数据包17a的下一个字段20a中。数据总线用户设备7a将数据包17a’,17b’,17c’转发到数据总线用户设备7b。这由本地总线6的位置(b)处的数据包17a’,17b’,17c’指示。该数据总线用户设备7b还增加了相应数据包17a’,17b’,17c’的第二计数器值19a、19b、19c的值,并且在数据包17b’中确定第二计数器值19b的值的交零。结果,数据总线用户设备7b识别出数据包17b’被指向数据总线用户设备7b。因此,数据总线用户设备7b将其地址#56写入数据包17b’的以下字段20b中。数据总线用户设备7b将数据包17a”,17b”,17c”转发到数据总线用户设备7n。这由本地总线6的位置(a)处的数据包17a”,17b”,17c”指示。该数据总线用户设备7n还增加了相应数据包17a”,17b”,17c”的第二计数器值19a、19b、19c的值,并且在数据包17c”中确定第二计数器值19c的值的交零。结果,数据总线用户设备7n识别出数据包17c”被指向数据总线用户设备7n。因此,数据总线用户设备7n将其地址#88写入数据包17c”的下一个字段20c中。数据总线用户设备7n将数据包17a”’,17b”’,17c”’返回本地总线主机3。这由本地总线6的位置(d)处的数据包17a”’,17b”’,17c”’指示。

在接收到数据包17a”’,17b”’,17c”’之后,本地总线主机3知道数据总线用户设备7a、7b,...,7n的地址,即#42,#56,#88。本地总线主机3还可以例如通过确定最后数据包17c”’的第二计数器值19c的值是否等于或偏离零来验证新的数据总线用户设备是否在此期间已经通信就绪。在最后数据包17c”’的第二计数器值19c的值对应于零的情况下,数据包中的地址信息有效。否则,将重新计数,并且该方法将再次开始。

在验证了数据包17a”’,17b”’,17c”’中的地址信息之后,通过确定最后数据包17c”’的第二计数器值19c的值是否等于零,本地总线主机3可以再次适于重新发送至少一个第一数据包17,以重新计数并验证所有数据总线用户设备17a、17b、17c,通信就绪的数据总线用户设备7a、7b,...,7n的数量未更改。

尽管这里仅描述了地址信息的交换,但是本领域技术人员知道其他数据可以所示的方式用本地总线主机3进行交换。本领域技术人员也已知的是,可以在本地总线6的初始化期间由本地总线主机3使用所描述的方法,以便即使这些数据总线用户设备7a、7b,...,7n的地址未知但是第二计数器值19可以用于数据包的相对寻址,也收集关于通信就绪的数据总线用户设备7a、7b,...,7n的信息。

附图标记单

1存储可编程控制部(sps)

2上级总线

3本地总线主机

4第一接口

5a,b第二接口

6环形总线

7a,b,n数据总线用户设备

8第一下行数据接口

9第二下行数据接口

10第一上行数据接口

n第二上行数据接口

12处理单元

12’存储器

13、14输入/输出

15传感器

16执行器

17第一/第二数据包

17a,b,c多个第二数据包

18位模式

19第二计数器值

20用于存储数据总线用户设备的地址的字段

21用于为数据总线用户设备分配地址的字段

22控制信息

23第一计数器值

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1