ESP8266 AT指令连接中国移动物联网开放平台OneNet

WIFI方式 准备工作

选用ESP8266串口WIFI模块,通过AT指令控制WIFI模块接入互联网,依次完成与接入互联网、与OneNet服务器建立TCP连接、传输数据等操作,ESP8266串口WIFI模块硬件实物图如下:

与PC连接得实物图如下:

RestFul API上传数据

串口配置完成,就可以利用串口调试工具操作ESP8266串口WIFI模块,使其与OneNet建立连接、传输数据。

首先在模块串口调试工具中输入"AT"并加上回车,点击"手动发送"按钮,WIFI模块返回"OK",说明模块工作正常,如下图:

1)配置WIFI模块;

模块配置和用RestFul API接入OneNet相同,依次发送如下几个命令到WIFI模块:

AT+CWMODE=3 //设置WIFI应用模式

AT+RST //重置WIFI模块

AT+CIFSR//查询本地IP

AT+CWJAP="your ssid","password" //连接无线路由器

注意:这些配置完成后,若模块重新上电,可直接进入第二步,与服务器建立TCP连接。

2)和OneNet服务器建立TCP连接,依次发送命令:

AT+CIPSTART="TCP","183.230.40.33",80 //和服务器建立TCP连接

AT+CIPMODE=1 //进入透明传输模式

AT+CIPSEND //开始传输

命令执行结果如下图所示:

到此,我们可以发送前面准备好的数据了,发送HTTP数据报为:

POST /devices/131658/datapoints HTTP/1.1

api-key: mgDiVsQ7E8bPUwfBDtTy4K8yMtMA

Host:api.heclouds.com

Content-Length:63

{"datastreams":[{"id":"sys_time","datapoints":[{"value":50}]}]}

返回结果如下图:

该返回结果说明,本次上传数据成功,数据上传成功后,OneNet服务器会关闭TCP连接,那么下次进行数据传送,需要重复步骤2)。

EDP方式上传数据

用EDP协议接入OneNet过程和RestFul API方式类似,步骤如下:

1)配置WIFI模块;

模块配置和用RestFul API接入OneNet相同,依次发送如下几个命令到WIFI模块:

AT+CWMODE=3

AT+RST

AT+CIFSR

AT+CWJAP="your ssid","password"

2)和OneNet服务器建立TCP连接,依次发送命令:

AT+CIPSTART="TCP","183.230.40.39",876 //和服务器建立TCP连接

AT+CIPMODE=1 //进入透明传输模式

AT+CIPSEND //开始传输

命令执行结果如下图所示:

和OneNet平台上设备建立连接,发送数据包为:

10 2F 00 03 45 44 50 01 40 00 80 00 06 31 33 31 36 35 38 00 1C 6D 67 44 69 56 73 51 37 45 38 62 50 55 77

66 42 44 74 54 79 34 4B 38 79 4D 74 4D 41

至此,可以连续不断发送准备好的用户数据包:

80 6A 80 00 06 31 33 31 36 35 38 01 00 5E 7B 0A 09 22 64 61 74 61 73 74 72 65 61 6D 73 22 3A 09 5B 7B 0A

09 09 09 22 69 64 22 3A 09 22 73 79 73 5F 74 69 6D 65 22 2C 0A 09 09 09 22 64 61 74 61 70 6F 69 6E 74 73

22 3A 09 5B 7B 0A 09 09 09 09 09 22 76 61 6C 75 65 22 3A 09 22 32 31 22 0A 09 09 09 09 7D 5D 0A 09 09 7D

5D 0A 7D

设置好发送间隔,选择串口调试工具的自动发送选项,点击"手动发送",这样我们就可以通过串口WIFI模块和OneNet服务器实现了EDP数据传输,执行结果如下图:

在OneNet平台的Demo-test设备下,点击相应的数据流sys_time,查看数据上传情况。

相关推荐
中科岩创3 小时前
广东某海水取排水管线工程边坡自动化监测
大数据·物联网
fan_0004 小时前
LKT4304新一代算法移植加密芯片,守护 物联网设备和云服务安全
物联网·安全
7yewh8 小时前
嵌入式知识点总结 ARM体系与架构 专题提升(四)-编程
arm开发·stm32·单片机·嵌入式硬件·mcu·物联网·51单片机
『往事』&白驹过隙;8 小时前
操作系统(Linux Kernel 0.11&Linux Kernel 0.12)解读整理——内核初始化(main & init)之缓冲区的管理
linux·c语言·数据结构·物联网·操作系统
Jzin9 小时前
【物联网】ARM核常用指令(详解):数据传送、计算、位运算、比较、跳转、内存访问、CPSR/SPSR、流水线及伪指令
arm开发·物联网
7yewh12 小时前
嵌入式知识点总结 操作系统 专题提升(一)-进程和线程
linux·arm开发·驱动开发·stm32·嵌入式硬件·mcu·物联网
LS·Cui1 天前
第7章 任务的定义与任务切换的实现--总结
物联网
7yewh1 天前
嵌入式知识点总结 C/C++ 专题提升(七)-位操作
c语言·c++·stm32·单片机·mcu·物联网·位操作
Anna_Tong1 天前
物联网边缘(Beta)离全面落地还有多远?
物联网·阿里云·边缘计算·腾讯云·智能制造
雪兽软件1 天前
零售业革命:改变行业的顶级物联网用例
物联网