物联网基础:EC20 连接阿里云进行数据收发

物联网产品框架:传统设备使用通信模组连接云服务器(即上云)做数据收发。本文将使用EC20 封装好的AT指令通过 MQTT 协议连接阿里云,简单的介绍下移远4G通信模块 EC20 是如何连接服务器进行数据收发

1 关于EC20模块

1.1 EC20概述

EC20 R2.1 是移远通信推出的 LTE Cat 4 无线通信模块,采用 LTE 3GPP Rel.11 技术,支持最大下行速率 150Mbps 和最大上行速率 50Mbps;同时在封装上兼容移远通信 UMTS/HSPA+ UC20 模块以及多网络制式 LTE EC20/EC21/EC25/EG25-G 模块,实现了3G网络与4G网络之间的无缝切换。

EC20 R2.1 内置多星座高精度定位 GNSS(GPS/GLONASS/BeiDou/Galileo/QZSS)接收机;在简化产品设计的同时,还大大提升了定位速度及精度。

EC20 R2.1 内置丰富的网络协议,集成多个工业标准接口,并支持多种驱动和软件功能(适用于 Windows 7/8/8.1/10,Linux,Android 等操作系统下的 USB 驱动、eCall* 等),极大地拓展了 EC20 R2.1 在 M2M 领域的应用范围,如 CPE、路由器、数据卡、平板电脑、车载、安防以及工业级 PDA 等。

1.2 EC20优势

  • 专为 M2M 和 IoT 应用而设计的 LTE Cat 4 无线模块

  • 各网络制式的全面覆盖

  • 集成多星座 GNSS 接收机,满足不同环境下对快速、精准定位的需求

  • 支持 DFOTA、eCall* 和 DTMF 功能

  • MIMO 技术满足无线通信系统对数据速率和连接可靠性的要求

2 准备工作

2.1 EC20 USB驱动安装

安装过程参考移远官方手册:《Quectel_LTE&5G_Windows_USB_Driver_安装指导_V1.0.pdf》,有详细USB安装指导,该手册及驱动文件可以去移远官方下载或后续在公众号下载

驱动安装成功后,在电脑的设备管理器界面可以看到三个虚拟串口,如下所示:

2.2 阿里云创建设备

登录阿里云物联网平台:https://account.aliyun.com/login/login.htm?oauth_callback=https%3A%2F%2Fiot.console.aliyun.com%2Fquick_start

创建产品,填写产品相关信息:

产品功能定义

再自定义一个标识符用作数据下发,且发布上线:

创建设备:

得到设备的三元组信息:

三元组信息:
{
    
    
  "ProductKey": "a1ciEJx0Tqx",
  "DeviceName": "test01",
  "DeviceSecret": "2a202572cf9ab480ee012ae103cca21d"
}

查看设备的Topic信息:

设备Topic:
{
    
    
  "发布主题": "/sys/a1ciEJx0Tqx/test01/thing/event/property/post"
  "订阅主题": "/sys/a1ciEJx0Tqx/test01/thing/service/property/set"
}

2 连接阿里云

使用串口调试助手,选择 USB AT Port端口,并对串口调试助手做简单设置

2.1 AT指令连接阿里云:

AT指令连接阿里云过程:

1)AT指令入网、模块测试

序号 AT指令 指令解析
1 AT 测试指令,若返回OK,则模块可正常通信
2 AT+CPIN? 检查SIM卡是否在位
3 AT+CSQ 查询信号质量
4 AT+CREG? 查询入网状态
5 AT+CGATT=1 激活网络
6 AT+CGATT? 查询激活状态
7 AT+CGPADDR 获取PDP地址

2)AT指令连接阿里云服务器

序号 AT指令 指令解析
1 AT+QMTCFG=“recv/mode”,0,0,1 配置为接收模式
2 AT+QMTCFG=“aliauth”,0,“ProductKey”,“DeviceName”,“DeviceSecret” 配置阿里云上的设备信息
3 AT+QMTOPEN=0,“iot-as-mqtt.cn-shanghai.aliyuncs.com”,1883 打开一个MQTT客户端网络
4 AT+QMTCONN=0,“DeviceName” 连接MQTT服务器

此时可在阿里云物联网平台看到设备 test01 的状态已由未激活转为在线状态

注意将AT指令里面的三元组信息替换给自己设备的三元组,AT指令详细的参数解析可参考移远的AT指令手册:《Quectel_EC20_R2.1_AT_Commands_Manual_V1.0.pdf》、《Quectel_EC2x&EG9x&EM05_TCP(IP)_AT_Commands_Manual_V1.0.pdf》、《Quectel_EC20_R2.1_AT_Commands_Manual_V1.0.pdf》,AT指令手册可在移远官方下载,也可在公众号后台回复 EC20模块获取EC20模块全套资料

2.2 发送数据

AT指令发送数据的过程如下:

序号 AT指令 指令解析
1 AT+QMTPUB=0,0,0,0,"/sys/ProductKey/DeviceName/thing/event/property/post" 发布主题消息
2 {params:{IndoorTemperature:27.5}} 发送的JSON数据
3 1a 数据结束符,需采用HEX形式发送

此时,可在阿里云设备详情界面看到我们用EC20发送到阿里云的数据

2.3 接收数据

AT指令接收服务器数据指令如下:

EC20接收服务器下发的数据只需要订阅服务器的发布主题,及设备订阅主题:/sys/a1ciEJx0Tqx/test01/thing/service/property/set 即能接收到服务器下发的数据

序号 AT指令 指令解析
1 AT+QMTSUB=0,1,"/sys/ProductKey/DeviceName/thing/service/property/set",0 订阅服务器发布主题

当阿里云在线调试界面下发数据时,在本地串口调试助手数据接收区就能收到服务器下发的数据

笔者知识有限,如果发现本文有错误的地方欢迎批评、指正,若本文对您有所帮助,点赞、在看也是笔者坚持的动力;扫码关注微信公众号,后台回复 EC20模块获取EC20全套资料

猜你喜欢

转载自blog.csdn.net/qq_42965739/article/details/107030413