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

 找回密码
 立即注册
查看: 14870|回复: 13

[经验分享] 分享ESPHOME代码,接光敏电阻和人体感应器,小白可以参考下

[复制链接]

7

主题

88

帖子

442

积分

论坛分享达人

积分
442
金钱
354
HASS币
0
发表于 2019-11-8 15:16:02 | 显示全部楼层 |阅读模式
本帖最后由 UNtest001 于 2019-11-8 16:54 编辑

硬件还是sonoff basic 引脚用了io1 和io3,本身还有个io2 群里大佬说拉低不能正常开机就没有使用
这里接光敏电阻(5516)没有接光照感应器的目的有两个,1是反映极其迅速,2是只占用一个引脚(光照感应器要占用2个)当然还有就是便宜1块钱买一把的那种.
(ps光敏电阻也是论坛大佬提供的经验,感谢前人栽树,)
代码奉上
esphome:
  name: pir501_light
  platform: ESP8266
  board: esp01_1m

wifi:
  ssid: "ZTE-EE5005"                #WiFi名
  password: "qq731283993z"          #WiFi密码
# Optional manual IP
  manual_ip:
    static_ip: 192.168.0.133        #指定IP,
    gateway: 192.168.0.5      
    subnet: 255.255.255.0  

# Enable logging
logger:

#Enable Home Assistant API
api:
  password: "33"            #接入ha的密码

ota:
  password: "33"            #OTA空刷密码

switch:
  - platform: gpio
    name: "开关"              #主开关
    pin: GPIO12
    id: relay                                  #id为后面要用的到
    
    
  
    
binary_sensor:
  - platform: gpio
    pin:
      number: GPIO0                 #io0
      mode: INPUT_PULLUP
      inverted: True
    name: "微动开关"        
    on_press:
      - switch.toggle: relay
  - platform: gpio
    pin:
      number: GPIO3             #io3接光敏电阻
      mode: INPUT_PULLUP
      inverted: True
    name: "光敏"        
    id: light

  - platform: gpio
    pin: 
      number: 1                 #io1接人体感应器
      inverted: yes
      mode: INPUT
    name: "人体感应器1"
    device_class: motion
    id: pir501
    filters:
      - invert:
      - delayed_on: 500ms
      - delayed_off: 60s          #延时关闭
    on_press:
      then:
        - if:
            condition:
              and: 
                - binary_sensor.is_on: pir501
                - binary_sensor.is_off: light                   #同时满足人体感应器感应到人,和光敏电阻为关,才会打开开关(光敏电阻为关为晚上光照度低的时候)
            then:
              - logger.log: "Detected somebody activity"
              - switch.turn_on: relay
              
            else:
              - logger.log: "There is no one around"
              - switch.turn_off: relay

    on_release:                                   #感应不到人关闭开关
      then:
        - switch.turn_off: relay

status_led:
  pin:
    number: GPIO13                               #LED指示灯
    inverted: yes


有个小坑待解决

评分

参与人数 1金钱 +20 收起 理由
+ 20 感谢楼主分享!

查看全部评分

回复

使用道具 举报

26

主题

170

帖子

1026

积分

论坛技术达人

积分
1026
金钱
856
HASS币
20
发表于 2019-11-8 16:41:26 | 显示全部楼层
你用python写不更简单吗?还可以为所欲为!
回复

使用道具 举报

7

主题

88

帖子

442

积分

论坛分享达人

积分
442
金钱
354
HASS币
0
 楼主| 发表于 2019-11-8 16:56:11 | 显示全部楼层
loog 发表于 2019-11-8 16:41
你用python写不更简单吗?还可以为所欲为!

大佬我不会啊(留下了没技术的泪水)
回复

使用道具 举报

6

主题

484

帖子

4040

积分

论坛元老

Rank: 8Rank: 8

积分
4040
金钱
3556
HASS币
0
发表于 2019-11-8 21:21:48 | 显示全部楼层
请问大神,光敏电阻(5516)如何接线的?
回复

使用道具 举报

0

主题

90

帖子

761

积分

高级会员

Rank: 4

积分
761
金钱
671
HASS币
0
发表于 2019-11-8 22:04:55 | 显示全部楼层
学习了,谢谢
回复

使用道具 举报

7

主题

88

帖子

442

积分

论坛分享达人

积分
442
金钱
354
HASS币
0
 楼主| 发表于 2019-11-9 08:42:26 | 显示全部楼层
robotxc 发表于 2019-11-8 21:21
请问大神,光敏电阻(5516)如何接线的?

光敏电阻一端接gnd  另一端接其中一个引脚,不用分方向,随意接,接哪个引脚就定义哪个引脚,一般情况下不要接io2 ,上电可能会无法正常启动
回复

使用道具 举报

6

主题

484

帖子

4040

积分

论坛元老

Rank: 8Rank: 8

积分
4040
金钱
3556
HASS币
0
发表于 2019-11-9 21:31:19 | 显示全部楼层
UNtest001 发表于 2019-11-9 08:42
光敏电阻一端接gnd  另一端接其中一个引脚,不用分方向,随意接,接哪个引脚就定义哪个引脚,一般情况下不要 ...

谢谢,明白了!
回复

使用道具 举报

12

主题

108

帖子

2995

积分

论坛技术达人

积分
2995
金钱
2867
HASS币
118
发表于 2021-2-23 09:34:28 | 显示全部楼层
感谢 这个帮了大忙
回复

使用道具 举报

0

主题

216

帖子

2557

积分

金牌会员

Rank: 6Rank: 6

积分
2557
金钱
2341
HASS币
0
发表于 2021-11-30 16:43:26 | 显示全部楼层
先马克一下,正好准备改造一下sonoff basic r2
回复

使用道具 举报

6

主题

99

帖子

440

积分

中级会员

Rank: 3Rank: 3

积分
440
金钱
341
HASS币
0
发表于 2023-2-21 17:45:52 | 显示全部楼层
UNtest001 发表于 2019-11-9 08:42
光敏电阻一端接gnd  另一端接其中一个引脚,不用分方向,随意接,接哪个引脚就定义哪个引脚,一般情况下不要 ...

不用串个下拉电阻么?
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-25 20:42 , Processed in 0.888243 second(s), 32 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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