Orodha ya maudhui:

Desktop COVID19 Tracker Pamoja na Saa! Raspberry Pi Powered Tracker: 6 Hatua
Desktop COVID19 Tracker Pamoja na Saa! Raspberry Pi Powered Tracker: 6 Hatua

Video: Desktop COVID19 Tracker Pamoja na Saa! Raspberry Pi Powered Tracker: 6 Hatua

Video: Desktop COVID19 Tracker Pamoja na Saa! Raspberry Pi Powered Tracker: 6 Hatua
Video: Marlin Firmware 2.0.x Explained 2024, Novemba
Anonim
Desktop COVID19 Tracker Pamoja na Saa! Raspberry Pi Powered Tracker
Desktop COVID19 Tracker Pamoja na Saa! Raspberry Pi Powered Tracker

Tunajua kuwa tunaweza kufa wakati wowote, hata mimi naweza kufa wakati wa kuandika chapisho hili, baada ya yote, mimi, wewe, sisi sote ni wanadamu. Ulimwengu wote ulitetemeka kwa sababu ya janga la COVID19. Tunajua jinsi ya kuzuia hii, lakini he! tunajua jinsi ya kuomba na kwa nini kuomba, je, tunafanya kila siku? Hapana!! Kwa kweli, tunasahau sababu kuu ya kwanini tunapaswa kufanya mambo. Kwa hivyo, tunajua kuwa maisha ya usafi yanaweza kutuokoa lakini hatuifanyi vizuri. Fikiria kesi ya kaka yangu mdogo, anataka kwenda nje na kucheza hata wakati huu. Ilinibidi nifanye kitu kila mara kumjulisha kila mtu juu ya visa vya hivi karibuni vya COVID19. Kwa hivyo, nilitengeneza onyesho la dawati la kuchimba ambalo linaonyesha kesi za hivi karibuni za COVID19 kwa wakati halisi. Kwa kuwa hii ina saa basi naweza kuiweka mahali ambapo kila mtu hukusanyika au anakuja. Wataona nambari zikiongezeka, ambazo zitasababisha ufahamu ndani yao na tunatumahi kila mtu atakuwa na ufahamu. Pia kama mimi ni mtengenezaji na hobbyist, hii ikawa mradi mzuri wa kufanya kazi katika kikao hiki cha kufungia.

Hatua ya 1: Sehemu ambazo nimetumia:

Sehemu ambazo nimetumia
Sehemu ambazo nimetumia
Sehemu ambazo nimetumia
Sehemu ambazo nimetumia
Sehemu ambazo nimetumia
Sehemu ambazo nimetumia
Sehemu ambazo nimetumia
Sehemu ambazo nimetumia
  • Raspberry Pi 3 Model B (iliyotumiwa kwa kutumia kadi ya sd)
  • Moduli ya Raspberry Pi UPS (hiari)
  • Skrini ya inchi 7 ya HDMI LCD
  • HDMI kwa kebo ya HDMI (hii inakuja na skrini)
  • Kamba za USB
  • 5v 2A adapta ya umeme (kuwezesha pi)
  • Karatasi ya PVC [rangi ya mbao] (kutengeneza mwili)

Hatua ya 2: Sanidi Raspberry Pi:

Sanidi Raspberry Pi
Sanidi Raspberry Pi

Nadhani umeweka pi kikamilifu, isipokuwa haujapata -

  1. pata kadi ya SD - zaidi ya 8 GB
  2. pakua faili ya hivi karibuni ya raspbian iso kutoka hapa.
  3. Choma kadi ya SD ukitumia etcher

(Kumbuka kuwa watu wanaweza kusema juu ya programu zingine ambazo zinahitaji ufanye usanidi mzuri lakini etcher ni rahisi kutumia na rahisi lakini yenye ufanisi pia.)

Chomeka kadi yako ya SD kwenye pc, endcher etcher, utaona kadi ya SD imechaguliwa kiotomatiki na etcher, kisha bonyeza kuchagua faili ya iso iliyopakuliwa au picha, kisha ichome. Baada ya kufanikiwa uandishi na usindikaji ondoa kadi ya SD na uiunganishe na pi yako, iwezeshe na VOILA !! Ni hai.

Hatua ya 3: Mchoro wa Mzunguko:

Mchoro wa Mzunguko
Mchoro wa Mzunguko

Unganisha kila kitu juu na uimarishe ujambazi pi, inaunganisha tu, hakuna kitu kingine chochote.

Utaona kupiga pi.

Hatua ya 4: Mwili:

Mwili
Mwili
Mwili
Mwili
Mwili
Mwili
Mwili
Mwili

Nilikata karatasi ya PVC kulingana na saizi ya onyesho, kisha nikaiongeza kwa kutumia vis. Baada ya hapo nilitia waya kila kitu. Mwishowe akaongeza karatasi nyingine nyuma ili kuiunga mkono kutoka kwa kuanguka (karatasi ya samawati). Ikiwa kila kitu ni sawa, unapaswa kuona kupiga picha (picha ya mwisho)

Hatua ya 5: Programu (Msimbo wa Chanzo):

Mpango huo umeandikwa katika python3. Kwa GUI (Interface ya Mtumiaji wa Picha) nilitumia PyQt5, na kutoa data ya wakati halisi ya COVID19 nilitumia maktaba ya COVID19Py. Shukrani kwa wavulana ambao walifanya API ipatikane kwetu

Hiyo ni nzuri sana, sasa fungua Kituo kwenye raspberry pi na uweke maktaba (nakili kila moja yao na ubandike kwenye kituo cha rpi).

Puuza ishara ya $ wakati unanakili

$ pip3 sakinisha pyqt5

$ pip3 kufunga maombi $ pip3 install covid19py

Hiyo ndio, sasa pakua nambari kutoka hapa, nimetoa nambari hapa chini:

"" "* Realtime Covid19 Kufuatilia Kimataifa na Mitaa Pamoja na Saa ***** """

"""

mwandishi: ashraf minhaj mail: [email protected] tovuti: ashrafminhajfb.blogspot.com """

#mport maktaba muhimu

kuagiza PyQt5 #QT GUI Library kwa python3 kutoka PyQt5. QtCore kuagiza Qt, QTimer #timer kusasisha kutoka PyQt5. QtWidgets kuagiza * #import kila kitu kutoka PyQt5. QtGui kuagiza QFont #for fonts kuagiza sys # muhimu kwa matumizi ya QT # covid19 habari -api ingiza wakati wa wakati #unajua hii ni ya nini

darasa CoronaTracker (QWidget):

"" "darasa kuu ambalo lina kila kitu" "def _init _ (self):" "" anzisha vitu "" "super ()._ init _ () self.covid = COVID19Py. COVID19 () # anzisha self.timer = QTimer () # anzisha self.timer.timeout.connect (self.update) #kama kipima muda kinafikia kizingiti - simu sasisha self.ui () # interface ya mtumiaji

def ui (binafsi):

"" "Sehemu ya Kiolesura cha Mtumiaji" "" self.setWindowTitle ("Covid19 International and Local Tracker") # self.setWindowFlags (Qt. CustomizeWindowHint) #ficha kichwa cha kichwa self.setStyleSheet ("Rangi ya asili: nyeusi") self.setFixedSize (640, 480) #kama kwa onyesho langu (x, y) / azimio la rpi

lebo kuu #

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 ("Janga la CORONA - COVID19 TRACKER") self.banner_label. setFont (QFont ('SansSerif', 20)) self.banner_label.setStyleSheet ("" "rangi ya usuli: nyeusi; rangi: nyeupe; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px" "")

"" "_ data za hivi karibuni_" ""

lebo ya #dunia self.w = QLabel (self) self.w.setGeometry (200, 55, 400, 40) self.w.setText ("Ulimwengu kwa Mtazamo") self.w.setFont (QFont ('SansSerif', 18)) self.w.setStyleSheet ("" "rangi ya mandharinyuma: nyeusi; rangi: bluu; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px" "")

#kesi zilizothibitishwa ulimwenguni

kesi za kibinafsi.w_cases = QLabel (self) kesi.set. Jeometry (5, 90, 100, 40) self.w_cases.setText ("Kesi:") self.w_cases.setFont (QFont ('SansSerif', 18)). w_cases., 90, 100, 40) self.w_cases_num.setFont (QFont ('SansSerif', 18)) self.w_cases_num.setStyleSheet ("" "rangi ya asili: nyeusi; rangi: nyeupe; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px "" ")

#kufa duniani

self.w_death = QLabel (self) self.w_death.setGeometry (350, 90, 100, 40) self.w_death.setText ("Vifo:") self.w_mauti.setFont (QFont ('SansSerif', 18)) mwenyewe. w_death.setStyleSheet ("" "rangi ya mandharinyuma: nyeusi; rangi: nyekundu; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px" "") nambari ya kifo self.w_death_num = QLabel (self) self.w_death_num.setGeometry (460), 90, 100, 40) ubinafsi.w_kufa_num.setFont (QFont ('SansSerif', 18)) self.w_death_num.setStyleSheet ("" "rangi ya asili: nyeusi; rangi: nyeupe; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px "" ")

#dunia kote kutibiwa

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)) mwenyewe. w_cured.setStyleSheet ("" "rangi ya mandharinyuma: nyeusi; rangi: cyan; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px" "")

#dunia kote kutibiwa

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 ("" "rangi ya nyuma: nyeusi; rangi: nyeupe; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px "" ")

"" "_ Kanuni ya Nchi-Kwa Nchi _" """

#local - Country self.c = QLabel (self) self.c. Geometry (170, 200, 400, 40) self.c.setText ("Nchi yangu: Bangladesh") self.c.setFont (QFont ('SansSerif'), 18)) self.c.setStyleSheet ("" "rangi ya asili: nyeusi; rangi: nyeupe; mtindo wa mpaka: mwanzo; kesi.ya.c.za.jijiometri (5, 240, 400, 40) zenyewe.cases.setText ("Kesi:") self.c_cases.setFont (QFont ('SansSerif', 18)) self.c_cases.setStyleSheet ("" "background -color: nyeusi; rangi: rangi ya machungwa; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px "" ") # kesi za mitaa nambari 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 ("" "rangi ya usuli: nyeusi; rangi: nyeupe; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px" ""))

#vifo vya kienyeji

self.c_death = QLabel (self) self.c_death.setGeometry (350, 240, 100, 40) self.c_death.setText ("Vifo:") self.c_kufa.setFont (QFont ('SansSerif', 18)) mwenyewe. c_death.setStyleSheet ("" "rangi ya mandharinyuma: nyeusi; rangi: nyekundu; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px" "")

# idadi ya vifo vya mitaa

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 ("" "rangi ya nyuma: nyeusi; rangi: nyeupe; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px "" ") #jeruhi ya kutibiwa kijijini.c_cured = QLabel (self) self.c_cured.setGeometry (5, 280, 100, 40) self.c_cured. setText ("Imeponywa:") self.c_cured.setFont (QFont ('SansSerif', 18)) self.c_cured.setStyleSheet ("" "rangi ya asili: nyeusi; rangi: cyan; mtindo wa mpaka: mwanzo; upana wa mpaka # 1px "" ") #nambari ya kutibiwa ya eneo 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 ("" "rangi ya usuli: nyeusi; rangi: nyeupe; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px" "")

"" "_Wakati, Tarehe, Saa_" """

#clock self.clock = QLabel (self) self.clock.set Jiometri (115, 340, 400, 70) self.clock.set. Font (QFont ('SansSerif', 60)) self.clock.setStyleSheet ("" "background- rangi: nyeusi; rangi: nyeupe; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px "" ") #label kwa siku ya wiki self.weekday = QLabel (self) self.weekday.setGeometry (5, 360, 110, 20).weekday.setFont (QFont ('SansSerif', 13)) self.weekday.setStyleSheet ("" "rangi ya asili: nyeusi; rangi: nyeupe; mtindo wa mpaka: mwanzo; upana wa mpaka: 1px" "") #tarehe lebo self.date = QLabel (binafsi) self.date.setGeometry (510, 360, 110, 20) # self.clock.setText ("22:49:00") self.date.setFont (QFont ('SansSerif', 13)) self.date.setStyleSheet ("" "rangi ya mandharinyuma: nyeusi; rangi: nyeupe; mtindo wa mpaka: mwanzo;

# angalia kipima muda ikiwa sio ubinafsi.timer.isActive (): #kama kipima muda kimesimamishwa (kizingiti kimefikiwa) #Baada ya sekunde 1 (takriban.) au 1000ms

jaribu:

"" "jaribu kupata data, vinginevyo endesha nambari hata hivyo" "self.latest = self.covid.getLatest () #gte covid19 data mpya

#pata data ya hivi karibuni kwa nambari ya nchi 'BD'-Bangladesh,' IN'-India nk

self.local = self.covid.getLocationByCountryCode ('BD', ratiba = Uongo) #print (self.local) #print (self.latest)

isipokuwa:

"" "haikuweza kupata data" "" chapa ("Kosa la Mtandao !!")

pitisha #sajili, kimbia hata hivyo

anza.binafsi.timer (1000) # anza kipima muda

self.show () #onyesha kiolesura chetu cha Mtumiaji

sasisha (kibinafsi):

sasisha lebo zilizo na habari """

"" "_Chukua tangazo Sasisha Saa na Tarehe Habari_" ""

#washa saa na saa ya saa (sasisha maadili) #pata na sasisha maadili #kujua zaidi soma nyaraka za wakati wa python

self.dt = datetime.datetime.now () #pata data ya wakati

self.clock.setText (self.dt.strftime ('% X')) self.weekday.setText (self.dt.strftime ('% A')) self.date.setText (self.dt.strftime ('% x ')) "" "_sasisha data ya covid19 _ [) [self [ya hivi karibuni ['ahueni']) # data ya hivi karibuni ya kibinafsi self.c_ponywa_num.setText (str (self.local [0] ['latest'] ['recover'])) self.c_death_num.setText (str (self.local [0] ['latest'] ['vifo'])) self.c_cases_num.setText (str (self.local [0] ['karibuni'] ['imethibitishwa']))

chapisha ("kusasisha")

kurudi

def main (): app = QApplication (sys.argv) win = CoronaTracker () #instantiate sys.exit (app.exec ()) # kukimbia programu ikiwa _name_ == '_main_': kuu ()

Hatua ya 6: Maliza:

Maliza
Maliza

Baada ya kujaribu nambari niliiweka kwenye dawati na kujitolea chanzo cha nguvu kwa hiyo. Ili iweze kufanya kazi wakati wa kuchaji. Kwa kutumia ups hii inaweza kukimbia hata katika upakuaji wa mzigo pia, hii inakupa kadi ya SD ya SD kinga inayofaa pia.

Haijalishi ni vipi au sisi ni nani, tunapaswa kufa. Wacha tufikirie juu yako mwenyewe, fikiria juu ya ulimwengu. Tunaweza kuishi milele tu kupitia matendo yetu, iwe hivyo.

Ilipendekeza: