Índice:

Construindo Dispositivos Homie para IoT ou Domótica: 7 etapas (com imagens)
Construindo Dispositivos Homie para IoT ou Domótica: 7 etapas (com imagens)

Vídeo: Construindo Dispositivos Homie para IoT ou Domótica: 7 etapas (com imagens)

Vídeo: Construindo Dispositivos Homie para IoT ou Domótica: 7 etapas (com imagens)
Vídeo: 20 AUTOMAÇÕES para se INSPIRAR | CASA INTELIGENTE com ALEXA, SONOFF e muitos sensores! 2024, Novembro
Anonim
Construindo Dispositivos Homie para IoT ou Domótica
Construindo Dispositivos Homie para IoT ou Domótica

Este instrutível é parte da minha série DIY Home Automation, consulte o artigo principal "Planejando um sistema DIY Home Automation". Se você ainda não sabe o que é Homie, dê uma olhada no homie-esp8266 + mano de Marvin Roger.

Existem muitos sensores. Estou cobrindo os mais básicos para dar ao leitor os requisitos para começar a construir "algo". Isso pode não ser ciência de foguetes, mas deve realmente funcionar.

Se você não tiver as peças, fique atento ao meu próximo guia "Fornecimento de peças eletrônicas da Ásia".

Deixe-me adicionar algumas palavras da moda: IoT, ESP8266, Homie, DHT22, DS18B20, automação residencial.

O tópico deve estar bem claro agora:-)

Além disso, este instrutível agora também está disponível na minha página pessoal:

Etapa 1: primeiros passos

Começando
Começando
Começando
Começando

Convenções

Este instrutível usa clones D1 Mini. Estes são controladores compatíveis com Arduino habilitados para WiFi usando o chip ESP8266. Eles são enviados em um formato muito pequeno (~ 34 * 25 mm) e são muito baratos (~ 3-4 $ para clones).

Vou ilustrar cada construção usando um D1 Mini, uma placa de ensaio e alguns sensores. Incluo uma lista de materiais (BOM) para cada um, mas vou pular coisas óbvias como fios de jumper e placa de ensaio (mini ou completa). Vou me concentrar nas "partes ativas".

Para fios / cabos em diagramas (biblioteca Fritzing + AdaFruitFritzing), usei:

  • Vermelho / laranja para alimentação, geralmente 3,3V. Às vezes vai ser 5V, tome cuidado.
  • Preto para o chão.
  • Amarelo para sinais de dados digitais: os bits estão viajando e podem ser lidos como estão pelos chips.
  • Azul / roxo para sinais de dados analógicos: sem bits aqui, apenas voltagem simples que deve ser medida e calculada para entender o que está acontecendo.

Homie para ESP8266 vem com uma dúzia de exemplos, é onde comecei a construir este instrutível.

Tábua de pão

O D1 é bastante amigável para a placa de ensaio, mas salvará apenas uma linha de pinos para cima e para baixo. Cada exemplo terá o D1 no lado direito e os componentes no lado esquerdo. Os trilhos de alimentação superior e inferior serão usados para transportar 3,3 V ou 5 V.

Observação

Os exemplos de Homie são construídos como esboços ".ino" para o IDE do Arduino. No entanto, meu próprio código é construído como ".ccp" para PlatformIO.

Isso fará pouca diferença, pois os esboços são simples o suficiente para serem copiados / colados, seja qual for a ferramenta de sua escolha.

Etapa 2: Temperatura e Umidade: DHT22 / DHT11

Temperatura e umidade: DHT22 / DHT11
Temperatura e umidade: DHT22 / DHT11
Temperatura e umidade: DHT22 / DHT11
Temperatura e umidade: DHT22 / DHT11
Temperatura e umidade: DHT22 / DHT11
Temperatura e umidade: DHT22 / DHT11

Construindo o dispositivo

O DHT22 usa:

  • Um pino digital para se comunicar com o controlador, conecte-o ao D3
  • Dois fios para alimentação (3,3 V ou 5 V + GND)
  • O pino digital deve ser mantido alto (conectado à alimentação), para isso usamos um resistor entre o barramento de alimentação e o pino de dados

Código

O projeto PlatformIO pode ser baixado em:

O exemplo original de Homie está aqui (mas não usa um sensor):

Para DHT22, use a biblioteca de sensores DHT (ID = 19)

BOM

  • Controlador: Wemos D1 Mini
  • Resistor: 10KΩ
  • Sensor: (um destes)

    • DHT22: Usei o tipo de 4 pinos que requer um resistor extra. Existem módulos de 3 pinos enviados como SMD, que inclui o resistor.
    • DHT11: É mais barato, mas menos preciso, verifique seus requisitos

Etapa 3: Temperatura à prova d'água: DS18B20

Temperatura à prova d'água: DS18B20
Temperatura à prova d'água: DS18B20
Temperatura à prova d'água: DS18B20
Temperatura à prova d'água: DS18B20
Temperatura à prova d'água: DS18B20
Temperatura à prova d'água: DS18B20

Construindo o dispositivo O DS18B20 usa:

  • Um pino digital para se comunicar com o controlador, conecte-o ao D3
  • Dois fios para alimentação (3,3 V ou 5 V + GND)
  • O pino digital deve ser mantido alto (conectado à alimentação), para isso usamos um resistor entre o barramento de alimentação e o pino de dados

O DS18B20 é um sensor de 1 fio. Ele usa um barramento e, como tal, vários sensores podem usar um único pino de dados.

Também é possível NÃO usar 3,3 V / 5 V para alimentar o sensor, isso é chamado de modo de energia parasita. Consulte a folha de dados para obter detalhes.

Código

O projeto PlatformIO pode ser baixado em:

Como para DHT22, o exemplo original de Homie está aqui (mas não usa um sensor):

Para barramento de 1 fio, use o pacote OneWire (ID = 1)

Para DS18B20, use DallasTemperature (ID = 54)

BOM

  • Controlador: Wemos D1 Mini
  • Resistor: 4.7KΩ
  • Sensor: DS18B20, na foto é à prova d'água
  • Terminal de parafuso de 3 pinos para facilitar a conexão do cabo à placa de ensaio

Etapa 4: Luz: fotorresistor / fotocélula (digital: ligado / desligado)

Luz: fotorresistor / fotocélula (digital: ligado / desligado)
Luz: fotorresistor / fotocélula (digital: ligado / desligado)
Luz: fotorresistor / fotocélula (digital: ligado / desligado)
Luz: fotorresistor / fotocélula (digital: ligado / desligado)
Luz: fotorresistor / fotocélula (digital: ligado / desligado)
Luz: fotorresistor / fotocélula (digital: ligado / desligado)

Construindo o dispositivo

(Desculpe, não tenho um componente Fritzing para a fotocélula digital)

O módulo digital fotocélula usa:

  • Um pino digital para se comunicar com o controlador, conecte-o ao D3
  • Dois fios para alimentação (3,3V + GND)

É possível usar uma fotocélula analógica, mas isso não está documentado aqui, consulte o excelente artigo da Adafruit "Usando uma fotocélula".

Observação: neste exemplo, há um potenciômetro na placa do sensor. É usado para definir o limite entre a luz ambiente "clara" e "escura". Quando a leitura 1 luz está apagada, portanto, a leitura 0 significa luz se acesa.

Código

O projeto PlatformIO pode ser baixado em:

BOM

Controlador: Wemos D1 Mini

Sensor: Módulo fotossensível / detecção de luz

Etapa 5: Luz: fotorresistor / fotocélula (analógica)

Luz: fotorresistor / fotocélula (analógica)
Luz: fotorresistor / fotocélula (analógica)
Luz: fotorresistor / fotocélula (analógica)
Luz: fotorresistor / fotocélula (analógica)
Luz: fotorresistor / fotocélula (analógica)
Luz: fotorresistor / fotocélula (analógica)

Construindo o dispositivo

O sensor analógico da fotocélula atua como um resistor. Ele se conectará entre uma entrada analógica e 3,3V.

Um resistor é colocado entre o GND e o pino de dados para criar um divisor de tensão. O objetivo é criar um intervalo conhecido de valores:

  • Se não houver luz, a fotocélula basicamente bloqueará o VCC, conectando assim o GND ao seu pino de dados: o pino lerá quase 0.
  • Se houver muita luz brilhante, a fotocélula permitirá que o VCC flua para o pino de dados: o pino lerá quase a tensão total e, portanto, próximo ao máximo (1023).

Nota: Os valores dos pinos analógicos são lidos em uma faixa de 0 a 1023 usando analogRead. Isso não é prático para lidar com valores de 1 byte, para isso a função de mapa do Arduino ajudará a reduzir de 0-1023 para (por exemplo) 0-255.

Para calibração de valores mín / máx para o seu sensor, use um esboço como este do Arduino.

Código

O projeto PlatformIO pode ser baixado em:

BOM

  • Controlador: Wemos D1 Mini
  • Sensor: Resistor Dependente de Luz (LDR) / Fotoresistor
  • Resistor: 1K ou 10K, precisa calibrar com base em sua célula

Referências

  • Código-fonte do servidor PiDome para as condições de iluminação de um local
  • "Usando uma fotocélula" de Adafruit
  • "Fotoresistores" aqui em instructables
  • Um maldito "tutorial de fotocélula" maluco se você quiser um pouco de matemática e gráficos

Etapa 6: Detector óptico: QRD1114

Construindo o dispositivo

Código

BOM

Referências

  • Computação física: QRD1114 inclui código de amostra para ler o sensor e usar interrupção para codificador rotativo + design de PCB preciso
  • Guia de conexão do detector óptico QRD1114 na Sparkfun

Etapa 7: Palavras Finais

Palavras Finais
Palavras Finais

Este é muito curto para explicar o monitoramento básico.

Para ir mais longe, precisaremos conectar relés, emissor de infravermelho … Espero que isso seja abordado mais tarde, conforme o tempo livre permitir. A principal diferença é que não apenas "lemos" (há luz?), Mas também "escrevemos" (acendemos a luz!).

Recomendado: