Mundarija:

Shaxsiy meteorolog: 5 qadam
Shaxsiy meteorolog: 5 qadam

Video: Shaxsiy meteorolog: 5 qadam

Video: Shaxsiy meteorolog: 5 qadam
Video: Война на денежные средства 2024, Noyabr
Anonim
Shaxsiy meteorolog
Shaxsiy meteorolog

Meteorologingiz haqiqatni aytadimi yoki yo'qmi, deb hech o'ylab ko'rganmisiz? O'z meteorologingiz bo'lishning aqlli, arzon va tezkor usulini xohlaysizmi … va ehtimol kichik loyiha? Boshqa qaramang! Bu sodda qurilma istalgan joydan ob -havo sharoitlarini kuzatib boradi va tugmani bosish orqali ob -havoni kuzatish imkoniyatini beradi.

Ushbu loyiha sizga Flask, Raspberry Pis, GPIO datchiklari va HTML bilan amaliy mashg'ulotlar beradi! Qurilish nafaqat qiziqarli, balki juda ko'p foydali narsalarga ega. Sizning meteorologingiz ishsiz qolishi mumkin …

Ta'minotlar

  • Raspberry Pi 3
  • Micro SD karta
  • 1 Ommaviy sim
  • 4 Erkak -erkak simlari
  • 1 ta DHT11 sensori
  • 1 Batareya

Agar siz o'zingizning ishonchli meteorologingiz bo'lishni rejalashtirmoqchi bo'lsangiz, har bir manbani qancha qurilmaga kerakligi bilan ko'paytiring. Biroq, bir nechta qurilmalarni qo'llab -quvvatlash kodi farq qiladi. Agar siz ushbu qurilmani yaratish/sinovdan o'tkazayotgan bo'lsangiz, quyidagilar bo'lishi shart emas … lekin, albatta, bu juda foydali bo'ladi.

  • Kompyuter monitor
  • USB klaviatura
  • Micro USB zaryadlash to'plami

1 -qadam: simlarni ulash

Ulanish
Ulanish
Ulanish
Ulanish

Raspberry Pi -dan foydalanib, biz asosiy sensorni Raspberry Pi quvvat manbaiga ulashimiz kerak, shunda u bizga kerakli o'lchovlarni qila oladi. Yuqorida tasvirlangan ushbu loyihada ishlatiladigan asosiy sensor atrofdagi jismoniy muhitning harorati va namligini qayd etadi. Siz datchikni yoki boshqa o'rnatish moslamasini ishlatib, bu sensorni o'rnatishingiz va simlarimizni o'tkazishingiz yoki uni oddiygina Raspberry Pi qurilmasidagi pinlarga ulab qo'yishingiz mumkin.

Sensorni Raspberry Pi -ga to'g'ri ulash uchun yuqorida ko'rsatilgan simlar sxemasidan so'ng. E'tibor bering, quvvat manbai, batareya to'plami yoki devor rozetkasiga yaqin bo'lishi kerak.

2 -qadam: sozlash

Tabriklaymiz, sizning qurilmangiz yig'ildi!

Endi biz to'g'ridan -to'g'ri Raspberry Pi va loyihaning dasturiy ta'minoti bilan ishlashni boshlaymiz. Quyidagilarning hammasini Raspberry Pi -da klaviatura va monitor yoki SSH orqali bajarish mumkin. Quyidagi kutubxonalar Raspberry Pi -da barcha dasturlarni ishga tushirishini ta'minlash uchun kerak. "Pip install" buyrug'ini ishlatib, dasturiy ta'minot keyinchalik quyidagi kutubxonalardan foydalanishi mumkin:

  • so'rovlar
  • RPi. GPIO
  • kolba
  • shohruh_sodiqova
  • flask_wtf
  • wtforms

E'tibor bering, kutubxonalar o'rnatilganda, ob -havo bir necha bor o'zgarishi mumkin … sabr qiling, siz meteorologik imkoniyatlaringizni ochishga yaqin turibsiz!

Endi siz barcha kutubxonalaringizni o'rnatdingiz, keling, Flask bilan tanishib chiqamiz, bu bizning loyihamiz muhitidagi tugunlar o'rtasida oddiy aloqa o'rnatishga imkon beradi. Ushbu loyihada Raspberry Pi serverga aylanadi. Bu erda oddiy dastur misolida siz Flask -dan qulay bo'lishingiz mumkin.

3 -qadam: Kod va ishga tushirish

Endi siz apparat va dasturiy kutubxonalarni yig'ganingizdan so'ng, siz loyiha fayllarini tuzishni boshlashga tayyormiz.

Server: Ushbu loyihada sensorga ulangan Raspberry Pi server vazifasini bajaradi. Server foydalanuvchi harorat, namlik va grafik haqidagi so'rovni bajarishini kutadi. Biz HTML shablonlarini yaratdik, ular ilova talabi, harorat, namlik, grafika yoki uchtasining kombinatsiyasini to'g'ri qabul qilish uchun tuzilgan (shablon papkasiga qarang). Bu shuni anglatadiki, agar foydalanuvchi faqat haroratni xohlasa, namlik ko'rsatkichini olish uchun namlikdan boshqa hech narsani ko'rmaydi. Xabar yozilgandan so'ng, server ma'lumotni yig'adi va foydalanuvchi talab qilgan harakatni bajaradi. DHT sensori o'qishni oladi, keyin ular biz ko'rsatadigan yangi html formasi bilan lug'at argumenti sifatida saqlanadi va uzatiladi. Foydalanuvchi talab qilganda oldingi o'qishlar grafigini yaratish uchun server o'sha o'qishlarni saqlaydi.

Ilova: Foydalanuvchi talabiga binoan formadan o'rnatilgan oxirgi yigirma to'rt so'rovning harorati, namligi va harorati va namligining vizual tasvirini olish va ko'rsatish uchun dastur Flask serveriga HTTP so'rovlarini yuboradi. Ilova har biri uchun uchta boolean kiritish maydoniga ega bo'lgan Flask formasidan foydalanadi. Foydalanuvchi ko'rmoqchi bo'lgan uchta maydonning kombinatsiyasi uchun katakchani belgilashi mumkin. Ular "ha"/"yo'q" dan boshqa narsani boshqara olmaydilar, ular bu ma'lumotni ko'rishni xohlaydilar. Biz foydalanuvchining iltimosiga binoan ko'rsatish uchun foydalanadigan noyob html faylini yaratdik. Bu shuni ko'rsatadiki, foydalanuvchi ko'rsatgan o'qishlar faqat ko'rsatiladi. Biz foydalanuvchi haroratni so'rashini va namlik uchun bo'sh shablonni yoki bo'sh grafikni ko'rishini xohlamaymiz.

4 -qadam: Sinov

Qurilma faylda ishlaydi: mainsense.py. Bu formSense.py faylini o'z ichiga oladi, u bizning dasturimizda ishlatiladigan Flask Form sinfimizni o'z ichiga oladi. Server dastlab "sense.html" ni chiqaradi va keyin foydalanuvchining so'rovini kutadi. mainsense.py keyin GET so'rovi harorat yoki namlikni so'raganda va foydalanuvchilardan oldingi 24 o'qishni saqlashda, sensordan o'qishni kutadi. Bundan tashqari, foydalanuvchi oldingi o'qishlar, ko'pi bilan 24 ta, foydalanuvchi tomonidan qaysi grafiklar chizilganligini tanlashi mumkin bo'lgan grafik varianti mavjud. Bundan tashqari, html faqat foydalanuvchi boshqa so'rov yuborish uchun foydalanishi mumkin bo'lgan shakl variantlarini va foydalanuvchi talab qilgan o'qishni o'z ichiga olganini ko'rishingiz mumkin.

Keyin siz to'g'ri URI/IP -ga o'tishingiz va dastur va server o'rtasida to'g'ri aloqa liniyasini o'rnatishingiz kerak. Siz GET -ga bir nechta test so'rovlarini yuborishga harakat qilishingiz va sensorning to'g'ri o'qilishi bilan sensorning to'g'ri javob berishiga ishonch hosil qilishingiz kerak. Agar sizning dasturingiz ob -havo ma'lumotlarini to'g'ri kuzatayotgan bo'lsa, biz rasman kabelni o'chirishga tayyormiz, ya'ni siz ob -havo kanaliga ulangan bo'lsangiz!

5 -qadam: o'rnatish

Qurilmani o'rnatish juda tushunarli. Asosan, siz qurilmaning batareya to'plamiga yoki rozetkaga ulanganligiga ishonch hosil qilishingiz va ob -havoni kuzatish uchun qurilmani kerakli joyga mahkamlash uchun buyruq chiziqlaridan foydalanishingiz kerak.

Eslatma: qurilma joylashuvingizdagi ob -havo sharoitidan himoyalangan holda sensori bilan joylashtirilgan bo'lishi kerak. Bu bajarilgandan so'ng, siz SSH -ni qurilmaga ulashingiz va serverni ishga tushirishingiz kerak. Veb -saytni oching va siz Raspberry Pi serveri joylashtirilgan joydan ob -havo ma'lumotlarini eng so'nggi o'lchovlarga ega ekanligingizni biling.

Tavsiya: