全国统一服务热线 0791-87879191

新闻资讯
产品中心
楼宇自控 智能照明 智能建筑管理 智能传感 智慧物联 智能组态 阀门自控 智慧监管
经典案例
楼宇 工厂 酒店 文博 枢纽 行业
关于我们

康沃思以数字、 物联、 数据、 AI为基础,以自主研发的DDC产品和自主领先的物联网框架,聚焦智能建筑和行业数字化转型,建设物联网基础设施。

0791-87879191

无线模块AT指令UDP透传设计

时间:2022-11-22

编者按:是一款性能稳定、价格低廉的国产串口和WiFi网桥。本文分析研究了单片机与配置AT指令的UDP透传通信的接口模型,提出了该模式。一种单片机程序设计的简化结构和操作步骤,应用于多路温控RTU的设计,运行稳定。

作者/黄玉瑾1,2杨跃1,2薛伟1,2张天成3

本文引用地址:

1.中国地质大学(武汉)自动化学院(湖北武汉)

2.复杂系统先进控制与智能自动化湖北省重点实验室(湖北武汉)

3.(湖北武汉)

*资助单位:国家自然科学基金委(编号:)

黄玉瑾(1978-),硕士,讲师,研究方向:无损检测技术与智能仪器设计。

摘要:是一款性能稳定、价格低廉的国产串口和WiFi网桥。本文分析研究了单片机与配置AT指令的UDP透传通信的接口模型,提出了一种单片机编程的简化结构和操作步骤,应用于多机的设计。通道温控RTU,运行稳定。

简介

是一款高度集成的WiFi SoC,具有低功耗、紧凑设计和高稳定性。它具有完整且自成一体的WiFi网络功能,可独立使用(与32位处理器集成,带片上SRAM),也可作为串行WiFi桥接模块与其他主机MCU一起运行。

无线通信模块_gps模块与单片机通信_gprs模块如何通信

在独立应用中,集成处理器可以通过 GPIO 与外部传感器或模块接口。乐鑫提供了专门的软件开发方案,其下游模组厂商安信科(AI-)提供了以下GUI方式IDE实现SDK编程[1]。这种方法需要用户对自己的编程有相当的了解,一般需要较长的学习和开发周期。

与单片机(如8051兼容单片机、ARM M0、M3等)作为桥接模块使用时,可以使用UART串口、I2C或SPI与主控单片机接口,但最常用的是串口。借助一组便捷的AT指令[2],单片机可以通过工作在该模式下的模块快速稳定地连接WiFi,还可以生成WiFi AP供其他设备连接,甚至工作在AP和共存模式下模式。

目前广泛应用于智能灯泡、插座、开关等智能家电,也广泛应用于工业和科研设备的联网解决方案[3]。笔者在一个多路温控记录项目中使用该模块设计了一个RTU,该RTU在室外环境中也能稳定工作。

本文主要介绍使用AT命令的UDP透传通信的编程模型设计。使用UDP透传,用户主控单片机可实现类似于有线UART的WiFi传输方式,可显着降低开发难度,节省开发时间。

1个AT指令集

根据数据表[2],AT命令包含4种类型,分别用于实现基本功能、WiFi相关和TCP/IP相关功能的操作。

在设置命令中,根据设置参数的有效期分为当前参数设置和永久参数设置。当前参数设置在下次复位或更改前有效,永久设置在设置更改前有效。乐鑫为模组公司提供 AT 命令模式的源代码和 SDK,模组公司经常删除和调整这些命令(添加私有 AT 命令)以适应更小的 FLASH 或简化应用程序。本文使用安信科(AI)公司修订的指令集手册[4]进行测试。

数据通信同时支持 UDP 和 TCP(或 SSL)方法。一般认为 TCP 协议是面向连接的,提供更可靠的服务,但在单片机中处理 TCP 通信控制错误会比较麻烦。笔者在设计温控RTU时,采用数据报方式的UDP透传通信。本文介绍和总结了UDP AT命令实现通信透传的编程设计。

UDP透传2分析

2.1 UDP、IP 和端口

gps模块与单片机通信_gprs模块如何通信_无线通信模块

UDP(User,用户数据报协议)是一种简单的面向数据报的传输层协议。在 TCP/IP 模型中,UDP 在网络层之上和应用层之下提供了一个简单的接口。

UDP 通信被认为是不可靠的通信。这里的不可靠主要是指两个方面:消息的传递是否不可靠,以及消息传递的顺序是否不可靠。前者是因为协议的设计不需要确认发送的数据,后者是由于数据报可能经过不同的路由而导致到达目的地的时间延迟不一致。消息是否送达不在通信层实现无线通信模块,但用户(程序员)可以在应用层实现反馈确认;而对于消息序列的问题,考虑到多用于通信负载较低的地方,大多数情况下,单个数据报可以传递当前所有数据,一般不会造成麻烦。

提供 WiFi 以连接到以太网。 WiFi在OSI网络互联模型的通信层、数据层和有线以太网方面存在一些差异,但是对于使用UDP或TCP的没有区别,只是通信的一种具体形式,不影响模块的用户。

在使用无线通信开发时,需要了解两个基本概念:IP地址和端口号。在UART通信中,数据线的两端分别连接不同的设备,属于1对1通信,无需进行身份设置即可区分两个设备;而信息通过网络传输时,由于设备种类繁多,需要对设备进行标识和区分。在网络中,此身份设置是 IP 地址。无论是 TCP 还是 UDP,目的 IP 地址和源 IP 地址都参与到通信中来标记不同的设备。

端口是编程电子工程师需要了解的另一个重要概念。端口与 IP(用于识别设备)一起使用,以识别同一设备内的不同功能或不同的感兴趣的通信数据。

2.2种工作模式

可以在3种模式下工作:模式、AP模式和与AP共存模式。工作在AP模式下,提供与路由器类似的功能,但最多只能连接4个,本文不做分析。在使用AT指令进行数据交换的地方,主要有以下两种形式:

1)主控板通过TTL UART与模块相连,通过UART发送AT指令控制连接路由器(AP)工作在模式下(图1a)。该模式下与主控板的关系相当于无线网卡与PC的关系;

gps模块与单片机通信_无线通信模块_gprs模块如何通信

2)主控板通过TTL UART与模块相连,通过UART发送AT指令控制模块工作在AP+模式。该模式下,模块可以与模块生成的AP所连接的其他模块或设备进行通信,可用于搭建小型局域网(最多可连接4台设备),但更多的场景还是用于无线AIR-KISS 等方法。该模块已配置 [5]。因为这种方式在应用中可能存在多个连接,控制信息需要动态传输,不能进行透传,本文不做讨论。

2.3 使用注意事项

工作在AT指令操作模式时,为了减少MCU的解码时间,简化内部协议栈的设计,对AT指令的设计和使用有一些额外的要求。在开发过程中注意这些要求将显着提高开发效率:

1)模块默认波特率(出厂设置)为;

2)AT 命令必须大写并以回车换行符“\r\n”结尾;

3)长度和间隔成帧机制。判断UART发送数据的时间间隔,如果时间间隔大于20ms无线通信模块,则认为一帧结束;否则,数据接收到上限2KB,则认为一帧结束。模块判断从UART传来的数据在一帧结束后,通过WIFI接口转发数据。成帧时间间隔为20ms,一帧上限为2KB。

2.4 AT指令透传设计

MCU通过串口和连接向串口发送控制信息或数据,同时返回控制命令的执行和从串口接收到的数据。透传需要发送一系列配置命令,模块执行命令或传输数据的时间通常不可忽略,有些命令可能无法执行,给模块的设计带来很大挑战。程序结构。

表1总结了可用于透明传输配置的指令的执行时间。测试将恢复出厂设置,近距离(

无线通信模块_gps模块与单片机通信_gprs模块如何通信

查阅指令列表,发现在进行透传配置后,有一条指令可以使模块上电后自动连接路由器,并在保存透传后绑定预定的远程和本地IP传输设置。和端口,再次进入透传状态。使用该功能后,当主控板检测到无法正常工作时,只需复位并重启模块即可。模块的配置可以使用PC端软件交互操作,无需对单片机进行额外配置,可显着降低编程难度。

要配置模块上电后自动进入透传模式,一般先在PC上测试。模块与USB串口桥(如或CH340)的TX和RX交叉连接后,确保模块有足够的3.3V电源,然后按照以下步骤测试和配置:

1.测试模块是否连接正确,即发送测试命令观察是否有反馈;

a) 注意模块的通讯波特率需要正确设置。一般判断波特率和电路是否连接正确的方法是给模块断电,重新上电观察模块上电时串口输出的状态信息(是否显示正确)收到了。

b) 发送 AT 测试命令,观察是否有反馈。有时模块配置上电后会自动进入透传模式,导致AT测试无响应。这时可以尝试发送“+++”退出透传。注意退出透传命令必须单独发出,即发送“+++”时,不能同时发送“\r\n”或其他字符,并单独加框“+++”必须发送。

2.发送AT+MODE=1,配置模块工作在透明模式;

3.发送AT+CWJAP="ap","pw" 配置模块连接指定路由器AP;其中ap和pw分别是要连接的AP的名称和密码;

4.发送AT+=0,配置模块工作在单连接状态;

5.发送AT+="192.168.x.y" 配置模块使用指定IP;其中“192.168.x.y”表示预期IP;

6.发送 AT+=1, "192.168.1.8", 51081, "UDP", 51080 配置模块透传对端IP "19 2.168.1.8" 和51081端口,监听51080端口;

7.发送AT+RST或断电再上电复位模块进入透传模式(图1a)。

gprs模块如何通信_无线通信模块_gps模块与单片机通信

经过以上配置,进入透传状态后,主控板通过TX发送的数据自动发送到远程IP绑定的端口,远程设备发送的数据到本地IP和端口也自动从 RX 传输。 (图 1a)。

3 结论

本文采用上述方法在所设计的现场运行的多路温控系统RTU上实现WiFi无线传输,运行稳定可靠。后来专门设计了相应的软件,实现了UDP透传的图形化一键配置,大大节省了WiFi无线设计的开发时间。

参考资料:

[1]曹振民,陈念生,马强,等。基于无线控制电路的设计[J].工控计算机, 2017, (01):68-69.

p>

[2] () Pte., Ltd., AT Set, Ver2.1.0, 2017.

[3] 范兴隆。在智能家居监控系统中的应用[J].单片机与嵌入式系统的应用,2016,(09):52-56.

[4],AT指令集(安信可修改),Ver0.21,2015.

[5]罗光伟.无线网络环境下手机智能硬件快速配置方法研究[D].华中科技大学,2015.

本文来自《电子产品世界》2018年第一期第34页,欢迎大家在写论文时引用并注明出处。

无线通信模块_gprs模块如何通信_gps模块与单片机通信