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

 找回密码
 立即注册
查看: 2869|回复: 15

[硬件DIY] esphome车库门控制板

[复制链接]

10

主题

163

帖子

1179

积分

金牌会员

Rank: 6Rank: 6

积分
1179
金钱
1016
HASS币
0
发表于 2022-8-2 11:27:21 | 显示全部楼层 |阅读模式
车库原始是手动加433遥控器的,改装后wifi接入ha,虽然装上了433接收器,但是我还没学会怎么用~~~就这么先留着吧,万一学会了直接用起来

                               
登录/注册后可看大图

                               
登录/注册后可看大图




先上图
代码如下
web_server:  
  port: 80
captive_portal:
# Enable logging
logger:
  baud_rate: 0

remote_receiver:
  pin: GPIO16
  dump: rc_switch


binary_sensor:    
  - platform: gpio
    pin:
      number: GPIO4
      inverted: false
#      mode:
#        input: true
#        pullup: true
#    filters:
#      - delayed_on_off: 500ms
    name: "garage_door_sensor"
    device_class: door

switch:
  - platform: gpio
    pin: GPIO14
    id: relay1
    name: "open"
    icon: "mdi:garage-open"
    on_turn_on:
    - delay: 500ms
    - switch.turn_off: relay1
    
  - platform: gpio
    pin: GPIO5
    id: relay2
    inverted: True
    name: "stop"
    icon: "mdi:garage-alert"
    on_turn_on:
    - delay: 500ms
    - switch.turn_off: relay1
    - switch.turn_off: relay2    
    - switch.turn_off: relay3    
    
    
  - platform: gpio
    pin: GPIO12
    id: relay3
    name: "close"
    icon: "mdi:garage"
    on_turn_on:
    - delay: 500ms
    - switch.turn_off: relay3
原理图见附件

回复

使用道具 举报

14

主题

430

帖子

2699

积分

金牌会员

Rank: 6Rank: 6

积分
2699
金钱
2269
HASS币
0
发表于 2022-8-2 15:03:40 来自手机 | 显示全部楼层
和我的好像,我也是这样玩的
回复

使用道具 举报

7

主题

188

帖子

2349

积分

金牌会员

Rank: 6Rank: 6

积分
2349
金钱
2161
HASS币
0
发表于 2022-8-2 15:21:56 | 显示全部楼层
附件在哪里,学习一下,家里有坏控制板遥控接收那部分坏了,想改改看看能变成wifi接入不
回复

使用道具 举报

10

主题

163

帖子

1179

积分

金牌会员

Rank: 6Rank: 6

积分
1179
金钱
1016
HASS币
0
 楼主| 发表于 2022-8-2 17:40:51 | 显示全部楼层
附件忘了。。这里补上

Gerber_PCB_Garage_door_esp01m_2_2022-08-02.zip

27.06 KB, 下载次数: 20

原理图.zip

75.51 KB, 下载次数: 27

回复

使用道具 举报

10

主题

163

帖子

1179

积分

金牌会员

Rank: 6Rank: 6

积分
1179
金钱
1016
HASS币
0
 楼主| 发表于 2022-8-2 17:42:56 | 显示全部楼层
ylilike 发表于 2022-8-2 15:03
和我的好像,我也是这样玩的

尝试过cover没?我这个的stop的逻辑不一样,用不了
回复

使用道具 举报

14

主题

430

帖子

2699

积分

金牌会员

Rank: 6Rank: 6

积分
2699
金钱
2269
HASS币
0
发表于 2022-8-2 19:33:55 | 显示全部楼层
65999wlc 发表于 2022-8-2 17:42
尝试过cover没?我这个的stop的逻辑不一样,用不了

试过,感觉不好用,我都禁掉了

# cover:
#   - platform: template
#     id: crd_st
#     name: "车库门"
#     lambda: |-
#         if (id(door_status).state) {
#           return COVER_OPEN;
#         } else {
#           return COVER_CLOSED;
#         }
#     open_action:
#       - switch.turn_on: door_up
#     close_action:
#       - switch.turn_on: door_down
#     stop_action:
#       - switch.turn_on: door_pause
#     optimistic: true
#     #assumed_state: true
若然,一切若然~
回复

使用道具 举报

1

主题

80

帖子

975

积分

高级会员

Rank: 4

积分
975
金钱
895
HASS币
0
发表于 2022-8-2 20:40:30 | 显示全部楼层
web_server:
  port: 80 
  
  
dallas:
  - pin: GPIO2



switch:
  - platform: gpio
    name: "开门继电器"
    id: relay_1
    interlock: &interlock [relay_1, relay_2]
    interlock_wait_time: 1000ms
    pin:
      number: GPIO4
      inverted: False
    restore_mode: ALWAYS_OFF
      
  - platform: gpio
    name: "guan men ji dian qi"
    id: relay_2 
    interlock: *interlock
    interlock_wait_time: 1000ms
    pin:
      number: GPIO15
      inverted: False
    restore_mode: ALWAYS_OFF  
      
 
  
binary_sensor:
  - platform: gpio
    pin:
      number: GPIO16
      mode: INPUT_PULLDOWN
    name: "shang men ci"
    id: shangmenci                #上门磁传感器
    device_class: door
    filters:
      - delayed_on: 500ms
    on_press:
      then:
        - switch.turn_off: relay_1
        
  - platform: gpio
    pin:
      number: GPIO14
      mode: INPUT_PULLUP
      inverted: true
    name: "xia men ci"             #下门磁传感器
    id: xiamenci
    device_class: door
    filters:
      - delayed_on: 500ms
    on_press:
      then:
        - switch.turn_off: relay_2
        
  - platform: template
    name: "Car presence"
    device_class: presence
    lambda: |-
      if (id(car_presence).state < 1.5) { 
        return true;        
      } else {
        return false;
      } 
      
  - platform: remote_receiver             #来源是射频信号,这个不能改
    name: "开门信号"                 #开门信号
    rc_switch_raw:                        #经过rc_switch_raw解码后的信号
      code: '110100111010100010100100'    #信号值,填写你收到的信号值
      protocol: 1   #协议,我填了1,个人理解,看你收到的信号中protocol后面的值
    internal: true
    filters:
      - delayed_off: 1s
    on_press:                            #当传感器为on时,进行自动化
      then:
        - switch.turn_off: relay_2
        - delay: 1s
        - switch.turn_on: relay_1       #自动对id为jidianqi1的继电器切换状态
        
  - platform: remote_receiver             #来源是射频信号,这个不能改
    name: "关门信号"                #关门信号
    rc_switch_raw:                        #经过rc_switch_raw解码后的信号
      code: '110100111010100010100001'    #信号值,填写你收到的信号值
      protocol: 1                       #协议,我填了1,个人理解,看你收到的信号中protocol后面的值
    internal: true
    filters:
      - delayed_off: 1s
    on_press:                            #当传感器为on时,进行自动化
      then:
        - switch.turn_off: relay_1
        - delay: 1s
        - switch.turn_on: relay_2
        
  - platform: remote_receiver            #以下操作就是当收到指定的喜好,就把2个继电器全关
    name: "停止信号"               #暂停信号
    rc_switch_raw:
      code: '110100111010100010100010'
      protocol: 1
    internal: true
    filters:
      - delayed_off: 1s
    on_press:
      then:
        - switch.turn_off: relay_1     #自动将id为jidianqi1的继电器进行关闭
        - switch.turn_off: relay_2     #自动将id为jidianqi2的继电器进行关闭

remote_receiver:                 #rf射频的接收,详见https://esphome.io/components/remote_receiver.html
  pin: GPIO5                        #rf射频接收模块的信号引脚接入nodemcu的引脚  
  dump:                         #解码的类型 
    - rc_switch                  #使用RCSwitch RF来解码
  tolerance: 50%                #远程信号长度在解码过程中可以偏离的百分比。默认为25%,我这设置50%  
  filter: 200us                  #过滤所有比此短的脉冲。用于消除噪声信号中的毛刺。默认为10us,我这设置为200us
  idle: 4ms                     #信号应保持稳定(即不发生变化)以使其被视为完整的时间。默认为10ms,我这设置为4ms
  buffer_size: 1kb              #用于存储远程代码的内部缓冲区的大小。ESP32默认10kb ,ESP8266 默认1kb
  
sensor:  #传感器
  - platform: dht
    pin: GPIO0
    temperature:
      name: "che ku wai wen du"
    humidity:
      name: "che ku wai shi du"
    update_interval: 60s
    
  - platform: wifi_signal             #这个可以让你的hass显示你nodemcu联网信号强度
    name: "WiFi信号强度"        #名字自取,随意
    update_interval: 60s              #更新时间,这里为60秒
    
  - platform: ultrasonic                    #超声波测距,车库有没有车
    trigger_pin: GPIO13
    echo_pin: GPIO12
    name: "Garage Ultrasonic Sensor"
    id: car_presence
    update_interval: 20sec
    timeout: 3.0m
    
  - platform: dallas
    address: 0xbf3cfef6480af928
    name: "che ku m"

  
text_sensor:                            #这个可以让你的hass显示你nodemcu联网的信息
  - platform: wifi_info
    ip_address:
      name: ESP IP Address            #nodemcu的ip地址
    ssid:
      name: ESP Connected SSID          #wifi设备的ssid
    bssid:
      name: ESP Connected BSSID       #wifi设备的mac地址
      
  - platform: template
    name: "车库门当前状态"    #车库门当前状态
    lambda: |-
      if ((id(xiamenci).state) == (id(shangmenci).state)) {
        return {"正在打开或者关闭"};
      } else if ((!id(shangmenci).state) && (id(xiamenci).state)) {
        return {"已关闭"};
      } else {
        return {"已打开"};
      }
    update_interval: 5s
看我的,车库门上下个一个门磁。433超外差模块,继电器互锁。
1659443878640.jpg
回复

使用道具 举报

1

主题

80

帖子

975

积分

高级会员

Rank: 4

积分
975
金钱
895
HASS币
0
发表于 2022-8-2 20:59:02 | 显示全部楼层
另外你这个APAN3105 5A小继电器应该不行吧?我用8A的PCB固态继电器。,连续烧了2个,后拉把控制继电器的线引出来,换了个外置的15A的固态继电器才没问题了。
回复

使用道具 举报

1

主题

80

帖子

975

积分

高级会员

Rank: 4

积分
975
金钱
895
HASS币
0
发表于 2022-8-2 21:05:32 | 显示全部楼层
https://bbs.hassbian.com/forum.php?mod=viewthread&tid=12631在看看这个的5楼,不能用esphome不能把IO16端口用作射频信号端口
回复

使用道具 举报

10

主题

163

帖子

1179

积分

金牌会员

Rank: 6Rank: 6

积分
1179
金钱
1016
HASS币
0
 楼主| 发表于 2022-8-6 23:46:47 | 显示全部楼层
五千万啊 发表于 2022-8-2 21:05
https://bbs.hassbian.com/forum.php?mod=viewthread&tid=12631在看看这个的5楼,不能用esphome不能把IO16 ...

谢谢,学习了
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-29 05:35 , Processed in 0.106088 second(s), 34 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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