Obsah:
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
Od emihermes Nasledovať viac od autora:
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)
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
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
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…
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 !!!!!