Kazalo:
- 1. korak: Deli, ki sem jih uporabil:
- 2. korak: Namestite Raspberry Pi:
- 3. korak: Shema vezja:
- 4. korak: Telo:
- 5. korak: Programska oprema (izvorna koda):
- Korak 6: Dokončajte:
Video: Namizni sledilnik COVID19 s uro! Sledilnik z napajanjem Raspberry Pi: 6 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:02
Vemo, da lahko kadar koli umremo, tudi jaz lahko umrem med pisanjem tega prispevka, navsezadnje sem jaz, ti, vsi smo smrtniki. Zaradi pandemije COVID19 se je ves svet tresel. Vemo, kako to preprečiti, ampak hej! vemo, kako moliti in zakaj moliti, ali to počnemo vsak dan? Ne !! Pravzaprav pozabljamo na osnovni vzrok, zakaj bi morali nekaj narediti. Torej vemo, da nas lahko higienski način življenja reši, vendar tega ne počnemo pravilno. Razmislite o primeru mojega mlajšega brata, ki se želi iti ven in igrati tudi v tem času. Moral sem nekaj narediti, da bi vse dosledno obveščal o najnovejših primerih COVID19. Tako sem naredil digitalni namizni zaslon, ki v realnem času prikazuje najnovejše primere COVID19. Ker ima to uro, jo lahko postavim na mesto, kjer se vsi zberejo ali pridejo. Videli bodo, kako se številke seštevajo, kar bo pri njih sprožilo ozaveščenost in upajmo, da se bodo vsi zavedali. Ker sem ustvarjalec in hobist, se je to izkazalo za dober projekt, na katerem bi lahko delali v tej zaklenjeni seji.
1. korak: Deli, ki sem jih uporabil:
- Raspberry Pi 3 Model B (zagon s SD kartice)
- UPS modul Raspberry Pi (neobvezno)
- 7 -palčni HDMI LCD zaslon
- Kabel HDMI v HDMI (priložen zaslonu)
- USB kabli
- 5v 2A napajalnik (za napajanje pi)
- PVC folija [lesena barva] (za izdelavo ohišja)
2. korak: Namestite Raspberry Pi:
Mislim, da si odlično nastavil pi, razen če nisi -
- dobite kartico SD - več kot 8 GB
- prenesite najnovejšo datoteko raspbian iso od tukaj.
- Kartico SD zažgite z jedkancem
(Upoštevajte, da lahko ljudje rečejo nekaj o drugi programski opremi, ki zahteva, da naredite nekaj nastavitev, vendar je jedkanica zelo enostavna za uporabo in preprosta, a tudi učinkovita.)
Samo priključite kartico SD na računalnik, zaženite jedkalec, videli boste, da kartico SD samodejno izbere kartica etcher, nato kliknite, da izberete preneseno iso datoteko ali sliko, nato pa jo zažgite. Po uspešnem pisanju in obdelavi odklopite kartico SD in jo povežite s pi, vklopite jo in VOILA !! Živo je.
3. korak: Shema vezja:
Povežite vse in vklopite raspbery pi, samo povezuje se, nič drugega.
Videli boste zagon pi.
4. korak: Telo:
PVC ploščo sem razrezal glede na velikost zaslona, nato pa jo dodal z vijaki. Potem sem vse povezal. Nazadnje je bil dodan še en list zadaj, da je padel (modri list). Če je vse v redu, bi morali videti zagon pi (zadnja slika)
5. korak: Programska oprema (izvorna koda):
Program je napisan v python3. Za grafični vmesnik (grafični uporabniški vmesnik) sem uporabil PyQt5, za pridobivanje podatkov COVID19 v realnem času pa knjižnico COVID19Py. Hvala fantom, ki so nam omogočili dostop do API -ja
To je skoraj to, zdaj odprite Terminal na malini pi in namestite knjižnice (kopirajte vsako od njih in prilepite na terminal rpi).
Med kopiranjem prezrite znak $
$ pip3 namestite pyqt5
$ pip3 zahteve za namestitev $ pip3 install covid19py
To je to, zdaj prenesite kodo od tukaj, kodo sem navedel spodaj:
"" "*Mednarodni in lokalni sledilnik Covid19 v realnem času z uro*" "" "" "************** Ostanite doma in ostanite na varnem. V živo, pustite v živo ******** ***** """
"""
avtor: ashraf minhaj pošta: [email protected] spletna stran: ashrafminhajfb.blogspot.com """
#uvozite potrebne knjižnice
uvoz PyQt5 #QT knjižnice grafičnega vmesnika za python3 iz PyQt5. QtCore uvoz Qt, QTimer #timer za posodobitev iz PyQt5. QtWidgets uvoz * #uvoz vsega iz PyQt5. QtGui uvoz QFont #za pisave import sys #potrebno za aplikacije QT #import os uvoz COVID19Py #informacije o covid19 -api datum in ura uvoza #veste, čemu to služi
razred CoronaTracker (QWidget):
"" "glavni razred, ki vsebuje vse" "" def _init _ (self): "" "inicializira stvari" "" super ()._ init _ () self.covid = COVID19Py. COVID19 () #inicialize self.timer = QTimer () #inicialize self.timer.timeout.connect (self.update) #če časovnik doseže prag - pokličite posodobitev self.ui () #uporabniški vmesnik
def ui (self):
"" "Oddelek uporabniškega vmesnika" "" self.setWindowTitle ("Mednarodni in lokalni sledilnik Covid19") #self.setWindowFlags (Qt. CustomizeWindowHint) #skrij naslovno vrstico self.setStyleSheet ("Barva ozadja: črna") self.setFixedSize (640, 480) #as na moj zaslon (x, y) /ločljivost rpi
#glavna oznaka
self.banner_label = QLabel (self) self.banner_label.setGeometry (50, 5, 560, 50) #(x_origin, y_origin, till_x, till_y) self.banner_label.setText ("CORONA Pandemic - COVID19 TRACKER") self.banner_bel. setFont (QFont ('SansSerif', 20)) self.banner_label.setStyleSheet ("" "barva ozadja: črna; barva: bela; slog obrobe: izhod; robna širina: 1px" "")
"" "_ najnovejši podatki o svetu _" ""
#world label self.w = QLabel (self) self.w.setGeometry (200, 55, 400, 40) self.w.setText ("Svet na prvi pogled") self.w.setFont (QFont ('SansSerif', 18)) self.w.setStyleSheet ("" "barva ozadja: črna; barva: modra; slog obrobe: začetek; širina obrobe: 1px" "")
#potrjenih primerov po vsem svetu
self.w_cases = QLabel (self) self.w_cases.setGeometry (5, 90, 100, 40) self.w_cases.setText ("Primeri:") self.w_cases.setFont (QFont ('SansSerif', 18)) self. w_cases.setStyleSheet ("" "barva ozadja: črna; barva: oranžna; slog obrobe: izhodišče; širina obrobe: 1px" "") #številka primerov self.w_cases_num = QLabel (self) self.w_cases_num.setGeometry (110, 90, 100, 40) self.w_cases_num.setFont (QFont ('SansSerif', 18)) self.w_cases_num.setStyleSheet ("" "barva ozadja: črna; barva: bela; slog obrobe: izhodišče; širina obrobe: 1px "" ")
#smrti po vsem svetu
self.w_death = QLabel (self) self.w_death.setGeometry (350, 90, 100, 40) self.w_death.setText ("Smrti:") self.w_death.setFont (QFont ('SansSerif', 18)) self. w_death.setStyleSheet ("" "barva ozadja: črna; barva: rdeča; slog obrobe: začetek; širina obrobe: 1px" "") #smrtna številka self.w_death_num = QLabel (self) self.w_death_num.setGeometry (460, 90, 100, 40) self.w_death_num.setFont (QFont ('SansSerif', 18)) self.w_death_num.setStyleSheet ("" "barva ozadja: črna; barva: bela; slog obrobe: izhod; rob-širina: 1px "" ")
#celotni svet ozdravljen
self.w_cured = QLabel (self) self.w_cured.setGeometry (5, 140, 100, 40) self.w_cured.setText ("Ozdravljeno:") self.w_cured.setFont (QFont ('SansSerif', 18)) self. w_cured.setStyleSheet ("" "barva ozadja: črna; barva: cijan; slog obrobe: izhod; robna širina: 1px" "")
#zdravljena številka po vsem svetu
self.w_cured_num = QLabel (self) self.w_cured_num.setGeometry (110, 140, 100, 40) self.w_cured_num.setFont (QFont ('SansSerif', 18)) self.w_cured_num.setStyleSheet ("" "barva ozadja: črna; barva: bela; slog obrobe: izhodišče; širina obrobe: 1px "" ")
"" "_ Koda za lokalno državo _" ""
#local - Država self.c = QLabel (self) self.c.setGeometry (170, 200, 400, 40) self.c.setText ("Moja država: Bangladeš") self.c.setFont (QFont ('SansSerif', 18)) self.c.setStyleSheet ("" "barva ozadja: črna; barva: bela; slog obrobe: začetek; širina obrobe: 1px" "") #local confirm cases self.c_cases = QLabel (self) self.c_cases.setGeometry (5, 240, 400, 40) self.c_cases.setText ("Primeri:") self.c_cases.setFont (QFont ('SansSerif', 18)) self.c_cases.setStyleSheet ("" "ozadje -barva: črna; barva: oranžna; slog obrobe: začetek; širina obrobe: 1px "" ") #številka krajevnih primerov self.c_cases_num = QLabel (self) self.c_cases_num.setGeometry (110, 240, 100, 40) self.c_cases_num.setFont (QFont ('SansSerif', 18)) self.c_cases_num.setStyleSheet ("" "barva ozadja: črna; barva: bela; border-style: outset; border-width: 1px" "")
#lokalne smrti
self.c_death = QLabel (self) self.c_death.setGeometry (350, 240, 100, 40) self.c_death.setText ("Smrti:") self.c_death.setFont (QFont ('SansSerif', 18)) self. c_death.setStyleSheet ("" "barva ozadja: črna; barva: rdeča; slog obrobe: izhod; robna širina: 1px" "")
#lokalno število smrtnih žrtev
self.c_death_num = QLabel (self) self.c_death_num.setGeometry (460, 240, 100, 40) self.c_death_num.setFont (QFont ('SansSerif', 18)) self.c_death_num.setStyleSheet ("" "barva ozadja: črna; barva: bela; slog obrobe: od začetka; širina obrobe: 1px "" ") #local cured self.c_cured = QLabel (self) self.c_cured.setGeometry (5, 280, 100, 40) self.c_cured. setText ("Ozdravljeno:") self.c_cured.setFont (QFont ('SansSerif', 18)) self.c_cured.setStyleSheet ("" "barva ozadja: črna; barva: cijan; obrobni slog: outset; robna širina: 1px "" ") #lokalno ozdravljeno število.setStyleSheet ("" "barva ozadja: črna; barva: bela; slog obrobe: izhod; širina obrobe: 1px" "")
"" "_ Ura, datum, ura _" ""
#clock self.clock = QLabel (self) self.clock.setGeometry (115, 340, 400, 70) self.clock.setFont (QFont ('SansSerif', 60)) self.clock.setStyleSheet ("" "ozadje- barva: črna; barva: bela; rob v slogu: izhodišče; širina obrobe: 1px "" ") #oznaka za dan v tednu self.weekday = QLabel (self) self.weekday.setGeometry (5, 360, 110, 20) self.weekday.setFont (QFont ('SansSerif', 13)) self.weekday.setStyleSheet ("" "barva ozadja: črna; barva: bela; slog obrobe: izhod; robna širina: 1px" "") #datum label self.date = QLabel (self) self.date.setGeometry (510, 360, 110, 20) #self.clock.setText ("22:49:00") self.date.setFont (QFont ('SansSerif', 13)) self.date.setStyleSheet ("" "barva ozadja: črna; barva: bela; slog obrobe: izhod; robna širina: 1px" "")
#preverite časovnik, če ni self.timer.isActive (): #če je časovnik ustavljen (dosežen prag) #Po 1 sekundi (pribl.) ali 1000 ms
poskusi:
"" "poskusite pridobiti podatke, drugače pa zaženite kodo" "" self.latest = self.covid.getLatest () #gte najnovejši podatki covid19
#pridobite najnovejše podatke po kodi države 'BD'-Bangladeš,' IN'-Indija itd
self.local = self.covid.getLocationByCountryCode ('BD', timelines = False) #print (self.local) #print (self.latest)
razen:
"" "ni bilo mogoče dobiti podatkov" "" print ("Internetna napaka !!")
pass #ignore, vseeno teči
self.timer.start (1000) #zaženite časovnik
self.show () #prikaži naš uporabniški vmesnik
def posodobitev (samo):
"" "posodobite oznake z informacijami" ""
"" "_ Izvleček Posodobitev oglasa o času in datumu _" ""
#nastavite uro in datum (vrednosti posodobitve) #pridobite in posodobite vrednosti #če želite izvedeti več o dokumentaciji za datum in čas python
self.dt = datetime.datetime.now () #pridobi podatke o datumu in času
self.clock.setText (self.dt.strftime ('%X')) self.weekday.setText (self.dt.strftime ('%A')) self.date.setText (self.dt.strftime ('% x ')) "" "_ posodobi podatke covid19 _" "" #najnovejši podatki po vsem svetu self.w_cases_num.setText (str (self.latest [' potrjeno '])) self.w_death_num.setText (str (self.latest [' deaths ')])) self.w_cured_num.setText (str (self.latest ['recovery']))) #local najnovejši podatki self.c_cured_num.setText (str (self.local [0] ['latest'] ['recovery'])) self.c_death_num.setText (str (self.local [0] ['latest'] ['deaths'])) self.c_cases_num.setText (str (self.local [0] ['latest'] ['potrjeno']))
print ("posodabljanje")
vrnitev
def main (): app = QApplication (sys.argv) win = CoronaTracker () #instantiate sys.exit (app.exec ()) #zaženi aplikacijo, če _name_ == '_main_': main ()
Korak 6: Dokončajte:
Po preizkusu kode sem jo dal na mizo in zanjo namenil vir napajanja. Tako, da lahko deluje med polnjenjem. Z uporabo ups lahko deluje tudi pri zmanjševanju obremenitve, kar daje ur pi SD kartici tudi ustrezno zaščito.
Ne glede na to, kako ali kdo smo, moramo umreti. Ne razmišljajmo o sebi, razmišljajmo o svetu. Samo s svojimi dejanji lahko živimo večno, naj bo tako.
Priporočena:
Sledilnik Covid19 v živo z uporabo ESP8266 in OLED - Nadzorna plošča Covid19 v realnem času: 4 koraki
Sledilnik Covid19 v živo z uporabo ESP8266 in OLED | Nadzorna plošča Covid19 v realnem času: Obiščite spletno mesto Techtronic Harsh: http: //techtronicharsh.com Povsod je ogromen izbruh novega koronavirusa (COVID19). Postalo je treba paziti na trenutni scenarij COVID-19 v svetu. Torej, ko sem bil doma, je bil to p
Namizni organizator z LED matrično uro in Bluetooth: 7 korakov
Namizni organizator z LED matrično uro in Bluetoothom: Moja miza je bila zelo obremenjena in želel sem imeti prijetnega organizatorja, kamor bi lahko razporedil svoje svinčnike, čopiče, glineno orodje itd. Ogledal sem si številne organizatorje na trgu, vendar mi nobeden ni bil všeč . Odločil sem se oblikovati lastnega organizatorja mize in tukaj
Namizni ojačevalnik z zvočno vizualizacijo, binarno uro in FM sprejemnikom: 8 korakov (s slikami)
Namizni ojačevalnik z zvočno vizualizacijo, binarno uro in FM sprejemnikom: všeč so mi ojačevalniki in danes bom delil svoj namizni ojačevalnik z nizko porabo, ki sem ga naredil pred kratkim. Ojačevalnik, ki sem ga oblikoval, ima nekaj zanimivih lastnosti. Ima integrirano binarno uro in lahko daje čas in datum ter lahko vizualizira zvok, ki se pogosto imenuje zvok
Pretvorite običajno navadno uro v samosvetlečo uro: 8 korakov (s slikami)
Pretvorite navadno domačo uro v samosvetlečo uro: NAJPREJ SVOJO SRČNO HVALO INSTRUKTIVNIM TIMAMA, DA BODO MOJI ZDRAVSTVENI DANI ODPRAVLJENI, KOT BODE ODGOVORNEJŠI ….. V teh navodilih želim z vami deliti, kako spremeniti svojo domačo običajno uro v samosvetlečo uro. > > Za to početje
Microdot - Ura za uro z LED vzorcem za uro: 7 korakov (s slikami)
Microdot - Ura za uro z uro z LED vzorcem: Še ena produkcija RGB Sunset Productions! Ta projekt je tiskano vezje za izdelavo različice moje ure minidot v velikosti zapestne ure: https: //www.instructables.com/id/EEGLXQCSKIEP2876EE/z nekaj več funkcije, ki so bolj uporabne za prenosno napravo. A