ESP8266-Arduino远程控制继电器(开关)

Arduino通过ESP8266将数据上传给贝壳物联服务器,在贝壳物联平台实现远程控制继电器(开关)。

文章目录

  • 硬件准备
  • 接线
  • ESP8266透传设置
  • AT指令设置
  • 添加网络设备
  • 代码
    • 使用方法
  • 远程控制

硬件准备

Arduino控制板 1
ESP8266-01模块 1
面包板 1
10K电阻 2
LED灯 1
杜邦线 若干

接线

Arduino - ESP8266
3.3V VCC
GND GND
RX TX
TX RX
3.3V 10K CH_PD
LED Arduino
正极 10K 4
负极 GND

ESP8266透传设置

ESP8266-Arduino远程控制继电器(开关)_第1张图片
将esp8266通过USB转TTL接入电脑

ESP8266-01 USB转TTL
VCC 3.3V
GND GND
RX TX
TX RX
CH-PD 3.3

打开串口助手

ESP8266-Arduino远程控制继电器(开关)_第2张图片
将波特率设置为115200

AT指令设置

依次输入以下命令(v0.9.5.2版):


//设置WiFi应用模式为Station
AT+CWMODE=1
//连接到WiFi路由器,请将SSID替换为路由器名称,Password替换为路由器WiFi密码
AT+CWJAP="SSID","Password"
//连接贝壳物联服务器
AT+CIPSTART="TCP","www.bigiot.net",8181
//设置为透传模式
AT+CIPMODE=1
//进入透传模式
AT+CIPSEND

v1.0+固件命令如下:

AT
ATE0
AT+RESTORE
AT+CWMODE=3
AT+CWJAP="SSID","Password"
AT+CIPMUX=0
AT+CIPMODE=1
AT+SAVETRANSLINK=1,"121.42.180.30",8181,"TCP"

完成以上命令重启,自动进入透传模式,并连接贝壳物联服务器。(固件不同的AT指令略有差异,根据实际配置。)
固件烧录方法

添加网络设备

打开贝壳物联,在“添加新设备”中添加自己的设备,完成后记住设备ID(DEVICEID)、设备密码(APIKEY)
ESP8266-Arduino远程控制继电器(开关)_第3张图片

代码

代码地址
进入以上链接,依次点击 bigiotArduino -> Download ZIP下载。
由于固件版本不一样,AT指令也有所不同,代码中有v0.9.5.2和v1.0+的版本。
可通过AT+GMR查看固件版本。

使用方法

解压后有以下文件:

    examples/  
    libraries/  
    README.md
    ...
  • 添加aJson库文件:将libraries/aJson文件夹全部复制到Arduino IDE的库文件夹内。

  • 用Arduino IDE打开examples/ESP8266/AT/kaiguan/kaiguan.ino

  • 按代码中的注释说明,修改其中的DEVICEID、APIKEY两个参数,上传至Arduino开发板,Arduino和Esp8266同时断电重启。
    到此步,理论上是可以实现数据上传至贝壳物联平台的,但是本人所用ESP8266的型号不同所以出现了一些无法连接平台的问题,这点在日后处理之后再做更新。

远程控制

  • 网页端控制
    登录贝壳物联>个人中心>智能设备>设备对话>
    查看在线设备
    ESP8266-Arduino远程控制继电器(开关)_第4张图片
    发送“play”命令即可控制继电器(开关)了
    ESP8266-Arduino远程控制继电器(开关)_第5张图片
    ESP8266-Arduino远程控制继电器(开关)_第6张图片
    当对话框中出现“LED on!”时Arduino4引脚的LED灯亮。
  • 微信小程序控制
    添加“贝壳物联”小程序,登录自己的账号即可看见自己添加的设备。
    ESP8266-Arduino远程控制继电器(开关)_第7张图片
    点击设备进入控制界面即可进行控制
    ESP8266-Arduino远程控制继电器(开关)_第8张图片
    本文参考于贝壳物联:透传设置脚本,设置成功后自动连接贝壳物联平台

你可能感兴趣的:(ESP8266,Arduino)