Mundarija:
- 1 -qadam: materiallar
- 2 -qadam: Fritzing sxemasi
- 3 -qadam: Raspberry Pi tayyorlang
- 4 -qadam: ma'lumotlar bazasi modeli - MySQL
- 5 -qadam: Frontend: veb -serverni sozlash
- 6 -qadam: orqa qism
- 7 -qadam: LED tasmasini joylashtirish
- 8 -qadam: quvurlarni joylashtirish
- 9 -qadam: LCD -ni joylashtirish
- 10 -qadam: Datchiklarni joylashtirish va LED tasmasini ulash
- 11 -qadam: Pi -ni ulash
- 12 -qadam: Suv uchun idish yasash
- 13 -qadam: Yakuniy natija
Video: Avtomatlashtirilgan o'simlik pot - Kichkina bog ': 13 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Men Howest Kortrijkdagi multimediya va aloqa texnologiyasi talabasiman. Yakuniy topshiriq uchun biz o'zimiz xohlagan IoT loyihasini ishlab chiqishimiz kerak edi.
Fikrlarni qidirib, men o'sadigan o'simliklarni yaxshi ko'radigan va avtomatlashtirilgan qozonda ishlashni boshlagan onam uchun foydali narsa qilishga qaror qildim.
"Little Garden" avtomatlashtirilgan qozonining asosiy vazifalari:
-
O'lchang
- Harorat
- Yorug'lik intensivligi
- Namlik
- Tuproq namligi
O'lchovlarni ma'lumotlar bazasiga saqlang
Agar ma'lum bir qiymat juda past bo'lsa, o'simlik o'sishi uchun sharoitlarni yaxshilang
Qurilmani veb -sayt orqali kuzatishga va boshqarishga ruxsat bering
Belgilangan har bir qadamni bajarish shart emas. Ko'p narsa sizning shaxsiy xohishingizga bog'liq bo'lishi yoki yaxshilanishi mumkin. Bu tuzilish shunday qilinganki, uning qismlari keyinchalik tiklanishi mumkin, shuning uchun uni doimiy qilish uchun boshqacha yondashishni xohlashingiz mumkin.
1 -qadam: materiallar
Loyihaning ko'p qismini sotib olish unchalik qiyin emas, lekin men ko'p qayta ishlangan materiallar bilan ishlaganman. Men keyinchalik ba'zi materiallarni qayta tiklashimga ishonch hosil qilishim kerak edi.
Asosiy komponentlar:
- Raspberry Pi 4 modeli B.
- Raspberry Pi quvvat manbai
- T-poshnali Raspberry Pi
- 16 GB micro SD karta
- 3.3V va 5V kuchlanishli non paneli
- Non paneli
- 12V quvvat manbai
Sensorlar:
- DHT11: namlik va harorat sensori
- BH1750: yorug'lik intensivligi sensori
- Tuproq namligi sensori
- MCP3008
Aktuator komponentlari:
- 220V suv nasosi
- 12V LED tasmasi
- Velleman o'rni moduli
- Maslahat 50: NPN tranzistorlari
- 16X2 o'lchamli LCD displey
- PCF8574a
Rezistorlar:
- 3 x 330 Ohmli rezistorlar
- 1 x 5k Ohm qarshilik
- 2 x 10k Ohmli rezistorlar
- 1 x 1k Ohm qarshilik
- 1 x 10k Potentio qarshiligi
Materiallar:
- Tayyor issiqxona/o'simlik qozon
- Birlashma qutisi
- Plastik suv idishi
- Burilishlar
- Jumper simlari + oddiy sim
- Skrews
- Lehimlaydigan kalay + issiqlik o'tkazmaydigan quvurlar
- Ikki tomonlama duktli lenta
- Bo'yamoq
Asboblar:
- Yelimli qurol
- Matkap
- Sawblade
- Lehimlash temir
- Qutini kesuvchi
- Bo'yoq cho'tkasi
Ushbu loyihaning eng yaxshi tomoni shundaki, uni komponentlarni qo'shish/olib tashlash va kodni biroz o'zgartirish orqali kengaytirish yoki soddalashtirish mumkin. Masalan, 220V nasosni 12V nasos bilan almashtirish orqali siz qurilmadan quvvat adapterini olib tashlashingiz mumkin.
2 -qadam: Fritzing sxemasi
Qurilmaning non paneli va elektr sxemalari yuqorida ko'rsatilgan. Bu erda siz barcha komponentlar bir -biriga qanday bog'langanligini ko'rishingiz mumkin.
Komponentlar qanday ishlashini umumiy tushuntirish:
- DHT11 havoning namligini %, haroratni ° C da o'lchaydi. U bilan aloqa I2C bu bilan boshqariladi.
- BH1750 yorug'lik intensivligini lyuks bilan o'lchaydi. Aloqa I2C avtobusi orqali amalga oshiriladi
- Tuproq namligi sensori MCP3008 tomonidan Raspberry Pi uchun o'qiladigan raqamli signalga aylanadigan raqamli signalni yaratadi.
- 16x2 LCD-modul IP-manzillarni birin-ketin Pi dan ko'rsatadi. U Raspberry Pi -dan signalni qabul qiluvchi PCF8574a -ga ulangan, bu uni displeyning pin pinlari uchun bir qancha signallarga aylantiradi. LCD displeydan E va RS pinlari to'g'ridan -to'g'ri Pi ga ulanadi, potentsio qarshiligi ekranning yorqinligini aniqlaydi.
- Suv nasosi uning orasidagi 220V kuchlanishli rozetkaga ulangan. Raspberry Pi o'rni signalini elektr zanjirini yopish va nasosni yoqish uchun yuborishi mumkin.
- LED tasmasi 12V quvvat manbaiga va elektr tokini almashtiruvchi TIP 50 (NPN tranzistorli) ga ulangan. 1k Ohm qarshilik Raspberry Pi -dan olingan quvvatni cheklash uchun ishlatiladi, aks holda u juda qizarib pishgan bo'ladi.
3 -qadam: Raspberry Pi tayyorlang
Agar sizda hali yo'q bo'lsa, Raspberry Pi OS rasmlaridan birini SD -kartaga joylashtirishingiz kerak bo'ladi. Men Lite -dan foydalanishni tavsiya etmayman, chunki bu boshida muammolarga olib keldi. Keyin Pi Internetga ulangan vaqtda quyidagi buyruqlar yordamida sizning Pi yangilanganligiga ishonch hosil qilishingiz kerak bo'ladi:
- sudo apt-get yangilanishi
- sudo apt-get upgrade
Shundan so'ng siz raspi-config yoki buyruqlar yordamida loyihaning ishlashi uchun paketlarni yoqishingiz yoki o'rnatishingiz mumkin.
- SPI
- I2C
- MySQL: keyingi qadam
- SocketIO: flask-socketio ni o'rnatish
O'rnatishdan so'ng siz html, CSS, Javascript va Python -da yozilgan kerakli fayllarni qo'shishingiz mumkin. Mening barcha kodlarimni github omboridan topishingiz mumkin.
4 -qadam: ma'lumotlar bazasi modeli - MySQL
Yuqorida siz MariaDB orqali joylashtirilgan ERD diagrammasini ko'rishingiz mumkin. Men MariaDB -ni o'rnatish uchun emas, balki sizning Pi himoyalanganligiga ishonch hosil qilish uchun ushbu MariaDB o'rnatish qo'llanmasiga amal qilishni tavsiya qilaman.
Tushunishni istaganlar uchun ma'lumotlar bazasi quyidagicha ishlaydi:
O'lchovlar va aktuatorlar almashinuvi Metingen jadvalida qator sifatida saqlanadi.
- metingId = o'lchov/o'tish qatorining identifikatori
- deviceId = Jadvaldagi ushbu qator uchun mas'ul bo'lgan qurilma identifikatori
-
waarde = datchik o'lchovi yoki aktuatorni almashtirish qiymati
- Sensor: mos keladigan birliklarda o'lchov qiymati
- aktuatorlar: 0 = OFF va 1 = ON
- commentaar = xatolar kabi qo'shimcha ma'lumotlarni qo'shish uchun ishlatiladigan sharhlar
- ma'lumotlar = o'lchash/almashtirish sodir bo'lgan sana va vaqt
Qurilma sozlamalari Sozlamalar ichida saqlanadi.
- settingId = bu satrning identifikatori va sozlash qiymati
- deviceID = mos keladigan qurilma/sensorning identifikatori
- waarde = sozlash qiymati
- type = hisob turi, bu maksimalmi yoki minimalmi?
Va nihoyat, "Qurilmalar" jadvalida sensorlar va aktuatorlar haqida ma'lumot bor.
- deviceId = ushbu jadvaldagi qurilmaning identifikatori
- naam = qurilma/komponent nomi
- merk = brend
- prijs = komponentning narxi
- beschrijving = komponentning qisqacha mazmuni
- eenheid = o'lchangan qiymatlar uchun birlik
- typeDevice = komponent sensor yoki aktuator ekanligini aniqlaydi
5 -qadam: Frontend: veb -serverni sozlash
Pi ushbu qurilma uchun veb -serverni ishga tushirish uchun sizdan Apache veb -serverini o'rnatishingizni talab qiladi. Buni quyidagi buyruq yordamida bajarish mumkin:
sudo apt-get apache2 ni o'rnating.
Bu bajarilgandan so'ng, siz papkaga o'tishingiz mumkin:/var/www/html. Bu erda siz barcha frontend kodlarini joylashtirishingiz kerak bo'ladi. Shundan so'ng, siz IP -manzilni ko'rish orqali veb -saytga kirishingiz mumkin.
6 -qadam: orqa qism
Orqa fonni ishga tushirish uchun siz app.py faylini qo'lda yoki Pi -da xizmat yaratish orqali ishga tushirishingiz kerak, shunda u avtomatik ravishda ishga tushadi.
Ko'rib turganingizdek, juda ko'p fayllar mavjud. Kodni aniq ko'rib chiqish va tartibga solish uchun kodni iloji boricha ajratdim.
Qisqacha tushuntirish:
app.py: ma'lumotlar bazasi, apparat kodi va orqa kod qo'shilgan asosiy fayl
config.py: ma'lumotlar bazasi omborlari uchun konfiguratsiya fayli
Ma'lumotlar ombori: Ma'lumotlar omboriga kirish uchun
-
Yordamchi
- devices_id: ma'lumotlar bazasidagi qurilma ma'lumotlarini aniqlashga yordam beradigan sinflar
- lcd: PCF va LCD -ni ishlatish uchun
- Aktuatorlar: aktuatorlarni ishga tushirish uchun sinflar
- Datchiklar: datchiklarni ishga tushirish uchun sinflar
7 -qadam: LED tasmasini joylashtirish
Men LED tasmasini kesib, issiqxona qutisining yuqori qismiga yopishtirdim. Men foydalangan tasmani bir nechta pozitsiyalarda kesish va qayta ulash mumkin edi, shuning uchun siz bir nechta chiziqlar qo'yib, ularni simlar orqali qayta ulashingiz mumkin, bu esa ko'proq joyni yoritish imkonini beradi.
8 -qadam: quvurlarni joylashtirish
Quvurlarni turli yo'llar bilan joylashtirish mumkin edi, lekin menimcha, ularni pastki qismiga yopishtirib, boshqa elektronikadan iloji boricha uzoqroq tutib, suvni axloqsizlikka oqishiga yo'l qo'ydim.
9 -qadam: LCD -ni joylashtirish
Men birlashma qutisi qopqog'ini arra bilan kesib oldim, displey o'tishi uchun etarlicha katta teshik ochdim, lekin PCB uning orqasida qoladi. Shundan so'ng, u egri chiziqlar yordamida qopqoqqa yopishtirilgan.
LCD displeyda Raspberry Pi -ning IP -manzillari ko'rsatiladi, bu sizga veb -saytga kirishda qaysi manzilni ishlatishingiz mumkinligini bilish imkonini beradi.
10 -qadam: Datchiklarni joylashtirish va LED tasmasini ulash
Sovutish sxemalaridan foydalanib, men simlar orasidagi ulanishlarni lehimladim va rezistorlarni simlar ichiga joylashtirdim, ularni izolyatsiya qilish uchun issiqlik qisqaruvchi quvurlar yordamida.
Issiqxonaning qopqog'i va pastki qismidagi burilishlarni ulash uchun teshiklar kesilgan, ular orqali men datchiklar va LED tasmasini tortdim.
Men simlarni funktsiyasi bo'yicha guruhlarga ajratdim. Simlar va qisqaruvchi naychalarning tarangligi datchiklarni ushlab turardi. Men faqat DHT11 uchun simlarga elim ishlatishga majbur bo'ldim, chunki bu uzoq davom etdi.
11 -qadam: Pi -ni ulash
Men simlarning keyinchalik o'tishiga ruxsat berish uchun ulanish qutisi yonidagi teshiklarni kesib tashladim.
Shundan so'ng, men non taxtasini (T-pog'onali, PCF8574a, MCP3008, sozlanishi qarshilik va TIP50 bilan), o'rni va Raspberry Pi ni ikki tomonlama tasma bilan yopilgan birlashma qutisining pastki qismiga qo'ydim. Quvvat manbai non paneliga to'g'ri kelmadi, shuning uchun uni yon tomonga qo'yishim kerak edi va uni o'tish paneliga ulash uchun o'tish simlari ishlatilgan.
Oxir -oqibat men adapterni, datchikni va aktuator simlarini simlarni non paneli, Raspberry Pi va boshqa komponentlarga ulangan teshiklardan oldim. Nasosning simini kesib tashladim, shuning uchun men uni o'rni ichiga joylashtirdim, shunda u kalit sifatida ishlatilishi mumkin edi.
12 -qadam: Suv uchun idish yasash
Men 1 litrli plastmassa suv idishidan suv idishini yasadim, uning yuqori qismini qutichali kesgich bilan kesib, uni yaxshi ko'rinish uchun bo'yab qo'ydim. Keyin suv nasosi ichkariga joylashtirildi. Kemalar bilan aloqa qilish qoidasining sababi shundaki, suv quvurlardan o'z -o'zidan o'tishi mumkin edi, lekin quvurni ushlab turish muammoni hal qiladi.
13 -qadam: Yakuniy natija
Siz kutgan payt. Endi siz axloqsizlik va urug'larni issiqxona qutisiga joylashtirishingiz va qurilmani o'z zimmasiga olishga ruxsat berishingiz mumkin. Siz veb -saytdan qurilmaning holatini kuzatishingiz va yorug'lik va tuproq sharoitlari uchun maqbul qiymatlarni o'rnatishingiz mumkin.
Men avval tuproqni qo'lda sug'orishni maslahat beraman, chunki ba'zi axloqsizlik dastlab juda quruq bo'lishi mumkin. Ba'zi nasoslar ham juda sekin sug'orilganday tuyuladi, lekin siz juda ehtiyot bo'lishingiz kerak, chunki u kutganingizdan tezroq to'ladi. 80% dan yuqori to'yinganlik erni juda botqoq qilib qo'yishi mumkin. Va tuproq namligi sensori etarlicha chuqur ekanligiga ishonch hosil qiling.
Tavsiya:
Aqlli yopiq o'simlik monitor - Sizning o'simlik sug'orish kerakligini biling: 8 qadam (rasmlar bilan)
Aqlli yopiq o'simlik monitor - Sizning o'simlik qachon sug'orilishi kerakligini biling: Bir necha oy oldin, men sizlarga tuproq haqida foydali ma'lumot berish uchun batareyadan ishlaydigan tuproq namligini nazorat qilish tayog'ini yasaganman. namlik darajasi va yonib -o'chadigan LEDlar sizga qachon to'xtash kerakligini aytadi
Ochiq yoki yopiq uylar uchun Raspberry Pi -da qurilgan avtomatlashtirilgan bog 'tizimi - MudPi: 16 qadam (rasmlar bilan)
Ochiq yoki yopiq uylar uchun Raspberry Pi -da qurilgan avtomatlashtirilgan bog 'tizimi - MudPi: Siz bog'dorchilikni yaxshi ko'rasizmi, lekin uni parvarish qilishga vaqt topa olmaysizmi? Balki sizda bir oz chanqagan yoki gidroponikani avtomatlashtirish yo'lini qidirayotgan uy o'simliklari bordir? Ushbu loyihada biz bu muammolarni hal qilamiz va asoslarini o'rganamiz
IoT APIS V2 - avtomatlashtirilgan o'simliklarni sug'orish avtomatlashtirilgan tizimi: 17 qadam (rasmlar bilan)
IoT APIS V2 - Avtomatik o'simliklarni sug'orish IoT tizimi: Bu loyiha mening oldingi ko'rsatmalarimning evolyutsiyasi: APIS - O'simliklarni sug'orishning avtomatlashtirilgan tizimi Men deyarli bir yildan buyon APISdan foydalanmoqdaman va oldingi dizaynni yaxshilashni xohladim. zavodni masofadan turib kuzatib boring. Mana shunday
Avtomatik aqlli o'simlik pot - (DIY, 3D bosma, Arduino, o'zini sug'orish, loyiha): 23 qadam (rasmlar bilan)
Avtomatik aqlli o'simlik pot - (DIY, 3D bosma, Arduino, o'z -o'zini sug'orish, loyiha): Salom, ba'zida biz uydan bir necha kun ketganda yoki chindan ham band bo'lganimizda, o'simliklar sug'orilmagani uchun azob chekishadi. kerak. Bu mening yechimim. Bu aqlli o'simlik qozon bo'lib, u quyidagilarni o'z ichiga oladi: Ichki suv ombori. Senso
Intel avtomatlashtirilgan bog'dorchilik tizimi: 16 qadam (rasmlar bilan)
Intel avtomatlashtirilgan bog'dorchilik tizimi: [Videoni ijro etish] Hammaga salom !!! Bu mening Intel Edison bo'yicha birinchi ko'rsatmam. Bu ko'rsatma Intel Edison va boshqa arzon elektron vositalar yordamida kichik idish yoki o'tlar uchun avtomatik sug'orish (tomchilatib sug'orish) tizimini yaratish bo'yicha qo'llanma