Talaan ng mga Nilalaman:

E-Ink: Buwan / ISS / Mga Tao sa Puwang : 6 Mga Hakbang
E-Ink: Buwan / ISS / Mga Tao sa Puwang : 6 Mga Hakbang

Video: E-Ink: Buwan / ISS / Mga Tao sa Puwang : 6 Mga Hakbang

Video: E-Ink: Buwan / ISS / Mga Tao sa Puwang : 6 Mga Hakbang
Video: motor accident imus road cavite.. way to manila 2024, Nobyembre
Anonim

Sundin ang Higit Pa ng may-akda:

Time Lapse Sa Raspberry PI
Time Lapse Sa Raspberry PI
Time Lapse Sa Raspberry PI
Time Lapse Sa Raspberry PI

Nagkaroon ako ng isang Raspberry at isang e-Paper HAT at nais kong gamitin ito upang maipakita ang impormasyon tulad ng kung nasaan ang ISS o kung gaano karaming mga tao ngayon ang nasa puwang …

Sinabi ko upang tingnan kung may mga API sa Internet upang makuha ang data na iyon, at nakita ko sila. OK, gotcha !!!!

Maghintay, ang HAT na ito ay may 4 na mga pindutan, at pagkatapos, kailangan ko ng 4 na data upang maipakita …

- Nasaan na ngayon ang ISS? - Ilan na ang mga tao ngayon sa kalawakan? - Saang yugto ang Buwan? - Umuulan na ba? Napakainit ba nito?…

Sa ngayon, ipinapakita ko ang impormasyong iyon, ngunit maaari kong i-update ang "Maaaring Mapanuto" sa lalong madaling nakakakuha ako ng magandang ideya, o kung may alam kang mabuti, maaari mo itong imungkahi sa akin !!!

Kaya, nagawa ko ito sa isang gabi at ang "FrontEnd" ay natapos ilang araw pagkatapos. Huwag magreklamo tungkol sa kung paano ipinakita ang impormasyon, hindi ko nais na gawin ang bahaging ito:)

Mga gamit

- Raspberry PI (Sapat na sa zero).- 2.7inch e-Paper HAT. (Binili ko ang minahan dito) - SD card (sapat na ang 4Gb).

Kailangan mo rin ng isang Token mula sa OpenWeather upang magamit ang mga ito mga API (mula dito)

Hakbang 1: I-update ang Software (KAYA)

I-update ang Software (KAYA)
I-update ang Software (KAYA)
I-update ang Software (KAYA)
I-update ang Software (KAYA)
I-update ang Software (KAYA)
I-update ang Software (KAYA)

Ang unang hakbang, tulad ng lagi, ay upang ihanda ang iyong Raspberry PI gamit ang pinakabagong OS.- I-download ang pinakabagong OS (na may desktop) mula dito.- Isulat ang imahe sa isang walang laman na SD card.- Lumikha ng isang walang laman na file na "ssh" upang paganahin ang koneksyon ng SSH.- I-save ang file na "wpa_supplicant.conf" sa SD card upang mai-configure ang iyong Wifi upang kumonekta sa iyong Raspberry PI sa pamamagitan ng SSH (inihanda mo ito sa iyong computer, alam ko ito).

Simulan ang iyong Raspberry Pi.

Kumonekta dito sa pamamagitan ng SSH (magagawa mo rin ito kung mayroon kang isang monitor, keyboard at mouse, ngunit wala ako at mas gusto kong kumonekta sa pamamagitan ng SSH) at i-update ito….

sudo apt-get update -y

sudo apt-get upgrade -y

Ngayon, kailangan mong paganahin ang VNC upang maikonekta nang malayuan at SPI para sa e-Paper HAT:

sudo raspi-config

Mga Pagpipilian sa Pag-interface> VNC> Oo Mga Pagpipilian sa Interfacing> SPI> Oo

At i-reboot ito.

Hakbang 2: Kailangan ng Software

Kailangan ng Software
Kailangan ng Software

Ok, ngayon mayroon kaming pagpapatakbo ng Raspberry PI na may pinakabagong software at lahat ng pangunahing pag-uugnay dito.

Ito ang sandali upang simulang i-install ang kinakailangang software upang makontrol ang e-Paper HAT.

Kung hindi mo na-plug ang HAT sa iyong Raspberry PI, ngayon ang pinakabagong sandali upang ikonekta ito. Lumipat mula sa iyong Raspberry PI at ilagay ang HAT dito.

Para sa mga susunod na hakbang maaari mong sundin ang mga tagubilin mula sa Waveshare o sundin ito sa mga susunod na hakbang ….

I-install ang mga aklatan ng BCM2835:

wget

tar zxvf bcm2835-1.60.tar.gz cd bcm2835-1.60 / sudo./configure sudo make sudo make check sudo make install #For more detail, please refer to

Mag-install ng mga library ng mga kablePi:

sudo apt-get install ng mga wiringpi

#For Pi 4, kailangan mong i-update ito : cd / tmp wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v #Makakuha ka ng 2.52 impormasyon kung mai-install mo ito ng tama

I-install ang mga library ng Python: (Kung na-update mo ang SO sa pinakabagong bersyon, ang lahat ng mga hakbang na ito ay magiging katulad ng "nasiyahan na ang Kahilingan").

sudo apt-get update

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

Ngayon ay maaari mong i-download ang mga halimbawa mula sa Waveshare: (Ang bahaging ito ay HINDI kinakailangan, ngunit maaari mong i-download ang mga ito upang malaman kung paano ito gumagana).

sudo git clone

cd e-Paper / RaspberryPi / & JetsonNano /

Inirerekumenda ko sa iyo na alisin ang ilang mga folder: - e-Paper / Arduino (Ito ay isang Raspberry PI).- e-Paper / STM32 (Ito ay isang Raspberry PI).- e-Paper / Raspberry & JetsonNano / c (gagamitin namin ang python sa proyektong ito).

Hindi mo gagamitin ang mga ito, at hindi mo kailangan ang mga ito sa isang Raspberry PI.

At, kung nais mo, maaari mong alisin ang lahat ng mga file na hindi mo kailangan mula sa folder na "lib", tulad ng: - epd1in02.py - epd1in54.py - epd2in9.py -…

Kung gagamit kami ng isang 2.7inch, ang natitirang mga file ay HINDI kinakailangan.

Inirerekumenda ko sa iyo na ilipat ang folder na "lib" nang kaunti upang magamit ito nang madali:

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

Gayunpaman, sa aking code (mula sa GitHub) ang mga aklatan ay kasama.

Ang lahat ng kinakailangang software ay na-install.

Ang susunod na hakbang ay ang aming code!

Hakbang 3: I-download ang Aking Code

Ngayon kailangan naming i-download ang code mula sa GitHub:

sudo git clone

Sa pamamagitan nito magkakaroon kami ng lahat ng kinakailangang code, kasama ang mga aklatan mula sa Waveshare sa aktwal na proyekto.

I-edit ang file na "ShowInfo.py" upang ipasok ang iyong API-Token mula sa OpenWeather.com…. … at ang Lungsod (gamitin ang pangalan o ang ID ng lungsod):

def WeatherForecast ():

url = "https://api.openweathermap.org/data/2.5/forecast?" #url = url + "q = {city_name}" #url = url + "q = Düsseldorf" # Mga problema sa ASCII !!! url = url + "id = 2934246" #url = url + "& appid = {your_API_key}" url = url + "& unit = metric" # Sa Metric url = url + "& cnt = 6" # 6 na resulta lang

Gayunpaman, kailangan naming i-install ang mga file ng font na ginagamit namin sa proyekto. Ang mga file ay na-download kasama ng lahat ng code.

Ang mga font ay nasa folder na "e-Paper / font".

Upang i-unzip:

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

sudo unzip Bungee_Inline.zip -d / usr / share / font / 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 / font / truetype / google / sudo unzip Indie_Flower.zip -d / usr / share / fonts / truetype / google / sudo unzip Jacques_Francois_Shadow.zip -d / usr / share / font / truetype / google / sudo unzip Londrina_Outline.zip -d / usr / share / font / truetype / google / sudo unzip Londrina_Shadow.zip -d / usr / share / fonts / truetype / google / sudo unzip Londrina_Sketch. zip -d / usr / share / font / truetype / google / sudo unzip Oswald.zip -d / usr / share / font / truetype / google / sudo unzip Roboto.zip -d / usr / share / font / truetype / google / sudo unzip Vast_Shadow.zip -d / usr / share / font / truetype / google /

Inirerekumenda ko sa iyo na tanggalin ang mga zip file pagkatapos ng pag-install, dahil hindi na namin kailangan ang mga file na iyon:

sudo rm -R mga font

Hakbang 4: Isagawa ang TEST

Isagawa ang TEST
Isagawa ang TEST
Isagawa ang TEST
Isagawa ang TEST

Pumunta sa tamang folder kung saan mayroon kaming test file:

cd ~ / eInk_Moon_ISS_PeopleSpace / e-Paper / ShowEInk

Isagawa ang test file kasama ang bersyon 3 ng Python:

python3 Test001.py

Magkakaroon ka ng mga bakas na komento samantala ang programa ay naisakatuparan.

At sa screen ng e-Paper makikita mo ang mga mensahe.

Para sa bawat pindutan, magpapakita ang screen ng iba't ibang mensahe.

Hakbang 5: Ipakita ang Impormasyon sa Buwan / Puwang / ISS …

Ipakita ang Impormasyon sa Buwan / Puwang / ISS…
Ipakita ang Impormasyon sa Buwan / Puwang / ISS…
Ipakita ang Impormasyon ng Buwan / Puwang / ISS…
Ipakita ang Impormasyon ng Buwan / Puwang / ISS…
Ipakita ang Impormasyon sa Buwan / Puwang / ISS…
Ipakita ang Impormasyon sa Buwan / Puwang / ISS…
Ipakita ang Impormasyon sa Buwan / Puwang / ISS…
Ipakita ang Impormasyon sa Buwan / Puwang / ISS…

OK, lahat tayo ay tumatakbo at nais naming makita ngayon kung nasaan ang ISS sa buong Mundo, o ang yugto ng Buwan …

Una kailangan mong isagawa ang file na "ShowInfo.py" (matatagpuan sa "~ / eInk_Moon_ISS_PeopleSpace / e-Paper / ShowEInk").

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

At ngayon, kung pinindot mo ang isang pindutan, magkakaroon ka ng impormasyon na naka-program sa pindutang ito:

● Button 1: Pagtataya ng panahon.

● Button 2: Sino ang nasa Space at saan.

● Button 3: Nasaan ang ISS sa buong Mundo.

● Button 4: Impormasyon ng Buwan.

Hakbang 6: Isagawa Ito Bilang Isang Serbisyo

Bilang isang kahalili, ang script ng Python ay maaaring masimulan sa panahon ng pag-boot sa pamamagitan ng paglikha ng isang serbisyo - higit pang impormasyon sa

Lumikha ng isang bagong file na tinatawag na ShowInfo.service at kopyahin ang mga nilalaman sa ibaba sa bagong file - ayusin ang landas sa WorkingDirectory nang naaayon:

[Yunit]

Paglalarawan = ShowInfo After = network-online.target Nais = network-online.target [Serbisyo] ExecStart = / usr / bin / python3 ShowInfo.py WorkingDirectory = / home / pi / eInk_Moon_ISS_PeopleSpace / e-Paper / ShowEInk / StandardOutput = manahin ang StandardError = inherit Restart = laging User = pi [Install] WantedBy = multi-user.target

Kopyahin ang ShowInfo.service file sa / etc / systemd / system bilang root:

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

Simulan ang serbisyo:

sudo systemctl simulan ang ShowInfo.service

Suriin kung tumatakbo ang serbisyo:

sudo systemctl status ShowInfo.service

Ang output ay dapat na katulad ng:

● ShowInfo.service - ShowInfo

Na-load: na-load (/etc/systemd/system/ShowInfo.service; hindi pinagana; na-preset ng vendor: pinagana) Aktibo: aktibo (tumatakbo) mula noong Biyernes 2020-09-11 15:17:16 CEST; 14s ago Pangunahing PID: 1453 (python3) CGroup: /system.slice/ShowInfo.service └─1453 / usr / bin / python3 ShowInfo.py Sep 11 15:33:17 eInk systemd [1]: Sinimulan ang ShowInfo.

Kung tumatakbo nang maayos ang serbisyo, maaari mong paganahin ito at i-reboot ang Raspberry Pi upang awtomatikong mai-load ito habang nag-boot:

sudo systemctl paganahin ang ShowInfo.service

Upang ihinto ang serbisyo:

sudo systemctl ihinto ang ShowInfo.service

At yun lang !!!!!

Salamat !!!!!

Inirerekumendang: