Satura rādītājs:
- 1. darbība. Daļas, kuras esmu izmantojis:
- 2. darbība: iestatiet Raspberry Pi:
- 3. darbība: shēmas shēma:
- 4. solis: ķermenis:
- 5. darbība: programmatūra (avota kods):
- 6. darbība. Pabeidziet:
Video: Covid19 izsekotājs galddatorā ar pulksteni! Raspberry Pi Powered Tracker: 6 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:51
Mēs zinām, ka mēs varam mirt jebkurā laikā, pat es varu nomirt, rakstot šo ziņu, galu galā es, es, jūs, mēs visi esam mirstīgi. Visa pasaule satricināja COVID19 pandēmijas dēļ. Mēs zinām, kā to novērst, bet hei! mēs zinām, kā lūgt un kāpēc lūgt, vai mēs to darām katru dienu? Nē!! Patiesībā mēs aizmirstam galveno iemeslu, kāpēc mums vajadzētu darīt lietas. Tātad, mēs zinām, ka higiēnisks dzīvesveids var mūs glābt, tomēr mēs to nedarām pareizi. Apsveriet mana jaunākā brāļa gadījumu, viņš pat šajā laikā vēlas iziet un spēlēties. Man bija jādara kaut kas, lai pastāvīgi informētu visus par jaunākajiem COVID19 gadījumiem. Tātad, es izveidoju ciparu galda displeju, kas reālā laikā parāda jaunākos COVID19 gadījumus. Tā kā šim ir pulkstenis, es varu to ievietot vietā, kur visi pulcējas vai nāk. Viņi redzēs skaitļu sasummēšanos, kas viņos izraisīs izpratni, un cerams, ka visi būs apzināti. Tā kā esmu veidotājs un hobijs, tas izrādījās labs projekts, pie kura strādāt šajā slēgšanas sesijā.
1. darbība. Daļas, kuras esmu izmantojis:
- Raspberry Pi 3 modelis B (palaists, izmantojot SD karti)
- Raspberry Pi UPS modulis (pēc izvēles)
- 7 collu HDMI LCD ekrāns
- HDMI uz HDMI kabelis (tas tiek piegādāts kopā ar ekrānu)
- USB kabeļi
- 5v 2A strāvas adapteris (pi barošanai)
- PVC loksne [koka krāsa] (korpusa izgatavošanai)
2. darbība: iestatiet Raspberry Pi:
Es domāju, ka jūs esat perfekti iestatījis pi, ja vien neesat -
- iegūt SD karti - vairāk nekā 8 GB
- lejupielādējiet jaunāko raspbian iso failu no šejienes.
- Sadedziniet SD karti, izmantojot kodinātāju
(Ņemiet vērā, ka cilvēki var teikt par citu programmatūru, kuras dēļ jums ir jāveic iestatīšana, bet kodinātājs ir ļoti viegli lietojams un vienkāršs, bet arī efektīvs.)
Vienkārši pievienojiet SD karti datoram, palaidiet etcher, jūs redzēsit, ka SD karte tiek automātiski atlasīta, un pēc tam noklikšķiniet, lai atlasītu lejupielādēto iso failu vai attēlu, pēc tam ierakstiet to. Pēc veiksmīgas rakstīšanas un apstrādes atvienojiet SD karti un pievienojiet to savam pi, ieslēdziet to un VOILA !! Tas ir dzīvs.
3. darbība: shēmas shēma:
Pievienojiet Everythingup un ieslēdziet raspbery pi, tas ir tikai savienojums, nekas cits.
Jūs redzēsit, kā pi booting.
4. solis: ķermenis:
Es izgriezu PVC loksni atbilstoši displeja izmēram, pēc tam pievienoju to, izmantojot skrūves. Pēc tam es visu sakārtoju. Beidzot aizmugurē pievienoja vēl vienu lapu, lai atbalstītu to no krišanas (zilā lapa). Ja viss ir kārtībā, jums vajadzētu redzēt pi booting (pēdējā bilde)
5. darbība: programmatūra (avota kods):
Programma ir uzrakstīta python3. GUI (grafiskā lietotāja saskarne) es izmantoju PyQt5, un, lai iegūtu reāllaika COVID19 datus, es izmantoju COVID19Py bibliotēku. Paldies puišiem, kuri padarīja API mums pieejamu
Tas ir gandrīz viss, tagad atveriet termināli raspberry pi un instalējiet bibliotēkas (kopējiet katru no tām un ielīmējiet rpi terminālī).
Kopēšanas laikā ignorējiet zīmi $
$ pip3 instalēt pyqt5
$ pip3 instalēšanas pieprasījumi $ pip3 install covid19py
Tas ir viss, tagad lejupielādējiet kodu no šejienes, es esmu sniedzis kodu zemāk:
"" "*Reāllaika Covid19 starptautiskais un vietējais izsekotājs ar pulksteni*" "" "" "************** Palieciet mājās, esiet drošībā. Tiešraide, tiešraide ******** ***** """
"""
autors: ashraf minhaj pasts: [email protected] vietne: ashrafminhajfb.blogspot.com """
#importējiet nepieciešamās bibliotēkas
importēt PyQt5 #QT GUI bibliotēku python3 no PyQt5. #covid19 informācija -api importēšanas datuma laiks #jūs zināt, kam tas paredzēts
klases CoronaTracker (QWidget):
"" "galvenā klase, kurā ir viss" "" def _init _ (self): "" "inicializēt lietas" "" super ()._ init _ () self.covid = COVID19Py. COVID19 () #initialize self.timer = QTimer () #initialize self.timer.timeout.connect (self.update) #ja taimeris sasniedz slieksni - zvaniet, lai atjauninātu self.ui () #lietotāja saskarne
def ui (sevi):
"" "Lietotāja saskarnes sadaļa" "" self.setWindowTitle ("Covid19 International and Local Tracker") #self.setWindowFlags (Qt. CustomizeWindowHint) #hide title bar self.setStyleSheet ("Background-color: black") self.setFixedSize (640, 480) #pēc mana displeja (x, y) /rpi izšķirtspējas
#galvenā etiķete
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_label. setFont (QFont ('SansSerif', 20)) self.banner_label.setStyleSheet ("" "background-color: black; color: white; border-style: outset; border-width: 1px" "")
"" "_pasaules jaunākie dati_" ""
#world label self.w = QLabel (self) self.w.setGeometry (200, 55, 400, 40) self.w.setText ("Pasaule īsumā") self.w.setFont (QFont ('SansSerif', 18)) self.w.setStyleSheet ("" "fona krāsa: melna; krāsa: zila; apmales stils: sākums; apmales platums: 1px" "")
#visā pasaulē apstiprināti gadījumi
self.w_cases = QLabel (self) self.w_cases.setGeometry (5, 90, 100, 40) self.w_cases.setText ("Cases:") self.w_cases.setFont (QFont ('SansSerif', 18)) self. w_cases.setStyleSheet ("" "background-color: black; color: orange; border-style: outset; border-width: 1px" "") #lietu skaits 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 ("" "fona krāsa: melna; krāsa: balta; apmales stils: sākums; apmales platums: 1px "" ")
#nāves gadījumi visā pasaulē
self.w_death = QLabel (self) self.w_death.setGeometry (350, 90, 100, 40) self.w_death.setText ("Deaths:") self.w_death.setFont (QFont ('SansSerif', 18)) self. w_death.setStyleSheet ("" "background-color: black; color: red; border-style: outset; border-width: 1px" "") #miršanas numurs 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 ("" "fona krāsa: melna; krāsa: balta; apmales stils: sākums; apmales platums: 1px "" ")
#izārstēts visā pasaulē
self.w_cured = QLabel (self) self.w_cured.setGeometry (5, 140, 100, 40) self.w_cured.setText ("Cured:") self.w_cured.setFont (QFont ('SansSerif', 18)) self. w_cured.setStyleSheet ("" "fona krāsa: melna; krāsa: ciāna; border-style: outset; border-width: 1px" "")
#visā pasaulē izārstēts numurs
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 ("" "background-color: melns; krāsa: balta; apmales stils: iesākums; apmales platums: 1px "" ")
"" "_ Vietējais pēc valsts kods_" ""
#local - Valsts self.c = QLabel (self) self.c.setGeometry (170, 200, 400, 40) self.c.setText ("Mana valsts: Bangladeša") self.c.setFont (QFont ('SansSerif', 18)) self.c.setStyleSheet ("" "background-color: black; color: white; border-style: outset; border-width: 1px" "") #local apstiprina gadījumus self.c_cases = QLabel (self) self.c_cases.setGeometry (5, 240, 400, 40) self.c_cases.setText ("Cases:") self.c_cases.setFont (QFont ('SansSerif', 18)) self.c_cases.setStyleSheet ("" "background -krāsa: melna; krāsa: oranža; apmales stils: sākums; apmales platums: 1px "" ") #vietējo lietu skaits 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 ("" "background-color: black; color: white; border-style: outset; border-width: 1px" "")
#vietējie nāves gadījumi
self.c_death = QLabel (self) self.c_death.setGeometry (350, 240, 100, 40) self.c_death.setText ("Deaths:") self.c_death.setFont (QFont ('SansSerif', 18)) self. c_death.setStyleSheet ("" "fona krāsa: melna; krāsa: sarkana; apmales stils: sākums; apmales platums: 1px" "")
#vietējais mirušo skaits
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 ("" "background-color: melns; krāsa: balta; apmales stils: sākums; apmales platums: 1px "" ") #local cured self.c_cured = QLabel (self) self.c_cured.setGeometry (5, 280, 100, 40) self.c_cured. setText ("Cured:") self.c_cured.setFont (QFont ('SansSerif', 18)) self.c_cured.setStyleSheet ("" "fona krāsa: melna; krāsa: ciāna; apmales stils: sākums; apmales platums: 1px "" ") #local cured number self.c_cured_num = QLabel (self) self.c_cured_num.setGeometry (110, 280, 100, 40) self.c_cured_num.setFont (QFont ('SansSerif', 18)) self.c_cured_num.setStyleSheet ("" "fona krāsa: melna; krāsa: balta; apmales stils: sākums; apmales platums: 1px" "")
"" "_Laiks, datums, pulkstenis_" ""
#clock self.clock = QLabel (self) self.clock.setGeometry (115, 340, 400, 70) self.clock.setFont (QFont ('SansSerif', 60)) self.clock.setStyleSheet ("" "background- krāsa: melna; krāsa: balta; apmales stils: sākums; apmales platums: 1px "" ") #etiķete nedēļas dienai self.weekday = QLabel (self) self.weekday.setGeometry (5, 360, 110, 20) self.weekday.setFont (QFont ('SansSerif', 13)) self.weekday.setStyleSheet ("" "background-color: black; color: white; border-style: outset; border-width: 1px" "") #date 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 ("" "fona krāsa: melna; krāsa: balta; apmales stils: sākums; apmales platums: 1px" "")
#pārbaudiet taimeri, ja tas nav self.timer.isActive (): #ja taimeris ir apturēts (sasniegts slieksnis) #Pēc 1 sekundes (aptuveni) vai 1000 ms
pamēģini:
"" "mēģiniet iegūt datus, pretējā gadījumā palaidiet kodu" "" self.latest = self.covid.getLatest () #gte covid19 jaunākie dati
#iegūstiet jaunākos datus pēc valsts koda “BD”-Bangladeša, “IN”-Indija utt
self.local = self.covid.getLocationByCountryCode ('BD', timelines = False) #print (self.local) #print (self.latest)
izņemot:
"" "nevarēja iegūt datus" "" izdrukāt ("Interneta kļūda !!")
iet #ignore, tik un tā skriet
self.timer.start (1000) #start taimeris
self.show () #show mūsu lietotāja saskarne
def update (self):
"" "atjaunināt etiķetes ar informāciju" ""
"" "_Izvilkt reklāmu Atjaunināt informāciju par laiku un datumu_" ""
#iestatīt pulksteņa un datuma laiku (atjaunināt vērtības) #iegūt un atjaunināt vērtības #lai uzzinātu vairāk, lasiet python datuma un laika dokumentāciju
self.dt = datetime.datetime.now () #get datetime dati
self.clock.setText (self.dt.strftime ('%X')) self.weekday.setText (self.dt.strftime ('%A')) self.date.setText (self.dt.strftime ('% x ')) "" _atjaunināt covid19 datus.])) self.w_cured_num.setText (str (self.latest ['atgūti'])) #local jaunākie dati self.c_cured_num.setText (str (self.local [0] ['jaunākais'] ['atgūts'])) self.c_death_num.setText (str (self.local [0] ['latest'] ['deaths'])) self.c_cases_num.setText (str (self.local [0] ['jaunākais'] ['apstiprināts')]))
drukāt ("atjaunināšana")
atgriezties
def main (): app = QApplication (sys.argv) win = CoronaTracker () #instantiate sys.exit (app.exec ()) #palaidiet lietojumprogrammu, ja _name_ == '_main_': main ()
6. darbība. Pabeidziet:
Pēc koda pārbaudes es ievietoju to rakstāmgaldā un atvēlēju tam barošanas avotu. Lai tas varētu darboties uzlādes laikā. Izmantojot uzlabojumus, tas var darboties pat slodzes samazināšanas laikā, tas arī nodrošina atbilstošu aizsardzību SD kartei.
Neatkarīgi no tā, kādi un kādi mēs esam, mums ir jāmirst. Nedomāsim par sevi, par pasauli. Mēs varam mūžīgi dzīvot tikai ar saviem darbiem, lai tā būtu.
Ieteicams:
Kā izveidot analogo pulksteni un digitālo pulksteni ar LED joslu, izmantojot Arduino: 3 soļi
Kā izveidot analogo pulksteni un digitālo pulksteni ar LED joslu, izmantojot Arduino: Šodien mēs izgatavosim analogo pulksteni & Digitālais pulkstenis ar Led Strip un MAX7219 Dot modulis ar Arduino. Tas izlabos laiku atbilstoši vietējai laika joslai. Analogs pulkstenis var izmantot garāku LED sloksni, tāpēc to var pakārt pie sienas, lai tas kļūtu par mākslas darbu
Tiešais Covid19 izsekotājs, izmantojot ESP8266 un OLED - Reāllaika Covid19 informācijas panelis: 4 soļi
Tiešais Covid19 izsekotājs, izmantojot ESP8266 un OLED | Reāllaika Covid19 informācijas panelis: apmeklējiet Techtronic skarbo vietni: http: //techtronicharsh.com Visur, kur notiek milzīgs jaunā koronavīrusa (COVID19) uzliesmojums. Bija nepieciešams sekot līdzi pašreizējam COVID-19 scenārijam pasaulē. Tātad, būdams mājās, tas bija
Filmu izsekotājs - Raspberry Pi Powered Theatrical Release Tracker: 15 soļi (ar attēliem)
Filmu izsekotājs - Raspberry Pi darbināms teātra izlaidumu izsekotājs: Filmu izsekotājs ir izciļņa formas Raspberry Pi darbināms izlaiduma izsekotājs. Tas izmanto TMDb API, lai noteiktā laika intervālā (piemēram, filmas izlaidumi šonedēļ) izdrukātu plakātu, nosaukumu, izlaišanas datumu un pārskatu par gaidāmajām filmām jūsu reģionā
Produktivitātes izsekotājs - Powered by Raspberry Pi: 9 soļi (ar attēliem)
Produktivitātes izsekotājs - Powered by Raspberry Pi: Produktivitātes izsekotājs ir burvju spogulis, bet tā vietā, lai parādītu laiku, laika apstākļus un motivējošu citātu, tas parāda 4 lietas; Procentuālais laiks, ko esat pavadījis produktīvam materiālam datorā un tālrunī tajā dienā. (RescueTime) Jo
Padariet parasto pulksteni par atomu pulksteni: 3 soļi
Padariet savu parasto pulksteni atomu pulkstenī: vai jūsu sienas pulkstenis ir lēns, ātrs vai izslēgts par stundu, jo iestājās vasaras laiks? Padariet savu pulksteni par atomu ar šo vienkāršo nomaiņu par 18 ASV dolāriem, kas piegādāti vietnē klockit.com. Laiks tiek saņemts no Kolorādo atomu pulksteņa un noregulē pulksteni līdz 5 reizēm