CN117675887A - 物联网设备接入方法及系统 - Google Patents

物联网设备接入方法及系统 Download PDF

Info

Publication number
CN117675887A
CN117675887A CN202311595401.1A CN202311595401A CN117675887A CN 117675887 A CN117675887 A CN 117675887A CN 202311595401 A CN202311595401 A CN 202311595401A CN 117675887 A CN117675887 A CN 117675887A
Authority
CN
China
Prior art keywords
internet
data
things
kubernetes
interface
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.)
Pending
Application number
CN202311595401.1A
Other languages
English (en)
Inventor
王茂帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Intelligent IoT Technology Co Ltd
Original Assignee
Inspur Intelligent IoT Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Intelligent IoT Technology Co Ltd filed Critical Inspur Intelligent IoT Technology Co Ltd
Priority to CN202311595401.1A priority Critical patent/CN117675887A/zh
Publication of CN117675887A publication Critical patent/CN117675887A/zh
Pending legal-status Critical Current

Links

Classifications

    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明公开了物联网设备接入方法及系统,属于物联网技术领域,要解决的技术问题为如何基于Kubernetes CRD实现物联网设备的快速接入。包括如下步骤:定义设备描述文件;基于设备描述文件开发CRD控制器;开发物联网协议插件,并将物联网协议插件接入kubernetes集群;基于设备描述文件配置设备描述文件实例,并基于物联网协议插件将物联网设备接入kubernetes集群,CRD控制器监听到新的设备描述文件实例后,触发数据接入任务;物联网设备基于kubernetes API接口将其设备数据上传至kubernetes集群数据库中;通过kubernetes API接口为第三方提供数据查询接口。

Description

物联网设备接入方法及系统
技术领域
本发明涉及物联网技术领域,具体地说是物联网设备接入方法及系统。
背景技术
物联网设备的快速接入是物联网系统中的关键挑战之一,传统的设备接入方法通常需要大量的手动配置和管理,而这不仅耗时耗力,还容易导致错误。Kubernetes是一种用于容器编排和自动化管理的流行平台,但其本身并不直接支持物联网设备的管理,如何基于Kubernetes CRD实现物联网设备的快速接入,是需要解决的技术问题。
发明内容
本发明的技术任务是针对以上不足,提供物联网设备接入方法及系统,来解决如何基于Kubernetes CRD实现物联网设备的快速接入的技术问题。
第一方面,本发明一种物联网设备接入方法,包括如下步骤:
基于OpenAPI规范定义设备描述文件,所述设备描述文件中包括物联网设备的基本信息、数据接口、控制接口以及存储卷配置,其中基本信息包括物联网设备的设备类型和设备属性;
基于设备描述文件开发CRD控制器,所述CRD控制器用于解析设备描述文件,并监听设备描述文件实例的创建和变更事件;
开发物联网协议插件,并将物联网协议插件接入kubernetes集群,物联网协议插件用于将不同类型的物联网设备接入kubernetes集群;
对于要接入的物联网设备,基于设备描述文件配置设备描述文件实例,并基于物联网协议插件将物联网设备接入kubernetes集群,CRD控制器监听到新的设备描述文件实例后,触发数据接入任务;
执行数据接入任务时,物联网设备基于kubernetes API接口将其设备数据上传至kubernetes集群数据库中;
对于存储于kubernetes集群数据库中的设备数据,通过kubernetes API接口为第三方提供数据查询接口。
作为优选,所述设备描述文件用于以YAML文件形式描述物联网设备的自定义资源,自定义资源内容包括名称信息、设备基本信息、数据接口列表、控制接口列表以及存储卷配置,名称信息包括名称和命名空间,设备基本信息包括设备ID、设备名称以及设备厂商,数据接口列表包括接口标准、传输协议以及URL,控制接口列表包括接口标准、传输协议以及URL。
作为优选,基于Go或Phython语言开发CRD控制器,所述CRD控制器包括:
初始化模块,所述初始化模块用于注册CRD控制器,并连接kubernetes集群;
事件监听模块,所述事件监听模块用于监听设备描述文件实例的创建、更新、删除事件;
数据接入模块,所述数据接入模块用于根据dataInterface定义调用物联网设备的数据接口,基于数据接口获取实时数据;
数据处理模块,所述数据处理模块用于对获取的设备描述文件以及设备描述文件实例解析,对于通过数据接入模块获取的实时数据,用于解析不同协议的数据转换为标准格式,得到标准格式的数据;
数据存储模块,所述数据存储模块用于将标准格式的数据存储至指定数据库,数据库包括时序数据库;
控制模块,所述控制模块用于根据controlInterface发送控制指令。
作为优选,将物联网协议插件接入kubernetes集群,包括如下步骤:
物联网协议插件获取Kubernetes集群的API地址和凭证;
基于Kubernetes集群的API地址和凭证,物联网协议插件连接至Kubernetes集群;
物联网协议插件注册到Kubernetes API接口;
物联网协议插件提供设备描述文件的生成工具、Kubernetes CRD的生成工具、数据接口的实现;
基于物联网协议插件将物联网设备接入kubernetes集群,包括如下步骤:
物联网设备获取Kubernetes集群的API地址和凭证;
基于Kubernetes集群的API地址和凭证,物联网设备连接到Kubernetes集群;
物联网设备创建Kubernetes CRD;
物联网设备向Kubernetes CRD中注册设备信息。
作为优选,执行数据接入任务时,对于具有访问权限的设备数据,CRD控制器调用物联网设备的数据接口获取实时数据,对获取的数据进行标准格式转换后存储至Kubernetes集群指定数据库中;
对于存储于kubernetes集群数据库中的设备数据,如果设备数据具有访问权限,配置对应的数据访问接口,通过数据访问接口为第三方提供数据查询接口。
第二方面,本发明一种物联网设备接入系统,用于通过如第一方面任一项所述的一种物联网设备接入方法实现物联网设备接入,所述系统包括描述文件定义模块、CRD开发模块、插件开发模块、设备接入模块、数据接入模块以及数据透出模块;
所述描述文件定义模块用于执行如下:基于OpenAPI规范定义设备描述文件,所述设备描述文件中包括物联网设备的基本信息、数据接口、控制接口以及存储卷配置,其中基本信息包括物联网设备的设备类型和设备属性;
所述CRD开发模块用于执行如下:基于设备描述文件开发CRD控制器,所述CRD控制器用于解析设备描述文件,并监听设备描述文件实例的创建和变更事件;
所述插件开发模块用于执行如下:开发物联网协议插件,并将物联网协议插件接入kubernetes集群,物联网协议插件用于将不同类型的物联网设备接入kubernetes集群;
所述设备接入模块用于执行如下:对于要接入的物联网设备,基于设备描述文件配置设备描述文件实例,并基于物联网协议插件将物联网设备接入kubernetes集群,CRD控制器监听到新的设备描述文件实例后,触发数据接入任务;
所述数据接入模块用于执行如下:执行数据接入任务时,调用物联网设备基于kubernetes API接口将其设备数据上传至kubernetes集群数据库中;
所述数据透出模块用于执行如下:对于存储于kubernetes集群数据库中的设备数据,通过kubernetes API接口为第三方提供数据查询接口。
作为优选,所述设备描述文件用于以YAML文件形式描述物联网设备的自定义资源,自定义资源内容包括名称信息、设备基本信息、数据接口列表、控制接口列表以及存储卷配置,名称信息包括名称和命名空间,设备基本信息包括设备ID、设备名称以及设备厂商,数据接口列表包括接口标准、传输协议以及URL,控制接口列表包括接口标准、传输协议以及URL.
作为优选,所述CRD开发模块用于基于Go或Phython语言开发CRD控制器,所述CRD控制器包括:
初始化模块,所述初始化模块用于注册CRD控制器,并连接kubernetes集群;
事件监听模块,所述事件监听模块用于监听设备描述文件实例的创建、更新、删除事件;
数据接入模块,所述数据接入模块用于根据dataInterface定义调用物联网设备的数据接口,基于数据接口获取实时数据;
数据处理模块,所述数据处理模块用于对获取的设备描述文件以及设备描述文件实例解析,对于通过数据接入模块获取的实时数据,用于解析不同协议的数据转换为标准格式,得到标准格式的数据;
数据存储模块,所述数据存储模块用于将标准格式的数据存储至指定数据库,数据库包括时序数据库;
控制模块,所述控制模块用于根据controlInterface发送控制指令。
作为优选,所述插件接入模块用于执行如下将物联网协议插件接入kubernetes集群:
物联网协议插件获取Kubernetes集群的API地址和凭证;
基于Kubernetes集群的API地址和凭证,物联网协议插件连接至Kubernetes集群;
物联网协议插件注册到Kubernetes API接口;
物联网协议插件提供设备描述文件的生成工具、Kubernetes CRD的生成工具、数据接口的实现;
所述设备接入模块用于执行如下将物联网设备接入kubernetes集群:
物联网设备获取Kubernetes集群的API地址和凭证;
基于Kubernetes集群的API地址和凭证,物联网设备连接到Kubernetes集群;
物联网设备创建Kubernetes CRD;
物联网设备向Kubernetes CRD中注册设备信息。
作为优选,执行数据接入任务时,对于具有访问权限的设备数据,所述数据接入模块用于执行如下:通过CRD控制器调用物联网设备的数据接口获取实时数据,对获取的数据进行标准格式转换后存储至Kubernetes集群指定数据库中;
对于存储于kubernetes集群数据库中的设备数据,如果设备数据具有访问权限,所述数据透出模块用于执行如下:配置对应的数据访问接口,通过数据访问接口为第三方提供数据查询接口。
本发明的基于Kubernetes CRD的物联网设备接入方法具有以下优点:
1、基于定义的设备描述文件创建设备描述文件实例,基于开发的物联网插件将不同类型的物联网设备接入kubernetes集群,通过开发的CRD控制器监听到新的设备描述文件实例后,触发数据接入,物联网设备可通过kubernetesPAI将其设备数据上传存储至kubernetes集群数据库中,并通过kubernetesAPI提供第三方数据查询接口,实现了物联网设备的接入以及数据的透出;
2、执行数据接入任务时,对于具有访问权限的设备数据,CRD控制器调用物联网设备的数据接口获取实时数据,对获取的数据进行标准格式转换后存储至Kubernetes集群指定数据库中,通过上述方式提供了特殊场景下物联网设备数据的上传;
3、对于存储于kubernetes集群数据库中的设备数据,如果设备数据具有访问权限,配置对应的数据访问接口,通过数据访问接口为第三方提供数据查询接口,通过上述方式提供了特殊场景下数据的透出。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
下面结合附图对本发明进一步说明。
图1为实施例1一种物联网设备接入方法的流程框图;
图2为实施例1一种物联网设备接入方法的原理框图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互结合。
本发明实施例提供物联网设备接入方法及系统,用于解决如何基于KubernetesCRD实现物联网设备的快速接入的技术问题。
实施例1:
本发明一种物联网设备接入方法,包括描述文件定义、CRD开发、插件开发、设备接入、数据接入以及数据透出六个步骤。
步骤S100描述文件定义:基于OpenAPI规范定义设备描述文件,所述设备描述文件中包括物联网设备的基本信息、数据接口、控制接口以及存储卷配置,其中基本信息包括物联网设备的设备类型和设备属性。
作为设备描述文件的具体实施,设备描述文件用于以YAML文件形式描述物联网设备的自定义资源,自定义资源内容包括名称信息、设备基本信息、数据接口列表、控制接口列表以及存储卷配置,名称信息包括名称和命名空间,设备基本信息包括设备ID、设备名称以及设备厂商,数据接口列表包括接口标准、传输协议以及URL,控制接口列表包括接口标准、传输协议以及URL。
本实施例中设备描述文件包含设备的类型、属性、接口等信息,设备类型用于标识设备的类型,例如传感器、执行器等;设备属性用于描述设备的状态、配置等信息;设备接口用于描述设备的通信接口,例如MQTT、HTTP等。
设备描述文件的内容包括如下:
(1)metadata:名称、命名空间等基本信息;
(2)spec:设备基本信息,如设备ID、名称、厂商信息等;
(3)dataInterface:数据接口列表,定义接口标准、传输协议、URL等信息;
(4)controlInterface:控制接口列表,定义接口标准、传输协议、URL等信息;
(5)storageVolumes:存储卷配置。
一个TEMP001温度采集设备的自定义资源文件示例如下:
apiVersion:iot.com/vlkind:IOTDevice
metadata:
name:temp-sensor
namespace:default
spec:
deviceId:TEMPO01
deviceName:Temperature Sensor 1
manufacturer:XYZ
location:Room 1-A
dataInterface:
name:temperature
standard:MODBUS
protocol:TCP
url:tcp://192.168.1.1:502
register:0x12
controlInterface:
name:alarm
standard:OPC-UAprotocol:MOTT
topic:temp/alarm
storageVolumes:
timeseriesdb:
mountPath:/data
步骤S200CRD开发:基于设备描述文件开发CRD控制器,所述CRD控制器用于解析设备描述文件,并监听设备描述文件实例的创建和变更事件。
作为CRD开发的具体实施,本实施例基于Go或Phython语言开发CRD控制器。CRD控制器包括初始化模块、事件监听模块、数据接入模块、数据处理模块、数据存储模块以及控制模块。
初始化模块:用于注册CRD控制器,并连接kubernetes集群。
事件监听模块:用于监听设备描述文件实例的创建、更新、删除事件。
数据接入模块:用于根据dataInterface定义调用物联网设备的数据接口,基于数据接口获取实时数据。
数据处理模块:用于对获取的设备描述文件以及设备描述文件实例解析,对于通过数据接入模块获取的实时数据,用于解析不同协议的数据转换为标准格式,得到标准格式的数据。
数据存储模块:用于将标准格式的数据存储至指定数据库,数据库包括时序数据库。
控制模块:用于根据controlInterface发送控制指令。
本实施例中,CRD控制器工作的关键逻辑为数据接入和存储,伪码如下:
初始化客户端,监听事件
当实例创建事件发生:
获取实例定义
对每个数据接口
调用接口获取原始数据
解析数据,提取关键字段
转换为JSON格式
写入时序数据库
当实例删除事件发生:
删除存储的数据和相关资源。
步骤S300插件开发:开发物联网协议插件,并将物联网协议插件接入kubernetes集群,物联网协议插件用于将不同类型的物联网设备接入kubernetes集群。
本实施例中,物联网协议插件可以通过以下步骤接入Kubernetes:
(1)物联网协议addon获取Kubernetes集群的API地址和凭证。
(2)物联网协议addon使用API地址和凭证连接到Kubernetes集群。
(3)物联网协议addon注册到Kubernetes API接口。
(4)物联网协议addon提供设备描述文件的生成工具、Kubernetes CRD的生成工具、数据接口的实现。
步骤S400设备接入:对于要接入的物联网设备,基于设备描述文件配置设备描述文件实例,并基于物联网协议插件将物联网设备接入kubernetes集群,CRD控制器监听到新的设备描述文件实例后,触发数据接入任务。
本实施例中物联网设备接入本时,创建该物联网设备的CR实例(设备描述文件实例),即IOTDevice对象。kubernetes集群对应的平台会加载该自定义资源对象,根据其定义启动数据接入任务,随即该物联网设备即被接入,平台开始持续获取并存储其实时数据。物联网设备可以通过以下步骤接入Kubernetes集群:
(1)物联网设备获取Kubernetes集群的API地址和凭证;
(2)基于Kubernetes集群的API地址和凭证,物联网设备连接到Kubernetes集群;
(3)物联网设备创建Kubernetes CRD;
(4)物联网设备向Kubernetes CRD中注册设备信息。
步骤S500数据接入:执行数据接入任务时,物联网设备基于kubernetes API接口将其设备数据上传至kubernetes集群数据库中。
本实施例中,物联网设备的设备数据上传,可直接将数据上传到Kubernetes API接口.
作为改进,执行数据接入任务时,对于具有访问权限的设备数据,CRD控制器调用物联网设备的数据接口获取实时数据,对获取的数据进行标准格式转换后存储至Kubernetes集群指定数据库中。
步骤S600数据透出:对于存储于kubernetes集群数据库中的设备数据,通过kubernetes API接口为第三方提供数据查询接口。
本实施例中,物联网设备的数据可以通过以下方式透出给用户:通过KubernetesAPI接口查询设备数据。
对于存储于kubernetes集群数据库中的设备数据,如果设备数据具有访问权限,配置对应的数据访问接口,通过数据访问接口为第三方提供数据查询接口。即对于具有访问权限的设备数据,可根据场景需求配置数据访问接口,第三方通过指定的数据访问接口查询设备数据。
实施例2:
本发明一种物联网设备接入系统,包括描述文件定义模块、CRD开发模块、插件开发模块、设备接入模块、数据接入模块以及数据透出模块,该系统可执行实施例1公开的方法。
描述文件定义模块用于执行如下:基于OpenAPI规范定义设备描述文件,所述设备描述文件中包括物联网设备的基本信息、数据接口、控制接口以及存储卷配置,其中基本信息包括物联网设备的设备类型和设备属性。
作为设备描述文件的具体实施,设备描述文件用于以YAML文件形式描述物联网设备的自定义资源,自定义资源内容包括名称信息、设备基本信息、数据接口列表、控制接口列表以及存储卷配置,名称信息包括名称和命名空间,设备基本信息包括设备ID、设备名称以及设备厂商,数据接口列表包括接口标准、传输协议以及URL,控制接口列表包括接口标准、传输协议以及URL。
本实施例中设备描述文件包含设备的类型、属性、接口等信息,设备类型用于标识设备的类型,例如传感器、执行器等;设备属性用于描述设备的状态、配置等信息;设备接口用于描述设备的通信接口,例如MQTT、HTTP等。
设备描述文件的内容包括如下:
(1)metadata:名称、命名空间等基本信息;
(2)spec:设备基本信息,如设备ID、名称、厂商信息等;
(3)dataInterface:数据接口列表,定义接口标准、传输协议、URL等信息;
(4)controlInterface:控制接口列表,定义接口标准、传输协议、URL等信息;
(5)storageVolumes:存储卷配置。
一个TEMP001温度采集设备的自定义资源文件示例如下:
apiVersion:iot.com/vlkind:IOTDevice
metadata:
name:temp-sensor
namespace:default
spec:
deviceId:TEMPO01
deviceName:Temperature Sensor 1
manufacturer:XYZ
location:Room 1-A
dataInterface:
name:temperature
standard:MODBUS
protocol:TCP
url:tcp://192.168.1.1:502
register:0x12
controlInterface:
name:alarm
standard:OPC-UAprotocol:MOTT
topic:temp/alarm
storageVolumes:
timeseriesdb:
mountPath:/data
CRD开发模块用于执行如下:基于设备描述文件开发CRD控制器,所述CRD控制器用于解析设备描述文件,并监听设备描述文件实例的创建和变更事件。
作为CRD开发模块的具体实施,本实施例该模块用于基于Go或Phython语言开发CRD控制器。CRD控制器包括初始化模块、事件监听模块、数据接入模块、数据处理模块、数据存储模块以及控制模块。
初始化模块:用于注册CRD控制器,并连接kubernetes集群。
事件监听模块:用于监听设备描述文件实例的创建、更新、删除事件。
数据接入模块:用于根据dataInterface定义调用物联网设备的数据接口,基于数据接口获取实时数据。
数据处理模块:用于对获取的设备描述文件以及设备描述文件实例解析,对于通过数据接入模块获取的实时数据,用于解析不同协议的数据转换为标准格式,得到标准格式的数据。
数据存储模块:用于将标准格式的数据存储至指定数据库,数据库包括时序数据库。
控制模块:用于根据controlInterface发送控制指令。
本实施例中,CRD控制器工作的关键逻辑为数据接入和存储,伪码如下:
初始化客户端,监听事件
当实例创建事件发生:
获取实例定义
对每个数据接口
调用接口获取原始数据
解析数据,提取关键字段
转换为JSON格式
写入时序数据库
当实例删除事件发生:
删除存储的数据和相关资源。
插件开发模块用于执行如下:开发物联网协议插件,并将物联网协议插件接入kubernetes集群,物联网协议插件用于将不同类型的物联网设备接入kubernetes集群。
本实施例中,插件开发模块用于执行如下实现物联网协议插件接入Kubernetes:
(1)物联网协议addon获取Kubernetes集群的API地址和凭证。
(2)物联网协议addon使用API地址和凭证连接到Kubernetes集群。
(3)物联网协议addon注册到Kubernetes API接口。
(4)物联网协议addon提供设备描述文件的生成工具、Kubernetes CRD的生成工具、数据接口的实现。
设备接入模块用于执行如下:对于要接入的物联网设备,基于设备描述文件配置设备描述文件实例,并基于物联网协议插件将物联网设备接入kubernetes集群,CRD控制器监听到新的设备描述文件实例后,触发数据接入任务。
本实施例中物联网设备接入本时,设备接入模块用于执行如下实现物联网设备接入Kubernetes集群:
(1)物联网设备获取Kubernetes集群的API地址和凭证;
(2)基于Kubernetes集群的API地址和凭证,物联网设备连接到Kubernetes集群;
(3)物联网设备创建Kubernetes CRD;
(4)物联网设备向Kubernetes CRD中注册设备信息。
数据接入模块用于执行如下:执行数据接入任务时,调用物联网设备基于kubernetes API接口将其设备数据上传至kubernetes集群数据库中。
本实施例中,物联网设备的设备数据上传,可直接将数据上传到Kubernetes API接口.
作为改进,执行数据接入任务时,对于具有访问权限的设备数据,数据接入模块用于通过CRD控制器调用物联网设备的数据接口获取实时数据,对获取的数据进行标准格式转换后存储至Kubernetes集群指定数据库中。
数据透出模块用于执行如下:对于存储于kubernetes集群数据库中的设备数据,通过kubernetes API接口为第三方提供数据查询接口。
本实施例中,物联网设备的数据可以通过以下方式透出给用户:通过KubernetesAPI接口查询设备数据。
对于存储于kubernetes集群数据库中的设备数据,如果设备数据具有访问权限,数据透出模块用于配置对应的数据访问接口,通过数据访问接口为第三方提供数据查询接口。即对于具有访问权限的设备数据,可根据场景需求配置数据访问接口,第三方通过指定的数据访问接口查询设备数据。
上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的代码审核手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。

Claims (10)

1.一种物联网设备接入方法,其特征在于,包括如下步骤:
基于OpenAPI规范定义设备描述文件,所述设备描述文件中包括物联网设备的基本信息、数据接口、控制接口以及存储卷配置,其中基本信息包括物联网设备的设备类型和设备属性;
基于设备描述文件开发CRD控制器,所述CRD控制器用于解析设备描述文件,并监听设备描述文件实例的创建和变更事件;
开发物联网协议插件,并将物联网协议插件接入kubernetes集群,物联网协议插件用于将不同类型的物联网设备接入kubernetes集群;
对于要接入的物联网设备,基于设备描述文件配置设备描述文件实例,并基于物联网协议插件将物联网设备接入kubernetes集群,CRD控制器监听到新的设备描述文件实例后,触发数据接入任务;
执行数据接入任务时,物联网设备基于kubernetes API接口将其设备数据上传至kubernetes集群数据库中;
对于存储于kubernetes集群数据库中的设备数据,通过kubernetes API接口为第三方提供数据查询接口。
2.根据权利要求1所述的基于Kubernetes CRD的物联网设备接入方法,其特征在于,所述设备描述文件用于以YAML文件形式描述物联网设备的自定义资源,自定义资源内容包括名称信息、设备基本信息、数据接口列表、控制接口列表以及存储卷配置,名称信息包括名称和命名空间,设备基本信息包括设备ID、设备名称以及设备厂商,数据接口列表包括接口标准、传输协议以及URL,控制接口列表包括接口标准、传输协议以及URL。
3.根据权利要求1所述的基于Kubernetes CRD的物联网设备接入方法,其特征在于,基于Go或Phython语言开发CRD控制器,所述CRD控制器包括:
初始化模块,所述初始化模块用于注册CRD控制器,并连接kubernetes集群;
事件监听模块,所述事件监听模块用于监听设备描述文件实例的创建、更新、删除事件;
数据接入模块,所述数据接入模块用于根据dataInterface定义调用物联网设备的数据接口,基于数据接口获取实时数据;
数据处理模块,所述数据处理模块用于对获取的设备描述文件以及设备描述文件实例解析,对于通过数据接入模块获取的实时数据,用于解析不同协议的数据转换为标准格式,得到标准格式的数据;
数据存储模块,所述数据存储模块用于将标准格式的数据存储至指定数据库,数据库包括时序数据库;
控制模块,所述控制模块用于根据controlInterface发送控制指令。
4.根据权利要求1所述的基于Kubernetes CRD的物联网设备接入方法,其特征在于,将物联网协议插件接入kubernetes集群,包括如下步骤:
物联网协议插件获取Kubernetes集群的API地址和凭证;
基于Kubernetes集群的API地址和凭证,物联网协议插件连接至Kubernetes集群;
物联网协议插件注册到Kubernetes API接口;
物联网协议插件提供设备描述文件的生成工具、Kubernetes CRD的生成工具、数据接口的实现;
基于物联网协议插件将物联网设备接入kubernetes集群,包括如下步骤:
物联网设备获取Kubernetes集群的API地址和凭证;
基于Kubernetes集群的API地址和凭证,物联网设备连接到Kubernetes集群;
物联网设备创建Kubernetes CRD;
物联网设备向Kubernetes CRD中注册设备信息。
5.根据权利要求4所述的基于Kubernetes CRD的物联网设备接入方法,其特征在于,执行数据接入任务时,对于具有访问权限的设备数据,CRD控制器调用物联网设备的数据接口获取实时数据,对获取的数据进行标准格式转换后存储至Kubernetes集群指定数据库中;
对于存储于kubernetes集群数据库中的设备数据,如果设备数据具有访问权限,配置对应的数据访问接口,通过数据访问接口为第三方提供数据查询接口。
6.一种物联网设备接入系统,其特征在于,用于通过如权利要求1-5任一项所述的一种物联网设备接入方法实现物联网设备接入,所述系统包括描述文件定义模块、CRD开发模块、插件开发模块、设备接入模块、数据接入模块以及数据透出模块;
所述描述文件定义模块用于执行如下:基于OpenAPI规范定义设备描述文件,所述设备描述文件中包括物联网设备的基本信息、数据接口、控制接口以及存储卷配置,其中基本信息包括物联网设备的设备类型和设备属性;
所述CRD开发模块用于执行如下:基于设备描述文件开发CRD控制器,所述CRD控制器用于解析设备描述文件,并监听设备描述文件实例的创建和变更事件;
所述插件开发模块用于执行如下:开发物联网协议插件,并将物联网协议插件接入kubernetes集群,物联网协议插件用于将不同类型的物联网设备接入kubernetes集群;
所述设备接入模块用于执行如下:对于要接入的物联网设备,基于设备描述文件配置设备描述文件实例,并基于物联网协议插件将物联网设备接入kubernetes集群,CRD控制器监听到新的设备描述文件实例后,触发数据接入任务;
所述数据接入模块用于执行如下:执行数据接入任务时,调用物联网设备基于kubernetes API接口将其设备数据上传至kubernetes集群数据库中;
所述数据透出模块用于执行如下:对于存储于kubernetes集群数据库中的设备数据,通过kubernetes API接口为第三方提供数据查询接口。
7.根据权利要求6所述的物联网设备接入系统,其特征在于,所述设备描述文件用于以YAML文件形式描述物联网设备的自定义资源,自定义资源内容包括名称信息、设备基本信息、数据接口列表、控制接口列表以及存储卷配置,名称信息包括名称和命名空间,设备基本信息包括设备ID、设备名称以及设备厂商,数据接口列表包括接口标准、传输协议以及URL,控制接口列表包括接口标准、传输协议以及URL。
8.根据权利要求6所述的物联网设备接入系统,其特征在于,所述CRD开发模块用于基于Go或Phython语言开发CRD控制器,所述CRD控制器包括:
初始化模块,所述初始化模块用于注册CRD控制器,并连接kubernetes集群;
事件监听模块,所述事件监听模块用于监听设备描述文件实例的创建、更新、删除事件;
数据接入模块,所述数据接入模块用于根据dataInterface定义调用物联网设备的数据接口,基于数据接口获取实时数据;
数据处理模块,所述数据处理模块用于对获取的设备描述文件以及设备描述文件实例解析,对于通过数据接入模块获取的实时数据,用于解析不同协议的数据转换为标准格式,得到标准格式的数据;
数据存储模块,所述数据存储模块用于将标准格式的数据存储至指定数据库,数据库包括时序数据库;
控制模块,所述控制模块用于根据controlInterface发送控制指令。
9.根据权利要求6所述的物联网设备接入系统,其特征在于,所述插件接入模块用于执行如下将物联网协议插件接入kubernetes集群:
物联网协议插件获取Kubernetes集群的API地址和凭证;
基于Kubernetes集群的API地址和凭证,物联网协议插件连接至Kubernetes集群;
物联网协议插件注册到Kubernetes API接口;
物联网协议插件提供设备描述文件的生成工具、Kubernetes CRD的生成工具、数据接口的实现;
所述设备接入模块用于执行如下将物联网设备接入kubernetes集群:
物联网设备获取Kubernetes集群的API地址和凭证;
基于Kubernetes集群的API地址和凭证,物联网设备连接到Kubernetes集群;
物联网设备创建Kubernetes CRD;
物联网设备向Kubernetes CRD中注册设备信息。
10.根据权利要求9所述的物联网设备接入系统,其特征在于,执行数据接入任务时,对于具有访问权限的设备数据,所述数据接入模块用于执行如下:通过CRD控制器调用物联网设备的数据接口获取实时数据,对获取的数据进行标准格式转换后存储至Kubernetes集群指定数据库中;
对于存储于kubernetes集群数据库中的设备数据,如果设备数据具有访问权限,所述数据透出模块用于执行如下:配置对应的数据访问接口,通过数据访问接口为第三方提供数据查询接口。
CN202311595401.1A 2023-11-27 2023-11-27 物联网设备接入方法及系统 Pending CN117675887A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311595401.1A CN117675887A (zh) 2023-11-27 2023-11-27 物联网设备接入方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311595401.1A CN117675887A (zh) 2023-11-27 2023-11-27 物联网设备接入方法及系统

Publications (1)

Publication Number Publication Date
CN117675887A true CN117675887A (zh) 2024-03-08

Family

ID=90085656

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311595401.1A Pending CN117675887A (zh) 2023-11-27 2023-11-27 物联网设备接入方法及系统

Country Status (1)

Country Link
CN (1) CN117675887A (zh)

Similar Documents

Publication Publication Date Title
EP3042254B1 (en) Systems and methods for virtualizing a programmable logic controller
JP6201917B2 (ja) フィールドデバイスを設定するためのシステムおよび方法
JP2003288280A (ja) コンテクスト情報提供システムおよび方法
CN111556158B (zh) 物联网平台的接入方法、接入装置、接入设备及存储介质
CN113039498A (zh) 在工业系统网络中调试现场设备的方法
US20210406037A1 (en) Field device configuration tool
US20140108515A1 (en) System and method for sharing data stored in a database
US20230205503A1 (en) Method for dynamically integrating application programs, and software system and machine using the same
CN103548321A (zh) 信息处理系统、访问权限管理方法、信息处理设备及其控制方法和控制程序
CN115412602A (zh) 一种数字孪生的数据解析流转方法、装置、设备及介质
CN115118794A (zh) 数据标准化的处理方法、装置及电子设备
WO2022156316A1 (zh) 支持异构环境的组态方法及系统
CN114024965B (zh) 基于动态配置的数据输出方法、计算机设备及存储介质
CN111367685A (zh) 接口调用的方法及装置、计算机设备、存储介质
Jin et al. IoT device management architecture based on proxy
CN117675887A (zh) 物联网设备接入方法及系统
JP2022527841A (ja) アドレス空間の選択的集約
Wiczer et al. A Unifying Standard for Interfacing Transducers to Networks–IEEE-1451.0
CN111901209B (zh) 物联网通信方法、物联网通信板、计算机设备及存储介质
CN112764825A (zh) 服务集成系统及相应设备和存储介质
CN113703723A (zh) Autosar架构下基于模型的冻结帧数据实现方法及计算机设备
US20020069201A1 (en) Method for downloading selectable progressive mesh models under the environment of World Wide Web
CN113364636B (zh) 一种物联网数据可视化配置对接的方法
US11811639B2 (en) Cloud agnostic service discovery
US20090100336A1 (en) Methods and systems for communicating data

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