零基础玩转物联网-串口转以太网模块如何快速实现与MQTT服务器通信

目录

[1 前言](#1 前言)

[2 环境搭建](#2 环境搭建)

[2.1 硬件准备](#2.1 硬件准备)

[2.2 软件准备](#2.2 软件准备)

[2.3 驱动检查](#2.3 驱动检查)

[3 MQTT服务器通信配置与交互](#3 MQTT服务器通信配置与交互)

[3.1 硬件连接](#3.1 硬件连接)

[3.2 开启MQTT服务器](#3.2 开启MQTT服务器)

[3.3 打开配置工具读取基本信息](#3.3 打开配置工具读取基本信息)

[3.4 填写连接参数进行连接](#3.4 填写连接参数进行连接)

[3.5 通信测试](#3.5 通信测试)

[4 总结](#4 总结)


1 前言

MQTT:全称为消息队列遥测传输协议(Message Queuing Telemetry Transport),是一种基于发布/订阅模式的消息协议,常用于物联网中的消息传递。它工作在 TCP/IP 协议族上,具有轻量、简单、开放和易于实现的特点,适用于硬件性能低下的远程设备和网络状况糟糕的情况。采用消息订阅/发布模式,提供一对多的消息发布,从而解除应用程序耦合,适用于需要消息传递的场景,如设备间的通信、远程控制、数据采集等。

FS100P-W1E1 是飞思创推出的高性能串口转以太网模块。

极简设计: 7PIN插针封装,集成LDO、网络变压器、RJ45,体积小巧易集成。

数据透传: 内置DTU固件,仅需一次配置,上电自动实现串口到网络的透明传输。

协议丰富: 支持TCP/UDP/MQTT/HTTP,TCP和UDP支持Server/Client工作模式。

稳定可靠: 内置掉线重连、心跳包、KeepAlive机制,支持FOTA远程升级。

开箱即用: 借助可视化配置工具,小白也能5分钟完成服务器连接。

产品链接:点击跳转

2 环境搭建

2.1 硬件准备

  1. FS100P串口转以太网模块。
  2. USB转TTL模块,包括4根杜邦线。
  3. 1根网线。
  4. 1台路由器或交换机。

2.2 软件准备

SerialPort_To_Network_ConfigTools参数配置软件。

2. 3 驱动检查

打开电脑的设备管理器,查看是否有CH340驱动,图中是已经装好驱动的,如果在端口处没有该设备,可以在产品资料包里找到该驱动并安装。

3 MQTT 服务器通信配置与交互

3.1 硬件连接

1.将网线的一端插到FS100P的RJ45接口上,另一端插到交换机或路由器上。

注:DTU通过网线直连电脑时,电脑的以太网端口将被独占,导致该网卡无法接入互联网,此时DTU无法与公网服务器通信。若需同时访问互联网,可在电脑端启用网络桥接,将有线网卡(连接DTU)与无线网卡(连接WLAN)桥接。

2.DTU通过杜邦线连接到USB转TTL模块上,测试只需接电源线(3V3或5V)、GND、TXD、RXD即可,USB转TTL另外一端接入电脑,串口线是交叉连接。

3.通电后,Link常亮(绿灯),ACT闪烁(黄灯),说明可以进行配置参数。

注:如果采用外接电源,调试时需要"共地",即DTU、电源、USB转TTL三者的GND接在一起。

3. 2 开启 MQTT 服务器

在此次演示中,采用了本地部署的MQTT服务器进行通信测试。启动MQTT服务器时,只需在命令行中输入指令"emqx start"即可完成启动操作。需要特别注意的是,若未提前部署MQTT服务器,则相关功能将无法正常使用。

除了本地部署这种方式,您也可以选择使用自己的服务器,或者采用公用的MQTT服务器来进行通信测试。

3. 3 打开配置工具读取基本信息

在资料包里双击打开SerialPort_To_Network_ConfigTools参数配置软件->选择设备对应的端口->点击同步产品信息。

点击读取基本信息,查看固件信息,MAC和IP地址>点击查询网线连接,确认模块与电脑之间是否存在有效的物理连接->点击查看运行状态,了解当前网络状态。

注意事项:FS100P默认使用静态IP 192.168.1.88,若局域网IP冲突,需在配置工具的【其他参数→网络参数】中手动修改,或配置为DHCP动态获取方式。

3. 4 填写 连接参数进行连接

注:ClientID 必须保证唯一,如服务器无特殊要求,建议用 MAC 作为 ClientID。在使用需将电脑的防火墙关闭,以保障操作顺利进行。

等待设备显示"FS@MQTT CONNECTED:1",表示MQTT连接成功。如果出现其他返回值,则说明存在问题。此时,可以根据资料手册查找对应返回值所代表的含义,或者联系飞思创的技术支持协助解决。

3.5 通信测试

使用MQTTX客户端连接与DTU相同的服务器,并订阅DTU所发布的主题。DTU发"DTU send data"到服务端,服务端转发给MQTTX客户端。客户端向DTU订阅主题发"MQTTX send data",DTU收到则交互成功。

4 总结

本篇文章详细介绍了如何利用FS100P的MQTT功能,实现与MQTT服务器连接。感谢大家的观看!如果您对本文有任何疑问,或希望进一步了解该产品,请随时通过私信或评论区留言,我们将尽快回复您的消息!

相关推荐
誰能久伴不乏20 分钟前
Linux系统调用概述与实现:深入浅出的解析
linux·运维·服务器
程序员学习随笔32 分钟前
Linux进程深度解析(2):fork/exec写时拷贝性能优化与exit资源回收机制(进程创建和销毁)
linux·运维·服务器
-SGlow-1 小时前
MySQL相关概念和易错知识点(2)(表结构的操作、数据类型、约束)
linux·运维·服务器·数据库·mysql
代码改变世界ctw1 小时前
Linux内核设计与实现 - 第14章 块I/O层
linux·运维·服务器
Dreams_l2 小时前
网络编程2(应用层协议,传输层协议)
运维·服务器·网络
7ACE2 小时前
Wireshark TS | 发送数据超出接收窗口
网络协议·tcp/ip·wireshark
先知后行。2 小时前
网络协议HTTP、TCP(草稿)
网络·网络协议
自由鬼4 小时前
Apache HTTP Server 2.4.49 的目录遍历漏洞CVE-2021-41773
网络协议·http·apache
van叶~4 小时前
Linux网络-------1.socket编程基础---(TCP-socket)
linux·网络·tcp/ip
誰能久伴不乏4 小时前
Linux如何执行系统调用及高效执行系统调用:深入浅出的解析
java·服务器·前端