CN113726762A - 基于配置文件的物联网设备协议解析方法 - Google Patents

基于配置文件的物联网设备协议解析方法 Download PDF

Info

Publication number
CN113726762A
CN113726762A CN202110992266.9A CN202110992266A CN113726762A CN 113726762 A CN113726762 A CN 113726762A CN 202110992266 A CN202110992266 A CN 202110992266A CN 113726762 A CN113726762 A CN 113726762A
Authority
CN
China
Prior art keywords
internet
data
things
equipment
things equipment
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
CN202110992266.9A
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.)
Sichuan Changhong Network Technology Co Ltd
Original Assignee
Sichuan Changhong Network 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 Sichuan Changhong Network Technology Co Ltd filed Critical Sichuan Changhong Network Technology Co Ltd
Priority to CN202110992266.9A priority Critical patent/CN113726762A/zh
Publication of CN113726762A publication Critical patent/CN113726762A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Abstract

本发明涉及物联网技术领域,公开了一种基于配置文件的物联网设备协议解析方法,旨在解决现有的不同协议的物联网设备导致的入网困难的问题,包括:在网关设备中预置物联网设备对应的JSON配置文件,并建立用于对JSON配置文件进行解析的功能引擎;功能引擎启动后,加载所有JSON配置文件,解析得到各JSON配置文件中的通用解析配置和各URI标识符号对应的解析规则并将其保存至内存中;在物联网设备和网关设备之间进行数据传输之前,功能引擎先获取数据,并根据通用解析配置对数据通用部分进行解析,得到数据对应的URI标识符号,根据该URI标识符号在内存中对应的解析规则解析数据。本发明降低了不同协议的物联网设备入网难度。

Description

基于配置文件的物联网设备协议解析方法
技术领域
本发明涉及物联网技术领域,具体来说涉及一种基于配置文件的物联网设备协议解析方法。
背景技术
物联网(Internet of Things,IoT)是互联网、传统电信网等信息承载体,让所有能行使独立功能的普通物体实现互联互通的网络,而具有物联网功能的设备被称为物联网设备。
通常情况下,物联网设备接入流程为:1、物联网设备完成物理层和数据链路层的接入;2、物联网设备向附近网关发送自身的设备信息;3、网关解析物联网设备的入网信息请求,判断是否是网关已经兼容的设备;4、网关支持该物联网设备类型,则给物联网设备相应应答,完成入网。否则拒绝入网;5、入网后,网关根据事先实现好的程序或者规则跟物联网设备进行后续通信。
上述入网流程中,由于物联网设备的种类多,通信协议差别大,如果不同种类的物联网设备需要同时接入网关,会导致网关协议兼容压力大。通常需要接入一种新的物联网设备时,都需要对网关的代码进行更新,增加对新物联网设备的入网协议解析,后续控制协议的解析,大大增加了开发、维护、测试和运营成本。
发明内容
本发明旨旨在解决现有的不同协议的物联网设备导致的入网困难的问题,提出一种基于配置文件的物联网设备协议解析方法。
本发明解决上述技术问题所采用的技术方案是:基于配置文件的物联网设备协议解析方法,包括以下步骤:
步骤1、在网关设备中预置物联网设备对应的JSON配置文件,并建立用于对JSON配置文件进行解析的功能引擎,每个预置的JSON配置文件中包含至少一种物联网设备的接入和控制协议描述,每种协议描述通过一个特定的URI标识符号进行标识;
步骤2、所述功能引擎启动后,加载所有预置的JSON配置文件,解析得到各预置的JSON配置文件中的通用解析配置和每种URI标识符号对应的解析规则并将其保存至内存中;
步骤3、在物联网设备和网关设备之间进行数据传输之前,功能引擎先获取数据,并根据所述通用解析配置对数据通用部分进行解析,得到数据对应的URI标识符号,根据该URI标识符号在内存中对应的解析规则解析数据。
进一步地,步骤1中,所述建立用于对JSON配置文件进行解析的功能引擎的方法包括:
设计JSON配置文件的模板格式和保留关键字,所述保留关键字包括:comm_macros、device_store_properties、check_device_status、upper和lower;
其中,comm_macros用于定义JSON配置文件的公共属性,device_store_properties用于定义需要保存在缓存信息和数据库中的物联网设备属性,check_device_status用于配置物联网设备类型对应的周期执行的命令列表,upper用于表示处理来自功能引擎上层的应用命令,lower用于表示处理来自功能引擎下层的物联网设备数据。
进一步地,所述公共属性包括:设备类型字符串标识和设备主ID属性标识;所述需要保存在缓存信息和数据库中的属性包括:设备短地址、设备的ieee地址、设备ID、软件、固件和硬件版本号、设备端口列表、设备ID、安防设备类别、设备类型、设备类型附加属性、设备是否已经注册和设备状态。
进一步地,步骤3中,所述根据该URI标识符号在内存中对应的解析规则解析数据具体包括:
当功能引擎获取到物联网设备向网关设备发送的设备数据时,根据设备数据对应的URI标识符号在内存中对应的解析规则将设备数据的格式转换为网关设备应用层对应的数据格式;
当功能引擎获取到网关设备向物联网设备发送的指令数据时,根据指令数据对应的URI标识符号在内存中对应的解析规则将指令数据的格式转换为物联网设备对应的数据格式。
进一步地,所述物联网设备对应的数据格式至少包括二进制格式数据,所述网关设备应用层对应的数据格式至少包括JSON格式数据。
进一步地,所述数据通用部分包括:帧头、帧尾、校验码和长度。
进一步地,所述功能引擎基于C语言建立。
本发明的有益效果是:本发明所述的基于配置文件的物联网设备协议解析方法,通过建立能够解析JSON配置文件的功能引擎来实现物理协议和设备对接的通用化,JSON配置文件针对新的种类设备接入和控制,不需要更新网关核心部分代码,只需要预置特定物联网设备的JSON配置文件即可,特别针对当前网关不支持的物联网设备,也只需要通过云端下载新的JSON配置文件,解决了物联网设备入网和规则多样化导致的重复开发和调试问题。
附图说明
图1为本发明实施例所述的基于配置文件的物联网设备协议解析方法的一种流程示意图;
图2为本发明实施例所述的基于配置文件的物联网设备协议解析方法的另一种流程示意图。
具体实施方式
下面将结合附图对本发明的实施方式进行详细描述。
本发明所述的基于配置文件的物联网设备协议解析方法,包括以下步骤:步骤1、在网关设备中预置物联网设备对应的JSON配置文件,并建立用于对JSON配置文件进行解析的功能引擎,每个预置的JSON配置文件中包含至少一种物联网设备的接入和控制协议描述,每种协议描述通过一个特定的URI标识符号进行标识;步骤2、所述功能引擎启动后,加载所有预置的JSON配置文件,解析得到各预置的JSON配置文件中的通用解析配置和每种URI标识符号对应的解析规则并将其保存至内存中;步骤3、在物联网设备和网关设备之间进行数据传输之前,功能引擎先获取数据,并根据所述通用解析配置对数据通用部分进行解析,得到数据对应的URI标识符号,根据该URI标识符号在内存中对应的解析规则解析数据。
本发明针对不同的物理层协议,例如,Wi-Fi、ZigBee、BLE、Z-Wave、LoRa等,将物联网设备入网流程划分为物理接入、驱动接入和数据接入三个流程,本发明仅针对数据接入流程进行设计,即需要保证物联网设备已经在物理和驱动层面实现了对接。具体而言,首先,针对不同类型物联网设备的物理层协议,在网关设备中配置对应的JSON配置文件,其中,JSON配置文件用于将物联网设备的入网信息、设备控制和通信信息对应的格式数据进行定义,实现数据的高度抽象;然后,通过定义好规则的JSON配置文件和功能引擎,实现物联网设备的数据格式和网关设备应用层的数据格式之间的相互转换,进而实现物联网设备的协议解析。
实施例
本实施例针对不同的物理层协议,例如,Wi-Fi、ZigBee、BLE、Z-Wave、LoRa等,将物联网设备入网流程划分为物理接入、驱动接入和数据接入三个流程,本实施例仅针对数据接入流程进行设计,即需要保证物联网设备已经在物理和驱动层面实现了对接。本实施例所述的基于配置文件的物联网设备协议解析方法,如图1所示,包括以下步骤:
步骤S1、在网关设备中预置物联网设备对应的JSON配置文件,并建立用于对JSON配置文件进行解析的功能引擎,每个预置的JSON配置文件中包含至少一种物联网设备的接入和控制协议描述,每种协议描述通过一个特定的URI标识符号进行标识;
其中,JSON配置文件用于将物联网设备的入网信息、设备控制和通信信息对应的格式数据进行定义,实现数据的高度抽象。
所述建立用于对JSON配置文件进行解析的功能引擎的方法包括:
设计JSON配置文件的模板格式和保留关键字,所述保留关键字包括:comm_macros、device_store_properties、check_device_status、upper和lower;
其中,comm_macros用于定义JSON配置文件的公共属性,device_store_properties用于定义需要保存在缓存信息和数据库中的物联网设备属性,check_device_status用于配置物联网设备类型对应的周期执行的命令列表,upper用于表示处理来自功能引擎上层的应用命令,lower用于表示处理来自功能引擎下层的物联网设备数据。
其中,所述公共属性包括:设备类型字符串标识和设备主ID属性标识;所述需要保存在缓存信息和数据库中的属性包括:设备短地址、设备的ieee地址、设备ID、软件、固件和硬件版本号、设备端口列表、设备ID、安防设备类别、设备类型、设备类型附加属性、设备是否已经注册和设备状态。
步骤S2、所述功能引擎启动后,加载所有预置的JSON配置文件,解析得到各预置的JSON配置文件中的通用解析配置和每种URI标识符号对应的解析规则并将其保存至内存中;
具体而言,当功能引擎启动后,通过功能引擎解析得到各预置的JSON配置文件中的通用解析配置和每种URI标识符号对应的解析规则。在实际应用中,如果需要新的物联网设备入网,则将其对应的JSON配置文件预置在网关设备即可,无需更新网关核心部分代码。
步骤S3、在物联网设备和网关设备之间进行数据传输之前,功能引擎先获取数据,并根据所述通用解析配置对数据通用部分进行解析,得到数据对应的URI标识符号,根据该URI标识符号在内存中对应的解析规则解析数据。
其中,数据通用部分包括:帧头、帧尾、校验码和长度。
本实施例中,所述根据该URI标识符号在内存中对应的解析规则解析数据具体包括:
当功能引擎获取到物联网设备向网关设备发送的设备数据时,根据设备数据对应的URI标识符号在内存中对应的解析规则将设备数据的格式转换为网关设备应用层对应的数据格式;
当功能引擎获取到网关设备向物联网设备发送的指令数据时,根据指令数据对应的URI标识符号在内存中对应的解析规则将指令数据的格式转换为物联网设备对应的数据格式。
具体而言,本实施例通过C语言建立JSON解析的功能引擎,并根据JSON解析后的结果,进行流程处理,流程处理后的结果可以在根据配置文件的规则描述,进行不同方向的转换。比如,从下层物联网设备上来的二进制数据,功能引擎根据JSON配置解析后,可以转换成JSON格式(或其他种类的格式,格式由JSON配置文件定义,可灵活配置)的应用层数据直接发送给云端,使得云端能够获取物联网设备的数据;反之,从云端下发的JSON格式控制指令,功能引擎根据JSON配置解析后,转换成二进制数据发给物联网设备,实现向物联网设备发送相应的控制指令。
需要对接新的协议或者物联网设备时,使用JSON配置进行二进制结构的描述,功能引擎将底层数据按照JSON模板格式将数据转换成通用的JSON字符串。同时,功能引擎可以将上层的通用JSON字符串指令转换成不同协议的二进制数据。不需要更新网关核心部分代码,只需要预置特定物联网设备的JSON配置文件即可,特别针对当前网关不支持的物联网设备,也只需要通过云端下载新的JSON配置文件,解决了物联网设备入网和规则多样化导致的重复开发和调试问题,降低了设备对接和控制的重复工作量。

Claims (7)

1.基于配置文件的物联网设备协议解析方法,其特征在于,包括以下步骤:
步骤1、在网关设备中预置物联网设备对应的JSON配置文件,并建立用于对JSON配置文件进行解析的功能引擎,每个预置的JSON配置文件中包含至少一种物联网设备的接入和控制协议描述,每种协议描述通过一个特定的URI标识符号进行标识;
步骤2、所述功能引擎启动后,加载所有预置的JSON配置文件,解析得到各预置的JSON配置文件中的通用解析配置和每种URI标识符号对应的解析规则并将其保存至内存中;
步骤3、在物联网设备和网关设备之间进行数据传输之前,功能引擎先获取数据,并根据所述通用解析配置对数据通用部分进行解析,得到数据对应的URI标识符号,根据该URI标识符号在内存中对应的解析规则解析数据。
2.如权利要求1所述的基于配置文件的物联网设备协议解析方法,其特征在于,步骤1中,所述建立用于对JSON配置文件进行解析的功能引擎的方法包括:
设计JSON配置文件的模板格式和保留关键字,所述保留关键字包括:comm_macros、device_store_properties、check_device_status、upper和lower;
其中,comm_macros用于定义JSON配置文件的公共属性,device_store_properties用于定义需要保存在缓存信息和数据库中的物联网设备属性,check_device_status用于配置物联网设备类型对应的周期执行的命令列表,upper用于表示处理来自功能引擎上层的应用命令,lower用于表示处理来自功能引擎下层的物联网设备数据。
3.如权利要求2所述的基于配置文件的物联网设备协议解析方法,其特征在于,所述公共属性包括:设备类型字符串标识和设备主ID属性标识;所述需要保存在缓存信息和数据库中的属性包括:设备短地址、设备的ieee地址、设备ID、软件、固件和硬件版本号、设备端口列表、设备ID、安防设备类别、设备类型、设备类型附加属性、设备是否已经注册和设备状态。
4.如权利要求1所述的基于配置文件的物联网设备协议解析方法,其特征在于,步骤3中,所述根据该URI标识符号在内存中对应的解析规则解析数据具体包括:
当功能引擎获取到物联网设备向网关设备发送的设备数据时,根据设备数据对应的URI标识符号在内存中对应的解析规则将设备数据的格式转换为网关设备应用层对应的数据格式;
当功能引擎获取到网关设备向物联网设备发送的指令数据时,根据指令数据对应的URI标识符号在内存中对应的解析规则将指令数据的格式转换为物联网设备对应的数据格式。
5.如权利要求4所述的基于配置文件的物联网设备协议解析方法,其特征在于,所述物联网设备对应的数据格式至少包括二进制格式数据,所述网关设备应用层对应的数据格式至少包括JSON格式数据。
6.如权利要求1所述的基于配置文件的物联网设备协议解析方法,其特征在于,所述数据通用部分包括:帧头、帧尾、校验码和长度。
7.如权利要求1所述的基于配置文件的物联网设备协议解析方法,其特征在于,所述功能引擎基于C语言建立。
CN202110992266.9A 2021-08-27 2021-08-27 基于配置文件的物联网设备协议解析方法 Pending CN113726762A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110992266.9A CN113726762A (zh) 2021-08-27 2021-08-27 基于配置文件的物联网设备协议解析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110992266.9A CN113726762A (zh) 2021-08-27 2021-08-27 基于配置文件的物联网设备协议解析方法

Publications (1)

Publication Number Publication Date
CN113726762A true CN113726762A (zh) 2021-11-30

Family

ID=78678433

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110992266.9A Pending CN113726762A (zh) 2021-08-27 2021-08-27 基于配置文件的物联网设备协议解析方法

Country Status (1)

Country Link
CN (1) CN113726762A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113904962A (zh) * 2021-12-08 2022-01-07 统信软件技术有限公司 一种资源访问方法、装置及计算设备
CN114900387A (zh) * 2022-05-10 2022-08-12 中移(杭州)信息技术有限公司 设备的跨平台融合接入方法、系统、网关及存储介质
CN116233282A (zh) * 2023-05-05 2023-06-06 北京全路通信信号研究设计院集团有限公司 一种解析信号安全通信协议应用层数据的方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103825811A (zh) * 2013-10-11 2014-05-28 江苏飞尚安全监测咨询有限公司 一种接入传感器协议自识别的物联网网关实现方案
CN108093070A (zh) * 2017-12-27 2018-05-29 复旦大学 一种物联网数据服务中间件系统
CN110971704A (zh) * 2019-12-11 2020-04-07 杭州安恒信息技术股份有限公司 一种基于json配置文件的数据传输方法及装置
CN112333227A (zh) * 2020-09-11 2021-02-05 浙江工业大学 一种基于规则引擎的混合型协议的物联网平台
CN112511416A (zh) * 2020-11-23 2021-03-16 四川长虹电器股份有限公司 基于规则式的数据通信协议转换系统、解码及编码方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103825811A (zh) * 2013-10-11 2014-05-28 江苏飞尚安全监测咨询有限公司 一种接入传感器协议自识别的物联网网关实现方案
CN108093070A (zh) * 2017-12-27 2018-05-29 复旦大学 一种物联网数据服务中间件系统
CN110971704A (zh) * 2019-12-11 2020-04-07 杭州安恒信息技术股份有限公司 一种基于json配置文件的数据传输方法及装置
CN112333227A (zh) * 2020-09-11 2021-02-05 浙江工业大学 一种基于规则引擎的混合型协议的物联网平台
CN112511416A (zh) * 2020-11-23 2021-03-16 四川长虹电器股份有限公司 基于规则式的数据通信协议转换系统、解码及编码方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113904962A (zh) * 2021-12-08 2022-01-07 统信软件技术有限公司 一种资源访问方法、装置及计算设备
CN113904962B (zh) * 2021-12-08 2022-03-18 统信软件技术有限公司 一种资源访问方法、装置及计算设备
CN114900387A (zh) * 2022-05-10 2022-08-12 中移(杭州)信息技术有限公司 设备的跨平台融合接入方法、系统、网关及存储介质
CN116233282A (zh) * 2023-05-05 2023-06-06 北京全路通信信号研究设计院集团有限公司 一种解析信号安全通信协议应用层数据的方法及系统
CN116233282B (zh) * 2023-05-05 2023-09-19 北京全路通信信号研究设计院集团有限公司 一种解析信号安全通信协议应用层数据的方法及系统

Similar Documents

Publication Publication Date Title
CN113726762A (zh) 基于配置文件的物联网设备协议解析方法
DK2914022T3 (en) Device management method, middleware and machine-to-machine communication platform, device and system
CN110324169B (zh) 一种接口管理的方法和装置
CN112511416A (zh) 基于规则式的数据通信协议转换系统、解码及编码方法
US7885204B1 (en) Method and system for testing network topology
CN109284140B (zh) 配置方法及相关设备
CN109768970A (zh) 一种基于可配置的通用协议生成方法
CN109460250B (zh) 一种应用程序的生成方法及设备
CN111984561B (zh) 一种bmc的ipmi命令处理方法、系统、设备以及介质
CN110912944B (zh) 一种can设备安全测试系统及测试方法
CN112822199B (zh) 一种基于协议转换的ota升级方法及系统
CN108833565A (zh) 一种监控服务器的方法、装置、服务器和存储介质
CN111526052A (zh) 网元指令管理方法、装置、网络设备及存储介质
CN115102981A (zh) 数据处理方法、物联网系统、电子设备及计算机存储介质
US20100268992A1 (en) Method and system for protocol embedded automated test control
CN111159019B (zh) 一种应用程序的测试方法、测试控制终端以及测试终端
CN110896363B (zh) 实现iec61850智能装置即插即用的接入配置方法
CN112698640B (zh) 一种ecu升级测试系统
CN114490889A (zh) 配置信息处理方法、装置、设备、介质及程序产品
CN113794782A (zh) 一种基于中间件和mqtt协议的物联网通信系统和方法
CN113821565A (zh) 一种多数据源同步数据的方法
CN110300092B (zh) 封包辨识方法及封包辨识装置
CN115510137A (zh) 基于jdbc规范的命令转换方法、系统、计算机设备及介质
CN114070705A (zh) 基于命令行的设备网管方法、介质及设备
CN112732551A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20211130