CN117896035A - 边缘控制器的数据获取方法和设备 - Google Patents
边缘控制器的数据获取方法和设备 Download PDFInfo
- Publication number
- CN117896035A CN117896035A CN202410288553.5A CN202410288553A CN117896035A CN 117896035 A CN117896035 A CN 117896035A CN 202410288553 A CN202410288553 A CN 202410288553A CN 117896035 A CN117896035 A CN 117896035A
- Authority
- CN
- China
- Prior art keywords
- data
- real
- time
- shadow
- program
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000013500 data storage Methods 0.000 claims abstract description 50
- 230000004044 response Effects 0.000 claims abstract description 11
- 230000006870 function Effects 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 21
- 230000008859 change Effects 0.000 claims description 9
- 238000012544 monitoring process Methods 0.000 claims description 3
- 230000000737 periodic effect Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 28
- 230000001360 synchronised effect Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 101100264195 Caenorhabditis elegans app-1 gene Proteins 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- 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
- Programmable Controllers (AREA)
Abstract
本申请提供一种边缘控制器的数据获取方法和设备。该方法包括:获取数据获取指令;数据获取指令包括工业控制器所需实时数据的编程地址和上报方式,边缘控制器设有数据存储区和影子数据程序,实时数据的数值和时间戳存储在数据存储区;运行影子数据程序;其中,影子数据程序包括影子数据程序运行时、影子应用程序和数据缓存区;响应于运行影子数据程序,触发影子数据程序运行时调用影子应用程序;响应于调用影子应用程序,根据实时数据的编程地址和上报方式将实时数据的数值和时间戳从数据存储区读取至数据缓存区,使工业控制器访问数据缓存区中实时数据的数值和时间戳。本申请的方法,提高了工业控制器获取的实时数据时间戳的精度。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种边缘控制器的数据获取方法和设备。
背景技术
在工厂数字化过程中,企业可按需构建实时工业应用,例如数字孪生、健康诊断等。实时工业应用的基础是工业现场的实时数据,实时数据的属性包括数据的值以及数据的时间戳,而实时数据一般来自边缘控制器,例如可编程逻辑控制(Programmable LogicController,PLC)。
实时工业应用获取边缘控制器中的实时数据的方式包括同步通信方式和异步通信方式。支持异步通信方式的边缘控制器,可将实时数据主动发送到实时工业应用,实时数据中包括数据的值和时间戳。而对于不支持异步通信方式、仅支持同步通信方式的边缘控制器,实时工业应用只能通过轮询查询方式获取边缘控制器的实时数据,且获取到的实时数据只有数值、无时间戳,实时工业应用将接收到该数据的时间作为实时数据的时间戳添加到实时数据中。
但由于通信时间和轮询时间的存在,同步通信方式下的实时数据时间戳与边缘控制器中真实的数据时间戳存在一定时间差,这就导致实时工业应用的精度下降,进而降低了工业应用的效果。
发明内容
本申请提供一种边缘控制器的数据获取方法和设备,用以解决现有技术中仅支持同步通信的边缘控制器难以向实时工业应用提供准确时间戳的问题。
第一方面,本申请提供一种边缘控制器的数据获取方法,包括:
获取数据获取指令;其中,数据获取指令包括工业控制器所需的实时数据的编程地址和上报方式,边缘控制器设有数据存储区和影子数据程序,实时数据的数值和时间戳存储在数据存储区;
响应于数据获取指令,运行影子数据程序;其中,影子数据程序包括影子数据程序运行时、影子应用程序和数据缓存区;
响应于运行影子数据程序,触发影子数据程序运行时调用影子应用程序;
响应于调用影子应用程序,根据实时数据的编程地址和上报方式将实时数据的数值和时间戳从数据存储区读取至数据缓存区,使工业控制器访问数据缓存区中实时数据的数值和时间戳。
在一些实施例中,获取数据获取指令之前,方法还包括:
接收云端可编程平台发送的更新数据包;
根据更新数据包配置边缘控制器的影子数据程序;
其中,更新数据包包括由各个实时数据的数据上报功能块以及每个实时数据的编程地址组成的数据上报功能块列表,每个实时数据的数据上报功能块均为云端可编程平台根据实时数据的上报方式适配的功能块。
在一些实施例中,响应于调用影子应用程序,根据实时数据的编程地址和上报方式将实时数据的数值和时间戳从数据存储区读取至数据缓存区,具体包括:
响应于调用影子应用程序,从数据上报功能块列表中读取实时数据的编程地址和上报方式;
将实时数据的编程地址转换为实时数据在数据存储区的绝对地址;
根据绝对地址和上报方式将实时数据的数值和时间戳从数据存储区读取至数据缓存区。
在一些实施例中,根据实时数据的编程地址和上报方式将实时数据的数值和时间戳从数据存储区读取至数据缓存区,具体包括:
若上报方式为变化上报,则监测实时数据在上一个时刻的数值和下一个时刻的数值;
上一个时刻的数值和下一个时刻的数值不同时,将下一个时刻作为实时数据的时间戳,将下一个时刻的数值和时间戳从数据存储区读取至数据缓存区。
在一些实施例中,根据实时数据的编程地址和上报方式将实时数据的数值和时间戳从数据存储区读取至数据缓存区,具体包括:
若上报方式为周期上报,则间隔预设时长将实时数据的数值和对应的时间戳从数据存储区读取至数据缓存区。
在一些实施例中,边缘控制器中存储有至少一个应用程序,影子数据程序可在至少一个应用程序的程序运行环境中运行。
第二方面,本申请提供一种边缘控制器的数据获取装置,包括:
获取模块,用于获取数据获取指令;其中,数据获取指令包括工业控制器所需的实时数据的编程地址和上报方式,边缘控制器设有数据存储区和影子数据程序,实时数据的数值和时间戳存储在数据存储区;
运行模块,用于响应于数据获取指令,运行影子数据程序;其中,影子数据程序包括影子数据程序运行时、影子应用程序和数据缓存区;
运行模块,还用于响应于运行影子数据程序,触发影子数据程序运行时调用影子应用程序;
读取模块,用于响应于调用影子应用程序,根据实时数据的编程地址和上报方式将实时数据的数值和时间戳从数据存储区读取至数据缓存区,使工业控制器访问数据缓存区中实时数据的数值和时间戳。
第三方面,本申请提供一种边缘控制器,包括:存储器和处理器;
存储器用于存储计算机程序;
处理器用于执行存储器存储的计算机程序,实现第一方面及第一方面任一种实施例中的边缘控制器的数据获取方法。
第四方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,该计算机程序被处理器执行时,实现第一方面及第一方面任一种实施例中的边缘控制器的数据获取方法。
第五方面,本申请提供一种计算机程序产品,计算机程序产品包括计算机程序,该计算机程序被处理器执行时,实现第一方面及第一方面任一种实施例中的边缘控制器的数据获取方法。
本申请提供的边缘控制器的数据获取方法和设备,通过运行边缘控制器中设置的影子数据程序,将实时数据的数值和时间戳从数据存储区读取至数据缓存区,以便于实时工业应用的工业控制器访问数据缓存区中实时数据的数值和时间戳,提高了工业控制器获取到的实时数据的时间戳的精度,改善了工业应用的效果。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的一种边缘控制器的结构示意图;
图2为本申请一实施例提供的一种边缘控制器的数据获取方法的流程图;
图3为本申请一实施例提供的一种数据上报功能块列表的示意图;
图4为本申请一实施例提供的一种边缘控制器的数据获取装置的结构示意图;
图5为本申请一实施例提供的一种边缘控制器的硬件结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
取决于语境,本文中所使用的词语“若”可以被解释成为“在……时”或“当……时”或“响应于确定”。
再者,本文中所使用的单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。
在工厂数字化过程中,企业可按需构建实时工业应用,例如数字孪生、健康诊断等。实时工业应用的基础是工业现场的实时数据,实时数据的属性包括数据的值以及数据的时间戳,而实时数据一般来自边缘控制器。
实时工业应用获取边缘控制器中的实时数据的方式包括同步通信方式和异步通信方式。支持异步通信方式的边缘控制器,可将实时数据主动发送到实时工业应用,实时数据中包括数据的值和时间戳。而对于不支持异步通信方式、仅支持同步通信方式的边缘控制器,实时工业应用只能通过轮询查询方式获取边缘控制器的实时数据,且获取到的实时数据只有数值而没有时间戳,实时工业应用将接收到该数据的时间作为实时数据的时间戳添加到实时数据中。
但由于通信时间和轮询时间的存在,同步通信方式下的实时数据时间戳与边缘控制器中真实的数据时间戳存在一定时间差,这就导致实时工业应用的精度下降,进而降低了工业应用的效果。
目前,缩短实时数据时间差常用的技术为根据实时工业应用的需求,重新开发边缘控制器程序,使得边缘控制器能够将实时数据加上时间戳后主动发送到实时工业应用。但这种方法因需对边缘控制器的程序进行开发和更新,会存在潜在的停机风险,而且当所需实时数据的类型或数量发生变化时,需重复开发边缘控制器程序,通用性和扩展性差,实时数据获取成本高。
针对上述问题,本申请提出了一种边缘控制器的数据获取方法和设备。该方法中,通过运行边缘控制器中设置的影子数据程序,将实时数据的数值和时间戳从数据存储区读取至数据缓存区,以便于实时工业应用的工业控制器访问数据缓存区中实时数据的数值和时间戳,提高了工业控制器获取到的实时数据的时间戳的精度,同时避免了更新边缘控制器原有的程序,降低了停机风险,改善了工业应用的效果。此外,当所需实时数据的类型或数量发生变化时,无需重复开发边缘控制器程序,仅更新影子数据程序即可,提高了边缘控制器程序的通用性和扩展性差,降低了实时数据的获取成本。
下面以具体地实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图1示出了本申请一实施例提供的一种边缘控制器的结构示意图。如图1所示,边缘控制器中包括应用程序APP_1、APP_2、……、APP_N、数据存储区和程序运行环境,数据存储区用于存储应用程序APP_1、APP_2、……、APP_N获取的工业设备实时数据,包括实时数据的数值和时间戳。
以上结构为现有技术中原有的,在此基础上,本实施例的边缘控制器中还增设了影子数据程序,影子数据程序包括影子数据程序运行时、影子数据区、数据缓存区和影子应用程序APP。
其中,影子应用程序APP由云端可编程平台根据现场工程师配置的数据生成,影子数据程序运行时用于加载影子应用程序APP的运行。影子应用程序APP运行时,可将数据存储区的实时数据以内存共享或绝对地址的形式同步至影子数据区,并按照预设的上报方式存储于数据缓存区,且存储的实时数据包括数值和时间戳。
实时工业应用通过通信网络与边缘控制器中的影子数据程序通信,完成实时数据的传输,也即获取到带有数值和时间戳的实时数据。
本申请中以边缘控制器为执行主体,执行如下实施例的边缘控制器的数据获取方法。
图2示出了本申请一实施例提供的一种边缘控制器的数据获取方法的流程图。在图1所示实施例的基础上,如图2所示,以边缘控制器为执行主体,本实施例的方法可以包括如下步骤:
S101、获取数据获取指令。
本实施例中,数据获取指令包括实时工业应用的工业控制器所需的实时数据的编程地址和上报方式,边缘控制器设有数据存储区和影子数据程序,实时数据的数值和时间戳存储在数据存储区。
边缘控制器获取数据获取指令,可以是影子数据程序被更新。例如,实时数据的类型改变,或者实时数据的数量改变,此时边缘控制器可以从云端可编程平台获取到待更新的影子数据程序,也即边缘控制器从云端可编程平台获取数据获取指令。
S102、响应于数据获取指令,运行影子数据程序。
其中,影子数据程序包括影子数据程序运行时、影子应用程序APP和数据缓存区。
边缘控制器响应于数据获取指令,将影子数据程序重新配置完成更新。
S103、响应于运行影子数据程序,触发影子数据程序运行时调用影子应用程序。
本实施例中,影子数据程序运行时用于加载运行影子应用程序APP。
S104、响应于调用影子应用程序,根据实时数据的编程地址和上报方式将实时数据的数值和时间戳从数据存储区读取至数据缓存区,使工业控制器访问数据缓存区中实时数据的数值和时间戳。
本实施例中,边缘控制器可以根据实时数据的编程地址确定实时数据在数据存储区的地址,再按照数据获取指令中的上报方式将实时数据经影子数据区同步至数据缓存区,此时同步的实时数据即包括数值和时间戳,因此,工业控制器与边缘控制器通信,从数据缓存区获取的实时数据也包括数据和时间戳。
可选地,影子数据区可以为数据传输通道,而非必须设置的结构。
本实施例提供的边缘控制器的数据获取方法,通过在边缘控制器中部署影子数据程序,以将数据存储区的实时数据同步至数据缓存区,从而使工业控制器能够直接获取到带有时间戳的实时数据,避免了工业控制器将接收到实时数据的时间作为时间戳,提高了实时数据的数据精度。此外,由于现有技术中工业控制器需要以轮询的方式来获取实时数据,而本实施例中边缘控制器将实时数据同步至数据缓存区,工业控制器直接访问即可获取到带有准确时间戳的实时数据,无需频繁轮询,因此本实施例的方法还降低了工业控制器与边缘控制器的通信频率。
在一些实施例中,边缘控制器在获取数据获取指令之前,还可以执行如下步骤:
S201、接收云端可编程平台发送的更新数据包。
S202、根据更新数据包配置边缘控制器的影子数据程序。
其中,更新数据包包括由各个实时数据的数据上报功能块以及每个实时数据的编程地址组成的数据上报功能块列表,每个实时数据的数据上报功能块均为云端可编程平台根据实时数据的上报方式适配的功能块。
本实施例中,更新数据包用于更新影子数据程序中影子应用程序APP,具体地,现场工程师根据数据获取的需要,将边缘控制器的型号以及所需实时数据的编程地址、上报方式等配置数据录入电脑端或手持设备等终端设备,终端设备以配置数据的形式发送到云端可编程平台。
云可编程平台接收到配置数据后,识别出边缘控制器的型号和所需数据的编程地址、上报方式。云可编程平台根据边缘控制器的型号适配影子数据程序运行时及其对应的编译器,并根据每个实时数据的上报方式适配其对应的功能块,多个实时数据对应的功能块组成数据上报功能块列表,编译器动态链接和编译数据上报功能块列表中的多个功能块,生成更新数据包。
边缘控制器根据更新数据包配置影子数据程序,即为更新影子应用程序APP。
图3为本申请一实施例提供的一种数据上报功能块列表的示意图。如图3所示,M个实时数据对应M个功能块,M个功能块组成数据上报功能块列表。
本实施例中,边缘控制器的影子数据程序可以由云端可编程平台根据实时数据的获取需求不同动态生成或更新,具有良好的扩展性和通用性。
在一些实施例中,步骤S104的具体实现方式可以包括如下步骤:
S1041、响应于调用影子应用程序,从数据上报功能块列表中读取实时数据的编程地址和上报方式。
S1042、将实时数据的编程地址转换为实时数据在数据存储区的绝对地址。
S1043、根据绝对地址和上报方式将实时数据的数值和时间戳从数据存储区读取至数据缓存区。
本实施例中,影子应用程序通过更新数据包配置更新后,可以从数据上报功能块列表中读取每个实时数据的编程地址和上报方式。运行影子应用程序,可以将每个实时数据的编程地址转换为绝对地址,从而将数据缓存区与数据存储区建立关联,实现数据同步。
在一些实施例中,步骤S104中,根据实时数据的编程地址和上报方式将实时数据的数值和时间戳从数据存储区读取至数据缓存区,具体实现方式可以是:
若上报方式为变化上报,则监测实时数据在上一个时刻的数值和下一个时刻的数值;上一个时刻的数值和下一个时刻的数值不同时,将下一个时刻作为实时数据的时间戳,将下一个时刻的数值和时间戳从数据存储区读取至数据缓存区。
可以理解,上一个时刻的数值和下一个时刻的数值不同,表示实时数据的状态在下一个时刻发生变化,下一个时刻作为该实时数据变化的时间戳,此时需要存储该实时数据变化后的数值以及变化的时间,也即时间戳。
可选地,边缘控制器也可以同时存储该实时数据变化前的数据。
在一些实施例中,步骤S104中根据实时数据的编程地址和上报方式将实时数据的数值和时间戳从数据存储区读取至数据缓存区,具体实现方式可以是:若上报方式为周期上报,则间隔预设时长将实时数据的数值和对应的时间戳从数据存储区读取至数据缓存区。
在一些实施例中,边缘控制器中存储有至少一个应用程序,影子数据程序可在至少一个应用程序的程序运行环境中运行。
本实施例中,至少一个应用程序为边缘控制器原有的应用程序,增设影子数据程序不需要改动原有的应用程序以及程序运行环境,可实现在线更新配置,降低了边缘控制器的停机风险。
可选地,本申请上述各实施例中,云端可编程平台采用Java语言开发,部署在云服务器上。数据上报功能块使用符合行业标准的图形化语言封装,功能块的文件保存格式为JSON。云端可编程平台中数据变化上报方式对应的功能块为CT,数据周期上报方式对应的功能块为PT。
现场工程师使用电脑端或手持设备通过消息队列遥测传输(Message QueuingTelemetry Transport,MQTT)报文发送配置数据到云端可编程平台,报文内容为JSON格式。
云端可编程平台识别边缘控制器的型号后,根据型号在编译器库中适配正确的影子数据程序运行时和编译器,采用顶点活动(Activity On Vertex,AOV)网络方法将数据上报功能块转化为标准的C语言程序,将C语言程序进行链接和编译,生成边缘控制器可执行的影子应用程序APP,也即更新数据包,格式为.so文件。
云端可编程平台与边缘控制器的通信网络为基于4G无线网络的VPN通道,通过该通信网络实现影子应用程序APP的更新。
影子数据程序中的影子程序运行时为C语言开发的运行程序,可加载.so格式的影子应用程序APP,解析得到每个实时数据的编程地址,并将编程地址转化为实时数据在数据存储区的绝对地址,实现实时数据的直接访问和同步,进而,根据数据上报方式发送实时数据到数据缓存区。
例如,DataItem_1数据的编程地址为X2.4,其转换后的绝对地址为0x80002320,其数据上报方式为变化上报,即当数据当前时刻与前一时刻不同时,会触发存储机制,则将该当前时刻的数据存储到数据缓存区。
图4示出了本申请一实施例提供的一种边缘控制器的数据获取装置的结构示意图,如图4所示,本实施例的边缘控制器的数据获取装置10用于实现上述任一方法实施例中对应于边缘控制器的操作,本实施例的边缘控制器的数据获取装置10包括:
获取模块11,用于获取数据获取指令;其中,数据获取指令包括工业控制器所需的实时数据的编程地址和上报方式,边缘控制器设有数据存储区和影子数据程序,实时数据的数值和时间戳存储在数据存储区;
运行模块12,用于响应于数据获取指令,运行影子数据程序;其中,影子数据程序包括影子数据程序运行时、影子应用程序和数据缓存区;
运行模块12,还用于响应于运行影子数据程序,触发影子数据程序运行时调用影子应用程序;
读取模块13,用于响应于调用影子应用程序,根据实时数据的编程地址和上报方式将实时数据的数值和时间戳从数据存储区读取至数据缓存区,使工业控制器访问数据缓存区中实时数据的数值和时间戳。
本申请实施例提供的边缘控制器的数据获取装置10,可执行上述方法实施例,其具体实现原理和技术效果,可参见上述方法实施例,本实施例此处不再赘述。
图5示出了本申请实施例提供的一种边缘控制器的硬件结构示意图。如图5所示,该边缘控制器20,用于实现上述任一方法实施例中对应于边缘控制器的操作,本实施例的边缘控制器20可以包括:存储器21,处理器22和通信接口24。
存储器21,用于存储计算机程序。该存储器21可能包含高速随机存取存储器(Random Access Memory,RAM),也可能还包括非易失性存储(Non-Volatile Memory,NVM),例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
处理器22,用于执行存储器存储的计算机程序,以实现上述实施例中的方法。具体可以参见前述方法实施例中的相关描述。该处理器22可以是中央处理单元(CentralProcessing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
可选地,存储器21既可以是独立的,也可以跟处理器22集成在一起。
当存储器21是独立于处理器22之外的器件时,边缘控制器20还可以包括总线23。该总线23用于连接存储器21和处理器22。该总线23可以是工业标准体系结构(IndustryStandard Architecture,ISA)总线、外部设备互连(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准体系结构(Extended Industry StandardArchitecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
通信接口24,可以通过总线23与处理器22连接。处理器22可以控制通信接口24来实现信号的接收和发送的功能。
本实施例提供的边缘控制器20可用于执行上述的边缘控制器的数据获取方法,其实现方式和技术效果类似,本实施例此处不再赘述。
本申请还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序/指令,计算机程序/指令被处理器执行时用于实现上述的各种实施方式提供的方法。
其中,计算机可读存储介质可以是计算机存储介质,也可以是通信介质。通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。计算机存储介质可以是通用或专用计算机能够存取的任何可用介质。例如,计算机可读存储介质耦合至处理器,从而使处理器能够从该计算机可读存储介质读取信息,且可向该计算机可读存储介质写入信息。当然,计算机可读存储介质也可以是处理器的组成部分。处理器和计算机可读存储介质可以位于专用集成电路(Application Specific Integrated Circuits, ASIC)中。另外,该ASIC可以位于用户设备中。当然,处理器和计算机可读存储介质也可以作为分立组件存在于通信设备中。
具体地,该计算机可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random-Access Memory,SRAM),电可擦除可编程只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM),可编程只读存储器(Programmable read-only memory,PROM),只读存储器(Read-OnlyMemory,ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
本申请还提供一种计算机程序产品,该计算机程序产品包括计算机程序/指令,该计算机程序/指令存储在计算机可读存储介质中。设备的至少一个处理器可以从计算机可读存储介质中读取该计算机程序/指令,至少一个处理器执行该计算机程序/指令使得设备实施上述的各种实施方式提供的方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
其中,各个模块可以是物理上分开的,例如安装于一个的设备的不同位置,或者安装于不同的设备上,或者分布到多个网络单元上,或者分布到多个处理器上。各个模块也可以是集成在一起的,例如,安装于同一个设备中,或者,集成在一套代码中。各个模块可以以硬件的形式存在,或者也可以以软件的形式存在,或者也可以采用软件加硬件的形式实现。本申请可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
应该理解的是,虽然上述实施例中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制。尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换。而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种边缘控制器的数据获取方法,其特征在于,包括:
获取数据获取指令;其中,所述数据获取指令包括工业控制器所需的实时数据的编程地址和上报方式,所述边缘控制器设有数据存储区和影子数据程序,所述实时数据的数值和时间戳存储在所述数据存储区;
响应于所述数据获取指令,运行所述影子数据程序;其中,所述影子数据程序包括影子数据程序运行时、影子应用程序和数据缓存区;
响应于运行所述影子数据程序,触发所述影子数据程序运行时调用所述影子应用程序;
响应于调用所述影子应用程序,根据所述实时数据的编程地址和所述上报方式将所述实时数据的数值和时间戳从所述数据存储区读取至所述数据缓存区,使所述工业控制器访问所述数据缓存区中实时数据的数值和时间戳。
2.根据权利要求1所述的数据获取方法,其特征在于,所述获取数据获取指令之前,所述方法还包括:
接收云端可编程平台发送的更新数据包;
根据所述更新数据包配置所述边缘控制器的影子数据程序;
其中,所述更新数据包包括由各个实时数据的数据上报功能块以及每个实时数据的编程地址组成的数据上报功能块列表,每个实时数据的数据上报功能块均为所述云端可编程平台根据所述实时数据的上报方式适配的功能块。
3.根据权利要求2所述的数据获取方法,其特征在于,所述响应于调用所述影子应用程序,根据所述实时数据的编程地址和所述上报方式将所述实时数据的数值和时间戳从所述数据存储区读取至所述数据缓存区,具体包括:
响应于调用所述影子应用程序,从所述数据上报功能块列表中读取所述实时数据的编程地址和所述上报方式;
将所述实时数据的编程地址转换为所述实时数据在所述数据存储区的绝对地址;
根据所述绝对地址和所述上报方式将所述实时数据的数值和时间戳从所述数据存储区读取至所述数据缓存区。
4.根据权利要求1所述的数据获取方法,其特征在于,所述根据所述实时数据的编程地址和所述上报方式将所述实时数据的数值和时间戳从所述数据存储区读取至所述数据缓存区,具体包括:
若所述上报方式为变化上报,则监测所述实时数据在上一个时刻的数值和下一个时刻的数值;
所述上一个时刻的数值和所述下一个时刻的数值不同时,将所述下一个时刻作为所述实时数据的时间戳,将所述下一个时刻的数值和时间戳从所述数据存储区读取至所述数据缓存区。
5.根据权利要求1所述的数据获取方法,其特征在于,所述根据所述实时数据的编程地址和所述上报方式将所述实时数据的数值和时间戳从所述数据存储区读取至所述数据缓存区,具体包括:
若所述上报方式为周期上报,则间隔预设时长将所述实时数据的数值和对应的时间戳从所述数据存储区读取至所述数据缓存区。
6.根据权利要求1所述的数据获取方法,其特征在于,所述边缘控制器中存储有至少一个应用程序,所述影子数据程序可在所述至少一个应用程序的程序运行环境中运行。
7.一种边缘控制器的数据获取装置,其特征在于,所述装置包括:
获取模块,用于获取数据获取指令;其中,所述数据获取指令包括工业控制器所需的实时数据的编程地址和上报方式,所述边缘控制器设有数据存储区和影子数据程序,所述实时数据的数值和时间戳存储在所述数据存储区;
运行模块,用于响应于所述数据获取指令,运行所述影子数据程序;其中,所述影子数据程序包括影子数据程序运行时、影子应用程序和数据缓存区;
所述运行模块,还用于响应于运行所述影子数据程序,触发所述影子数据程序运行时调用所述影子应用程序;
读取模块,用于响应于调用所述影子应用程序,根据所述实时数据的编程地址和所述上报方式将所述实时数据的数值和时间戳从所述数据存储区读取至所述数据缓存区,使所述工业控制器访问所述数据缓存区中实时数据的数值和时间戳。
8.一种边缘控制器,其特征在于,所述边缘控制器包括存储器和处理器;
所述存储器用于存储计算机程序;
所述处理器用于执行所述存储器存储的计算机程序时,实现如权利要求1-6中任意一项所述的边缘控制器的数据获取方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现如权利要求1-6中任意一项所述的边缘控制器的数据获取方法。
10.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,该计算机程序被处理器执行时,实现如权利要求1-6中任意一项所述的边缘控制器的数据获取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410288553.5A CN117896035B (zh) | 2024-03-14 | 2024-03-14 | 边缘控制器的数据获取方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410288553.5A CN117896035B (zh) | 2024-03-14 | 2024-03-14 | 边缘控制器的数据获取方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117896035A true CN117896035A (zh) | 2024-04-16 |
CN117896035B CN117896035B (zh) | 2024-06-04 |
Family
ID=90641481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410288553.5A Active CN117896035B (zh) | 2024-03-14 | 2024-03-14 | 边缘控制器的数据获取方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117896035B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7545794B2 (en) * | 2003-08-14 | 2009-06-09 | Intel Corporation | Timestamping network controller for streaming media applications |
CN105242974A (zh) * | 2015-10-27 | 2016-01-13 | 广州视睿电子科技有限公司 | 时间获取方法与装置 |
CN109005194A (zh) * | 2018-09-04 | 2018-12-14 | 厦门安胜网络科技有限公司 | 基于kcp协议的无端口影子通信方法及计算机存储介质 |
CN110442381A (zh) * | 2018-05-02 | 2019-11-12 | 美光科技公司 | 用于保护有条件的推测性指令执行的影子缓存 |
CN110704439A (zh) * | 2019-09-27 | 2020-01-17 | 北京智道合创科技有限公司 | 数据存储方法及装置 |
CN110765204A (zh) * | 2019-09-30 | 2020-02-07 | 武汉达梦数据库有限公司 | 一种对增量同步异常中断情况的处理方法和装置 |
CN111427964A (zh) * | 2020-04-15 | 2020-07-17 | 南京核新数码科技有限公司 | 一种面向运行时间戳的工业云数据存储模型 |
CN111478965A (zh) * | 2020-04-07 | 2020-07-31 | 四川虹美智能科技有限公司 | 设备影子的处理方法、装置和系统 |
CN112532729A (zh) * | 2020-11-30 | 2021-03-19 | 北京百度网讯科技有限公司 | 用于边缘设备和云端的数据同步方法和装置 |
CN114281903A (zh) * | 2021-11-30 | 2022-04-05 | 中国联合网络通信集团有限公司 | 数字孪生体构建方法、装置、设备及存储介质 |
US20220224624A1 (en) * | 2022-03-31 | 2022-07-14 | Intel Corporation | Methods, apparatus, and articles of manufacture to improve bandwidth for packet timestamping |
CN115102653A (zh) * | 2022-05-30 | 2022-09-23 | 深圳市遇贤微电子有限公司 | 时间同步方法、装置、计算机设备和存储介质 |
US20240036535A1 (en) * | 2022-07-28 | 2024-02-01 | Siemens Aktiengesellschaft | Industrial control device, industrial control system and method of operating the same |
-
2024
- 2024-03-14 CN CN202410288553.5A patent/CN117896035B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7545794B2 (en) * | 2003-08-14 | 2009-06-09 | Intel Corporation | Timestamping network controller for streaming media applications |
CN105242974A (zh) * | 2015-10-27 | 2016-01-13 | 广州视睿电子科技有限公司 | 时间获取方法与装置 |
CN110442381A (zh) * | 2018-05-02 | 2019-11-12 | 美光科技公司 | 用于保护有条件的推测性指令执行的影子缓存 |
CN109005194A (zh) * | 2018-09-04 | 2018-12-14 | 厦门安胜网络科技有限公司 | 基于kcp协议的无端口影子通信方法及计算机存储介质 |
CN110704439A (zh) * | 2019-09-27 | 2020-01-17 | 北京智道合创科技有限公司 | 数据存储方法及装置 |
CN110765204A (zh) * | 2019-09-30 | 2020-02-07 | 武汉达梦数据库有限公司 | 一种对增量同步异常中断情况的处理方法和装置 |
CN111478965A (zh) * | 2020-04-07 | 2020-07-31 | 四川虹美智能科技有限公司 | 设备影子的处理方法、装置和系统 |
CN111427964A (zh) * | 2020-04-15 | 2020-07-17 | 南京核新数码科技有限公司 | 一种面向运行时间戳的工业云数据存储模型 |
CN112532729A (zh) * | 2020-11-30 | 2021-03-19 | 北京百度网讯科技有限公司 | 用于边缘设备和云端的数据同步方法和装置 |
CN114281903A (zh) * | 2021-11-30 | 2022-04-05 | 中国联合网络通信集团有限公司 | 数字孪生体构建方法、装置、设备及存储介质 |
US20220224624A1 (en) * | 2022-03-31 | 2022-07-14 | Intel Corporation | Methods, apparatus, and articles of manufacture to improve bandwidth for packet timestamping |
CN115102653A (zh) * | 2022-05-30 | 2022-09-23 | 深圳市遇贤微电子有限公司 | 时间同步方法、装置、计算机设备和存储介质 |
US20240036535A1 (en) * | 2022-07-28 | 2024-02-01 | Siemens Aktiengesellschaft | Industrial control device, industrial control system and method of operating the same |
Non-Patent Citations (1)
Title |
---|
孙广雨;山岚;: "数据同步中差异数据捕获的设计与实现", 北京化工大学学报(自然科学版), no. 03, 20 May 2011 (2011-05-20) * |
Also Published As
Publication number | Publication date |
---|---|
CN117896035B (zh) | 2024-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112087454B (zh) | 一种物联网网关设备的通信方法、装置、设备及储存介质 | |
CN111083225A (zh) | 在物联网平台中的数据处理方法、装置及物联网平台 | |
CN107609004B (zh) | 应用程序埋点方法和装置、计算机设备和存储介质 | |
CN109670126B (zh) | 一种跨境访问加速方法及装置 | |
CN111245930A (zh) | 跨平台消息推送方法、装置、计算机设备及存储介质 | |
CN117896035B (zh) | 边缘控制器的数据获取方法和设备 | |
CN112235352B (zh) | 一种服务依赖梳理方法和装置 | |
CN107239303B (zh) | 应用程序更新包生成及应用程序更新的方法、装置 | |
CN111177182B (zh) | 数据查询方法和装置、存储介质和电子设备 | |
JP2019046052A (ja) | コントロールシステム、開発支援装置、及びコントロール方法 | |
CN111092774A (zh) | 采集网关的配置方法及设备 | |
CN109684611B (zh) | 一种字典转码方法、装置、存储介质及终端 | |
CN116340659A (zh) | 数据处理方法及装置 | |
CN113779122B (zh) | 导出数据的方法和装置 | |
CN114860300A (zh) | 依赖配置方法及装置、电子设备及存储介质 | |
CN110865973A (zh) | 一种数据处理方法及设备和相关装置 | |
CN109614656B (zh) | 一种用于OpenGL显示列表调用的TLM系统 | |
US10853225B2 (en) | Control method, apparatus, and non-transitory computer-readable storage medium for generating data body adjusted to second program by converting data type of parameter of first program | |
CN117453377B (zh) | 模型调度方法、终端设备以及服务器 | |
US20230256610A1 (en) | Component management system and method | |
CN114942856B (zh) | 微服务系统的数据处理方法、装置及电子设备 | |
CN113129049B (zh) | 用于模型训练和应用的文件配置方法和系统 | |
CN117493024B (zh) | 多进程异构程序的迁移方法、存储介质及电子设备 | |
CN118093072A (zh) | 组件处理的方法、装置、电子设备和存储介质 | |
CN115514770A (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 |