Kazalo:

E-črnilo: Luna / ISS / Ljudje v vesolju : 6 korakov
E-črnilo: Luna / ISS / Ljudje v vesolju : 6 korakov

Video: E-črnilo: Luna / ISS / Ljudje v vesolju : 6 korakov

Video: E-črnilo: Luna / ISS / Ljudje v vesolju : 6 korakov
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, November
Anonim

Avtor emihermesSledi še avtorja:

Časovni zamik z Raspberry PI
Časovni zamik z Raspberry PI
Časovni zamik z Raspberry PI
Časovni zamik z Raspberry PI

Imel sem malino in e-papir HAT in z njim sem želel prikazati podatke, na primer kje je ISS ali koliko ljudi je zdaj v vesolju …

Izjavil sem, da poiščem, ali obstajajo API -ji na internetu, da bi dobili te podatke, in sem jih našel. OK, gotcha !!!!

Počakaj, ta HAT ima 4 gumbe, potem pa moram prikazati 4 podatke …

- Kje je zdaj ISS?- Koliko ljudi je zdaj v vesolju?- V kateri fazi je Luna?- Ali bo deževalo? Je tako toplo?…

Trenutno prikazujem te podatke, vendar bi lahko ta "Instructable" posodobil takoj, ko bi imel dobro idejo, ali če poznate dobro, mi jo lahko predlagate !!!

No, nekega večera mi je uspelo in "FrontEnd" se je končal čez nekaj dni. Ne pritožujte se nad tem, kako so prikazani podatki, ne maram tega dela:)

Zaloge

- Raspberry PI (nič je dovolj).- 2,7-palčni e-papir HAT. (Mojo sem kupil tukaj)- SD kartica (4Gb je dovolj).

Za uporabo API -jev potrebujete tudi žeton OpenWeather (od tu)

1. korak: Posodobite programsko opremo (SO)

Posodobi programsko opremo (SO)
Posodobi programsko opremo (SO)
Posodobi programsko opremo (SO)
Posodobi programsko opremo (SO)
Posodobi programsko opremo (SO)
Posodobi programsko opremo (SO)

Prvi korak je, kot vedno, priprava vašega Raspberry PI z najnovejšim operacijskim sistemom.- Od tu prenesite najnovejši OS (z namizjem).- Napišite sliko na prazno kartico SD. povezavo SSH.- Shranite datoteko "wpa_supplicant.conf" na kartico SD, da bo vaš Wifi nastavljen za povezavo z vašim Raspberry PI prek SSH (to imate pripravljeno v računalniku, vem).

Zaženite svoj Raspberry Pi.

Povežite se z njim prek SSH (to lahko storite tudi, če imate monitor, tipkovnico in miško, vendar ga nimam in se raje povežem prek SSH) in ga posodobite….

sudo apt -get update -y

sudo apt -get upgrade -y

Zdaj morate omogočiti VNC za oddaljeno povezavo in SPI za e-Paper HAT:

sudo raspi-config

Možnosti vmesnika> VNC> Da Možnosti vmesnika> SPI> Da

In ga znova zaženite.

2. korak: Potrebna programska oprema

Potrebna programska oprema
Potrebna programska oprema

V redu, zdaj imamo delujoč Raspberry PI z najnovejšo programsko opremo in vsem osnovnim za povezavo z njim.

To je trenutek, da začnete nameščati potrebno programsko opremo za nadzor e-Paper HAT.

Če niste priključili HAT na vaš Raspberry PI, je zdaj zadnji trenutek, da ga povežete. Izklopite Raspberry PI in nanj postavite HAT.

Za naslednje korake lahko sledite navodilom Waveshare ali pa sledite naslednjim korakom….

Namestite knjižnice BCM2835:

wget

tar zxvf bcm2835-1.60.tar.gz cd bcm2835-1.60/sudo./konfiguriraj sudo make sudo make preveri sudo make install #Več informacij najdete na

Namestite knjižnice wiringPi:

sudo apt-get install wiringpi

#Za Pi 4 ga morate posodobiti: cd/tmp wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v #Dobili boste 2,52 informacij če ga pravilno namestite

Namestite knjižnice Python: (Če ste SO posodobili z najnovejšo različico, bodo vsi ti koraki podobni "Zahteva je že izpolnjena").

sudo apt-get posodobitev

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

Zdaj lahko prenesete primere iz Waveshare: (Ta del NI potreben, vendar jih lahko prenesete, če želite izvedeti, kako deluje).

klon sudo git

cd e-papir/RaspberryPi / & JetsonNano/

Priporočam vam, da odstranite nekatere mape:- e-papir/Arduino (to je Raspberry PI),- e-papir/STM32 (to je malina PI). o tem projektu).

Ne boste jih uporabljali in jih ne potrebujete na Raspberry PI.

Če želite, lahko iz mape "lib" odstranite vse datoteke, ki jih ne potrebujete, na primer: - epd1in02.py - epd1in54.py - epd2in9.py -…

Če bomo uporabljali 2,7 -palčni, ostale datoteke NISO potrebne.

Priporočam vam, da premaknete mapo "lib" nazaj, da jo preprosto uporabite:

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

Vendar so v mojo kodo (iz GitHub -a) knjižnice vključene.

Nameščena je vsa potrebna programska oprema.

Naslednji korak je naša koda!

3. korak: Prenesite mojo kodo

Zdaj moramo kodo prenesti z GitHub -a:

klon sudo git

S tem bomo imeli vso potrebno kodo, vključno s knjižnicami iz Waveshareja v dejanski projekt.

Uredite datoteko "ShowInfo.py", da vstavite svoj API-žeton z OpenWeather.com….… In mesta (uporabite ime ali ID mesta):

def WeatherForecast ():

url = "https://api.openweathermap.org/data/2.5/forecast?" #url = url + "q = {city_name}" #url = url + "q = Düsseldorf" #težave z ASCII !!! url = url + "id = 2934246" #url = url + "& appid = {your_API_key}" url = url + "& units = metric" # V metričnem url = url + "& cnt = 6" # Samo 6 rezultatov

Vendar pa moramo namestiti datoteke pisav, ki jih uporabljamo pri projektu. Datoteke so bile prenesene z vso kodo.

Pisave so v mapi "e-papir/pisave".

Za razpakiranje:

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/

Priporočam vam, da po namestitvi izbrišete datoteke zip, ker teh datotek ne potrebujemo več:

pisave sudo rm -R

4. korak: Izvedite TEST

Izvedite TEST
Izvedite TEST
Izvedite TEST
Izvedite TEST

Pojdite v pravo mapo, kjer imamo preskusno datoteko:

cd ~/eInk_Moon_ISS_PeopleSpace/e-papir/ShowEInk

Izvedite preskusno datoteko z različico 3 Pythona:

python3 Test001.py

Medtem ko se program izvede, boste imeli sledljive komentarje.

Na zaslonu e-papirja boste videli sporočila.

Za vsak gumb bo na zaslonu prikazano drugo sporočilo.

5. korak: Pokažite informacije o Luni / Vesolju / ISS…

Pokažite informacije o Luni / Vesolju / ISS…
Pokažite informacije o Luni / Vesolju / ISS…
Pokažite informacije o Luni / Vesolju / ISS…
Pokažite informacije o Luni / Vesolju / ISS…
Pokažite informacije o Luni / Vesolju / ISS…
Pokažite informacije o Luni / Vesolju / ISS…
Pokažite informacije o Luni / Vesolju / ISS…
Pokažite informacije o Luni / Vesolju / ISS…

V redu, vsi tečemo in zdaj želimo videti, kje je ISS na svetu ali faza Lune …

Najprej morate zagnati datoteko "ShowInfo.py" (ki se nahaja na "~/eInk_Moon_ISS_PeopleSpace/e-Paper/ShowEInk").

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

In zdaj, če pritisnete en gumb, bodo informacije programirane na ta gumb:

● Gumb 1: Vremenska napoved.

● Gumb 2: Kdo je v vesolju in kje.

● Gumb 3: Kje je ISS po vsem svetu.

● Gumb 4: Informacije o Luni.

6. korak: Izvedite ga kot storitev

Druga možnost je, da se skript Python zažene med zagonom z ustvarjanjem storitve - več informacij na

Ustvarite novo datoteko ShowInfo.service in kopirajte spodnjo vsebino v novo datoteko - ustrezno prilagodite pot WorkingDirectory:

[Enota]

Opis = ShowInfo After = network-online.target Hoče = network-online.target [Service] ExecStart =/usr/bin/python3 ShowInfo.py WorkingDirectory =/home/pi/eInk_Moon_ISS_PeopleSpace/e-Paper/ShowEInk/StandardOutrror = dedovanje = podeduje Ponovni zagon = vedno Uporabnik = pi [Namesti] WantedBy = cilj za več uporabnikov

Kopirajte datoteko ShowInfo.service v/etc/systemd/system kot root:

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

Zaženite storitev:

sudo systemctl začni ShowInfo.service

Preverite, ali storitev deluje:

sudo systemctl status ShowInfo.service

Izhod mora biti podoben:

● ShowInfo.service - ShowInfo

Naloženo: naloženo (/etc/systemd/system/ShowInfo.service; onemogočeno; prednastavitev prodajalca: omogočeno) Aktivno: aktivno (deluje) od petka 2020-09-11 15:17:16 CEST; 14s nazaj Glavni PID: 1453 (python3) CGroup: /system.slice/ShowInfo.service └─1453/usr/bin/python3 ShowInfo.py 11. september 15:33:17 eInk systemd [1]: Začel ShowInfo.

Če storitev deluje brezhibno, jo lahko omogočite in znova zaženete Raspberry Pi, da se samodejno naloži med zagonom:

sudo systemctl omogoči ShowInfo.service

Storitev ustavite tako:

sudo systemctl stop ShowInfo.service

In to je vse !!!!!

Hvala !!!!!

Priporočena: