用于识别在通信总线上行进的数据分组的通信协议的方法与流程

文档序号:15130879发布日期:2018-08-10 05:33阅读:169来源:国知局

本发明涉及用于识别在通信总线上行进的数据分组的通信协议的方法。

根据本发明的方法尤其适合于在光伏设施(photovoltaicplant)中实现。

但是,根据本发明的方法可以在任何设施中(例如在电动车辆充电设施中或在配电设施中)实现,其中被配置为作为从设备操作的多个现场设备是通过通信总线与被配置为作为主设备操作的远程计算机化设备进行通信的。



背景技术:

如已知的,许多光伏设施都具有用于远程监视或管理其性能的远程通信能力。

这种类型的光伏设施通常包括通过专用通信总线与远程设备通信的多个现场设备。

所述现场设备可以包括例如光伏逆变器板载的电子控制器和配备有信号处理资源(例如,微处理器)以执行其功能的其它电子设备(诸如,传感器、保护设备、仪表、致动器、气象台等)。

所述远程设备可以包括例如数据记录器、网关、远程控制器、计算机服务器等。

如已知的,许多现有的光伏设施采用专有通信协议来实现上述远程通信能力。所述专有通信协议的示例由auroratm通信协议来表示。

另一方面,在市场上,对采用开放式通信协议来实现上述远程通信能力的兴趣越来越强烈。所述开放式通信协议的示例由modbustm通信协议来表示。

通常,所述专有和开放式通信协议的特征在于要在通信总线上进行交换的数据分组的不同结构和时间同步。

作为示例,非常重要的区别技术特征可以在于专有通信协议用于具有固定长度的数据分组,而开放式通信协议用于具有可变长度的数据分组。

作为上述的结果,当(例如,为了改造目的)包括采用专有通信协议的现场设备的现有光伏设施配备有通常采用开放式通信协议的新现场设备或与通常采用开放式通信协议的远程设备链接时,可能发生协议冲突。

在这些情况下,经常需要建立会话来适当地配置光伏设施的现场设备,以便确保其正确操作。

由于光伏设施可能包括大量的现场设备(例如,以数百或数千的数量级)要进行配置,因此这种建立会话可能相当耗时。此外,这些建立会话经常需要在由操作员进行配置的现场设备的用户界面上的手动干预。

由于所述建立会话的内在复杂性,因此可能频繁地发生配置现场设备时的差错。不幸的是,这样的配置差错通常很难检查出和防止,因为它们通常只在现场设备开始操作时才出现。因此,经常需要特定的维护干预来纠正所述配置差错,并且还增加了光伏设施的操作成本。

如从以上可以容易理解的,在市场上,相当需要允许解决或减轻以上证实的技术问题的解决方案。



技术实现要素:

为了响应这种需求,本发明提供了根据以下权利要求1和相关从属权利要求的用于识别通信协议的方法。

在另一个方面,本发明涉及根据以下权利要求12的计算机程序。

在另一个方面,本发明涉及根据以下权利要求13和相关从属权利要求的用于设施的现场设备。

在还有的另一个方面,本发明涉及根据以下权利要求15的设施。

在一般定义中,根据本发明的方法用于处理在通信总线上行进的数据分组,该数据分组根据第一通信协议或根据第二通信协议被传送并且至少包括有效载荷部分和crc部分。

根据本发明的方法至少包括用于处理在所述通信总线上行进的数据分组的crc检查过程。

所述crc检查过程包括:

-通过根据与所述第一通信协议相关联的第一crc生成引擎,处理数据分组的有效载荷部分来计算第一校验和串;

-通过根据与所述第二通信协议相关联的第二crc生成引擎,处理所述数据分组的有效载荷部分来计算第二校验和串;

-将所述第一和第二校验和串与所述数据分组的crc部分进行比较。

优选地,所述第一通信协议是auroratm通信协议或相关的传统协议。

优选地,所述第二通信协议是modbustm通信协议或相关的传统协议。

附图说明

本发明还有的特性和优点将从对附图中纯粹作为示例而非限制示出的优选的但非排他的实施例的描述中更清楚地显现,附图中:

图1示意性地图示了根据本发明的包括一个或多个现场设备的设施;

图2-3示意性地图示了根据本发明的方法。

具体实施方式

参考所提及的附图,本发明涉及用于识别在通信总线20上行进的数据分组的通信协议的方法1。

通信总线20是适于将主设备101与一个或多个从设备102链接的串行通信总线(图1)。

在通信总线20上行进的数据分组可以由主设备101(tx数据分组)或从设备102(rx数据分组)传送。

在通信总线20上行进的数据分组可以由主设备101或从设备102根据第一主-从通信协议pr1或根据第二主-从通信协议pr2来传送。

优选地,第一通信协议pr1是auroratm通信协议或相关的传统协议。

优选地,第二通信协议pr2是modbustm通信协议或相关的传统协议。

通常,在通信总线20上(根据通信协议pr1、pr2中的一个)行进的数据分组包括一个或多个crc(循环冗余校验)字节。所述数据分组因此包括有效载荷部分s1和crc部分s2(图2)。

作为示例,根据auroratm通信协议的数据分组包括具有固定数量的字节(例如,rx数据分组中的6个字节和tx数据分组中的8个字节)的有效载荷部分和包括所述数据分组的最后两个字节的crc部分。

作为另一个示例,根据modbustm通信协议的数据分组包括具有可变数量的字节(从0到252)的有效载荷部分和包括所述数据分组的最后两个字节的crc部分。

根据本发明,根据第一通信协议pr1提供的在通信总线20上行进的数据分组具有包括根据通信协议pr1的特定特征的第一结构。

所述特定特征中的一个特征在于,当根据通信协议pr1提供的数据分组由主设备101或由从设备10传送时,它们具有固定的长度。

因此,当根据第一通信协议pr1传送时,tx数据分组和rx数据分组分别具有固定tx长度值txl和固定rx长度值rxl,所述txl和rxl是第一通信协议pr1的特性。

优选地,根据通信协议pr1,tx数据分组的固定tx长度值txl和rx数据分组的固定rx长度值rxl可以相等或不同。

在图2中,示出了根据auroratm通信协议传送的数据分组的示例。由主设备101传送的tx数据分组具有固定的tx长度值txl=10(字节),而由从设备102传送的rx数据分组具有固定的rx长度值rxl=8(字节)。

所述特定特征中的另一个特征在于,根据通信协议pr1提供的tx数据分组至少包括具有数值b的预定义字节(例如,第二字节b1,通常被称为“功能字节”),该数值b包括在通信协议pr1的预定义的第一组值t1特性中。

作为示例,由主设备101根据auroratm通信协议传送的tx数据分组具有数值等于或高于50(t1={50...255})的第二字节b1。

所述特定特征中的另一个特征在于,当根据通信协议pr1提供的数据分组(tx或rx)由主设备101或由从设备102传送时,它们被分隔开可变时间延迟。

因此,具有可变时间延迟值td的时间间隔将由主设备101或由从设备102根据第一通信协议pr1传送的后续数据分组分隔开。

根据本发明,根据第二通信协议pr2提供的在通信总线20上行进的数据分组具有与通信协议pr1所预见的结构不同的第二结构,并且包括根据通信协议pr2的特定特征。

所述特定特征中的一个特征在于,当根据通信协议pr2提供的数据分组由主设备101或由从设备102传送时,它们具有可变的长度。

因此,当tx数据分组或rx数据分组根据第二通信协议pr2传送时,它们具有可以每次都变化的tx长度值txl和rx长度值rxl。

在图2中,示出了根据modbustm通信协议传送的数据分组的示例。由主设备101传送的tx数据分组和rx数据分组(具体地,所述数据分组的有效载荷部分s1)具有可变的长度l,其通常高于4字节。

所述特定特征中的另一个特征在于,根据通信协议pr2提供的数据分组(tx或rx)至少包括具有数值b的预定义字节(例如,第二字节b1),该数值b包括在通信协议pr2的预定义的第二组值t2特性中并且与通信协议pr1的上述的预定义的第一组值t1特性完全不同。

作为示例,由主设备101根据modbustm通信协议传送的数据分组(tx或rx)具有数值低于50(t2={0...49})的第二字节b1。

优选地,通信协议pr1、pr2的上述的第一和第二组值t1、t2特性没有共同的值(换句话说,所述各组值之间的交集为空)。

所述特定特征中的另一个特征在于,当根据通信协议pr2提供的数据分组(tx或rx)由主设备101或由从设备102传送时,它们被分隔开最小的时间延迟。

因此,当后续数据分组由主设备101或由从设备102根据第二通信协议pr2传送时,它们被分隔开大于或等于特性最小时间延迟值tdmin的时间间隔。

根据本发明的方法1特别适合于由从设备102实现。

实际上,方法1允许从设备102通过适当地处理在通信总线2上行进的最多几个数据分组来识别在通信总线20上行进的数据分组是根据第一通信协议pr1还是根据第二通信协议pr2(由主设备101或由其它从设备102)以极低的差错概率(通常低于0.1%)传送。

以这种方式,从设备102,例如刚刚安装并连接到通信总线20的从设备,可以立即识别在通信总线20中使用的通信协议,并且动态地选择更合适的通信协议来与其它设备(具体地,与主设备101)通信。

作为示例,从设备102可以识别在通信总线20中使用的通信协议,并且根据在所述通信总线20中使用的通信协议,从通信协议auroratm切换到通信协议modbustm进行操作,或者反之亦然。

另一方面,连接到通信总线20的从设备102可以立即识别主设备101是否已经改变了用于在通信信道20上通信的通信协议并相应地动态改变其通信协议。

作为示例,从设备102可以识别主设备101是否使用了新的通信协议并且根据所述新的通信协议从通信协议auroratm切换到通信协议modbustm进行操作,或者反之亦然。

现在详细描述根据本发明的方法1。

方法1的重要特性在于它至少包括用于处理在通信总线20上行进的数据分组的crc检查过程。

所述crc检查过程包括以下步骤:

-通过根据与通信协议pr1相关联的第一crc生成引擎,处理数据分组的有效载荷部分s1来计算第一校验和串cks1;

-通过根据与通信协议pr2相关联的第二crc生成引擎,处理所述数据分组的有效载荷部分s1来计算第二校验和串cks2;

-将第一和第二校验和串cks1、cks2与所述数据分组的crc部分s2进行比较。

上述crc检查过程用于根据与第一和第二通信协议pr1和pr2相关联的不同crc算法处理数据分组的有效载荷部分s1,并用于将如此获得的结果与所述数据分组的crc部分s2的实际内容进行比较。

第一和第二crc生成引擎可以方便地分别包括第一和第二通信协议pr1、pr2的crc计算算法特性。

通常,这些算法基于所谓的循环冗余校验多项式生成器,该生成器以减小其中错误消息被认为有效的错误的概率的方式提供消息中的不同的任何位的放大差错。

作为示例,如果通信协议pr1是auroratm通信协议,则第一crc生成引擎可以包括基于生成器多项式x16+x12+x5+1的crc-ccitt-x25算法。

作为另一个示例,如果通信协议pr2是modbustm通信协议,则第二crc生成引擎可以包括基于生成器多项式x16+x15+x2+1的crc-16算法。

如果所述数据分组的crc部分s2等于计算出的校验和串cks1、cks2的仅仅一个,则上述crc检查过程允许识别根据其(由主设备101或由从设备102)传送数据分组的通信协议。

如果所述数据分组的crc部分s2等于计算出的校验和串cks1并且与计算出的校验和串cks2不同,则所述数据分组的通信协议是通信协议pr1。

如果所述数据分组的crc部分s2等于计算出的校验和串cks2并且与计算出的校验和串cks1不同,则所述数据分组的通信协议是通信协议pr2。

方便地,方法1用于将上述crc检查过程与一个或多个另外的校验过程进行组合以处理第一数据分组m1,并且如果需要,处理在通信总线20上行进的后续的第二数据分组m2。

原则上,数据分组m1、m2可以是tx数据分组(即,由主设备101传送的)或rx数据分组(即由从设备102传送的),并且它可能已经根据协议pr1或根据协议pr2被传送。

根据本发明的实施例,方法1包括接收在通信总线20上行进的第一数据分组m1的步骤11。

根据本发明的所述实施例,方法1然后包括以下步骤中的至少一个:

-检查接收到的数据分组m1的结构的步骤12;

-执行第一crc检查过程pcrc1以处理接收到的数据分组m1的步骤13。

通常,处理接收到的数据分组m1的上述步骤12-13可以根据需要进行加扰,以适合与本发明的方法的特定实现相关的技术要求。

但是,处理接收到的数据分组m1的上述步骤12-13优选地根据特定的逻辑顺序来执行,该逻辑顺序已经被证明提高了根据其传送数据分组m1的通信协议的识别处理的效率。

因此方法1优选地包括以下步骤(图3):

-检查接收到的数据分组m1的结构的步骤12;

-如果不能通过检查数据分组m1的结构来识别用于提供在通信信道20上行进的数据分组的通信协议,则执行第一crc检查过程pcrc1以处理接收到的数据分组m1的步骤13。

方便地,如果有可能通过检查数据分组m1的结构来识别用于提供在通信信道20上行进的数据分组的通信协议,则方法1在执行第一crc检查过程pcrc1以处理接收到的数据分组m1的步骤13之前终止。

优选地,检查接收到的数据分组m1的结构的上述步骤12包括第一长度检查过程pl1,其用于执行对数据分组m1的长度的检查。

优选地,长度检查过程pl1包括以下步骤:

-例如,通过对数据分组m1的字节进行计数来获取指示所述数据分组m1的长度的长度值l1;

-将数据分组m1的长度值l1与第一通信协议pr1的固定tx长度值txl和固定rx长度值rxl特性进行比较。

优选地,除了长度检查过程pl1之外或者替代长度检查过程pl1,检查接收到的数据分组m1的结构的上述步骤12包括第一字节检查过程pb1,其包括以下步骤:

-获取数据分组m1的至少一个预定义字节的至少一个数值;

-将获取的至少一个数值与分别是通信协议pr1、pr2的特性的第一和第二组值t1、t2进行比较。

通常,字节检查过程pb1可以用于检查数据分组m1的一个或多个预定义字节位置中的数值。

但是,优选地,字节检查过程pb1用于执行对包括在数据分组m1的第二字节b1中的数值的检查。

优选地,字节检查过程pb1包括以下步骤:

-获取包括在数据分组m1的第二字节b1中的数值b;

-将获取的数值b与第一通信协议pr1的第一组值t1特性和第二通信协议pr2的第二组值t2特性进行比较。

通常,处理接收到的数据分组m1的上述的长度检查过程pl1和字节检查过程pb1可以根据需要进行加扰,以适合与本发明的方法的特定实现相关的技术要求。

但是,上述检查过程pl1、pb1优选地根据特定的逻辑顺序来执行,该逻辑顺序已经被证明提高了根据其传送数据分组m1的通信协议的识别处理的效率。

因此,检查接收到的数据分组m1的结构的步骤12优选地包括:

-执行长度检查过程pl1;

-如果不能通过长度检查过程pl1来识别用于提供在通信信道20上行进的数据分组的通信协议,则执行字节检查过程pb1。

方便地,如果有可能通过长度检查过程pl2来识别用于提供在通信信道20上行进的数据分组的通信协议,则方法1在执行字节检查过程pb2之前终止。

如果长度值l1与固定长度值txl和rxl两者都不同,则长度检查过程pl1允许识别数据分组m1(由主设备101或由从设备102)根据通信协议pr2被传送,因为这种条件允许排除通信协议pr1。

作为示例,如果长度值l1与8个或10个字节不同,则数据分组m1不能根据auroratm通信协议传送,并且它当然是根据modbustm通信协议传送的数据分组。

相反,如果长度值l1等于固定长度值txl或等于固定长度值rxl,则长度检查过程pl1不允许识别数据分组m1的通信协议,因为这些替代条件不允许排除通信协议pr1、pr2中的一个。

实际上,具有长度l1=txl的数据分组m1可以是由主设备101根据通信协议pr1传送的tx数据分组或根据通信协议pr2传送的通用数据分组。

另一方面,具有长度l1=rxl的数据分组m1可以是由从设备102根据通信协议pr1传送的rx数据分组或根据通信协议pr2传送的通用数据分组。

作为示例,如果长度值l1等于8个或10个字节,则数据分组m1可以根据auroratm通信协议或根据modbustm通信协议同样地传送。

如果数据分组m1具有长度l1=txl,则字节检查过程pb1允许识别数据分组m1的通信协议。

实际上,在这种情况下,数据分组m1当然是由主设备101根据通信协议pr1传送的tx数据分组或根据通信协议pr2传送的tx或rx数据分组。

因此,如果获取的第二字节b1的数值b被包括在该组值t1中并且不包括在该组值t2中,则数据分组m1(具有长度l1=txl)是根据通信协议pr1传送的tx数据分组,而如果获取的第二字节b1的数值b被包括在该组值t2中并且不包括在该组值t1中,则它是根据通信协议pr2传送的tx或rx数据分组。

作为示例,具有长度值l1=10字节并且在第二字节b1中的数值b=55的数据分组m1是根据auroratm通信协议传送的tx数据分组。

作为另一个示例,具有长度值l1=10字节并且在第二字节b1中的数值b=45的数据分组m1是根据modbustm通信协议传送的tx或rx数据分组。

相反,如果数据分组m1具有长度l1=rxl,则字节检查过程pb1不允许识别数据分组m1的通信协议。

实际上,即使数据分组m1通过字节检查过程pb1进行处理,这种条件也不允许排除通信协议pr1、pr2中的一个。

鉴于以上所述,很明显,通常,如果数据分组m1具有长度l1=rxl,则检查数据分组m1的结构的步骤12不允许识别用于提供在通信信道20上行进的数据分组的通信协议。

在这种情况下,执行第一crc检查过程pcrc1以处理接收到的数据分组m1的步骤13需要被执行。否则,如上所述,方法1被方便地终止。

优选地,第一crc检查过程pcrc1用于根据与第一和第二通信协议pr1和pr2相关联的不同crc算法处理数据分组m1的有效载荷部分s1,并且用于将如此获得的结果与数据分组m1的crc部分s2的实际内容进行比较。

根据本发明,crc检查过程pcrc1包括以下步骤:

-通过根据与第一通信协议pr1相关联的第一crc生成引擎,处理第一数据分组m1的有效载荷部分s1来计算第一校验和串cks1;

-通过根据与第二主-从通信协议pr2相关联的第二crc生成引擎,处理第一数据分组m1的有效载荷部分s1来计算第二校验和串cks2;

-将第一和第二校验和串cks1、cks2与第一数据分组m1的crc部分s2进行比较。

如上所述,第一和第二crc生成引擎分别方便地包括第一和第二通信协议pr1、pr2的crc计算算法特性。

如果数据分组m1的crc部分s2等于计算出的校验和串cks1、cks2的仅仅一个,则crc检查过程pcrc1允许识别根据其(由主设备101或由从设备102)传送数据分组的通信协议。

如果数据分组m1的crc部分s2等于计算出的校验和串cks1并且与计算出的校验和串cks2不同,则数据分组m1的通信协议是通信协议pr1。

如果数据分组m1的crc部分s2等于计算出的校验和串cks2并且与计算出的校验和串cks1不同,则数据分组m1的通信协议是通信协议pr2。

通常,crc检查过程pcrc1允许以高的成功概率来识别数据分组m1的通信协议,典型地估计为大约99.97%。

如果有可能通过上述步骤12和13识别用于提供在通信信道20上行进的数据分组的通信协议,则方法1被方便地终止。

但是,由于在通信信道20上行进的大量数据分组,因此可能发生数据分组m1的crc部分s2的上述处理提供相同的校验和串csk1、csk2,从而使得不可能识别用于传送数据分组m1的通信协议。

优选地,如果不可能通过上述步骤12和13识别用于提供在通信信道20上行进的数据分组的通信协议,则方法1提供一些附加步骤14、15、16、17。

优选地,在这种情况下,方法1包括接收在通信总线20上行进的第二数据分组m2的步骤14。

原则上,数据分组m2也可以是tx数据分组(即,由主设备101传送)或rx数据分组(即,由从设备102传送),并且它可能已经根据协议pr1或根据协议pr2被传送。

优选地,方法1包括执行时间延迟检查过程ptd以处理数据分组m1、m2的步骤15。

时间延迟检查过程ptd用于分析数据分组m1、m2之间的时间关系,并且它至少包括对数据分组m1、m2之间的时间延迟的检查。

优选地,时间延迟检查过程ptd包括以下步骤:

-获取数据分组m1、m2之间的时间延迟值td;

-将获取的时间延迟值td与作为第二协议pr2的特性的最小时间延迟值tdmin进行比较。

如果时间延迟值td低于最小时间延迟值tdmin,则时间延迟检查过程ptd允许识别数据分组m1、m2(由主设备101或由从设备102)根据通信协议pr1传送,因为这种条件允许排除通信协议pr2。

作为示例,如果时间延迟值td<3,5个字符,则数据分组m1、m2不能根据modbustm通信协议传送,并且它们当然是根据auroratm通信协议传送的数据分组。

相反,如果时间延迟值td高于最小时间延迟值tdmin,则时间延迟检查过程ptd不允许识别数据分组m1、m2的通信协议,因为这种条件不允许排除通信协议pr1、pr2中的一个。

实际上,如果数据分组m1、m2被分隔开高于第二通信协议的最小时间延迟特性的时间延迟td,则它们可能已经根据第一通信协议pr1或pr2无差别地被传送。

作为示例,如果时间延迟值td>3,5个字符,则数据分组m1、m2可以根据auroratm通信协议或根据modbustm通信协议同样地被传送。

如果有可能通过上述时间延迟检查过程ptd识别用于提供在通信信道20上行进的数据分组的通信协议,则方法1被方便地终止。

如果不能通过上述时间延迟检查过程ptd识别用于提供在通信信道20上行进的数据分组的通信协议,则方法1用于根据与对于处理数据分组m1所描述的步骤类似的一系列步骤来处理第二数据分组m2。

优选地,方法1然后包括以下步骤中的至少一个:

-检查接收到的数据分组m2的结构的步骤16;

-执行第二crc检查过程pcrc2以处理接收到的数据分组m2的步骤17。

通常,处理接收到的数据分组m2的上述步骤16-17可以根据需要进行加扰,以适合与本发明的方法的特定实现相关的技术要求。

但是,处理接收到的数据分组m2的上述步骤16-17优选地根据特定的逻辑顺序来执行,该逻辑顺序已经被证明提高了根据其传送数据分组m1的通信协议的识别处理的效率。

因此方法1优选地包括以下步骤(图3):

-检查接收到的数据分组m1的结构的步骤16;

-如果不能通过检查数据分组m2的结构来识别用于提供在通信信道20上行进的数据分组的通信协议,则执行第二crc检查过程pcrc2以处理接收到的数据分组m2的步骤17。

方便地,如果有可能通过检查数据分组m2的结构来识别用于提供在通信信道20上行进的数据分组的通信协议,则方法1在执行第一crc检查过程pcrc2以处理接收到的数据分组m2的步骤17之前终止。

优选地,检查接收到的数据分组m2的结构的上述步骤16包括第二长度检查过程pl2,其用于执行对数据分组m2的长度的检查。

优选地,长度检查过程pl2包括以下步骤:

-例如,通过对数据分组m2的字节进行计数获取指示所述数据分组m2的长度的长度值l2;

-将数据分组m2的长度值l2与第一通信协议pr1的固定tx长度值txl和固定rx长度值rxl特性进行比较。

优选地,除了长度检查过程pl2之外或者替代长度检查过程pl2,检查接收到的数据分组m2的结构的上述步骤16包括第二字节检查过程pb2,其包括以下步骤:

-获取数据分组m2的至少一个预定义字节的至少一个数值;

-将获取的至少一个数值与分别作为通信协议pr1、pr2的特性的第一和第二组值t1、t2进行比较。

通常,字节检查过程pb2可以用于检查数据分组m2的一个或多个预定义字节位置中的数值。

但是,优选地,字节检查过程pb2用于执行对包括在数据分组m2的第二字节b1中的数值的检查。

优选地,字节检查过程pb2包括以下步骤:

-获取包括在数据分组m2的第二字节b1中的数值b;

-将获取的数值b与第一通信协议pr1的第一组值t1特性和第二通信协议pr2的第二组值t2特性进行比较。

通常,处理接收到的数据分组m2的上述的长度检查过程pl2和字节检查过程pb2可以根据需要进行加扰,以适合与本发明的方法的特定实现相关的技术要求。

但是,上述检查过程pl2、pb2优选地根据特定的逻辑顺序来执行,该逻辑顺序已经被证明提高了根据其传送数据分组m2的通信协议的识别处理的效率。

因此,检查接收到的数据分组m2的结构的步骤16优选地包括:

-执行长度检查过程pl2;

-如果不能通过长度检查过程pl2来识别用于提供在通信信道20上行进的数据分组的通信协议,则执行字节检查过程pb2。

方便地,如果有可能通过长度检查过程pl2来识别用于提供在通信信道20上行进的数据分组的通信协议,则方法1在执行字节检查过程pb2之前终止。

如果长度值l2与固定长度值txl和rxl两者都不同,则长度检查过程pl2允许识别数据分组m2(由主设备101或由从设备102)根据通信协议pr2被传送,因为这种条件允许排除通信协议pr1。

作为示例,如果长度值l2与8个或10个字节不同,则数据分组m1不能根据auroratm通信协议传送,并且它当然是根据modbustm通信协议传送的数据分组。

相反,如果长度值l2等于固定长度值txl或等于固定长度值rxl,则长度检查过程pl2不允许识别数据分组m2的通信协议,因为这些替代条件不允许排除通信协议pr1、pr2中的一个。

实际上,具有长度l2=txl的数据分组m2可以是由主设备101根据通信协议pr1传送的tx数据分组或根据通信协议pr2传送的通用数据分组。

另一方面,具有长度l2=rxl的数据分组m2可以是由从设备102根据通信协议pr1传送的rx数据分组或根据通信协议pr2传送的通用数据分组。

作为示例,如果长度值l1等于8个或10个字节,则数据分组m2可以根据auroratm通信协议或根据modbustm通信协议同样地被传送。

如果数据分组m1具有长度l2=txl,则字节检查过程pb1允许识别数据分组m2的通信协议。

实际上,在这种情况下,数据分组m2当然是由主设备101根据通信协议pr1传送的tx数据分组或根据通信协议pr2传送的tx或rx数据分组。

因此,如果获取的第二字节b1的数值b被包括在该组值t1中并且不包括在该组值t2中,则数据分组m2(具有长度l1=txl)是根据通信协议pr1传送的tx数据分组,而如果获取的第二字节b1的数值b被包括在该组值t2中并且不包括在该组值t1中,则它是根据通信协议pr2传送的tx或rx数据分组。

作为示例,具有长度值l1=10字节并且在第二字节b1中的数值b=55的数据分组m2是根据auroratm通信协议传送的tx数据分组。

作为另一个示例,具有长度值l1=10字节并且在第二字节b1中的数值b=45的数据分组m2是根据modbustm通信协议传送的tx或rx数据分组。

相反,如果数据分组m2具有长度l1=rxl,则字节检查过程pb2不允许识别数据分组m2的通信协议。实际上,即使数据分组m2通过字节检查过程pb1进行处理,这种条件也不允许排除通信协议pr1、pr2中的一个。

鉴于以上所述,很明显,通常,如果数据分组m1具有长度l1=rxl,则检查数据分组m2的结构的步骤16不允许识别用于提供在通信信道20上行进的数据分组的通信协议。

在这种情况下,执行第二crc检查过程pcrc2以处理接收到的数据分组m2的步骤17需要被执行。否则,如上所述,方法1被方便地终止。

优选地,第二crc检查过程pcrc2用于根据与第一和第二通信协议pr1和pr2相关联的不同crc算法处理数据分组m2的有效载荷部分s1,并且用于将如此获得的结果与数据分组m2的crc部分s2的实际内容进行比较。

根据本发明,crc检查过程pcrc2包括以下步骤:

-通过根据与第一通信协议pr1相关联的第一crc生成引擎,处理第一数据分组m2的有效载荷部分s1来计算第一校验和串cks1;

-通过根据与第二主-从通信协议pr2相关联的第二crc生成引擎,处理第一数据分组m2的有效载荷部分s1来计算第二校验和串cks2;

-与第一和第二校验和串cks1、cks2与第一数据分组m2的crc部分s2进行比较。

如上所述,第一和第二crc生成引擎分别方便地包括第一和第二通信协议pr1、pr2的crc计算算法特性。

如果数据分组m2的crc部分s2等于计算出的校验和串cks1、cks2的仅仅一个,则crc检查过程pcrc2允许识别根据其(由主设备101或由从设备102)传送数据分组的通信协议。

如果数据分组m2的crc部分s2等于计算出的校验和串cks1并且与计算出的校验和串cks2不同,则数据分组m2的通信协议是通信协议pr1。

如果数据分组m2的crc部分s2等于计算出的校验和串cks2并且与计算出的校验和串cks1不同,则数据分组m2的通信协议是通信协议pr2。

通常,crc检查过程pcrc2允许以高的成功概率,典型地估计为大约99,97%,来识别数据分组m2的通信协议。

但是,在其总体执行的这一点上,方法1允许以很高的成功概率来识别数据分组m1或m2的通信协议。

为此,方法1优选地在执行上述crc检查过程pcrc2之后终止。

但是,在需要的情况下,可以针对不一定在数据分组m1、m2之后被接收到的其它数据分组m3、m4、...等重复方法1。

方法1因此可以根据需要在随后的时刻或者在被给定时间间隔分隔开的时刻重复。

根据本发明的方法1特别地适合于由能够存储和执行软件指令以执行所述方法的信号处理资源102a(例如,包括微处理器)来实现。

在另一个方面,本发明因此涉及存储在或可存储在存储介质中的计算机程序,其包括执行根据本发明的方法1的软件指令。

优选地,用于实现根据本发明的方法1的信号处理资源102a被包括在与通信信道20可操作地相关联的一个或多个从设备102中。

根据本发明的方法1可以在具有通过通信信道与主设备通信的一个或多个从设备的通用工业设施中实现。

根据本发明的方法1尤其适合于在包括通过通信总线20可操作地耦合到远程计算机化设备101的一个或多个现场设备102的光伏设施100中实现。

方便地,一个或多个现场设备102被配置为作为从设备操作,而远程计算机化设备101被配置为作为主设备操作。

优选地,光伏设施100的现场设备102包括所述光伏设施的光伏逆变器板载的电子控制器。

但是,光伏设施100的现场设备102可以包括其它电子设备,诸如传感器、保护设备、仪表、致动器、气象台等。

远程计算机化设备101可以包括例如数据记录器、网关、远程控制器、计算机服务器等。

优选地,根据本发明,现场设备102被配置为执行方法1。

为了这个目的,现场设备102可以方便地包括能够存储和执行软件指令以执行根据本发明的方法1的信号处理资源102a(例如,包括微处理器)。

根据本发明的方法1还适合于在包括通过通信总线20可操作地耦合到远程计算机化设备101的一个或多个现场设备102的电动车辆(ev)充电器设施100中实现。

方便地,一个或多个现场设备102被配置为作为从设备操作,而远程计算机化设备101被配置为作为主设备操作。

优选地,ev充电器设施100的现场设备102包括所述ev充电器设施的ev充电站板载的电子控制器。

但是,ev充电器设施100的现场设备102可以包括其它电子设备,诸如传感器、保护设备等。

远程计算机化设备101可以包括例如监督控制器、计算机服务器等。

优选地,根据本发明,现场设备102被配置为执行方法1。

为了这个目的,现场设备102可以方便地包括能够存储和执行软件指令以执行根据本发明的方法1的信号处理资源102a(例如,包括微处理器)。

根据本发明的方法1在解决或减轻现有技术的上述缺陷方面非常有效。

根据本发明的方法1允许从设备102(例如,光伏设施或ev充电器设施的现场设备)自动识别在通信总线20中使用的通信协议并动态地选择更适当的通信协议来与其它设备(尤其是与主设备101)通信(例如,数据记录器从光伏设施收集数据或监督控制器从ev充电器设施收集数据)。

另一方面,由从设备102实现方法1允许主设备101执行适当的侦察过程,以便于识别由从设备在通信总线20中使用的协议。

例如,这种侦察过程可以包括以预定义的时间间隔将预定义消息的合适序列传输到从设备102可用的所有地址,以便确保由所述从设备(特别是由可能的新安装的从设备)使用的通信协议的自动调整。

根据本发明的方法1在改进与主设备通信的从设备的网络的管理方面是非常有效的,并且还降低了整体操作成本。

根据本发明的方法1允许根据需要自动地解决可能的协议通信冲突,而不需要执行耗时且昂贵的建立会话以正确地配置从设备102。

根据本发明的方法1尤其适用于由可以板载安装于从设备102上的计算机资源数字地实现。

因此,根据本发明的方法1是相对容易的且有成本效益的实际实现。

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