基于MQTT协议的微波烧结实时远程监控系统的制作方法

文档序号:18451166发布日期:2019-08-17 01:16阅读:349来源:国知局
基于MQTT协议的微波烧结实时远程监控系统的制作方法

本发明涉及互联网通信领域,具体地说是一种基于mqtt协议的微波烧结实时远程监控系统。



背景技术:

微波烧结是一种使用微波能对材料进行加热,以实现材料烧结的新型材料致密化烧结工艺。由于其在陶瓷材料制备领域的突出优势和具有传统烧结方法无法比拟的优点,表明它将成为最有效和最具竞争力的新一代烧结技术。开发更加自动化智能化的微波烧结设备是陶瓷材料制备领域中存在的众多问题之一。一方面,对于现有的微波烧结实验系统而言,使用本地监控的方案,在微波烧结装置的控制台上显示如温度和功率等信息,一次微波烧结实验历时2-4小时,过程中需要管理员一直守候在设备旁,这不仅降低了管理员的工作效率,还存在因微波泄露对身体造成危害的风险;另一方面,微波烧结的数据存储在设备本地,需要进行导出才能用于研究,不利于访问。甚至会因为设备未开机或被占用而无法访问历史数据,对管理员的正常工作造成困扰。



技术实现要素:

本发明的目的就是为了克服上述现有技术中的不足,提供一种基于mqtt协议的微波烧结实时远程监控系统,该系统能在不可靠的网络环境下可靠传输监测数据从而完成微波烧结的实时远程监测,使用mqtt协议减少了数据传输所需的带宽,降低了数据传输的时延,增强了微波烧结远程监测系统的实时性,同时使用实时数据分析方法实时发现监测数据中的异常值。

本发明的发明目的是通过如下技术方案实现的。

基于mqtt协议的微波烧结实时远程监控系统,适用于先进微波烧结装备的远程状态监测;包括监测数据采集传感器、物联网网关、mqtt消息服务器、流式传感器数据处理平台、监测客户端;所述监测数据采集传感器用于采集微波烧结过程中的状态信息,如功率和温度,此外使用数字电位器实现烧结功率的远程调节;所述物联网网关用于实现传感器的物联网接入,通过mqtt客户端使用移动通信网发布传感器数据;所述mqtt消息服务器为mqtt消息的发布、订阅提供网络服务,同时完成监测数据的持久化;所述流式传感器数据处理平台用于实时检测传感器数据中的异常点,并对异常数据进行标记;所述监测客户端用于向用户可视化展示微波烧结设备的当前运行状态,包括android客户端和网页版的javascript客户端。

在上述技术方案中,所述监测数据采集传感器用于采集微波烧结过程中的状态信息,如功率和温度,以及烧结功率的远程调节;温度信息采集使用红外测温仪,红外测温仪的位置为烧结腔体观察窗的正上方,该测温仪将辐射功率转换成电信号,该信号在补偿环境温度之后进行模拟输出,使用arduino微控制的模拟输入io口捕获该信号后进行模数转换得到温度的数字信号值;功率信息采集使用电流表采集微波发生器的阴极电流,电流表使用rs485总线输出电流值,通过rs485转ttl接入arduino微控制器,完成电流值的读取;功率调节使用数字电位器替代原有的旋钮电位器,实现arduino微控制器对微波发生器功率的控制功能,数字电位器采用型号的x9c103s。

在上述技术方案中,所述物联网网关硬件由raspberrypimodel3b+构成,raspberrypi使用usb接口对接arduino微控制器获取其发送的传感器数据;使用eclipse/paho.mqtt.python库在raspberrypi中实现mqtt客户端,完成mqtt消息的发布和订阅;每台微波烧结设备使用一arduino微控制器与raspberrypi物联网网关通信,网关负责物联网节点的接入控制,物联网网关保存一张节点接入控制表,包含节点id和验证结果(未验证、允许接入、禁止接入、黑名单),当节点第一次接入网关时,其验证结果为未验证,当该节点id被管理平台验证通过后,验证结果修改为“允许接入”,若该节点id被管理平台验证失败后,验证结果修改为“禁止接入”,若是黑名单,则验证结果修改为“黑名单”。对于“禁止接入”和“黑名单”,网关收到该节点的数据包后,对数据包进行丢弃处理。

在上述技术方案中,所述mqtt消息服务器由emq构成,emq服务器配置关闭密名登录并开启emqx_auth_mysql插件,使用mysql数据库中的表mqtt_user进行用户验证和表mqtt_acl进行访问控制验证;mqtt消息采用json数据交换格式;使用qos0发布描述烧结装置状态的监测数据,使用qos2发布功率远程调整命令;采用订阅通配符主题方案订阅emq服务器上的所有mqtt主题,将受到的消息实时存储到mongodb数据库。

在上述技术方案中,所述流式传感器数据处理平台使用sparkstreaming流式大数据处理框架,sparkstreaming从mqtt中获取数据,使用mllib中的流式k-means聚类算法对数据进行处理,并将处理后的数据推送到实时仪表板;异常检测算法采用自下向上策略的层次聚类算法,它首先将数据集中的每个样本视为初始聚类簇,然后将距离最近的两个聚类簇合并,如此往复,直至达到预设数目的聚类簇数量,本方案中使用欧几里得距离作为距离计算方式,预设的聚类簇数目为2。

在上述技术方案中,所述监测客户端用于向用户可视化展示微波烧结设备的当前运行状态,android客户端通过在service组件中基于eclipse/paho.mqtt.java库实现mqtt客户端订阅mqtt消息,然后通过broadcast将监测数据发送到前端layout,完成数据的可视化显示;javascript客户端通过eclipse/paho.mqtt.javascript库在web页面中实现mqtt客户端订阅mqtt消息,然后将接收到的数据通过web仪表盘组件展示,完成数据的可视化展示。

本发明与现有技术相比,其有益效果在于:通过物联网实现微波烧结的远程在线实时监测。因此,采用了该基于mqtt的微波烧结监测方案的微波烧结监测系统可以在网络不可靠的情况下,可靠发布微波烧结的状态,实现微波烧结的实时远程监控,通过网关接入认证加服务器访问控制的双重认证,保证系统的接入安全。本发明不仅节约了管理员的时间成本,还省去因需要停止设备来导出数据造成的设备资源浪费,并通过使用mqtt协议减少了通信网络的负担,进而提高了已有通信网络的性能,此外使用实时数据分析方法实时发现监测数据中的异常值,避免因设备异常带来的损失。

附图说明

图1是本发明系统的结构示意图。

图2为本发明中arduino微控制器的工作流程图。

图3为本发明中物联网网关raspberrypi的工作流程图。

具体实施方式

下面结合附图及具体实施例对本发明作进一步的说明。

如图1所示,基于mqtt协议的微波烧结实时远程监控系统包括监测数据采集传感器、物联网网关、mqtt消息服务器、流式传感器数据处理平台和监测客户端,监测数据采集传感器采集微波烧结的运行状态,通过物联网网关将监测数据发送到mqtt消息服务器,流式传感器数据处理平台从mqtt消息服务器获取传感器数据并进行处理,监测客户端从mqtt消息服务器获取监测数据并可视化展示。

该过程的具体实现如下:

微波烧结过程开始后,红外测温仪采集温度信息,电流表采集微波发生器阴极电流信息,然后发送到arduino微控制器。

如图2所示,arduino微控制器对传感器数据进行换算,电信号与具体的数值之间的换算视所采用的传感器的输出规格而定,换算完成后对数据进行打包。arduino微控制器开机后会开始物联网网关的接入验证,arduino首先向raspberrypi发送自身的设备id,raspberrypi收到id后向物联网服务器上报节点id,物联网服务器根据节点id列表从数据库中查询该id的接入权限并将结果返回给raspberrypi。若id的验证结果为“允许接入”则接收后续arduino发送的数据,若结果为“禁止接入”或“黑名单”则对后续arduino发送的数据进行丢包处理。

如图3所示,物联网网关raspberrypi开机后会配置自身的mqtt客户端,其中,需设置的参数包括服务器ip、端口号、用户名、密码、心跳时间、超时时间。然后向物联网服务器发起连接,连接成功后即建立后台主题订阅机制,订阅微波烧结设备控制命令主题,若在该主题接收到消息便转发给相应id的arduino控制器,arduino控制器根据消息中的数值调整x9c103s的阻值进而调整微波烧结设备的功率。raspberrypi接收到验证结果为“允许接入”的arduino设备的监测数据后,通过mqtt客户端发布到微波烧结监测数据主题,使用的消息服务质量为qos0。

android客户端启动后,首先会启动service中的mqtt客户端程序,配置自身包括服务器ip、端口号、用户名、密码、心跳时间、超时时间等参数,并向mqtt服务器发起连接,连接成功后及时订阅微波烧结监测数据主题,收到mqtt消息后,消息的格式为json,将json格式的数据进行解析,将得到的温度和功率数值通过broadcast方式发给前端activity,前端activity接收到消息后,通过文本框显示当前的温度和功率数值。需要调整微波烧结设备功率时,通过broadcast将功率数值发送给service,service接收到消息后将其打包为json格式,并发布到微波烧结设备控制命令主题,进而实现实时远程监控。

当打开相应的网页后,javascript脚本会运行mqtt客户端程序,配置自身包括服务器ip、端口号、用户名、密码、心跳时间、超时时间等参数,并向mqtt服务器发起连接,连接成功后及时订阅微波烧结监测数据主题,收到mqtt消息后,消息的格式为json,对其进行解析,然后将得到的温度和功率信息通过仪表盘和动态折线图web组件进行可视化展示,实现实时远程监测。

sparkstreaming通过订阅mqtt的微波烧结监测数据主题获取微波烧结设备的实时监测数据,然后利用sparkengine中的层次聚类算法对传感器数据进行聚类计算,将得到的判定为异常的数据结发布到微波烧结异常数据主题。android客户端接收到该主题的消息后,会通过通知栏向用户发出提醒。

本说明书中未作详细描述的内容,属于本专业技术人员公知的现有技术。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1