签到天数: 866 天 [LV.10]以坛为家III
|
YEELINK 云平台已失联,帖子仅供参考学习,请谨慎阅读!!
ESP8366连接Yeelink物联平台 http GET/POST获取、改变云端数据,实现远程控制
模块:ESP-01 固件版本:00200.9.5(b1)
想要实现远程控制,还有必不可少的部分:设备软硬件、云端服务器和手机APP,手机APP或网页。有了ESP wifi 模块,还需要云端服务器,这个想要自己搞一套出来确实不容易,需要了解的知识也很多!所以国内出现了免费云平台:Yeelink,乐联网等,方便了开发者开发个性的智能产品!当然还有许多其他平台也在做这块,其中 IoTgo:一个完全开源的物联网平台,通过部署IoTgo建立自己的云端服务器,并且它将所有源代码都开源给用户,喜欢折腾的有福了;如果能力有限还是使用现成的平台比较好。
--------------------------------------------------------------------------------------------------------------------------
步骤一:yeelink平台注册自己的传感器设备
避免篇幅过长,Yeelink平台用户注册就不在这里详述了,查看下面网址:http://www.yeelink.net/developer/doc/11注册用户后,进入用户中心:
添加自己的新设备:
进入管理设备界面,点击增加传感器:
增加自己的传感器设备(我们以简单的BUTTON为例):
完成后,在管理设备界面,可以看到已添加的传感器设备Smart Button:
添加的每个传感器都会有个ID号码,有了它,你就可以通过网络获取它的云端状态了!
在我的账户设置中,找到你的 API KEY!
记下 设备编号 、传感器编号及你的 API KEY,在下面的配置中会用到的!
云端准备完成,下面来配置模块吧!
--------------------------------------------------------------------------------------------------------------------------
步骤二:模块配置及获取、改变云端按钮状态
首先模块通过USB串口模块连接至电脑,打开电脑端串口软件,进行配置。
######## 获取GET网页数据(按钮状态):
AT+CWMODE=1 模块配置到 STA 模式
AT+CIPMUX=0 模块配置为单路连接状态
上面两条指令不用重复配置,重启不会改变。
AT+CWJAP="YFROBOT","XXX" 连接到路由器(YFROBOT为SSID,XXX为密码)
AT+CIPSTART="TCP","www.yeelink.net",80 建立TCP连接
AT+CIPMODE=1 设置透传模式
AT+CIPSEND 发送请求
回显:">",发送网页代码(再次请求或改变数据时,无需以上AT指令配置,直接发送网页代码即可)
GET /v1.0/device/你的设备ID/sensor/你的传感器ID/datapoints HTTP/1.1
Host: www.yeelink.net
Accept: */*
U-ApiKey: 你的API KEY
Content-Length: 0
Connection: close
//此处需要发送空行即“\r\n”
完成以上请求代码后,返回一串数据,其中包含 Smart Button 的状态值 "value":0。
发送网页代码(再次请求或改变数据时,无需以上AT指令配置,直接发送网页代码即可)
GET /v1.0/device/你的设备ID/sensor/你的传感器ID/datapoints HTTP/1.1
Host: www.yeelink.net
Accept: */*
U-ApiKey: 你的API KEY
Content-Length: 0
Connection: close
//此处需要发送空行即“\r\n”
完成以上请求代码后,返回一串数据,其中包含 Smart Button 的状态值 "value":1。
######## 上传POST网页数据(按钮状态):
如果你未完成了GET数据过程,则先对模块进行配置:
AT+CWMODE=1 模块配置到 STA 模式
AT+CIPMUX=0 模块配置为单路连接状态
上面两条指令不用重复配置,重启不会改变。
AT+CWJAP="YFROBOT","XXX" 连接到路由器(YFROBOT为SSID,XXX为密码)
AT+CIPSTART="TCP","www.yeelink.net",80 建立TCP连接
AT+CIPMODE=1 设置透传模式
AT+CIPSEND 发送请求
如果已经配置完成,则直接发送POST代码即可:
改变按钮状态为:1
POST /v1.0/device/你的设备ID/sensor/你的传感器ID/datapoints HTTP/1.1
Host: api.yeelink.net
Accept: */*
U-ApiKey: 你的API KEY
Content-Length: 11 发送数据长度
Content-Type: application/x-www-form-urlencoded
Connection: close
//必须发送空行
{"value":1} 数据长度为11
发送完代码后,刷新网页即可看到按钮状态已经改变。
改变按钮状态为:0
POST /v1.0/device/你的设备ID/sensor/你的传感器ID/datapoints HTTP/1.1
Host: api.yeelink.net
Accept: */*
U-ApiKey: 你的API KEY
Content-Length: 11 发送数据长度
Content-Type: application/x-www-form-urlencoded
Connection: close
//必须发送空行
{"value":0} 数据长度为11
发送完代码后,刷新网页即可看到按钮状态已经改变。
串口及网页显示如下图:
-----------------------------------------------------------end-----------------------------------------------------------
网页可以改变按钮状态,同样的手机端APP也可以,下载APP软件:
Yeelink手机APP 下载地址:http://www.yeelink.net/developer/tools
安装完成后,打开软件(保持手机连网状态):
依照上面步骤会发现,手机上的Smart Button状态和网页、模块都是同步的!
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|