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

 找回密码
 立即注册
查看: 194|回复: 8

[求助] ESPHOME自動化求助

[复制链接]

15

主题

406

帖子

2726

积分

金牌会员

Rank: 6Rank: 6

积分
2726
金钱
2320
HASS币
0
发表于 2024-10-31 00:53:21 | 显示全部楼层 |阅读模式
请教一下各位达人  
因为现在开始在学玩ESPHOME
我想把HA的自动化改到ESPHOME里
场景是白天温度在30度以上时  
每5分钟开启喷雾10秒
温度低于28.5度则关闭  
在网上找了很久东抄西抄还是搞不定
只好厚着脸皮来这边求助  
sensor:
  - platform: dht  #溫濕度模組外
    model: DHT22
    pin: 6
    temperature:
      name: temperature-1
      on_value_range:
      - above: 30.0  # 高於xx然後打開relay3
        then:
          - script.execute: my_script
      - below: 28.5  # 低於xx然後關閉relay3
        then:
          - script.stop: my_script      
    humidity:
      name: humidity-1
    update_interval: 5s    

switch:
  - platform: gpio        
    pin: 0
    name: Relay3
    id: relay3
    
# Example configuration entry
script:  # 腳本
  - id: my_script
    then:
      - switch.turn_on: relay3
      - delay: 3s
      - switch.turn_off: relay3  
      - delay: 5s    
      - switch.turn_on: relay3
      - delay: 3s
      - switch.turn_off: relay3  
      - delay: 5s 
      - switch.turn_on: relay3
      - delay: 3s
      - switch.turn_off: relay3  
      - delay: 5s 







回复

使用道具 举报

34

主题

188

帖子

880

积分

高级会员

Rank: 4

积分
880
金钱
692
HASS币
0
发表于 2024-10-31 08:37:56 | 显示全部楼层













有用chaGPT的话,直接让它写,自己写不来。国内的文心一言之类的,也可以试试。
回复

使用道具 举报

13

主题

572

帖子

3037

积分

论坛元老

HomeAssistant

Rank: 8Rank: 8

积分
3037
金钱
2460
HASS币
20
发表于 2024-10-31 09:25:43 | 显示全部楼层
【AI回答的】根据您提供的配置,您想要实现的功能是当温度在30度以上时,每5分钟开启喷雾10秒,当温度低于28.5度时则关闭。根据您的描述和配置,以下是您可能需要调整的一些部分:

1. **更新自动化逻辑:** 您可以在ESPHome的自动化部分中设置一个触发条件,以便在温度满足特定条件时执行操作。

2. **调整脚本部分:** 您的脚本部分似乎已经设置了开启和关闭喷雾的操作,但是可能需要调整以匹配您的需求。

下面是一个修改后的配置示例,用于根据您的需求控制喷雾器:

```yaml
sensor:
  - platform: dht
    model: DHT22
    pin: 6
    temperature:
      name: "temperature-1"
      filters:
        - sliding_window_moving_average:
            window_size: 5
            send_every: 5
            send_first_at: 5
      on_value:
        - lambda: |-
            if (id(temperature-1).state > 30.0) {
              id(my_script).restart();
            } else if (id(temperature-1).state < 28.5) {
              id(my_script).stop();
            }
      update_interval: 5s

switch:
  - platform: gpio
    pin: 0
    name: "Relay3"
    id: relay3

script:
  - id: my_script
    then:
      - switch.turn_on: relay3
      - delay: 10s
      - switch.turn_off: relay3
      - delay: 5m
```

这个配置中,我们使用了滑动窗口移动平均来平滑温度数据,然后设置了一个 lambda 函数来检查温度并启动或停止脚本。脚本部分也进行了调整,使得开启喷雾器持续10秒,然后等待5分钟再次检查温度。

请注意,这只是一个示例配置,具体的调整可能还需要根据您的具体情况和设备来进一步优化。希望这能帮助您实现您的自动化需求。如果有任何问题或需要进一步帮助,请随时告诉我!
回复

使用道具 举报

15

主题

406

帖子

2726

积分

金牌会员

Rank: 6Rank: 6

积分
2726
金钱
2320
HASS币
0
 楼主| 发表于 2024-10-31 10:54:17 | 显示全部楼层
DDDear 发表于 2024-10-31 09:25
【AI回答的】根据您提供的配置,您想要实现的功能是当温度在30度以上时,每5分钟开启喷雾10秒,当温度低于2 ...

感謝  我試試看
回复

使用道具 举报

15

主题

406

帖子

2726

积分

金牌会员

Rank: 6Rank: 6

积分
2726
金钱
2320
HASS币
0
 楼主| 发表于 2024-10-31 11:43:47 | 显示全部楼层
AI回答的有几个小错误  我改好后使用正常了
看起来我要开始学着如何问AI了
sensor:
  - platform: dht
    model: DHT22
    pin: 6
    temperature:
      name: "temperature-1"
      id: temperature_1 # 少了一个id
      filters:
        - sliding_window_moving_average:
            window_size: 5
            send_every: 5
            send_first_at: 5
      on_value:
        - lambda: |-
            if (id(temperature_1).state > 30.0) {
              id(my_script).execute();  # restart要改成execute           
            } else if (id(temperature_1).state < 28.5) {
              id(my_script).stop();
            }
    humidity:
      name: humidity-1        
    update_interval: 5s

switch:
  - platform: gpio
    pin: 0
    name: "Relay3"
    id: relay3

script:
  - id: my_script
    then:
      - switch.turn_on: relay3
      - delay: 10s
      - switch.turn_off: relay3
      - delay: 5m #min   


回复

使用道具 举报

15

主题

406

帖子

2726

积分

金牌会员

Rank: 6Rank: 6

积分
2726
金钱
2320
HASS币
0
 楼主| 发表于 2024-10-31 11:48:50 | 显示全部楼层
yun59t 发表于 2024-10-31 08:37
有用chaGPT的话,直接让它写,自己写不来。国内的文心一言之类的,也可以试试。 ...

我会开始学习使用
回复

使用道具 举报

24

主题

579

帖子

2679

积分

金牌会员

Rank: 6Rank: 6

积分
2679
金钱
2100
HASS币
0
发表于 2024-10-31 15:34:05 | 显示全部楼层
尽量少在esphome内部联动  除了一些必要的
我一开始也是在内部联动
后来发现 出问题了几乎没有容错的余地
所以现在我都在ha里面进行自动化  出问题可以禁用
回复

使用道具 举报

15

主题

406

帖子

2726

积分

金牌会员

Rank: 6Rank: 6

积分
2726
金钱
2320
HASS币
0
 楼主| 发表于 2024-10-31 16:45:59 | 显示全部楼层
kjjuhfv 发表于 2024-10-31 15:34
尽量少在esphome内部联动  除了一些必要的
我一开始也是在内部联动
后来发现 出问题了几乎没有容错的余地

我之前都是在HA里面做自动化
现在看esphome里面有就试试看
如果不稳定的话 再退回HA自动化
回复

使用道具 举报

15

主题

406

帖子

2726

积分

金牌会员

Rank: 6Rank: 6

积分
2726
金钱
2320
HASS币
0
 楼主| 发表于 2024-10-31 17:04:49 | 显示全部楼层
刚试了一下  ChatGPT真的很方便  

螢幕擷取畫面 2024-10-31 170233.png
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-21 20:19 , Processed in 2.133567 second(s), 33 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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