Indholdsfortegnelse:

Desktop COVID19 -tracker med ur! Raspberry Pi Powered Tracker: 6 trin
Desktop COVID19 -tracker med ur! Raspberry Pi Powered Tracker: 6 trin

Video: Desktop COVID19 -tracker med ur! Raspberry Pi Powered Tracker: 6 trin

Video: Desktop COVID19 -tracker med ur! Raspberry Pi Powered Tracker: 6 trin
Video: BTT SKR2 -Klipper Firmware Install 2024, Juli
Anonim
Desktop COVID19 -tracker med ur! Raspberry Pi Powered Tracker
Desktop COVID19 -tracker med ur! Raspberry Pi Powered Tracker

Vi ved, at vi kan dø når som helst, selv jeg kan dø, mens jeg skriver dette indlæg, trods alt, jeg mig, dig, vi er alle dødelige. Hele verden rystede på grund af COVID19 -pandemien. Vi ved, hvordan vi kan forhindre dette, men hej! vi ved, hvordan vi skal bede, og hvorfor vi skal bede, gør vi det dagligt? Ingen!! Faktisk glemmer vi hovedårsagen til, hvorfor vi skal gøre ting. Så vi ved, at en hygiejnisk livsstil kan redde os, men vi gør det ikke ordentligt. Overvej sagen om min yngre bror, han vil ud og spille selv i denne tid. Jeg var nødt til at gøre noget for konsekvent at informere alle om de seneste tilfælde af COVID19. Så jeg lavede et digitalt skrivebord, der viser de seneste tilfælde af COVID19 i realtid. Da dette har et ur, kan jeg sætte det et sted, hvor alle samles eller kommer. De vil se tallene tilføje, hvilket vil udløse bevidsthed hos dem, og forhåbentlig vil alle være ved bevidsthed. Da jeg også er producent og hobbyist, viste det sig at være et godt projekt at arbejde med i denne lock-down-session.

Trin 1: Dele, jeg har brugt:

Dele jeg har brugt
Dele jeg har brugt
Dele jeg har brugt
Dele jeg har brugt
Dele jeg har brugt
Dele jeg har brugt
Dele jeg har brugt
Dele jeg har brugt
  • Raspberry Pi 3 Model B (startet med SD -kort)
  • Raspberry Pi UPS -modul (valgfrit)
  • 7 tommer HDMI LCD -skærm
  • HDMI til HDMI -kabel (dette følger med skærmen)
  • USB -kabler
  • 5v 2A strømadapter (til strømforsyning til pi)
  • PVC -ark [træfarve] (for at lave kroppen)

Trin 2: Konfigurer Raspberry Pi:

Opsætning af Raspberry Pi
Opsætning af Raspberry Pi

Jeg tror, du har indstillet pi'en perfekt, medmindre du ikke har -

  1. få et SD -kort - mere end 8 GB
  2. download den nyeste raspbian iso -fil herfra.
  3. Brænd SD -kortet ved hjælp af ætser

(Bemærk, at folk kan sige noget om anden software, som kræver, at du laver noget opsætning, men ætser er super let at bruge og enkel, men også effektiv.)

Bare tilslut dit SD -kort til pc, kør ætser, du vil se, at SD -kortet automatisk vælges af ætser, klik derefter for at vælge den downloadede iso -fil eller billede, og brænd det derefter. Efter vellykket skrivning og behandling, tag SD -kortet ud, og slut det til din pi, tænd for det og VOILA !! Den lever.

Trin 3: Kredsløbsdiagram:

Kredsløbsdiagram
Kredsløbsdiagram

Tilslut alt og tænd for raspbery pi, det er bare at forbinde, intet andet.

Du ser pi'en starte.

Trin 4: Kroppen:

Kroppen
Kroppen
Kroppen
Kroppen
Kroppen
Kroppen
Kroppen
Kroppen

Jeg skar et PVC -ark i henhold til skærmstørrelsen og tilføjede det derefter med skruer. Derefter fik jeg sat alt op. Endelig tilføjet endnu et ark på bagsiden for at støtte det fra at falde (blåt ark). Hvis alt er i orden, skal du se pi -opstart (sidste billede)

Trin 5: Softwaren (kildekoden):

Programmet er skrevet i python3. Til GUI (grafisk brugergrænseflade) brugte jeg PyQt5, og til at udtrække COVID19 -data i realtid brugte jeg COVID19Py -bibliotek. Tak til de fyre, der stillede API'en til rådighed for os

Det er stort set det, åbn nu Terminal på hindbær pi og installer biblioteker (kopier hver af dem og indsæt på rpi terminal).

Ignorer $ -tegnet under kopiering

$ pip3 installer pyqt5

$ pip3 installationsanmodninger $ pip3 install covid19py

Det er det, download nu koden herfra, jeg har angivet koden herunder:

"" "*Realtime Covid19 International og lokal tracker med ur*" "" "" *************** Bliv hjemme Hold dig sikker. Live, lad Live ******** ***** "" ""

"""

forfatter: ashraf minhaj mail: [email protected] websted: ashrafminhajfb.blogspot.com """

#importer nødvendige biblioteker

import PyQt5 #QT GUI Library til python3 fra PyQt5. QtCore import Qt, QTimer #timer for at opdatere fra PyQt5. QtWidgets import * #importer alt fra PyQt5. QtGui import QFont #til skrifttyper import sys #nødvendig for QT applikationer #import os import COVID19Py #covid19 information -api import datetime #du ved hvad dette er til

klasse CoronaTracker (QWidget):

"" "hovedklasse, der indeholder alt" "" def _init _ (self): "" "initialiser ting" "" super ()._ init _ () self.covid = COVID19Py. COVID19 () #initialize self.timer = QTimer () #initialiser self.timer.timeout.connect (self.update) #if timer når tærskel - opkaldsopdatering self.ui () #brugergrænseflade

def ui (selv):

"" "Brugergrænsefladesektion" "" self.setWindowTitle ("Covid19 International and Local Tracker") #self.setWindowFlags (Qt. CustomizeWindowHint) #hide title bar self.setStyleSheet ("Background-color: black") self.setFixedSize (640, 480) #efter min skærm (x, y) /rpi -opløsning

#hovedetiket

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 ("" "baggrundsfarve: sort; farve: hvid; kantstil: begyndelse; kantbredde: 1px" ""))

"" "_worlds nyeste data_" ""

#world label self.w = QLabel (self) self.w.setGeometry (200, 55, 400, 40) self.w.setText ("World at a Glance") self.w.setFont (QFont ('SansSerif', 18)) self.w.setStyleSheet ("" "baggrundsfarve: sort; farve: blå; kantstil: begyndelse; kantbredde: 1px" ""))

#verdensomspændende bekræftede tilfælde

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 ("" "baggrundsfarve: sort; farve: orange; kantstil: udgang; kantbredde: 1px" "") #cases nummer 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 ("" "baggrundsfarve: sort; farve: hvid; kantstil: begyndelse; kantbredde: 1px "" "")

#dødsfald på verdensplan

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 ("" "baggrundsfarve: sort; farve: rød; kantstil: udgang; kantbredde: 1px" "") #dødsnummer 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 ("" "baggrundsfarve: sort; farve: hvid; kantstil: begyndelse; kantbredde: 1px "" "")

#verden over helbredt

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 ("" "baggrundsfarve: sort; farve: cyan; kantstil: begyndelse; kantbredde: 1px" "")

#worldwide helbredt nummer

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 ("" "baggrundsfarve: sort; farve: hvid; kantstil: begyndelse; kantbredde: 1px "" ")

"" "_ Lokal-efter landskode_" """

#local - Country self.c = QLabel (self) self.c.setGeometry (170, 200, 400, 40) self.c.setText ("Mit land: Bangladesh") self.c.setFont (QFont ('SansSerif'), 18)) self.c.setStyleSheet ("" "baggrundsfarve: sort; farve: hvid; kantstil: begyndelse; kantbredde: 1px" "")) #lokal bekræft tilfælde self.c_cases = QLabel (selv) self.c_cases.setGeometry (5, 240, 400, 40) self.c_cases.setText ("Cases:") self.c_cases.setFont (QFont ('SansSerif', 18)) self.c_cases.setStyleSheet ("" "baggrund -farve: sort; farve: orange; kantstil: begyndelse; kantbredde: 1px "" ") #lokale sager nummer 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 ("" "baggrundsfarve: sort; farve: hvid; kantstil: udgang; kantbredde: 1px" ""))

#lokale dødsfald

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 ("" "baggrundsfarve: sort; farve: rød; kantstil: begyndelse; kantbredde: 1px" ""))

#lokale dødsfald nummer

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 ("" "baggrundsfarve: sort; farve: hvid; kantstil: begyndelse; kantbredde: 1px "" ") #lokalhærdet 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 ("" "baggrundsfarve: sort; farve: cyan; border-style: outset; kantbredde: 1px "" ") #lokalhærdet nummer 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 ("" "baggrundsfarve: sort; farve: hvid; kantstil: begyndelse; kantbredde: 1px" "")

"" "_ Tid, dato, ur_" """

#clock self.clock = QLabel (self) self.clock.setGeometry (115, 340, 400, 70) self.clock.setFont (QFont ('SansSerif', 60)) self.clock.setStyleSheet ("" "baggrund- farve: sort; farve: hvid; kantstil: begyndelse; kantbredde: 1px "" ") #label for hverdag self.weekday = QLabel (self) self.weekday.setGeometry (5, 360, 110, 20) self.weekday.setFont (QFont ('SansSerif', 13)) self.weekday.setStyleSheet ("" "baggrundsfarve: sort; farve: hvid; kantstil: begyndelse; kantbredde: 1px" "") #dato 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 ("" "baggrundsfarve: sort; farve: hvid; kantstil: begyndelse; kantbredde: 1px" ""))

#tjek timeren, hvis ikke self.timer.isActive (): #if timer er stoppet (nået tærskel) #Efter 1 sekund (ca.) eller 1000ms

prøve:

"" "prøv at hente data, ellers kør koden alligevel" "" self.latest = self.covid.getLatest () #gte covid19 seneste data

#få de nyeste data efter landekode 'BD'-Bangladesh,' IN'-Indien osv

self.local = self.covid.getLocationByCountryCode ('BD', tidslinjer = Falsk) #print (self.local) #print (self.latest)

undtagen:

"" "kunne ikke hente data" "" print ("Internetfejl !!")

pass #ignore, løb alligevel

self.timer.start (1000) #start timeren

self.show () #show vores brugergrænseflade

def opdatering (selv):

"" "opdater etiketter med oplysninger" ""

"" "_ Udtræk annonceopdateringstidspunkt og datooplysninger_" """

#opsæt ur og dato klokkeslæt (opdateringsværdier) #hent og opdater værdier #tfor mere at vide, læs python datetime dokumentation

self.dt = datetime.datetime.now () #get datetime -data

self.clock.setText (self.dt.strftime ('%X')) self.weekday.setText (self.dt.strftime ('%A')) self.date.setText (self.dt.strftime ('% x ')) "" "_opdatering covid19 data_" "" #worldwide seneste data self.w_cases_num.setText (str (self.latest [' bekræftet '])) self.w_death_num.setText (str (self.latest [' death ')])) self.w_cured_num.setText (str (self.latest ['recovered'])) #local seneste data self.c_cured_num.setText (str (self.local [0] ['latest'] ['recovered'])) self.c_death_num.setText (str (self.local [0] ['seneste'] ['dødsfald'])) self.c_cases_num.setText (str (self.local [0] ['seneste'] ['bekræftet')]))

print ("opdaterer")

Vend tilbage

def main (): app = QApplication (sys.argv) win = CoronaTracker () #instantiate sys.exit (app.exec ()) #run applikationen hvis _name_ == '_main_': main ()

Trin 6: Afslut:

Færdiggøre
Færdiggøre

Efter at have testet koden satte jeg den i skrivebordet og dedikerede en strømkilde til den. Så det kan fungere under opladning. Ved at bruge ups kan dette også køre ved belastningsafbrydelse, hvilket giver ur pi SD-kortet også en passende beskyttelse.

Uanset hvordan eller hvem vi er, skal vi dø. Lad os ikke tænke på dig selv, tænk på verden. Vi kan kun leve evigt gennem vores gerninger, lad det være sådan.

Anbefalede: