Агуулгын хүснэгт:

Raspberry Pi интернет цаг уурын станц: 5 алхам (зурагтай)
Raspberry Pi интернет цаг уурын станц: 5 алхам (зурагтай)

Видео: Raspberry Pi интернет цаг уурын станц: 5 алхам (зурагтай)

Видео: Raspberry Pi интернет цаг уурын станц: 5 алхам (зурагтай)
Видео: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, Долдугаар сарын
Anonim
Raspberry Pi интернет цаг уурын станц
Raspberry Pi интернет цаг уурын станц
Raspberry Pi интернет цаг уурын станц
Raspberry Pi интернет цаг уурын станц

*** шинэчлэх ***

Энэхүү зааварчилгаа нь хуучирсан байна. Энэхүү зааварчилгаанд ашигласан цаг агаарын мэдээнд зориулсан цаг агаарын үйлчилгээ ажиллахаа больсон. Гэсэн хэдий ч үндсэндээ ижил зүйлийг хийдэг өөр төсөл байдаг (зөвхөн илүү сайн - энэ заавар нь үргэлж хакерддаг байсан). Тиймээс та дагахыг хүсч буй линкийг энд оруулав.

https://piweatherrock.technicalissues.us/

PiWeatherRock дахь Gene Liverman -д очиж энэхүү төслийнхөө нөмрөгийг авсанд маш их баярлалаа.

Энэхүү зааварчилгаа нь танд үнэхээр гайхалтай Raspberry Pi интернэтэд суурилсан цаг уурын станц хэрхэн барихыг харуулах болно. Үнэн хэрэгтээ энэ барилгыг "цаг агаарын станц" гэж нэрлэх нь арай л доогуур ойлголт юм. Энэхүү барилга нь зөвхөн цаг агаараас илүү ихийг хангахын тулд сунгаж болно. Гэсэн хэдий ч энэ бол сайн эхлэл бөгөөд миний ширээн дээр үнэхээр дажгүй харагдаж байна.

Манай гэр бүл (зүгээр л ихэнхдээ би) гэр бүлийн iPad -ийг гал тогооны өрөөний лангуун дээр ашиглахгүй байхдаа цаг агаарын гаднах цаг агаарын өнөөгийн байдлыг чимээгүйхэн харуулдаг байсан. Гэсэн хэдий ч iPad -ийг аркадны өлгийн хайрцагт оруулах, буулгах нь зовлон юм. Нэмж хэлэхэд, цаг агаарыг харахаар очиход хэн нэгэн iPad / цаг агаарын дэлгэцийг авсан болохыг олж мэдэв. Хүүхдүүд iPad шиг шудрахгүй байхын тулд байнгын дэлгэцийн дэлгэц хэрэгтэй болно.

Алхам 1: Gen 1 - Lunchbox Pi цаг уурын станц

Gen 1 - Lunchbox Pi цаг уурын станц
Gen 1 - Lunchbox Pi цаг уурын станц
Gen 1 - Lunchbox Pi цаг уурын станц
Gen 1 - Lunchbox Pi цаг уурын станц

Миний анхны бодол бол жижиг нийлмэл видео дэлгэц ашиглах явдал байв. Би Ebay дээрх зурган дээрх зургийг 22 доллараар худалдаж авлаа - "4.3 инчийн TFT LCD машины арын дэлгэцийн машины дэлгэц" -ээс хайж олоорой. Дэлгэц нь 656 -аас 416 пикселийн нарийвчлалтай бөгөөд энэ нь маш их хэрэгтэй мэдээллийг харуулахад бэрхшээл учруулдаг. Дэлгэц нь тэжээлийн хүчдэлийн хувьд 12Vdc шаарддаг. Мэдээжийн хэрэг, Raspberry Pi нь тэжээлийн хүчдэл болохын тулд 5Vdc хэрэгтэй. Үүнийг шийдэхийн тулд би Amazon -аас хямд USB машин цэнэглэгч худалдаж авсан. Ойролцоогоор 6 долларын үнэтэй би 5Vdc by 2 Amp автомашин солигч олсон. Тиймээс, үдийн цайны хайрцаг нь гадны 12Vdc ханын warts цахилгаан хангамжтай байдаг. 12Vdc нь дэлгэцийг шууд тэжээдэг. 12Vdc нь USB машины цэнэглэгч рүү ордог бөгөөд энэ нь хүчдэлийг 5Vdc хүртэл зохицуулдаг. Эцсийн оролдлогын хувьд би машины цэнэглэгч болон Raspberry Pi хоёрын хооронд шууд утсыг гагнасан нь миний хамгийн сайн санаа биш юм.

Бүх зүйл үр дүнтэй байсан ч би нийлмэл дэлгэц дээрх видеоны чанарт үнэхээр сэтгэл хангалуун бус байсан. Дэлгэц дээрх жижиг фонт миний хүссэнээс илүү бүдэг байв. Дээрээс нь үдийн цайны хайрцаг анх хөөрхөн юм шиг санагддаг байсан бол сүүлд нь үнэхээр хөөрхөн юм шиг санагдсан.

Алхам 2: Gen 2 - HDMI дэлгэц + лазер хайчлах plexiglass аркад хайрцаг

Gen 2 - HDMI дэлгэц + лазер хайчлах plexiglass аркад хайрцаг
Gen 2 - HDMI дэлгэц + лазер хайчлах plexiglass аркад хайрцаг
Gen 2 - HDMI дэлгэц + лазер хайчлах plexiglass аркад хайрцаг
Gen 2 - HDMI дэлгэц + лазер хайчлах plexiglass аркад хайрцаг
Gen 2 - HDMI дэлгэц + лазер хайчлах plexiglass аркад хайрцаг
Gen 2 - HDMI дэлгэц + лазер хайчлах plexiglass аркад хайрцаг

EBay дээр буцаж ирэхэд би 54 долларын үнэтэй, 800х600 нягтралтай HDMI нээлттэй хүрээтэй дэлгэц оллоо. Тодорхойлолтоор бол нээлттэй хүрээ нь юу ч хамаагүй бэхэлгээ хийх шаардлагатай байдаг. Үдийн хоолны хайрцаг нь маш удаан байсан тул нийлэгийг лазераар огтлох цаг болжээ. Миний орон нутгийн хакеруудын орон зай i3Detroit нь үнэхээр сайхан 150 ваттын таслагчтай бөгөөд 4.5 мм акрилаар татсан мах хийж чаддаг.

Би iPad -ийн аркад хайрцаг дээр өөрийн аркад хашаагаа чөлөөтэй суурилуулсан. Хэрэв би хэзээ нэгэн цагт Gen 3 загвар хийвэл энэ нь Pi -д зориулж зөөврийн / гулсах тавиурыг оруулах болно. Пи болон хажуугийн хананы хооронд тийм ч их зай байхгүй тул Пи -ийг залгах, гадагшлуулах нь хүзүүний гол өвдөлт юм.

HDMI дэлгэц нь 12Vdc тэжээл шаарддаг. Тиймээс би USB машины цэнэглэгчийг дахин ашиглах ижил аргыг ашигласан. Гэхдээ энэ удаад би хуучин USB кабелийг таслав, ингэснээр Pi дээрх гагнуурын утас шаардлагагүй байв.

Хэрэв хэн нэгэн аркад хэргийг сонирхож байвал доор сэтгэгдэл бичээрэй, би DXF файлуудыг байршуулна. Эсвэл файлууд миний ph-elec.com вэбсайт дээр байна.

Алхам 3: Pi тохиргоо

Pi тохиргоо
Pi тохиргоо

Шаардлагатай програм хангамж бүхий шинэ Raspberry Pi тохируулах нь тийм ч хэцүү биш юм. Бүх програм хангамжийг Python дээр зөвхөн нэг Python модуль нэмсэн байдлаар бичсэн болно. Нэмэлт Python модулийг "pywapi" гэж нэрлэдэг. Модулийг татаж авах линк энд байна. Энэхүү модуль нь Yahoo, Weather.com эсвэл NOAA-аас цаг агаарын бодит цагийг авахад хялбар болгодог.

Юуны өмнө, түүхий Raspberry Pi -ийг тохируулах хяналтын хуудас энд байна.

  1. Хамгийн сүүлийн үеийн Raspbian (Debian Wheezy) татаж авах.. Img файлыг авахын тулд задлах.
  2. SD картанд "dd bs = 4M if = 2014-09-09-wheezy-raspbian.img of//dev/sdb" гэж бичнэ үү.
  3. Dd тушаал нь ойролцоогоор таван минут болно. Дууссаны дараа хоолойг угаахын тулд "sync" ажиллуулна уу.
  4. SD картыг Pi -д суулгаад дахин ачаална уу. Pi -д Ethernet холболт байгаа эсэхийг шалгаарай.
  5. Чиглүүлэгч дээрх "Хавсаргасан төхөөрөмжүүд" хуудсыг ашиглан шинэ Pi -ийн IP хаягийг олоорой.
  6. "Ssh [email protected]. ???" ашиглан Pi руу нэвтэрнэ үү. хаана ??? Дээрх IP дугаар юм. Нууц үг нь "бөөрөлзгөнө" байх болно.
  7. Pi дээр анхдагч тохиргоог хийхийн тулд "raspi-config" командыг ашиглана уу.

    1. GUI руу автомат ачаалалтыг асаана уу.
    2. Хостын нэрийг "MyPi" шиг тохируулаарай.
  8. VNC-ийг Pi дээр "sudo apt-get install tightvncserver" ашиглан суулгаарай.

    Нууц үгийг тохируулдаг "tightvncserver" -ийг ажиллуулна уу

  9. Линуксийн том хайрцаг руу буцаж ороод Pi GUI ширээний компьютерийг үзэхийн тулд "Remote Desktop" -г ашиглана уу.

    1. Протоколыг "VNC", IP дугаарыг "192.168.1.???:1" болгож тохируулна уу. IP дугаарын төгсгөлд байгаа ": 1" -ийг анхаарна уу.
    2. Холбох товчийг дарж VNC нууц үгийг оруулна уу.
    3. Bingo, алсын GUI Pi ширээний компьютер!

      Энэ нь шинэ Pi -тэй холбогдохын тулд дэлгэц, гар, хулганыг чирэх боломжийг олгодог

    4. Ширээний компьютер дээр WiFi тохиргооны дүрсийг ажиллуулна уу. Сүлжээнд холбогдохын тулд шинэ Pi / USB WiFi тохируулна уу.
    5. VNC холболтыг хаагаарай - бид одоо алсын ширээний компьютер дээр ажиллаж байна.
  10. Ssh цонх руу буцаж очоод Pi -г "sudo reboot" ашиглан дахин ачаална уу. WiFi тохируулагдсан тул Ethernet кабелийг салга.
  11. Гэрийн чиглүүлэгч рүү буцаж ороод Pi -гийн WiFi ашиглан ашигладаг шинэ IP дугаарыг олоорой.
  12. Ssh ашиглан шинэ IP дугаар ашиглан дахин нэвтэрнэ үү. Энэ удаад WiFi сүлжээгээр холбогдоно.
  13. Линукс дээрх файлын менежерийг ашиглан "серверт холбогдох" командыг ашиглан Pi -тай холбогдоно уу.

    Серверийн хаяг нь "sftp: //192.168.1. ???/home/pi" юм

  14. Үндсэн тохиргоо дууссан.

Дараа нь pywapi татаж аваад суулгах хэрэгтэй. Дахин хэлэхэд дараахь алхамуудыг хийхэд тийм ч хэцүү биш юм.

  1. Хамгийн сүүлийн хувилбарыг эндээс татаж аваарай. Архивыг шинэ лавлах руу задлах.
  2. File Manger ашиглан лавлахыг Pi гэрийн лавлах руу хуулна уу.
  3. Ssh ашиглан Pi дээр дараахь зүйлийг хий.

    1. cd pywapi-0.3.8
    2. sudo python setup.py бүтээх
    3. sudo python setup.py суулгах
  4. Дууссан.

Шинэчлэх, би өөр хоёр зүйлийг дурдахаа мартсан байна:

  1. Pi дээр дараах тушаалыг ажиллуулна уу.

    1. sudo apt-get суулгах avahi-daemon

      Энэ нь Pi -г нэрээр нь холбох боломжийг олгодог. Тиймээс, та үндсэн компьютер дээрээ IP дугаар ашиглахын оронд "ssh [email protected]" холбогдож болно. Олон тооны сүлжээ сүлжээнд байгаа бол нэрээр нь дуудахгүй бол тэднийг төөрөгдүүлэх нь амархан байдаг

    2. sudo raspi-config

      1. "Internationalization Options" нэртэй 4 дэх сонголтыг хайж олоод цагийн бүсээ тохируулна уу.
      2. Цагийн бүсийг тохируулж, ntpd (сүлжээний цагийн протоколын демон) -г ажиллуулж байх үед зөв цагийг хэдэн миллисекунд дотор харуулах болно! Хайрлах ёстой.
  2. За, одоо бид дахин дууслаа.

Алхам 4: Эх код

Эх код
Эх код

Энэхүү цаг агаарын жижиг дэлгэцийн бүх эх кодыг Python, PyGame, Pywapi дээр суурилсан болно. Бүх нээлттэй эх сурвалж / үнэгүй програм хангамж.

PyGame нь GUI -ийн бүх зүйлийг хийхэд хэрэглэгддэг. Үнэхээр гайхалтай эд зүйлс. PyGame -ийг ашиглан дэлгэцийг бүхэлд нь секундэд нэг удаа дахин бүтээдэг. Миний эх кодын дээд талд та дэлгэцийн өөр өөр хэмжээтэй тохируулах хэсгийг олох болно. Жижиг нийлмэл видео дэлгэцийн нэг хэсэг, том HDMI дэлгэцийн хоёр дахь хэсэг байдаг. Би хэрэгтэй дэлгэцийнхээ хэмжээг үндэслэн хоёр хэсгийн аль нэгийг тайлбарлах болно.

Миний эх кодыг ажиллуулахын тулд хавсралтыг задалж, File Manage ашиглан директорыг бүхэлд нь Pi дээр хуулна уу. Кодыг хуулж авсны дараа дараах ssh командыг ашиглана уу.

  1. cd Цаг агаар
  2. sudo python цаг агаар.py

Python нь GPIO тээглүүрийг хянах / уншихын тулд sudo тушаал хэрэгтэй болно. Энэ хязгаарлалтыг тойрч гарах арга зам байгаа байх, гэхдээ энэ нь надаас зайлсхийдэг.

Бүх зүйл ssh ашиглан ажиллаж эхэлмэгц цаг агаарыг дахин ачаалахад автоматаар эхлэх цаг болжээ. Үүнийг бас хийхэд үнэхээр хялбар байдаг.

  1. Ssh ашиглан "sudo vi /etc/rc.local" -ийг ажиллуулна уу.
  2. "0 гарах" гэсэн сүүлийн мөрийн өмнөхөн мөрөнд дараах зүйлийг нэмнэ үү.

    1. cd/home/pi/Цаг агаар
    2. sudo python цаг агаар.py &> err.log

Энэ нь дахин ачаалсны дараа цаг агаарын програмыг Pi дээр автоматаар эхлүүлэх болно. Хэрэв та үүнийг дараа нь унтраахыг хүсч байвал ssh ашиглан файлыг засаад хоёр мөрийн өмнө "#" гэсэн тэмдэгт нэмж оруулаад дахин ачаална уу.

Анхаарна уу, миний эх код бол том хакер бөгөөд би үүгээрээ бахархдаггүй. Гэсэн хэдий ч, хэрэв би үүнийг бэлэн болтол хүлээвэл хэзээ ч танилцуулахгүй. Тиймээс, үүнийг авах эсвэл үлдээгээрэй, би маш нимгэн арьстай болохоор битгий уйл.

Миний кодын талаар анхаарах хэдэн зүйл байна. Тэнд оршуулагдсан тул та X10 төхөөрөмжтэй ярих кодыг анзаарах болно. Энэ бол миний A3 хаяг дээр байгаа гаднах туйлын гэрлийг удирдах оролдлого байсан юм. Үдшийн бүрий болоход лампыг асааж, үүрээр унтраахыг хүссэн юм. Энэ нь хангалттай хялбар санагдаж байна, би үүнийг ажиллуулж чадсан гэж бодсон. Pi-д USB-to-RS232 гогцоо ашиглан би CM11A X10 модулийг холбосон. CM11A бол хуучин X10 макро модуль юм. CM11A нь X2 автобусыг хянах боломжийг олгодог RS232 порттой. Дэнлүүний туйлын гэрэл зурвасыг аваагүй тул зарим алдаанууд байсаар байгаа бололтой!

Түүнчлэн, том дэлгэц дээр дэлгэцийн баруун талд сайхан нээлттэй завсар байгааг тэмдэглэх нь зүйтэй. Миний төлөвлөгөө бол энэ хэсэгт статусын гэрэл нэмэх явдал юм. Би зарим IEEE802.15.4 радиогоор тоглож байгаа бөгөөд тэдний гаралт хэзээ нэгэн цагт тэр нээлттэй газар гарч ирэх болно.

Хамгийн сүүлийн үеийн шинэчлэлтүүдийг ph-elec.com дээрх миний вэбсайтаас авна уу.

За, асууж болох бүх асуултаа доорх тайлбар хэсэгт бичээрэй.

Баярлалаа, Жимин.

Өө, надад саналаа өгөхөө бүү мартаарай! Дахин баярлалаа.

BTW: Миний вэбсайт дээр www.ph-elec.com дээр үргэлж илүү их мэдээлэл байдаг

Алхам 5: Метрийн шинэчлэлт

Метрик эсвэл эзэн хааны аль алиныг нь харуулах боломжийг олгодог шинэ хувилбарыг хавсаргав.

Энэ нь тусална гэж найдаж байна, Жим

Зөвлөмж болгож буй: