Índice:
- Suprimentos
- Etapa 1: Visão geral básica
- Etapa 2: o microcontrolador
- Etapa 3: Abaixador DC-DC, Conversor Buck
- Etapa 4: retransmissão
- Etapa 5: conectando tudo
- Etapa 6: usando ESPHome
- Etapa 7: Adicionando ESPHome ao Assistente de Casa
- Etapa 8: adicione seu dispositivo ao ESPHome
- Etapa 9: ESPHome Firmware
- Etapa 10: atualize o firmware ESPHome
- Etapa 11: configurar o assistente doméstico
- Etapa 12: Concluindo
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Este é um projeto rápido de fim de semana para automatizar a luz cultivadora interna Växer (+ Krydda) da IKEA, integrando-a ao Home Assistant usando um microcontrolador e ESPHome.
Isso pressupõe que você já esteja usando o Home Assistant.
Suprimentos
Luz de cultivo IKEA Växer
ESP32Cam
Conversor DC-DC Buck
Módulo de relé barato
Interface USB FTDI (para programação do microcontrolador)
Etapa 1: Visão geral básica
Um microcontrolador habilitado para wi-fi, neste caso um ESP32Cam (como eu tenho um por aí), irá controlar a luz IKEA por meio de um relé.
Ele será programado para ligar a luz IKEA de manhã e desligar à noite usando a interface da web do Home Assistant.
Etapa 2: o microcontrolador
Estou usando uma ESP32Cam. Como o nome sugere, a ESP32Cam também é uma câmera, o que significa que também posso controlá-la pelo empolgante recurso bônus do cultivo de alface com lapso de tempo.
Etapa 3: Abaixador DC-DC, Conversor Buck
Vou alimentar a luz e o microcontrolador com a fonte de alimentação fornecida pela IKEA. Como a tensão da luz LED é 24 V, usarei um conversor buck DC para DC para diminuir a tensão para 5 V do microcontrolador.
Você pode escolher esses conversores de dólar por um preço muito baixo no ebay, amazon ou onde quiser. Tome cuidado para ajustar o pequeno potenciômetro para saída de 5 V antes de fritar seu microcontrolador delicado.
Etapa 4: retransmissão
Finalmente, o módulo de relé, uma chave controlável projetada para trabalhar com alta tensão enquanto se isola da entrada de controle de baixa tensão.
Alternar um pino de E / S no microcontrolador, conectado ao pino de sinal de entrada do relé, mudará a linha de 24 V para a luz.
Etapa 5: conectando tudo
Siga o diagrama de fiação. Eventualmente, irei conectar o GND e os pinos de 5 V do microcontrolador à saída do conversor Buck, mas não há necessidade neste estágio de conectar a alimentação de 24 V ou de conectar o relé à luz. Ligá-lo a partir do USB 5V do PC por meio de um cabo FTDI fará o que for testado e programado.
Conecte um fio do pino de sinal do relé ao GPIO 12 no microcontrolador, isso controlará o relé e conectará as linhas de recepção e transmissão serial do microcontrolador ao RX e TX do FTDI, tomando o cuidado de trocar as linhas (TX do microcontrolador vai para RX e RX para TX).
Etapa 6: usando ESPHome
Anteriormente, eu teria programado o microcontrolador diretamente, usando várias bibliotecas wi-fi e MQTT Arduino para se comunicar com o Home Assisant. Agora, graças ao ESPHome, é muito mais fácil integrar microcontroladores ESP ao Home Assistant sem rolar seu próprio código a cada vez.
Etapa 7: Adicionando ESPHome ao Assistente de Casa
Adicione o Repositório ESPHome
Como estou usando o Hassio, é tão fácil quanto clicar em 'Hass.io' à esquerda do front-end da Web do Home Assistant, clicar nos 3 pontos no canto superior direito e selecionar 'Repositório' e adicionar 'https://github.com / esphome / hassio '.
Instale o complemento ESPHome
Na página 'Adicionar na loja' de Hassio, vá até ESPHome e instale o complemento ESPHome. Fácil.
Etapa 8: adicione seu dispositivo ao ESPHome
Para adicionar o microcontrolador ESP32Cam ao ESPHome, clique no complemento 'ESPHome' e clique em 'Open Web UI'.
Você será questionado se deseja adicionar um nó - nós são o que a ESPHome chama de dispositivos microcontroladores - Clique em '+'.
Dê um nome ao seu nó, chamei-o de 'vaxer_light', e selecione o tipo de dispositivo, o meu é um 'AI Thinker ESP32-CAM'.
Por fim, forneça suas credenciais de rede wi-fi e clique em 'Enviar'.
Etapa 9: ESPHome Firmware
Você pode querer reiniciar o complemento ESPHome neste estágio. Com um pouco de sorte, o novo nó 'vaxer_light' deve aparecer agora.
Clique em 'Editar' e o arquivo YAML vaxer_light será exibido. O ESPHome usa arquivos de configuração YAML como o resto do Home Assistant. No entanto, esses arquivos YAML serão compilados para se tornarem o firmware no microcontrolador, muito longe de se aprofundar no código C do Arduino.
O arquivo YAML para meu dispositivo vaxer light tem a seguinte aparência:
esphome:
nome: vaxer_light plataforma: placa ESP32: esp32cam wi-fi: ssid: "xxxxxxxx" senha: "xxxxxxxx" # Habilitar ponto de acesso alternativo (portal cativo) no caso de falha de conexão wi-fi ap: ssid: "Vaxer Light Fallback Hotspot" senha: "xxxxxxxx" captive_portal: # Habilitar logger de registro: # Habilitar API do Home Assistant API: ota: # ESP32Cam AI Thinker versão esp32_camera: external_clock: pin: GPIO0 frequência: 20 MHz i2c_pins: sda: GPIO26 scl: GPIO27 data_pins: [GPIO5, GPIO18, GPIO19, GPIO21, GPIO36, GPIO39, GPIO34, GPIO35] vsync_pin: GPIO25 href_pin: GPIO23 pixel_clock_pin: GPIO22 power_down_pin: GPIO32 # Nome das configurações de imagem: ESP32Cam resolução: 640x480 jpeg_quality: 10 # relé no GPIO 12 switch: - plataforma: gpio pin: 12 nome: "VaxLight
Salve e feche o arquivo YAML, clique nos três pontos e selecione 'Compilar'
Etapa 10: atualize o firmware ESPHome
Quando o arquivo YAML for compilado, clique em 'Baixar Binário'.
Como esta é a primeira vez que o ESPHome foi colocado neste microcontrolador, preciso fazer o upload manual do código para a placa. No futuro, assim que o microcontrolador tiver o firmware ESPHome, o ESPHome poderá fazer upload de qualquer novo código por wi-fi.
Para fazer o upload do binário para o microcontrolador, use a ferramenta ESPHome Flasher.
Baixe a ferramenta ESPHome Flasher em:
A ESP32Cam está longe de ser meu microcontrolador favorito; para colocá-la no estado de upload, você deve primeiro vincular o GPIO 0 ao GND e pressionar o botão reset. Isso pode ser bastante difícil dependendo da espessura do dedo e se você conectou ou não o dispositivo na placa de ensaio, já que o botão de reset está na parte inferior da placa, impossível de chegar se estiver usando a placa de ensaio.
Execute o esphome-pisca-pisca, selecione o arquivo binário baixado e a porta serial do seu adaptador FTDI.
Com o GPIO 0 vinculado ao GND e pressionando o botão reset, cruze os dedos e clique em 'Flash ESP'.
Quando terminar, desvincule GPIO 0 e pressione reset novamente.
Etapa 11: configurar o assistente doméstico
Depois de atualizar o novo firmware ESPHome para o microcontrolador ESP32Cam, volte para o Home Assistant para adicionar o novo dispositivo.
Clique em 'Configuração', no canto inferior esquerdo e depois em 'Integrações', clique no sinal de mais e procure ESPHome.
Digite o host, o nome do seu nó, no meu caso 'vaxer_light.local' e clique em 'Enviar'.
Agora, sua integração com o ESPHome deve ser exibida, clique nele para ver uma lista de dispositivos e, em seguida, clique em 'vaxer_light' para ver as informações do dispositivo.
Clique em 'Adicionar todas as entidades de dispositivo ao lovelace'.
Agora é bastante simples usar as automações do Home Assistant para acender e apagar a luz em horários específicos do dia.
A câmera está disponível como camera.esp32cam, para tirar fotos usando o serviço camera.snapshot do Home Assistant.
Por exemplo, uma automação para tirar uma foto em uma hora específica do dia e criar meu filme de alface lapso de tempo obra-prima seria:
- id: '20202907'
alias: 'timelapse lettuce' trigger: - às: '11: 30 'platform: time action: - service: camera.snapshot data_template: entity_id: camera.esp32cam filename:' / config / timelapse_lettuce / esp32cam _ {{now (). year }} _ {{now (). day}} _ {{now ().month}} _ {{now ().hour}} {{now ().minute}}. jpg '
Etapa 12: Concluindo
E é isso. Tudo o que precisa ser feito é conectá-lo ao power brick e ao conversor buck conforme mostrado e, em seguida, de alguma forma colá-lo e prendê-lo - prenda-o com blutak - ao invólucro.
Espero que você tenha gostado do meu Instructable, qualquer dúvida por favor pergunte. Mais fotos deste e de outros projetos podem ser encontradas no meu instagram @limpfish.
Obrigado