Mundarija:

Raspberry Pi Internet -havo stantsiyasi: 5 qadam (rasmlar bilan)
Raspberry Pi Internet -havo stantsiyasi: 5 qadam (rasmlar bilan)

Video: Raspberry Pi Internet -havo stantsiyasi: 5 qadam (rasmlar bilan)

Video: Raspberry Pi Internet -havo stantsiyasi: 5 qadam (rasmlar bilan)
Video: X-Carve-Opt lazerlariga lazer o'rnatish 2024, Iyul
Anonim
Raspberry Pi Internet -ob -havo stantsiyasi
Raspberry Pi Internet -ob -havo stantsiyasi
Raspberry Pi Internet -ob -havo stantsiyasi
Raspberry Pi Internet -ob -havo stantsiyasi

*** yangilash ***

Bu ko'rsatma eskirgan. Ushbu yo'riqnomada ishlatiladigan ob -havo ma'lumotlari uchun ob -havo xizmatlari endi ishlamaydi. Biroq, xuddi shu narsani qiladigan alternativ loyiha bor (faqat yaxshiroq - bu ko'rsatma har doim shunchaki hack edi). Shunday qilib, siz havola qilishni xohlaysiz:

https://piweatherrock.technicalissues.us/

Ushbu loyihadagi mantiyani olish uchun PiWeatherRock -da Gen Livermanga katta rahmat.

Bu ko'rsatma sizga Raspberry Pi Internet-ob-havo stantsiyasini qanday qurishni ko'rsatib beradi. Aslida, bu qurilishni "ob -havo stantsiyasi" deb atash biroz tushunarsizdir. Ob'ektni ob -havodan ko'ra ko'proq qilish uchun bu qurilishni osonlikcha uzaytirish mumkin. Biroq, bu yaxshi boshlanish va mening stolimda juda zo'r ko'rinadi.

Bizning oilamiz (OK, asosan men) oshxona peshtaxtasida, ishlatilmaganda, hozirgi tashqi ob -havo sharoitlarini jimgina ko'rsatib, oilaviy iPad -ni yoqtirishdi. Biroq, iPad -ni arja beshik qutisiga yuklash va tushirish og'riq. Bundan tashqari, ob -havoga qaraganimda, kimdir iPad / ob -havo displeyini olganini bilaman. Buning uchun bolalarning iPad kabi siljimasligi uchun doimiy peshtaxta displeyi kerak.

1 -qadam: 1 -avlod - Lunchbox Pi ob -havo stantsiyasi

Gen 1 - Lunchbox Pi ob -havo stantsiyasi
Gen 1 - Lunchbox Pi ob -havo stantsiyasi
Gen 1 - Lunchbox Pi ob -havo stantsiyasi
Gen 1 - Lunchbox Pi ob -havo stantsiyasi

Mening birinchi fikrim kichik kompozitsion video displeydan foydalanish edi. Men Ebay rasmidagi rasmni 22 dollarga oldim - shunchaki "4.3 dyuymli TFT LCD avtomobilning orqa ko'rinishi monitorli avtomobil monitorini" qidiring. Displeyda 656 dan 416 pikselgacha bo'lgan aniqlik aniqlangan, bu juda ko'p foydali ma'lumotlarni ko'rsatishni qiyinlashtiradi! Displeyga besleme zo'riqishida 12Vdc kerak. Raspberry Pi, albatta, besleme zo'riqishida 5Vdc ga muhtoj. Buni hal qilish uchun men Amazondan arzon USB avtomobil zaryadlovchisini sotib oldim. Taxminan 6 dollar uchun men 5 Vdc 2 Ampli avtomobil almashtirgichni topdim. Shuning uchun, tushlik qutisi tashqi devorga 12Vdc quvvat manbai bilan jihozlangan. 12Vdc displeyni to'g'ridan -to'g'ri quvvatlaydi. 12Vdc, shuningdek, USB avtomobil zaryadlovchisiga o'tadi, bu esa voltajni regulyatsiya qilingan 5Vdc ga tushiradi. Oxirgi xakerlik sifatida men avtomobil zaryadlovchisi va Raspberry Pi o'rtasida bir juft simni lehimladim - bu mening eng yaxshi fikrim emas.

Hammasi ishlagan bo'lsa -da, men kompozit displeydagi videoning sifatidan qoniqmadim. Displeydagi kichik shrift men xohlaganimdan ko'ra loyqa edi. Qolaversa, tushlik qutisi dastlab yoqimli bo'lib tuyuldi, lekin keyinchalik u juda pishloq bo'lib tuyuldi.

2 -qadam: Gen 2 - HDMI monitor + Plexiglass arkadli lazerli kesim

Gen 2 - HDMI monitor + lazerli kesilgan pleksiglas arkada qutisi
Gen 2 - HDMI monitor + lazerli kesilgan pleksiglas arkada qutisi
Gen 2 - HDMI monitor + lazerli kesilgan pleksiglas arkada qutisi
Gen 2 - HDMI monitor + lazerli kesilgan pleksiglas arkada qutisi
Gen 2 - HDMI monitor + lazerli kesilgan pleksiglas arkada qutisi
Gen 2 - HDMI monitor + lazerli kesilgan pleksiglas arkada qutisi

EBay -ga qaytib, men 800x600 pikselli, 54 dollarlik, HDMI ochiq ramkali, chiroyli ko'rinishga ega monitorni topdim. Ta'rif bo'yicha, ochiq ramkaga har qanday narsani o'rnatish uchun ramka kerak bo'ladi. Tushlik qutisining xushbo'yligi uzoq vaqt bo'lgani uchun, akrilni lazer bilan kesish vaqti keldi. Mening i3Detroit mahalliy xakerlar makonida juda yaxshi 150 vattli kesuvchi bor, u 4,5 mm akrildan qiyma go'sht tayyorlay oladi.

Men iPad -ning arkada qutisiga o'z arkadamli korpusimni asos qilib oldim. Agar men Gen 3 dizaynini yaratgan bo'lsam, u Pi uchun olinadigan / sig'adigan tepsini o'z ichiga oladi. Ma'lum bo'lishicha, bu bo'ynidagi katta og'riq, uni Pi -ga ulash va tashqariga ulash, chunki Pi va yon devorlar orasida juda ko'p joy yo'q.

HDMI monitor, shuningdek, 12Vdc kuchlanishni talab qiladi. Shunday qilib, men xuddi shu usuldan foydalanib, USB -avtomobil zaryadlovchisini qayta ishlatdim. Ammo bu safar men eski USB kabelini kesib tashladim, shuning uchun Pi -ga lehimli simlar kerak emas edi.

Agar kimdir arja ishiga qiziqsa, quyida izoh qoldiring va men DXF fayllarini yuklayman. Yoki fayllar mening ph-elec.com veb-saytimda.

3 -qadam: Pi o'rnatish

Pi o'rnatish
Pi o'rnatish

Raspberry Pi -ni kerakli dasturiy ta'minot bilan o'rnatish unchalik qiyin emas. Barcha dasturiy ta'minot Python -da bitta Python moduli qo'shilgan holda yozilgan. Qo'shimcha Python moduli "pywapi" deb nomlanadi. Bu erda siz modulni yuklab olishingiz mumkin bo'lgan havola. Ushbu modul Yahoo, Weather.com yoki NOAA-dan real vaqtda ob-havo ma'lumotlarini olishni osonlashtiradi.

Birinchidan, xom Raspberry Pi -ni sozlash uchun ro'yxat:

  1. Eng so'nggi Raspbian dasturini (Debian Wheezy) yuklab oling.. Img faylini olish uchun oching.
  2. SD-kartaga "dd bs = 4M if = 2014-09-09-wheezy-raspbian.img of//dev/sdb" yozing.
  3. Dd buyrug'i taxminan besh daqiqa davom etadi. Tugallangach, quvurlarni yuvish uchun "sinxronizatsiya" ni ishga tushiring.
  4. SD -kartani Pi -ga o'rnating va qayta ishga tushiring. Pi -ga chekilgan ulanish o'rnatilganligiga ishonch hosil qiling.
  5. Routerdagi "Qo'shilgan qurilmalar" sahifasidan foydalanib, yangi Pi -ning IP -manzilini toping.
  6. "Ssh [email protected]. ???" yordamida Pi ga kiring. qayerda ??? bu yuqoridagi IP raqami. Parol "malina" bo'ladi.
  7. Pi-da standart sozlamalarni o'rnatish uchun "raspi-config" buyrug'idan foydalaning.

    1. GUI -ga avtomatik yuklashni yoqing.
    2. Xost nomini "MyPi" ga o'rnating.
  8. VNC-ni Pi-ga "sudo apt-get install tightvncserver" yordamida o'rnating.

    Parolni o'rnatadigan "tightvncserver" ni ishga tushiring

  9. Katta Linux qutisiga qayting, Pi GUI ish stolini ko'rish uchun "Masofaviy ish stoli" dan foydalaning.

    1. Protokolni "VNC" ga va IP raqamini "192.168.1.???:1" ga o'rnating. IP raqamining oxiridagi ": 1" ga e'tibor bering.
    2. Ulanish tugmachasini bosing va VNC parolini kiriting.
    3. Bingo, uzoq GUI Pi ish stoli!

      Bu yangi Pi -ga ulanish uchun monitor, klaviatura va sichqonchani sudrab chiqishdan saqlaydi

    4. Ish stolida WiFi sozlash belgisini ishga tushiring. Tarmoqqa ulanish uchun yangi Pi / USB WiFi -ni o'rnating.
    5. VNC ulanishini yoping - endi biz masofaviy ish stollarini tugatdik.
  10. Qayta ssh oynasida, "sudo reboot" yordamida Pi -ni qayta ishga tushiring. Ethernet kabelini uzing, chunki Wi -Fi hozirda sozlangan.
  11. Uy yo'riqchisiga qayting, Wi -Fi yordamida Pi ishlatadigan yangi IP -raqamni toping.
  12. Ssh -dan foydalanib, yangi IP -raqam yordamida tizimga kiring. Bu safar ulanish WiFi orqali amalga oshiriladi.
  13. Linux -dagi fayl menejeridan foydalanib, "serverga ulanish" buyrug'i yordamida Pi -ga ulaning.

    Server manzili "sftp: //192.168.1. ???/home/pi"

  14. Asosiy sozlash tugallandi.

Keyinchalik, pywapi -ni yuklab olish va o'rnatish kerak. Shunga qaramay, quyidagi bosqichlarni bajarish juda qiyin emas:

  1. Bu yerdan eng yangi dasturlarni yuklab oling. Arxivni yangi katalogga chiqaring.
  2. Fayl menejeridan foydalanib, katalogni Pi uy katalogiga nusxalash.
  3. Ssh yordamida Pi -da quyidagilarni bajaring:

    1. CD pywapi-0.3.8
    2. sudo python setup.py tuzish
    3. sudo python setup.py ni o'rnating
  4. Bajarildi.

Yangilang, men ikkita boshqa narsani esladim:

  1. Pi -da quyidagi buyruqni bajaring:

    1. sudo apt-get avahi-daemon-ni o'rnating

      Bu Pi ga nom bilan ulanish imkonini beradi. Shunday qilib, sizning asosiy kompyuteringizda siz IP raqamlarini ishlatishning o'rniga "ssh [email protected]" ga ulanishingiz mumkin. Tarmoqda bir nechta Pi bo'lsa, ularni nomidan chaqirmasa, ularni chalkashtirib yuborish oson

    2. sudo raspi-config

      1. "Xalqarolashtirish imkoniyatlari" deb nomlangan 4 -variantni qidiring va ishga tushiring va vaqt mintaqangizni o'rnating.
      2. Vaqt zonasi o'rnatilganda va ntpd (tarmoq vaqti protokoli demoni) bilan Pi har doim to'g'ri vaqtni bir necha millisekund ichida ko'rsatadi! Sevish kerak.
  2. OK, endi yana ishimiz tugadi.

4 -qadam: Manba kodi

Manba kodi
Manba kodi

Bu kichik ob -havo displeyining barcha manba kodlari Python, PyGame va Pywapi -ga asoslangan. Barcha ochiq manba / bepul dasturiy ta'minot.

PyGame barcha GUI ishlarini bajarish uchun ishlatiladi. Haqiqatan ham ajoyib narsalar. PyGame yordamida butun displey sekundiga bir marta qayta quriladi. Manba kodimning yuqori qismida siz turli xil displey o'lchamlari uchun sozlashni ta'minlaydigan bo'limni topasiz. Kichik kompozit video displey uchun bitta bo'lim va kattaroq HDMI displeyi uchun ikkinchi bo'lim mavjud. Men kerakli displey o'lchamiga qarab ikkita bo'limdan birini sharhlayman.

Manba kodini ishga tushirish uchun qo'shimchani oching va Fayllarni boshqarish yordamida butun katalogni Pi -ga ko'chiring. Nusxa olgandan so'ng, quyidagi ssh buyruqlaridan foydalanib kodni ishga tushiring:

  1. CD ob -havo
  2. sudo python ob -havo.py

Python GPIO pinlarini boshqarishi / o'qishi uchun sudo buyrug'i kerak. Ehtimol, bu cheklovning bir yo'li bor, lekin bu meni chetlab o'tadi.

Hamma narsa ssh yordamida ishlay boshlagach, ob -havo avtomatik ravishda qayta ishga tushganda boshlanadi. Buni ham qilish juda oson.

  1. Ssh yordamida "sudo vi /etc/rc.local" ni ishga tushiring.
  2. "Chiqish 0" deb yozilgan oxirgi qatordan oldin, satrlarga quyidagilarni qo'shing.

    1. CD/home/pi/Ob -havo
    2. sudo python ob -havo.py &> err.log

Bu qayta ishga tushirilgandan so'ng, Pi -da ob -havo dasturini avtomatik ravishda ishga tushiradi. Agar keyinroq buni o'chirmoqchi bo'lsangiz, faylni tahrirlash uchun ssh -dan foydalaning va ikkala satr oldiga "#" izoh belgisini qo'shing va qayta yoqing.

E'tibor bering, mening manba kodim katta xakerlik va men bundan juda faxrlanmayman. Ammo, agar men kutib turguncha kutsam, u hech qachon taqdim etilmas edi. Shunday qilib, uni oling yoki qoldiring, yig'lamang, chunki mening terim juda nozik.

Mening kodim haqida yana bir nechta narsalarni aytib o'tish kerak. U erda ko'milgan, siz X10 qurilmasi bilan gaplashish uchun kodni ko'rasiz. Bu mening A3 manzilidagi tashqi qutb chiroqlarini boshqarishga urinishim edi. Men shunchaki shomlar qorong'i tushganda va tong otganda o'chishini xohlardim. Bu juda oson tuyuladi va men buni ishlayapman deb o'yladim. Pi-dagi USB-RS232 dongle-dan foydalanib, men CM11A X10 modulini ulaganman. CM11A - eski X10 makro moduli. CM11A shuningdek, X10 avtobusini boshqarishga imkon beruvchi RS232 portiga ega. Hali ham ba'zi xatolar borga o'xshaydi, chunki chiroq ustuni chiroqlari xabarni ololmayapti!

Shuni ham ta'kidlash kerakki, katta displeyda displeyning o'ng tomonida yaxshi bo'sh joy bor. Mening rejam - bu hududga ba'zi holat lampalarini qo'shish. Men ba'zi IEEE802.15.4 radiolari bilan o'ynayapman va ularning chiqishlari bir kuni o'sha ochiq joyda paydo bo'ladi.

Eng so'nggi va eng yaxshi yangilanishlar uchun ph-elec.com veb-saytiga tashrif buyuring.

Xo'sh, savollaringiz ostidagi izohlar bo'limida menga xabar bering.

Rahmat, Jim.

Oh, va menga ovoz berishni unutmang! Yana bir bor rahmat.

BTW: Mening veb-saytimda har doim ko'proq ma'lumot bor: www.ph-elec.com

5 -qadam: Metrik yangilanish

Metrik yoki imperatorlik ko'rsatishga imkon beradigan yangi versiya biriktirilgan.

Umid qilamanki, bu yordam beradi, Jim

Tavsiya: