Værklokke: 15 trinn (med bilder)
Værklokke: 15 trinn (med bilder)
Anonim

Flott skrivebordsklokke med dato- og værvisning.

Trinn 1: Last ned og installer programvare for RaspberryPI

Last ned "RASPBIAN JESSIE LITE"

Lag din nye harddisk for DashboardPI

Sett inn microSD -en på datamaskinen din via USB -adapteren, og lag diskbildet med kommandoen dd

Finn det innsatte microSD -kortet via kommandoen df -h, demonter det og lag diskbildet med kommandoen disk copy dd

$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/media/XXX/1234-5678

$ umount /dev /sdb1

Forsiktig: sørg for at kommandoen er helt nøyaktig, du kan skade andre disker med denne kommandoen

if = plassering av RASPBIAN JESSIE LITE bildefil av = plassering av microSD -kortet

$ sudo dd bs = 4M hvis =/path/to/raspbian-jessie-lite.img av =/dev/sdb (merk: i dette tilfellet er det/dev/sdb,/dev/sdb1 en eksisterende fabrikkpartisjon på microSD)

Sette opp RaspberriPi

Sett inn det nye microSD -kortet i raspberrypi og slå det på med en skjerm koblet til HDMI -porten

Logg Inn

bruker: pi pass: bringebær Endre passordet ditt for sikkerhet

sudo passwd pi Aktiver RaspberriPi avanserte alternativer

sudo raspi-config Velg: 1 Utvid filsystemet

9 Avanserte alternativer

A2 Hostname endre det til "EnvironmentClock"

A4 SSH Aktiver SSH -server

A7 I2C Aktiver i2c -grensesnitt Aktiver engelsk/amerikansk tastatur

sudo nano /etc /default /keyboard Endre følgende linje: XKBLAYOUT = "oss" Start PI på nytt for endringer i tastaturoppsett /endring av filsystem for å tre i kraft

$ sudo shutdown -r nå Koble automatisk til WiFi

sudo nano/etc.

network = {ssid = "linksys" psk = "WIRELESS PASSWORD HERE"} Start PI på nytt for å koble til WiFi -nettverk

$ sudo shutdown -r nå

Nå som PI -en din endelig er på det lokale nettverket, kan du logge eksternt på den via SSH. Men først må du få IP -adressen den har for øyeblikket.

$ ifconfig Se etter "inet addr: 192.168. XXX. XXX" i følgende kommandos utgang for din PIs IP -adresse Gå til en annen maskin og logg på raspberrypi via ssh

$ ssh [email protected]. XXX. XXX Begynn å installere nødvendige pakker

$ sudo apt-get oppdatering

$ sudo apt-get oppgradering

$ sudo apt-get install vim git python-request python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev

Oppdater lokale tidssoneinnstillinger

$ sudo dpkg-omkonfigurer tzdata velg din tidssone ved hjelp av grensesnittet Oppsett den enkle katalogen l-kommandoen [valgfritt]

$ vi ~/.bashrc

legg til følgende linje:

$ alias l = 'ls -lh'

$ source ~/.bashrc Fix VIM standardsyntaks utheving [valgfritt]

$ sudo vi/etc/vim/vimrc

ikke kommenter følgende linje:

syntaks på Clone Clock -depotet

$ cd ~

$ git -klon https://github.com/khinds10/EnvironmentClock.git Installer i2c -ryggsekk -Python -drivere

$ cd ~

$ git klon

$ cd Adafruit_Python_LED_Backpack/

$ sudo python setup.py installer DHT11 Install

$ cd ~

$ git klon

$ cd Adafruit_Python_DHT/

$ sudo python setup.py installere

$ sudo python ez_setup.py

$ cd eksempler/

$ vi simpletest.py Endre følgende linje:

sensor = Adafruit_DHT. DHT11 Kommenter linjen

pin = 'P8_11' Fjern kommentaren til linjen og endre PIN -nummeret til 16

pin = 16 Kjør testen

python simplestest.py

Du bør se en metrisk avlesning av Temp og fuktighet vist på kommandolinjen.

Trinn 2: Nødvendig rekvisita: 1,2 tommers LED -skjerm

Trinn 3: Nødvendig rekvisita: DHT11 Humidistat

Trinn 4: Nødvendig rekvisita: 2,6 "Digole -skjerm

|

Trinn 5: Nødvendig rekvisita: RaspberriPi Zero (eller vanlig RaspberriPi burde fungere)

Trinn 6: Bygg og koble skjermen

Forbered Digole Display for i2C

På baksiden av Digole -skjermen loddes jumperen for å tilordne skjermen til å bruke i2c -protokollen

Trinn 7: Skriv ut prosjektvedlegget

Bruk en 3D -skriver til å skrive ut kabinettfilene som er inkludert i mappen 'kabinett/'..x3g -filer er MakerBot -kompatible. Du kan også bruke.stl og.blend (Blender Program) -filene til å redigere og lage dine egne forbedringer av designet.

Bruk 4 skruer til å bore og fest frontpanelet (med de 2 hullene) på den 4 -sidige kroppen. Monter deretter skjermene i hvert av hullene.

Trinn 8: Fest den 7 segmenter og Digole -skjermen ved hjelp av varmlimpistol for å holde dem på plass

Trinn 9: Forbered ledningene for tilkobling

Jeg bruker vanlige hoppetråder og en wire cutter til å fjerne ledningen bar midt på ledningene, slik at jeg kan få en haug koblet sammen limt med en varm limpistol. (På bildet nedenfor er mine grupperte 5V / GND / SCA / og SCL -ledninger samlet.)

Trinn 10:

Begynn å koble enheten ved hjelp av koblingsskjemaet nedenfor som en veiledning.

7 -segmenters display D -> SDA C -> SCL + -> 5v GND -> GND IO -> 5v Digole Display GND -> GND DATA -> SDA CLK -> SCL VCC -> 3V DHT11 Humidistat VCC -> 5V GND - > GND DATA -> GPIO 16 / PIN 36

Trinn 11: Koble til alle delene i den trykte esken

Trinn 12: Koble til alle delene i den trykte esken

Trinn 13: Fullfør konstruksjonen

Lim humidistaten til bakpanelet, og før en USB -kabel gjennom det andre hullet på bakpanelet for å drive enheten. Fest baksiden med bare 2 skruer i tilfelle du må demontere for reparasjon.

Trinn 14: Konfigurer oppstartskript

Konfigurer programmet til å kjøre riktig i settings.py config -filen Finn filen settings.py og juster til dine nåværende innstillinger

# forecast.io API -nøkkel for lokal værinformasjonweatherAPIURL = 'https://api.forecast.io/forecast/'weatherAPIKey =' DIN API -NØKKEL FOR FORECAST. IO '

# valgfritt for å kjøre ekstern temp/fuktighet loggerdeviceLoggerAPI = 'mydevicelogger.com'

# søk google for å få breddegrad/lengdegrad for hjemstedet ditt latitude = 41.4552578longitude = -72.1665444

$ crontab -e

Legg til følgende linjer:

@reboot nohup python /home/pi/EnvironmentClock/clock.py>/dev/null 2> & 1

@reboot nohup python /home/pi/EnvironmentClock/display.py>/dev/null 2> & 1

Kontroller at skjermen begynner å fungere på omstart

$ sudo reboot VALGFRITT: Temp Logger til API -skript hvert 10. minutt

$ crontab -e Legg til følgende linjer:

*/10 * * * * python /home/pi/EnvironmentClock/temp-check.py

VALGFRITT: Lag dine egne værbilder som skal gjengis på skjermen

Last opp din egen 128x128 -fil til følgende URL:

www.digole.com/tools/PicturetoC_Hex_convert…

Velg bildefilen du vil laste opp, legg til hvilken størrelse du vil at den skal ha på skjermen (bredde/høyde)

Velg "256 farger for farge OLED/LCD (1 byte/piksel)" i rullegardinmenyen "Brukes til"

Få hex -utgangen.

Legg til hex -utgangen til en display/ build/ header (.h) -fil, bruk de andre som veiledninger for syntaks.

Inkluder den nye filen i digole.c -filen #include myimage.h

Inkluder en ny kommandolinjekrok til bildefilen i. Merk: Kommandoen nedenfor sier at tegnet bildet ditt i posisjon 10 piksler over 10 piksler ned. Du kan endre den til forskjellige X-, Y -koordinater, du kan også endre verdiene 128, 128 til hvilken størrelse det nye bildet ditt faktisk er.

} annet hvis (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, og myimageVariableHere, 0); // myimageVariableHere er definert i (.h) filen}

Nå må du bygge om (ignorere feilene) nedenfor for å få det nye bildet ditt gjengitt med følgende kommando.

$./digole myimage Re-Building [Inkludert] Digole Display Driver for valgfrie endringer

$ cd -visning/bygge $ gcc digole.c $ mv a.out../../digole $ chmod +x../../digole

Anbefalt: