Talaan ng mga Nilalaman:

Mini-Serre: 11 Mga Hakbang
Mini-Serre: 11 Mga Hakbang

Video: Mini-Serre: 11 Mga Hakbang

Video: Mini-Serre: 11 Mga Hakbang
Video: #11 Growing a Small Vegetable Garden on my Balcony (8sqm) (2020) 2024, Hulyo
Anonim
Mini-Serre
Mini-Serre
Mini-Serre
Mini-Serre

Bilang isang mag-aaral, masama ang ugali kong kalimutan ang mga bagay. Dahil dito, kung nais kong palaguin ang isang tiyak na uri ng halaman, karaniwang nakakalimutan ko ito at namatay ito dahil walang nangangalaga dito.

Susubukan kong ayusin ang problemang ito sa Mini-Serre. Ang Mini-Serre ay isang awtomatikong sistema ng pagsubaybay sa paghahardin na nagpapadala ng data ng iba't ibang uri ng mga sensor na naka-install sa isang webserver na tumatakbo sa Raspberry Pi. Sa ganitong paraan maaaring masubaybayan ng gumagamit ang kanilang mga halaman sa isang website nasaan man sila. Ang konsepto na ito ay binuo bilang isang pangwakas na proyekto sa loob ng unang taon ng multimedia at teknolohiya ng komunikasyon, sa Howest Kortrijk, Belgium.

Hakbang 1: Ang Mga Kagamitan

Ang Mga Kagamitan
Ang Mga Kagamitan

Upang maitayo ang proyektong ito, kakailanganin mo ang mga sumusunod na item:

Elektronika

  1. Raspberry pi 3 - kit
  2. Breadboard
  3. Mga konektor na lalaki at lalaki
  4. Mga konektor ng lalaki-sa-babaeng
  5. Dallas 18B20 (sensor ng temperatura)
  6. Photoresistor Detection Photosensitive Light Sensor
  7. MCP3008
  8. Potensyomiter
  9. LCD-display
  10. Mga lumalaban
  11. Blue LED
  12. RGB LED

Casing:

13. Central Park kweekkas (https://www.brico.be/nl/tuin-buitenleven/moestuin/…) 14. Wooden plate (ilalim ng kaso) 15. Pako 16. Mga tornilyo

Mga tool:

17. Hammer 18. Saw 19. Screwdriver 20. Drill

Hakbang 2: Paggawa ng Circuit

Paggawa ng Circuit
Paggawa ng Circuit
Paggawa ng Circuit
Paggawa ng Circuit

Sa hakbang 2 ay gagawin namin ang circuit para sa proyektong ito. Ito ang ganap na minimum na kailangan mo kung nais mong gumana ito. Gamitin ang fritzing table at ang diagram upang makagawa ng isang kopya ng circuit. Dito mo kailangan ang lahat ng mga de-kuryenteng materyales mula sa hakbang 1.

Impormasyon tungkol sa circuit:

Mayroon kaming 2 mga sensor na konektado sa MCP3008 na kung saan ay ang light sensor at ground moisture sensor. Ang sensor ng temperatura ay may digital output at gumagamit ng GPIO-pin sa Raspberry Pi.

Dagdag:

Nagpatupad din ako ng isang LCD-display na magpapadali sa paglaon upang kumonekta sa Raspberry Pi nang hindi na kinakailangang kumonekta sa iyong laptop. Hindi ito kinakailangan ngunit lubos itong iminungkahi.

Hakbang 3: Lumikha ng isang Database

Lumikha ng isang Database
Lumikha ng isang Database

Napakahalaga na iimbak ang iyong data mula sa mga sensor sa isang organisado ngunit ligtas din na paraan. Ito ang dahilan kung bakit napagpasyahan kong iimbak ang aking data sa isang database. Sa ganitong paraan maaari ko lamang ma-acces ang database na ito (na may isang personal na account) at mapanatili itong organisado. Sa larawan sa itaas maaari mong makita ang aking pamamaraan mula sa aking database at sa ibaba ng isang file upang mai-export ang database sa isang programa sa database, halimbawa MySQL.

Database-programMahalaga na ang aming database ay maaaring gumana nang mag-isa mula sa aming Raspberry Pi. Maaari mo itong gawin sa pamamagitan ng pag-download ng MySQL o MariaDB para sa Raspberry Pi. Una mong nais na gawin ang database sa iyong computer sa MySQL Workbench. Susunod na na-export mo ang database na ito bilang isang file na naglalaman ng sarili. Kumonekta ngayon sa database ng iyong Raspberry Pi sa pamamagitan ng MySQL Workbench at ibalik ang database dito. Ngayon ay mayroon kang tumatakbo na database sa iyong Raspberry Pi!

Hakbang 4: Pagsulat ng Data ng Sensor sa Database

Matapos ang database ay tumatakbo sa iyong Raspberry Pi nais naming maimbak ng aming mga sensor ang kanilang data dito. Magagawa natin ito sa pamamagitan ng paglikha ng 3 magkakahiwalay na mga script (na kung saan ay ginawa sa PyCharm). Ang isang magandang tampok na kasama sa PyCharm ay nakakonekta ka sa iyong Pi at sa ganitong paraan maaari mong ma-acces ang iyong database at direktang sumulat dito. Ang data ay direkta ring nabasa ng Raspberry Pi at ang mga ilaw ng LED ay naaayon alinsunod sa kung ano ang kailangan mo.

Nag-iilaw ang asul na LED: Ang lupa ay hindi sapat na basa. Ang mga LED ng RGB ay berde: ang lahat ay mabuti. Ang mga ilaw ng RGB LED ay pula: masyadong mainit, buksan ang bubong upang palamig ito nang kaunti. Ang mga LED RGB ay nag-ilaw ng asul: masyadong malamig, isara ang bubong kung bukas ito.

Maaari mong i-download ang lahat ng mga script mula sa aking github repository:

Tandaan: Ginamit ko ang aking personal na impormasyon sa pag-login para sa mga database upang maaari mong baguhin ito upang magkasya sa iyo.

Tandaan: Ang folder na DB1 ay naglalaman ng isang 'database' sa klase na na-import sa code na makakonekta sa iyong database.

Hakbang 5: Ipinapakita ang Iyong IP sa Display

Ipinapakita ang Iyong IP sa Display
Ipinapakita ang Iyong IP sa Display

Ipinapakita ng display ang IP-address na tumatakbo ang iyong Raspberry Pi, sa ganitong paraan madali kang makakonekta nang walang anumang mga wire sa iyong Raspberry Pi. Sumulat din ako ng isang iskrip para dito na binabasa ang IP ng iyong pi at ipinapakita ito sa display (tandaan na ang iyong GPIO-pin ay tumutugma kung hindi man ito maaaring gumana). Awtomatikong pinapatakbo ng Raspberry Pi ang script na ito sa pagsisimula. Maaari mo itong gawin sa pamamagitan ng pagdaragdag ng ilang code sa rc.local file sa iyong Raspberry Pi. Maaari kang makarating doon sa pamamagitan ng pag-type ng 'sudo nano /etc/rc.local', bago ang huling linya ng code na nais mong idagdag ang 'Python3.5 / home / user / filelocation &'.

Maaari mong makita ang script dito:

Tandaan: ang '&' sa dulo, gagawin nito ang script nang sabay-sabay at agad na ihinto ito upang ang iba pang mga script ay maaaring tumakbo pati na rin.

Hakbang 6: Pagsukat sa Mga Sensor Tuwing 10 Minuto

Pagsukat sa Mga Sensor Tuwing 10 Minuto
Pagsukat sa Mga Sensor Tuwing 10 Minuto

Hindi namin nais na mapunan ang aming database ng sensordata kailanman 0.001seconds, kung hindi man ay gagawan nito ng paraan para matigas para sa database na makasabay sa lahat ng data na papasok at baka mag-crash ito. Ito ang dahilan kung bakit nagdagdag ako ng isang scrapt sa 'crontab' sa Raspberry Pi. Ang Crontab ay isang programa na sumusubaybay sa mga nakaiskedyul na gawain upang sa ganitong paraan maaari mong patakbuhin ang script bawat 10 minuto nang isang beses lamang.

Paano i-set up ito:

Maaari mong i-set up ito sa pamamagitan ng unang pag-type sa linya ng utos na Raspberry Pi na 'crontab -e', bubuksan nito ang editor para sa crontab. Mag-scroll pababa sa ilalim ng file at magdagdag ng 3 mga linya, isa para sa bawat sensor.

'* / 10 * * * * python3.5 / home / user / filepath / sensor1'

Tandaan: Ang '* / 10' ay ang 10 minuto na nais naming maging sa pagitan ng bawat pagsukat. Ang code na nai-type ko pagkatapos nito ay ang bersyon ng sawa na iyong pinapatakbo at ang file na nais mong patakbuhin kaya't kailangan mong magsulat ng isang linya para sa bawat sensor dahil mayroon silang 3 magkakaibang mga file.

Hakbang 7: Paggawa ng Website

Paggawa ng Website
Paggawa ng Website

Ginawa ko ang aking website sa isang program na tinatawag na Atom. Napakadaling gamitin ang programa at maipapayo kung bago ka sa pagsulat ng HTML at CSS na tulad ko.

Mahahanap mo ang lahat ng code at imaheng ginamit na sumusunod sa link na ito:

Ginawa ko ang front-end ng website sa Visual Studio Code kaya kung hindi ka nagpaplano na gawin ang iyong HTML at CSS maaari mo lamang idagdag ang mga file sa isang bagong folder sa Visual Studio Code sa halip na Atom.

Hakbang 8: Paglikha ng Back-end

Ang back-end at front-end ay ang mga bagay na talagang nagagawa ang isang bagay sa website na aming ginawa. Sa back-end kumonekta kami muli sa aming database at sa halip na maglagay ng data sa database. Babasahin namin ngayon ang lahat ng data mula sa iba't ibang mga sensor at gumagamit ng Socket. Ipapadala namin ito sa aming front-end upang maipakita namin ito sa website.

Maaari mong makita ang code sa back-end dito:

Tandaan: Ginagamit namin ang klase ng database na ginamit namin kanina kaya hindi ko ito isinama sa lalagyan na ito.

Hakbang 9: Lumilikha ng Front-end

Ang front-end ay kung saan pinagsasama namin ang aming HTML & CSS code kasama ang JavaScript at ang aming Back-end. Sinusubukan ng sinulat kong JavaScript na gumawa ng isang koneksyon sa back-end na kailangang Tumatakbo. Ngayon ang Back-end ay magpapadala sa amin ng lahat ng data mula sa mga sensor at maaari kaming gumawa ng ilang mga pag-andar sa JavaScript na nag-e-edit ng HTML file kaya umaangkop ito sa aming kasalukuyang mga halaga.

Ang JavaScript ay matatagpuan dito:

Tandaan: tiyaking naka-link ka sa iyong HTML sa tamang folder ng lugar ng iyong JavaScript kung hindi man ay hindi ito gumana.

Hakbang 10: Paggawa ng Greenhouse

Paggawa ng Greenhouse
Paggawa ng Greenhouse
Paggawa ng Greenhouse
Paggawa ng Greenhouse

Bumili ako ng isang premade package mula sa Brico:

Sundin lamang ang mga hakbang na kasama ng package. Matapos ito ay tapos na hindi pa kami handa na ilagay doon ang aming Raspberry Pi. Una kailangan naming gumawa ng isang 'sahig' o ibaba para sa Greenhouse, magagawa mo ito sa pamamagitan ng pagkuha ng isang kahoy na plato at pagsukat kung gaano ito kalaki upang maging fit ito. Una akong gumawa ng kahoy na frame kaya't ang kahoy na plato ay may mapapahinga.

Hakbang 11: Pagsasama-sama sa Lahat

Pinagsasama ang Lahat
Pinagsasama ang Lahat
Pinagsasama ang Lahat
Pinagsasama ang Lahat
Pinagsasama ang Lahat
Pinagsasama ang Lahat

Halos handa na kami! Ang huling hakbang lamang na ito at handa ka nang umalis. Kunin ang Raspberry Pi at ang greenhouse, gumawa ng ilang mga butas upang mailagay mo ang mga LED, gumawa ng isang butas para sa display at isang butas para sa supply ng kuryente ng Raspberry Pi. Ilagay ang lahat sa greenhouse, isaksak ang Pi at nakaayos ka na! Mayroon kang sariling greenhouse!

Inirerekumendang: