Innehållsförteckning:

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

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

Video: E-Ink: Moon / ISS / People in Space : 6 steg
Video: Among Us in HD (Part 56) DECOY #Shorts 2024, November
Anonim

Av emihermesFölj mer av författaren:

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

Jag hade en hallon och en e-Paper-hatt och jag ville använda den för att visa information om var ISS är eller hur många människor som befinner sig i utrymmet nu …

Jag sa att jag skulle se om det finns API: er på Internet för att få dessa data, och jag hittade dem. OK, gotcha !!!!

Vänta, denna HAT har 4 knappar, och sedan behöver jag 4 data för att visas …

- Var är nu ISS?- Hur många människor är nu i rymden?- I vilken fas är månen?- Kommer det att regna? Är det så varmt?…

Just nu visar jag den informationen, men jag kan uppdatera denna "instruerbara" så snart jag fick en bra idé, eller om du vet en bra, kan du föreslå det för mig !!!

Jag klarade det en kväll och "FrontEnd" avslutades några dagar efter. Klaga inte över hur informationen visas, jag gillar inte att göra den här delen:)

Tillbehör

- Hallon PI (noll är nog).- 2,7 tum e-Paper HAT. (Jag köpte mitt här)- SD-kort (4Gb räcker).

Du behöver också en token från OpenWeather för att använda dem API: er (härifrån)

Steg 1: Uppdatera programvara (SO)

Uppdatera programvara (SO)
Uppdatera programvara (SO)
Uppdatera programvara (SO)
Uppdatera programvara (SO)
Uppdatera programvara (SO)
Uppdatera programvara (SO)

Det första steget, som alltid, är att förbereda din Raspberry PI med det senaste operativsystemet.- Ladda ner det senaste operativsystemet (med skrivbord) härifrån.- Skriv bilden på ett tomt SD-kort.- Skapa en tom fil "ssh" för att aktivera SSH-anslutningen.- Spara filen "wpa_supplicant.conf" på SD-kortet för att konfigurera din Wifi för att ansluta till din Raspberry PI via SSH (du har den förberedd på din dator, jag vet det).

Starta din Raspberry Pi.

Anslut till den via SSH (du kan också göra det om du har en bildskärm, tangentbord och mus, men jag har inte och jag föredrar att ansluta via SSH) och uppdatera den ….

sudo apt -get update -y

sudo apt -get upgrade -y

Nu måste du aktivera VNC för att kunna fjärransluta och SPI för e-Paper HAT:

sudo raspi-config

Gränssnittsalternativ> VNC> Ja Gränssnittsalternativ> SPI> Ja

Och starta om det.

Steg 2: Programvara som behövs

Programvara som behövs
Programvara som behövs

Ok, nu har vi en Raspberry PI som körs med den senaste programvaran och allt det grundläggande för att ansluta till den.

Det är dags att börja installera den programvara som behövs för att styra e-Paper HAT.

Om du inte kopplade in hatten på din Raspberry PI, är det nu det senaste ögonblicket att ansluta den. Stäng av din Raspberry PI och sätt på hatten på den.

För nästa steg kan du följa instruktionerna från Waveshare eller följa det med nästa steg….

Installera BCM2835 -bibliotek:

wget

tar zxvf bcm2835-1.60.tar.gz cd bcm2835-1.60/sudo./configure sudo make sudo make check sudo make install #För mer information, se

Installera wiringPi -bibliotek:

sudo apt-get install wiringpi

#För Pi 4 måste du uppdatera 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 information om du installerar det korrekt

Installera Python -bibliotek: (Om du uppdaterade SO -filen med den senaste versionen kommer alla dessa steg att vara "Kravet är redan uppfyllt").

sudo apt-get uppdatering

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

Nu kan du ladda ner exemplen från Waveshare: (Denna del behövs INTE, men du kan ladda ner dem för att veta hur det fungerar).

sudo git-klon

cd e-Paper/RaspberryPi / & JetsonNano/

Jag rekommenderar dig att ta bort några mappar:- e-Paper/Arduino (It's a Raspberry PI).- e-Paper/STM32 (It's a Raspberry PI).- e-Paper/Raspberry & JetsonNano/c (vi använder python på detta projekt).

Du kommer inte att använda dem, och du behöver dem inte på en Raspberry PI.

Och om du vill kan du ta bort alla filer som du inte behöver från mappen "lib", som: - epd1in02.py - epd1in54.py - epd2in9.py - …

Om vi ska använda en 2,7 tum behövs inte resten av filerna.

Jag rekommenderar dig att flytta mappen "lib" lite tillbaka för att enkelt använda den:

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

Men i min kod (från GitHub) ingår biblioteken.

All nödvändig programvara är installerad.

Nästa steg är vår kod!

Steg 3: Ladda ner min kod

Nu måste vi ladda ner koden från GitHub:

sudo git -klon

Med detta har vi all nödvändig kod, inklusive biblioteken från Waveshare i själva projektet.

Redigera filen "ShowInfo.py" för att infoga din API-token från OpenWeather.com …. och staden (använd stadens namn eller id):

def WeatherForecast ():

url = "https://api.openweathermap.org/data/2.5/prognos?" #url = url + "q = {city_name}" #url = url + "q = Düsseldorf" #ASCII -problem !!! url = url + "id = 2934246" #url = url + "& appid = {your_API_key}" url = url + "& units = metric" # In Metric url = url + "& cnt = 6" # Endast 6 resultat

Vi måste dock installera de teckensnittsfiler som vi använder på projektet. Filerna laddades ner med all kod.

Teckensnitt finns i mappen "e-Paper/fonts".

För att packa upp:

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/

Jag rekommenderar att du tar bort zip -filerna efter installationen, eftersom vi inte längre behöver dessa filer:

sudo rm -R typsnitt

Steg 4: Utför TEST

Utför testet
Utför testet
Utför testet
Utför testet

Gå till rätt mapp där vi har testfilen:

cd ~/eInk_Moon_ISS_PeopleSpace/e-Paper/ShowEInk

Kör testfilen med version 3 av Python:

python3 Test001.py

Du kommer att få spårade kommentarer under tiden programmet körs.

Och på e-Paper-skärmen ser du meddelandena.

För varje knapp kommer skärmen att visa ett annat meddelande.

Steg 5: Visa månen / rymden / ISS -informationen …

Visa månen / rymden / ISS -informationen …
Visa månen / rymden / ISS -informationen …
Visa månen / rymden / ISS -informationen …
Visa månen / rymden / ISS -informationen …
Visa månen / rymden / ISS -informationen …
Visa månen / rymden / ISS -informationen …
Visa månen / rymden / ISS -informationen …
Visa månen / rymden / ISS -informationen …

OK, vi har alla igång och vi vill nu se var ISS är över världen, eller månens fas …

Först måste du köra filen "ShowInfo.py" (finns på "~/eInk_Moon_ISS_PeopleSpace/e-Paper/ShowEInk").

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

Och nu, om du trycker på en knapp, har du informationen programmerad till den här knappen:

● Knapp 1: Väderprognos.

● Knapp 2: Vem är på rymden och var.

● Knapp 3: Var finns ISS över hela världen.

● Knapp 4: Information om månen.

Steg 6: Utför det som en tjänst

Som ett alternativ kan Python -skriptet startas under start genom att skapa en tjänst - mer information på

Skapa en ny fil som heter ShowInfo.service och kopiera innehållet nedan till den nya filen - justera WorkingDirectory -sökvägen i enlighet därmed:

[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 = ärva Restart = alltid User = pi [Install] WantedBy = multi-user.target

Kopiera ShowInfo.service -filen till/etc/systemd/system som root:

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

Starta tjänsten:

sudo systemctl starta ShowInfo.service

Kontrollera om tjänsten körs:

sudo systemctl status ShowInfo.service

Utdata ska likna:

● ShowInfo.service - ShowInfo

Laddad: laddad (/etc/systemd/system/ShowInfo.service; inaktiverad; leverantörsinställning: aktiverad) Aktiv: aktiv (körs) sedan fre 2020-09-11 15:17:16 CEST; 14 s sedan Main PID: 1453 (python3) CGroup: /system.slice/ShowInfo.service └─1453/usr/bin/python3 ShowInfo.py 11 september 15:33:17 eInk systemd [1]: Startade ShowInfo.

Om tjänsten fungerar bra kan du aktivera den och starta om Raspberry Pi för att ladda den automatiskt under start:

sudo systemctl aktivera ShowInfo.service

Så här stoppar du tjänsten:

sudo systemctl stoppa ShowInfo.service

Och det är allt !!!!!

Tack !!!!!

Rekommenderad: