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

一种工业物联网通讯协议

文献发布时间:2023-06-19 19:20:08


一种工业物联网通讯协议

技术领域

本申请涉及工业物联网通讯技术,更具体地说,它涉及一种工业物联网通讯协议。

背景技术

目前较为流行的物联网通讯协议为MQTT协议,此协议为通用物联网协议,相对于专用的工业物联网协议在网络传输上比较冗余,在协议设计上不够精简,协议构建于TCP/IP之上,作为工业物联网通讯协议过于复杂、通讯指令过多,导致通讯能耗过高、带宽占用高。

发明内容

鉴于此,本申请提出了一种工业物联网通讯协议。

本申请提供一种工业物联网通讯协议,包括:发送端计算消息体内容的长度,得到消息体总长;将所述消息体总长与其它特征信息拼成包头;将所述包头与所述消息体内容组装成数据包;将所述数据包通过UDP协议发出。

优选的,所述其它特征信息包括协议版本号,所述协议版本号为UDP协议的通讯版本,所述协议版本号占用1byte的长度。

优选的,所述其它特征信息包括业务标识,所述业务标识用于区分不同的数据包类型,业务标识占用1byte的长度。

优选的,所述其它特征信息包括通讯ID,所述通讯ID是用于标识每个数据包的唯一编号,所述通讯ID占用8个byte的长度。

优选的,所述其它特征信息包括毫秒时间戳,所述毫秒时间戳用于标识发送数据包的时间,所述毫秒时间戳占用8个byte的长度。

优选的,所述方法还包括:接收端接受所述发送端发出的所述数据包;解析所述包头,获得消息体总长;根据所述消息体总长,提取接收到的所述数据包的消息体内容。

优选的,所述数据包的长度最大为1472byte,所述数据包最小为32byte;其中所述消息体总长的长度为4byte;若所述数据包的总长超过1472byte,则将所述数据包拆分为N个数据包;其中N为正整数,N为可取正整数中的最小值。

本申请还提供了一种通讯装置,包括:第一单元,用于发送端计算消息体内容的长度,得到消息体总长;第二单元,用于将所述消息体总长与其它特征信息拼成包头;第三单元,用于将所述包头与所述消息体内容组装成数据包;第四单元,用于将所述数据包通过UDP协议发出。

优选的,还包括:第五单元,用于接收端接受所述发送端发出的所述数据包;第六单元,用于解析所述包头,获得消息体总长;第七单元,用于根据所述消息体总长,提取接收到的所述数据包的消息体内容。

有益效果

与现有技术相比,本技术方案具有的优点是:本技术方案基于UDP协议之上,在设备上对需要通讯的数据,按协议设计包头包体进行组包,组包完成后,把整个数据包往网络发送,接收端收到数据包后根据协议进行解包,提取所需要的包体数据,通讯指令精简、传输效率高特别适用于工业物联网通讯领域。

附图说明

图1是本申请实施例提供的一种工业物联网通讯协议的示意图;

图2是本申请实施例提供的一种数据包的结构示意图;

图3是本申请实施例提供的一种通讯装置的示意图。

主要附图标记:1、第一单元;2、第二单元;3、第三单元;4、第四单元;5、第五单元;6、第六单元;7、第七单元。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应当理解,当在本说明书和所附权利要求书中使用时,术语″包括″和″包含″指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的″一″、″一个″及″该″意在包括复数形式。

还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语″和/或″是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

本申请提供了如图1所示的一种工业物联网通讯协议,包括:

S110、发送端计算消息体内容的长度,得到消息体总长;

S120、将消息体总长与其它特征信息拼成包头;

S130、将包头与消息体内容组装成数据包;

S140、将数据包通过UDP协议发出。

该方法还包括:

S150、接收端接受发送端发出的数据包;

S160、解析包头,获得消息体总长;

S170、根据消息体总长,提取接收到的数据包的消息体内容。

其中,发送端计算业务数据包body长度,得出长度后,组装数据包头,把version,flag,id,timestamp,bodyLength拼成包头,得到包头后,将包头与业务数据包通过udp协议发出,如果包头加业务数据包的总长超过1472byte时,发送端需要分成两条或更多条数据来发送,数据条数应遵循最简原则,若所述数据包的总长超过1472byte,则将所述数据包拆分为N个数据包;其中N为正整数,N为可取正整数中的最小值;每个数据包最小为32byte;

接收端接收发送端发送的数据,对接收的数据进行解析,把包头解析出来,然后根据包头中的业务数据长度,提取业务数据,用于实现业务功能。

数据包的结构如图2所示,图中第一行为数据包标识,第二行为数据包标识的长度,第三行为标识中文描述。

其中,协议版本号,本协议的通讯版本,不同版本对应不同的通讯业务版本,占用1个byte大小;

业务标识,标识业务数据,不同的业务使用不同的标识,用于区分不同的数据包类型,占用1个byte大小;

通讯id,标识每个数据包唯一编号,方便业务实现,占用8个byte大小;

毫秒时间戳,发送数据包的时间,占用8个byte大小;

消息体的总长度,接收方根据标注的长度进行解析,占用4个byte大小;

消息体内容,接收方实现业务所需要的业务数据。

本申请还提供了如图3所示的一种通讯装置,包括:

第一单元1,用于发送端计算消息体内容的长度,得到消息体总长;

第二单元2,用于将消息体总长与其它特征信息拼成包头;

第三单元3,用于将包头与消息体内容组装成数据包;

第四单元4,用于将数据包通过UDP协议发出。

还包括:

第五单元5,用于接收端接受发送端发出的数据包;

第六单元6,用于解析包头,获得消息体总长;

第七单元7,用于根据消息体总长,提取接收到的数据包的消息体内容。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本申请所提供的实施例中,应该理解到,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元可结合为一个单元,一个单元可拆分为多个单元,或一些特征可以忽略等。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

相关技术
  • 一种支持多工业通讯协议转换的物联网智能终端设备
  • 一种基于区块链技术控制工业物联网设备通讯协议装置
技术分类

06120115871150