Satura rādītājs:

Automatizēts augu pods - Mazais dārzs: 13 soļi (ar attēliem)
Automatizēts augu pods - Mazais dārzs: 13 soļi (ar attēliem)

Video: Automatizēts augu pods - Mazais dārzs: 13 soļi (ar attēliem)

Video: Automatizēts augu pods - Mazais dārzs: 13 soļi (ar attēliem)
Video: Pushing the boundaries in legume breeding 2024, Novembris
Anonim
Automatizēts augu pods - Mazais dārzs
Automatizēts augu pods - Mazais dārzs

Es esmu Howest Kortrijk multimediju un komunikāciju tehnoloģiju students. Pēdējam uzdevumam mums bija jāizstrādā IoT projekts pēc mūsu izvēles.

Apskatot idejas, es nolēmu pagatavot kaut ko noderīgu savai mātei, kurai patīk stādu audzēšana, un sāku strādāt pie automatizēta augu poda.

Šī automatizētā augu poda Little Garden galvenie uzdevumi ir:

  • Izmēriet

    • Temperatūra
    • Gaismas intensitāte
    • Mitrums
    • Augsnes mitrums

Saglabājiet mērījumus datu bāzē

Uzlabojiet augu augšanas apstākļus, ja noteikta vērtība ir pārāk zema

Ļaujiet ierīcei uzraudzīt un pārvaldīt, izmantojot vietni

Ne katrs solis ir jāievēro līdz atzīmei. Daudz kas no tā, kas notiek, var būt jūsu personīgā izvēle vai uzlabot. Šī būve tika veidota tā, lai pēc tam daļas varētu atgūt, tāpēc, iespējams, vēlēsities savādāk pievērsties iterācijai, lai padarītu to pastāvīgāku

1. solis: Piegādes

Piegādes
Piegādes
Piegādes
Piegādes
Piegādes
Piegādes

Lielāko daļu šī projekta materiālu nav ļoti grūti iegādāties, lai gan manā gadījumā es strādāju ar daudziem pārstrādātiem materiāliem. Man arī bija jānodrošina, ka pēc tam varu atgūt dažus materiālus.

Pamata sastāvdaļas:

  • Raspberry Pi 4 modelis B
  • Raspberry Pi barošanas avots
  • Raspberry Pi T-kurpnieks
  • 16 GB micro SD karte
  • Maizes dēļa barošanas avots ar 3.3V un 5V
  • Maizes dēlis
  • 12V barošanas avots

Sensori:

  • DHT11: mitruma un temperatūras sensors
  • BH1750: Gaismas intensitātes sensors
  • Augsnes mitruma sensors
  • MCP3008

Pievada sastāvdaļas:

  • 220V ūdens sūknis
  • 12V LED sloksne
  • Releja modulis Velleman
  • 50. PADOMS: NPN tranzistors
  • 16x2 LCD modema displejs
  • PCF8574a

Rezistori:

  • 3 x 330 omi rezistori
  • 1 x 5k omu rezistors
  • 2 x 10k omi rezistori
  • 1 x 1k omu rezistors
  • 1 x 10k potenciometra rezistors

Materiāli:

  • Saliekams siltumnīcas/augu pods
  • Sadales kārba
  • Plastmasas ūdens pudele
  • Grozāmie
  • Jumper vadi + parasts vads
  • Skrūves
  • Lodēšanas skārda + termiski saraušanās caurule
  • Divpusēja pīle
  • Krāsa

Rīki:

  • Līmes pistole
  • Urbis
  • Zāģa asmens
  • Lodāmurs
  • Kastes griezējs
  • Krāsas suka

Veiksmīgākais šajā projektā ir tas, ka to var paplašināt vai vienkāršot, pievienojot/noņemot komponentus un nedaudz mainot kodu. Piemēram, nomainot 220 V sūkni pret 12 V sūkni, jūs varat no ierīces noņemt strāvas adapteri.

2. solis: Fritzēšanas shēma

Fritzēšanas shēma
Fritzēšanas shēma
Fritzēšanas shēma
Fritzēšanas shēma

Ierīces maizes dēlis un elektriskās shēmas ir parādītas iepriekš. Šeit jūs varat redzēt, kā visas sastāvdaļas ir savienotas kopā.

Vispārīgs skaidrojums par to, kā darbojas sastāvdaļas:

  • DHT11 mēra gaisa mitrumu % un temperatūru ° C. Saziņu ar to apstrādā I2C bu.
  • BH1750 mēra gaismas intensitāti luksos. Saziņu pārvalda I2C kopne
  • Augsnes mitruma sensors rada digitālu signālu, ko MCP3008 pārveido par lasāmu ciparu signālu Raspberry Pi
  • 16x2 LCD modulis viens pēc otra parāda Pi adreses. Tas ir savienots ar PCF8574a, kas saņem signālu no Raspberry Pi, kas to pārveidos par vairākiem signāliem displeja bitu tapām. E un RS tapas no LCD ir tieši savienotas ar Pi. Potencio rezistors nosaka ekrāna spilgtumu.
  • Ūdens sūknis ir savienots ar releju, kas atrodas starp to, un tas ir 220V barošanas avots/kontaktligzda. Raspberry Pi var nosūtīt signālu relejam, lai aizvērtu elektrisko ķēdi un ieslēgtu sūkni.
  • LED sloksne ir pievienota 12 V barošanas avotam un TIP 50 (NPN tranzistors), kas pārslēdz elektrisko strāvu. 1k omu rezistors tiek izmantots, lai ierobežotu Raspberry Pi patērēto jaudu, pretējā gadījumā tas būtu cepts īpaši kraukšķīgs.

3. darbība: sagatavojiet Raspberry Pi

Sagatavojiet Raspberry Pi
Sagatavojiet Raspberry Pi

Ja vēl neesat to ieguvis, SD kartē būs jāievieto viens no Raspberry Pi OS attēliem. Es neiesaku izmantot Lite, jo tas man sākumā radīja problēmas. Pēc tam jums būs jāpārliecinās, vai jūsu Pi ir atjaunināts, izmantojot šādas komandas, kamēr Pi ir savienots ar internetu:

  1. sudo apt-get update
  2. sudo apt-get jauninājums

Pēc tam jūs varat iespējot vai instalēt pakotnes, lai projekts darbotos, izmantojot raspi-config vai komandas.

  • SPI
  • I2C
  • MySQL: nākamais solis
  • SocketIO: pip instalējiet kolbu-socketio

Pēc iestatīšanas varat pievienot nepieciešamos failus, kas rakstīti html, CSS, Javascript un Python. Visu manu kodu var atrast manā github krātuvē.

4. darbība. Datu bāzes modelis - MySQL

Datu bāzes modelis - MySQL
Datu bāzes modelis - MySQL

Augšpusē varat redzēt ERD diagrammu, kas tiek mitināta caur MariaDB. Es iesaku ievērot šo MariaDB instalēšanas rokasgrāmatu ne tikai, lai instalētu MariaDB, bet arī lai pārliecinātos, ka jūsu Pi ir aizsargāts.

Cilvēkiem, kuri vēlas saprast, datu bāze darbojas šādi:

Mērījumi un izpildmehānisma pārslēgi tiek saglabāti Metingen tabulas rindās.

  • metingId = mērījumu/pārslēgšanas rindas ID
  • deviceId = par šo tabulas rindu atbildīgās ierīces ID
  • waarde = sensora mērījuma vai izpildmehānisma pārslēgšanas vērtība
    • sensors: mērījuma vērtība attiecīgajās vienībās
    • izpildmehānismi: 0 = OFF un 1 = ON
  • commentaar = komentāri, ko izmanto, lai pievienotu papildu informāciju, piemēram, kļūdas
  • atskaites punkts = datums un laiks, kad tika veikts mērījums/pārslēgšanās

Ierīces iestatījumi tiek saglabāti sadaļā Iestatījumi.

  • settingId = šīs rindas ID un iestatījuma vērtība
  • deviceID = atbilstošās ierīces/sensora ID
  • waarde = iestatījuma vērtība
  • tips = norēķinu veids, vai tas ir maksimums vai minimums?

Visbeidzot, bet ne mazāk svarīgi, tabulā Ierīces ir informācija par sensoriem un izpildmehānismiem.

  • deviceId = šīs tabulas ierīces ID
  • naam = ierīces/komponenta nosaukums
  • merk = zīmols
  • prijs = komponenta cena
  • beschrijving = komponenta kopsavilkums
  • eenheid = mērīto vērtību vienība
  • typeDevice = norāda, vai komponents ir sensors vai izpildmehānisms

5. darbība. Frontend: tīmekļa servera iestatīšana

Frontend: tīmekļa servera iestatīšana
Frontend: tīmekļa servera iestatīšana

Lai palaistu šīs ierīces tīmekļa serveri, Pi būs jāinstalē Apache tīmekļa serveris. To var izdarīt ar šādu komandu:

sudo apt-get instalēt apache2.

Kad tas ir izdarīts, varat pāriet uz mapi:/var/www/html. Šeit jums būs jāievieto viss priekšpuses kods. Pēc tam varat piekļūt vietnei, pārlūkojot IP adresi.

6. darbība: aizmugure

Lai palaistu aizmuguri, jums būs jāpalaiž fails app.py vai nu manuāli, vai izveidojot tam pakalpojumu pakalpojumā Pi, lai tas tiktu automātiski palaists.

Kā jūs varētu pamanīt, ir diezgan daudz failu. Es atdalīju kodu, cik vien iespējams, lai būtu skaidrs koda pārskats un organizācija.

Īss skaidrojums:

app.py: galvenais fails, kurā ir pievienota datu bāze, aparatūras kods un aizmugures kods

config.py: databaseRepositories konfigurācijas fails

Krātuves: lai piekļūtu datu krātuvei

  • Palīgs

    • devices_id: klases, kas palīdz identificēt ierīces informāciju datu bāzē
    • LCD: lai palaistu PCF un LCD
    • Izpildmehānismi: klases izpildmehānismu darbināšanai
    • Sensori: sensoru darbības klases

7. solis: LED sloksnes ievietošana

LED sloksnes novietošana
LED sloksnes novietošana

Es izgriezu LED sloksnes gabalu un pielīmēju to siltumnīcas kastes augšpusē. Izmantoto sloksni varēja sagriezt vairākās pozīcijās un atkal savienot, lai jūs varētu novietot vairākas sloksnes un pēc tam atkal savienot tās caur vadiem, ļaujot izgaismot vairāk vietas.

8. solis: Cauruļu ievietošana

Cauruļu ievietošana
Cauruļu ievietošana

Caurules varēja novietot vairākos veidos, bet manā gadījumā es tās piestiprināju apakšā, turot tās pēc iespējas tālāk no pārējās elektronikas un ļaujot ūdenim vienkārši ieplūst netīrumos.

9. darbība: LCD displeja ievietošana

LCD displeja ievietošana
LCD displeja ievietošana

Sadales kārbas vākā ar zāģa asmeni iegriezu veselu, izveidojot pietiekami lielu atvērumu, lai displejs varētu iziet cauri, bet pietiekami mazs, lai PCB paliktu aiz tā. Pēc tam tas tika piestiprināts pie vāka, izmantojot šķībi.

LCD displejā tiek parādītas Raspberry Pi IP adreses, ļaujot uzzināt, kādu adresi varat izmantot, lai sērfotu vietnē.

10. darbība: sensoru ievietošana un LED sloksnes pievienošana

Sensoru novietošana un LED sloksnes pievienošana
Sensoru novietošana un LED sloksnes pievienošana
Sensoru novietošana un LED sloksnes pievienošana
Sensoru novietošana un LED sloksnes pievienošana

Izmantojot fritēšanas shēmas, es lodēju savienojumus starp vadiem un ievietoju rezistorus vadu iekšpusē, izmantojot termiski saraušanās caurules, lai tos izolētu.

Siltumnīcas vāka un apakšas malās tika izgriezti caurumi, lai piestiprinātu grozāmos, caur kuriem es izvilku vadus sensoriem un LED sloksnei.

Es sagrupēju vadus pēc funkcijas. Spriegums no vadiem un saraušanās caurulēm aizturēja sensorus. Man bija tikai jāizmanto līme uz DHT11 vadiem, jo tas pagarinājās vēl vairāk.

11. solis: Pi savienošana

Pi savienošana
Pi savienošana
Pi savienošana
Pi savienošana
Pi savienošana
Pi savienošana

Sadales kārbas malā es izgriezu caurumus, lai vēlāk varētu izlaist vadus.

Pēc tam es novietoju maizes dēli (ar T-kurpnieku, PCF8574a, MCP3008, regulējamu pretestību un TIP50), releju un Raspberry Pi sadales kārbas apakšā, kas bija pārklāta ar abpusēju pīlēti. Barošanas bloks nederēja uz maizes dēļa, tāpēc man tas bija jānovieto uz sāniem un, lai to savienotu ar maizes dēli, izmantoju džemperu vadus.

Visbeidzot es izvilku adaptera, sensora un izpildmehānisma vadus caur caurumiem, kas savienoja vadus ar maizes dēli, Raspberry Pi un citām sastāvdaļām. Sūkņa vads tika pārgriezts vaļā, lai es varētu novietot galus releja iekšpusē, lai to varētu izmantot kā slēdzi.

12. solis: ūdens tvertnes izgatavošana

Tvertnes izgatavošana ūdenim
Tvertnes izgatavošana ūdenim

Es izgatavoju ūdens trauku no 1l plastmasas ūdens pudeles, nogriežot augšdaļu ar kastes griezēju un nokrāsojot, lai tas izskatītos labāk. Pēc tam ūdens sūknis tika ievietots iekšpusē. Kuģu saziņas noteikumu dēļ ūdens var pats plūst caur caurulēm, bet, turot cauruli uz augšu, problēma tiek novērsta.

13. solis: gala rezultāts

Gala rezultāts
Gala rezultāts
Gala rezultāts
Gala rezultāts

Mirklis, kuru esi gaidījis. Tagad jūs varat ievietot netīrumus un sēklas siltumnīcas kastē un ļaut ierīcei pārņemt. Jūs varat uzraudzīt ierīces stāvokli vietnē un iestatīt optimālās vērtības apgaismojumam un augsnes apstākļiem.

Es iesaku vispirms laistīt augsni manuāli, jo daži netīrumi sākumā var būt diezgan sausi. Šķiet, ka daži sūkņi laista arī diezgan lēni, taču jums jābūt ļoti uzmanīgam, jo tas piepildīsies ātrāk, nekā gaidījāt. Piesātinājums virs 80% var padarīt zemi ļoti mitru. Un pārliecinieties, ka augsnes mitruma sensors ir pietiekami dziļš.

Ieteicams: