一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种实现多种协议集成的方法及装置与流程

2021-10-24 12:19:00 来源:中国专利 TAG:联网 装置 多种 协议 集成


1.本技术属于物联网技术领域,具体涉及一种实现多种协议集成的方法及装置。


背景技术:

2.随着物联网的高速发展,传感器的种类,设备的种类,厂家,都有了井喷式增长。虽然,各个行业都有自己的通信标准,例如工业界的modbus通信协议,楼宇自动化的bacnet通信协议等。由于现在物联网行业百花齐放,各种传感器,各种设备之间需要数据采集,通信。在以往的大型系统开发过程当中,需要不断的对各种设备机进行通信协议解析。例如modbus,bacnet,或私有协议等。以往,需要开发人员对modbus,bacnet进行了解,编写代码,测试等。这样大量的占用了开发时间,提高了开发成本。并且,如果系统组成的传感器,设备等协议量太大的话,会造成协议不统一,系统难以检修等困难。
3.随着客户需求的提高,开发周期大量缩短,但是对接各厂家的通信协议成了开发人员最大的工作负担。例如一个智慧园区项目,需要接入:环境相关传感器(温度,湿度,压力,光照,二氧化碳,氧气),楼宇自控(bacnet标准),通道闸机(厂家私有协议),消防(国标)等等,非常多的协议种类,并且传感器,设备数量巨大,造成开发困难,运维困难,成本过高。
4.目前的工作流程分为以硬件为主的工作流和以软件为主的工作流。
5.以硬件为主的工作流:设备通过rs232/rs485/以太网等方式接入到硬件协议转换器。数据从传感器

>硬件协议转换器

>数据dtu设备

>服务器

>应用。
6.1.硬件通信接口选型:无线通信、有线通信、网络通信等;
7.2.绘制pcb电路板,印刷pcb电路板,焊接电路版,调试硬件。
8.3.编写硬件驱动,编写通信协议解析驱动,编写上层通信协议驱动,编写协议转换驱动。
9.4.生产硬件。
10.5.软件适配上层协议,业务逻辑开发,调试,部署。
11.其优点是:协议解析放在硬件层,可以高效快速解析,云端压力小,适合大规模项目。
12.其缺点是:硬件周期长,中间成本过高。
13.以软件为主的工作流:设备

>数据dtu

>服务器

>解析协议

>应用
14.1.购买通信转接设备:
15.如zigbee无线通信转gprs,485转网口。
16.2编写通信协议解析驱动.
17.3.部署网络。
18.其优点是:开发周期短,中间成本低。
19.其缺点实:云端压力巨大,且大规模使用时,造成云端臃肿。运维成本太高。
20.基于以上,如何提供一种可以快速实现大量协议快速集成的方法是亟需解决的问题。


技术实现要素:

21.为至少在一定程度上克服相关技术中存在的问题,本技术提供一种改进后可以快速实现大量协议快速集成的方法,以降低了大型项目的成本,
22.为实现以上目的,本技术采用如下技术方案:
23.一方面,一种实现多种协议集成的方法,所述方法包括:
24.获取总线数据并将所述总线数据保存至本地;
25.对所述总线数据进行处理,得到协议解析源码数据;
26.将所述解析源码数据写入数据池中并按照预设标准接口进行封装,得到封装好的解析源码数据;
27.将所述封装好的解析源码数据发送至服务器,以便服务器利用所述解析源码数据完成数据的采集,和/或,设备的控制。
28.进一步地,在对所述总线数据进行处理,得到协议解析源码数据之后,所述方法还包括:
29.判断所述协议解析源码数据是否为最新协议,得到判断结果;
30.若所述判断结果为所述协议解析源码数据为最新协议,将所述解析源码数据,写入数据池中按照预设标准接口进行封装;
31.若所述判断结果为所述协议解析源码数据不是最新协议,则将所述协议解析源码数据更新为最新协议。
32.进一步地,若所述判断结果为所述协议解析源码数据不是最新协议,则将所述协议解析源码数据更新为最新协议,包括:
33.获取最新版本协议;
34.将所述最新版本协议下载到本地;
35.判断所述最新版本协议是否按照标准接口编写;
36.若所述最新版本协议按照最新标准接口编写,则将所述最新版本协议覆盖原解析源码数据,并将所述最新协议写入数据池;
37.若所述最新版本协议不是按照标准接口编写,则放弃更新。
38.进一步地,判断所述协议解析源码数据是否为最新协议,得到判断结果,包括:
39.将协议解析源码数据的版本号以及生效日期与云端协议的版本号以及生效日期进行对比,得到对比结果;
40.根据对比结果,判断所述协议解析源码数据是否为最新协议。
41.进一步地,所述数据池包括第一数据池和第二数据池。
42.进一步地,包括:
43.调用数据加密解密接口,对所述解析源码数据进行数据的加密解密。
44.进一步地,所述预设标准接口为api接口。
45.进一步地,所述总线数据包括:sn串号、协议版本号以及协议生效日期。
46.另一方面,一种实现多种协议集成的装置,所述装置包括:
47.获取总线数据模块,用于获取总线数据并将所述总线数据保存至本地;
48.数据处理模块,用于对所述总线数据进行处理,得到协议解析源码数据;
49.封装模块,用于将所述解析源码数据写入数据池中并按照预设标准接口进行封
装,得到封装好的解析源码数据;
50.发送模块,用于将所述封装好的解析源码数据发送至服务器,以便服务器利用所述解析源码数据完成数据的采集,和/或,设备的控制。
51.本技术采用以上技术方案,至少具备以下有益效果:
52.一种实现多种协议集成的方法,包括:获取总线数据并将所述总线数据保存至本地;对所述总线数据进行处理,得到协议解析源码数据;将所述解析源码数据写入数据池中并按照预设标准接口进行封装,得到封装好的解析源码数据;将所述封装好的解析源码数据发送至服务器,以便服务器利用所述解析源码数据完成数据的采集,和/或,设备的控制。能够快速实现大量协议快速集成。无需编写大量解析代码,大量降低协议转换器的硬件采购成本。
53.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
54.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
55.图1是根据一示例性实施例示出的一种实现多种协议集成的方法步骤流程图。
56.图2是根据另一示例性实施例示出的一种实现多种协议集成的方法步骤流程图。
57.图3是是根据一示例性实施例示出的一种实现多种协议集成的装置结构图。
58.图4是根据一示例性实施例示出的一种实现多种协议集成的方法工作原理图。
具体实施方式
59.为使本技术的目的、技术方案和优点更加清楚,下面将对本技术的技术方案进行详细的描述。显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本技术所保护的范围。
60.请参阅图1,图1是根据一示例性实施例示出的一种实现多种协议集成的方法步骤流程图。
61.如图1所示,该方法包括:
62.步骤s11、获取总线数据并将所述总线数据保存至本地;
63.步骤s12、对所述总线数据进行处理,得到协议解析源码数据;
64.步骤s13、将所述解析源码数据写入数据池中并按照预设标准接口进行封装,得到封装好的解析源码数据;
65.步骤s14、将所述封装好的解析源码数据发送至服务器,以便服务器利用所述解析源码数据完成数据的采集,和/或,设备的控制。
66.针对现有技术中,硬件解析协议工作流以及软件协议解析工作流,更新协议需要停机重启系统,运维成本过高,本技术所提供的技术方案,通过获取总线数据并将所述总线
数据保存至本地,所述总线数据包括:sn串号、协议版本号以及协议生效日期;对所述总线数据进行处理,得到协议解析源码数据;将所述解析源码数据写入数据池中并按照预设标准接口进行封装,得到封装好的解析源码数据;将所述封装好的解析源码数据发送至服务器,以便服务器利用所述解析源码数据完成数据的采集,和/或,设备的控制。本技术提取出了硬件开发流及软件开发流的特性,形成一套框架体系。通过本发明,可以快速实现大量协议快速集成。无需编写大量解析代码,大量降低协议转换器的硬件采购成本。技术人员仅提供协议解析规则的源码,通过本发明的热更新技术,即可将系统的通信数据转换成统一标准的通信协议。数据按照用户需要的格式解析完成后,定向传送给上层应用服务器,上层应用可以直接使用解析后的数据,即可以完成大型系统数据采集,双向通信控制等操作。极大的降低了开发成本及硬件成本。
67.一些实施例中,在对所述总线数据进行处理,得到协议解析源码数据之后,所述方法还包括:
68.判断所述协议解析源码数据是否为最新协议,得到判断结果;
69.若所述判断结果为所述协议解析源码数据为最新协议,将所述解析源码数据,写入数据池中按照预设标准接口进行封装;
70.若所述判断结果为所述协议解析源码数据不是最新协议,则将所述协议解析源码数据更新为最新协议。
71.作为上述实施例的进一步改进,一些实施例中,图2为是根据另一示例性实施例示出的一种实现多种协议集成的方法步骤流程图。如图2所示:
72.若所述判断结果为所述协议解析源码数据不是最新协议,则将所述协议解析源码数据更新为最新协议,包括:
73.步骤s21、获取最新版本协议;
74.步骤s22、将所述最新版本协议下载到本地;
75.步骤s23、判断所述最新版本协议是否按照标准接口编写;
76.步骤s24、若所述最新版本协议按照最新标准接口编写,则将所述最新版本协议覆盖原解析源码数据,并将所述最新协议写入数据池;
77.步骤s25、若所述最新版本协议不是按照标准接口编写,则放弃更新。
78.其中,总线数据包括:sn串号、协议版本号以及协议生效日期;
79.通过最新协议的协议版本号以及协议生效日期与原协议的协议版本号以及协议生效日期进行对比,判断接收的协议是否为最新协议。
80.可以理解为,用户通过usb,或者以太网将最新协议传送到本地后,即启动协议检测最新版本的协议是否是按照标准接口编写的,如果最新版本协议是按照最新标准接口编写则将最新版本协议覆盖原协议,即完成了协议更新服务。
81.基于以上,本技术还可以完成弹性伸缩通信协议源码,任意裁剪。
82.例如:需要采集100个传感器/设备的数据,传感器种类有30种,设备种类有10种。总共40种通信协议。用户将40种通信协议源码传送到系统内部后。此时,因客户需求变更,需要取消10种设备,新增20类传感器。此时,只需要将原来的10种通信协议删除,新增20个新协议,然后重新导入到本地,即可完成通信协议的任意裁剪。
83.一些实施例中,判断所述协议解析源码数据是否为最新协议,得到判断结果,包
括:
84.将协议解析源码数据的版本号以及生效日期与云端协议的版本号以及生效日期进行对比,得到对比结果;
85.根据对比结果,判断所述协议解析源码数据是否为最新协议。
86.一些实施例中,所述将所述解析源码数据,写入数据池中并按照预设标准接口进行封装,包括:
87.可以将写入数据池的解析源码数据通过tcpclient服务接口、tcpserver服务接口、http接口、串口以及grpc接口传输,再将所述tcpclient服务接口、tcpserver服务接口、http接口、串口以及grpc接口按照预设标准接口进行进行封装。
88.其中,所述预设标准接口为api接口。
89.api标准化指的是一套通信框架。用户可以自定义通信数据内容格式,本技术所提供的技术方案,改进后,既保留了用户灵活数据结构需求,又保证了数据统一接口方便使用的需求。
90.一些实施例中,所述数据池包括第一数据池和第二数据池。
91.本技术涉及两个数据池,便于缓储多种协议,提高解析效率。
92.一些实施例中,对所述总线数据进行处理,得到协议解析源码数据,包括:
93.调用数据加密解密接口,对所述解析源码数据进行数据的加密解密。
94.需要说明的是,如果用户需要对数据加密/解密,通过调用数据加密解密接口,在协议解析时完成数据加密解密。如果用户不需要加密/解密则将解析源码数据按照预设标准接口封装发送至服务器。
95.一些实施例中,图3是根据一示例性实施例示出的一种实现多种协议集成的装置结构图。如图3所示,所述装置3包括:
96.获取总线数据模块301,用于获取总线数据并将所述总线数据保存至本地;
97.数据处理模块302,用于对所述总线数据进行处理,得到协议解析源码数据;
98.封装模块303,用于将所述解析源码数据写入数据池中并按照预设标准接口进行封装,得到封装好的解析源码数据;
99.发送模块304,用于将所述封装好的解析源码数据发送至服务器,以便服务器利用所述解析源码数据完成数据的采集,和/或,设备的控制。
100.现有技术中,使用编译器,对协议部分进行编译,编译成其他形式的固件。但需要硬件重启或这软重启。设备必须停机。以往重启工作最主要是为了重新加载dll,so等固件。但是依托与运行时解析的编程语言,无需编译,在更新协议是,保护好相关服务,统一好各模块的接口,重新加载一次协议解析,即可在不影响系统工作的前提下,进行协议热更新。从而无锡重启或停机。
101.本技术所提供的技术方案,既可以运行在云端,也可以运行在低配的嵌入式端,也可以运行在任意pc系统(windows,macos,linux),用户使用时对照传感器协议文本,编写协议解析源码,用usb,或者以太网,将协议源码加载到本地,即可完成新协议集成工作,上层应用无需改动。将协议解析部分独立出来,并且与其他模块交互统一接口。当需要更新协议模块时,系统对有关协议解析的相关服务暂停,进行协议卸载和加载工作。完成后,恢复相关服务即可。即可热更新通信协议源码。无需重启设备,装载即用,不停电停机。
102.为便于理解,本技术还提供了一种实现多种协议集成的方法工作原理图。如图4所示。
103.如图4所示,数据总线提供对外的数据接收硬件接口:232/485,can总线,433/2.4g,wifi,以太网等接口。
104.数据总线内包含:tcpsever/tcpclient(针对以太网,wifi),串口服务(针对232/485,can,433m/2.4g),usb通信的服务。
105.可以理解为,
106.数据获取部分:获取总线数据后,将总线数据保存到本地。
107.协议解析部分:读取本地缓存数据,加载用户提供的协议解析源码,对原始数据进行协议处理,处理完成后,写入数据池,数据池包括第一数据池和第二数据池,如果用户需要对数据加密/解密,则通过调用数据加密解密接口,在协议解析时完成数据加密解密。
108.如果用户不需要加密,统一接口层将封包后的数据,进行api标准化,供用户上层应用使用。
109.可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
110.需要说明的是,在本技术的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本技术的描述中,除非另有说明,“多个”、“多”的含义是指至少两个。
111.应该理解,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者可能同时存在居中元件;当一个元件被称为“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件,此外,这里使用的“连接”可以包括无线连接;使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
112.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为:表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
113.应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
114.本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
115.此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如
果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
116.上述提到的存储介质可以是只读存储器,磁盘或光盘等。
117.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
118.尽管上面已经示出和描述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜