Էլեկտրոնային թանաք `Լուսին / ISS / Մարդիկ տիեզերքում : 6 քայլ
Էլեկտրոնային թանաք `Լուսին / ISS / Մարդիկ տիեզերքում : 6 քայլ
Anonim

Հետևեք հեղինակի ավելին ՝

Lամանակի շեղում ազնվամորու PI- ով
Lամանակի շեղում ազնվամորու PI- ով
Lամանակի շեղում ազնվամորու PI- ով
Lամանակի շեղում ազնվամորու PI- ով

Ես ունեի ազնվամորի և էլեկտրոնային թղթի գլխարկ, և ես ուզում էի օգտագործել այն ՝ տեղեկատվություն ցույց տալու համար, ինչպիսին է, թե որտեղ է ISS- ն կամ քանի մարդ է այժմ տարածության մեջ…

Ես հայտարարեցի, որ նայեմ, արդյոք ինտերնետում կան այդ տվյալները ստանալու API- ներ, և ես գտա դրանք: Լավ, gotcha !!!!

Սպասեք, այս HAT- ն ունի 4 կոճակ, այնուհետև ինձ պետք է 4 տվյալ ցուցադրվի…

- Որտե՞ղ է այժմ ISS- ն:- Քանի՞ մարդ է այժմ տիեզերքում:- Ո՞ր փուլում է Լուսինը:- Անձրև է գալու: Մի՞թե այդքան տաք է…

Հենց հիմա, ես ցույց եմ տալիս այդ տեղեկատվությունը, բայց ես կարող էի թարմացնել այս «Instructable» - ը `լավ գաղափար ստանալուն պես, կամ եթե լավը գիտեք, կարող եք այն ինձ առաջարկել !!!

Դե, ես դա հասցրեցի մի երեկո, և «FrontEnd» - ը ավարտվեց մի քանի օր անց: Մի բողոքեք, թե ինչպես են տեղեկատվությունը ցուցադրվում, ես չեմ սիրում կատարել այս հատվածը:)

Պարագաներ

- Ազնվամորի PI (eroրոյը բավարար է):- 2.7 դյույմ e-Paper HAT: (Ես այստեղ եմ գնել իմը)- SD քարտ (4 Գբ բավական է):

Ձեզ անհրաժեշտ է նաև խորհրդանիշ OpenWeather- ից ՝ դրանք API- ներ օգտագործելու համար (այստեղից)

Քայլ 1: Թարմացրեք ծրագրակազմը (SO)

Թարմացնել ծրագրակազմը (SO)
Թարմացնել ծրագրակազմը (SO)
Թարմացնել ծրագրակազմը (SO)
Թարմացնել ծրագրակազմը (SO)
Թարմացնել ծրագրակազմը (SO)
Թարմացնել ծրագրակազմը (SO)

Առաջին քայլը, ինչպես միշտ, ձեր ազնվամորի PI- ի պատրաստումն է վերջին OS.- ով: Ներբեռնեք այստեղից վերջին OS- ն (աշխատասեղանով):- Պատկերը գրեք դատարկ SD քարտի վրա:- Ստեղծեք դատարկ «ssh» ֆայլ `միացնելու համար: SSH կապը.

Սկսեք ձեր Raspberry Pi- ն:

Միացեք դրան SSH- ի միջոցով (կարող եք նաև դա անել, եթե ունեք մոնիտոր, ստեղնաշար և մկնիկ, բայց ես չունեմ և նախընտրում եմ միանալ SSH- ի միջոցով) և թարմացնել այն…:

sudo apt -get թարմացում -y

sudo apt -get upgrade -y

Այժմ, դուք պետք է միացնեք VNC- ին, որպեսզի կարողանաք հեռակա կերպով միանալ և SPI- ին e-Paper HAT- ի համար.

sudo raspi-config

Ինտերֆեյսի ընտրանքներ> VNC> Այո Միջերեսավորման ընտրանքներ> SPI> Այո

Եվ վերագործարկեք այն:

Քայլ 2: Անհրաժեշտ ծրագրակազմ

Անհրաժեշտ Softwareրագրային ապահովում
Անհրաժեշտ Softwareրագրային ապահովում

Լավ, այժմ մենք ունենք գործարկվող ազնվամորի PI վերջին ծրագրակազմով և դրան միանալու համար բոլոր հիմնական տարրերով:

It'sամանակն է սկսել էլեկտրոնային թղթի գլխարկը վերահսկելու համար անհրաժեշտ ծրագրակազմի տեղադրումը:

Եթե դուք չեք միացրել HAT- ը ձեր ազնվամորի PI- ին, այժմ այն միացնելու վերջին պահն է: Անջատեք ձեր ազնվամորի PI- ն և դրա վրա դրեք գլխարկը:

Հաջորդ քայլերի համար կարող եք հետևել Waveshare- ի ցուցումներին կամ հետևել դրան հաջորդող քայլերով…:

Տեղադրեք BCM2835 գրադարաններ

wget

tar zxvf bcm2835-1.60.tar.gz cd bcm2835-1.60/sudo./ կոնֆիգուրացնել sudo make sudo make check sudo make install #Մանրամասների համար տե՛ս

Տեղադրեք էլեկտրագծեր Pi գրադարաններ.

sudo apt-get տեղադրել wiringpi

#Pi 4-ի համար անհրաժեշտ է այն թարմացնել : cd/tmp wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v #Դուք կստանաք 2,52 տեղեկատվություն եթե այն ճիշտ տեղադրես

Տեղադրեք Python գրադարաններ.

sudo apt-get թարմացում

sudo apt-get տեղադրել python3-pip sudo apt-get տեղադրել python3-pil sudo apt-get տեղադրել python3-numpy sudo pip3 տեղադրել RPi. GPIO sudo pip3 տեղադրել spidev

Այժմ կարող եք ներբեռնել օրինակները Waveshare- ից. (Այս մասը անհրաժեշտ չէ, բայց կարող եք ներբեռնել դրանք իմանալու համար, թե ինչպես է այն աշխատում):

sudo git կլոն

cd էլեկտրոնային թուղթ/RaspberryPi / & JetsonNano/

Ես խորհուրդ եմ տալիս հեռացնել որոշ թղթապանակներ.- e-Paper/Arduino (Դա ազնվամորի PI է): այս նախագծի վերաբերյալ):

Դուք դրանք չեք օգտագործի, և դրանք ձեզ պետք չեն ազնվամորի PI- ում:

Եվ, եթե ցանկանում եք, կարող եք հեռացնել բոլոր այն ֆայլերը, որոնք ձեզ պետք չեն «lib» թղթապանակից, օրինակ ՝ - epd1in02.py - epd1in54.py - epd2in9.py -…

Եթե մենք պատրաստվում ենք օգտագործել 2.7 դյույմ, մնացած ֆայլերը ՉԵՆ անհրաժեշտ:

Խորհուրդ եմ տալիս մի փոքր հետ տեղափոխել «lib» թղթապանակը ՝ այն հեշտությամբ օգտագործելու համար.

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

Այնուամենայնիվ, իմ ծածկագրում (GitHub- ից) գրադարանները ներառված են:

Բոլոր անհրաժեշտ ծրագրակազմը տեղադրված է:

Հաջորդ քայլը մեր ծածկագիրն է:

Քայլ 3: Ներբեռնեք իմ ծածկագիրը

Այժմ մենք պետք է ներբեռնենք կոդը GitHub- ից.

sudo git կլոն

Դրանով մենք կունենանք բոլոր անհրաժեշտ ծածկագիրը, ներառյալ Waveshare- ի գրադարանները դեպի իրական նախագիծը:

Խմբագրեք «ShowInfo.py» ֆայլը ՝ ձեր API- նշանը OpenWeather.com- ից…… և քաղաքը տեղադրելու համար (օգտագործեք քաղաքի անունը կամ ID- ն):

def WeatherForecast ():

url = "https://api.openweathermap.org/data/2.5/forecast?" #url = url + "q = {city_name}" #url = url + "q = Düsseldorf" #ASCII խնդիրներ !!! url = url + "id = 2934246" #url = url + "& appid = {your_API_key}" url = url + "& units = metric" # Մետրիկ url = url + "& cnt = 6" # Միայն 6 արդյունք

Այնուամենայնիվ, մենք պետք է տեղադրենք տառատեսակի ֆայլերը, որոնք մենք օգտագործում ենք նախագծում: Ֆայլերը ներբեռնվել են ամբողջ ծածկագրով:

Տառատեսակները գտնվում են «e-Paper/fonts» թղթապանակում:

Փաթաթելու համար ՝

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/

Խորհուրդ եմ տալիս տեղադրությունից հետո ջնջել zip ֆայլերը, քանի որ այդ ֆայլերն այլևս մեզ պետք չեն.

sudo rm -R տառատեսակներ

Քայլ 4. Կատարել ԹԵՍՏԸ

Կատարել ԹԵՍՏԸ
Կատարել ԹԵՍՏԸ
Կատարել ԹԵՍՏԸ
Կատարել ԹԵՍՏԸ

Գնացեք ճիշտ թղթապանակ, որտեղ մենք ունենք թեստային ֆայլ.

cd ~/eInk_Moon_ISS_PeopleSpace/e-Paper/ShowEInk

Գործարկեք թեստային ֆայլը Python- ի 3 -րդ տարբերակով.

python3 Test001.py

Whileրագիրը գործարկվելիս կունենաք հետագծված մեկնաբանություններ:

Եվ էլեկտրոնային թղթի էկրանին կտեսնեք հաղորդագրությունները:

Յուրաքանչյուր կոճակի համար էկրանին կցուցադրվի այլ հաղորդագրություն:

Քայլ 5: Showույց տվեք Լուսնի / տիեզերքի / ISS տեղեկատվությունը…

Showույց տվեք Լուսնի / տիեզերքի / ISS տեղեկատվությունը…
Showույց տվեք Լուսնի / տիեզերքի / ISS տեղեկատվությունը…
Showույց տվեք Լուսնի / տիեզերքի / ISS տեղեկատվությունը…
Showույց տվեք Լուսնի / տիեզերքի / ISS տեղեկատվությունը…
Showույց տվեք Լուսնի / տիեզերքի / ISS տեղեկատվությունը…
Showույց տվեք Լուսնի / տիեզերքի / ISS տեղեկատվությունը…
Showույց տվեք Լուսնի / տիեզերքի / ISS տեղեկատվությունը…
Showույց տվեք Լուսնի / տիեզերքի / ISS տեղեկատվությունը…

Լավ, մենք բոլորս վազում ենք և այժմ ուզում ենք տեսնել, թե որտե՞ղ է ISS- ն ամբողջ աշխարհում, կամ Լուսնի փուլը…

Նախ պետք է կատարել «ShowInfo.py» ֆայլը (գտնվում է «~/eInk_Moon_ISS_PeopleSpace/e-Paper/ShowEInk» հասցեում):

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

Եվ հիմա, եթե մեկ կոճակ սեղմեք, կունենաք այս կոճակին ծրագրավորված տեղեկատվություն.

● Կոճակ 1. Եղանակի կանխատեսում:

● Կոճակ 2. Ով և որտեղ է տիեզերքում:

● Կոճակ 3. Որտեղ է ISS- ն ամբողջ աշխարհում:

● Կոճակ 4. Լուսնի մասին տեղեկությունները:

Քայլ 6: Կատարեք այն որպես ծառայություն

Որպես այլընտրանք, Python սցենարը կարելի է սկսել բեռնման ընթացքում ՝ ծառայություն ստեղծելով. Լրացուցիչ տեղեկություններ ՝

Ստեղծեք նոր ֆայլ, որը կոչվում է ShowInfo.service և պատճենեք ստորև բերված բովանդակությունը նոր ֆայլում `համապատասխանաբար հարմարեցրեք WorkingDirectory ուղին.

[Միավոր]

Նկարագրություն = 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/StandardEutror = ժառանգություն = ժառանգել Վերագործարկում = միշտ Օգտվող = pi [Տեղադրեք] WantedBy = multi-user.target

Պատճենեք ShowInfo.service ֆայլը/etc/systemd/system մեջ որպես արմատ.

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

Սկսեք ծառայությունը.

sudo systemctl գործարկել ShowInfo.service- ը

Ստուգեք, արդյոք ծառայությունն աշխատում է.

sudo systemctl կարգավիճակը ShowInfo.service

Արդյունքը պետք է նման լինի.

● ShowInfo.service - ShowInfo

Բեռնված ՝ բեռնված 14 առաջ առաջ Հիմնական PID: 1453 (python3) CGroup: /system.slice/ShowInfo.service └─1453/usr/bin/python3 ShowInfo.py Սեպ 11 15:33:17 eInk համակարգված [1]. Մեկնարկեց ShowInfo- ն:

Եթե ծառայությունը լավ է աշխատում, կարող եք միացնել այն և վերագործարկել Raspberry Pi- ն ՝ բեռնման ընթացքում ինքնաբերաբար բեռնման համար.

sudo systemctl միացնել ShowInfo.service- ը

Stopառայությունը դադարեցնելու համար.

sudo systemctl կանգնեցնել ShowInfo.service- ը

Եվ դա բոլորը !!!!!

Շնորհակալություն !!!!!

Խորհուրդ ենք տալիս: