Mundarija:

Quyosh ob -havo stantsiyasi: 5 qadam
Quyosh ob -havo stantsiyasi: 5 qadam

Video: Quyosh ob -havo stantsiyasi: 5 qadam

Video: Quyosh ob -havo stantsiyasi: 5 qadam
Video: Samarqanddagi yirik quyosh fotoelektr stansiyasi ishga tushganiga to‘rt oydan oshdi 2024, Sentyabr
Anonim
Quyosh ob -havo stantsiyasi
Quyosh ob -havo stantsiyasi

Hovlidan ob-havo ma'lumotlarini real vaqtda olishni xohlaganmisiz? Endi siz do'konda ob -havo stantsiyasini sotib olishingiz mumkin edi, lekin ular odatda batareyaga muhtoj yoki rozetkaga ulanishi kerak. Bu ob -havo stantsiyasini tarmoqqa ulashning hojati yo'q, chunki uning samaradorligi uchun quyosh tomon buriladigan quyosh panellari bor. U RF modullari yordamida ma'lumotlarni stantsiyadan tashqaridagi uyingizdagi Raspberry Pi -ga uzatishi mumkin. Raspberry Pi -da siz ma'lumotlarni ko'rishingiz mumkin bo'lgan veb -sayt mavjud.

1 -qadam: materiallarni yig'ish

Materiallar

  • Raspberry Pi 3 model B + + adapter + Micro SD karta 16GB
  • Arduino Uno
  • Arduino Pro Mini + FTDI asosiy buzilishi
  • 4 ta 6V 1W quyosh panellari
  • 4 18650 ta batareya
  • Kuchaytirgich 5v
  • 4 ta TP 4056 batareyali zaryadlovchi
  • Adafruit DHT22 harorat va namlik sensori
  • BMP180 Barometrik bosim sensori
  • 4 LDR
  • RF 433 qabul qiluvchi va uzatuvchi
  • 2 Nema 17 qadamli motorlar
  • 2 DRV8825 step motorli haydovchi
  • LCD 128*64
  • Ko'p simlar

Asboblar va materiallar

  • Yelim
  • Yog'och taxtalar
  • Ko'rdim
  • Vintlardek + tornavida
  • O'rdak tasmasi
  • 2 alyuminiy chiziqlar

2 -qadam: mexanik dizayn

Mexanik dizayn
Mexanik dizayn
Mexanik dizayn
Mexanik dizayn
Mexanik dizayn
Mexanik dizayn
Mexanik dizayn
Mexanik dizayn

Ob -havo stantsiyasining tanasi kontrplakdan qilingan. Yog'ochdan foydalanish shart emas, uni har qanday materialdan yasash mumkin. Dvigatelni o'rnatish uchun men yog'och blokni burg'uladim, keyin dvigatel miliga tekis vintni burab qo'ydim, bu men kutganimdan yaxshiroq ishlaydi. Shunday qilib, dvigatel moslamasini 3d chop etishning hojati yo'q va bu oson. Keyin men motorlarni juda qattiq ushlab turish uchun 2 alyuminiy tasmasini egdim. Keyin men taxtani kesib, quyosh panellari uchun teshik ochdim. Keyin unga quyosh panellarini yopishtiring va quyosh panellariga simlarni lehimlang. Keyin siz qora materialdan xoch yasashingiz kerak bo'ladi. Agar sizda qora narsa bo'lmasa, siz qora lentani ishlatishingiz mumkin. Bu xoch har bir burchakda LDRni ushlab turadi, shuning uchun Arduino LDR o'lchovlarini solishtirib, qaysi tomonga burilishi kerakligini hisoblab chiqadi. Shunday qilib, har bir burchakda mayda bo'laklarni burg'ulang, shunda siz ularni LDRga joylashtirasiz. Endi faqat plastinka yasash va elektronikani qo'yish uchun boshqa narsa qoladi. Asosiy plastinka uchun siz butun simlar orqali o'tadigan bir butunni burg'ulashingiz kerak bo'ladi. O'lchovlar uchun men sizga hech narsa bermayman, chunki siz uni qanday loyihalashni xohlaysiz. Agar sizda boshqa dvigatellar yoki boshqa quyosh panellari bo'lsa, o'lchovlarni o'zingiz hal qilishingiz kerak bo'ladi.

3 -qadam: Elektr dizayni

Quvvat

Butun tizim batareyalarda ishlaydi (Raspberry Pi dan tashqari). Men ketma -ket 3 ta batareyani joylashtirdim. 1 batareya o'rtacha 3,7 V, shuning uchun 3 ta ketma -ket 11 V atrofida. Bu 3s batareya to'plami dvigatellar va chastotali transmitter uchun ishlatiladi. Qolgan boshqa batareya Arduino Pro Mini va sensorlarni quvvatlantirish uchun ishlatiladi. Batareyalarni zaryad qilish uchun men 4 ta TP4056 modulidan foydalandim. Har bir batareyada 1 ta TP4056 moduli bor, har bir modul quyosh batareyasiga ulangan. Modulda B (kirish) va B (chiqish) borligi uchun ularni alohida zaryadlash va ketma -ket chiqarish mumkin. To'g'ri TP4056 modullarini sotib olganingizga ishonch hosil qiling, chunki hamma modullarda ham B (kirish) va B (chiqish) mavjud emas.

Kontrol

Arduino Pro Mini datchiklar va motorlarni boshqaradi. Arduino -ning xom va tuproqli pimi 5V kuchaytirgichga ulangan. 5V kuchaytirgich bitta batareyaga ulangan. Arduino Pro Mini juda kam quvvat sarfiga ega.

Komponentlar

DHT22: Men bu sensorni VCC va Ground -ga uladim, keyin ma'lumot pinini raqamli pin 10 ga uladim.

BMP180: Men bu sensorni VCC va Ground -ga uladim, SCL -ni Arduino -dagi SCL -ga va SDA -ni Arduino -dagi SDA -ga uladim. Ehtiyot bo'ling, chunki Arduino Pro Mini -dagi SCL va SDA pinlari taxtaning o'rtasida joylashgan, shuning uchun agar siz pimlarni taxtaga lehimlagan bo'lsangiz va uni taxtaga qo'ygan bo'lsangiz, u ishlamaydi, chunki sizda boshqa pimlarning aralashuvi bo'ladi. Men taxtaning yuqori qismidagi ikkita pinni lehimladim va unga simni to'g'ridan -to'g'ri uladim.

RF transmitteri: Men signalni yaxshiroq uzatish va uzoqroq diapazonga ega bo'lish uchun uni 3s batareya paketiga uladim. Men uni Arduino -dan 5V ga ulashga harakat qildim, lekin keyin RF signallari juda zaif. Keyin ma'lumotlar pinini raqamli 12 -pinga uladim.

LDR: Men 4 ta LDRni A0, A1, A2, A3 analog pinlariga uladim. Men LDRni 1K rezistor bilan birlashtirdim.

Dvigatellar: dvigatellar 2 ta DRV8825 boshqaruv moduli bilan boshqariladi. Bu juda qulay, chunki ular faqat 2 ta kirish liniyasini oladi (yo'nalish va qadam) va dvigatellarga har bir fazada 2A gacha ishlab chiqarishi mumkin. Men ularni 2, 3 va 8, 9 raqamli pinlarga ulanganman.

LCD: Men IP-manzilini ko'rsatish uchun LCD-ni Raspberry Pi-ga uladim. Men orqa nuri tartibga solish uchun trimmerdan foydalandim.

RF qabul qiluvchisi: Men qabul qilgichni 5V va Ground -da Arduino Uno -ga uladim. Qabul qilgich 5 V dan oshmasligi kerak. Keyin men ma'lumot pinini raqamli pin 11 ga uladim. Agar siz Raspberry Pi -da ishlaydigan ushbu RF modullari uchun kutubxona topa olsangiz, Arduino Uno -dan foydalanish shart emas.

Raspberry Pi: Raspberry Pi USB kabeli orqali Arduino Uno -ga ulangan. Arduino RF signallarini ketma -ket ulanish orqali Raspberry Pi ga uzatadi.

4 -qadam: Keling, kodlashni boshlaylik

Arduino Pro Mini -ni kodlash uchun sizga FTDI dasturchisi kerak bo'ladi. Pro Mini -ning USB porti bo'lmaganligi uchun (quvvatni tejash uchun), sizga bu panel kerak bo'ladi. Men kodni Arduino IDE -da dasturlashtirdim, menimcha, buni qilishning eng oson yo'li. Fayldan kodni yuklang va borish yaxshi bo'ladi.

Arduino Uno -ni kodlash uchun uni kompyuterga USB kabeli orqali uladim. Kodni yuklaganimdan so'ng, men uni Raspberry Pi -ga uladim. Men Raspberry Pi -dagi kodni o'zgartira oldim, chunki men Arduino IDE -ni o'rnatganman va shuning uchun uni o'sha erdan dasturlashim mumkin edi. Kod juda oddiy, u qabul qiluvchidan kirishni oladi va ketma -ket port orqali Raspberry Pi -ga yuboradi.

Raspberry Pi -ni kodlash uchun men Raspbian -ni o'rnatdim. Keyin men SSH aloqasi orqali unga ulanish uchun Putty -dan foydalandim. Keyin men Raspberry -ni konfiguratsiya qildim, shuning uchun unga VNC orqali ulanishim va GUI -ga ega bo'lishim mumkin edi. Men Apache veb -serverini o'rnatdim va ushbu loyihaning orqa va old qismini kodlashni boshladim. Siz kodni github-da topishingiz mumkin:

5 -qadam: ma'lumotlar bazasi

Ma'lumotni saqlash uchun men SQL ma'lumotlar bazasidan foydalanaman. Men ma'lumotlar bazasini MySQL Workbench -da yaratdim. Ma'lumotlar bazasida sensor ko'rsatkichlari va sensor ma'lumotlari saqlanadi. Menda 3 ta jadval bor, bittasi sensorlar qiymatlarini vaqt tamg'asi bilan saqlash uchun, ikkinchisi sensorlar haqidagi ma'lumotlarni saqlash uchun va oxirgi foydalanuvchilar haqidagi ma'lumotlarni saqlash uchun. Men foydalanuvchilar jadvalidan foydalanmayman, chunki men loyihaning bu qismini kodlamaganman, chunki u MVPda bo'lmagan. SQL faylini yuklab oling va uni bajaring va ma'lumotlar bazasi yaxshi bo'lishi kerak.

Tavsiya: