Talaan ng mga Nilalaman:

Automated Plant Pot - Little Garden: 13 Hakbang (na may Mga Larawan)
Automated Plant Pot - Little Garden: 13 Hakbang (na may Mga Larawan)

Video: Automated Plant Pot - Little Garden: 13 Hakbang (na may Mga Larawan)

Video: Automated Plant Pot - Little Garden: 13 Hakbang (na may Mga Larawan)
Video: Nursing Student's Last Moments Recorded On Video - The Murder of Michelle Le | DEEP DIVE 2024, Hulyo
Anonim
Automated Plant Pot - Little Garden
Automated Plant Pot - Little Garden

Ako ay isang mag-aaral mula sa Multimedia at Teknolohiya ng Komunikasyon sa Howest Kortrijk. Para sa aming huling takdang-aralin, kailangan naming bumuo ng isang proyekto ng IoT na gusto namin.

Naghahanap ng paligid para sa mga ideya, nagpasya akong gumawa ng isang bagay na kapaki-pakinabang para sa aking ina na gustung-gusto ang lumalagong mga halaman at nagsimulang magtrabaho sa isang awtomatikong palayok ng halaman.

Ang mga pangunahing gawain para sa automated pot pot na ito, Little Garden, ay upang:

  • Sukatin ang

    • Temperatura
    • Banayad na tindi
    • Humidity
    • Ang kahalumigmigan ng lupa

I-save ang mga sukat sa isang database

Pagbutihin ang mga kondisyon para sa paglaki ng halaman kung ang isang tiyak na halaga ay masyadong mababa

Hayaang masubaybayan at mapamahalaan ang aparato sa pamamagitan ng isang website

Hindi bawat hakbang ay dapat sundin sa marka. Marami sa mga nangyayari ang maaaring maging iyong personal na kagustuhan o mapagbuti. Ang paggawa na ito ay ginawa sa isang paraan upang ang mga bahagi ay maaaring mabawi pagkatapos, kaya baka gusto mong lumapit sa iyong pag-ulit na magkakaiba upang gawin itong mas permanente

Hakbang 1: Mga Panustos

Mga gamit
Mga gamit
Mga gamit
Mga gamit
Mga gamit
Mga gamit

Karamihan sa mga supply para sa proyektong ito ay hindi masyadong mahirap makuha, kahit na sa aking kaso nagtrabaho ako sa maraming mga recycled na materyales. Kinakailangan ko ring tiyakin na makakaya ko ang ilang mga materyales pagkatapos.

Mga pangunahing bahagi:

  • Raspberry Pi 4 na modelo B
  • Suplay ng kuryente ng Raspberry Pi
  • Raspberry Pi T-cobbler
  • 16GB micro SD card
  • Ang supply ng kuryente ng Breadboard na may 3.3V at 5V
  • Breadboard
  • 12V supply ng kuryente

Mga Sensor:

  • DHT11: Humidity at Temperatura Sensor
  • BH1750: Light intensity sensor
  • Sensor ng kahalumigmigan ng lupa
  • MCP3008

Mga bahagi ng actuator:

  • 220V Water pump
  • 12V LED strip
  • Relay module Velleman
  • TIP 50: NPN transistor
  • 16X2 LCD-moduke display
  • PCF8574a

Mga lumalaban:

  • 3 x 330 Ohm resistors
  • 1 x 5k Ohm risistor
  • 2 x 10k Ohm resistors
  • 1 x 1k Ohm risistor
  • 1 x 10k Potentio resistor

Mga Kagamitan:

  • Prefabricated greenhouse / pot ng halaman
  • Junction box
  • Bote ng plastik na tubig
  • Mga Swivel
  • Jumper wires + regular na kawad
  • Skrews
  • Soldering lata + heat shrink tubing
  • Double sided ducktape
  • Pintura

Mga tool:

  • Pandikit baril
  • Drill
  • Sawblade
  • Panghinang
  • Pamamutol ng kahon
  • Brush ng pintura

Ang maayos na bagay tungkol sa proyektong ito ay maaari itong mapalawak o gawing simple, sa pamamagitan ng pagdaragdag / pag-aalis ng mga bahagi at bahagyang pag-aayos ng code. Halimbawa, sa pamamagitan ng pagpapalit ng 220V pump ng isang 12V pump, maaari mong alisin ang isang power adapter mula sa aparato.

Hakbang 2: Fritzing Schematic

Fritzing Schematic
Fritzing Schematic
Fritzing Schematic
Fritzing Schematic

Ang mga breadboard at electric scheme para sa aparato ay ipinapakita sa itaas. Makikita mo rito kung paano magkonekta ang lahat ng mga bahagi.

Isang pangkalahatang paliwanag kung paano gumagana ang mga bahagi:

  • Sinusukat ng DHT11 ang kahalumigmigan ng hangin sa% at ang temperatura sa ° C. Ang komunikasyon dito ay pinangangasiwaan ng isang I2C bu.
  • Sinusukat ng BH1750 ang lakas na ilaw sa lux. Ang komunikasyon ay pinangangasiwaan ng isang I2C bus
  • Ang sensor ng kahalumigmigan ng lupa ay lumilikha ng isang digital signal na na-convert ng MCP3008 sa isang nababasa na digital signal para sa Raspberry Pi
  • Ipinapakita ng 16x2 LCD-module ang mga IP address mula sa Pi, sunod-sunod. Nakakonekta ito sa isang PCF8574a na tumatanggap ng isang senyas mula sa Raspberry Pi na i-convert ito sa isang bilang ng mga signal para sa mga bit pin ng display. Ang mga E at RS na pin mula sa LCD ay konektado nang direkta sa Pi. Ang potentio risistor ay tumutukoy sa ningning ng screen.
  • Ang pump ng tubig ay konektado sa isang relay na nasa pagitan nito at ito ay 220V power supply / socket. Ang Raspberry Pi ay maaaring magpadala ng isang senyas sa relay upang isara ang electric circuit at i-on ang bomba.
  • Ang LED strip ay konektado sa 12V power supply at ang TIP 50 (NPN transistor) na nagpapalipat-lipat sa kasalukuyang kuryente. Ginagamit ang 1k Ohm risistor upang limitahan ang iginuhit na lakas mula sa Raspberry Pi, kung hindi man ay pinirito ito ng sobrang crispy.

Hakbang 3: Ihanda ang Raspberry Pi

Ihanda ang Raspberry Pi
Ihanda ang Raspberry Pi

Kung wala ka pang isa, kakailanganin mong ilagay ang isa sa mga imahe ng Raspberry Pi OS sa SD card. Hindi ko inirerekumenda ang paggamit ng Lite, dahil naging sanhi ito ng mga isyu sa simula. Pagkatapos nito ay tiyakin mong ang iyong Pi ay napapanahon sa pamamagitan ng paggamit ng mga sumusunod na utos habang ang Pi ay konektado sa internet:

  1. sudo apt-get update
  2. sudo apt-get upgrade

Pagkatapos nito ay maaari mong paganahin o mai-install ang mga pakete para gumana ang proyekto, alinman sa pamamagitan ng raspi-config o mga utos.

  • SPI
  • I2C
  • MySQL: susunod na hakbang
  • SocketIO: pip install flask-socketio

Matapos ang pag-set up, maaari kang magdagdag ng mga kinakailangang file na nakasulat sa html, CSS, Javascript at Python. Ang lahat ng aking code ay matatagpuan sa aking imbakan ng github.

Hakbang 4: Modelong Database - MySQL

Modelo ng Database - MySQL
Modelo ng Database - MySQL

Sa itaas maaari mong makita ang diagram ng ERD na naka-host sa pamamagitan ng MariaDB. Inirerekumenda ko ang pagsunod sa gabay sa pag-install ng MariaDB na ito, hindi lamang upang mai-install ang MariaDB, ngunit din upang matiyak na protektado ang iyong Pi.

Para sa mga taong nais maunawaan, gumagana ang database tulad ng sumusunod:

Ang mga sukat at toggle ng actuator ay nakaimbak bilang mga hilera sa loob ng talahanayan ng Metingen.

  • metingId = ID ng sukat ng pagsukat / toggle
  • aparatoId = ID ng aparato na responsable para sa hilera na ito sa talahanayan
  • waarde = halaga ng pagsukat ng sensor o toggle ng actuator

    • sensor: halaga ng pagsukat sa mga kaukulang yunit
    • actuators: 0 = OFF at 1 = ON
  • commentaar = mga komento na ginamit upang magdagdag ng labis na impormasyon, tulad ng mga error
  • datum = ang petsa at oras kung saan nangyari ang pagsukat / toggle

Ang mga setting para sa aparato ay nakaimbak sa loob ng Mga Setting.

  • settingId = ID ng row na ito at ang halaga ng setting
  • aparatoID = ID ng kaukulang aparato / sensor
  • waarde = halaga ng setting
  • uri = uri ng settin, ito ba ay maximum o minimum?

Huling ngunit hindi pa huli, ang talahanayan ng Mga Device ay nagtataglay ng impormasyon sa mga sensor at actuator.

  • aparatoId = ID ng aparato sa talahanayan na ito
  • naam = pangalan ng aparato / sangkap
  • merk = tatak
  • prijs = presyo ng sangkap
  • beschrijving = buod ng sangkap
  • eenheid = unit para sa mga sinusukat na halaga
  • typeDevice = tumutukoy kung ang sangkap ay isang sensor o actuator

Hakbang 5: Frontend: Pag-set up ng Webserver

Frontend: Pagse-set up ng Webserver
Frontend: Pagse-set up ng Webserver

Hihilingin sa iyo ng Pi na i-install ang Apache webserver upang mapatakbo ang webserver para sa aparatong ito. Maaari itong magawa sa sumusunod na utos:

sudo apt-get install apache2.

Kapag tapos na ito, maaari kang mag-navigate sa folder: / var / www / html. Dito kakailanganin mong ilagay ang lahat ng code ng frontend. Pagkatapos, maaari mong ma-access ang website sa pamamagitan ng pag-browse sa IP address.

Hakbang 6: Backend

Upang patakbuhin ang backend, kakailanganin mong patakbuhin ang app.py file, alinman sa manu-mano o sa pamamagitan ng paglikha ng isang serbisyo para dito sa Pi kaya't awtomatikong nagsisimula ito.

Tulad ng mapapansin mo, maraming mga file. Pinaghiwalay ko ang code hangga't makakaya ko upang magkaroon ng isang malinaw na pangkalahatang ideya at pag-aayos ng code.

Isang maikling paliwanag:

app.py: Ang pangunahing file kung saan sumali ang database, hardware code at backend code

config.py: Ang file ng pagsasaayos para sa mga databaseRepository

Mga Repository: Para sa pag-access sa data repository

  • Katulong

    • mga aparato_id: mga klase upang makatulong na makilala ang impormasyon ng aparato sa database
    • lcd: upang patakbuhin ang PCF at LCD
    • Mga Actuator: klase para sa pagpapatakbo ng mga actuator
    • Mga Sensor: mga klase para sa pagpapatakbo ng mga sensor

Hakbang 7: paglalagay ng LED Strip

Ang paglalagay ng LED Strip
Ang paglalagay ng LED Strip

Pinutol ko ang isang piraso ng LED strip at idinikit ito sa tuktok ng greenhouse box. Ang strip na ginamit ko ay maaaring maputol sa maraming mga posisyon at muling kumonekta, upang mailagay mo ang maraming mga piraso at muling ikonekta ang mga ito pagkatapos sa pamamagitan ng mga wire, na pinapayagan ang mas maraming puwang na naiilawan.

Hakbang 8: paglalagay ng mga Tubo

Paglalagay ng mga tubo
Paglalagay ng mga tubo

Ang mga tubo ay maaaring mailagay sa maraming paraan, ngunit sa aking kaso ay ikinabit ko ito sa gilid ng ilalim, pinapanatili ang mga ito hangga't maaari sa iba pang mga electronics hangga't maaari at pinapayagan ang tubig na dumaloy lamang sa dumi.

Hakbang 9: paglalagay ng LCD

Ang paglalagay ng LCD
Ang paglalagay ng LCD

Pinutol ko ang isang buo sa takip ng kahon ng junction na may isang lagari, na lumilikha ng isang pambungad na sapat na malaki upang makalusot ang display, ngunit sapat na maliit upang ang PCB ay manatili sa likuran nito. Pagkatapos, nakalakip ito sa takip gamit ang mga skews.

Ipinapakita ng LCD ang mga IP address ng Raspberry Pi, na ginagawang posible na malaman kung anong address ang maaari mong gamitin upang mag-surf sa website.

Hakbang 10: paglalagay ng mga Sensor at Pagkonekta sa LED Strip

Paglalagay ng Mga Sensor at Pagkonekta sa LED Strip
Paglalagay ng Mga Sensor at Pagkonekta sa LED Strip
Paglalagay ng Mga Sensor at Pagkonekta sa LED Strip
Paglalagay ng Mga Sensor at Pagkonekta sa LED Strip

Gamit ang mga scheme ng fritzing, naghinang ako ng mga koneksyon sa pagitan ng mga wire at inilagay ang mga resistors sa loob ng mga wire, gamit ang mga heat shrink tubes upang ihiwalay ang mga ito.

Ang mga butas ay pinutol sa mga gilid ng takip at ibaba ng greenhouse upang ikabit ang mga swivel, kung saan hinugot ko ang mga wire para sa mga sensor at LED strip.

Pinangkat ko ang mga wire ayon sa pagpapaandar. Ang pag-igting mula sa mga wire at pag-urong ng mga tubo mismo ay nagtataglay ng mga sensor. Kailangan ko lang gamitin ang pandikit sa mga wires para sa DHT11 dahil pinalawig pa ito.

Hakbang 11: Pag-kable sa Pi

Pag-kable sa Pi
Pag-kable sa Pi
Pag-kable sa Pi
Pag-kable sa Pi
Pag-kable sa Pi
Pag-kable sa Pi

Pinutol ko ang mga butas sa gilid ng kantong kahon upang payagan ang mga wires na makaraan mamaya.

Pagkatapos nito, inilagay ko ang breadboard (kasama ang T-cobbler, PCF8574a, MCP3008, naaayos na paglaban at TIP50), relay at Raspberry Pi sa ilalim ng kantong kahon, na natakpan ng dobleng panig na itik. Ang supply ng kuryente ay hindi magkasya sa breadboard, kaya kailangan kong ilagay ito sa gilid at gumamit ng mga wire ng jumper upang ikonekta ito sa breadboard.

Sa wakas ay hinila ko ang mga adapter, sensor at actuator wires sa pamamagitan ng mga butas na konektado sa mga wire sa breadboard, Raspberry Pi at iba pang mga sangkap. Ang wire ng bomba ay pinutol na bukas upang mailagay ko ang mga dulo sa loob ng relay upang magamit ito bilang isang switch.

Hakbang 12: Paggawa ng isang Lalagyan para sa Tubig

Paggawa ng isang Lalagyan para sa Tubig
Paggawa ng isang Lalagyan para sa Tubig

Gumawa ako ng lalagyan ng tubig mula sa isang 1l plastik na bote ng tubig sa pamamagitan ng paggupit ng tuktok ng isang pamutol ng kahon at pagpipinta para sa isang mas mahusay na hitsura. Pagkatapos ay inilagay ang water pump sa loob. Sanhi ng panuntunan ng pakikipag-ugnay sa mga sisidlan, ang tubig ay maaaring potensyal na dumaloy sa mga tubo mismo, ngunit ang paghawak sa tubo ay nag-aayos ng isyu.

Hakbang 13: Pangwakas na Resulta

Pangwakas na Resulta
Pangwakas na Resulta
Pangwakas na Resulta
Pangwakas na Resulta

Ang sandaling hinihintay mo pa. Ngayon ay maaari mong ilagay ang dumi at buto sa loob ng greenhouse box at hayaang mag-overtake ang aparato. Maaari mong subaybayan ang katayuan ng aparato mula sa website at itakda ang pinakamainam na mga halaga para sa mga kondisyon ng ilaw at lupa.

Inirerekumenda ko ang pagdidilig ng lupa muna nang manu-mano, dahil ang ilang mga dumi ay maaaring maging medyo tuyo sa una. Ang ilang mga bomba ay tila din sa tubig mabagal, ngunit kailangan mong maging maingat dahil mas mabilis itong mapupuno pagkatapos mong asahan. Ang isang saturation na higit sa 80% ay maaaring gawing napaka-basa ng lupa. At tiyakin na ang sensor ng kahalumigmigan ng lupa ay sapat na malalim.

Inirerekumendang: