CN114584527B - 一种hart通信方法、装置、设备及可读存储介质 - Google Patents
一种hart通信方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN114584527B CN114584527B CN202210259050.6A CN202210259050A CN114584527B CN 114584527 B CN114584527 B CN 114584527B CN 202210259050 A CN202210259050 A CN 202210259050A CN 114584527 B CN114584527 B CN 114584527B
- Authority
- CN
- China
- Prior art keywords
- target instrument
- complete communication
- module
- instrument module
- response
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004891 communication Methods 0.000 title claims abstract description 192
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000004044 response Effects 0.000 claims abstract description 119
- 238000004590 computer program Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 3
- 230000000903 blocking effect Effects 0.000 abstract description 9
- 230000003993 interaction Effects 0.000 abstract description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2557—Translation policies or rules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Programmable Controllers (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种HART通信方法、装置、设备及计算机可读存储介质,该方法包括:主控制器获取设备管理系统发送的完整通信控制包;对完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令;向各目标仪表模块发送各自对应的命令,并获取目标仪表模块的执行结果;根据执行结果,获取并向设备管理系统发送完整通信应答包;本发明通过对完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令,使主控制器可以按照寻址对设备管理系统一次发送的批量命令进行拆分,从而能够利用主控制器完成命令的批量转发和应答反馈,使得一次交互可以支持批量的智能仪表设备通信,提高了智能仪表设备的参数获取效率,减少了通信阻塞的情况。
Description
技术领域
本发明涉及设备管理技术领域,特别涉及一种HART通信方法、装置、设备及计算机可读存储介质。
背景技术
智能设备HART(Highway Addressable Remote Transducer,可寻址远程传感器高速通道的开放通信协议)协议是一种用于现场智能仪表和控制室设备之间的通信协议。HART规定了一系列命令,按命令方式工作。它有三类命令,第一类称为通用命令,这是所有设备都理解、都执行的命令;第二类称为一般行为命令,所提供的功能可以在许多现场设备(尽管不是全部)中实现,这类命令包括最常用的现场设备的功能库;第三类称为特殊设备命令,以便于工作在某些设备中实现特殊功能,这类命令既可以在基金会中开放使用,又可以为开发此命令的公司所独有;在一个现场设备中通常可发现同时存在这三类命令。
现有技术中,通过定义了动态可变寻址接口,使得软件可以通过这个可变接口完成多层级可扩展通信;但是现有仍然保持着HART协议一问一答的机制,即AMS(AssetManagement System,设备管理系统)需要对大量智能仪表设计进行周期行交互,定期从这些智能仪表设备中读取一个或多个参数。如图1所示,HAMS(HOLLiAS Asset ManagementSystem,和利时设备管理系统)与DCS(Distributed Control Systems,集散控制系统)硬件的主控(Controller)进行通信交互,通过硬件一级级将HART命令发送给智能仪表设备(Dev);而智能仪表设备应答数据同样通过相同的链路一级级返回,最终反馈给设备管理软件,完成仪表数据的交互。按照现有方案将串行通信,有多少个参数需要读取就需要多少次交互,获取参数的周期随着设备和参数数量增值而线性增长,使得智能仪表设备的参数获取效率很慢。
因此,如何能够提高智能仪表设备的参数获取效率,减少通信阻塞的情况,是现今急需解决的问题。
发明内容
本发明的目的是提供一种HART通信方法、装置、设备及计算机可读存储介质,以提高智能仪表设备的参数获取效率,减少通信阻塞的情况。
为解决上述技术问题,本发明提供一种HART通信方法,包括:
主控制器获取设备管理系统发送的完整通信控制包;
对所述完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令;
向各所述目标仪表模块发送各自对应的命令,并获取所述目标仪表模块的执行结果;
根据所述执行结果,获取并向所述设备管理系统发送完整通信应答包。
可选的,所述根据所述执行结果,获取并向所述设备管理系统发送完整通信应答包,包括:
根据各所述目标仪表模块各自对应的执行结果,获取所述完整通信应答包;其中,所述执行结果包括通道占用信息和应答数据;
将所述完整通信应答包发送到所述设备管理系统。
可选的,所述向各所述目标仪表模块发送各自对应的命令,并获取所述目标仪表模块的执行结果,包括:
判断当前目标仪表模块对应的通道是否锁定;其中,当前目标仪表模块为任一所述目标仪表模块;
若是,则确定当前目标仪表模块的执行结果为所述通道占用信息;
若否,则通过所述通道向当前目标仪表模块发送当前目标仪表模块对应的命令,并锁定所述通道;
判断当前目标仪表模块是否为最后一个目标仪表模块;
若不为所述最后一个目标仪表模块,则将下一目标仪表模块作为当前目标仪表模块,并执行所述判断当前目标仪表模块对应的通道是否锁定的步骤;
若为所述最后一个目标仪表模块,则轮询检测未应答的各所述目标仪表模块对应的通道;
将检测到的应答通道的应答数据确定为所述应答通道对应的目标仪表模块的执行结果,并释放所述应答通道的锁定状态;其中,所述应答通道为任一应答的目标仪表模块对应的通道。
可选的,所述根据各所述目标仪表模块各自对应的执行结果,获取所述完整通信应答包,包括:
判断是否达到预设应答周期;
若是,则根据各所述目标仪表模块各自对应的执行结果,获取所述完整通信应答包;其中,所述执行结果还包括未应答信息。
可选的,所述判断是否达到预设应答周期之后,还包括:
若未达到所述预设应答周期,则轮询检测未应答的各所述目标仪表模块对应的通道。
可选的,所述根据各所述目标仪表模块各自对应的执行结果,获取所述完整通信应答包,包括:
判断各所述目标仪表模块对应的通道是否均应答各自对应的命令;
若是,则根据各所述目标仪表模块各自对应的执行结果,获取所述完整通信应答包;
若否,则轮询检测未应答的各所述目标仪表模块对应的通道。
可选的,所述完整通信控制包和所述完整通信应答包均包括报文头、寻址信息和有效数据载荷,所述完整通信控制包中的有效数据载荷包括命令信息,所述命令信息包括所述目标仪表模块各自对应的命令的命令数、命令长度和命令内容,所述完整通信应答包中的有效数据载荷包括命令应答信息,所述命令应答信息包括所述目标仪表模块各自对应的命令的执行结果、命令数、命令长度和命令内容。
本发明还提供了一种HART通信装置,应用于主控制器,包括:
获取模块,用于获取设备管理系统发送的完整通信控制包;
拆分模块,用于对所述完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令;
执行模块,用于向各所述目标仪表模块发送各自对应的命令,并获取所述目标仪表模块的执行结果;
应答模块,用于根据所述执行结果,获取并向所述设备管理系统发送完整通信应答包。
本发明还提供了一种HART通信设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述所述的HART通信方法的步骤。
此外,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的HART通信方法的步骤。
本发明所提供的一种HART通信方法,包括:主控制器获取设备管理系统发送的完整通信控制包;对完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令;向各目标仪表模块发送各自对应的命令,并获取目标仪表模块的执行结果;根据执行结果,获取并向设备管理系统发送完整通信应答包;
可见,本发明通过对完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令,使主控制器可以按照寻址对设备管理系统一次发送的批量命令进行拆分,从而能够利用主控制器的高性能完成了命令的批量转发和应答反馈,使得一次交互可以支持批量的智能仪表设备通信,提高了智能仪表设备的参数获取效率,并且能够避免现有因一个智能仪表设备通信阻塞导致整个通信受阻的情况,减少了通信阻塞的情况。此外,本发明还提供了一种HART通信装置、设备及计算机可读存储介质,同样具有上述有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为现有技术中的设备管理系统与智能仪表设备的通信连接的结构示意图;
图2为本发明实施例所提供的一种HART通信方法的流程图;
图3为本发明实施例所提供的一种HART通信方法的可寻址并发轮询报文格式的示意图;
图4为本发明实施例所提供的另一种HART通信方法的流程示意图;
图5为本发明实施例所提供的一种HART通信装置的结构框图;
图6为本发明实施例所提供的一种HART通信设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图2,图2为本发明实施例所提供的一种HART通信方法的流程图。该方法可以包括:
步骤101:主控制器获取设备管理系统发送的完整通信控制包。
可以理解的是,本实施例中的主控制器可以为用于控制各智能仪表设备的控制器,如图1所示,主控制器(Controller)可以通过各仪表模块(IO Module)与相应的智能仪表设备(Dev)通信,以控制各智能仪表设备;其中,每个仪表模块可以对应多个智能仪表设备,每个智能仪表设备可以对应一个仪表模块。
具体的,本步骤中的完整通信控制包可以为设备管理系统(如HAMS)向主控制器发送的用于与多个智能仪表设备通信的通信包,即本实施例中设备管理系统在与主控制器连接完成后,可以将需要与各智能仪表设备通信的报文批量组织到一个完整通信包(即完整通信控制包),在一次发送中将报文批量发送给主控制器。
对应的,对于本实施例中完整通信控制包的具体内容,可以由设计人员根据实用场景和用户需求自行设置,如完整通信控制包可以包括报文头、寻址信息和有效数据载荷,例如本实施例中设备管理系统向主控制器发送的完整通信控制包的格式可以如图3所示,完整通信控制包中的报文头可以包括报文头内容和后续长度信息;完整通信控制包中的寻址信息可以包括安全密文信息、通信层级信息、链路号信息和站号信息,以使主控制器可以根据寻址信息进行解析寻址,实现多层级的寻址通信;完整通信控制包中的有效数据载荷可以包括命令信息,命令信息可以包括目标仪表模块各自对应的命令的命令数、命令长度和命令内容,即需要向全部目标仪表模块发送命令的数量、各命令的长度和内容。只要完整通信控制包可以包括各目标仪表模块对应的地址信息(如寻址信息)和命令信息,以使主控制器能够将批量的命令发送到各自对应的目标仪表模块,本实施例对此不做任何限制。
具体的,对于本步骤中主控制器获取设备管理系统发送的完整通信控制包的具体方式,可以采用与现有技术中主控制器与设备管理系统的通讯方式相同或相似的实现,本实施例对此不做任何限制。
步骤102:对完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令。
其中,本实施例中的目标仪表模块可以为设备管理系统需要通信的智能仪表设备对应的仪表模块,即完整通信控制包中的命令对应的仪表模块。本步骤中的从完整通信控制包中拆分得到的各目标仪表模块各自对应的命令可以为需要向各目标仪表模块各自对应的智能仪表设备发送的命令。
具体的,本步骤中主控制器可以将接收的完整通信控制包按照寻址进行拆分,得到各目标仪表模块的包括各自对应的命令的数据包。对于本步骤中目标仪表模块的具体选择,可以由设计人员根据实用场景和用户需求自行设置,如主控制器对应的全部仪表模块均可以为目标仪表模块,如图4所示,主控制器可以遍历完整通信控制包并按照寻址进行拆分,从而在遍历完成后为每个仪表模块分配一个数据包;主控制器对应的部分仪表模块可以为目标仪表模块。本实施例对此不做任何限制。
对应的,对于本步骤中主控制器对完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令的具体方式,可以采用与现有技术中的寻址方法相同或相似的方式实现,本实施例对此不做任何限制。
步骤103:向各目标仪表模块发送各自对应的命令,并获取目标仪表模块的执行结果。
可以理解的是,本步骤中主控制器可以向各目标仪表模块发送各自对应的命令,使各目标仪表模块可以将接收的命令发送到其对应的智能仪表设备中相应的智能仪表设备,从而使主控制器可以通过目标仪表模块接收智能仪表设备逐层返回的报文(即应答数据);即目标仪表模块的执行结果可以包括智能仪表设备的应答数据。
也就是说,与现有技术方案相比,现有方案中每次AMS发送的报文都是通过主控制器进行透传转发,主控制器只是中转报文,发送后就开始等待应答;也就是将来自AMS的报文转发给下层硬件,最终逐层转发到智能仪表设备。而智能仪表设备的报文也是逐层返回,主控等待到了仪表的应答再发给AMS。而本实施例所提供的HART通信方法可以采用非阻塞轮训并发机制,利用主控制器的高性能完成了批量转发和应答反馈,同样的一次交互可以支持与批量的智能仪表设备之间的通信,并且因为批量所以在整体耗时上远远小于现有方案。
具体的,对于本步骤中主控制器向各目标仪表模块发送各自对应的命令,并获取目标仪表模块的执行结果的具体方式,可以由设计人员自行设置,如主控制器可以直接向各目标仪表模块发送各自对应的命令,并等待获取各目标仪表模块返回的应答数据(即执行结果)。为了进一步减少通信阻塞的情况,本步骤中主控制器可以采用通道加锁的方式向各目标仪表模块下发各自对应的命令,并在下发后启动非周期的轮询等待已发送的目标仪表模块的应答。本实施例对此不做任何限制。
对应的,采用通道加锁的方式向各目标仪表模块下发数据包(即各自对应的命令)时,若本次通信对应的目标仪表模块包含了上次通信还未应答的仪表模块,即向目标仪表模块下发本次通信的数据包时,该目标仪表模块对应的通道已锁定(即加锁),则可以直接返回通道占用的执行结果;也就是说,本步骤中目标仪表模块的执行结果可以包括通道占用信息和应答数据。
也就是说,本步骤中主控制器可以判断当前目标仪表模块对应的通道是否锁定;若是,则确定当前目标仪表模块的执行结果为通道占用信息;若否,则通过通道向当前目标仪表模块发送当前目标仪表模块对应的命令,并锁定通道;判断当前目标仪表模块是否为最后一个目标仪表模块;若不为最后一个目标仪表模块,则将下一目标仪表模块作为当前目标仪表模块,并执行判断当前目标仪表模块对应的通道是否锁定的步骤;若为最后一个目标仪表模块,则轮询检测未应答的各目标仪表模块对应的通道;将检测到的应答通道的应答数据确定为应答通道对应的目标仪表模块的执行结果,并释放应答通道的锁定状态(即释放通道锁);其中,当前目标仪表模块为任一目标仪表模块,应答通道为任一应答的目标仪表模块对应的通道。
步骤104:根据执行结果,获取并向设备管理系统发送完整通信应答包。
可以理解的是,本步骤中主控制器可以利用缓存的各目标仪表模块的执行结果,获取完整通信控制包对应的完整通信应答包,将批量命令对应的批量的执行结果通过一个完成的通信包返回给设备管理系统,使得设备管理系统可以通过对完整通信应答包的解析得知的执行结果,并可根据执行结果发送下一个完整通信控制包,从而实现AMS同时和多层级硬件执行多参数的批量通信,解决了现有方案中只能实现寻址却不能满足批量和周期的能力;并且主控制器可以采用多包数据缓存机制,利用主控制器内部遍历时间(1ms-2ms)远小于下层通信时间(200ms-500ms)的特性,将多个硬件反馈结果缓存后一并反馈给设备管理系统。
具体的,对于本步骤中的完整通信应答包的具体内容,可以由设计人员根据实用场景和用户需求自行设置,如完整通信应答包可以包括报文头、寻址信息和有效数据载荷,例如本实施例中设备管理系统接收的主控制器的完整通信应答包的格式可以如图3所示,完整通信应答包中的报文头可以包括报文头内容和后续长度信息;完整通信应答包中的寻址信息可以包括安全密文信息、通信层级信息、链路号信息和站号信息;完整通信应答包中的有效数据载荷可以包括包括命令应答信息,命令应答信息包括可以目标仪表模块各自对应的命令的执行结果、命令数、命令长度和命令内容。
也就是说,如图3所示,通过完整通信控制包和完整通信应答中的寻址信息的设置可以实现多层级的寻址通信,在完整通信控制包的发送和完整通信应答包的接收过程中通过解析寻址可以得知通信对象。通过完整通信控制包和完整通信应答中的有效数据载荷的定义可以实现批量命令通信,每次发送时可以同时发送多个仪表模块下需要通信的智能仪表设备请求数据(即命令),返回时主控制器可以将已有应答的智能仪表设备的应答数据填充到接收格式的有效数据载荷。
需要说明的是,本实施例中采用主控制器可以采用通道加锁的方式向各目标仪表模块下发各自对应的命令时,本步骤中主控制器可以根据各目标仪表模块各自对应的执行结果,获取完整通信应答包;将完整通信应答包发送到设备管理系统;其中,执行结果包括通道占用信息和应答数据。
具体的,对于本步骤中主控制器根据执行结果,获取并向设备管理系统发送完整通信应答包的具体方式,可以由设计人员根据实用场景和用户需求自行设置,如主控制器可以判断是否达到预设应答周期;若是,则根据各目标仪表模块各自对应的执行结果,获取完整通信应答包;其中,执行结果还可以包括未应答信息;也就是说,主控制器可以利用缓存的执行结果(如通道占用信息和应答数据),在达到预设应答周期后,获取并向设备管理系统发送完整通信应答包。相应的,对于未达到预设应答周期的情况,如主控器轮询检测未应答的各目标仪表模块对应的通道时,主控器可以继续轮询检测未应答的各目标仪表模块对应的通道,即成功发送相应命令但未反馈应答数据的目标仪表模块对应的通道。
对应的,本步骤中主控制器也可以判断各目标仪表模块对应的通道是否均应答各自对应的命令;若是,则根据各目标仪表模块各自对应的执行结果,获取完整通信应答包;若否,则轮询检测未应答的各目标仪表模块对应的通道;也就是说,主控制器在成功发送相应命令的目标仪表模块均反馈应答数据后,利用缓存的执行结果,获取并向设备管理系统发送完整通信应答包;否则继续轮询检测未应答的各目标仪表模块对应的通道。
具体的,如图4所示,AMS与主控制器建立连接完成后可以将需要通信的报文批量组织到一个完整通信包(即完整通信控制包),一次发送中批量发送给主控制器;主控制器接收到后将通信包按照寻址进行拆分,每一个仪表模块分配一个数据包,并将数据包下发同时开启非周期的轮询;将遍历的每一个通道进行加锁用于方式给同一个仪表模块发送多个命令;此后将每个命令按照仪表模块下发,下发后开启应答等待轮询已经发送的仪表模块应答;当有仪表模块应答后将应答数据缓存并释放对应通道锁,同时检查是否发送包对应所有通道都完成应答,如果没有则继续轮询对应通道数据;已经完成应答通道可以不再轮询;缓存的应答数据可以按照应预设答周期反馈给AMS;当接收到新的完整通信控制包时按照上述机制继续执行,如果新的完整通信控制包对应仪表模块通道包含了上次通信还未应答的仪表模块,则可以直接返回结果通道占用。
本实施例中,本发明实施例通过对完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令,使主控制器可以按照寻址对设备管理系统一次发送的批量命令进行拆分,从而能够利用主控制器的高性能完成了命令的批量转发和应答反馈,使得一次交互可以支持批量的智能仪表设备通信,提高了智能仪表设备的参数获取效率,并且能够避免现有因一个智能仪表设备通信阻塞导致整个通信受阻的情况,减少了通信阻塞的情况。
相应于上面的方法实施例,本发明实施例还提供了一种HART通信装置,下文描述的一种HART通信装置与上文描述的一种HART通信方法可相互对应参照。
请参考图5,图5为本发明实施例所提供的一种HART通信装置的结构框图。该装置应用于主控制器,可以包括:
获取模块10,用于获取设备管理系统发送的完整通信控制包;
拆分模块20,用于对完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令;
执行模块30,用于向各目标仪表模块发送各自对应的命令,并获取目标仪表模块的执行结果;
应答模块40,用于根据执行结果,获取并向设备管理系统发送完整通信应答包。
可选的,应答模块40可以包括:
应答获取子模块,用于根据各目标仪表模块各自对应的执行结果,获取完整通信应答包;其中,执行结果包括通道占用信息和应答数据;
应答发送子模块,用于将完整通信应答包发送到设备管理系统。
可选的,执行模块30可以包括:
锁定判断子模块,用于判断当前目标仪表模块对应的通道是否锁定;其中,当前目标仪表模块为任一目标仪表模块;
确定子模块,用于若已锁定,则确定当前目标仪表模块的执行结果为通道占用信息;
发送子模块,用于若未锁定,则通过通道向当前目标仪表模块发送当前目标仪表模块对应的命令,并锁定通道;
发送判断子模块,用于判断当前目标仪表模块是否为最后一个目标仪表模块;若不为最后一个目标仪表模块,则将下一目标仪表模块作为当前目标仪表模块,并向锁定判断子模块发送启动信号;
第一轮询子模块,用于若为最后一个目标仪表模块,则轮询检测未应答的各目标仪表模块对应的通道;将检测到的应答通道的应答数据确定为应答通道对应的目标仪表模块的执行结果,并释放应答通道的锁定状态;其中,应答通道为任一应答的目标仪表模块对应的通道。
可选的,应答模块40可以包括:
周期判断子模块,用于判断是否达到预设应答周期;
应答子模块,用于若达到预设应答周期,则根据各目标仪表模块各自对应的执行结果,获取完整通信应答包;其中,执行结果还包括未应答信息。
可选的,应答模块40还可以包括:
第二轮询子模块,用于若未达到预设应答周期,则轮询检测未应答的各目标仪表模块对应的通道。
可选的,应答模块40可以包括:
应答判断子模块,用于判断各目标仪表模块对应的通道是否均应答各自对应的命令;
应答完成子模块,用于若均应答各自对应的命令,则根据各目标仪表模块各自对应的执行结果,获取完整通信应答包;
第三轮询子模块,用于若未均应答各自对应的命令,则轮询检测未应答的各目标仪表模块对应的通道。
可选的,完整通信控制包和完整通信应答包均包括报文头、寻址信息和有效数据载荷,完整通信控制包中的有效数据载荷包括命令信息,命令信息包括目标仪表模块各自对应的命令的命令数、命令长度和命令内容,完整通信应答包中的有效数据载荷包括命令应答信息,命令应答信息包括目标仪表模块各自对应的命令的执行结果、命令数、命令长度和命令内容。
本实施例中,本发明实施例通过拆分模块20对完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令,使主控制器可以按照寻址对设备管理系统一次发送的批量命令进行拆分,从而能够利用主控制器的高性能完成了命令的批量转发和应答反馈,使得一次交互可以支持批量的智能仪表设备通信,提高了智能仪表设备的参数获取效率,并且能够避免现有因一个智能仪表设备通信阻塞导致整个通信受阻的情况,减少了通信阻塞的情况。
相应于上面的方法实施例,本发明实施例还提供了一种HART通信设备,下文描述的一种HART通信设备与上文描述的一种HART通信方法可相互对应参照。
请参考图6,图6为本发明实施例所提供的一种HART通信设备的结构示意图。该节点修复设备可以包括:
存储器D1,用于存储计算机程序;
处理器D2,用于执行计算机程序时实现上述方法实施例所提供的HART通信方法的步骤。
其中,本实施例中的HART通信设备可以具体为主控制器。
相应于上面的方法实施例,本发明实施例还提供了一种计算机可读存储介质,下文描述的一种计算机可读存储介质与上文描述的一种HART通信方法可相互对应参照。
一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例所提供的HART通信方法的步骤。
该计算机可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的计算机可读存储介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
以上对本发明所提供的一种HART通信方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种HART通信方法,其特征在于,包括:
主控制器获取设备管理系统发送的完整通信控制包;所述完整通信控制包为将需要与各智能仪表设备通信的报文批量组织到一个完整通信包所形成的,通过所述完整通信控制包在一次发送中将所述报文批量发送给所述主控制器;
对所述完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令;
向各所述目标仪表模块发送各自对应的命令,并获取所述目标仪表模块的执行结果;
根据所述执行结果,获取并向所述设备管理系统发送完整通信应答包。
2.根据权利要求1所述的HART通信方法,其特征在于,所述根据所述执行结果,获取并向所述设备管理系统发送完整通信应答包,包括:
根据各所述目标仪表模块各自对应的执行结果,获取所述完整通信应答包;其中,所述执行结果包括通道占用信息和应答数据;
将所述完整通信应答包发送到所述设备管理系统。
3.根据权利要求2所述的HART通信方法,其特征在于,所述向各所述目标仪表模块发送各自对应的命令,并获取所述目标仪表模块的执行结果,包括:
判断当前目标仪表模块对应的通道是否锁定;其中,当前目标仪表模块为任一所述目标仪表模块;
若是,则确定当前目标仪表模块的执行结果为所述通道占用信息;
若否,则通过所述通道向当前目标仪表模块发送当前目标仪表模块对应的命令,并锁定所述通道;
判断当前目标仪表模块是否为最后一个目标仪表模块;
若不为所述最后一个目标仪表模块,则将下一目标仪表模块作为当前目标仪表模块,并执行所述判断当前目标仪表模块对应的通道是否锁定的步骤;
若为所述最后一个目标仪表模块,则轮询检测未应答的各所述目标仪表模块对应的通道;
将检测到的应答通道的应答数据确定为所述应答通道对应的目标仪表模块的执行结果,并释放所述应答通道的锁定状态;其中,所述应答通道为任一应答的目标仪表模块对应的通道。
4.根据权利要求2所述的HART通信方法,其特征在于,所述根据各所述目标仪表模块各自对应的执行结果,获取所述完整通信应答包,包括:
判断是否达到预设应答周期;
若是,则根据各所述目标仪表模块各自对应的执行结果,获取所述完整通信应答包;其中,所述执行结果还包括未应答信息。
5.根据权利要求4所述的HART通信方法,其特征在于,所述判断是否达到预设应答周期之后,还包括:
若未达到所述预设应答周期,则轮询检测未应答的各所述目标仪表模块对应的通道。
6.根据权利要求2所述的HART通信方法,其特征在于,所述根据各所述目标仪表模块各自对应的执行结果,获取所述完整通信应答包,包括:
判断各所述目标仪表模块对应的通道是否均应答各自对应的命令;
若是,则根据各所述目标仪表模块各自对应的执行结果,获取所述完整通信应答包;
若否,则轮询检测未应答的各所述目标仪表模块对应的通道。
7.根据权利要求1所述的HART通信方法,其特征在于,所述完整通信控制包和所述完整通信应答包均包括报文头、寻址信息和有效数据载荷,所述完整通信控制包中的有效数据载荷包括命令信息,所述命令信息包括所述目标仪表模块各自对应的命令的命令数、命令长度和命令内容,所述完整通信应答包中的有效数据载荷包括命令应答信息,所述命令应答信息包括所述目标仪表模块各自对应的命令的执行结果、命令数、命令长度和命令内容。
8.一种HART通信装置,其特征在于,应用于主控制器,包括:
获取模块,用于获取设备管理系统发送的完整通信控制包;所述完整通信控制包为将需要与各智能仪表设备通信的报文批量组织到一个完整通信包所形成的,通过所述完整通信控制包在一次发送中将所述报文批量发送给所述主控制器;
拆分模块,用于对所述完整通信控制包进行寻址拆分,获取各目标仪表模块各自对应的命令;
执行模块,用于向各所述目标仪表模块发送各自对应的命令,并获取所述目标仪表模块的执行结果;
应答模块,用于根据所述执行结果,获取并向所述设备管理系统发送完整通信应答包。
9.一种HART通信设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的HART通信方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的HART通信方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210259050.6A CN114584527B (zh) | 2022-03-16 | 2022-03-16 | 一种hart通信方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210259050.6A CN114584527B (zh) | 2022-03-16 | 2022-03-16 | 一种hart通信方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114584527A CN114584527A (zh) | 2022-06-03 |
CN114584527B true CN114584527B (zh) | 2024-04-09 |
Family
ID=81775255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210259050.6A Active CN114584527B (zh) | 2022-03-16 | 2022-03-16 | 一种hart通信方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114584527B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179622A (zh) * | 2006-11-07 | 2008-05-14 | 中兴通讯股份有限公司 | 通讯系统中一种多命令的处理设备及其处理方法 |
CN102523310A (zh) * | 2012-01-04 | 2012-06-27 | 上海工业自动化仪表研究院 | 多功能hart通信接口 |
CN105790978A (zh) * | 2014-12-23 | 2016-07-20 | 中兴通讯股份有限公司 | 一种网管通讯报文的处理方法、装置、服务器及主控板 |
CN110365717A (zh) * | 2019-08-27 | 2019-10-22 | 杭州安恒信息技术股份有限公司 | 基于hart-ip协议的工业入侵监测方法和系统 |
CN112714047A (zh) * | 2021-03-29 | 2021-04-27 | 北京网测科技有限公司 | 基于工控协议流量的测试方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2261078B1 (es) * | 2005-04-25 | 2007-11-16 | Servicios Informaticos Kifer, S.L. | Metodo y sistema universal y reconfigurable de lectura remota de contadores o equipos provistos de indicadores visuales. |
-
2022
- 2022-03-16 CN CN202210259050.6A patent/CN114584527B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179622A (zh) * | 2006-11-07 | 2008-05-14 | 中兴通讯股份有限公司 | 通讯系统中一种多命令的处理设备及其处理方法 |
CN102523310A (zh) * | 2012-01-04 | 2012-06-27 | 上海工业自动化仪表研究院 | 多功能hart通信接口 |
CN105790978A (zh) * | 2014-12-23 | 2016-07-20 | 中兴通讯股份有限公司 | 一种网管通讯报文的处理方法、装置、服务器及主控板 |
CN110365717A (zh) * | 2019-08-27 | 2019-10-22 | 杭州安恒信息技术股份有限公司 | 基于hart-ip协议的工业入侵监测方法和系统 |
CN112714047A (zh) * | 2021-03-29 | 2021-04-27 | 北京网测科技有限公司 | 基于工控协议流量的测试方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114584527A (zh) | 2022-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111510350B (zh) | 基于多信道的数据分时采集方法及装置 | |
CN111541595B (zh) | 1553b总线数据通信方法和系统 | |
WO2024041052A1 (zh) | 带宽划分方法、装置、设备及计算机可读存储介质 | |
CN105812444A (zh) | 物联网云网关兼容多协议的方法及物联网云网关 | |
CN114338610A (zh) | 地址分配方法、设备管理和灌溉系统、从机设备 | |
CN114584527B (zh) | 一种hart通信方法、装置、设备及可读存储介质 | |
CN114285695B (zh) | 通信方法、装置、设备、系统和存储介质 | |
CN113328927B (zh) | 一种具有计算、存储和网络交换功能的工业物联网网关 | |
US20070162583A1 (en) | Information providing device, device discovering method, and computer product | |
CN112019452B (zh) | 一种业务需求的处理方法、系统及相关装置 | |
CN109218156B (zh) | 一种动态连接数据的管理方法 | |
CN116909767A (zh) | 一种通道可扩展的流程消息处理方法 | |
CN115622834A (zh) | 总线通信控制方法、装置、设备及存储介质 | |
CN113946369A (zh) | 设备自动添加方法、装置、系统、设备和存储介质 | |
CN111010286A (zh) | 基于串行总线的智能注册方法、装置、电子设备及介质 | |
CN117234146B (zh) | 一种云化plc多协议i/o设备远程控制方法及系统 | |
EP4354242A1 (en) | Remote debugging method and apparatus | |
CN114625084B (zh) | 基于控制系统的节点信息的获取方法及装置 | |
CN117544938B (zh) | 无线麦克风的配对方法、装置、设备及存储介质 | |
CN1133940C (zh) | 通信方法 | |
CN111131477B (zh) | 一种数据处理方法、装置及设备 | |
CN114302445A (zh) | 基于轮询组网工作方式的无线信号收发方法及系统 | |
CN117880394A (zh) | 通信控制方法及系统 | |
CN117997673A (zh) | 总线测试装置及总线测试方法 | |
CN118612306A (zh) | 一种报文转发方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |