Innholdsfortegnelse:

Bygge Homie -enheter for IoT eller hjemmeautomatisering: 7 trinn (med bilder)
Bygge Homie -enheter for IoT eller hjemmeautomatisering: 7 trinn (med bilder)

Video: Bygge Homie -enheter for IoT eller hjemmeautomatisering: 7 trinn (med bilder)

Video: Bygge Homie -enheter for IoT eller hjemmeautomatisering: 7 trinn (med bilder)
Video: Unforgettable Party in honor of the Beloved Mother-in-Law: you won't believe what happened! 2024, Desember
Anonim
Bygge Homie -enheter for IoT eller hjemmeautomatisering
Bygge Homie -enheter for IoT eller hjemmeautomatisering

Dette instruerbare er en del av min DIY Home Automation -serie, sjekk hovedartikkelen "Planlegge et DIY Home Automation System". Hvis du ikke vet hva Homie er ennå, kan du se på homie-esp8266 + homie fra Marvin Roger.

Det er mange mange sensorer. Jeg dekker de helt grunnleggende for å gi leseren kravene til å komme i gang med å bygge "noe". Det er kanskje ikke rakettvitenskap, men det burde faktisk fungere.

Hvis du ikke har delene, se opp for min kommende instruksjonsbaserte "Sourcing Electronic Parts From Asia".

La meg legge til noen få buzz -ord: IoT, ESP8266, Homie, DHT22, DS18B20, hjemmeautomatisering.

Emnet burde vært ganske klart nå:-)

Denne instruksen er nå også tilgjengelig fra min personlige side:

Trinn 1: Komme i gang

Starter
Starter
Starter
Starter

Konvensjoner

Denne instruerbare bruker D1 Mini -kloner. Dette er WiFi -aktiverte Arduino -kompatible kontrollere som bruker ESP8266 -brikke. De sender i veldig liten formfaktor (~ 34*25 mm) og er skitt billige (~ 3-4 $ for kloner).

Jeg skal illustrere hver konstruksjon ved hjelp av en D1 Mini, et brødbrett og noen sensor (er). Jeg inkluderer en Bill Of Materials (BOM) for hver, men hopper over åpenbare ting som jumperwires og breadboard (mini eller full). Jeg vil fokusere på "aktive deler".

For ledninger/kabler i diagrammer (Fritzing + AdaFruitFritzing bibliotek) brukte jeg:

  • Rød/oransje for strøm, vanligvis 3,3V. Noen ganger vil det være 5V, vær forsiktig.
  • Svart for bakken.
  • Gul for digitale datasignaler: Bitene er på reise og kan leses som de er av sjetonger.
  • Blå/lilla for analoge datasignaler: Ingen biter her, bare ren spenning som må måles og beregnes for å forstå hva som skjer.

Homie for ESP8266 sender et dusin eksempler, det var der jeg begynte å bygge dette instruerbare.

Brødbrett

D1 er ganske brødbrettvennlig, men sparer bare en rad pinner opp og ned. Hvert eksempel vil ha D1 på høyre side og komponentene på venstre side. De øvre og nedre strømskinnene vil bli brukt til å bære enten 3.3V eller 5V.

Merk

Homie -eksempler er bygget som ".ino" -skisser for Arduino IDE. Min egen kode er imidlertid bygget som ".ccp" for PlatformIO.

Dette vil gjøre veldig liten forskjell ettersom skisser er enkle nok til å kopieres/limes inn uansett hvilket verktøy du ønsker.

Trinn 2: Temperatur og fuktighet: DHT22 / DHT11

Temperatur og fuktighet: DHT22 / DHT11
Temperatur og fuktighet: DHT22 / DHT11
Temperatur og fuktighet: DHT22 / DHT11
Temperatur og fuktighet: DHT22 / DHT11
Temperatur og fuktighet: DHT22 / DHT11
Temperatur og fuktighet: DHT22 / DHT11

Å bygge enheten

DHT22 bruker:

  • En digital pin for å kommunisere med kontrolleren, koble den til D3
  • To ledninger for strøm (3.3V eller 5V + GND)
  • Den digitale pinnen må holdes høy (koblet til strøm), for dette bruker vi en motstand mellom kraftskinne og datapinne

Kode

PlatformIO-prosjektet kan lastes ned fra:

Det originale Homie-eksemplet er her (men bruker ikke en sensor):

For DHT22, bruk DHT -sensorbibliotek (ID = 19)

BOM

  • Kontroller: Wemos D1 Mini
  • Motstand: 10KΩ
  • Sensor: (en av disse)

    • DHT22: Jeg har brukt typen 4 pins som krever en ekstra motstand. Det er 3 pins moduler som leveres som SMD som inkluderer motstanden.
    • DHT11: Dette er billigere, men mindre nøyaktig, sjekk kravene dine

Trinn 3: Vanntett temperatur: DS18B20

Vanntett temperatur: DS18B20
Vanntett temperatur: DS18B20
Vanntett temperatur: DS18B20
Vanntett temperatur: DS18B20
Vanntett temperatur: DS18B20
Vanntett temperatur: DS18B20

Bygging av enheten DS18B20 bruker:

  • En digital pin for å kommunisere med kontrolleren, koble den til D3
  • To ledninger for strøm (3.3V eller 5V + GND)
  • Den digitale pinnen må holdes høy (koblet til strøm), for dette bruker vi en motstand mellom kraftskinne og datapinne

DS18B20 er en 1-leder sensor. Den bruker en buss, og som sådan kan flere sensorer bruke en enkelt datapinne.

Det er også mulig å IKKE bruke 3.3V/5V for å drive sensoren, dette kalles parasittisk strømmodus. Se datablad for detaljer.

Kode

PlatformIO-prosjektet kan lastes ned fra:

Som for DHT22, er det originale Homie-eksemplet her (men bruker ikke en sensor):

Bruk 1Wire-buss, bruk pakken OneWire (ID = 1)

For DS18B20, bruk DallasTemperature (ID = 54)

BOM

  • Kontroller: Wemos D1 Mini
  • Motstand: 4,7KΩ
  • Sensor: DS18B20, bildet er vanntett
  • 3 pins skrueterminal for å lette tilkoblingen av kabelen til brødbrettet

Trinn 4: Lys: Fotoresistor / fotocelle (digital: På / av)

Lys: Fotoresistor / fotocelle (digital: På / av)
Lys: Fotoresistor / fotocelle (digital: På / av)
Lys: Fotoresistor / fotocelle (digital: På / av)
Lys: Fotoresistor / fotocelle (digital: På / av)
Lys: Fotoresistor / fotocelle (digital: På / av)
Lys: Fotoresistor / fotocelle (digital: På / av)

Å bygge enheten

(Beklager, har ikke en Fritzing -komponent for den digitale fotocellen)

Den digitale fotocellen modulen bruker:

  • En digital pin for å kommunisere med kontrolleren, koble den til D3
  • To ledninger for strøm (3.3V + GND)

Det er mulig å bruke en analog fotocelle, men dette er ikke dokumentert her, se Adafruit utmerket artikkel "Bruke en fotocelle".

Merk: I dette eksemplet er det et potensiometer på sensorkortet. Den brukes til å sette grensen mellom "lys" og "mørkt" omgivelseslys. Når avlesning 1 lys er slått av, betyr lesing 0 lys hvis det er på.

Kode

PlatformIO-prosjektet kan lastes ned fra:

BOM

Kontroller: Wemos D1 Mini

Sensor: Lysfølsom / lysdeteksjonsmodul

Trinn 5: Lys: Fotoresistor / fotocelle (analog)

Lys: Fotoresistor / fotocelle (analog)
Lys: Fotoresistor / fotocelle (analog)
Lys: Fotoresistor / fotocelle (analog)
Lys: Fotoresistor / fotocelle (analog)
Lys: Fotoresistor / fotocelle (analog)
Lys: Fotoresistor / fotocelle (analog)

Å bygge enheten

Den fotocelle analoge sensoren fungerer som en motstand. Den vil koble mellom en analog inngang og 3,3V.

En motstand settes mellom GND og datapinne for å lage en spenningsdeler. Formålet er å skape et kjent verdiområde:

  • Hvis det ikke er noe lys, vil fotocellen i utgangspunktet blokkere VCC, og dermed koble GND til datapinnen: Pin vil lese nesten 0.
  • Det er mye sterkt lys, fotocelle lar VCC strømme til datapinnen: Pinnen vil lese nesten full spenning og som sådan nær maks (1023).

Merk: Analoge pins-verdier leses i et 0-1023-område ved bruk av analogRead. Dette er ikke praktisk å håndtere 1 byte verdier, for dette vil Arduino kartfunksjonen bidra til å redusere fra 0-1023 til (for eksempel) 0-255.

For kalibrering av min/maks -verdier for sensoren din, bruk en skisse som denne fra Arduino.

Kode

PlatformIO-prosjektet kan lastes ned fra:

BOM

  • Kontroller: Wemos D1 Mini
  • Sensor: Lysavhengig motstand (LDR) / fotoresistor
  • Motstand: 1K eller 10K, må kalibreres basert på cellen din

Referanser

  • PiDome -serverens kildekode for belysningstilstanden til et sted
  • Adafruit's "Using a Photocell"
  • "Fotoresistorer" her på instruktører
  • Noen jævla "Photocell Tutorial" hvis du vil ha litt matte og grafer

Trinn 6: Optisk detektor: QRD1114

Å bygge enheten

Kode

BOM

Referanser

  • Fysisk databehandling: QRD1114 inkluderer prøvekode for lesesensor og bruk avbrudd for roterende encoder + presis PCB -design
  • QRD1114 Tilkoblingsguide for optisk detektor på Sparkfun

Trinn 7: Siste ord

Siste ord
Siste ord

Denne instruerbare er en veldig kort forklaring av grunnleggende overvåking.

For å gå videre må vi koble til reléer, IR -sender … Dette vil forhåpentligvis bli dekket senere ettersom fritiden tillater meg det. Den største forskjellen er at vi ikke bare "leser" (er det lys?), Men også "skriver" (tenner lyset!).

Anbefalt: