Inhoudsopgave:

Weersvoorspelling Cloud: 11 stappen (met afbeeldingen)
Weersvoorspelling Cloud: 11 stappen (met afbeeldingen)

Video: Weersvoorspelling Cloud: 11 stappen (met afbeeldingen)

Video: Weersvoorspelling Cloud: 11 stappen (met afbeeldingen)
Video: Wanneer een douche nemen te duur is... 2024, November
Anonim
Weersvoorspelling Wolk
Weersvoorspelling Wolk

Dit project maakt een weerwolk met behulp van een Raspberry Pi Zero W. Het maakt verbinding met de Yahoo Weather API en verandert, afhankelijk van de voorspelling voor de volgende dag, van kleur.

Ik werd geïnspireerd door het Wisconsin Gas Building met een vlam op het dak die verandert afhankelijk van de voorspelling. Het is een iconisch monument in Milwaukee, WI.

Het volgende gedicht hoort erbij.

Als de vlam rood is, is het warm weer! Als de vlam goud is, pas op voor kou! Als de vlam blauw is, is er geen verandering in zicht! Als er een flikkerende vlam is, verwacht dan sneeuw of regen!

Ik dacht dat een wolk mooier zou staan aan de muur. Voor de code als de voorspelde hoogte voor de volgende dag meer dan 10% warmer is, zal deze rood zijn, als de voorspelde laag meer dan 10% kouder is, zal het goud zijn. Maar als aan beide criteria wordt voldaan, wint de kleur rood altijd. Als aan geen van beide criteria wordt voldaan, blijft de wolk blauw. Als er regen of sneeuw in de voorspelling is, knippert deze.

Stap 1: update 2019

Het lijkt erop dat Yahoo deze API die ik hiervoor heb gebruikt, heeft stopgezet. Dus momenteel werkt deze gids niet voor dat gedeelte. Meer info is te zien op

Stap 2: benodigde onderdelen

Afbeelding
Afbeelding
  • Neopixels Strip - 60 LEDS per meter
  • Zaagtand Fotolijst Hangers
  • 3M SJ5302 Doorzichtige stootrand
  • 1/2 inch x 6 inch x 3 ft. S4S eikenhouten bord
  • 1/8" hardboard
  • 1/8" acryl wit doorschijnend
  • 1/8 "houten plug
  • Watco Natural Danish Oil Wood Finish ook Dark Walnut optioneel voor wat extra wolken
  • Houtlijm
  • Heet lijmpistool
  • Nietmachine
  • Siliconen hoes met gevlochten kerndraad - 25ft 26AWG - rood, zwart en blauw
  • Raspberry Pi Zero W
  • Micro SD kaart
  • USB-kabel Wit - of knip er een uit die je hebt liggen

Stap 3: Knip de onderdelen uit

Afbeelding
Afbeelding

Ik heb het svg-bestand opgenomen om deze uit te knippen. Zoals je ziet zijn er 4 lagen. U kunt in de rest van de handleiding zien dat mijn onderdelen zijn omgedraaid omdat ik een snijwond had op de bovenste laag en deze heb omgedraaid om de vlek te verbergen.

Op laag 2 & 4 moet er een 1/8 diepe inzet zijn tussen het binnenpad en het middenpad. Hierdoor kunnen de diffuser en achterplaat worden verzonken. Ik heb doorschijnend acryl gebruikt voor de diffuser en hardboard voor de achterplaat.

Afbeelding
Afbeelding

Dit was de voorbeeldafbeelding op mijn Shapeoko3 voordat ik de onderdelen uitsneed. We hergebruiken de binnenwolken later in de gids, dus gooi ze niet weg.

Afbeelding
Afbeelding

De gebruikte wolkvorm was van softicons.com omdat mijn tekenvaardigheden niet zo goed zijn.

Stap 4: Monteer de cloud

Afbeelding
Afbeelding

Zodra de delen zijn gesneden, kunt u deze aan elkaar lijmen, slechts twee stukken hebben de lijm nodig. De 1/8 plug wordt vervolgens in de gaten geplaatst om te helpen uitlijnen. Ik heb er geen lijm in gebruikt, dus ik kon ze verwijderen zodra de lagen aan elkaar zijn gelijmd.

Afbeelding
Afbeelding
Afbeelding
Afbeelding

Gebruik enkele klemmen om de onderdelen tijdens het drogen stevig op elkaar te houden. Veeg overtollige lijm weg die uit de naden komt.

Afbeelding
Afbeelding

Terwijl de lijm aan het drogen is, heb ik de stukjes schroot van binnenuit gehaald en geschuurd met korrel 150 en vervolgens korrel 220. Ik heb toen een doekje op de vlek aangebracht. Ik gebruikte Watco Danish Oil in Dark Walnut voor sommigen en Natural voor de anderen. Met een schone doek wat vlek aanbrengen en gewoon op de wolken vegen. Zet opzij en laat drogen. Zorg ervoor dat u de doek goed uithangt om te drogen, zodat deze niet verbrandt door de olie.

Het is ook een goed moment om de toplaag te beitsen. Zo krijg je later geen vlekken op de diffuser.

Vlek in de hoofdwolk

Zodra de lijm droog is, kunt u de hoofdwolk schuren en beitsen met de natuurlijke Deense olie.

Afbeelding
Afbeelding

Stap 5: Voeg de Neopixel-strip toe

Afbeelding
Afbeelding

Om de benodigde hoeveelheid strip te bepalen, heb ik deze erin geplaatst en ervoor gezorgd dat deze alle delen bereikte. Ik heb uiteindelijk 19 strips gebruikt. Maar na het lijmen realiseerde ik me dat ik er 20 had moeten gebruiken.

Afbeelding
Afbeelding

Ik heb toen het rubberen omhulsel rond de strip verwijderd omdat ik dat onderdeel niet nodig had. Nu moest ik draden aan de strip toevoegen om aan de Pi Zero te bevestigen.

Afbeelding
Afbeelding

Ik heb gemerkt dat het beter werkt als je het uiteinde van de strip samen met de uiteinden van de draad vooraf soldeert.

Afbeelding
Afbeelding

Soldeer nu de draden om te strippen.

Afbeelding
Afbeelding

Breng met de achterste inzetplaat een beetje hete lijm aan op een paar plekken om de NeoPixel-strip tegen de randen van de wolk te houden. Probeer de strip zo dicht mogelijk bij de achterplaat te houden. Zoals je hier kunt zien, had ik een andere LED op de strip moeten gebruiken.

Stap 6: voeg de diffuser en de bovenste laag toe

Afbeelding
Afbeelding

Plaats de diffusorlaag in de inzet en breng een lichte hoeveelheid lijm aan rond de bovenkant.

Afbeelding
Afbeelding

Nu hetzelfde als voorheen de bovenste laag bevestigen en vastklemmen. Zorg ervoor dat het zo goed mogelijk op de andere lagen wordt uitgelijnd en veeg overtollige lijm weg.

Stap 7: Soldeer het op

Afbeelding
Afbeelding

Bedrading is hiervoor vrij eenvoudig.

GPIO 18 op de Pi naar Din Neopixel

5V van Pi naar 5V Neopixel

GND van Pi naar GND Neopixel

Afbeelding
Afbeelding

Voordat we de USB-kabel solderen, moeten we er een gat voor boren. Mijn snoer was iets minder dan 3 mm, dus ik boorde een gat met een bit van 3 mm en zorgde ervoor dat ik niet in de neopixelstrip boor.

Afbeelding
Afbeelding

Snijd het uiteinde af dat niet het mannelijke uiteinde heeft dat op de computer wordt aangesloten. Verwijder vervolgens een deel van de afscherming om toegang te krijgen tot de draden. We hebben alleen de rode (5V) en zwarte (GND) draden nodig.

Afbeelding
Afbeelding

Hier is hoe het er allemaal gesoldeerd uit moet zien.

Stap 8: Stel de Pi. in

Het eerste dat nodig is, is een SD-kaart waarop het besturingssysteem is geladen. Ik gebruikte Raspbian Jessie Lite.

Gebruik een programma zoals etcher.io om de afbeelding op de SD-kaart te branden. Zodra dat is voltooid, moeten we twee bestanden toevoegen aan de opstartmap, zodat de pi ssh heeft ingeschakeld en de juiste wifi-informatie heeft.

Open het bestand wpa_supplicant.conf met een teksteditor en zet je wifi ssid en wachtwoord erin. Voeg vervolgens het bestand toe aan de SD-kaart. Om ssh in te schakelen, hebben we alleen een bestand met het label ssh nodig zonder dat er ook extensies op de SD-kaart staan.

Een betere uitleg hiervan is ook te vinden in deze gids op adafruit.com

Verbinding maken met Pi

Ik gebruik een programma genaamd putty en SSH in de Pi. Enige documentatie hierover is te vinden op de Raspberry Pi-website.

Een verschil is dat ze je het IP van de pi laten vinden. Ik heb het gemakkelijker gevonden om gewoon de hostnaam te gebruiken om verbinding te maken, namelijk raspberrypi.local

Benodigde bibliotheken installeren

Eerst hebben we pip nodig, dus voer deze opdracht uit

sudo apt-get install python-pip

Nu kunnen we verzoeken installeren.

pip installatieverzoeken

Vervolgens zullen we de items installeren die nodig zijn om de NeoPixels te gebruiken. Deze stappen zijn afkomstig uit een gids met de titel NeoPixels op Raspberry Pi van de Adafruit-website.

sudo apt-get install build-essentiële python-dev git scons swig

Daarna voeren we deze commando's uit:

git kloon

cd rpi_ws281x scons

Vervolgens

cd python

sudo python setup.py installeren

Nu moeten de vereiste bibliotheken allemaal zijn geïnstalleerd.

Download het programma op de Pi

Ik zou aanraden om de bestanden uit de GitHub-repository te halen, omdat de code op sommige momenten kan veranderen of worden opgelost.

U kunt de inhoud knippen en plakken in een nieuw bestand of WinSCP gebruiken om de bestanden over te brengen.

Als je knipt en plakt, wil je een nieuw bestand maken met deze opdracht

sudo nano cloud.py

Plak vervolgens de inhoud van cloud.py

Als u daar eenmaal bent, moet u mogelijk een paar waarden wijzigen. Als u een ander aantal NeoPixels of GPIO-pins hebt gebruikt

Afbeelding
Afbeelding

Als het aantal gebruikte NeoPixels anders is, wijzigt u LED_COUNT. Hetzelfde als de gebruikte GPIO-pin anders is, verander LED_PIN

Afbeelding
Afbeelding

Ook op lijn 72 moet je de locatie wijzigen, tenzij je de voorspelling voor Sheboygan wilt.

Voer de code uit

Zodra u uw wijzigingen heeft aangebracht, kunt u de code testen.

sudo python cloud.py

Afbeelding
Afbeelding

De wolk zou nu moeten oplichten en in het terminalvenster zou je moeten zien wat het hoog en laag van vandaag is, samen met het hoog en laag van morgen.

Instellen op automatisch starten bij opstarten

Om automatisch starten te configureren, heb ik deze handleiding van de Raspberry Pi-website gevolgd

Dit is de regel code die ik aan het bestand rc.local heb toegevoegd.

python /home/pi/cloud.py &

Stap 9: Voltooi de montage

Afbeelding
Afbeelding

Ik gebruikte een marker om te meten en probeer het centrum zo goed mogelijk te vinden. Ik heb toen de zaagtandhangers en vervolgens twee rubberen bumpers bevestigd.

Afbeelding
Afbeelding

Om de Pi te bevestigen ging ik terug naar mijn vertrouwde hete lijmpistool en deed een beetje hete lijm op de achterkant van de Pi en bevestigde deze aan het achterpaneel.

Afbeelding
Afbeelding

Ik heb een schroevendraaier gebruikt om een ruimte in het nietje te maken.

Afbeelding
Afbeelding

Vervolgens buig ik de nietjes om om de achterplaat vast te houden.

Maak kleine wolken af

Afbeelding
Afbeelding

De kleine wolken hebben elk een hanger en twee bumpers nodig.

Stap 10: 3D-printen

Ik heb ook de STL-bestanden bijgevoegd voor als je geen toegang hebt tot een houten CNC-machine. Het Autodesk Fusion 360-ontwerpbestand is ook inbegrepen. Op die manier kunt u het ontwerp aanpassen om te optimaliseren voor afdrukken.

Stap 11: Laatste gedachten

Dit project is redelijk goed gelukt. Ik hou echt van het uiterlijk van de eik in vergelijking met de MDF in een ander project dat ik deed. Ik had dit graag gedaan met een esp8266-bord, maar mijn vaardigheden met de Arduino IDE en JSON zijn niet zo goed als met de Pi.

Enkele toekomstige toevoegingen aan dit project zijn een 7-segments display achter de diffuser, zodat het ook de huidige temperatuur kan weergeven.

Ik heb ook de bestanden op GitHub gezet en code toegevoegd voor als je een Pimoroni Blinkt, Pimoroni Unicorn PHAT of een Raspberry PI Sense Hat hebt

Internet of Things-wedstrijd 2017
Internet of Things-wedstrijd 2017
Internet of Things-wedstrijd 2017
Internet of Things-wedstrijd 2017

Hoofdprijs in de Internet of Things-wedstrijd 2017

Onaantastbare uitdaging
Onaantastbare uitdaging
Onaantastbare uitdaging
Onaantastbare uitdaging

Runner Up in de Untouchable Challenge

Lichtenwedstrijd 2017
Lichtenwedstrijd 2017
Lichtenwedstrijd 2017
Lichtenwedstrijd 2017

Tweede prijs in de Lichtwedstrijd 2017

Aanbevolen: