请选择 进入手机版 | 继续访问电脑版

『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 282|回复: 7

[开关插座] ESP8266-01的深度应用-5,输入输出组合

[复制链接]

5

主题

27

帖子

164

积分

论坛分享达人

积分
164
金钱
137
HASS币
0
发表于 2019-11-6 00:20:01 | 显示全部楼层 |阅读模式
本帖最后由 姚远 于 2019-11-6 17:51 编辑

原以为自己已经搞清楚了ESP8266-01的应用,想着很快就可以把输出控制,以及实际家庭应用的设想写出来。结果,中间发现8266非常耗电,wifi也非常霸道,同时占用家中路由器过多节点,中间想结合433超再生把单向接收或发出控制的节点进行改造。没想到,烧坏了一块ESP-01,估计是刷固件时候操作有误。然后又是8266经常自动重启,又是经常压制我的笔记本不能连接wifi,又是经常电源被拉低到2v。。。总而言之,其实自己还远远没有搞清楚8266-01应该怎么应用。但我还是愿意分享出来,给大家参考。同时有些应用场景确实物美价廉,上手容易。
好,现在开始介绍我对8266输出控制的理解和一些设置。8266固件:basic版
注意:8266-01,GPIO1不可定义为Relay;GPIO0不可以定义为开关输入口。我选择了家庭中常用的应用场景之一,三个switch输入,一个relay输出,四个端口各自独立由homeassistant控制或接收信息。
接线图。GPIO0接入低电平触发的继电器,其他三口输入为swich类。
22.png

sonoff module配置:
23.png
在这里配置的时候需要注意
1、GPIO0为低电平触发,所以需要选择relay 1i
2、其他端口的switch编号不可与relay相同。即避开1,可以选择2、3、4
3、switch是传感器sensor输出,为了直观配置和应用,我都带上了对应的relay,并通过对应relay的状态来反映switch的状态。特别小心,后续的配置和系统反映,都是对switch对应的relay,而非真正的switch
4、为了直观、简单、清晰的配置端口,强烈建议switch和relay成对配置。可以把现实场景中不需要的relay或是不需要的switch配置到不使用的端口上去,但我仍然建议大家要配置上。否则,极有可能引起不必要的switch和relay的不协调。这是因为我们是基于(3)的原则,通过relay来反映switch,不匹配就可能引起后续自动化等配置的混乱。大家可以在原型时多测试些组合方案,会找到一些感觉的。
其实,跟着我的场景方案配置下去,就会省心省力很多了。
sonoff设置主页的样子
24.png
接下来配置homeassistant configuration.yaml
binary_sensor:
  - platform: mqtt
    name: "测试红外人体感应"
    state_topic: "stat/swtich-test/POWER2"
    #command_topic: "cmnd/test-switch/POWER"
    qos: 1
    payload_on: "ON"
    payload_off: "OFF"
    #retain: true
    device_class: motion

  - platform: mqtt
    name: "测试雷达人体感应"
    state_topic: "stat/swtich-test/POWER3"
    #command_topic: "cmnd/test-switch/POWER"
    qos: 1
    payload_on: "ON"
    payload_off: "OFF"
    #retain: true
    device_class: motion

  - platform: mqtt
    name: "门窗关闭测试"
    state_topic: "stat/swtich-test/POWER4"
    qos: 1
    payload_on: "ON"
    payload_off: "OFF"
    device_class: opening

light:
  - platform: mqtt
    name: "测试开关GPIO0"
    state_topic: "stat/swtich-test/POWER1"
    command_topic: "cmnd/swtich-test/POWER1"
    qos: 1
    payload_on: "ON"
    payload_off: "OFF"
    retain: true
homeassistant概览页面的样子
25.png
原型试验时的实物连接
26.jpg


说说我对8266为什么这么钟情。2个月前,我看到智能家居的种种介绍,一下子搞得自己热血沸腾,立即着手查资料、看前辈大神的教程,然后选择实现路径,之后就一步一步的进入实际应用。而真正走下来才发现,这件事情很容易也很困难。容易在于软硬件已经很成熟了,前辈们的教程很详细完整了,只要一步一步跟着做下来,成功率非常非常高,可以很快加入自己的智能家居中。但困难很多,最大的挑战就是实现路径、方案、场景、资料、教程的梳理,以及你自己动手能力、学习能力。而ESP8266-01绝对是智能家居的重要基础之一。但由于其介绍资料不多,教程深入不多,往往让大家觉得它太弱小、太鸡肋,而把投入转向ESP-12等多端口芯片上。其实,家庭中绝大多数的场景ESP8266-01已经足够了,截止到目前为止,我还没有遇到它不能实现的场景。它投入少、体积小,支持的硬件设备相对完整,一个房间有2套就基本可以满足我们的需要了。当然我说的2套是指基础的开关类、温湿度、光照、门磁类,并没有包括红外、433等。1套20块钱的价格,三居室+玄关+客厅+卫生间+厨房,200块钱搞定,何乐而不为呢。当然,真正全智能,可能还需要投入显示、安防类、红外类,和智能音箱,前前后后也要2000块钱呢。谁让智能家居是个坑呢,跳吧
22.png
22.png

评分

参与人数 2金钱 +32 收起 理由
+ 20 大神666!
natic + 12 感谢楼主分享!

查看全部评分

回复

使用道具 举报

0

主题

52

帖子

142

积分

注册会员

Rank: 2

积分
142
金钱
90
HASS币
0
发表于 2019-11-6 08:31:24 | 显示全部楼层
学习学习!!
回复

使用道具 举报

12

主题

256

帖子

960

积分

高级会员

Rank: 4

积分
960
金钱
704
HASS币
0
发表于 2019-11-6 14:46:40 | 显示全部楼层
加电阻是减少耗电量吗?
比如gpio2 为什么接了电阻到vcc,还接了电阻链接雷达啊?求指导
回复

使用道具 举报

12

主题

256

帖子

960

积分

高级会员

Rank: 4

积分
960
金钱
704
HASS币
0
发表于 2019-11-6 14:48:59 | 显示全部楼层
耗电量高的话,如果是不需要那么实时性那么高的话,比如用于温湿度检测,我设置了休眠,开机运行20s,休眠40s
回复

使用道具 举报

5

主题

27

帖子

164

积分

论坛分享达人

积分
164
金钱
137
HASS币
0
 楼主| 发表于 2019-11-6 17:37:40 | 显示全部楼层
本帖最后由 姚远 于 2019-11-6 17:54 编辑
tang5275 发表于 2019-11-6 14:46
加电阻是减少耗电量吗?
比如gpio2 为什么接了电阻到vcc,还接了电阻链接雷达啊?求指导 ...

8266引出的接口较少,同时又要兼顾在线刷机、升级和重启等能力,所以它采用了引出端口不同电平组合代表不同状态。我这里只考虑应用,不再考虑重新刷机。生产应用的时候,当8266启动时,要求有些引出端口必须高电平。我在GPIO0, GPIO2, GP, CH_PD,三个端口上接3.3k电阻,就是为了保证其基本的高电平。而GPIO0, GPIO2引向switch的330欧姆电阻,主要是防止外围设备故障引起的大电流烧坏8266,是保护用的。昨天晚上晕晕乎乎的,接线图好像用错了,应该是这张三个输入口一个输出口的。不好意思啊,见谅见谅
你可以参考https://www.instructables.com/id/How-to-use-the-ESP8266-01-pins/。这个外国人讲的比较详细,就是啰哩啰嗦看着有点烦
回复

使用道具 举报

5

主题

27

帖子

164

积分

论坛分享达人

积分
164
金钱
137
HASS币
0
 楼主| 发表于 2019-11-6 17:42:30 | 显示全部楼层
tang5275 发表于 2019-11-6 14:48
耗电量高的话,如果是不需要那么实时性那么高的话,比如用于温湿度检测,我设置了休眠,开机运行20s,休眠4 ...

说实话,我这人太懒,开发还是20年前doc时的水平,所以想的方案都是尽量拿过来就能用的方案。还是这次把我wifi压制的无法使用的时候,才发现这小东西信号太强,耗电也很大。我想着后面学学433什么的,家里门磁、遥控、门铃等单向传送不需要反馈的连接都归到433中去,关键是省电,还能和现有家电、开关集成。
回复

使用道具 举报

12

主题

256

帖子

960

积分

高级会员

Rank: 4

积分
960
金钱
704
HASS币
0
发表于 2019-11-6 18:02:48 | 显示全部楼层
姚远 发表于 2019-11-6 17:42
说实话,我这人太懒,开发还是20年前doc时的水平,所以想的方案都是尽量拿过来就能用的方案。还是这次把 ...

我个人测试的是,用easyesp 直接可以控制gpio0 gpio2 还有就是2下面的那个,忘了是tx还是rx了,easyesp可以直接用这三个io口
回复

使用道具 举报

0

主题

73

帖子

692

积分

高级会员

Rank: 4

积分
692
金钱
619
HASS币
0
发表于 前天 16:06 | 显示全部楼层

学习学习!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2019-11-18 04:34 , Processed in 0.086863 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表