Indholdsfortegnelse:
- Forbrugsvarer
- Trin 1: Vejrdata
- Trin 2: Opsætning af RPi og skrivning af koden
- Trin 3: Konfiguration af Weather API
- Trin 4: Brugerdefineret printkort
Video: Digitalt RPi LED -termometer: 6 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Raspbian OSLær hvordan jeg lavede dette digitale LED -termometer med en Raspberry Pi Zero W, LED -strip, en OLED -skærm og et brugerdefineret printkort.
Det cykler automatisk en liste over byer og viser temperaturen på OLED -displayet og LED'erne. Men du kan også manuelt vælge en by, der skal vises, med knapperne på siden. Oven i det lukker det LED'erne og OLED'en, hvis den har været inaktiv i et par minutter, og tændes igen, hvis den registrerer en betydelig lysændring (styret af en LDR).
Forbrugsvarer
- Et Raspberry Pi Zero W og SD-kort med Raspbian OS
- Et 1,5 tommer OLED -modul fra Waveshare
- En 5V 2.4A strømforsyning til Raspberry Pi
- En 5m WS2812B LED Strip, 30 LEDs/m
- Skruer, skiver, bolte og afstande.
- Et brugerdefineret printkort, med knapper, en switch, en ldr, pin-headers og mere
- Loddejern og lodde
- Varm lim
- Trælim
- 4 mm og 6 mm krydsfiner
- 3 mm hvid akryl
Trin 1: Vejrdata
Kredit til StuffWithKirby for hans kode om læsning af JSON -vejrdata i python.
Jeg indsamler vejrdata gratis fra OpenWeatherMap.org, hvor de leverer vejrdata fra mange af de større byer, i mange lande.
1. Start med at oprette en GRATIS konto på OpenWeatherMap.org.
2. Kopier derefter din api-nøgle til senere brug.
3. Download nu, pak ud og åbn filen city.list.json.gz, og søg efter de byer, du vil have vist, og kopier by-id'erne til senere.
Trin 2: Opsætning af RPi og skrivning af koden
Først sluttede jeg OLED til Pi og installerede de nødvendige biblioteker til OLED, som beskrevet af producenten, her.
Sørg for, at RPi er forbundet til internettet
1. Aktiver I2C- og SPI-funktionen i raspi-config under grænsefladeindstillinger. Afslut og genstart.
2. Kør dette for at opdatere:
sudo apt-get opdatering
3. Kør følgende kommandoer for at installere de nødvendige biblioteker:
sudo apt-get install python-dev
sudo apt-get install python-smbus sudo apt-get install python-serial sudo apt-get install python-imaging
4. Kør følgende kommando for at åbne konfigurationsfilen:
sudo nano /etc /modules
Sørg for, at de følgende to linjer er i konfigurationsfilen, og afslut derefter og genstart:
i2c-bcm2708
i2c-dev
5. Kør nu dette for at klone min GitHub -repo:
git-klon
6. Gå ind i den nye mappe, og pak RPi_GPIO-0_6_5.zip ud:
pak RPi_GPIO-0_6_5.zip ud
Kør dette for at installere biblioteket:
cd RPi_GPIO-0_6_5
sudo python setup.py installation
7. Gå tilbage til hovedmappen ved at skrive ved at skrive:
cd /home/pi/1.5inch-OLED-with-RPi/
Eller
cd..
Gør derefter nogle med spidev-3_2.zip.
8. Pak derefter wiringPi.zip ud:
udpakke ledningerPi
cd -ledningerPi
Og kør disse kommandoer:
chmod 777 build
./bygning
Kontroller installationen med:
gpio –v
9. Gå tilbage til hovedmappen, og pak bcm2835-1_45.zip ud
pak ud bcm2835-1_45.zip
cd bcm2835-1_45
10. Kør derefter dette for at installere biblioteket:
./konfiguration
lav sudo, tjek sudo lav installation
11. Gå igen til /home/pi/1.5inch-OLED-with-RPi/, og kør dette for at teste OLED:
cd/Demo_Code/Python/
sudo python main.py
Derefter skulle jeg også installere bibliotekerne til WS2812B LED-stripen, efter denne vejledning.
Derefter var det bare et spørgsmål om at skrive koden, som tog cirka et par måneder fra start til slut, arbejdede på den til og fra. Min kode kan findes på min GitHub her.
Trin 3: Konfiguration af Weather API
1. Cd til LED_Thermometer_Code_and_OLED_driver:
cd LED_Termometer_Kode_og_OLED_driver
2. Åbn derefter Official_Digital_LED_Thermometer_v1-0.py:
nano Official_Digital_LED_Thermometer_v1-0.py
Og rul derefter ned og rediger api-tasten, til din api-nøgle, fra openweathermap.org, som vist på billedet ovenfor. Skift også by-id'er og bynavne til dine ønskede placeringer.
Trin 4: Brugerdefineret printkort
Anden pris i Raspberry Pi Contest 2020
Anbefalede:
Digitalt niveau med tværlinjelaser: 15 trin (med billeder)
Digitalt niveau med tværlinjelaser: Hej alle sammen, i dag vil jeg vise dig, hvordan du laver et digitalt niveau med en valgfri integreret tværlinjelaser. For cirka et år siden lavede jeg et digitalt multi-værktøj. Selvom værktøjet indeholder mange forskellige tilstande, er det for mig den mest almindelige og nyttige
Arduino digitalt ur synkroniseret med 60Hz strømlinje: 8 trin (med billeder)
Arduino digitalt ur synkroniseret med 60Hz -strømlinjen: Dette Arduino -baserede digitale ur er synkroniseret med 60Hz -strømlinjen. Det har en enkel og billig fælles anode 4 -cifret 7 segment display, der viser timer og minutter. Den bruger en cross -over detektor til at registrere, når den indkommende 60Hz sinusbølge c
DigiLevel - et digitalt niveau med to akser: 13 trin (med billeder)
DigiLevel - et digitalt niveau med to akser: Inspirationen til dette instruerbare er DIY Digital Spirit Level fundet her af GreatScottLab. Jeg kunne godt lide dette design, men ønskede en større skærm med en mere grafisk grænseflade. Jeg ville også have bedre monteringsmuligheder for elektronikken i kassen
Musikspektrum med digitalt ur og temperatur: 9 trin (med billeder)
Musikspektrum med digitalt ur og temperatur: Vi er her igen med et projekt, du vil kunne lide. Hvis du kan lide at lytte til musik og nyde visualiteten, er dette projekt noget for dig. DIGITAL CLOCK MUSIC SPECTRUM ELEKTRONISK KIT MED TEMPERATURVISNING Dette er et elektronisk kit. Når du er færdig med pr
RPi vejrstation og digitalt ur: 4 trin (med billeder)
RPi Weather Station og digitalt ur: Dette er et hurtigt og let projekt at lave, og et godt display at vise frem. Det viser både tid, vejrforhold og temperatur. Og hvis du kan lide det, du ser, følg mig på Instagram og Twitter (@Anders644PI) for at følge med i det, jeg laver