Taula de continguts:

Construcció de dispositius Homie per a la IoT o la domòtica: 7 passos (amb imatges)
Construcció de dispositius Homie per a la IoT o la domòtica: 7 passos (amb imatges)

Vídeo: Construcció de dispositius Homie per a la IoT o la domòtica: 7 passos (amb imatges)

Vídeo: Construcció de dispositius Homie per a la IoT o la domòtica: 7 passos (amb imatges)
Vídeo: Escape From The Past | Critical Role | Campaign 3, Episode 58 2024, Desembre
Anonim
Creació de dispositius Homie per a IoT o domòtica
Creació de dispositius Homie per a IoT o domòtica

Aquest instructiu forma part de la meva sèrie de domòtics de bricolatge. Consulteu l'article principal "Planificació d'un sistema domòtic de bricolatge". Si encara no sabeu què és Homie, mireu homie-esp8266 + homie de Marvin Roger.

Hi ha molts sensors. Estic cobrint els més bàsics per tal de donar als lectors els requisits necessaris per començar a construir "alguna cosa". Pot ser que això no sigui ciència de coets, però que en realitat hauria de funcionar.

Si no teniu les peces, tingueu en compte la meva pròxima instrucció "Sourcing Electronic Parts From Asia".

Permeteu-me afegir algunes paraules de moda: IoT, ESP8266, Homie, DHT22, DS18B20, domòtica.

El tema hauria de ser força clar ara:-)

A més, aquest instructiu ara també està disponible a la meva pàgina personal:

Pas 1: Introducció

Començant
Començant
Començant
Començant

Convencions

Aquest instructiu utilitza clons D1 Mini. Es tracta de controladors compatibles amb Arduino compatibles amb WiFi que utilitzen xip ESP8266. S'envien amb un format de forma molt petit (~ 34 * 25 mm) i són barats (~ 3-4 $ per als clons).

Il·lustraré cada versió amb un D1 Mini, una placa de configuració i alguns sensors. Inclou una llista de materials (BOM) per a cada un, però ometré coses evidents com els cables de pont i la taula de tall (mini o completa). Em centraré en les "parts actives".

Per a cables / cables en diagrames (biblioteca Fritzing + AdaFruitFritzing), he utilitzat:

  • Vermell / taronja per a la potència, normalment de 3,3 V. De vegades serà de 5V, vés amb compte.
  • Negre per terra.
  • Groc per als senyals de dades digitals: els bits viatgen i es poden llegir tal com són mitjançant xips.
  • Blau / Porpra per a senyals de dades analògiques: aquí no hi ha bits, només tensió simple que s’ha de mesurar i calcular per entendre què passa.

Homie per a ESP8266 ofereix una dotzena d’exemples, aquí vaig començar a construir aquest instructiu.

Taula de pa

El D1 és bastant amigable amb la taula de treball, però només estalviarà una fila de pins cap amunt i cap avall. Cada exemple tindrà el D1 al costat dret i els components al costat esquerre. Els rails d’alimentació superiors i inferiors s’utilitzaran per transportar 3.3V o 5V.

Nota

Els exemples Homie es construeixen com a esbossos ".ino" per a Arduino IDE. El meu propi codi està construït com ".ccp" per a PlatformIO.

Això farà molt poca diferència, ja que els esbossos són prou senzills com per copiar-los / enganxar-los sigui quina sigui l’eina que trieu.

Pas 2: Temperatura i humitat: DHT22 / DHT11

Temperatura i humitat: DHT22 / DHT11
Temperatura i humitat: DHT22 / DHT11
Temperatura i humitat: DHT22 / DHT11
Temperatura i humitat: DHT22 / DHT11
Temperatura i humitat: DHT22 / DHT11
Temperatura i humitat: DHT22 / DHT11

Construint el dispositiu

El DHT22 utilitza:

  • Un pin digital per comunicar-se amb el controlador, connecteu-lo a D3
  • Dos cables per a l'alimentació (3,3V o 5V + GND)
  • El pin digital s'ha de mantenir alt (connectat a l'alimentació), per a això fem servir una resistència entre el rail de potència i el pin de dades

Codi

El projecte PlatformIO es pot descarregar des de:

L’exemple original de Homie és aquí (però no utilitza cap sensor):

Per a DHT22, utilitzeu la biblioteca de sensors DHT (ID = 19)

BOM

  • Controlador: Wemos D1 Mini
  • Resistència: 10KΩ
  • Sensor: (un d'aquests)

    • DHT22: He utilitzat el tipus de 4 pins que requereix una resistència addicional. Hi ha mòduls de 3 pins que s’envien com SMD que inclou la resistència.
    • DHT11: és més barat però menys precís, comproveu els vostres requisits

Pas 3: Temperatura impermeable: DS18B20

Temperatura impermeable: DS18B20
Temperatura impermeable: DS18B20
Temperatura impermeable: DS18B20
Temperatura impermeable: DS18B20
Temperatura impermeable: DS18B20
Temperatura impermeable: DS18B20

El DS18B20 utilitza:

  • Un pin digital per comunicar-se amb el controlador, connecteu-lo a D3
  • Dos cables per a l'alimentació (3,3V o 5V + GND)
  • El pin digital s'ha de mantenir alt (connectat a l'alimentació), per a això fem servir una resistència entre el rail de potència i el pin de dades

El DS18B20 és un sensor d’un fil. Utilitza un bus i, per tant, diversos sensors poden utilitzar un sol pin de dades.

També és possible NO utilitzar 3,3 V / 5 V per alimentar el sensor, això s'anomena mode d'alimentació paràsita. Consulteu el full de dades per obtenir més informació.

Codi

El projecte PlatformIO es pot descarregar des de:

Igual que per a DHT22, l'exemple original de Homie és aquí (però no utilitza cap sensor):

Per al bus 1-wire, utilitzeu el paquet OneWire (ID = 1)

Per a DS18B20, utilitzeu DallasTemperature (ID = 54)

BOM

  • Controlador: Wemos D1 Mini
  • Resistència: 4,7 KΩ
  • Sensor: DS18B20, a la imatge és impermeable
  • Terminal de cargol de 3 pins per facilitar la connexió del cable a la placa

Pas 4: Llum: fotoresistència / fotocèl·lula (digital: activat / desactivat)

Llum: fotoresistència / fotocèl·lula (digital: activat / desactivat)
Llum: fotoresistència / fotocèl·lula (digital: activat / desactivat)
Llum: fotoresistència / fotocèl·lula (digital: activat / desactivat)
Llum: fotoresistència / fotocèl·lula (digital: activat / desactivat)
Llum: fotoresistència / fotocèl·lula (digital: activat / desactivat)
Llum: fotoresistència / fotocèl·lula (digital: activat / desactivat)

Construint el dispositiu

(Ho sentim, no teniu cap component Fritzing per a la fotocèl·lula digital)

El mòdul digital fotocèl·lula utilitza:

  • Un pin digital per comunicar-se amb el controlador, connecteu-lo a D3
  • Dos cables per a l'alimentació (3,3 V + GND)

És possible utilitzar una fotocèl·lula analògica, però això no està documentat aquí; vegeu l’article excel·lent d’Adafruit "Usar una fotocèl·lula".

Nota: en aquest exemple hi ha un potenciòmetre a la placa del sensor. S'utilitza per establir el límit entre la llum ambiental "clara" i "fosca". Quan la lectura de 1 llum està apagada, per tant, la lectura de 0 significa llum si està activada.

Codi

El projecte PlatformIO es pot descarregar des de:

BOM

Controlador: Wemos D1 Mini

Sensor: mòdul fotosensible / de detecció de llum

Pas 5: Llum: fotoresistència / fotocèl·lula (analògica)

Llum: fotoresistència / fotocèl·lula (analògica)
Llum: fotoresistència / fotocèl·lula (analògica)
Llum: fotoresistència / fotocèl·lula (analògica)
Llum: fotoresistència / fotocèl·lula (analògica)
Llum: fotoresistència / fotocèl·lula (analògica)
Llum: fotoresistència / fotocèl·lula (analògica)

Construint el dispositiu

El sensor analògic de la fotocèl·lula actua com a resistència. Es connectarà entre una entrada analògica i 3,3V.

Es posa una resistència entre GND i el pin de dades per crear un divisor de voltatge. L’objectiu és crear un rang de valors conegut:

  • Si no hi ha llum, la fotocèl·lula bàsicament bloquejarà VCC, connectant així GND al vostre pin de dades: el pin llegirà gairebé 0.
  • Si hi ha molta llum brillant, la fotocèl·lula permetrà que el VCC flueixi cap al pin de dades: el pin llegirà voltatge gairebé complet i, com a tal, a prop del màxim (1023).

Nota: Els valors dels pins analògics es llegeixen en un interval de 0-1023 mitjançant analogRead. Això no és pràctic per tractar valors d'1 byte, per això la funció de mapa Arduino ajudarà a reduir de 0-1023 a (per exemple) 0-255.

Per calibrar els valors mínim / màxim del sensor, utilitzeu un esbós com aquest d’Arduino.

Codi

El projecte PlatformIO es pot descarregar des de:

BOM

  • Controlador: Wemos D1 Mini
  • Sensor: resistència depenent de la llum (LDR) / fotoresistència
  • Resistència: 1K o 10K, cal calibrar-la segons la vostra cel·la

Referències

  • Codi font del servidor PiDome per a l'estat d'il·luminació d'una ubicació
  • "Utilitzant una fotocèl·lula" d'Adafruit
  • "Fotoresistors" aquí a instructables
  • Alguns "Tutorial de fotocèl·lules" maleïts bojos si voleu matemàtiques i gràfics

Pas 6: Detector òptic: QRD1114

Construint el dispositiu

Codi

BOM

Referències

  • Informàtica física: QRD1114 inclou codi de mostra per llegir el sensor i utilitzar la interrupció per al codificador rotatiu + disseny precís de PCB
  • Guia de connexió del detector òptic QRD1114 a Sparkfun

Pas 7: Paraules finals

Paraules finals
Paraules finals

Aquesta instrucció és molt breu per explicar el seguiment bàsic.

Per anar més enllà haurem de connectar relés, emissor IR … Esperem que això es cobreixi més endavant, ja que el temps lliure em permet. La principal diferència és que no només "llegirem" (hi ha llum?), Sinó que també "escriure" (encendre la llum!).

Recomanat: