Mundarija:

Mini-seriya: 11 qadam
Mini-seriya: 11 qadam

Video: Mini-seriya: 11 qadam

Video: Mini-seriya: 11 qadam
Video: Офицерские Жены / Officers' Wives. Сериал. 11 Серия. StarMedia. Драма. 2015 2024, Iyul
Anonim
Mini-serr
Mini-serr
Mini-serr
Mini-serr

Talabalik chog'imda narsalarni unutish yomon odatim bor. Shuning uchun, agar men ma'lum bir o'simlik turini o'stirmoqchi bo'lsam, odatda bu haqda unutaman va u o'ladi, chunki unga g'amxo'rlik qiladigan hech kim yo'q.

Men bu muammoni Mini-Serre yordamida tuzatishga harakat qilaman. Mini-Serre-bu Raspberry Pi-da ishlaydigan veb-serverga o'rnatilgan har xil turdagi sensorlar haqidagi ma'lumotlarni yuboradigan bog'dorchilikning avtomatlashtirilgan tizimi. Shunday qilib, foydalanuvchi o'z zavodlarini qayerda bo'lishidan qat'i nazar veb -saytida kuzatishi mumkin. Bu kontseptsiya multimediya va kommunikatsiya texnologiyalarining birinchi yilida, Howest Kortrijk, Belgiyada yakuniy loyiha sifatida ishlab chiqilmoqda.

1 -qadam: Materiallar

Materiallar
Materiallar

Ushbu loyihani yaratish uchun sizga quyidagi elementlar kerak bo'ladi.

Elektronika

  1. Raspberry pi 3 - to'plam
  2. Non paneli
  3. Erkak-erkak ulagichlari
  4. Erkak-ayol ulagichlari
  5. Dallas 18B20 (harorat sensori)
  6. Fotorezistorli yorug'lik sezgir yorug'lik sensori
  7. MCP3008
  8. Potentsiometr
  9. LCD displey
  10. Rezistorlar
  11. Moviy LED
  12. RGB LED

Koson:

13. Markaziy bog'ning kvikkalari (https://www.brico.be/nl/tuin-buitenleven/moestuin/…) 14. Yog'och plastinka (korpusning pastki qismi) 15. Tirnoqlar 16. Vintlar

Asboblar:

17. Hammer 18. Arra 19. Tornavida 20. Matkap

2 -qadam: O'chirish sxemasini tuzish

O'chirish
O'chirish
O'chirish
O'chirish

2 -bosqichda biz ushbu loyihaning sxemasini tuzamiz. Agar siz ishlashini xohlasangiz, bu sizga kerak bo'lgan mutlaq minimaldir. Zanjirning nusxasini olish uchun muzlatuvchi stol va diagrammadan foydalaning. Bu erda sizga 1 -bosqichdan boshlab barcha elektr materiallari kerak bo'ladi.

Zanjir haqida ma'lumot:

Bizda yorug'lik sensori va tuproq namligi sensori bo'lgan MCP3008 ga ulangan 2 ta sensor mavjud. Harorat sensori raqamli chiqishga ega va Raspberry Pi-da GPIO-pinidan foydalanadi.

Qo'shimcha:

Shuningdek, men LCD displeyni o'rnatdim, bu esa keyinchalik noutbukga ulanmasdan Raspberry Pi-ga ulanishni osonlashtiradi. Bu shart emas, lekin tavsiya etiladi.

3 -qadam: Ma'lumotlar bazasini yarating

Ma'lumotlar bazasini yaratish
Ma'lumotlar bazasini yaratish

Sensorlardan ma'lumotlarni uyushgan holda, lekin xavfsiz tarzda saqlash juda muhim. Shuning uchun men o'z ma'lumotlarimni ma'lumotlar bazasida saqlashga qaror qildim. Shunday qilib, men faqat ma'lumotlar bazasiga kira olaman (shaxsiy hisobim bilan) va uni tartibda saqlay olaman. Yuqoridagi rasmda ma'lumotlar bazasini ma'lumotlar bazasi dasturiga, masalan MySQL -ga eksport qilish uchun mening ma'lumotlar bazamdan va fayl ostidan mening sxemamni topishingiz mumkin.

Ma'lumotlar bazasi dasturi Bizning ma'lumotlar bazamiz Raspberry Pi-dan mustaqil ishlashi mumkin. Siz buni Raspberry Pi uchun MySQL yoki MariaDB -ni yuklab olishingiz mumkin. Siz birinchi navbatda MySQL Workbench -da ma'lumotlar bazasini kompyuteringizda yaratmoqchisiz. Keyin siz ushbu ma'lumotlar bazasini mustaqil fayl sifatida eksport qilasiz. Endi MySQL Workbench orqali Raspberry Pi ma'lumotlar bazasiga ulaning va bu erda ma'lumotlar bazasini tiklang. Endi sizda Raspberry Pi -da ma'lumotlar bazasi ishlaydi!

4 -qadam: Sensor ma'lumotlarini ma'lumotlar bazasiga yozish

Ma'lumotlar bazasi sizning Raspberry Pi -da ishlagandan so'ng, biz sensorlarimiz o'z ma'lumotlarini unda saqlashini xohlaymiz. Biz buni 3 ta alohida skriptni yaratish orqali qilishimiz mumkin (bu PyCharmda qilingan). PyCharm -ning o'ziga xos xususiyati shundaki, siz Pi -ga ulana olasiz va shu tarzda ma'lumotlar bazasiga kirishingiz va unga to'g'ridan -to'g'ri yozishingiz mumkin. Ma'lumotlar, shuningdek, Raspberry Pi tomonidan to'g'ridan -to'g'ri o'qiladi va LEDlar kerakli darajada yonadi.

Moviy LED yonadi: Tuproq etarlicha nam emas. RGB LED yashil yonadi: hammasi yaxshi. RGB LED qizil yonadi: u juda issiq, uni biroz sovitish uchun tomni oching. RGB LED ko'k rangda yonadi: juda sovuq, agar u ochiq bo'lsa, tomni yoping.

Siz barcha skriptlarni mening github omboridan yuklab olishingiz mumkin:

Eslatma: Men shaxsiy ma'lumotlarimni ma'lumotlar bazasi uchun ishlatganman, shuning uchun uni siznikiga mos ravishda o'zgartirishingiz kerak bo'ladi.

Eslatma: DB1 papkasida ma'lumotlar bazasiga ulanadigan kodga import qilingan "ma'lumotlar bazasi" klassi mavjud.

5 -qadam: IP -ni displeyda ko'rsatish

IP -ni displeyda ko'rsatish
IP -ni displeyda ko'rsatish

Displeyda Raspberry Pi ishlayotgan IP-manzil ko'rsatilgan, shuning uchun siz Raspberry Pi-ga simsiz osongina ulanishingiz mumkin. Bundan tashqari, men sizning IP-manzilingizni o'qiydigan va displeyda ko'rsatadigan skript yozdim (sizning GPIO-pinlaringiz mos kelishini unutmang, aks holda u ishlamasligi mumkin). Raspberry Pi bu skriptni ishga tushganda avtomatik ravishda ishga tushiradi. Buni Raspberry Pi -dagi rc.local faylga ba'zi kod qo'shish orqali qilishingiz mumkin. Siz u erga "Python3.5/home/user/filelocation &" qo'shmoqchi bo'lgan oxirgi kod satridan oldin "sudo nano /etc/rc.local" yozib kirishingiz mumkin.

Skriptni bu erda topishingiz mumkin:

Eslatma: "&" oxirida, bu skriptni bir marta ishga tushiradi va uni darhol to'xtatadi, shuning uchun boshqa skriptlar ham ishlashi mumkin.

6 -qadam: Sensorlarni har 10 daqiqada o'lchash

Sensorlarni har 10 daqiqada o'lchash
Sensorlarni har 10 daqiqada o'lchash

Biz ma'lumotlar bazamizni 0,001 soniya davomida sensordata bilan to'ldirishni xohlamaymiz, aks holda bu ma'lumotlar bazasiga kiruvchi barcha ma'lumotlarni ushlab turishni qiyinlashtiradi va u ishdan chiqishi mumkin. Shuning uchun men Raspberry Pi -da "crontab" ga bir parcha qo'shdim. Crontab - bu rejalashtirilgan vazifalarni kuzatib boradigan dastur, shuning uchun skriptni har 10 daqiqada bir marta ishga tushirish mumkin.

Uni qanday sozlash kerak:

Siz buni "Raspberry Pi" buyruq satriga "crontab -e" ni kiritish orqali sozlashingiz mumkin, bu crontab uchun tahrirlovchini ochadi. Faylning pastki qismiga o'ting va har bir sensor uchun bittadan 3 qator qo'shing.

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

Eslatma: "*/10" - biz har bir o'lchov o'rtasida bo'lishni istagan 10 daqiqa. Men yozgan kod siz ishlayotgan python versiyasi va siz ishlatmoqchi bo'lgan fayl, shuning uchun siz har bir sensor uchun bitta qatorni yozishingiz kerak, chunki ular 3 xil fayldan mavjud.

7 -qadam: veb -sayt yaratish

Veb -sayt yaratish
Veb -sayt yaratish

Men o'z veb -saytimni Atom nomli dasturda yaratdim. Dasturni ishlatish juda oddiy va agar siz men kabi HTML va CSS -ni yozishni juda yaxshi bilsangiz, tavsiya qilinadi.

Siz ushbu havola orqali ishlatilgan barcha kod va rasmlarni topishingiz mumkin:

Men veb-saytni Visual Studio Code-da yaratdim, shuning uchun agar siz HTML va CSS-ni o'zingiz yaratishni rejalashtirmagan bo'lsangiz, fayllarni Atom o'rniga Visual Studio Code-dagi yangi papkaga qo'shishingiz mumkin.

8-qadam: orqa panelni yaratish

Oxirgi va oldingi qismlari biz yaratgan veb-saytda haqiqatdan ham nimadir sodir bo'ladigan narsalar bo'ladi. Oxir-oqibat, biz ma'lumotlar bazasiga ma'lumotlarni joylashtirish o'rniga, yana bir bor o'z ma'lumotlar bazamizga ulanamiz. Endi biz har xil sensorlardan olingan barcha ma'lumotlarni o'qiymiz va Socket. IO-dan foydalanib, uni old tomonimizga yuboramiz, shunda biz uni veb-saytda ko'rsatishimiz mumkin.

Siz kodni orqa qismdan topishingiz mumkin:

Eslatma: Biz ilgari ishlatilgan ma'lumotlar bazasi sinfidan foydalanamiz, shuning uchun men uni bu omborga kiritmaganman.

9-qadam: Old panelni yaratish

Old tomondan biz HTML va CSS kodimizni JavaScript va Back-end bilan birlashtiramiz. Men yozgan JavaScript orqa tomoni bilan ishlayotgan bo'lishi kerak. Endi Back-end bizga sensorlardan barcha ma'lumotlarni yuboradi va biz JavaScript-da HTML-faylni tahrir qiladigan bir nechta funktsiyalarni bajarishimiz mumkin, shuning uchun u hozirgi qiymatlarimizga mos keladi.

JavaScript-ni bu erda topish mumkin:

Eslatma: HTML -dagi JavaScript -ni kerakli papkaga bog'laganingizga ishonch hosil qiling, aks holda u ishlamasligi mumkin.

10 -qadam: issiqxonani yaratish

Issiqxona qurish
Issiqxona qurish
Issiqxona qurish
Issiqxona qurish

Men Bricodan oldindan tayyorlangan paket sotib oldim:

Paket bilan birga kelgan amallarni bajaring. Bu bajarilgandan so'ng, biz Raspberry Pi -ni u erga qo'yishga tayyor emasmiz. Birinchidan, biz issiqxona uchun "pol" yoki taglik yasashimiz kerak, buning uchun siz yog'och plastinka olib, uning qanchalik katta bo'lishi kerakligini o'lchashingiz mumkin. Men birinchi marta yog'ochdan yasalgan ramka yasadim, shuning uchun yog'och plastinkada dam oladigan narsa bor.

11 -qadam: Hammasini bir joyga to'plash

Hamma narsani bir joyga to'plash
Hamma narsani bir joyga to'plash
Hamma narsani bir joyga to'plash
Hamma narsani bir joyga to'plash
Hamma narsani bir joyga to'plash
Hamma narsani bir joyga to'plash

Biz deyarli tayyormiz! Bu faqat oxirgi qadam va siz borishga tayyormiz. Raspberry Pi va issiqxonani oling, bir nechta teshiklarni oching, shunda siz LEDlarni qo'yishingiz mumkin, displey uchun teshik va Raspberry Pi quvvat manbai uchun teshik qiling. Issiqxonaga hamma narsani qo'ying, Pi -ni ulang va hamma narsa tayyor! Sizda o'z issiqxonangiz bor!

Tavsiya: