Cuprins:

Cloud Forecast Weather: 11 pași (cu imagini)
Cloud Forecast Weather: 11 pași (cu imagini)

Video: Cloud Forecast Weather: 11 pași (cu imagini)

Video: Cloud Forecast Weather: 11 pași (cu imagini)
Video: Giant Boeing 747 Vertical Takeoff | X-Plane 11 2024, Noiembrie
Anonim
Cloud Weather Forecast
Cloud Weather Forecast

Acest proiect creează un cloud meteo folosind un Raspberry Pi Zero W. Se conectează la Yahoo Weather API și în funcție de prognoza pentru ziua următoare schimbă culorile.

M-am inspirat din clădirea cu gaz din Wisconsin care are o flacără pe acoperiș care se schimbă în funcție de prognoză. Este un punct de reper iconic în Milwaukee, WI.

Următorul poem merge cu el.

Când flacăra este roșie, este vreme caldă înainte! Când flacăra este aurie, ai grijă la frig! Când flacăra este albastră, nu există nicio schimbare în vedere! Când există o flacără pâlpâitoare, așteaptă zăpadă sau ploaie!

Am crezut că un nor ar arăta mai frumos pe perete. Pentru cod, dacă maximul prognozat pentru ziua următoare este mai mare de 10% mai cald, acesta va fi roșu, dacă minimul prognozat este cu mai mult de 10% mai rece, va fi auriu. Dar doar în cazul în care ambele criterii sunt îndeplinite, culoarea roșie va câștiga întotdeauna. Dacă niciunul dintre criterii nu este îndeplinit, norul rămâne albastru. Dacă în prognoză este ploaie sau zăpadă, aceasta va clipi.

Pasul 1: actualizați 2019

Se pare că Yahoo a întrerupt acest API pe care l-am folosit pentru asta. Deci, în prezent, acest ghid nu va funcționa pentru acea porțiune. Mai multe informații pot fi văzute la

Pasul 2: Piese necesare

Imagine
Imagine
  • Benzi Neopixels - 60 LED-uri pe metru
  • Suporturi pentru rame pentru dinți de ferăstrău
  • 3M SJ5302 Clear Bumpon
  • Scândură de stejar S4S de 1/2 in x 6 in x 3 ft
  • Scândură de 1/8"
  • 1/8 "Acrilic alb translucid
  • Diblă de lemn de 1/8"
  • Finisaj lemn ulei natural danez Watco, de asemenea, nuc închis opțional pentru unele nori în plus
  • Lipici de lemn
  • Hot Glue Gun
  • Arma discontinua
  • Sârmă cu miez din mână din silicon - 25 picioare 26AWG - roșu, negru și albastru
  • Raspberry Pi Zero W
  • Card Micro SD
  • Cablu USB alb - sau tăiați unul pe care l-ați așezat

Pasul 3: Decupați piesele

Imagine
Imagine

Am inclus fișierul svg pentru tăierea acestora. După cum vedeți, există 4 straturi. S-ar putea să vedeți în restul ghidului că am părțile răsucite, deoarece am avut o accidentă tăiată pe stratul superior și l-am răsturnat pentru a ascunde pata.

Pe stratul 2 și 4 trebuie să existe o inserție adâncă de 1/8 între calea interioară și calea de mijloc. Acest lucru va permite difuzorului și plăcii din spate să fie încastrate. Am folosit acril translucid pentru difuzor și panou dur pentru placa din spate.

Imagine
Imagine

Aceasta a fost imaginea de previzualizare pe Shapeoko3 înainte de a tăia piesele. Reutilizăm norii din interior mai târziu în ghid, așa că nu le aruncați la gunoi.

Imagine
Imagine

Forma de nor utilizată a fost de la softicons.com, deoarece abilitățile mele de desen nu sunt la fel de bune.

Pasul 4: Asamblați norul

Imagine
Imagine

Odată ce părțile sunt tăiate, îl puteți lipi împreună, doar două piese au nevoie de lipici. Diblul 1/8 este apoi pus în găuri pentru a ajuta la alinierea. Nu am folosit niciun adeziv în acestea, astfel încât să le pot îndepărta odată ce straturile sunt lipite între ele.

Imagine
Imagine
Imagine
Imagine

Folosiți câteva cleme pentru a menține piesele strânse între ele în timpul uscării. Ștergeți orice adeziv în exces care se varsă din cusături.

Imagine
Imagine

În timp ce adezivul se usucă, am luat bucățile de fier vechi din interior și le-am șlefuit cu 150 grit și apoi 220 grit. Am aplicat apoi o ștergere pe pată. Am folosit ulei danez Watco în nuc negru pentru unii și natural pentru ceilalți. Cu o cârpă curată, puneți niște pete și pur și simplu ștergeți pe nori. Lăsați deoparte și lăsați să se usuce. Asigurați-vă că atârnați corect cârpa pentru a se usca, astfel încât să nu ardă din uleiuri.

Este, de asemenea, un moment bun pentru a pata stratul superior. În acest fel, nu veți mai avea pete peste difuzor mai târziu.

Pata norul principal

Odată ce lipiciul este uscat, puteți șlefui și colora norul principal folosind uleiul natural danez.

Imagine
Imagine

Pasul 5: Adăugați banda Neopixel

Imagine
Imagine

Pentru a determina cantitatea de bandă necesară, am pus-o în interior și m-am asigurat că a ajuns la toate părțile. Am ajuns să folosesc 19 benzi. Dar după lipire mi-am dat seama că ar fi trebuit să folosesc 20.

Imagine
Imagine

Am îndepărtat apoi învelișul de cauciuc din jurul benzii, deoarece nu aveam nevoie de acea piesă. Acum trebuia să adaug fire pe bandă pentru a le atașa la Pi Zero.

Imagine
Imagine

Am găsit că funcționează mai bine dacă pre-lipiți capătul de pe bandă împreună cu capetele firului.

Imagine
Imagine

Acum lipiți firele de decupat.

Imagine
Imagine

Cu placa de inserare din spate aplicată o picătură de adeziv fierbinte pe câteva locuri pentru a ține banda NeoPixel pe marginile norului. Încercați să păstrați banda cât mai aproape de placa posterioară. După cum puteți vedea aici, ar fi trebuit să folosesc un alt LED pe bandă.

Pasul 6: Adăugați difuzorul și stratul superior

Imagine
Imagine

Setați stratul difuzor în inserție și aplicați o cantitate ușoară de adeziv în partea superioară.

Imagine
Imagine

Acum la fel ca înainte atașați stratul superior și fixați-l în jos. Asigurați-vă că îl aliniați la celelalte straturi cât mai bine posibil și ștergeți cu adeziv în exces.

Pasul 7: lipiți-l

Imagine
Imagine

Cablarea este destul de simplă pentru asta.

GPIO 18 pe Pi to Din Neopixel

5V de la Pi la 5V Neopixel

GND de la Pi la GND Neopixel

Imagine
Imagine

Înainte de a lipi cablul USB, trebuie să facem o gaură pentru acesta. Cablul meu avea un pic sub 3 mm, așa că am forat o gaură folosind un bit de 3 mm, asigurându-mă că nu mă forez în banda de neopixeli.

Imagine
Imagine

Tăiați capătul care nu are capătul masculin care se conectează la computer. Apoi scoateți o parte din ecranare pentru a accesa firele. Avem nevoie doar de firele roșii (5V) și negre (GND).

Imagine
Imagine

Iată cum ar trebui să arate totul lipit.

Pasul 8: Configurați Pi

Primul lucru necesar este un card SD pe care este încărcat sistemul de operare. Am folosit Raspbian Jessie Lite.

Folosiți un program precum etcher.io pentru a arde imaginea pe cardul SD. Odată ce acest lucru este complet, va trebui să adăugăm două fișiere în directorul de pornire, astfel încât pi să aibă ssh activat și informațiile corecte despre wifi.

Deschideți fișierul wpa_supplicant.conf cu un editor de text și introduceți-vă ssid-ul wifi și parola. Apoi adăugați fișierul pe cardul SD. Pentru a activa ssh avem nevoie doar de un fișier etichetat ssh, fără extensii introduse și pe cardul SD.

O explicație mai bună a acestui lucru poate fi găsită și în acest ghid la adafruit.com

Conectează-te la Pi

Folosesc un program numit chit și SSH în Pi. Unele documentații despre acest lucru pot fi găsite pe site-ul web Raspberry Pi.

O diferență este că ei au găsit adresa IP a pi. Mi s-a părut mai ușor să folosesc doar numele gazdei pentru a vă conecta, care este raspberrypi.local

Instalați bibliotecile necesare

Mai întâi avem nevoie de pip, așa că rulați această comandă

sudo apt-get install python-pip

Acum putem instala solicitări.

solicitări de instalare pip

În continuare vom instala elementele necesare pentru a utiliza NeoPixels. Acești pași sunt preluați dintr-un ghid intitulat NeoPixels on Raspberry Pi de pe site-ul web Adafruit.

sudo apt-get install build-essential python-dev git scons swig

După aceea, executăm aceste comenzi

git clone

cd rpi_ws281x scons

Atunci

cd python

sudo python setup.py instalare

Acum ar trebui să fie instalate toate bibliotecile necesare.

Descărcați programul pe Pi

Aș recomanda să obțineți fișierele din depozitul GitHub, deoarece codul se poate schimba sau poate fi remediat uneori.

Puteți tăia și lipi conținutul într-un fișier nou sau puteți utiliza WinSCP pentru a transfera fișierele.

Dacă tăiați și lipiți, veți dori să creați un fișier nou folosind această comandă

sudo nano cloud.py

Apoi lipiți conținutul cloud.py

Odată ajuns acolo, este posibil să trebuiască să schimbați câteva valori. Dacă ați folosit o cantitate diferită de NeoPixels sau pin GPIO

Imagine
Imagine

Dacă cantitatea de NeoPixeli utilizată este diferită, modificați LED_COUNT. La fel dacă pinul GPIO utilizat este diferit, modificați LED_PIN

Imagine
Imagine

De asemenea, pe linia 72 aveți nevoie să schimbați locația, cu excepția cazului în care doriți prognoza pentru sheboygan.

Rulați codul

Odată ce ați făcut modificările, puteți testa codul.

sudo python cloud.py

Imagine
Imagine

Norul ar trebui să se lumineze acum și în fereastra terminalului ar trebui să-l vedeți ieșind ce este cel mai mare și cel mai mic din ziua de azi, împreună cu mâinile mari și mici.

Setați să ruleze automat la pornire

Pentru a configura pornirea automată, am urmat acest ghid de pe site-ul web Raspberry Pi

Aceasta este linia de cod pe care am adăugat-o în fișierul rc.local.

python /home/pi/cloud.py &

Pasul 9: Finalizați asamblarea

Imagine
Imagine

Am folosit un marker pentru a măsura și a încerca să găsesc centrul cât de bine am putut. Am atașat apoi cuierele din dinți de fierăstrău și apoi două bare de protecție din cauciuc.

Imagine
Imagine

Pentru a atașa Pi, m-am întors la pistolul de încredere cu adeziv fierbinte și am pus un pic de adeziv fierbinte pe spatele Pi și l-am atașat la panoul din spate.

Imagine
Imagine

Am folosit o șurubelniță pentru a crea un spațiu în capsă.

Imagine
Imagine

Îndoi apoi capse pentru a ține placa din spate.

Terminați nori mici

Imagine
Imagine

Norii mici au nevoie fiecare de un cuier și de două bare de protecție.

Pasul 10: Imprimare 3D

Am inclus și fișierele STL pentru dacă nu aveți acces la mașina CNC din lemn. Este inclus și fișierul de proiectare Autodesk Fusion 360. În acest fel puteți modifica designul pentru a-l optimiza pentru imprimare.

Pasul 11: Gânduri finale

Acest proiect a ieșit destul de bine. Îmi place foarte mult aspectul stejarului comparativ cu MDF într-un alt proiect pe care l-am făcut. Mi-aș fi dorit să fac asta cu o placă esp8266, dar abilitățile mele cu Arduino IDE și JSON nu sunt la fel de bune ca și cu Pi.

Unele adăugiri viitoare la acest proiect ar fi un afișaj pe 7 segmente în spatele difuzorului, astfel încât să poată arăta și temperatura actuală.

De asemenea, am pus fișierele în GitHub și am adăugat cod pentru dacă aveți un Pimoroni Blinkt, Pimoroni Unicorn PHAT sau un Raspberry PI Sense Hat

Concurs Internet of Things 2017
Concurs Internet of Things 2017
Concurs Internet of Things 2017
Concurs Internet of Things 2017

Marele premiu la concursul Internet of Things 2017

Provocare de neatins
Provocare de neatins
Provocare de neatins
Provocare de neatins

Locul doi în Provocarea de neatins

Concurs de lumini 2017
Concurs de lumini 2017
Concurs de lumini 2017
Concurs de lumini 2017

Premiul II la Concursul de Lumini 2017

Recomandat: