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

1984 WeatherMan Pi: 7 алхам (зурагтай)
1984 WeatherMan Pi: 7 алхам (зурагтай)

Видео: 1984 WeatherMan Pi: 7 алхам (зурагтай)

Видео: 1984 WeatherMan Pi: 7 алхам (зурагтай)
Видео: The Giant Wave - The Perfect Storm (3/5) Movie CLIP (2000) HD 2024, Арваннэгдүгээр
Anonim
Image
Image
1984 Цаг агаар Man Pi
1984 Цаг агаар Man Pi
1984 Цаг агаар Man Pi
1984 Цаг агаар Man Pi

Энэхүү зөөврийн хуурцаг тоглуулагч нь 80 -аад оны эхэн үеийн IoT цаг агаарын орчин үеийн дэлгэц бөгөөд "одоогийн нөхцөл" хөдөлгөөнт дүрс, гүйлгэх температур, борооны магадлал зэргийг соронзон хальсны цонхоор харуулдаг. Цаг агаарын нөхцөл байдал өөрчлөгдөхөд дээд талд байрлах servo удирдлагатай чихэвчнүүд нааш цааш сэрж, сэрэмжлүүлээрэй.

Функциональ соронзон хальсны хаалгыг онгойлгоход тоос шороотой анхны бүрэлдэхүүн хэсгүүдийг Raspberry Pi Zero W, Pimoroni Unicorn Hat HD (LED Matrix) болон жижиг servo -оор сольсон болохыг харж болно. Цаг агаарын мэдээллийг миний тодорхой байршилд тохируулсан хэт нарийвчлалтай Dark Sky Weather API-ийг асуудаг Python скрипт ашиглан авдаг.

Энэ бол энгийн боловч хөөрхөн харагддаг, ажиллагаатай IoT загвар бөгөөд миний YouTube-ийн лангууны эсрэг талын ширээний чанга яригч дээр байрладаг бөгөөд цаг агаарын талаар чимээгүйхэн мэдээлдэг.

Хангамж

Raspberry Pi Zero

Pimoroni Unicorn HAT HD

Жижиг Servo

1984 Hitachi SP-1 хувийн стерео ба чихэвч

USB WiFi адаптер

2 мм урттай саваа

Сугру (Хар ба Саарал)

GeoMag соронз

Алхам 1: Соронзон хальс таслах

Tape Teardown
Tape Teardown
Tape Teardown
Tape Teardown
Tape Teardown
Tape Teardown

9-р сард хадам ээж надад энэ хөөрхөн хөгшин хуурч тоглуулагчийг бэлэглэсэн бөгөөд түүний дүр төрх, товч товчнуудад шууд дурласан юм. Гол соронзон хальсны цонх нь 15 секундын дараа би захирагч гаргаж аваад стандарт Raspberry Pi HAT (Hardware Attached Attach) -тай ижил хэмжээтэй болохыг олж мэдээд гайхсан юм.

Ганцхан энэ нээлт нь хөхөө хийх цагныхаа төслийг "хийх" жагсаалтаас доош унагахад хангалттай байсан бөгөөд би тоглогчийг задалж шууд л ажилдаа орсон.

Эвдрэл маш сайн болж, би гурван өөр хэсэгтэй ажиллахаар шийдлээ. Би хэд хэдэн хуванцар эд ангиудыг эвдэж чадсан боловч буцааж нааж болохгүй зүйл байхгүй.

Алхам 2: Dark Sky Pi

Dark Sky Pi
Dark Sky Pi
Dark Sky Pi
Dark Sky Pi
Dark Sky Pi
Dark Sky Pi

Би Dark Sky -ийг хэсэг хугацаанд утсандаа ашиглаж байсан бөгөөд урьдчилсан мэдээ үнэн зөв байгаад үнэхээр их гайхаж байсан тул энэ төсөлд ашиглах боломжтой цогц API -ийг санал болгож байгааг хараад маш их баяртай байна. бас дээшээ!

Нэгдүгээрт, https://darksky.net/dev хаягаар орж үнэгүй данс бүртгүүлээрэй - "туршилтын" данс нь өдөрт 1000 API хүсэлт гаргах боломжийг олгодог бөгөөд энэ нь 1.5 минут тутамд шинэчлэгдэхэд хангалттай байдаг. Их Британийн цаг агаарын байдал.

Бүртгүүлсний дараа та "Нууц түлхүүр" авах болно - энэ нь өгөгдөлд нэвтрэхэд шаардлагатай бөгөөд Python скриптэд ашиглагддаг тул үүнийг гартаа хадгалаарай (мөн нууцыг та мэдэх болно).

Би API өгөгдлийг авахын тулд Python дахь Requests модулийг ашигладаг YouTube Subscriber Counter -ийн бүтцэд ашигладаг скриптийг дасан зохицож эхэллээ. Миний ашигласан скрипт нь GitHub дээр байгаа тул та зөвхөн Dark Sky API түлхүүрээ нэмж, Latitude & Longitude -ийн өөрийн утгыг орлуулах хэрэгтэй болно.

Одоогийн цаг агаарын нөхцөл байдлын талаархи мэдээллийг буулгах нь маш энгийн байсан тул би "Icon", "Хур тунадасны магадлал", "Температур" элементүүдийг ашиглахаар шийдсэн.

Алхам 3: Код

Код
Код

Хэрэв та миний ашигласан кодыг дахин ашиглах эсвэл трамплин ашиглахыг хүсвэл энэ нь GitHub дээрх WeatherMan репозиторид байгаа - клон хийх эсвэл "цаг агаар" фолдерыг Raspberry Pi дээрх "pi" фолдерт татаж авах.

Скриптийн үндсэн функцууд дараах байдалтай байна.

цаг уурчин

Энэ бол Dark Sky -аас цаг агаарын мэдээллийг гаргаж авдаг гол скрипт юм. Та https://darksky.net/dev хаягаар Dark Sky данс нээж, нууц түлхүүрээ заасан скриптэд оруулах хэрэгтэй болно. Та мөн сонирхож буй цаг агаарын байршлын өргөрөг, уртраг оруулах шаардлагатай болно. Үүнийг Google газрын зураг дээрээс олж болно, хулганы баруун товчийг дараад "Энд юу байна?" Гэж сонгоно уу. мөн та байршлын урт/уртыг харуулсан попап цонх авах болно.

API өгөгдлийг авсны дараа weatherman.py параметрүүдийг хэд хэдэн жижиг скриптүүдэд дамжуулж, хөдөлгөөнт дүрс болон чихэвчний эвдрэлийг эхлүүлнэ.

Скриптийг эхлүүлэх файлыг засварлах замаар эхлүүлэхээр тохируулсан болно …

sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart

… нэмж байна:

@python3 /home/pi/weather/weatherman.py &

файлын төгсгөлд.

дүрс.py

Энэ скрипт нь weatherman.py скриптээс "одоогийн нөхцөл" гэсэн параметрийг авч 16x16 цаг агаарын анимацийг харуулахад ашигладаг бөгөөд эдгээр нь бүгд "дүрс" хавтсанд хадгалагддаг бөгөөд Unicorn HAT HD стандарт баримт бичгийн нэг хэсэг юм. Та-p.webp

утас.py

Хэрэв сүүлийн API хүсэлтээс цаг агаарын нөхцөл өөрчлөгдсөн бол (эсвэл энэ нь шинэхэн ачаалалт, цас ороогүй) бол энэ скриптийг weatherman.py -ээс дуудсан бөгөөд servo -ийг "наах" -ыг зааж өгөхийн тулд танд нөхцөл байгаа эсэхийг мэдэгдэх болно. өөрчлөгдсөн.

precip.py

Энэ скрипт нь weatherman.py -аас "хур тунадас орох магадлал" гэсэн параметрийг хүлээн авч, % магадлалтай холбоотой Unicorn HAT дээр цэнхэр өнгөөр зурсан зургуудыг харуулна. Хэрэв бүх 16 эгнээ 100% цэнхэр гэрэлтэх бол 50% нь зөвхөн 8 мөр гэх мэт.

temp.py

Өөр нэг стандарт Pimoroni скрипт бол энэ нь weatherman.py -аас "temp" параметрийг авч гүйлгэх текстээр харуулдаг. Энэ нь Herkules truetype фонтыг ("фонтууд" фолдерт) ашиглахаар тохируулагдсан боловч хэрэв та хүсвэл стандарт фонтыг ашиглаж болно. Та үүнийг сайжруулж болох бөгөөд ингэснээр дэлгэцийн текст нь температурын утгаас хамааран өнгө өөрчлөгдөж болно!

Алхам 4: Unicorn HAT & Servo

Unicorn HAT & Servo
Unicorn HAT & Servo
Unicorn HAT & Servo
Unicorn HAT & Servo
Unicorn HAT & Servo
Unicorn HAT & Servo

Цаг агаарын мэдээллийг барьж авах нь үнэхээр гайхалтай байсан, гэхдээ одоо би үүнийг Unicorn HAT дээр харуулах хэрэгтэй болсон. Би интернэтээс цаг агаарын янз бүрийн дүрсүүдийг хараад эдгээрийг дасан зохицох явцад Пиморонигийн баримт бичигт цаг агаарын жишээ, цаг агаарын анимаци орсон байгааг олж мэдсэн.

Энэ нь асар их ажлыг хэмнэсэн бөгөөд би цаг алдалгүй ажиллаж байсан бөгөөд одоогийн нөхцөл байдлын хөдөлгөөнт дүрс, температурын гүйлгэх текст, хур тунадасны % график (зарим хөнгөн математикийг оролцуулсан). Би скриптүүдийг тусад нь байлгаж, параметрүүдийг нааш цааш дамжуулахын тулд Python -ийн Subprocess модулийг ашигласан.

Бага зэрэг чимээ шуугиан тарьж, дургүйг нь хүргэхгүйн тулд servo-ийг нэмэх нь эдгээр дохиоллын хамгийн тохиромжтой хэрэгсэл байв. HAT аль хэдийн Pi -ийн олон зүүг авсны дараа би servo кабелийг самбарын доод талд гагнаж, Pin 17 ашиглан сервогийн өргөний модуляцийг ашиглан servo -ийн хөдөлгөөнийг хянадаг.

Pi -ээс servo -ийг ажиллуулах нь тийм ч тохиромжтой биш байсан боловч үүнийг зөвхөн түр зуурын тоглоом хийхэд л ашиглах боломжтой байсан тул нарийвчлал нь тийм ч чухал биш байв. Энэ нь диаграммд үзүүлсэн шиг Браун кабелийг GND руу, Улааныг 5v, улбар шар (хяналтын кабель) GPIO17 руу холбосон.

Эцэст нь би саран дээрх сарьсан багваахай, наран дээр инээмсэглэсэн царай гэх мэт өөрийн хувийн мэдрэмжийг нэмж оруулахын тулд GIMP -ийн цаг агаарын анимацийн файлуудыг зассан. Би зүгээр л хөгжилтэй байхын тулд эхлүүлэх үед тоглуулах зориулалттай "Old Tech New Spec" хуурцагны хөдөлгөөнт дүрс нэмж оруулав.

Алхам 5: Чихэвчний жиргээ

Чихэвчний жиргээ
Чихэвчний жиргээ
Чихэвчний жиргээ
Чихэвчний жиргээ
Чихэвчний жиргээ
Чихэвчний жиргээ
Чихэвчний жиргээ
Чихэвчний жиргээ

WeatherMan -ийн санаа бол энэ нь миний ширээний чанга яригч дээр идэвхгүй сууж, хааяа цаг агаарыг харуулдаг байсан, гэхдээ би үүнийг арай илүү хийхийг хүсч байсан юм! Үүнтэй хамт ирсэн чихэвч нь шарсан талх боловч 80 -аад оны сонгодог загвар байсан тул би тэдэнтэй хамт ямар нэгэн зүйл хийхээр шийдлээ. Бүх кабелийг хуулж, эвдэрсэн хэсгийг халуун нааж хийсний дараа би гурван хэсэгтэй, 3.5 мм-ийн залгуур, алмазан хэлбэртэй товчлуур, утаснууд нь уян хатан металл туузан дээр үлдсэн байв.

Хэрэв би утсыг төхөөрөмжийн дээд хэсэгт холбох аргыг олж чадвал тэдгээрийг servo ашиглан урагш хойш нь эргүүлж, үүнийг нэмэлт мэдэгдэл болгон ашиглах боломжтой болно гэсэн санаа надад төрсөн юм.

Эхлээд би 3.5 мм -ийн залгуурыг өрөмдөж, очир алмаазыг задалж, дараа нь тэдгээрийг урсгалтай саваа руу шургуулав. Дараа нь би хуванцар холбогч дээр самар наасан бөгөөд ингэснээр саваа нь servo дээр найдвартай (шулуун) суух боломжтой болно. Савааны нөгөө үзүүрт би өөр самар нэмэв. Эцэст нь би саарал Sugru -ийг ашиглан савааны дээд хэсгийг чихэвчний хамтлагт холбож, угсралтын доод хэсэгт байгаа самарыг таглав. Хэрэв та Sugru -ийн талаар сонсоогүй бол энэ нь жижиг өнгийн уутанд байдаг цавуугаар хийсэн цавуу юм - энэ нь Play -Doh шиг хөгцөрдөг боловч супер цавуу шиг наалддаг бөгөөд хуванцар шиг хатуу бэхэлдэг!

Саяхан хүйтэн цаг агаартай бол Сугру хэд хоногийн турш бүрэн хатуурсан боловч чихэвч болон тавиур удалгүй эцсийн угсралтад бэлэн болжээ.

Алхам 6: Чуулган

Чуулган
Чуулган
Чуулган
Чуулган
Чуулган
Чуулган
Чуулган
Чуулган

Pi, HAT, Servo бүгд вандан сандал дээр сайн ажиллаж байсан тул дараагийн ажил бол тэднийг хэрэгт оруулах явдал байв. Том бүрэлдэхүүн хэсгүүдийг эхлүүлэхийн өмнө би дууны товчлуур, чихэвчний залгуур, "металл соронзон хальс" унтраалга зэргийг засахын тулд үлдсэн саарал өнгийн Sugru-ийг ашиглан гоо сайхны бүтээгдэхүүнийг ялгаж авав. Би мөн анхны Play, Stop, FF & Rew товчлууруудыг хуванцар хоолойд наасан бөгөөд ингэснээр тэд зөв газартаа үлдэх болно. Энэ удаад ямар ч товчлуурыг дахин ашиглахгүй байх нь ичмээр байсан ч тэдэнд хянах зүйл үнэхээр байгаагүй!

Би саарал өнгийн Sugru -ийн сүүлийг ашиглаж, servo -ийг байрлалд нь барьж, босоо ам нь томорсон чихэвчний залгуураар цоолж байв. Тохиолдлын нөгөө хагаст шилжихдээ HAT ба Pi угсралтыг соронзон хальсны хаалган дээр бэхлэхийн тулд хэдэн хар өнгийн Сугру ашиглав. GeoMag -ийн соронзонд бэхлэх хаалгыг чанга барихын тулд би хамгийн сүүлчийн мэдрэгчийг маш их таалсан.

Pi & Servo хоёр хоорондоо мөргөлдөх вий гэж айж байсан тул хоёр хагасыг нэгтгэх нь маш хэцүү ажил байсан боловч эцэст нь миний номонд хангалттай миллиметр зай үлдсэн байв. Хөгжилтэй нээлтийн хаалга нь ирээдүйд засвар үйлчилгээ хийх үүднээс дотоод засал чимэглэлд бүрэн нэвтрэх боломжийг олгодог тул би хоёр талыг нь халуухан нааж, тослог хурууны хээгээ арчсаны дараа чихэвчний угсралтыг суурилууллаа.

Алхам 7: Чимээгүй сэтгэл гутрал

Чимээгүй хүсэл тэмүүлэл
Чимээгүй хүсэл тэмүүлэл
Чимээгүй хүсэл тэмүүлэл
Чимээгүй хүсэл тэмүүлэл

Дахин ашиглах тэмцээний хоёр дахь шагнал

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