编辑: ok2015 2019-10-22
MQTT 配置应用教程 厦门海为科技有限公司 www.

haiwell.com Haiwell 海为 HMI/ CBOX/ IPC www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 目录

一、 搭建 MQTT 服务器.3 1. 下载.3 2. 安装.3 3. 启动.4 4. 相关指令.4 5. Web 管理控制台(Dashboard)4

二、 搭建 MySQL 数据库.5 1. 下载.5 2. 安装.6 3. 验证.13 4. 开启远程访问权限.13 5. 远程访问数据库.14

三、 编写组态程序.15 1. 新建工程.15 2. 添加历史记录组.15 3. 服务器配置.16 4. 下载工程.16

四、 配置客户端.17 1. Haiwell Client.17 2. 配置 MQTT 服务器.17 3. 添加任务.17 4. 开始任务.18

五、 验证.19 1. MQTT 服务器.19 2. MySQL 数据库.19

六、 附录.20 组网示意图.20 特别声明 本文详细的介绍了 MQTT 与数据使用的一般过程,并且做了简单的程序示例.它适用于对 MQTT、数据 库等相关概念有一定了解的自动化或者上位机数据库开发工程师,海为技术人员并不都精于此,所以对 MQTT、数据库这些非 PLC、组态的知识问题,我们不做解答,见谅!有MQTT、数据库问题的,烦请到互联 网学习了解相关概念. ** 注:本文使用的电脑系统为 Windows 10(64 位) ** www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第3页共20 页

一、搭建 MQTT 服务器 1. 下载 这里介绍的是使用 EMQ 开源项目来搭建自己的 MQTT 服务器,可在官网 http://emqtt.com/下载.这 里下载的版本是 emqx-3.0.0 Windows 10(64 位). 下载完对应的版本后,解压到一个目录.本例的安装目录为 D:MQTTemqx. 2. 安装 以管理员身份运行 Windows 命令行窗口(cmd),使用 cd 指令进入 EMQ X 的安装目录. 输入指令 binemqx console 启动控制台模式. 启动成功后,会弹出控制台窗口.将此控制台窗口关闭后进行 Windows 服务注册. www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第4页共20 页在cmd 输入 binemqx install 为EMQ X 注册 Windows 服务.如果服务注册成功,会有 Service emqx_3.0 added to system. 的提示. 3. 启动 输入 binemqx start 来启动 EMQ X 服务. 4. 相关指令 EMQ X 停止服务的指令为 binemqx stop ,卸载服务的指令为 binemqx uninstall . 5. Web 管理控制台(Dashboard) EMQ X 服务启动后,用户可以通过 Web 管理控制台(Dashboard)查看 MQTT 服务器状态.如果 EMQ X 安装在本机,可以在浏览器打开 127.0.0.1:18083 进行登录,默认用户名 admin,密码 public.如 果不是,则输入 服务器 IP:18083 进行登录.这里运行 EMQ 服务器的地址为 192.168.30.90,则输入 192.168.30.90:18083.在Connections 界面可以查看当前服务器的连接状态. www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第5页共20 页

二、搭建 MySQL 数据库 1. 下载 进入 MySQL 的官方网站 https://www.mysql.com/,打开 DOWNLOADS 标签. 在打开的网页中选择 MySQL Community Edition(GPL) ,然后点击 MySQL Community Server 进入 下载项页面. 这里推荐使用 MySQL Installer 进行安装,这个版本的 MySQL 不需要自己进行配置,按照提示进行 安装就可以了.点击 Go to Download Page >

进入下载页面. www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第6页共20 页 这里选择第二个选项进行下载,版本为 8.0.13. 2. 安装 双击 MySQL Installer 进入安装界面,首先勾选同意协议并点击 Next. www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第7页共20 页 这里只需要安装 MySQL 数据库,所以选择第二项 Server only 就可以.如果有需要其它组件,可以 选择其它类型进行安装. 之后点击 Execute 进行安装,等安装完成后点击 Next 进入配置界面. www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第8页共20 页www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第9页共20 页Group Replication(组复制)和Type and Networking(运行模式与网络)按默认设置即可.默认端 口号为 3306. www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第10 页共20 页 选择身份验证方式. 第一种方式为强密码加密授权 (推荐) , 第二种方式为传统授权方法 (保留 MySQL 5.x 兼容性).有一些客户端和程序还没有更新支持新授权方法,这时就需要选择传统授权方法.本文使 用的是第二种身份验证方式,配置完成后点击 Next. 接下来是为 root 用户创建密码.下面还可以添加普通用户,一般使用 root 用户即可.这个密码请务 必牢记,使用 root 用户访问 MySQL 服务必须用到这个密码. www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第11 页共20 页将MySQL 设置为 Windows 服务,服务名称(Windows Service Name)可以自己设定,其它保持 默认设置即可. 点击 Excute 执行配置.在配置完成后点击 Finish 回到安装主程序. www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第12 页共20 页 点击 Finish,完成 MySQL 的安装. www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第13 页共20 页3. 验证 在安装完 MySQL 后,在开始菜单找到 MySQL Command Line Client.执行命令行客户端后,会提 示输入密码,密码就是刚刚在配置过程中设置的 root 用户密码. 成功连接会出现下面的窗口. 4. 开启远程访问权限 MySQL 默认只允许本地 localhost 登录,所以需要使用以下命令开启远程访问权限. use mysql;

CREATE USER '

root'

@'

%'

IDENTIFIED BY '

你的密码'

;

GRANT ALL ON *.* TO '

root'

@'

%'

;

FLUSH PRIVILEGES;

通过执行命令 SELECT host, user from user;

,可以看到 root 用户的 host 变成了%,说明修改已经成功, 可以对 root 用户进行远程连接了;

www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第14 页共20 页5. 远程访问数据库 远程访问数据库的可视化工具有很多,像MySQL Workbench、Navicat、HeidiSQL 等.这里使用的 是MySQL-Front 作为例子. 打开 MySQL-Front ->

文件 ->

连接管理 ->

添加,在弹出的窗口填写 MySQL 服务器信息.主机填 写MySQL 服务器的主机 IP 地址,端口默认为 3306.用户和密码为 MySQL 数据库的 root 用户和密码. 设置完之后点击确定,即可远程访问 MySQL 数据库. 在这里我们需要建立一个新的数据库用于储存 HMI/CBOX/IPC 上传的历史数据.右键点击主机 IP, 选择新建 ->

数据库.在弹出的窗口输入名称,其余按默认设置即可.注意这里只能输入英文名称. www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第15 页共20 页

三、编写组态程序 1. 新建工程 打开海为组态软件 Haiwell SCADA Develop(2.0.11.0 以上版本),新建工程,添加设备及变量. 2. 添加历史记录组 双击左边工程树的历史记录组,然后选择添加记录组. 在弹出的历史记录组编辑窗口添加通道变量,存储方式必须勾选远程存储.这里添加的变量为 V

0、 V1 和SM5.上报服务质量(QoS)有三种等级: ? 至多一次(QoS 0)- 发送者只发送一次消息;

? 至少一次(QoS 1)- 消息至少送达接收者一次,但也有可能会多发;

? 只有一次(QoS 2)- 保证消息只被接收一次. 远程标识对应数据库中的表格名称, 上报标识对应数据库表格中的字段, 这里注意必须使用英文字符. MySQL 数据库中无需提前建立表格及字段. www.haiwell.com Haiwell(海为)HMI/CBOX/IPC MQTT 配置应用教程 第16 页共20 页3. 服务器配置 双击左边工程树的数据中心进行 MQ........

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题