物联网MQTT 协议测试

MQTT测试                                                        

 

MQTT是一个客户端服务端架构的发布/订阅模式的消息传输协议。 它的设计思想是轻巧、开放、简单、规范,易于实现。 这些特点使得它对很多场景来说都是很好的选择,特别是对于受限的环境如机器与机器的通信(M2M)以及物联网环境(IoT)。

MQTT 服务器有多种,其中功能比较齐全的推荐有mosquitto,emqttd,Apache Apollo。其中安装mosquito过程中windows 存在各种异常,最后未搭建成功,改为选择emqttd 方式。

EMQTT 服务器搭建

1. 下载windows安装源页面 http://emqtt.com/downloads

2. 下载完成后解压,进入目录 \emqttd\bin

3. 分别命令执行,启动MQTT服务器 emqttd console emqttd install

emqttd start

 

4. 启动浏览器访问网页

特别说明,在执行命令后,注意防火墙选择允许访问方式。三条命令运行完成后,会自动处于运行状态。保持当前窗口,然后启动浏览器访问http://127.0.0.1:18083 (默认账户用户名:admin,密码public)服务器地址可修改,默认为本地回环ip地址127.0.0.1

 

 

客户端工具配置  

客户端工具较多,下文主要介绍windows常见的MQTT.FX 和MQTTBox两种客户端,使用过程中二选一即可。

MQTT.FX 配置

1. 下载软件,国内地访问下载需要VPN FQ。安装软件如下图

 

 

2. 点击设置按钮,配置相应的选项,再点击connect 连接至服务器(默认情况下不需要配置)

 

 

3. 选择本地服务器localmosqultto默认配置

 

 

4.如果测试远程,在设置中选择M2M Ecipse,并在Broker Address中设定远程地址

 

 

 

 

MQTTBox 工具配置

除了MQTT.FX,还可以选择MQTTBox, 相关windows 详细如下 http://workswithweb.com/mqttbox.html

1. 安装MQTTBox后启动MQTTBox,菜单栏中选择“Ceate MQTT Client”

 

 

 

2. 在配置选项中,设置如下默认配置,指定服务器地址127.0.0.1,登陆账户密码自设定

 

 

3. 进入刚已创建的客户端,点击连接(步骤1)查看连接状态,绿色connected显示当前成功连接服务器。

4. 分别建立publisher 发送端 和 subscriber 收取端。下图仅方便演示,将发送和接收窗口合并在一个客户端,但实际测试或应用中,下图步骤2 和 下图步骤3 应分别在两台设备电脑A和电脑B上,详细见下节测试搭建。

 

 

5. 为了测试当前环境状态,可以模拟客户端判断环境是否正常。点击Subscribe(上图步骤4)后,再点击

Publish(上图的步骤5)。payload 的数据选择json或字符串等形式,如实例中的JSON {“hello”:“world”}

6. 在发出publish后,右侧Subscriber框立即收取到刚实例中的“hello world”字串。至此,验证客户端搭建验证完成。

 

MQTT测试  

1. 环境搭建

测试本地环境时,本地网络拓扑图如下

 

 

另外补充说明,若是远程服务器,只需修改PC server的IP地址配置为外网地址。如果是测试路由器链路,还可简化一台电脑和一台测试路由器的环境搭建方式。使用本地127.0.0.1 作为服务器,整体配置原理如下图

 

 

 

2. 在客户端上添加Subscriber,此时服务器里已经连入2台设备,此两台设备可以通过服务器来实现通信因此2个订阅加入此列表,即此时服务器里已经连入2台设备,此两台设备可以通过服务器来实现通信

 

 

3. 测试路由器客户端。配置服务器地址本地分配地址(路由器实际分配地址),将路由器作为客户端

 

 

4. 可直接在串口命令 输入 simple_publisher 192.168.0.2 1883 string {'hello':'world'},在客户端 subscriber中收取正确信息

 

 

转载于:https://www.cnblogs.com/nerocm/p/10331375.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MQTT(Message Queuing Telemetry Transport)是一种轻量级的通信协议,它适用于物联网设备和移动设备之间的数据传输。MQTT协议有三个主要组件:客户端、代理服务器(也称为MQTT中间件或MQTT Broker)和主题(Topic)。 以下是基于MQTT协议进行软件设计的步骤: 1. 设计数据传输格式:确定需要传输的数据类型和格式,例如JSON格式、XML格式、二进制格式等。 2. 选择MQTT代理服务器:选择MQTT代理服务器,例如Eclipse Mosquitto、HiveMQ、EMQ等。 3. 设计主题结构:确定主题结构,例如“/sensor/temperature”、“/sensor/humidity”等。 4. 设计客户端:设计物联网设备的客户端,可以使用MQTT客户端库,例如Paho MQTT、Eclipse MQTT等。 5. 实现数据传输:在客户端中实现数据传输功能,包括连接MQTT代理服务器、发布和订阅主题等。 6. 设计服务端:设计接收数据的服务端,可以使用MQTT客户端库或MQTT代理服务器提供的API。 7. 实现数据处理:在服务端中实现数据处理功能,例如存储数据、分析数据等。 8. 设计安全机制:为了保证数据的安全性,需要设计安全机制,例如TLS/SSL加密、认证等。 9. 测试和优化:进行测试和优化,确保数据传输的可靠性和效率。 总之,MQTT协议是一种非常适合物联网设备之间进行数据传输的通信协议,通过以上步骤的设计和实现,可以实现物联网设备之间的高效、可靠和安全的数据传输。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值