温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于
MQTT
协议
联网
监控
系统
曹小华
第 40 卷第 3 期计算机应用与软件Vol.40 No 32023 年 3 月Computer Applications and SoftwareMar 2023基于 MQTT 协议的物联网岸电监控系统曹小华李泊桓徐上尉(武汉理工大学物流工程学院湖北 武汉 430000)收稿日期:2020 07 22。国网岸电科技项目(5418-201971157A-0-0-00)。曹小华,教授,主研领域:智能装备与控制。李泊桓,硕士生。徐上尉,硕士生。摘要目前港口岸电系统地域分布较广且供电运行数据无法及时掌握。针对这一问题,设计并开发一种基于 MQTT 协议的物联网岸电监控系统,利用前端数据采集装置对供电系统的供电运行参数、用户信息、电力信息、设备状态等数据进行实时采集,经过数据处理和封装打包后,采用移动 4G 模块将封装好的数据通过 MQTT 协议上传至云端服务器,数据传输采用 MD5 数据加密算法,实现前端数据采集设备和监控系统之间的可靠数据通信,实时监控岸电系统运行状态,同时利用手机 App 对岸电系统参数进行实时监控与参数修改,增强物联网岸电监控系统的灵活性和便捷性。关键词MQTT 协议传输层岸电监控物联网数据交互中图分类号TP319文献标志码ADOI:10 3969/j issn 1000-386x 2023 03 002SHOE POWE MONITOING SYSTEM OF INTENET OF THINGSBASED ON MQTT POTOCOLCao XiaohuaLi BohuanXu Shangwei(School of Logistics Engineering,Wuhan University of Technology,Wuhan 430000,Hubei,China)AbstractAt present,the port shore power system is widely distributed and the power supply operation data cannotbe grasped in time Aiming at this problem,this paper designs and implements a shore power monitoring system for theInternet of Things based on the MQTT protocol The front-end data acquisition device was used to collect the powersupply operating parameters,user information,power information,equipment status and other data of the power supplysystem in real time After data processing and packaging,the mobile 4G module was used to upload the encapsulateddata to the cloud server through the MQTT protocol The data transmission used the MD5 data encryption algorithm toachieve reliable data communication between the front-end data collection equipment and the monitoring system,andrealize real-time monitoring of the shore power system operation At the same time,the mobile phone App was used tomonitor and modify the parameters of the shore power system in real time to enhance the flexibility and convenience of theshore power monitoring system of the Internet of ThingsKeywordsMQTT protocolTransport layerShore power monitoringInternet of ThingsData interaction0引言随着岸电技术、电能监控和计算机信息技术的不断发展,针对港口岸电系统的船舶岸电监控系统及其相关研究也受到越来越多的重视1 4。船舶在靠港使用港口岸电时,需要对岸电设备的供电过程进行监控,缺失了这一环节,不仅浪费了大量有价值的岸电运行参数资料,而且也具有较大的安全隐患。对岸电系统的监控能够有效地采集岸电设备的实时运行参数,同时还能在远程监控平台上看到岸电设备的用电信息,对其电力参数、环境参数、报警参数等信息进行实时监控,有利于港口岸电管理部门及时了解岸电现场的运行状况,促进船舶岸电的信息化与智能化发展5 9。本文针对某港口岸电系统的现状和实际需求,研究了船舶岸电监控系统的组成和架构,分析岸电监控系统12计算机应用与软件2023 年需求,采用前沿的物联网、云端技术及 MQTT10 12 通信协议,设计了适合港区岸电系统的远程监控方案,实现岸电系统与岸电监控系统之间的信息交互功能,包括对岸电设备的地理位置监控、电能信息监控、报警信息监控、实时状态监控、历史数据查询等功能,有助于港口岸电系统的信息化监测和管理,支撑船舶岸电系统的升级开发和智慧港口建设。1监控系统方案设计船舶岸电监控系统由两个子系统构成,分别是现场数据采集系统和远程监控系统,两个系统间采用MQTT 协议作为数据传输协议。对船舶岸电监控系统的总体架构设计从逻辑架构和物理架构两个层面来描述。船舶岸电监控系统运用逻辑分层的思想可将其架构上分为三层,分别是感知层、传输层、应用层,如图 1所示。图 1岸电监控系统逻辑分层架构1)感知层主要是对系统数据源进行数据采集、接入及处理。这些数据来自于岸电设备 PLC 作业控制程序内,包含了岸电系统运行时的各项基本数据。2)传输层是感知层与应用层之间沟通的桥梁,从感知层里采集到的数据通过 MQTT 通信协议传输到应用层。3)应用层实现了船舶岸电监控系统的各项监控功能需求,并设计了管理员移动端 App,用于岸电设备管理员对所管控设备的实时状态监控,并可根据需求修改岸电设备的系统参数。船舶岸电监控系统运用物理分层的思想可将其架构分为两层,分别是现场数据采集系统和远程监控系统。现场数据采集系统的硬件组成为数据采集装置,其由数据采集装置 1 和数据采集装置 2 组成。远程监控系统硬件组成为云服务器、本地监控中心和管理员移动端三部分。岸电监控系统物理分层架构如图 2所示。图 2岸电监控系统物理分层架构1)现场岸电设备包括电源进线柜、岸基供电箱、电缆提升装置,船舶岸电监控系统的监控对象是岸基供电箱和电缆提升装置。2)现场数据采集系统负责对现场岸电设备的监控数据进行一体式采集传输,并执行岸电设备管理员下发的参数修改指令。其实现过程如下:数据采集装置 2 采集电缆提升装置的数据,并通过蓝牙模块将监控数据发送给数据采集装置 1,数据采集装置 1 采集岸基供电箱的数据并接收数据采集装置 2 发来的监控数据,将这两部分数据汇集上传实现对岸电设备监控数据的一体式采集传输。数据采集装置 1 还可以接收岸电设备管理员下发的参数修改指令,解析指令内容后将其转发给相连接的岸电设备 PLC 内的通信控制程序执行。3)远程监控系统。远程监控系统主要由云服务器、本地监控中心和管理员移动端三部分组成。云服务器负责运行 MQTT 消息服务器(MQTT Broker),并通过数据交互处理程序完成对监控数据的接收、解析和存储。本地监控中心用于港口岸电管理部门对船舶岸电系统的远程监控。管理员移动端用于岸电设备管理员对所管控设备的实时状态监控,并可根据需求修改岸电设备的系统参数。2物联网岸电监控系统2 1岸电设备数据类型分析岸基供电箱工作时由其内部的西门子 PLC(可编程逻辑控制器)来进行系统控制,系统运行时岸基供电箱设备的全部数据都储存于 PLC 程序对应的数据第 3 期曹小华,等:基于 MQTT 协议的物联网岸电监控系统13块中,岸基供电箱数据类型如表 1 所示。表 1岸基供电箱采集数据类型数据类别数据名称数据类型说明用户信息数据IC 卡编号String船舶用户编号用户名称String船舶名称IC 卡激活IntIC 卡激活状态IC 卡等级IntIC 卡等级设备状态数据输出电流Float实时电流输出电压Float实时电压箱内温度Float岸电箱内实时温度箱内湿度Float岸电箱内实时湿度运行参数数据报警电压Float报警电压预设值报警电流Float报警电流预设值报警温度Float报警温度预设值除湿湿度Float除湿湿度预设值降温温度Float降温温度预设值电力信息数据供电状态Int当前实时供电状态供电电量Float本次截至当前供电电量有功功率Float实时有功功率功率因数Float实时功率因数供电时长Float本次截至当前供电时长供电电价Float当前电价报警状态数据支付状态Int本次供电支付状态报警状态Int电流、电压、温湿度等报警电缆提升装置工作时由其内部的西门子 PLC(可编程逻辑控制器)来进行系统控制,系统运行时电缆提升装置的全部数据都储存于 PLC 程序对应的数据块中,电缆提升装置数据类型如表 2 所示。表 2电缆提升装置采集数据类型数据类别数据名称数据类型说明控制状态数据自动/手动控制状态Int1:自动控制;2:手动控制急停状态Int1:急停;0:非急停除湿器启动状态Int1:已启动;0:未启动散热风扇启动状态Int1:已启动;0:未启动备状态数据温度Float装置内部实时温度湿度Float装置内部实时湿度报警状态数据设备报警状态Int温湿度及提升过载报警等散热风扇故障状态Int1:发生故障;0:无故障提升过载指示状态Int1:发生过载;0:未过载运动状态数据俯仰运动状态Int1:俯仰正向;2:俯仰反向回转运动状态Int1:回转正向;2:回转反向伸缩运动状态Int1:伸缩正向;2:伸缩反向2 2MD5 信息摘要算法本文所采用的数据加密算法基于 MD5 信息摘要算法。MD5 算法是由 MD4 算法导出,是一种被广泛使用的密码杂凑函数,其具有以下特性:1)易实现且不可逆:MD5 算法实现起来流程比较简易,被当前主流的编程语言所广泛支持。但 MD5 算法是不可逆的,因为其使用的 hash 算法在计算过程中丢失了大量的原文信息,因此我们无法通过 MD5 值倒推还原原文。2)压缩性:MD5 算法能将任意长度的原文处理成统一的 32 位 16 进制字符串,相当于超损压缩,所有原文经 MD5 算法处理后长度是一致的。3)抗修改性:原文出现任何改动,通过 MD5 算法处理后的 MD5 值都会有很大变化,因此可以看出原文是否被非法篡改。4)强抗碰撞:找到两个不同的原文,使它们 MD5值相同是很困难的。2 3消息完整性验证过程设计船舶岸电监控系统中存在一些隐私性和安全性要求较高的数据,包括船舶用电数据、船舶用户信息、岸电设备系统参数等,这些数据一旦被窃取或修改将会对船舶岸电系统造成重大损失和危害。虽然 MQTT 协议可以通过设置较高的消息服务质量等级来确保数据安全到达,但是消息传输过程中可能会被恶意劫持和篡改。常用于该协议消息传输中的安全协议为 SSL(Secure Sockets Layer)/TLS(Transport Layer Security)协议,但 SSL/TLS 协议会占用大量资源且设备支持率不高。因此本文结合 MQTT 协议的特性,提出一种基于 MD5 算法的数据加密