Talaan ng mga Nilalaman:
- Hakbang 1: Ang Mga Kagamitan
- Hakbang 2: Paggawa ng Circuit
- Hakbang 3: Lumikha ng isang Database
- Hakbang 4: Pagsulat ng Data ng Sensor sa Database
- Hakbang 5: Ipinapakita ang Iyong IP sa Display
- Hakbang 6: Pagsukat sa Mga Sensor Tuwing 10 Minuto
- Hakbang 7: Paggawa ng Website
- Hakbang 8: Paglikha ng Back-end
- Hakbang 9: Lumilikha ng Front-end
- Hakbang 10: Paggawa ng Greenhouse
- Hakbang 11: Pagsasama-sama sa Lahat
Video: Mini-Serre: 11 Mga Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:13
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
Upang maitayo ang proyektong ito, kakailanganin mo ang mga sumusunod na item:
Elektronika
- Raspberry pi 3 - kit
- Breadboard
- Mga konektor na lalaki at lalaki
- Mga konektor ng lalaki-sa-babaeng
- Dallas 18B20 (sensor ng temperatura)
- Photoresistor Detection Photosensitive Light Sensor
- MCP3008
- Potensyomiter
- LCD-display
- Mga lumalaban
- Blue LED
- 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
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
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 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
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
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
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
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:
Mga Soldering Surface Mount Component - Mga Pangunahing Kaalaman sa Paghinang: 9 Mga Hakbang (na may Mga Larawan)
Mga Soldering Surface Mount Component | Mga Pangunahing Kaalaman sa Paghinang: Sa ngayon sa aking Serye ng Mga Pangunahing Kaalaman sa Soldering, tinalakay ko ang sapat na mga pangunahing kaalaman tungkol sa paghihinang para masimulan mong magsanay. Sa Ituturo na ito kung ano ang tatalakayin ko ay medyo mas advanced, ngunit ito ay ilan sa mga pangunahing kaalaman para sa paghihinang sa Surface Mount Compo
Mga Laruang Switch-Adapt: Mga Paglalakad sa Tubig na Lumalakad sa Tubig na Naa-access !: 7 Mga Hakbang (na may Mga Larawan)
Mga Laruang Switch-Adapt: Mga Paglalakad sa Tubig na Lumalakad sa Dragon na Naa-access !: Ang pagbagay ng laruan ay nagbubukas ng mga bagong paraan at na-customize na solusyon upang payagan ang mga bata na may limitadong mga kakayahan sa motor o mga kapansanan sa pag-unlad na makipag-ugnay sa mga laruan nang nakapag-iisa. Sa maraming mga kaso, ang mga bata na nangangailangan ng inangkop na mga laruan ay hindi maaring
Paano Kumuha ng 18650 Mga Cell Mula sa Mga Patay na Baterya ng Laptop !: 7 Mga Hakbang (na may Mga Larawan)
Paano Kumuha ng 18650 Mga Cell Mula sa Mga Patay na Baterya ng Laptop !: Pagdating sa mga proyekto ng pagbuo sa pangkalahatan ay gumagamit kami ng isang supply ng kuryente para sa prototyping, ngunit kung ito ay isang portable na proyekto kailangan namin ng isang mapagkukunan ng kuryente tulad ng 18650 li-ion cells, ngunit ang mga cell na ito ay minsan mahal o karamihan sa mga nagbebenta ay hindi nagbebenta
10 Mga kahalili sa DIY sa Mga Off-The-Shelf na Elektroniko na Mga Bahagi: 11 Mga Hakbang (na may Mga Larawan)
10 Mga Kahalili sa DIY sa Mga Off-The-Shelf na Mga Elektroniko na Bahagi: Maligayang pagdating sa aking kauna-unahang itinuro! Sa palagay mo ba ang ilang mga bahagi mula sa mga tagatingi sa online ay masyadong mahal o may mababang kalidad? Kailangan bang makakuha ng isang prototype nang mabilis at tumatakbo nang mabilis at hindi makapaghintay linggo para sa pagpapadala? Walang mga lokal na electronics distributor? Ang fol
Program Pro-mini Paggamit ng Uno (Mga Pangunahing Kaalaman sa Arduino): 7 Mga Hakbang (na may Mga Larawan)
Program Pro-mini Paggamit ng Uno (Mga Pangunahing Kaalaman sa Arduino): Hai lahat, Sa itinuturo na ito nais kong ibahagi sa iyo ang aking karanasan sa aking kamakailang biniling Arduino pro-mini at kung paano ko na-upload ang code dito sa unang pagkakataon, gamit ang aking ang lumang Arduino Uno. Angrduino pro-mini ay may mga sumusunod na tampok: Ito ay