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

基于可视化编程技术的物联网接入方法、系统及存储介质

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


基于可视化编程技术的物联网接入方法、系统及存储介质

技术领域

本发明涉及物联网技术领域,尤其涉及一种基于可视化编程技术的物联网接入方法、系统及存储介质。

背景技术

物联网(Internet of Things,简称IoT)是指通过各种信息传感器、射频识别技术、全球定位系统、红外感应器、激光扫描器等各种装置与技术,实时采集任何需要监控、连接、互动的物体或过程,采集其声、光、热、电、力学、化学、生物、位置等各种需要的信息,通过各类可能的网络接入,实现物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。物联网是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象形成互联互通的网络。

目前物联网设备多元且架构各异,生产厂家众多,构建一个能万物互联的物联网平台需要对接各种各样的设备,但不同的设备有不同的硬件解决方案和不同的平台对接协议。因此如何实现物联网平台对多元异构设备的快速,是亟需解决的问题。

当前的物联网平台,由于设备厂家各异、品类众多,一个平台如果需要对接不同的设备,每个设备对接平台都需要花大量的时间,而且平台架构复杂臃肿、设备扩展不易、调试困难。

发明内容

本发明提供一种基于可视化编程技术的物联网接入方法、系统及存储介质,解决了现有的物联网平台设备接入方式难度高、接入速度慢和调试困难的技术问题。

为解决以上技术问题,本发明提供一种基于可视化编程技术的物联网接入方法,包括步骤:

S1、通过可视化编程平台封装command节点,并保存在工具栏中;

S2、获取待接入设备的设备信息;

S3、根据所述设备信息,在物联网管理平台中创建对应所述待接入设备的设备模型;

S4、从所述工具栏中获取对应的设备网络协议节点,根据对应的对接协议建立物联网管理平台与所述待接入设备的通信链接;

S5、从所述工具栏获取command节点,并在所述可视化编程平台上可视化的扩展子命令,在线编辑脚本转换逻辑;

S6、发布驱动,执行所述待接入设备与所述物联网管理平台的接入测试,若测试通过则保存流程,并将流程部署到所述物联网管理平台。

在进一步的实施方案中,所述步骤S2包括步骤:

S21、获取待接入设备的网络通信协议;

S22、确定所述待接入设备的上行指令信息、下行指令信息;

S23、获取所述待接入设备的设备密钥及唯一识别码。

在进一步的实施方案中,所述步骤S3包括步骤:

S31、根据所述待接入设备的设备密钥、唯一识别码,在物联网管理平台新建设备产品;

S32、导入所述设备信息,并基于所述设备产品创建设备模型;

S33、对每一设备模型的上行指令信息、下行指令信息、网络通信协议进行审核,若审核通过则执行步骤S4,否则结束对应所述待接入设备的接入进程。

在进一步的实施方案中,所述步骤S4包括步骤:

S41、在可视化编程平台的可视化编辑界面中,创建一个新的对接线程并执行;

S42、在可视化编辑界面编辑所述待接入设备的设备信息;

S43、从所述工具栏中获取对应的网络协议节点,用于处理设备通信和协议转换;

S44、根据所述待接入设备的通信协议和数据格式,配置每一所述网络协议节点,进而建立物联网管理平台与所述待接入设备的通信链接。

在进一步的实施方案中,所述网络协议节点包括输入节点、处理节点、输出节点中的一种或多种;

所述输入节点,用于接收所述待接入设备发送的数据;

所述处理节点,用于解析、转换和处理所述待接入设备的设备数据;

所述输出节点,用于将处理后的数据发送给其他系统或设备。

在进一步的实施方案中,所述步骤S5包括步骤:

S51、从所述工具栏拖曳command节点到可视化编辑界面;

S52、对所述command节点进行参数配置,指定所述待接入设备的设备接入协议、协议内容;

S53、对所述command节点进行子命令扩展,并对每一所述子命令进行在线脚本转换逻辑编辑。

本方案中的可视化编程平台基于开源免费Node-Red平台,在此基础上进行封装和二次开发,并通过链接集成的方式集成进物联网平台,进而通过可视化编程平台封装command节点,也就是通用物联网设备通用命令节点用来提供快速开发能力,在每次接入待接入设备时直接从编辑界面拖曳command节点,进行节点配置和子命令扩展,在命令节点在线编辑脚本转换逻辑,就可以通过可视化脚本对接不同设备。这样不同的设备,即使具备不同的异构网络协议、不同的协议内容,也可以通过可视化编程平台统一转换接入,只需要在线编辑几行代码即可动态接入,无须像其他编程平台经历开发、部署、调试、上线、测试等繁琐的流程。

在进一步的实施方案中,所述发布驱动包括步骤:

A1、根据所述设备信息创建设备型号,并编辑设备型号定义;

A2、创建驱动,并设置对应的状态检查策略;

A3、启动驱动,并开发驱动进行上行调试和下行调试,并发布;

所述上行调试包括通过postman模拟上报或直接使用设备上报;所述下行调试包括下发指令只至其它设备。

在进一步的实施方案中,所述执行所述待接入设备与所述物联网管理平台的接入测试包括步骤:

B1、将每一所述待接入设备进行联调对接,利用java语言与JavaScript语言的相互调用机制,动态加载不同的所述设备;

B2、获取设备驱动消息,并在线打印消息指令;

B3、根据消息指令在可视化编程平台进行调试,若调试失败则修复错误指令,并将正确指令保存到数据库中;

B4、所述可视化编程平台通过可视化编辑界面将消息指令发送到目标设备,若设备正常响应则接入测试成功。

本发明的有益效果如下:

(1)采用开源的物联网编辑工具Node-RED提供的可视化编程平台,实现物联网平台设备的可视化接入,基于流程规则的低代码编程,底层使用的Nodejs作为服务端,支持在线安装卸载第三方依赖包,支持以json文件的流导入导出;通过引入在线可视化编程平台处理不同的设备接入协议,提供低门槛的技术接入、高性能的数据处理能力,设备接入过程全程可视化操作;

(2)提供拖拽式WEB-IDE来编辑物联网流程,利用BS架构的WEB编辑器来简化物联网各种数据流的操作,支持海量多元异构设备快速接入,采用云原生微服务分布式架构和先进的容器管理技术,使系统具备快速的指数级扩容能力;

(3)将常用工具(command节点、网络协议节点)以及流程封装于工具箱,拖拽即用,JS脚本开发快速简单。

本发明提供一种基于可视化编程技术的物联网接入系统,应用于上述的一种基于可视化编程技术的物联网接入方法,包括数据存储层、物联网可视化编程中间件层、物联网综合应用管理层、前端层;

所述数据存储层,基于Mysql、Mongodb、MinIO和Redis等方式对外提供结构化、半结构化、非结构化和对象数据、空间数据的有效管理和存储,构建不同类型的数据库;

所述物联网可视化编程中间件层,用于封装command节点,并保存在工具栏中;

所述物联网综合应用管理层,用于获取待接入设备的设备信息,并根据所述设备信息,创建对应所述待接入设备的设备模型;

所述物联网可视化编程中间件层,用于从所述工具栏中获取对应的设备网络协议节点,根据对应的对接协议建立物联网管理平台与所述待接入设备的通信链接;从所述工具栏获取command节点,并可视化的扩展子命令在线编辑脚本转换逻辑;

所述物联网综合应用管理层,用于发布驱动,执行所述待接入设备的接入测试,若测试通过则保存流程并进行部署;

所述前端层,用于提供前端访问。

本发明的有益效果如下:

(1)通过设置数据存储层构建不同类型的数据库,利用分布式计算等技术实现对数据的分析利用和高可靠协同服务;

(2)设置物联网可视化编程中间件层,支持海量多元异构设备接入的物联网可视化编程中间件平台,提供了基础数据标准、设备类型、设备型号、设备驱动和接入设备数据定义。向上层应用提供统一的数据分发、共享通道。建立统一的物联网数据库、数据共享机制和数据分发通道;

(3)将基于开源免费Node-Red平台的可视化编程平台,进行封装和二次开发,并通过链接集成的方式集成进物联网平台,实现对物联网设备接入的可视化编辑;

(4)利用物联网综合应用管理层定期监控设备通信和协议转换的情况。在出现问题或版本改进时,直接返回到Node-RED编辑界面中进行修改,可有效降低监控和维护成本。

本发明提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述的一种基于可视化编程技术的物联网接入方法。其中,存储介质可以是磁碟、光盘、只读存储器(Read OnlyMemory,ROM)或者随机存取器(Random Access Memory,RAM)等。

附图说明

图1是本发明实施例提供的一种基于可视化编程技术的物联网接入方法的工作流程图;

图2是本发明实施例提供的可视化编程平台在线导入设备流程图;

图3是本发明实施例提供的通过拖拽式编码对一个传感器设备进行对接的可视化流程图;

图4是本发明实施例提供的可视化编辑其中一个节点消息处理脚本的示意图;

图5是本发明实施例提供的在可视化编辑界面编辑待接入设备的设备信息的示意图;

图6是本发明实施例提供的网络协议节点选择示意图;

图7是本发明实施例提供的网络协议节点配置示意图;

图8是本发明实施例提供的一种基于可视化编程技术的物联网接入系统的系统框架图。

具体实施方式

下面结合附图具体阐明本发明的实施方式,实施例的给出仅仅是为了说明目的,并不能理解为对本发明的限定,包括附图仅供参考和说明使用,不构成对本发明专利保护范围的限制,因为在不脱离本发明精神和范围基础上,可以对本发明进行许多改变。

实施例1

本发明实施例提供的一种基于可视化编程技术的物联网接入方法及系统,如图1~图7所示,在本实施例中,包括步骤S1~S6:

S1、通过可视化编程平台封装command节点,并保存在工具栏中;

S2、获取待接入设备的设备信息,包括步骤S21~S23:

S21、获取待接入设备的网络通信协议;

S22、确定待接入设备的上行指令信息、下行指令信息;

S23、获取待接入设备的设备密钥及唯一识别码。

S3、根据设备信息,在物联网管理平台中创建对应待接入设备的设备模型,包括步骤S31~S33:

S31、根据待接入设备的设备密钥、唯一识别码,在物联网管理平台新建设备产品;

S32、导入设备信息,并基于设备产品创建设备模型;

S33、对每一设备模型的上行指令信息、下行指令信息、网络通信协议进行审核,若审核通过则执行步骤S4,否则结束对应待接入设备的接入进程。

S4、从工具栏中获取对应的设备网络协议节点,根据对应的对接协议建立物联网管理平台与待接入设备的通信链接,包括步骤S41~S44:

S41、在可视化编程平台的可视化编辑界面中,创建一个新的对接线程并执行;

S42、在可视化编辑界面编辑待接入设备的设备信息;

S43、从工具栏中获取对应的网络协议节点,用于处理设备通信和协议转换;

在本实施例中,网络协议节点包括输入节点、处理节点、输出节点中的一种或多种;

输入节点,用于接收待接入设备发送的数据;例如MQTT输入节点用于接收MQTT消息。

处理节点,用于解析、转换和处理待接入设备的设备数据;例如使用Function节点来编写JavaScript代码来处理数据。

输出节点,用于将处理后的数据发送给其他系统或设备;例如,使用HTTP请求节点将数据发送到另一个服务。

S44、根据待接入设备的通信协议和数据格式,配置每一网络协议节点,进而建立物联网管理平台与待接入设备的通信链接。

例如,如果待接入设备使用MQTT协议,就需要配置MQTT输入和输出节点的主题、服务器等信息。

S5、从工具栏获取command节点,并在可视化编程平台上可视化的扩展子命令,在线编辑脚本转换逻辑,包括步骤S51~S53:

S51、从工具栏拖曳command节点到可视化编辑界面;

S52、对command节点进行参数配置,指定待接入设备的设备接入协议、协议内容;

具体的,配置command指令时可以指定不同的设备接入协议,包含http,mqtt,udp,tcp等不同的网络接入协议,指令下发的内容msg.payload中必包括deviceUid、commandId、deviceId、downlinkCode四个参数,其他参数根据设备型号downlinkCode的值中下行指令参数决定。

S53、对command节点进行子命令扩展,并对每一子命令进行在线脚本转换逻辑编辑。

本实施例中的可视化编程平台基于开源免费Node-Red平台,在此基础上进行封装和二次开发,并通过链接集成的方式集成进物联网平台,进而通过可视化编程平台封装command节点,也就是通用物联网设备通用命令节点用来提供快速开发能力,在每次接入待接入设备时直接从编辑界面拖曳command节点,进行节点配置和子命令扩展,在命令节点在线编辑脚本转换逻辑,就可以通过可视化脚本对接不同设备。这样不同的设备,即使具备不同的异构网络协议、不同的协议内容,也可以通过可视化编程平台统一转换接入,只需要在线编辑几行代码即可动态接入,无须像其他编程平台经历开发、部署、调试、上线、测试等繁琐的流程。

S6、发布驱动,执行待接入设备与物联网管理平台的接入测试,若测试通过则保存流程,并将流程部署到物联网管理平台。

在本实施例中,发布驱动包括步骤A1~A3:

A1、根据设备信息创建设备型号,并编辑设备型号定义;

A2、创建驱动,并设置对应的状态检查策略;

A3、启动驱动,并开发驱动进行上行调试和下行调试,并发布;

其中,上行调试包括通过postman模拟上报或直接使用设备上报;下行调试包括下发指令只至其它设备。

在进一步的实施方案中,执行待接入设备与物联网管理平台的接入测试包括步骤B1~B4:

B1、将每一待接入设备进行联调对接,利用java语言与JavaScript语言的相互调用机制,动态加载不同的设备;

具体为:定义物联网对接的通用javaSDK组件,javaSDK组件有多个;JavaScript语言调用javaSDK组件,对设备进行边缘计算;根据边缘计算动态加载不同的设备。

B2、获取设备驱动消息,并在线打印消息指令;

B3、根据消息指令在可视化编程平台进行调试,若调试失败则修复错误指令,并将正确指令保存到数据库中;

根据消息指令在可视化编程平台进行调试为,通过使用可视化平台提供的调试工具检查数据流以及节点之间的数据传递情况。

B4、可视化编程平台通过可视化编辑界面将消息指令发送到目标设备,若设备正常响应则接入测试成功。

本发明实施例的有益效果如下:

(1)采用开源的物联网编辑工具Node-RED提供的可视化编程平台,实现物联网平台设备的可视化接入,基于流程规则的低代码编程,底层使用的Nodejs作为服务端,支持在线安装卸载第三方依赖包,支持以json文件的流导入导出;通过引入在线可视化编程平台处理不同的设备接入协议,提供低门槛的技术接入、高性能的数据处理能力,设备接入过程全程可视化操作;

(2)提供拖拽式WEB-IDE来编辑物联网流程,利用BS架构的WEB编辑器来简化物联网各种数据流的操作,支持海量多元异构设备快速接入,采用云原生微服务分布式架构和先进的容器管理技术,使系统具备快速的指数级扩容能力;

(3)将常用工具(command节点、网络协议节点)以及流程封装于工具箱,拖拽即用,JS脚本开发快速简单。

实施例2

本发明实施例提供一种基于可视化编程技术的物联网接入系统,应用于上述实施例1中的一种基于可视化编程技术的物联网接入方法,参见图8,包括设备终端层、基础设施层、设备接入、数据存储层、物联网可视化编程中间件层、基础服务层、物联网综合应用管理层、前端层。

设备终端层、基础设施层、设备接入、数据存储层、物联网可视化编程中间件层、基础服务层、物联网综合应用管理层、前端层构建得到分层架构体系的物联网平台。

数据存储层,基于Mysql、Mongodb、MinIO和Redis等方式对外提供结构化、半结构化、非结构化和对象数据、空间数据的有效管理和存储,构建不同类型的数据库。

具体的,上述数据库包括时序数据库、文件数据库、关系数库及NoSQL数据库中的一种或多种。

物联网可视化编程中间件层,用于封装command节点,并保存在工具栏中;

物联网综合应用管理层,用于获取待接入设备的设备信息,并根据设备信息,创建对应待接入设备的设备模型;

物联网可视化编程中间件层,用于从工具栏中获取对应的设备网络协议节点,根据对应的对接协议建立物联网管理平台与待接入设备的通信链接;从工具栏获取command节点,并可视化的扩展子命令在线编辑脚本转换逻辑;

物联网综合应用管理层,用于发布驱动,执行待接入设备的接入测试,若测试通过则保存流程并进行部署;

其中,物联网综合应用管理层还用于:提供照明领域综合解决方案,支持PLC、BPLC、NB等设备的应用管理,大屏展示、智能告警、统计分析、运维工单等服务。

前端层用于提供大屏、PC、移动端、OpenAPI等形式多样的前端访问。

本发明还包括:

设备终端层:主要为设备终端的网络等设备环境;

基础设施层:主要为计算、存储、网络以及服务器操作系统等信息化基础环境资源,包含私有云或者公有云。

设备接入:主要是设备终端与平台集成方式,提供了设备直连、系统对接方案,便于不同设备终端的上云。

基础服务层:提供基础共性业务服务,提供统一的业务规则引擎、工作流引擎、自定义报表、自定义权限、元数据管理等服务。

本发明实施例的有益效果如下:

(1)通过设置数据存储层构建不同类型的数据库,利用分布式计算等技术实现对数据的分析利用和高可靠协同服务;

(2)设置物联网可视化编程中间件层,支持海量多元异构设备接入的物联网可视化编程中间件平台,提供了基础数据标准、设备类型、设备型号、设备驱动和接入设备数据定义。向上层应用提供统一的数据分发、共享通道。建立统一的物联网数据库、数据共享机制和数据分发通道;

(3)将基于开源免费Node-Red平台的可视化编程平台,进行封装和二次开发,并通过链接集成的方式集成进物联网平台,实现对物联网设备接入的可视化编辑;

(4)利用物联网综合应用管理层定期监控设备通信和协议转换的情况。在出现问题或版本改进时,直接返回到Node-RED编辑界面中进行修改,可有效降低监控和维护成本。

实施例3

本发明实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述实施例1中的一种基于可视化编程技术的物联网接入方法。其中,存储介质可以是磁碟、光盘、只读存储器(Read OnlyMemory,ROM)或者随机存取器(Random Access Memory,RAM)等。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

相关技术
  • 屏幕显示方向控制方法、装置、移动终端及可读存储介质
  • 用于媒体会话的重试时间确定方法及装置、存储介质、终端
  • RTB出价胜出率确定方法及装置、存储介质、终端
  • 确定方法、装置、服务器、移动终端和可读存储介质
  • 一种美容方案确定方法、装置、服务器、用户终端、美容仪及存储介质
  • 声源方向确定方法、装置、终端以及存储介质
  • 声源方向确定方法、装置、终端、存储介质及产品
技术分类

06120116562785