掌桥专利:专业的专利平台
掌桥专利
首页

分配操作地址的方法

文献发布时间:2023-06-19 19:28:50


分配操作地址的方法

本发明涉及用于根据串行通信协议操作的具有“主/从”架构的电子系统的通信领域。特别地,本发明涉及一种分配操作地址的方法。本发明还涉及被配置成或编程成执行上述方法的主设备,以及具有“主/从”架构的电子系统,所述电子系统根据串行通信协议操作并且包括多个从设备和被配置成或编程成执行上述方法的主设备。

本发明的范围并不扩展到使用已经定义的程序、方法或寻址协议的通信协议,诸如使用DHCP协议的TCP/IP的情况。

具体地,在工业自动化领域,已知具有“主/从”架构的模拟和/或数字电子系统,其中称为“主”设备的主要设备对一个或更多个称为“从”设备的外围设备进行控制,该主要设备与这些外围设备进行通信。通常,具有“主/从”类型架构的电子系统包括连接至“主”设备的多个“从”设备,“主”设备用作多个“从”设备的中央协调和控制单元。例如,主设备可以是PLC控制器,并且多个从设备可以是测量设备或仪器。

近几十年来,已经为具有主/从类型架构的电子系统开发了各种通信协议。这些通信协议定义了具有“主/从”架构的电子系统的主设备和从设备之间的交互方式,即数据交换的方法,并且利用不同的传输电路实现主设备和从设备之间的至少一个数据传输通道。

在这种背景下,串行通信协议因其鲁棒性、经济性和抗干扰性而变得尤为重要。在根据串行通信协议操作的具有“主/从”架构的电子系统中,通信基于通过单个传输通道转移的比特流。

在串行通信协议中,Modbus协议的串行版本,即Modbus RTU和Modbus ASCII,现已具有事实上的标准地位。其他广泛使用的串行通信协议例如是集成电路间(I2C)协议和串行外设接口(SPI)协议。

在根据串行通信协议操作的具有主/从架构的电子系统中,主设备通过发送所谓的广播模式的操作通信—即包含无区别地编址到所有从设备的命令或指令的消息、或者所谓的已编址模式的操作通信—即包含编址到特定从设备的命令或指令的消息,来对从设备进行控制。

为了使已编址模式的操作通信仅由专门用于该操作通信的从设备接收,必须在上述操作通信与该从设备之间建立唯一耦合。

为此,必须为电子系统的每个从设备分配唯一标识它的操作地址,并且该操作地址必须包含在已编址到它的操作通信中。

因此,向电子系统的从设备中的每个从设备分配操作地址对于确保电子系统本身的正确操作是必不可少的。

因此,串行通信协议需要实现向从设备分配操作地址的程序,以允许与具体的从设备进行特定通信,其通过该具体的从设备的操作地址编址到该具体的从设备。

向根据串行通信协议操作的电子系统的从设备分配操作地址通常发生在:电子系统安装时,从设备之一脱机的情况下,或者从设备由于损坏或破损或其他原因而必须更换的情况下。

传统上,操作地址的分配可以由操作员手动进行。然而,除了完成起来非常耗时之外,由操作员进行的手动分配显然会导致人为错误。

为了克服这个缺点,已经开发了可以由根据串行通信协议操作的具有“主/从”类型架构的电子系统自主地实现的分配操作地址的方法。

具体地,在现有技术的背景下,在此类可以由根据串行通信协议操作的具有“主/从”类型架构的电子系统自主地实现的分配操作地址的方法中,设想主设备向同一电子系统的多个从设备请求:如果多个从设备中的每个从设备处于未编址状态,则多个从设备中的每个从设备从由相同从设备以随机方式选择的初始时刻开始在某一时间段内向主设备发送包含其自己的唯一标识符的标识通信。在本发明的背景下,表述“唯一标识符”是指代码,例如数字或字母数字代码,其使得多个从设备中的每个从设备都被标识或唯一标识或单独标识。例如,唯一标识符可以是“通用唯一标识符”(UUID)或类似的MAC地址(媒体访问控制地址)。因此,该唯一标识符唯一地标识多个从设备中的每个从设备,并且该标识通信被主设备用作分配操作地址的起始数据集。

包含从设备的唯一标识符的标识通信具有其自己的持续时间。通常,此持续时间为千分之一秒量级。

尽管标识通信的持续时间可以被认为是短的,但是从随机时刻开始的标识通信的传输导致如下事实:第一从设备的标识通信和第二从设备的标识通信可能完全重叠或部分重叠,也就是说它们至少部分地同时传输。为此,在此类情况下,包含在一个标识通信中的数据可能分别完全地或部分地与至少另一个标识通信的数据混合,使得接收它的主设备无法破译该通信。

如果数据完全混合,即,如果至少两个标识通信基本上是同时的,则主设备能够识别出错误。例如,在Modbus协议的串行版本的情况下,主设备通常被编程成或配置成执行旨在标识数据传输中的随机错误的检查,诸如循环冗余校验(CRC)。在这种情况下,已经识别出错误,主设备基本上同时不再向从其开始标识通信的各个从设备分配任何操作地址。

如果数据仅部分混合,则主设备并不总是能够识别出错误。两个或更多个不同从设备的部分重叠的标识通信很难被主设备识别。在这些情况中的一些情况下,主设备可能认为它已经正确接收到单个且有效的标识通信,并且发出分配操作地址的命令,该操作地址随后被几个从设备接收,结果是相同的操作地址被分配给已经实际上从其传输了具有部分重叠的标识通信的各个从设备。

如果相同的操作地址被分配给两个或更多个不同的从设备,则它们中的至少一个将从主设备接收已编址模式的操作通信。在这种情况下,主设备的操作通信中包含的命令可以被正确地处理和执行,这取决于给出的内容和预期的响应类型。但是,一般来说,如果将相同的操作地址分配给两个或更多个从设备,则出现通信问题或网络错误的可能性很高。因此,目前强烈需要改进由根据串行通信协议操作的具有“主/从”类型架构的电子系统实施的过程,以向同一电子系统的从设备分配操作地址;特别是,需要降低将操作地址错误地分配给同一电子系统的一个或更多个从设备的风险。

因此,本发明的根本问题是满足上述要求。

因此,本发明的主要目的是开发一种分配操作地址的方法,该方法通过克服上面参考现有技术描述的缺点来解决该问题。

在这个任务的背景下,本发明的目标是提出一种分配操作地址的方法,该方法可以由根据串行通信协议操作的具有“主/从”类型架构的电子系统自主地或自动地实现,它可以减少将操作地址可能错误地分配给两个或更多个从设备的次数。

该任务以及下面将更清楚地出现的这些和其他目标是通过分配操作地址的方法来实现的,该方法可以由根据串行通信协议操作的具有“主/从”类型架构的电子系统实施。本发明的目的还是一种被配置成或编程成实施根据本发明的分配操作地址的方法的主设备,以及一种根据串行通信协议操作的具有“主/从”类型架构的电子系统,所述电子系统被配置成或编程成实施根据本发明的分配操作地址的方法。

根据本发明的分配操作地址的方法的详细特征指示在对应的从属权利要求中。

通过对分配操作地址的方法的优选但非排他性实施方式的描述,本发明的另外的特征和优点将变得更加明显。

本发明的范围不扩展到使用已经定义的程序、方法或寻址协议的通信协议,诸如使用DHCP协议的TCP/IP的情况。

另外附于本发明,以示例的方式提供了附图,在附图中:

图1示出了根据本发明的具有“主/从”架构的电子系统的图;

图2借助图表示出了初始时刻、最终时刻、时间间隔、最大时间段、总时间段、时隙之间的关系;

图3示出了根据本发明的分配操作地址的方法的流程图。

根据本发明的方法可以通过根据串行通信协议操作的具有主/从架构的电子系统1来实现,该电子系统1包括主设备10和多个从设备20。具体地,如果串行通信协议是Modbus协议的版本,诸如Modbus RTU和Modbus ASCII,则具有主/从架构的电子系统1可以包括连接至最多247个从设备20

根据具有“主/从”架构的电子系统的传统固有的操作原理,主设备10可以对多个从设备20进行全面控制。也就是说,主设备10可以作为多个从设备20的中央协调和控制单元。

每个从设备20

每个从设备20

根据串行通信协议操作的具有主/从架构的电子系统1中的通信通常可以通过主设备10初始化。也就是说,第一通信可以从主设备10传输到从设备20i中的一个或更多个从设备。

由主设备10进行的通信可以包括向单个特定从设备20

与此相符,主设备10被配置成发送广播模式的操作通信;即,包含未编址的命令或指令的操作通信,也就是说,不包括接收方从设备的标识符,使得多个从设备20中的任意从设备都接收到该操作通信并将其视为已编址到该从设备自己的命令。

换句话说,包含在广播模式通信中的命令或指令可以被视为好像它无区别地编址到全部多个从设备20。此外,主设备10可以优选地被配置成或编程成发送已编址模式的操作通信;即,包含专门编址到全部多个从设备20中的一个从设备20

为了使操作通信能够被多个从设备20中的每个从设备20

操作地址可以是操作通信的字段之一,允许相同的通信被唯一地编址到特定的从设备20

为了被多个从设备20中的所有从设备20

换句话说,包括这种一般地址或通用地址的操作通信被接收到该操作通信的每个从设备20

优选地,在Modbus协议的串行版本中,该一般地址或通用地址可以默认设置为“0”。

另一方面,为了被多个从设备20中的仅一个特定从设备20

多个从设备20中的每个从设备20

另一方面,在已编址状态下,20

通常,在安装或设置具有“主/从”型架构的电子系统1时,多个从设备20中的一个或更多个从设备20

无论处于已编址状态或未编址状态,多个从设备20中的每个从设备20

优选地,如果多个从设备20中的每个从设备20

根据本发明的方法是由主设备20根据串行通信协议向多个从设备中的至少一个从设备20

该方法至少包括以下步骤:步骤A、步骤B、步骤C和步骤D,具体如下。

在步骤A中,主设备10发送广播模式的第一操作通信;所述第一操作通信包含用于所有多个从设备20的命令,以在传输时刻I

该传输时刻I

该传输时刻I

例如,假设时间间隔T为20ms并且20

因此,在步骤A期间,主设备10在最大时间段T

多个从设备20中的所有从设备20

具体地,在步骤B中,如果多个从设备20中的已经接收到第一操作通信的每个从设备20

具体地,时间间隔T的持续时间基本上等于标识通信的持续时间,使得如果从设备20

也就是说,时间间隔T几乎与传输从设备20

也就是说,有利地,如果至少第一从设备20

在第一种情况下,第一初始时刻I

也就是说,主设备10几乎同时接收到第一从设备20

然而,在第二种情况下,第一初始时刻I

在该第二种情况下,主设备10接收到这些从设备20a和20b的非重叠的标识通信。也就是说,第一从设备20

有利地,防止了发送部分重叠的标识通信。也就是说,防止了两个从设备20

由此可见,多个从设备20对唯一标识符U_ID的传输可以在总时间段T

此外,由于主设备的接收几乎是瞬时的,所以总时间段T

例如,如果T

在步骤C中,主设备10针对所述主设备10接收到的且没有形成损坏响应的每个标识通信,来以广播模式传输第二操作通信。换句话说,针对与至少一个其他标识通信区别地或分开地接收到的每个标识通信,主设备10向多个从设备20发送第二操作通信。

具体地,每个第二操作通信包括:对每个标识通信的响应,该响应包含与该标识通信相同的唯一标识符U_ID;以及另外的要与多个从设备20中具有该唯一标识符U_ID的从设备20

在步骤D中,将操作地址分配给多个从设备20中的其标识通信不是损坏响应的一部分的从设备20

最后,根据该方法,如果主设备10在步骤C中已经接收到至少一个标识通信,该至少一个标识通信与至少一个另外的标识通信重叠,则重复步骤A至D。换句话说,如果主设备10在步骤C中已经接收到与至少一个另外的标识通信重叠或不重叠的至少一个这样的标识通信,也就是说,即使如果它只接收到一个或更多个损坏响应,则执行步骤A至D的新迭代。为此,当在步骤C期间主设备10不再接收到任何响应时,该方法不重复步骤A至D,该事实被假定为对应于多个从设备20中的所有从设备20

优选地,串行通信协议可以是Modbus协议的串行版本。例如,这个串口通信协议可以是Modbus RTU版本或者Modbus ASCII串口版本。

优选地,步骤C只能在整个时间段Tc结束时才开始。有利地,以这种方式,主设备10等待必要的长时间以接收来自多个从设备20中的处于未编址状态的从设备20i的任何响应。

根据本发明的这个可能的方面,初始时刻I

具体地,总时间段T

例如,如果T

此外,根据该相同的可能方面,该最大值R可以大于或等于多个从设备20中的从设备20

因此,有利的是,可以减少在多个从设备中的每个从设备20

然而,随着时隙数目以及因此总时间段T

因此,通常,根据本发明,最大时间段T

具体地,较大值的最大时间跨度T

为了在时隙数目(其如上所述对应于可以分配给随机数r的最大值R)和至少出现一个正确答案(即主设备10不是仅接收到损坏响应)的概率之间定义可能的折衷,可以使用称为“生日悖论(birthday paradox)”(或“生日问题”)的统计公式。

根据“生日悖论”的统计公式,从主设备10接收到至少一个正确答案的概率等于:

其中,以本身已知的方式:

R为可以分配给随机数r的最大值并且等于时隙数目;

S为上述方法的步骤A之前处于未编址状态的从设备的数目。

应用这个公式,例如如果在步骤A之前处于未编址状态的从设备的数目S为5,并且可以分配给随机数的最大数目为5(因此有5个时隙),则接收到损坏响应的概率等于:

P

可以分配给随机数的最大值(即时隙的数目)R可以被选择成使得发生损坏响应的概率小于50%,或小于30%,或小于20%,这取决于实施本发明的偶然要求。

根据本发明的一个可能的方面,初始时刻I

根据本发明的一个可能的方面,在步骤D中,多个从设备中的已经获取包含在第二操作通信中的唯一地址U_AD作为其操作地址的每个从设备20

根据本发明的一个可能的方面,时间间隔T的持续时间可以等于标识通信的持续时间加上错误间隔的预固定持续时间,其中该错误间隔的预固定持续时间小于标识通信的持续时间。例如,该预定持续时间可以是5ms。甚至更优选地,在Modbus协议的串行版本的情况下,间隔T的持续时间还可以包括“帧间延迟Modbus”,即,一次通信与下一次通信之间的静默时间。甚至更优选地,该“帧间延迟Modbus”的持续时间至少等于1750μs或3.5个字符的通信所需的时间。以这种方式,降低了第一标识通信在第一时隙内没有被完整地传输并且在第一标识通信之后的第二标识通信可能与第一标识通信重叠的概率。

依据根据本发明的方法的一个可能的方面,在步骤C期间,主设备10可以根据到达的顺序将包含在没有形成损坏响应的每个标识通信中的唯一标识符U_ID存储在列表中。换句话说,主设备10可以编制如下列表,该列表按照接收到的标识通信到达的顺序列出接收到的标识通信中包含的唯一标识符U_ID。然后可以按到达顺序列出没有形成损坏响应的标识通信中包含的序列号U_ID。列表中引入的第一唯一标识符U_ID可以与由主设备10正确接收到的第一标识通信中包含的唯一标识符对应,即不与另一标识通信重叠,即形成损坏响应,列表中引入的第二唯一标识符U_ID可以与由主设备10正确接收到的第二标识通信中包含的唯一标识符对应,等等。

因此,主设备10可以逐步将唯一地址U_AD匹配到列表中包含的每个唯一标识符。也就是说,主设备10可以逐渐地,也就是按照列表的顺序,将唯一地址U_AD与每个唯一标识符关联。因此,第一唯一地址U_AD可以耦合到列表中的第一唯一标识符U_ID,第二唯一地址U_AD可以耦合到列表中的第二唯一标识符U_ID,以此类推。

具体地,在Modbus协议的串行版本的情况下,唯一地址U_AD可以是1至247之间的自然数的集合中的尚未与从设备20

然后,主设备10以有序的方式逐渐使用可以分配的操作地址。

本发明还包括被配置成和/或编程成执行根据本发明的方法的步骤A和步骤C的主设备10。

最后,本发明包括根据串行通信协议操作的具有“主/从”类型架构的电子系统1,该电子系统1包括:至少一个主设备10,其被配置成和/或编程成执行根据本发明的方法的步骤A和步骤C;以及多个从设备20,其连接至主设备10,以根据串行通信协议进行相互通信。

根据本发明的方法特别适用于制冷装置的根据串行通信协议操作的具有“主/从”类型架构的电子系统1。具体地,在此类应用中,主设备10可以是控制设备或区域监管器;而多个从设备20可以包括:压缩机(即其带有逆变器的控制器)、配备有温度或压力检测探头的设备、风扇、I/O扩展、以及其他控件。

技术分类

06120115928089