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

一种通信扩展装置及通信方法

文献发布时间:2024-04-18 20:01:23


一种通信扩展装置及通信方法

技术领域

本申请属于工业控制技术领域,尤其涉及一种通信扩展装置及通信方法。

背景技术

目前,工控自动化领域工业通信种类繁多,但每种通信协议之间差异较大,若为变频器的每种通信协议均标配开发一套软硬件方案,需产出多套方案,这种方式难实现,维护麻烦,成本较高。

发明内容

本申请实施例提供了一种通信扩展装置、通信方法、及计算机可读存储介质,可以解决运行多种通信协议程序带来的维护麻烦,成本较高的问题。

第一方面,本申请实施例提供了一种通信扩展装置,包括:主控模块、与所述主控模块电连接的非易失性存储模块和输入模块,所述主控模块设置有易失性存储模块,所述非易失性存储模块包括多个存储分区,每个所述存储分区存储有至少一种通信协议程序;

所述主控模块,用于接收来自所述输入模块的输入值,并从所述多个存储分区中确定所述输入值对应的所述第一目标存储分区;

所述主控模块,还用于从所述第一目标存储分区中读取至少一种第一目标通信协议程序,并拷贝各所述第一目标通讯协议程序至所述易失性存储模块中进行运行。

在一个实施例中,所述非易失性存储模块还设置有包含Bootloader程序的存储分区;

所述主控模块,用于从所述包含Bootloader程序的存储分区中,读取并运行所述Bootloader程序;基于所述Bootloader程序接收来自所述输入模块的输入值,从所述多个存储分区中确定所述输入值对应的所述第一目标存储分区;从所述第一目标存储分区中读取至少一个第一目标通信协议程序,并拷贝各所述第一目标通讯协议程序至所述易失性存储模块中进行运行。

在一个实施例中,所述装置还包括第一通信模块和第二通信模块,所述第一通信模块和所述第二通信模块均与所述主控模块电连接;

所述第一通信模块,用于与变频器通信;

所述第二通信模块,用于与主站通信;

所述主控模块,用于在各所述第一目标通信协议程序运行后,针对每个所述第一目标通信协议程序,基于所述第一目标通信协议程序,通过所述第一通信模块与所述变频器进行初始化握手和参数配置处理;

用于通过所述第二通信模块接收来自所述主站的至少一个通信数据后,针对每个所述通信数据,利用对应的所述第一目标通信协议程序对所述通信数据进行解析,获得应用层数据;

用于通过所述第一通信模块向所述变频器发送各所述应用层数据,以使所述变频器针对每个所述应用层数据,对所述应用层数据进行处理后,返回响应数据;

用于接收各所述响应数据后,针对各所述响应数据,利用对应的第一目标通信协议进行封装,获得数据包,并通过所述第二通信模块向所述主站发送各所述数据包。

在一个实施例中,所述主控模块,还用于通过所述第一通信模块接收来自所述变频器的键值,所述键值用于指示所选取的第二目标存储分区;

还用于从所述多个存储分区中确定所述键值对应的所述第二目标存储分区;从所述第二目标存储分区中读取至少一个第二目标通信协议程序,并拷贝各所述第二目标通讯协议程序至所述易失性存储模块中进行运行。

在一个实施例中,所述第一通信模块包括SPI接口。

在一个实施例中,所述第二通信模块包括至少两个网口单元,所述网口单元内置交换机功能;每个所述网口单元包括网络接口和PHY,所述网络接口通过所述PHY与所述主控模块电连接。

第二方面,本申请实施例提供了一种通信方法,应用于通信扩展装置的主控模块,所述通信扩展装置包括主控模块、与所述主控模块电连接的非易失性存储模块和输入模块,所述主控模块设置有易失性存储模块,所述非易失性存储模块包括多个存储分区,每个所述存储分区存储有至少一种通信协议程序;

所述方法,包括:

接收来自所述输入模块的输入值;

从所述多个存储分区中确定所述输入值对应的所述第一目标存储分区;

从所述第一目标存储分区中读取至少一个第一目标通信协议程序,并拷贝各所述第一目标通讯协议程序至所述易失性存储模块中进行运行。

在一个实施例中,所述通信扩展装置还包括第一通信模块和第二通信模块,所述第一通信模块和所述第二通信模块均与所述主控模块电连接;

所述方法,还包括:

在各所述第一目标通信协议程序运行后,针对每个所述第一目标通信协议程序,基于所述第一目标通信协议程序,通过所述第一通信模块与变频器进行初始化握手和参数配置处理;

通过所述第二通信模块接收来自所述主站的至少一个通信数据后,针对每个所述通信数据,利用对应的所述第一目标通信协议程序对所述通信数据进行解析,获得应用层数据;

通过所述第一通信模块向所述变频器发送各所述应用层数据,以使所述变频器针对每个所述应用层数据,对所述应用层数据进行处理后,返回响应数据;

接收各所述响应数据后,针对各所述响应数据,利用对应的第一目标通信协议进行封装,获得数据包,并通过所述第二通信模块向所述主站发送各所述数据包。

在一个实施例中,所述方法还包括:

通过所述第一通信模块接收来自所述变频器的键值,所述键值用于指示所选取的第二目标存储分区;

从所述多个存储分区中确定所述键值对应的所述第二目标存储分区;

从所述第二目标存储分区中读取至少一个第二目标通信协议程序,并拷贝各所述第二目标通讯协议程序至所述易失性存储模块中进行运行。

第三方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面中任一项所述的方法。

本申请实施例与现有技术相比存在的有益效果是:

本申请实施例的通信扩展装置包括:主控模块、与主控模块电连接的非易失性存储模块和输入模块,主控模块设置有易失性存储模块,非易失性存储模块包括多个存储分区,每个存储分区存储有至少一种通信协议程序;主控模块用于接收来自输入模块的输入值;从多个存储分区中确定输入值对应的第一目标存储分区;从第一目标存储分区中读取至少一种第一目标通信协议程序,并拷贝各第一目标通讯协议程序至易失性存储模块中进行运行。通过每个存储分区存储至少一种通信协议程序,使得一个硬件能够存储至少两种通信协议程序,降低硬件成本,以及通过不同的输入值实现根据实际需求选择所需的通信协议程序,并通过主控模块从第一目标存储分区中拷贝各第一目标通讯协议程序至易失性存储模块中进行运行,实现一个硬件运行不同通信协议程序,无需为每种通信协议程序标配开发一套软硬件方案,降低开发和维护难度;以及通过输入值选择通信协议程序,能够随时切换通信协议程序。

可以理解的是,上述第二方面至第三方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请一实施例提供的装置的第一种示意图;

图2是本申请一实施例提供的拨码开关的结构示意图;

图3是本申请一实施例提供非易失性存储模块的结构示意图;

图4是本申请一实施例提供的选取第一目标存储分区的原理示意图;

图5是本申请一实施例提供的装置的第二种示意图;

图6是本申请一实施例提供的通信方法的流程示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。

应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。

另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。

图1是本申请一实施例提供的装置的第一种示意图。如图1所示,所述装置,包括:主控模块10、与主控模块10电连接的非易失性存储模块20和输入模块30,主控模块10设置有易失性存储模块11,非易失性存储模块20包括多个存储分区,每个存储分区存储有至少一种通信协议程序。

其中,非易失性存储模块为flash存储器。易失性存储模块为RAM(random accessmemory,随机存取存储器)。

在一种可能的实现方式中,主控模块内设置有芯片。芯片为高主频芯片。

当每个存储分区均存储一个通信协议程序时,每个程序各自保持独立。通信协议程序为Profinet、EtherCAT、Powerlink、Ethernet/IP、BACnet IP、OPC UA、Modbus TCP、Ethernet等。

当一个存储分区存储多个通信协议程序,这些通信协议程序为融合后的通信协议程序。通过一个存储分区存储多个通信协议程序,为与多个外部设备同时通信提供基础。

主控模块,用于接收来自输入模块的输入值,并从多个存储分区中确定输入值对应的第一目标存储分区。

其中,输入值用于指示所选取的第一目标存储分区。

在应用中,用户通过输入模块输入一数值,即输入值,该输入值表征第一目标存储分区的标识,即输入值用于指示所选取的第一目标存储分区。

在一种可能的实现方式中,输入模块为拨码开关。图2是本申请一实施例提供的拨码开关的结构示意图。如图2所示,拨码开关提供多个值,包括000(0)、001(1)、010(2)、011(3)、100(4)、101(5)、110(6)、111(7)。一个值对应一个存储分区。图3是本申请一实施例提供非易失性存储模块的结构示意图。如图3所示,非易失性存储模块设置多个存储分区,这些存储分区的标识为0、1、2、3、4、5、6、7,同时为每个存储分区的通信协议程序分配存储地址和运行地址。结合图2和图3可知,000指示0存储分区,001指示1存储分区、010指示2存储分区、011指示3存储分区、100指示4存储分区、101指示5存储分区、110指示6存储分区、111指示7存储分区。

用户在拨码开关中拨到所需的通信协议程序所在的存储分区的标识对应的值,以指示主控模块从多个存储分区中确定输入值对应的第一目标存储分区。

主控模块,还用于从第一目标存储分区中读取至少一种第一目标通信协议程序,并拷贝各第一目标通讯协议程序至易失性存储模块中进行运行。

在一种可能的实现方式中,可预先设置输入值与存储分区之间的对应关系,主控模块获得输入值时,基于该对应关系,根据输入值确定对应的第一目标存储分区。从第一目标存储分区中读取至少一种第一目标通信协议程序,并拷贝各第一目标通讯协议程序至易失性存储模块中,跳转到第一目标通信协议程序的运行地址入口运行程序。

可以理解的,一个通信扩展装置可运行不同的通信协议程序,比一种通信协议程序设置一个硬件装置方式的开发、维护成本低。同时在现场使用更加灵活。以及通过非易失性存储模块分区存储通信协议程序,便于代码管理。

在一种可能的实现方式中,非易失性存储模块还设置有包含Bootloader程序的存储分区;

主控模块,用于从包含Bootloader程序的存储分区中,读取并运行Bootloader程序(嵌入式系统中的代码);基于Bootloader程序接收来自输入模块的输入值,从多个存储分区中确定输入值对应的第一目标存储分区;从第一目标存储分区中读取至少一个第一目标通信协议程序,并拷贝各第一目标通讯协议程序至易失性存储模块中进行运行。

具体的,主控模块可从所述包含Bootloader程序的存储分区中,读取Bootloader程序,拷贝Bootloader程序至至易失性存储模块中进行运行。

图4是本申请一实施例提供的选取第一目标存储分区的原理示意图。如图4所示,拨码开关拨到001,Bootloader程序根据输入值001从多个存储分区中确定第一目标存储分区(1),读取到第一目标通讯协议程序EtherCAT。

本实施例的通信扩展装置包括:主控模块、与主控模块电连接的非易失性存储模块和输入模块,主控模块设置有易失性存储模块,非易失性存储模块包括多个存储分区,每个存储分区存储有至少一种通信协议程序;主控模块用于接收来自输入模块的输入值;从多个存储分区中确定输入值对应的第一目标存储分区;从第一目标存储分区中读取至少一种第一目标通信协议程序,并拷贝各第一目标通讯协议程序至易失性存储模块中进行运行。通过每个存储分区存储至少一种通信协议程序,使得一个硬件能够存储至少两种通信协议程序,降低硬件成本,以及通过不同的输入值实现根据实际需求选择所需的通信协议程序,并通过主控模块从第一目标存储分区中拷贝各第一目标通讯协议程序至易失性存储模块中进行运行,实现一个硬件运行不同通信协议程序,无需为每种通信协议程序标配开发一套软硬件方案,降低开发和维护难度;以及通过输入值选择通信协议程序,能够随时切换通信协议程序。

图5是本申请一实施例提供的装置的第二种示意图。如图5所示,当通信扩展装置应用在实际场景中时,所述装置还包括第一通信模块40和第二通信模块50,第一通信模块40和第二通信模块50均与主控模块电连接。其中,第一通信模块40包括SPI接口(SerialPeripheral Interface,串行外设接口),SPI接口如变频器扩展卡接口。装置与变频器之间通过SPI进行通信。第二通信模块包括至少两个网口单元51,网口单元内置交换机功能,每个网口单元51包括网络接口和PHY(Port Physical Layer,端口物理层),网络接口通过PHY与主控模块电连接。PHY通过MII(Media Independent Interface,媒体独立接口)与主控模块电连接。网口单元具有交换机功能,能够便于现场灵活组网。

第一通信模块,用于与变频器通信。

第二通信模块,用于与主站通信。

其中,主站可为PLC(Programmable Logic Controller,可编程逻辑控制器)或上位机等。

主控模块,用于在各第一目标通信协议程序运行后,针对每个第一目标通信协议程序,基于第一目标通信协议程序,通过第一通信模块与变频器进行初始化握手和参数配置处理。

在应用中,在通信协议程序运行后,首先通过第一通信模块与变频器初始化握手和参数配置,也为后续的数据交互提供基础。

用于通过第二通信模块接收来自各主站的至少一个通信数据后,针对每个通信数据,利用对应的第一目标通信协议程序对通信数据进行解析,获得应用层数据。

示例的,当第一目标存储分区存储有Profinet。主控模块通过第二通信模块接收来自上位机的通信数据,然后利用对应的第一目标通信协议程序Profinet对该通信数据进行解析,获得应用层数据。

当第一目标存储分区存储有Profinet+Ethernet。主控模块同时运行Profinet,Ethernet。接收到PLC的通信数据后,利用对应的第一目标通信协议程序Profinet进行解析,获得对应的应用层数据,以实现PLC控制变频器。接收到上位机的通信数据后,利用对应的第一目标通信协议程序Ethernet进行解析,获得对应的应用层数据,以实现上位机调试和监控变频器。因此,可同时实现PLC控制变频器、以及上位机调试和监控变频器。

主控模块,用于通过第一通信模块向变频器发送各应用层数据,以使变频器针对每个应用层数据,对应用层数据进行处理后,返回响应数据。

在应用中,主控模块通过第一通信模块向变频器发送各应用层数据。变频器接收到应用层数据后,对每个应用层数据进行处理,获得响应数据。变频器通过第一通信模块向主控模块发送响应数据。

主控模块,用于接收各响应数据后,针对各响应数据,利用对应的第一目标通信协议进行封装,获得数据包,并通过第二通信模块向主站发送各数据包。

示例的,当第一目标存储分区存储有Profinet。接收到属Profinet的响应数据,利用对应的第一目标通信协议程序Profinet进行封装,获得数据包,通过第二通信模块向PLC发送该数据包。

当第一目标存储分区存储有Profinet+Ethernet。接收到属Profinet的响应数据,利用对应的第一目标通信协议程序Profinet进行封装,获得数据包,通过第二通信模块向PLC发送该数据包。接收到属Ethernet的响应数据,利用对应的第一目标通信协议程序Ethernet进行封装,获得数据包,通过第二通信模块向上位机发送该数据包。

在一个实施例中,若主控模块的易失性存储模块的容量不够,主控模块外接外部存储器。当主控模块设置有芯片,可通过芯片的并口扩展片外SDRAM(Synchronous DynamicRandom Access Memory,同步动态随机存储器)。

在一个实施例中,主控模块,还用于通过第一通信模块接收来自变频器的键值,键值用于指示所选取的第二目标存储分区。

主控模块,还用于从多个存储分区中确定键值对应的第二目标存储分区;从第二目标存储分区中读取至少一个第二目标通信协议程序,并拷贝各第二目标通讯协议程序至易失性存储模块中进行运行。

在应用中,当装置与变频器通信,在实际应用场景中还可通过变频器的键盘选择所需的目标存储分区。

主控模块运行各第二目标通信协议程序后执行的步骤与运行各第一目标通信协议程序后执行的步骤相同,故在此不再赘述。

对应于上文实施例所述的装置,为了便于说明,仅示出了与本申请实施例相关的部分。

图6是本申请一实施例提供的通信方法的流程示意图。如图6所示,所述方法,应用于上述实施例所述的装置的主控模块,所述装置包括主控模块、与主控模块电连接的非易失性存储模块和输入模块,主控模块设置有易失性存储模块,非易失性存储模块包括多个存储分区,每个存储分区存储有至少一种通信协议程序。

所述方法,包括:

S11:接收来自输入模块的输入值。

其中,输入值用于指示所选取的第一目标存储分区;

S12:从多个存储分区中确定输入值对应的第一目标存储分区。

S13:从第一目标存储分区中读取至少一个第一目标通信协议程序,并拷贝各第一目标通讯协议程序至易失性存储模块中进行运行。

在一种可能实现方式中,非易失性存储模块还设置有包含Bootloader程序的存储分区。主控模块跳转到Bootloader程序入口运行程序,基于Bootloader程序读取输入模块的输入值,根据输入值确定第一目标存储分区后,从第一目标存储分区读取至少一个第一目标通信协议程序并拷贝各第一目标通信协议程序至易失性存储模块中,跳转到运行入口运行各第一目标通信协议程序。

本实施例通过在一个硬件上设置主控模块、与主控模块电连接的非易失性存储模块和输入模块,主控模块设置有易失性存储模块,非易失性存储模块包括多个存储分区,每个存储分区存储有至少一种通信协议程序,使得一个硬件能够存储至少两种通信协议程序,降低硬件成本,以及通过不同的输入值实现根据实际需求选择所需的通信协议程序,并通过主控模块从第一目标存储分区中拷贝各第一目标通讯协议程序至易失性存储模块中进行运行,实现一个硬件运行不同通信协议程序,无需为每种通信协议程序标配开发一套软硬件方案,降低开发和维护难度;以及通过输入值选择通信协议程序,能够随时切换通信协议程序。

在一个实施例中,所述装置还包括第一通信模块和第二通信模块,第一通信模块和第二通信模块均与主控模块电连接。

所述方法,还包括:

S14:在各第一目标通信协议程序运行后,针对每个第一目标通信协议程序,基于第一目标通信协议程序,通过第一通信模块与变频器进行初始化握手和参数配置处理。

S15:通过第二通信模块接收来自主站的至少一个通信数据后,针对每个通信数据,利用对应的第一目标通信协议程序对通信数据进行解析,获得应用层数据。

S16:通过第一通信模块向变频器发送各应用层数据,以使变频器针对每个应用层数据,对应用层数据进行处理后,返回响应数据。

S17:接收各响应数据后,针对各响应数据,利用对应的第一目标通信协议进行封装,获得数据包,并通过第二通信模块向主站发送各数据包。

在一个实施例中,所述方法还包括:

S21:通过第一通信模块接收来自变频器的键值。

其中,键值用于指示所选取的第二目标存储分区。

S22:从多个存储分区中确定键值对应的第二目标存储分区。

S23:从第二目标存储分区中读取至少一个第二目标通信协议程序,并拷贝各第二目标通讯协议程序至易失性存储模块中进行运行。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述各个方法实施例中的步骤。

本申请实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行时可实现上述各个方法实施例中的步骤。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

相关技术
  • 基于组合赋权的变电站静态防汛能力模糊综合评估方法
  • 基于组合赋权-模糊综合评价的电池组不一致性评估方法
技术分类

06120116550091