Innholdsfortegnelse:

E-Ink: Moon / ISS / People in Space : 6 trinn
E-Ink: Moon / ISS / People in Space : 6 trinn

Video: E-Ink: Moon / ISS / People in Space : 6 trinn

Video: E-Ink: Moon / ISS / People in Space : 6 trinn
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, Juli
Anonim

Av emihermesFølg Mer av forfatteren:

Time Lapse With Raspberry PI
Time Lapse With Raspberry PI
Time Lapse With Raspberry PI
Time Lapse With Raspberry PI

Jeg hadde en bringebær og en e-Paper HAT, og jeg ønsket å bruke den til å vise informasjon om hvor ISS er eller hvor mange mennesker som nå er i rommet …

Jeg sa at for å se om det er APIer på Internett for å få disse dataene, og jeg fant dem. OK, gotcha !!!!

Vent, denne HATEN har 4 knapper, og så trenger jeg 4 data for å bli vist …

- Hvor er ISS nå?- Hvor mange mennesker er nå i rommet?- I hvilken fase er månen?- Kommer det til å regne? Er det så varmt?…

Akkurat nå viser jeg denne informasjonen, men jeg kan oppdatere denne "instruerbare" så snart jeg fikk en god idé, eller hvis du vet en god, kan du foreslå det for meg !!!

Vel, jeg kom på en kveld, og "FrontEnd" ble avsluttet noen dager etter. Ikke klag på hvordan informasjonen vises, jeg liker ikke å gjøre denne delen:)

Rekvisita

- Bringebær PI (null er nok).- 2,7 tommers e-Paper HAT. (Jeg kjøpte mitt her)- SD-kort (4Gb er nok).

Du trenger også et Token fra OpenWeather for å bruke dem APIer (herfra)

Trinn 1: Oppdater programvare (SO)

Oppdater programvare (SO)
Oppdater programvare (SO)
Oppdater programvare (SO)
Oppdater programvare (SO)
Oppdater programvare (SO)
Oppdater programvare (SO)

Det første trinnet, som alltid, er å forberede din Raspberry PI med det nyeste operativsystemet.- Last ned det nyeste operativsystemet (med skrivebord) herfra.- Skriv bildet på et tomt SD-kort.- Lag en tom fil "ssh" for å aktivere SSH-tilkoblingen.- Lagre "wpa_supplicant.conf" -filen på SD-kortet for å konfigurere Wifi til å koble til din Raspberry PI via SSH (du har den forberedt på datamaskinen din, jeg vet det).

Start din Raspberry Pi.

Koble til den via SSH (du kan også gjøre det hvis du har en skjerm, tastatur og mus, men jeg har ikke, og jeg foretrekker å koble til via SSH) og oppdatere den ….

sudo apt -get update -y

sudo apt -get upgrade -y

Nå må du aktivere VNC for å kunne koble til eksternt og SPI for e-Paper HAT:

sudo raspi-config

Grensesnittalternativer> VNC> Ja Grensesnittalternativer> SPI> Ja

Og start den på nytt.

Trinn 2: Nødvendig programvare

Nødvendig programvare
Nødvendig programvare

Ok, nå har vi en Raspberry PI som kjører med den nyeste programvaren og alt det grunnleggende for å koble til den.

Det er øyeblikket for å begynne å installere nødvendig programvare for å kontrollere e-Paper HAT.

Hvis du ikke koblet til HAT på Raspberry PI, er det siste øyeblikket å koble den til. Slå av Raspberry PI og sett på HATEN på den.

For de neste trinnene kan du følge instruksjonene fra Waveshare eller følge den med de neste trinnene.

Installer BCM2835 -biblioteker:

wget

tar zxvf bcm2835-1.60.tar.gz cd bcm2835-1.60/sudo./configure sudo make sudo make check sudo make install #For flere detaljer, se

Installer wiringPi -biblioteker:

sudo apt-get install wiringpi

#For Pi 4 må du oppdatere den: cd/tmp wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v #Du får 2,52 informasjon hvis du installerer det riktig

Installer Python -biblioteker: (Hvis du oppdaterte SO -en med den nyeste versjonen, vil alle disse trinnene være som "Krav allerede oppfylt").

sudo apt-get oppdatering

sudo apt-get install python3-pip sudo apt-get install python3-pil sudo apt-get install python3-numpy sudo pip3 install RPi. GPIO sudo pip3 install spidev

Nå kan du laste ned eksemplene fra Waveshare: (Denne delen er IKKE nødvendig, men du kan laste dem ned for å vite hvordan den fungerer).

sudo git klon

cd e-Paper/RaspberryPi / & JetsonNano/

Jeg anbefaler deg å fjerne noen mapper:- e-Paper/Arduino (It's a Raspberry PI).- e-Paper/STM32 (It's a Raspberry PI).- e-Paper/Raspberry & JetsonNano/c (vi bruker python på dette prosjektet).

Du vil ikke bruke dem, og du trenger dem ikke på en Raspberry PI.

Og hvis du ønsker det, kan du fjerne alle filene du ikke trenger fra "lib" -mappen, for eksempel: - epd1in02.py - epd1in54.py - epd2in9.py - …

Hvis vi skal bruke en 2,7 tommer, er resten av filene IKKE nødvendig.

Jeg anbefaler deg å flytte "lib" -mappen litt tilbake for å bruke den enkelt:

sudo mv lib/home/pi/e-Paper/

Imidlertid er bibliotekene inkludert i koden min (fra GitHub).

All nødvendig programvare er installert.

Det neste trinnet er koden vår!

Trinn 3: Last ned koden min

Nå må vi laste ned koden fra GitHub:

sudo git klon

Med dette vil vi ha all nødvendig kode, inkludert bibliotekene fra Waveshare inn i selve prosjektet.

Rediger filen "ShowInfo.py" for å sette inn API-tokenet ditt fra OpenWeather.com …. og byen (bruk navnet eller ID-en til byen):

def WeatherForecast ():

url = "https://api.openweathermap.org/data/2.5/forecast?" #url = url + "q = {city_name}" #url = url + "q = Düsseldorf" #ASCII problemer !!! url = url + "id = 2934246" #url = url + "& appid = {your_API_key}" url = url + "& units = metric" # In Metric url = url + "& cnt = 6" # Bare 6 resultater

Vi må imidlertid installere skriftfilene vi bruker på prosjektet. Filene ble lastet ned med all koden.

Skriftene er i mappen "e-Paper/fonts".

For å pakke ut:

sudo unzip Bangers.zip -d/usr/share/fonts/truetype/google/

sudo unzip Bungee_Inline.zip -d/usr/share/fonts/truetype/google/sudo unzip Bungee_Outline.zip -d/usr/share/fonts/truetype/google/sudo unzip Bungee_Shade.zip -d/usr/share/fonts/ truetype/google/sudo unzip droid-sans.zip -d/usr/share/fonts/truetype/google/sudo unzip Indie_Flower.zip -d/usr/share/fonts/truetype/google/sudo unzip Jacques_Francois_Shadow.zip -d/ usr/share/fonts/truetype/google/sudo unzip Londrina_Outline.zip -d/usr/share/fonts/truetype/google/sudo unzip Londrina_Shadow.zip -d/usr/share/fonts/truetype/google/sudo unzip Londrina_Sketch. zip -d/usr/share/fonts/truetype/google/sudo unzip Oswald.zip -d/usr/share/fonts/truetype/google/sudo unzip Roboto.zip -d/usr/share/fonts/truetype/google/ sudo unzip Vast_Shadow.zip -d/usr/share/fonts/truetype/google/

Jeg anbefaler deg å slette zip -filene etter installasjonen, fordi vi ikke trenger disse filene lenger:

sudo rm -R fonter

Trinn 4: Utfør TEST

Utfør TEST
Utfør TEST
Utfør TEST
Utfør TEST

Gå til riktig mappe der vi har testfilen:

cd ~/eInk_Moon_ISS_PeopleSpace/e-Paper/ShowEInk

Utfør testfilen med versjon 3 av Python:

python3 Test001.py

Du vil ha sporede kommentarer mens programmet kjøres.

Og i e-Paper-skjermen ser du meldingene.

For hver knapp vil skjermen vise en annen melding.

Trinn 5: Vis informasjon om månen / verdensrommet / ISS…

Vis informasjon om månen / verdensrommet / ISS…
Vis informasjon om månen / verdensrommet / ISS…
Vis informasjon om månen / verdensrommet / ISS…
Vis informasjon om månen / verdensrommet / ISS…
Vis informasjon om månen / verdensrommet / ISS…
Vis informasjon om månen / verdensrommet / ISS…
Vis informasjon om månen / verdensrommet / ISS…
Vis informasjon om månen / verdensrommet / ISS…

OK, vi har alt i gang, og vi vil nå se hvor ISS er over verden, eller månefasen …

Først må du kjøre filen "ShowInfo.py" (ligger på "~/eInk_Moon_ISS_PeopleSpace/e-Paper/ShowEInk").

python3 ~/eInk_Moon_ISS_PeopleSpace/e-Paper/ShowEInk/ShowInfo.py

Og nå, hvis du trykker på en knapp, har du informasjonen programmert til denne knappen:

● Knapp 1: Værmelding.

● Knapp 2: Hvem er på mellomrommet og hvor.

● Knapp 3: Hvor er ISS over hele verden.

● Knapp 4: Informasjon om månen.

Trinn 6: Utfør det som en tjeneste

Som et alternativ kan Python -skriptet startes under oppstart ved å opprette en tjeneste - mer informasjon på

Opprett en ny fil som heter ShowInfo.service og kopier innholdet nedenfor til den nye filen - juster banen til WorkDirectory deretter:

[Enhet]

Description = ShowInfo After = network-online.target Wants = network-online.target [Service] ExecStart =/usr/bin/python3 ShowInfo.py WorkingDirectory =/home/pi/eInk_Moon_ISS_PeopleSpace/e-Paper/ShowEInk/StandardOutput = inherit StandardError = arv Restart = alltid User = pi [Install] WantedBy = multi-user.target

Kopier ShowInfo.service -filen til/etc/systemd/system som root:

sudo cp ShowInfo.service/etc/systemd/system/

Start tjenesten:

sudo systemctl starter ShowInfo.service

Sjekk om tjenesten kjører:

sudo systemctl status ShowInfo.service

Utgangen skal være lik:

● ShowInfo.service - ShowInfo

Lastet: lastet (/etc/systemd/system/ShowInfo.service; deaktivert; leverandør forhåndsinnstilt: aktivert) Aktiv: aktiv (kjører) siden fre 2020-09-11 15:17:16 CEST; 14 s siden Main PID: 1453 (python3) CGroup: /system.slice/ShowInfo.service └─1453/usr/bin/python3 ShowInfo.py Sep 11 15:33:17 eInk systemd [1]: Startet ShowInfo.

Hvis tjenesten går bra, kan du aktivere den og starte Raspberry Pi på nytt for å laste den inn automatisk under oppstart:

sudo systemctl aktiver ShowInfo.service

Slik stopper du tjenesten:

sudo systemctl stopper ShowInfo.service

Og det er alt !!!!!

Takk !!!!!

Anbefalt: