发作品签到
专业版

【智能家居】ESPHOME焊接排风扇和桌面氛围灯控制器缝合怪

工程标签

286
0
0
0

简介

基于ESP32-c3-mini的缝合怪。

简介:基于ESP32-c3-mini的缝合怪。

开源协议

CC BY-NC 3.0

创建时间:2024-06-27 23:09:36更新时间:2024-07-18 09:45:54

描述

之前买了个暴力风扇做焊接排风扇,开启直接起飞,风扇是支持pwm信号调速的,但一直没买调速模块。然后最近想给桌子来个RGB。那么想想直接把这俩的控制缝合起来。

先说说思路:主控我使用了手头就有的ESP32-C3-MINI ,然后需要一个EC11旋钮编码器来进行操作,考虑到安装方式,我使用的是卧式的。
然后我觉得还需要一个显示,本来准备用ssd1306这种屏,但考虑到需要直观,且1306这种屏不是很好固定,
还是选用了4位数码管。配合ESPhome直接支持的TM1637芯片。
风扇是12V的,然后后续要接的灯带应该也是12V,那么直接DC接口供电。烧录程序使用type-c直接连接c3的usb-jtag。
考虑到都使用type-c了,那加个PD受电很合理吧,遂抄了个ch224k的电路。
tm1637需要5v供电,esp需要3.3V。那么电压转换必不可少。开源广场翻了下,选择了mt2492的dcdc芯片转5V,然后使用me6210a进行5V转3.3V。
和风扇的连接本来准备和灯带一样用kf128座子,但后来想直接在风扇上也加个编码器。这样就需要起码6根线,用端子接就不很友好。
最后看到了家里闲置的USB3.0线,想想这东西就很合适,遂使用usb3.0的母座连接排风扇。

来个视频自制ESPhome焊接排风扇及桌面氛围灯控制器_哔哩哔哩_bilibili

关于esphome的固件功能:

1:旋转排风扇上的旋钮直接打开排风扇且调速,按下即切换开关。数码管直接切换到排风扇的速度。开始显示F速度值。关闭显示FOFF。

2:板载旋钮编码器: 双击切换设备,单击切换对应开关,旋转调节

3:数码管:空闲显示时间。控制对应设备时显示对应状态,时间通过sntp获取。

4:当前板子直接控制一个排风扇,白光灯带,幻彩灯带。通过程序选择器设置另外的外部灯和外部风扇可以联动控制两个HA中的设备。可按需在配置文件中增减。

配置中是这两部分,完整配置附件里面。

select: #定义选择器
  - platform: template
    name: "1 设备"
    id: mode
    optimistic: true
    initial_option: 白灯
    restore_value: true
    options:
      - 彩灯  
      - 外部风扇1          
      - 外部灯1      
      - 风扇
    - 白灯
 
binary_sensor: #定义二进制传感器
#以下用于按钮开关
  - platform: gpio  ##主板上的编码器按钮
    pin:
      number: 9
      mode: INPUT_PULLUP
      inverted: True
    id: button1
    filters:
      - delayed_on: 50ms
      - delayed_off: 50ms
      - delayed_on_off: 50ms  #延迟开关:仅当二进制传感器至少在指定的时间段内保持在相同状态时,才发送打开或关闭值。用于解除二进制开关的抖动
    on_multi_click:
      - timing: #单击
          - ON for at most 1s
          - OFF for at least 0.3s
        then:
          - switch.turn_on: ec11_state  #开启操作状态
          - number.to_min:  #归零上次操作的时间
              id: number1                    
          - if:             #  判断模式选择,当为白灯时切换light1开关,为彩灯时切换light2开关,否则向HA发送单击
              condition:
                - lambda: |-
                    return id(mode).state == "白灯";      
              then:    
                - light.toggle: light1
              else:
                - if:            
                    condition:
                      - lambda: |-
                          return id(mode).state == "彩灯";      
                    then:    
                      - light.toggle: light2
                    else:  
                      - if:            
                          condition:
                            - lambda: |-
                                return id(mode).state == "风扇";      
                          then:    
                            - fan.toggle: dc_fan
                          else:                                  
                            - lambda: |-  
                                id(key1_button).publish_state("single_clicked");
                            - delay: 1s
                            - lambda: |-  
                              id(key1_button).publish_state("none");  

板子到手

焊接好的

PD受电正常

使用ESPHOME注入灵魂

 

HA里设备的实体

 

附件中的固件配置配网热点密码是hlhkhlhk 连接到ha的api密码是7758258

 

先这样吧

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

附件

序号文件名称下载次数
1
ESPHOME配置文件.yaml
12
2
desk-rgb.factory.bin
6
克隆工程
添加到专辑
0
0
分享
侵权投诉

工程成员

评论

全部评论(1
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航