用esp8266(esp32)+继电器模块DIY智能插座,并通过web控制

模块

  • 刷某宝的时候看到esp-01s+配套的继电器模块,就下单了,想买来玩玩
  • 发现少了个刷写工具后又买了个配套的刷写工具
  • 然后还买了ac220v转dc5v的模块,继电器需要5v供电(有的3v)

它们长这样

关于esp-01s模块

  • esp-01s模块是安信可的,用的是esp8266EX的芯片,没带3.3v稳压芯片,也没串口芯片,比较小巧
  • 价格很便宜,5元包邮,除了一个esp8285,还没找到更便宜的wif模块
  • 搭配的下载器刷写很方便,下载器有自动下载电路,也不需要杜邦线,杜邦线太容易松了
  • 但它只有两个可怜的IO口,一个IO(io2)接了个led,一个(io0)就是用来控制继电器了

关于继电器模块(realy)

翻到背面,继电器模块有5个引出的口

  • 左边VCC、GND是继点器的5v供电
  • 右边NC、COM、NO分别是继电器的常闭、公共端、常开,用来控制高电压设备的通断。
  • 这里只用了公共端(COM)和常开(NO),向IO0写入低电平时,常开(NO)闭合,NO和COM导通,设备就通电了

代码

代码上传gitee

https://gitee.com/ccdd8899/esp8266_relay

有了esp-01s后开始写代码,环境是windows+vscode+PlatformIO+arduino框架

  1. 开始想写一个简单的可以每日定时开关的程序,并通过web控制
  2. 然后参考了其他智能插座的定时任务,又加了循环开关和倒计时两个模式
  3. 最后再加了个web配网功能  

 代码写了好几天,web页面都是用的ajax,暂时没有接入物联网平台,通过本地网络web控制,手机上控制也感觉很方便。

实现的功能

  1. 可通过ntp同步网络时间
  2. 可通过web控制继电器开关,并实现了三个简单的定时任务模式,每日定时开关、循环开关、一次性倒计时,web页都是异步实现
  3. 可通过web配网,配网时可扫描wifi。开启时会尝试sta模式3次连接wifi,连不上则启动sta_ap模式
  4. web配置的数据可以保存在芯片中

接线

  1. 代码写好测试没问题后,我想通过它控制设备开关,但最好通过一个插座来控制设备。
  2. 我又找了一个闲置了很久的插座改装了一下,把插座、继电器、ac220vto5v模块的线接起来。
  3. 线连起来后,感觉220v的电压有些危险,我把插座插头接在一个带有短路会自动断开的插座上测试。开启电源,灯亮了,通过web可以控制插座,没有问题。

效果

控制3秒开3秒关(普通继电器只有十万次的吸合寿命,最好不要长时间频繁开关)

插座的灯视频上拍出来会闪, 但实际没闪

======================================

接入了免费的Blinker和巴法云

======================================

补充接线方式

转换模块的线要用烙铁焊接才好接

零火判断(这里用火线控制开关,安全些,虽然反过来也能用,但这样插座关闭的时候也会带电),线剪开后,万用表测一下哪端与哪端相连

  •  转换模块粗的两个点是220v供电输入,细的两个点是5v输出
  • 继电器5v供电vcc接vcc,gnd接gnd即可
  • 220v供电的一端(火线)接到转换模块(L端)且同时接到继电器的COM,再从NO出,再连插座的火线
  • 220v供电的另一端(零线)接到转换模块的另一端(N),同时接到插座的另一端(零线)
  • 220v供电如果有地线直接连插座的地线
  • 白色和红色220v线是从另外的电源线剪的,5v线用的杜邦线

接线图,暴露的触点用绝缘胶包起来,转换模块最好也把它包起来。线不是很粗就最好不要带大功率设备

用个盒子装了起来

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值