Difference between revisions of "Inteligentný skleník"

From Digitálne technológie výroby
Jump to: navigation, search
(Kód)
Line 71: Line 71:
 
== Kód ==
 
== Kód ==
  
Celý hotový kód pre skleník nájdete na odkaze https://github.com/15ajka/Inteligentny_sklenik/blob/master/SKLENIK.ino . Pred využitím samotného kódu ale odporúčam si odskúšať bez tohto kódu fungovanie jednotlivých senzorov a zariadení pre zoznámenie sa s projektom. Pred použitím samotného kódu je tiež potrebné stiahnuť a pridať do Arduina knižnice pre využívanie teplomeru. Tieto knižnice nájdete na stránke https://create.arduino.cc/projecthub/TheGadgetBoy/ds18b20-digital-temperature-sensor-and-arduino-9cc806#toc-step-3--libraries-2 aj s popisom ako ich pridať do Arduina. Následne je potrebné urobiť isté zmeny v kóde, kvôli líšiacim sa senzorom. Niektoré hodnoty sú závislé od konkrétnej súčiastky a je potrebné ich preto upraviť podľa hodnôt, ktoré vykazujú vaše senzory. Všetky potrebné zmeny sú popísané v kóde.
+
Celý hotový kód pre skleník nájdete na odkaze https://github.com/15ajka/Inteligentny_sklenik/blob/master/SKLENIK.ino . Pred využitím samotného kódu ale odporúčam si odskúšať bez tohto kódu fungovanie jednotlivých senzorov a zariadení pre zoznámenie sa s ich fungovaním, keďže v kóde je nutné vytvárať zmeny podľa konkrétneho zariadenia. Pred použitím samotného kódu je tiež potrebné stiahnuť a pridať do Arduina knižnice pre využívanie teplomeru. Tieto knižnice nájdete popísané a priložené na stránke https://create.arduino.cc/projecthub/TheGadgetBoy/ds18b20-digital-temperature-sensor-and-arduino-9cc806#toc-step-3--libraries-2 aj s popisom ako ich pridať do Arduina. Niektoré hodnoty sú závislé od konkrétnej súčiastky a je potrebné ich preto upraviť podľa hodnôt, ktoré vykazujú konkrétne senzory. Všetky potrebné zmeny sú popísané v kóde. Sú to hraničné hodnoty senzotu vlhkosti a taktiež časi a rýchlosti navýjania serva.
  
 
== Poskladanie všetkých súčastí ==
 
== Poskladanie všetkých súčastí ==

Revision as of 00:03, 18 June 2020

Ako študentka som si na internáte pestovala svoje vlastné bylinky. Keďže ale niekedy na internátoch dlhšiu dobu so spolubývajúcimi nie sme, rastlinky niekedy vyschnú. Preto som sa rozhodla vytvoriť si inteligentný skleník, ktorý bude obsahovať automatické zalievanie, vetranie a vyhrievanie, aby som sa mohla spoľahnúť, že rastlinky prežijú aj bez mojej prítomnosti.

Súčiastky

Na tvorbu vlastného inteligentného skleníka potrebujeme:

  • Drevený rám
  • Fóliové tabule
  • Arduino
  • Breadboard
  • Arduino nano micro sensor shield
  • Senzor vlhkosti pôdy
  • Arduino Relay
  • Baterka 9V + držiak na baterku
  • Vodná pumpa
  • Hadička ku pumpe
  • Senzor teploty vzduchu
  • 2xContinuous servo
  • Rezistor
  • Kábliky na prepojenie podľa potreby

Všetky súbory a zdrojové kódy nájdete v gitlab repozitáry: https://github.com/15ajka/Inteligentny_sklenik.git. Obrázky konkrétnych senzorov a pumpy, ktoré som použila ja, vidíte na obrázkoch. Podľa nich je možné na internete nájsť ďalšie postupy, videá zapojenia a kódy v prípade rozširovania projektu.

  • Teplomer
  • Senzor vlhkosti pôdy
  • Vodná pumpa
  • Postup

    V tejto časti uvedieme kompletný postup postavenia inteligentného skleníka od začiatku až po finálne ukončenie. Časti, ktoré nie sú do detailu popísané odporúčam si vyskúšať s svojpomocne (a s pomocou internetu), aby ste sa zoznámili s jednotlivými súčiastkami a ich kódmi.

    Postup skladania kostry

    Na začiatku je potrebné navrhnúť jednotlivé časti skleníka. Môj návrh si môžete stiahnuť na stránke https://github.com/15ajka/Inteligentny_sklenik/blob/master/sklennik_plan.cdr. V prípade potreby je možné veľkosti skleníka jednoducho upraviť zmenou rozmerov jednotlivých komponentov. Treba si dať pozor na to, že bočné zúbky musia byť prispôsobené hrúbke materiálu. Tento 2D model sme následne vyrezali z 8mm hrubej drevenej dosky, pomocou laseru. Výsledné jednotlivé časti môžeme vidieť na obrázku.

  • Jednotlivé časti
  • Keďže strecha (ako vidieť na ďalšom obrázku) nedosadala na steny skleníka, bolo potrebné zrezať/zbrúsiť hrany. Ja som použila brúsku a po zbrúsení strecha doľahla ku stenám, ako je vidno na strednom obrázku. Taktiež sme zbrúsili presahujúcu časť strechy, aby pánty zasadli k jednotlivým častiam. Do zadnej steny skleníka som navŕtala otvory na hadičku pumpy, senzor teploty, vlhkosti a na servá. Tento krok je možné urobiť už pri laserovom rezaní. Keďže som ale ešte nevedela, ako čo zapojím, rozhodla som sa to riešiť dodatočne vyrezaním vŕtačkou. Výsledná zadná stena vyzerala ako na obrázku vpravo.

  • Nedosadajúca strecha
  • Dosadajúca strecha
  • File:Diery.png
    Zadná stena s otvormi na senzory
  • Následne sme 4 pántami (2 na každej strane) pripevnili strechu. V prípade, že sa strecha po upevnení pantov bude vzpriečať a nebude úplne dosadať, odporúčam uvoľniť šrúbky v pántoch. V mojom prípade to problém vyriešilo. Keď máme všetky časti hotové, možme celý skleník zložiť. Keďže po zložení skleníka steny nedostatočne dosadali, rozhodla som do spojov pridať lepidlo. Výsledok vyzeral nasledovne.

    Zapojenie

    Keď máme pripravenú kostru, v ďalšom kroku je potrebné zapojiť elektronické súčiastky. Odporúčam si najprv zapojiť a otestovať každú súčiastku zvlášť, aby sa predišlo zbytočným zdĺhavým hľadaniam chýb v spleti zapojenia. Najprv podľa pokynov zvoleného shield-u pripojíme Arduino Nano. Ja som sa riadila názvami jednotlivých pinov na Arduine a názvami dutiniek na shield-e. Následne som pripojila jednotlivé súčiastky.

    Senzor vlhkosti Na senzore vlhkosti potrebujeme pripojiť 3 kábliky. Prvý je VCC (modrý), ktorý pripojíme na 5V pin Arduina. Druhý je GND (čierny), ktorý zapojíme na GND pinu Arduina. Posledný je analógový výstup, AO (biely), ktorý zapojíme na pin A0, vďaka čomu budeme môcť merať rôzne hodnoty vlhkosti. Konkrétne zapojenie môžete vidieť na obrázkoch.

  • Zapojenie senzoru vlhkosti - senzor
  • Zapojenie senzoru vlhkosti - Arduino
  • Vodná pumpa Ku pumpe sme rovnako zapojili plavák - senzor, ktorý určuje, či je v pohári voda. V prípade, že by v pohári voda nebola a pumpa by sa zapla, pumpa by sa mohla pokaziť. Plavák má 2 kábliky. Jeden sme pripájkovali na kladný káblik (červený) pumpy a druhý nechali voľný. Keďže bolo zapojenie pumpy do relé zložitejšie a nebolo by z fotiek jasné, prikladám použitú schému. V našom prípade je pumpa v schéme AC BULB a jej kladný koniec je káblik, ktorý je pripojený na plavák. Rovnako vidíme AC+ a AC-, čo je kladný a záporný káblik 9V baterky, ktorú bolo nutné pripojiť, keďže 5V Arduina nestačilo na poháňanie pumpy.

  • Schéma zapojenia relé a pumpy

  • Senzor teploty vzduchu Na senzore teploty potrebujeme pripojiť opäť 3 kábliky. Prvý je GND (čierny), ktorý zapojíme na GND pin Arduina. Druhý je VCC (červený), ktorý pripojíme na do Breadboardu, ktorý bude prepojený s 5V pinom Arduina. Posledný je výstup (žltý/biely), ktorý zapojíme do Breadboardu a prepojíme s pinom D2 Arduina, vďaka čomu budeme môcť merať teplotu vzduchu. Do Bradboardu zapojíme medzi VCC a výstup rezistor (ukážka na obrázku).

  • Zapojenie senzoru teploty vzduchu - senzor
  • Zapojenie senzoru teploty vzduchu - Breadboard
  • Zapojenie senzoru teploty vzduchu - Arduino
  • Arduino continuous servo Zapojenie serva je jednoduché. GND (hnedý) káblik zapojíme na GND pin Arduina. VCC (červený) káblik zapojíme na 5V pin Arduina a výstup (oranžový) na vybraný digitálny pin Arduina(v našom prípade pin D4 pre jeden motor a D6 pre druhý motor).

  • Zapojenie serva - servo
  • Zapojenie serva - Arduino
  • Kód

    Celý hotový kód pre skleník nájdete na odkaze https://github.com/15ajka/Inteligentny_sklenik/blob/master/SKLENIK.ino . Pred využitím samotného kódu ale odporúčam si odskúšať bez tohto kódu fungovanie jednotlivých senzorov a zariadení pre zoznámenie sa s ich fungovaním, keďže v kóde je nutné vytvárať zmeny podľa konkrétneho zariadenia. Pred použitím samotného kódu je tiež potrebné stiahnuť a pridať do Arduina knižnice pre využívanie teplomeru. Tieto knižnice nájdete popísané a priložené na stránke https://create.arduino.cc/projecthub/TheGadgetBoy/ds18b20-digital-temperature-sensor-and-arduino-9cc806#toc-step-3--libraries-2 aj s popisom ako ich pridať do Arduina. Niektoré hodnoty sú závislé od konkrétnej súčiastky a je potrebné ich preto upraviť podľa hodnôt, ktoré vykazujú konkrétne senzory. Všetky potrebné zmeny sú popísané v kóde. Sú to hraničné hodnoty senzotu vlhkosti a taktiež časi a rýchlosti navýjania serva.

    Poskladanie všetkých súčastí

    Fungovanie

    Po poskladaní máme pred sebou hotový produkt, inteligentný skleník, ktorý vaše rastlinky nenechá len tak zomrieť a bude im prinášať ideálne podmienky pre život. Skleník je vybavený dvoma hlavnými funkcionalitami. Prvou je automatické vetranie. V prípade, že teplota v skleníku presiahne 30°C, skleník sa sám otvorí a bude sa vetrať, kým teplota neklesne pod 25°C, kedy sa sám zavrie. Druhou funkcionalitou je automatické zalievanie. Arduino celý čas sleduje vlhkosť pôdy rastliniek. V prípade, že vlhkosť klesne pod 50%, Arduino rastlinky pumpou zalieva, až kým vlhkosť opäť nevzrastie nad 50%. V prípade, že sa v nádobe minie voda, pumpa sa nezapne, aby sa nepokazila. S týmto skleníkom sa už nemusíte báť nechať svoje rastlinky samé na intrákoch počas letných prázdnin.


    V prípade akýchkoľvek otázok ma môžete kontaktovať na emailovej adrese: angelikafedakova@gmail.com