赞
踩
第三章 为ESP8266-NodeMCU搭建ArduinoIDE环境
第六章 使用Aruino与云产品流转实现远程控制ESP8266
前面我们已经实现了如何使用ESP8266连接阿里云并实现阿里云云产品流转,通过本文,我们将灵活运用该规则去实现A设备通过云平台去控制B设备。
提示:以下是本篇文章正文内容,下面案例可供参考
我们使用ESP8266实现远程控制是使用其通过阿里云平台进行数据传输,从而摆脱局域网的束缚,实现阿里云平台A设备远程控制B设备。后续加上我们的上位机程序(如微信小程序、AndroidAPP、Web端)实现真正的远程控制我们的家居系统,真正距离与有线的束缚。
创建两个云上设备
如还不知道具体如何创建和连接云上设备可先看看第一章和第四章。
编写SQL
添加操作
如还不知道具体如何创建和连接云上设备可先看看第五章。
链接:https://pan.baidu.com/s/1jhDMaWmhT8a0S82x0NXlKA?pwd=yckz
提取码:yckz
设备2的信息
AliyunIoTsDK::bindData("LEDSwitch",LEDSwitchCallback);
该行代码调用了AliyunIoTSDK的Arduino库,该函数第一个参数(LEDSwitch)为寻找收到的MQTT消息的字段,第二个参数(LEDSwitchCallback)为跳转的回调函数,若接收到的MQTT消息中含有“LEDSwitch”,则会跳转至第二个参数的那个回调函数。
- // LED状态修改的回调函数
- void LEDSwitchCallback(JsonVariant p)
- {
- int LEDSwitch = p["LEDSwitch"];
- // 变更LED状态
- Serial.println("LEDSwitch:");
- Serial.println(LEDSwitch);
- digitalWrite(LED_BUILTIN, LEDSwitch);
- }
该函数是回调函数,在回调函数中我们将LEDSwitch字段后的数据赋给变量LEDSwitch,并且将该变量的值赋给板子上的LED灯引脚,对其进行控制。后续,想要加入其他的执行的事件与变化都可以在回调函数里加,或者重新加入更多的识别函数与回调函数。
显示“在线”
点击“关闭-1”、“设置”
串口查看是否接收到消息与进入回调函数。
‘MQTT.fx模拟设备1
选择的主题来自于这里
- {
- "params":{
- "LEDSwitch":0
- }
- }
总结
通过本文。我们实现了如何使用设备A远程控制设备B,这样如果我们人在学校,但是设备在宿舍,就可以远程控制我们在宿舍的设备啦。比如:远程打开宿舍的门锁或者开灯等等。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。