E-Ink: Moon / ISS / Ľudia vo vesmíre : 6 krokov
E-Ink: Moon / ISS / Ľudia vo vesmíre : 6 krokov
Anonim

Od emihermes Nasledovať viac od autora:

Časozber s Raspberry PI
Časozber s Raspberry PI
Časozberný záber s Raspberry PI
Časozberný záber s Raspberry PI

Mal som klobúk Raspberry a e-Paper a chcel som ho použiť na zobrazenie informácií, ako napríklad kde je ISS alebo koľko ľudí je teraz vo vesmíre …

Uviedol som, že sa pozriem, či na internete existujú rozhrania API na získanie týchto údajov, a našiel som ich. OK, rozumiem !!!!

Počkajte, táto HAT má 4 tlačidlá a potom potrebujem, aby sa ukázali 4 údaje …

- Kde je teraz ISS?- Koľko ľudí je vo vesmíre?- V ktorej fáze je Mesiac?- Bude pršať? Je také teplo?…

Práve teraz tieto informácie zobrazujem, ale mohol by som aktualizovať tento „návod“, hneď ako dostanem dobrý nápad, alebo ak poznáte dobrý, môžete mi ho navrhnúť !!!

V jeden večer som to urobil a "FrontEnd" sa skončilo o niekoľko dní neskôr. Nesťažujte sa na to, ako sa informácie zobrazujú, nerád robím túto časť:)

Zásoby

- Raspberry PI (stačí nula).- 2,7 palcový e-Paper HAT. (Kúpil som si tu)- SD karta (stačí 4 Gb).

Na ich používanie API potrebujete aj token od OpenWeather (odtiaľ)

Krok 1: Aktualizácia softvéru (SO)

Aktualizovať softvér (SO)
Aktualizovať softvér (SO)
Aktualizovať softvér (SO)
Aktualizovať softvér (SO)
Aktualizovať softvér (SO)
Aktualizovať softvér (SO)

Prvým krokom, ako vždy, je pripraviť si Raspberry PI s najnovším OS.- Odtiaľ si stiahnite najnovší OS (s desktopom).- Napíšte obrázok na prázdnu kartu SD.- Vytvorte prázdny súbor „ssh“, aby ste povolili. pripojenie SSH.- Uložte súbor „wpa_supplicant.conf“na kartu SD, aby bolo vaše Wifi nakonfigurované na pripojenie k vášmu Raspberry PI prostredníctvom SSH (máte to pripravené na počítači, ja to viem).

Spustite Raspberry Pi.

Pripojte sa k nemu cez SSH (môžete to urobiť aj vtedy, ak máte monitor, klávesnicu a myš, ale nemám a radšej sa pripájam cez SSH) a aktualizujte ho ….

sudo apt -get update -y

sudo apt -get upgrade -y

Teraz musíte povoliť VNC, aby sa dalo vzdialene pripojiť a SPI pre e-Paper HAT:

sudo raspi-config

Možnosti rozhrania> VNC> Áno Možnosti rozhrania> SPI> Áno

A reštartujte ho.

Krok 2: Potrebný softvér

Potrebný softvér
Potrebný softvér

Ok, teraz máme spustený Raspberry PI s najnovším softvérom a všetkým základným vybavením na pripojenie sa k nemu.

Je načase začať inštalovať potrebný softvér na ovládanie e-Paper HAT.

Ak ste na Raspberry PI nezapojili HAT, teraz je najnovší okamih na jeho pripojenie. Vypnite Raspberry PI a dajte naň HAT.

Pri ďalších krokoch sa môžete riadiť pokynmi spoločnosti Waveshare alebo sa nimi riadiť ďalšími krokmi ….

Nainštalujte knižnice BCM2835:

wget

tar zxvf bcm2835-1.60.tar.gz cd bcm2835-1.60/sudo./configure sudo make sudo make check sudo make install #Viac podrobností nájdete na

Nainštalujte knižnice wiring:

sudo apt-get install wiringpi

#Pro Pi 4 ho musíte aktualizovať : cd/tmp wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v #Získate 2,52 informácií ak ho nainštalujete správne

Nainštalujte si knižnice Python: (Ak ste aktualizovali SO na najnovšiu verziu, všetky tieto kroky budú ako „Požiadavka už bola splnená“).

sudo apt-get aktualizácia

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

Teraz si môžete stiahnuť príklady z Waveshare: (Táto časť NIE je potrebná, ale môžete si ich stiahnuť, aby ste vedeli, ako funguje).

klon sudo git

cd e-Paper/RaspberryPi / & JetsonNano/

Odporúčam vám odstrániť niektoré priečinky:- e-Paper/Arduino (je to Raspberry PI).- e-Paper/STM32 (je to Raspberry PI).- e-Paper/Raspberry a JetsonNano/c (použijeme python na tomto projekte).

Nebudete ich používať a na Raspberry PI ich nepotrebujete.

A ak chcete, môžete z priečinka „lib“odstrániť všetky nepotrebné súbory, napríklad: - epd1in02.py - epd1in54.py - epd2in9.py -…

Ak použijeme 2,7 palca, ostatné súbory NIE sú potrebné.

Odporúčame vám presunúť priečinok „lib“o niečo späť, aby ste ho mohli ľahko používať:

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

V mojom kóde (z GitHub) sú však zahrnuté knižnice.

Nainštaluje sa všetok potrebný softvér.

Ďalším krokom je náš kód!

Krok 3: Stiahnite si môj kód

Teraz musíme stiahnuť kód z GitHub:

klon sudo git

Vďaka tomu budeme mať všetok potrebný kód vrátane knižníc z Waveshare do skutočného projektu.

Upravte súbor „ShowInfo.py“, aby ste vložili svoj token API z OpenWeather.com….… A mesta (použite názov alebo ID mesta):

def WeatherForecast ():

url = "https://api.openweathermap.org/data/2.5/forecast?" #url = url + "q = {city_name}" #url = url + "q = Düsseldorf" #problémy s ASCII !!! url = url + "id = 2934246" #url = url + "& appid = {your_API_key}" url = url + "& units = metric" # In metric url = url + "& cnt = 6" # Iba 6 výsledkov

Musíme však nainštalovať súbory písem, ktoré v projekte používame. Súbory boli stiahnuté so všetkým kódom.

Písma sú v priečinku „e-Paper/fonts“.

Rozbalenie:

sudo rozbaliť 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 rozbaliť Vast_Shadow.zip -d/usr/share/fonts/truetype/google/

Po inštalácii vám odporúčame odstrániť súbory zip, pretože tieto súbory už nepotrebujeme:

fonty sudo rm -R

Krok 4: Vykonajte TEST

Vykonajte TEST
Vykonajte TEST
Vykonajte TEST
Vykonajte TEST

Prejdite do správneho priečinka, kde máme testovací súbor:

cd ~/eInk_Moon_ISS_PeopleSpace/e-Paper/ShowEInk

Spustite testovací súbor s verziou 3 Pythonu:

python3 Test001.py

Kým sa program spustí, budete mať vysledované komentáre.

A na obrazovke e-Paper uvidíte správy.

Pri každom tlačidle sa na obrazovke zobrazí iná správa.

Krok 5: Zobrazte informácie o Mesiaci / vesmíre / ISS…

Zobraziť informácie o mesiaci / vesmíre / ISS…
Zobraziť informácie o mesiaci / vesmíre / ISS…
Zobraziť informácie o mesiaci / vesmíre / ISS…
Zobraziť informácie o mesiaci / vesmíre / ISS…
Zobraziť informácie o mesiaci / vesmíre / ISS…
Zobraziť informácie o mesiaci / vesmíre / ISS…
Zobraziť informácie o mesiaci / vesmíre / ISS…
Zobraziť informácie o mesiaci / vesmíre / ISS…

Dobre, už sme bežali a teraz chceme vidieť, kde je ISS nad svetom alebo fáza Mesiaca …

Najprv musíte spustiť súbor „ShowInfo.py“(umiestnený na „~/eInk_Moon_ISS_PeopleSpace/e-Paper/ShowEInk“).

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

A teraz, keď stlačíte jedno tlačidlo, budete mať informácie naprogramované na toto tlačidlo:

● Tlačidlo 1: Predpoveď počasia.

● Tlačidlo 2: Kto a kde je vo vesmíre.

● Tlačidlo 3: Kde je ISS vo svete.

● Tlačidlo 4: Informácie o Mesiaci.

Krok 6: Vykonajte to ako službu

Alternatívne je možné skript Python spustiť počas bootovania vytvorením služby - viac informácií na

Vytvorte nový súbor s názvom ShowInfo.service a skopírujte nižšie uvedený obsah do nového súboru - podľa toho upravte cestu WorkingDirectory:

[Jednotka]

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 = zdediť Reštartovať = vždy Používateľ = pi [Inštalovať] WantedBy = multi-user.target

Skopírujte súbor ShowInfo.service do súboru/etc/systemd/system ako root:

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

Spustiť službu:

sudo systemctl spustite službu ShowInfo.service

Skontrolujte, či je služba spustená:

sudo systemctl status ShowInfo.service

Výstup by mal byť podobný:

● Služba ShowInfo.show - ShowInfo

Načítané: načítané (/etc/systemd/system/ShowInfo.service; deaktivované; predvoľba dodávateľa: zapnuté) Aktívne: aktívne (v prevádzke) od pia 2020-09-11 15:17:16 SELČ; Pred 14 s Hlavný PID: 1453 (python3) CGroup: /system.slice/ShowInfo.service └─1453/usr/bin/python3 ShowInfo.py 11. september 15:33:17 eInk systemd [1]: Spustené ShowInfo.

Ak služba funguje dobre, môžete ju povoliť a reštartovať Raspberry Pi, aby sa automaticky načítala počas zavádzania:

sudo systemctl povoliť službu ShowInfo.service

Ak chcete zastaviť službu:

sudo systemctl zastaviť službu ShowInfo.service

A to je všetko !!!!!

Vďaka !!!!!