Turinys:

„Homie“prietaisų kūrimas daiktų internetui ar namų automatizavimui: 7 žingsniai (su nuotraukomis)
„Homie“prietaisų kūrimas daiktų internetui ar namų automatizavimui: 7 žingsniai (su nuotraukomis)

Video: „Homie“prietaisų kūrimas daiktų internetui ar namų automatizavimui: 7 žingsniai (su nuotraukomis)

Video: „Homie“prietaisų kūrimas daiktų internetui ar namų automatizavimui: 7 žingsniai (su nuotraukomis)
Video: „GTA SAN ANDREAS“ povandeninio laivo „Vortex Hovercraft“ naudojimo būdas. Povandeninio laivo gedimas 2024, Lapkritis
Anonim
„Homie“prietaisų kūrimas daiktų internetui ar namų automatizavimui
„Homie“prietaisų kūrimas daiktų internetui ar namų automatizavimui

Ši pamoka yra mano „pasidaryk pats“namų automatikos serijos dalis, skaitykite pagrindinį straipsnį „Pasidaryk pats namų automatizavimo sistemos planavimas“. Jei dar nežinote, kas yra Homie, pažiūrėkite į homie-esp8266 + homvin iš Marvin Roger.

Yra daug jutiklių. Apžvelgiu pagrindinius dalykus, kad skaitytojui būtų keliami reikalavimai pradėti kurti „kažką“. Tai gali būti ne raketų mokslas, bet tai iš tikrųjų turėtų veikti.

Jei neturite dalių, saugokitės mano būsimo pamokomo „Elektroninių dalių tiekimo iš Azijos“.

Leiskite pridėti keletą populiarių žodžių: „IoT“, ESP8266, „Homie“, DHT22, DS18B20, namų automatika.

Dabar tema turėtų būti aiški:-)

Be to, šį nurodymą dabar taip pat galite rasti mano asmeniniame puslapyje:

1 žingsnis: Darbo pradžia

Darbo pradžia
Darbo pradžia
Darbo pradžia
Darbo pradžia

Konvencijos

Ši instrukcija naudoja D1 Mini klonus. Tai „WiFi“palaikantys „Arduino“suderinami valdikliai, naudojantys ESP8266 lustą. Jie siunčiami labai mažos formos (~ 34*25 mm) ir yra nešvarūs (~ 3-4 USD už klonus).

Aš iliustruosiu kiekvieną konstrukciją naudodamas „D1 Mini“, duonos lentą ir kai kuriuos jutiklius. Įtraukiu kiekvienos medžiagos sąrašą (BOM), bet praleisiu akivaizdžius dalykus, tokius kaip trumpieji laidai ir duonos lenta (mini arba pilna). Aš sutelksiu dėmesį į „aktyvias dalis“.

Laidams/kabeliams diagramose („Fritzing + AdaFruitFritzing“biblioteka) naudojau:

  • Raudona/oranžinė, skirta maitinimui, paprastai 3.3V. Kartais bus 5V, būkite atsargūs.
  • Juoda žemei.
  • Geltona skaitmeniniams duomenų signalams: bitai keliauja ir juos gali skaityti lustai.
  • Mėlyna/violetinė, skirta analoginiams duomenų signalams: čia nėra bitų, tik paprasta įtampa, kurią reikia išmatuoti ir apskaičiuoti, kad suprastumėte, kas vyksta.

„Homie“, skirta ESP8266, pateikia keliolika pavyzdžių, čia aš pradėjau kurti šį nurodymą.

Bandomoji Lenta

D1 yra gana draugiškas duonai, bet sutaupys tik vieną kaiščių eilę aukštyn ir žemyn. Kiekviename pavyzdyje bus D1 dešinėje pusėje ir komponentai kairėje pusėje. Viršutinė ir apatinė galios bėgiai bus naudojami 3.3V arba 5V įtampai.

Pastaba

„Homie“pavyzdžiai yra sukurti kaip „.ino“eskizai, skirti „Arduino IDE“. Tačiau mano „PlatformIO“kodas sukurtas kaip „.ccp“.

Tai padarys labai nedaug, nes eskizai yra pakankamai paprasti, kad juos būtų galima kopijuoti/įklijuoti, kad ir koks būtų jūsų pasirinktas įrankis.

2 žingsnis: temperatūra ir drėgmė: DHT22 / DHT11

Temperatūra ir drėgmė: DHT22 / DHT11
Temperatūra ir drėgmė: DHT22 / DHT11
Temperatūra ir drėgmė: DHT22 / DHT11
Temperatūra ir drėgmė: DHT22 / DHT11
Temperatūra ir drėgmė: DHT22 / DHT11
Temperatūra ir drėgmė: DHT22 / DHT11

Įrenginio kūrimas

DHT22 naudoja:

  • Vienas skaitmeninis kaištis, skirtas bendrauti su valdikliu, prijunkite jį prie D3
  • Du maitinimo laidai (3.3V arba 5V + GND)
  • Skaitmeninis kaištis turi būti aukštas (prijungtas prie maitinimo šaltinio), tam mes naudojame rezistorių tarp maitinimo bėgio ir duomenų kaiščio

Kodas

„PlatformIO“projektą galima atsisiųsti iš:

Originalus „Homie“pavyzdys yra čia (bet nenaudojamas jutiklis):

DHT22 atveju naudokite DHT jutiklių biblioteką (ID = 19)

BOM

  • Valdiklis: „Wemos D1 Mini“
  • Rezistorius: 10KΩ
  • Jutiklis: (vienas iš šių)

    • DHT22: Aš naudoju 4 kaiščius, kuriems reikia papildomo rezistoriaus. Yra 3 kaiščių moduliai, pristatomi kaip SMD, įskaitant rezistorių.
    • DHT11: Tai yra pigiau, bet mažiau tiksliai, patikrinkite savo reikalavimus

3 žingsnis: vandeniui atspari temperatūra: DS18B20

Neperšlampama temperatūra: DS18B20
Neperšlampama temperatūra: DS18B20
Neperšlampama temperatūra: DS18B20
Neperšlampama temperatūra: DS18B20
Neperšlampama temperatūra: DS18B20
Neperšlampama temperatūra: DS18B20

Įrenginio kūrimas DS18B20 naudoja:

  • Vienas skaitmeninis kaištis, skirtas bendrauti su valdikliu, prijunkite jį prie D3
  • Du maitinimo laidai (3.3V arba 5V + GND)
  • Skaitmeninis kaištis turi būti aukštas (prijungtas prie maitinimo šaltinio), tam mes naudojame rezistorių tarp maitinimo bėgio ir duomenų kaiščio

DS18B20 yra 1 laidų jutiklis. Jis naudoja magistralę, todėl keli jutikliai gali naudoti vieną duomenų kaištį.

Taip pat galima NENAUDOTI 3.3V/5V jutikliui maitinti, tai vadinama parazitinės galios režimu. Daugiau informacijos rasite duomenų lape.

Kodas

„PlatformIO“projektą galima atsisiųsti iš:

Kaip ir DHT22, čia yra originalus „Homie“pavyzdys (bet nenaudojamas jutiklis):

1 laidų magistralėje naudokite paketą „OneWire“(ID = 1)

DS18B20 naudokite „DallasTemperature“(ID = 54)

BOM

  • Valdiklis: „Wemos D1 Mini“
  • Rezistorius: 4.7KΩ
  • Jutiklis: DS18B20, nuotrauka atspari vandeniui
  • 3 kontaktų varžtas, kad būtų lengviau prijungti kabelį prie duonos lentos

4 žingsnis: Šviesa: fotorezistorius / fotoelementas (skaitmeninis: įjungtas / išjungtas)

Šviesa: fotorezistorius / fotoelementas (skaitmeninis: įjungtas / išjungtas)
Šviesa: fotorezistorius / fotoelementas (skaitmeninis: įjungtas / išjungtas)
Šviesa: fotorezistorius / fotoelementas (skaitmeninis: įjungtas / išjungtas)
Šviesa: fotorezistorius / fotoelementas (skaitmeninis: įjungtas / išjungtas)
Šviesa: fotorezistorius / fotoelementas (skaitmeninis: įjungtas / išjungtas)
Šviesa: fotorezistorius / fotoelementas (skaitmeninis: įjungtas / išjungtas)

Įrenginio kūrimas

(Atsiprašome, neturite skaitmeninio fotoelemento „Fritzing“komponento)

Fotoelementų skaitmeninis modulis naudoja:

  • Vienas skaitmeninis kaištis, skirtas bendrauti su valdikliu, prijunkite jį prie D3
  • Du maitinimo laidai (3.3V + GND)

Galima naudoti analoginį fotoelementą, tačiau tai čia neužfiksuota, žr. Puikų „Adafruit“straipsnį „Fotoelemento naudojimas“.

Pastaba: Šiame pavyzdyje jutiklio plokštėje yra potenciometras. Jis naudojamas ribai tarp „šviesios“ir „tamsios“aplinkos šviesos nustatyti. Kai skaitant 1 lemputė yra išjungta, tai skaitant 0 reiškia šviesą, jei ji įjungta.

Kodas

„PlatformIO“projektą galima atsisiųsti iš:

BOM

Valdiklis: „Wemos D1 Mini“

Jutiklis: šviesai jautrus / šviesos aptikimo modulis

5 žingsnis: Šviesa: fotorezistorius / fotoelementas (analoginis)

Šviesa: fotorezistorius / fotoelementas (analoginis)
Šviesa: fotorezistorius / fotoelementas (analoginis)
Šviesa: fotorezistorius / fotoelementas (analoginis)
Šviesa: fotorezistorius / fotoelementas (analoginis)
Šviesa: fotorezistorius / fotoelementas (analoginis)
Šviesa: fotorezistorius / fotoelementas (analoginis)

Įrenginio kūrimas

Fotoelementų analoginis jutiklis veikia kaip rezistorius. Jis jungsis tarp analoginio įėjimo ir 3.3V.

Tarp GND ir duomenų kaiščio dedamas rezistorius, kad būtų sukurtas įtampos daliklis. Tikslas yra sukurti žinomą verčių diapazoną:

  • Jei nėra šviesos, fotoelementas iš esmės užblokuos VCC, taip prijungdamas GND prie jūsų duomenų kaiščio: smeigtukas skaitys beveik 0.
  • Jei yra daug ryškios šviesos, fotoelementas leis VCC tekėti į duomenų kaištį: smeigtukas skaitys beveik visą įtampą ir tokiu būdu artimas maksimumui (1023).

Pastaba: naudojant analogRead, analoginės kaiščių vertės skaitomos 0-1023 diapazone. Tai nėra praktiška tvarkant 1 baitų reikšmes, todėl „Arduino“žemėlapio funkcija padės sumažinti nuo 0 iki 1023 iki (pavyzdžiui) 0–255.

Norėdami kalibruoti jutiklio min/max reikšmes, naudokite tokį eskizą iš šio „Arduino“.

Kodas

„PlatformIO“projektą galima atsisiųsti iš:

BOM

  • Valdiklis: „Wemos D1 Mini“
  • Jutiklis: nuo šviesos priklausomas rezistorius (LDR) / fotorezistorius
  • Rezistorius: 1K arba 10K, reikia kalibruoti pagal jūsų ląstelę

Nuorodos

  • „PiDome“serverio šaltinio kodas vietos apšvietimui
  • „Adafruit“„Naudojant fotoelementą“
  • „Fotorezistoriai“čia pagal instrukcijas
  • Keletas beprotiškų „fotoelementų pamokų“, jei norite matematikos ir grafikų

6 veiksmas: optinis detektorius: QRD1114

Įrenginio kūrimas

Kodas

BOM

Nuorodos

  • Fizinis skaičiavimas: QRD1114 apima mėginio kodą, skirtą nuskaityti jutiklį ir naudoti pertraukimą sukamajam kodavimo įrenginiui + tikslią PCB konstrukciją
  • QRD1114 optinių detektorių prijungimo vadovas „Sparkfun“

7 žingsnis: paskutiniai žodžiai

Baigiamieji žodžiai
Baigiamieji žodžiai

Šis nurodymas yra labai trumpas, kad paaiškintų pagrindinį stebėjimą.

Norėdami eiti toliau, turime prijungti relių, IR spinduliuotės … Tikimės, kad tai bus padaryta vėliau, nes man tai leis laisvas laikas. Pagrindinis skirtumas yra tas, kad mes ne tik „skaitysime“(ar yra šviesa?), Bet ir „rašysime“(įjungsime šviesą!).

Rekomenduojamas: