esp8266 AP模式控制继电器开关

1 软件硬件资源

1.1所需要的硬件:

1)任意一款带有串口的MCU或者usb转ttl。
2)esp8266 -01s
3)继电器
4)插座

1.2软件调试工具

1)TCP手机客户端,可以在手机商城下载。app长这个样子:tcp手机app
2)如果你想在电脑上调试,用任何一个tcp调试工具都行。

2避坑指南

1)淘宝上的esp8266有很多种,有安信可生产的,还有一些小厂自己生产的。本人在使用esp-01S过程中发现虽然数据手册说EN管脚自带上拉,但是有些模块确实不带内部上拉,所以必需要自己外接10K上拉电阻,否则模块根本启动不了。接线图如下:
esp-01s接线图
如果你的esp连接电脑,tx rx连接单片机的rx tx即可。如果你用esp接usb转ttl,一定要用个质量过硬的usb转TTL,因为很多usb转ttl的3,3V输出不稳定,导致模块工作异常!!!
2)和上面说的差不多,一定要保证esp的供电稳定,最好用示波器看下电源的纹波。

3 AT指令讲解

esp8266有STA模式和AP模式,sta模式需要模块去连接一个路由器,ap模式模块本身就是一个热点,可以让别人来连接。

这里我们使用AP模式,好处是esp8266本身产生热点,只要程序不变,热点的ssid就不变,换一个地方也可以正常使用。sta模块的话,你在家里用,需要连接你家里的路由,在办公室用,要连接办公室的路由,路由的ssid是会变化的,使用不方便。

下面讲解AT指令:
AT+CWMODE=2
设置模块为AP模式,模块本身可以产生一个热点。

AT+CWSAP=“ESP8266”,“12345678”,11,3
设置热点的ssid:ESP8266和密码:12345678。11代表信道,3代表加密方式。这条命令执行之后,你可以在手机或者电脑里看到一个名字叫ESP8266的wifi出现了。

AT+CIPMUX=1
启动多连接,可以好几个客户端来连接,方便你和你女票同时控制插座。

AT+CIPSERVER=1,8000 //开启服务器模式,端口号8000
设置esp8266为tcp sever,端口号8000,设置为sever的好处是,模块上电执行完前面命令后,产生的ip地址是固定的,模块重启之后ip也不变。你可以随时随地打开手机来连接这个服务器。如果模块是客户端模式,你还得编程控制啥时候模块来连接你的手机服务器。

AT+CIFSR
查询模块的ip地址
esp回复:
+CIFSR:APIP,“192.168.4.1” //esp的ip地址
+CIFSR:APMAC,“32:83:98:94:1a:b7”

然后,你的手机连接ESP8266这个网络,打开app,建立一个client,输入ip地址192.168.4.1,端口号8000,连接。这时候esp这边会显示0,CONNECT,表示给你的手机客户端分配的网络id号是0.

这时连接已经建立完成,下一步就是用app控制你的继电器通断了。

4手机APP操作

打开app,选择键盘菜单,选择编辑模式,添加开关的名字,和点击开发发送的字符串,配置好的开关如下:
开关面板
然后点击开灯,esp8266会收到 +IPD,0,7:kaideng,表示报文来自0号客户端,接受了7字节,报文内容是kaideng。单片机可以根据报文内容控制继电器的开和关,达到控制智能插座的作用。

pS:比方你家里有俩人,另一个也可以连接这个服务器,控制继电器的开关,这也就能达到大家都可以控制插座的目的了。

不过这种应用有缺点,就是不能远程进行控制。下期更新用web远程控制继电器开关


版权声明:本文为qq_40459947原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。