0 引言
随着物联网技术的快速发展,窄带物联网(narrow bandInternetof Things,NB-IoT)开启了飞跃式发展模式。 NB-IoT是支持低功耗[1]设备在广域网蜂窝数据连接的1种新兴物联网技术。在我国“互联网+”和数字经济等大政方针的加持下,再加上 NB-IoT本身具备
覆盖广、连接多、功耗低、成本低[2]的技术特点,NB-IoT近几年广泛应用于物联网终端设备。在公共事业的水电气行业,尤其是城镇燃气行业,由于燃气自身的易燃易爆性,现场提供外电源技术的成本较高,其对低功耗设备非常依赖。同时,燃气设备具备不移动、数据量小、对时延不敏感、数据传输实时性要求不高等特性,符合 NB-IoT技术的应用场景要求。因此,NB-IoT是
燃气设备数据上云物联网通信技术的优秀解决方案。但城镇燃气设备种类繁多、厂家各异,传统的物联网平台要兼容不同的厂家、设备、通信协议[3],难度非常大。
本文提出了1种新型的物联网系统框架的设计方案,实现了不同厂家、不同设备、不同协议在同一平台的互容互通。
1 物联网系统框架设计
1.1 物联网通信概述
物联网通信是终端设备与应用系统软件的数据交互过程。 NB-IoT的通信也是如此,但其具有特殊性。由于 NB-IoT技术的低速率特性,单个基站与物联网终端设备实现瞬时并发通信在数量上有一定限制[4]。为了终端设备实现错峰通信,各运营商研发了物联网终端设备数据传输控制系统,以确保终端设备运行高效和避免通信拥堵[5]。因此,应用端的物联网应用控制平台与 NB-IoT终端设备的通信都需要经过运营商的物联网终端设备数据传输控制系统转发。收发数据都由物联网应用控制平台与该系统交互,再与终端设备交互。反之亦然。由于应用端和终端设备的多样性,不同厂家、不同设备、不同应用平台都有各自的业务需求、数据包、通信协议和加密算法。因此,市场需要设计一款兼容不同终端设备和应用平台的兼容性强、扩展性好、稳定性高又无需二次开发的物联网终端通信平台技术解决方案。
1.2 系统框架技术解决方案
随着城市燃气物联网技术的快速发展,以及物联网终端设备与数据容量的不断增长,一般的物联网平台架构慢慢凸现出兼容性差、灵活性不够、扩展性不好和不经济等问题。为了解决这些问题,本文设计了三级平台框架的技术解决方案———物联网应用控制平台、物联网终端通信平台和物联网终端设备。
智慧燃气物联网平台云管端框架以物联网终端通信平台为核心,向上对接各燃气公司的物联网应用控制平台,向下对接各种燃气终端设备,包括燃气流量计、燃气报警器、压力变送器、温度变送器、切断阀等物联网终端设备。在通信算法上,本文设计了1种独特的物联网平台通信数据传输格式。该格式将一次通信所需的所有数据按一定规则进行打包,并自由选择1种加密算法进行加密后,由物联网应用控制平台发送给物联网终端通信平台。物联网终端通信平台按规则解密后,再将命令组包分发给各终端设备。终端设备接收到命令后作出应答。物联网终端通信平台按约定规则接收各终端设备应答的数据组包,并发送给物
联网应用控制平台。物联网应用控制平台根据业务需求对数据进行处置。
智慧燃气物联网平台云管端框架如图1所示。

图1 智慧燃气物联网平台云管端框架示意图 Fig.1 Diagramof cloud management framework ofsmartgasIoT platform
本文方法的关键在于解决了物联网终端通信平台的兼容性、灵活性、扩展性和经济性[6]问题,并且内置加密体系采用多种加密算法[7-8],可灵活切换和随机应用,提高了平台的安全等级,确保了通信安全[9]与稳定。对于这种以物联网通信终端平台为通信纽带的三级框架,其主要创新点在于不同物联网应用控制平台和不同终端设备的接入无需二次开发。物联网应用控制平台与终端设备的通信过程使用的加解密算法灵活动态匹配,物联网终端通信平台对其不作约束。 物联网终端通信平台不处理业务逻辑和事务过程,只处理终端设备和物联网应用控制平台的数据通信,简化了流程和业务复杂度。不同设备、不同命令组、同一命令组的不同命令包之间可以采用不同加密算法,不仅解决了物联网平台与物联网终端的兼容性问题,而且提高了数据传输安全性。即使1种加密算法被破解,其他加密算法也不受影响,并可随时用未被破解的加解密算法替代已被破解的加解密算法。
1.3 数据包定义
本研究的重要成果之一是设计了1套特定规则数据格式的物联网通信数据包。该数据包由请求包和应答包2种格式组成。请求包是物联网应用控制平台给物联网终端设备发送命令的数据集。它通过物联网终端通信平台转发,包括包头和包体2个部分。请求包结构如图2所示。
依据,是数据组包和解析存储的主要组成部分,由应答报文判断条件起始位置、字符长度和比对字符3 个部分组成。
应答包是物联网终端设备对命令包的应答数据集,包含了命令的执行情况、返回信息内容和数据安全信息等。应答包也由包头和包体组成。包头定义了物联网终端设备的唯一识别号。包体由命令流水号、命令识别号、应答报文、加密算法和 PK这5个部分组成。

图2 请求包结构示意图 Fig.2 Requestpackage structure diagram
图2中:命令包由命令流水号、命令识别号、命令 报文、命令校验方式、加密算法和公钥(public key, PK)组成;通信参数由应答报文数据存储器的起始位置、数据长度和比对字符组成;判断条件由应答报文判断条件起始位置、字符长度和对字符组成。包头定义了数据包唯一识别码。包体由多组命令组按一定规则排列而成。因此,1个数据包可以装载多个厂家、多种设备的多个命令组。 每个命令组对应1台物联网终端设备,可以1次发送某台终端设备的多条命令,执行多种业务需求,从而大大减少物联网应用控制平台与终端设备的交互频率,降低能耗和资费。命令组由1组或多组命令组成,包括物联网终端设备的唯一识别号、命令包、通信参数和判断条件4个部分。命令包是物联网通信的执行机构,包含了终端设备需要执行的命令信息,由命令流水号、命令识别号、命令报文、命令校验方式、加密算法和 PK这6个部分组成。其中,命令报文是终端设备的最终命 令执行单元。通信参数是物联网终端设备Modbus RTU通信协议读写数据的必要参数,由应答报文数据存储器的起始位置、数据长度和比对字符3个部分组成。判断条件是命令类型和数据正确性的判断
1.4 通信流程
智慧燃气物联网平台的建设目的是实现物联网终端设备与应用平台间安全、灵活、稳定、高效的通信[10]。这也是本文研究的目的。因此,研究和设计物联网终端通信平台、物联网应用控制平台、终端设备通信流程及业务逻辑是本研究的重点和难点。 智慧燃气物联网平台的数据传输采用密文模式,加解密体系中采用多种对称加密算法可选方式。 不同命令包可采用不同加密算法实现数据加密的不确定性。这加大了黑客攻击和破解的难度,提高了整个平台的安全级别。数据传输[11]时,由物联网应用控制平台发起请求,按请求包格式组包,并发送给物联网终端通信平台。物联网终端通信平台解包后,再根据命令组中不同的终端设备识别码,与各终端设备建立通信通道,并发送命令包。 终端设备接收到命令后作出应答。物联网终端通信平台接收到应答报文后进行判别:不满足条件时,重发3次;满足条件时,按照应答包格式组包,并发送给物联网应用控制平台。物联网应用控制平台根据业务逻辑进行处理,以此类推,直至所有命令处理完成。请求包和应答包可以根据不同设备、不同命令包、同一命令包中不同的命令组采用不同的加密算法,如国家商用密码 SM4分组密码算法(简称 SM4)[12]、数据加密算法( data encryption standard,DES)、三重数据加密算法( triple data encryption algorithm,3DES)、高级加密标准(advanced encryption standard,AES)、私钥块加密算法 (rivestcipher2,RC2)、有线等效加密算法(rivestcipher4, RC4)等对称加密算法[8]中的1种或多种。 加密算法设有 PK,物联网应用控制平台设有应用控制私钥(use secret key,USK),物联网终端通信平台设有终端模块 私钥(modulesecret key,MSK),PK、USK、MSK都由物联网终端通信平台产生,应用于物联网应用控制平台与物联网终端通信平台间的数据通信加解密,以确保数据传输的安全、可靠。同时,物联网终端通信平台可以与多个物联网应用控制和多种终端设备通信,采用统一的数据格式和不同的加密算法及密钥,通过参数
配置实现灵活多变的应用。其无需二次开发,节约了研发成本和维护成本,提高了工作效率和经济性,确保
了平台应用的灵活、高效和可扩展性。数据通信逻辑如图3所示。

图3 数据通信逻辑框图 Fig.3 Datacommunicationlogicdiagram
2 案例分析
某集团已完成了智慧燃气物联网系统的建设。有300多家燃气公司和20多家设备厂商的70多种设备终端在本文系统上的应用,实现了各燃气公司快捷、方便、灵活、可靠、高效、经济的物联网终端设备通信和控制。某城市 M燃气公司需要建设燃气业务物联网管理系统,引入某集团智慧燃气物联网平台,以实现燃气
公司所用各种物联网终端设备的通信。本文以 M燃气公司需要对 N厂家的 NB-IoT燃气流量计实现物联网充值和调价为例。 在 M燃气公司燃气业务管理系统上线前,需要选定数据传输加密算法的1种或多种及密钥,由智慧燃气物联网平台提供 PK。 M燃气公司在智慧燃气物联网平台上生成自己的私钥并存储。 在充值和调价时,M燃气公司业务人员只要输入相关的业务数据并提交,燃气业务物联网管理系统即可将充
值和调价的数据组包并传输给物联网终端通信平台。该平台将按燃气业务物联网管理系统提交的相关算法及密钥解密,发送命令给 N厂家的燃气流量计。 N厂家的燃气流量计分别执行充值和调价命令后,反馈充值和调价的结果,包括是否成功、充值后流量计的总购气量与剩余量、调价后流量计的气价相关信息等分别组包反馈给物联网终端通信平台。物联网终端通信平台按约定密钥组包将信息反馈给燃气业务物联网管理系统。燃气业务物联网管理系统接收后再根据充值和调价的后续业务进行处理。 如果某天 M燃气公司又要引入 S厂家的 NB-IoT报警器,该平台无需二次开发,只要配置符合 S厂家的报警器的数据采集命令格式和选择加密算法及密钥即可。智慧燃气物联网平台可以根据配置信息自动组包并通信,以实现零开发的目标,达到平台的高兼容性和可扩展性。