当前位置: 首页 > news >正文

【正点原子 D20 WiFi 模块】介绍、配置、工程测试

【正点原子 D20 WiFi 模块】介绍、配置、工程测试

本文介绍了正点原子 D20 WiFi 模块的相关信息,包括参数资源、功能特点、模式配置、上位机等,并通过 MQTT 透传实现相关工程测试、Home Assistant 平台数据上传等。

介绍

ATK-D20 是由正点原子团队(ALIENTEK)自主研发的一款高性能 2.4GHz WiFi DTU 模块,主要用于实现串口设备通过 WiFi 无线方式接入网络。

  • 该模块支持 AP(接入点)、STA(客户端)两种联网模式,可灵活适应不同的网络接入环境。
  • 通过配置,串口设备可借助 ATK-D20 快速连接至局域网或互联网,实现与远程服务器之间的双向数据通信,广泛适用于工业自动化、物联网终端、远程监控等场景。
  • 模块支持 TCP、UDP、HTTP、MQTT、原子云等多种通信协议,支持 AT 指令控制、注册包、心跳包、Modbus 采集等功能,极大地方便了二次开发与系统集成。

外观

在这里插入图片描述

侧面

在这里插入图片描述

硬件接口

在这里插入图片描述

在这里插入图片描述

功能特点

  • 支持 AP(接入点)、STA(客户端)双模式切换
  • 支持多种工作模式:NET(TCP 客户端/TCP 服务器/UDP 客户端/UDP 服务器)/HTTP/MQTT
  • 支持接入云服务器平台:原子云/阿里云/OneNET
  • 支持自动轮询采集任务功能,可选自定义轮询和 Modbus 轮询,最大支持 64 条命令
  • NET 模式支持 4 个网络连接同时在线
  • 支持动态域名和 IP 地址访问
  • 支持注册包/心跳包功能
  • HTTP 模式下支持 GET 和 POST 请求,并且支持请求头参数配置等功能
  • 支持多种配置方式:AT 指令、透传指令、上位机
  • 支持自动重连、掉线监测、内置看门狗、确保稳定可靠
  • 支持串口时间与长度打包机制,串口数据缓存每路连接为 4KB
  • 支持多路数据分发功能
  • 支持实时时间查询功能
  • 支持多种固件升级模式:本地升级、远程升级和自动更新固件
  • 支持 5~28V 宽电压供电,满足各种场合

指示灯

在这里插入图片描述

NET
  • 灯灭:模块未工作
  • 灯亮 200ms/灯灭 1800ms:没有连接上 WiFi(STA 模式)
  • 灯亮 250ms/灯灭 250ms:数据通讯状态
LINK

MQTT

  • 未连接:LINK 亮 50ms/灭 1s
  • 连接成功:LINK 常亮

原子云

  • 未连接:LINK 亮 50ms/灭 1s
  • 连接成功:LINK 常亮

模式

设备支持两种工作模式:STA(客户端)模式 和 AP(接入点)模式。

STA 模式

STA(客户端)模式下,设备以 Wi-Fi 客户端身份接入已有的无线局域网,借此访问局域网或互联网。

此模式支持以下功能模式

  • ① 网络(NET)模式
  • ② HTTP 模式
  • ③ MQTT 模式
  • ④ 阿里云模式
  • ⑤ OneNET 模式
  • ⑥ 原子云模式(新版/旧版)
AP 模式

在 AP(接入点) 模式下,设备自身作为无线热点,供其他终端(如手机、电脑)连接进行本地通信或参数配置

  • ①AP 模式

上位机介绍

DTU 配置软件是为正点原子 ATK-D20 定制的一款多功能上位机软件。

  • 具备多种功能

    • 串口收发数据功能;
    • 提供一键配置与查询按钮操作;
    • 定位信息地图展示功能;
    • 自定义 AT 指令发送框;
    • AT 指令帮助手册;
    • 固件升级等。
  • 上位机在 资料包 - 2,软件资料 - 1,配置软件 文件夹下。

在这里插入图片描述

硬件连接

在使用前,需要先准备以下硬件资源:

  1. 一套 ATK-D20 产品;
  2. 外部供电电源(可使用 5V/1A 的适配器);
  3. 一块 DTU 测试板或 USB 转 TTL 串口工具;
  4. 一根全频段天线(产品配套)
接线图

在这里插入图片描述

D20USB to TTLNote
RXTXDReceive
TXRXDTransmit
GNDGNDGround
+电源正极Positive
-电源负极Negative

连接上位机

  • USB 转 TTL 串口工具数据线连接至电脑 USB 端口;

  • 打开上位机 ATK-D2x配置软件

  • 软件串口参数配置,COM 选择串口设备端口号;

  • 出厂默认串口参数为:

    • 波特率 115200

    • 停止位 1

    • 数据位 8

    • 奇偶校验位 NONE

  • 打开串口。

WiFi 连接

打开串口后,首先连接无线网络

  • 进入 WiFi 配置 页面;
  • 选择 STA(客户端) 模式;
  • 填写 WiFi 名称(SSID) 和密码;
  • 点击上方 保存所有参数 按钮;
  • 点击 重启 使配置生效。

在这里插入图片描述

网络连接测试
信号强度检测

点击 查询信号强度 按钮

  • 正常范围:0 ~ -50(信号好)
  • 信号差:-50~-80
  • 异常值:-128(无信号)
IP 模式检查

点击 IP 模式信息 按钮

  • 正常:显示有效 IP 地址
  • 异常:IP=0.0.0.0(未获取 IP)
  • 忽略项:DNS=0.0.0.0
PING 测试

输入目标地址 bing.com ,点击 PING 请求 按钮

  • 良好:丢包率 0%
  • 基本可用:丢包率<100%
  • 故障:丢包率 100%

在这里插入图片描述

固件升级

在网络连接的基础上,打开左侧 固件升级 菜单栏;

  • 固件加载方式为 网络加载固件
  • 点击 网络固件升级 按钮;

在这里插入图片描述

  • 待升级完成,自动重启,并输出 ATK-D20;
  • 此时可查询固件信息参数等,固件升级完成。

工程测试

ATK-D20 默认为 NET 网络连接模式,这里使用 MQTT 工作模式。

通过 MQTT 协议,将单片机采集到的温湿度信息上传至 Home Assistant 智能家居平台。

MQTT 配置

  • 检查硬件连接,打开 ATK-D2x配置软件,打开串口;

  • 进入左侧 模式配置 界面,工作模式选择 MQTT;

  • 填写 MQTT 服务器用户名、密码、ip地址、订阅主题、发送主题等信息;

  • 点击上方 保存所有参数 按钮,此时上位机自动发送 AT 指令,完成 MQTT 配置并自动重启;

在这里插入图片描述

MQTT 测试

这里使用 MQTTX 和串口助手进行 MQTT 透传测试。

MQTTX

使用 MQTTX 软件作为客户端进行数据接收。

  • 新建连接,填写 MQTT 服务器地址、用户名信息等,点击 Connect 按钮;
  • 新建订阅主题,输入 ATK-D20 上位机对应的发布主题信息;
  • 在发送主题中输入 ATK-D20 上位机对应的订阅主题;
  • 通过上位机和 MQTTX 软件可实现 MQTT 消息互传;

在这里插入图片描述

串口助手

使用串口调试助手进行 MQTT 透传测试

  • 关闭上位机调试软件的串口连接;
  • 打开串口调试助手,配置串口信息,打开串口;
  • 串口助手发送消息,MQTTX 可实现接收、以及消息互传;

在这里插入图片描述

  • 实现正常收发,可连接单片机实现项目应用。

Home Assistant

使用单片机串口发送数据至 ATK D20 并通过 MQTT 透传至 Home Assistant 平台。

硬件连接

实物图

在这里插入图片描述

连接方案

MCUATK-D20Note
RXTXReceive data
TXRXTransmit data
GNDGNDGround

代码

这里使用 RP2350 单片机通过 AHT10 传感器采集环境温湿度数据,并通过串口发送至 ATK-D20 模块,D20 由 MQTT 透传发送至 Home Assistant 平台。

  • RP2350 单片机代码如下
# main.py  ——  AHT10+OLED 本地显示,同时串口 JSON 输出给 ATK-D20 做 MQTT 透传
from machine import Pin, I2C, UART
import utime, aht10, ssd1306
import ujson# OLED 初始化
i2c = I2C(0, scl=Pin(5), sda=Pin(4), freq=400_000)
oled = ssd1306.SSD1306_I2C(128, 64, i2c)
aht = aht10.AHT10(i2c, address=0x38)# 打开串口,波特率与 D20 配置一致(默认 115200)
uart = machine.UART(1, baudrate=115200, tx=8, rx=9)def display_TH(t, h):oled.fill(0)oled.text("Temperature: ", 0, 0)oled.text("{:.2f} C".format(t), 0, 15)oled.text("Humidity: ", 0, 35)oled.text("{:.2f} %".format(h), 0, 50)oled.rotate(0)oled.show()while True:temp = aht.temperature()humi = aht.humidity()# 1. 本地显示display_TH(temp, humi)print('Temp: {:.2f} C, Humi: {:.2f} %'.format(temp,humi))# 2. 打印到串口,D20 透传至 MQTTuart.write(ujson.dumps({"temp": round(temp, 2), "humi": round(humi, 2)}) + '\n')utime.sleep(2)      # 2 s 上报一次

保存代码。

效果

连接硬件,运行程序,终端打印温湿度信息;

在这里插入图片描述

配置 HA 平台的 YAML 文件,根据主题添加相关参数;

mqtt:sensor:- name: "AHT10 温度"state_topic: "homeassistant/aht10"unit_of_measurement: "°C"value_template: "{{ value_json.temp }}"- name: "AHT10 湿度"state_topic: "homeassistant/aht10"unit_of_measurement: "%"value_template: "{{ value_json.humi }}"

进入概览页面,编辑仪表盘,添加对应的卡片即可;

在这里插入图片描述

总结

本文介绍了正点原子 D20 WiFi 模块的相关信息,包括参数资源、功能特点、模式配置、上位机等,并通过 MQTT 透传实现相关工程测试、Home Assistant 平台数据上传等,为该产品在工业物联网领域的开发设计和快速应用提供了参考。

http://www.dtcms.com/a/562733.html

相关文章:

  • Linux 下 tar 命令详解:归档与压缩完整指南
  • 戚墅堰做网站wordpress调用 自定义php代码
  • 巩义市住房和城乡规划建设局网站建站网站加盟
  • 有关网站建设的视频梅林固件 搭建wordpress
  • 网络层计算题
  • 网站建设要后台吗个人网站建设图片素材
  • 企业网站群建设怎么推广比较好
  • 网站建设收费标准方案wordpress 页面模板不显示不出来
  • WSL实践二
  • 网站建设交流推广上海人才招聘网官网
  • 自主建网站百度百度一下就知道
  • 室内设计案例去什么网站中文wordpress 主题
  • 贺州市住房与城乡建设局网站wordpress内容页不显示
  • php开发大型网站开发建筑培训app
  • bind和lambda中的拷贝赋值
  • 广州网站建设=388元做网站流量
  • 郴州网站维护交互式网站备案难吗
  • linux中多路复用IO:select、poll和epoll
  • 企业网站怎样做优化哈尔滨网站设计人
  • 游戏的网站网站的注册和登录怎么做
  • php网站开发技术做wordpress模板赚钱
  • (免费分享)springboot+vue心理健康评测系统
  • 公司网站不备案长春网络推广长春seo公司
  • phpstudy搭建本地网站保密管理咨询公司
  • 济南网站建设用途北京网络营销公司网页
  • 【深度神经网络】优化深度神经网络
  • 我不想找之前做网站的续费青岛济南网页设计公司
  • 石狮网站定制南昌网站建设兼职
  • 网站开发属于什么模式树莓派做的网站
  • 建设领域现场专业人员报名网站seo怎么优化方案