Daftar Isi:

Pelacak COVID19 Desktop Dengan Jam! Pelacak Bertenaga Raspberry Pi: 6 Langkah
Pelacak COVID19 Desktop Dengan Jam! Pelacak Bertenaga Raspberry Pi: 6 Langkah

Video: Pelacak COVID19 Desktop Dengan Jam! Pelacak Bertenaga Raspberry Pi: 6 Langkah

Video: Pelacak COVID19 Desktop Dengan Jam! Pelacak Bertenaga Raspberry Pi: 6 Langkah
Video: Magic 5 - Episode 4 2024, November
Anonim
Pelacak COVID19 Desktop Dengan Jam! Pelacak Bertenaga Raspberry Pi
Pelacak COVID19 Desktop Dengan Jam! Pelacak Bertenaga Raspberry Pi

Kita tahu bahwa kita bisa mati kapan saja, bahkan saya bisa mati saat menulis posting ini, bagaimanapun juga, saya saya, Anda, kita semua adalah manusia. Seluruh dunia berguncang karena pandemi COVID19. Kami tahu cara mencegahnya, tapi hei! kita tahu bagaimana berdoa dan mengapa harus berdoa, apakah kita melakukannya setiap hari? Tidak!! Sebenarnya, kita lupa akar penyebab mengapa kita harus melakukan sesuatu. Jadi, kita tahu bahwa gaya hidup higienis dapat menyelamatkan kita, tetapi kita tidak melakukannya dengan benar. Pertimbangkan kasus adik laki-laki saya, dia ingin pergi keluar dan bermain bahkan saat ini. Saya harus melakukan sesuatu untuk secara konsisten memberi tahu semua orang tentang kasus terbaru COVID19. Jadi, saya membuat tampilan meja digital yang menampilkan kasus terbaru COVID19 secara real time. Karena ini memiliki jam maka saya dapat meletakkannya di tempat di mana semua orang berkumpul atau datang. Mereka akan melihat jumlahnya bertambah, yang akan memicu kesadaran di dalamnya dan mudah-mudahan semua orang akan sadar. Juga karena saya seorang pembuat dan penghobi, ini ternyata menjadi proyek yang bagus untuk dikerjakan di sesi penguncian ini.

Langkah 1: Bagian yang Saya Gunakan:

Bagian yang Saya Gunakan
Bagian yang Saya Gunakan
Bagian yang Saya Gunakan
Bagian yang Saya Gunakan
Bagian yang Saya Gunakan
Bagian yang Saya Gunakan
Bagian yang Saya Gunakan
Bagian yang Saya Gunakan
  • Raspberry Pi 3 Model B (boot menggunakan kartu sd)
  • Modul UPS Raspberry Pi (opsional)
  • Layar LCD HDMI 7 inci
  • Kabel HDMI ke HDMI (ini dilengkapi dengan layar)
  • kabel USB
  • Adaptor daya 5v 2A (untuk memberi daya pada pi)
  • Lembaran PVC [warna kayu] (untuk membuat tubuh)

Langkah 2: Siapkan Raspberry Pi:

Siapkan Raspberry Pi
Siapkan Raspberry Pi

Saya kira Anda telah mengatur pi dengan sempurna, kecuali jika Anda belum -

  1. dapatkan kartu SD - lebih dari 8 GB
  2. unduh file iso raspbian terbaru dari sini.
  3. Bakar kartu SD menggunakan etsa

(Perhatikan bahwa orang dapat mengatakan tentang perangkat lunak lain yang mengharuskan Anda melakukan beberapa pengaturan tetapi etsa sangat mudah digunakan dan sederhana tetapi juga efektif.)

Cukup colokkan kartu SD Anda ke pc, jalankan etcher, Anda akan melihat kartu SD dipilih secara otomatis oleh etcher, lalu klik untuk memilih file atau gambar iso yang diunduh, lalu bakar. Setelah berhasil menulis dan memproses, cabut kartu SD dan sambungkan ke pi Anda, nyalakan dan VOILA!! Ini hidup.

Langkah 3: Diagram Sirkuit:

Diagram Sirkuit
Diagram Sirkuit

Hubungkan semuanya dan nyalakan raspbery pi, itu hanya menghubungkan, tidak ada yang lain.

Anda akan melihat pi boot.

Langkah 4: Tubuh:

Tubuh
Tubuh
Tubuh
Tubuh
Tubuh
Tubuh
Tubuh
Tubuh

Saya memotong lembaran PVC sesuai dengan ukuran tampilan, lalu menambahkannya menggunakan sekrup. Setelah itu saya menghubungkan semuanya. Akhirnya ditambahkan satu lembar lagi di belakang untuk menahannya agar tidak jatuh (lembaran biru). Jika semuanya baik-baik saja, Anda akan melihat pi boot (gambar terakhir)

Langkah 5: Perangkat Lunak (Kode Sumber):

Program ini ditulis dalam python3. Untuk GUI (Graphical User Interface) saya menggunakan PyQt5, dan untuk mengekstrak data COVID19 realtime saya menggunakan perpustakaan COVID19Py. Terima kasih kepada orang-orang yang membuat API tersedia untuk kami

Itu saja, sekarang buka Terminal pada raspberry pi dan instal perpustakaan (salin masing-masing dan tempel di terminal rpi).

Abaikan tanda $ saat menyalin

$ pip3 instal pyqt5

$ pip3 instal permintaan$ pip3 instal covid19py

Itu saja, sekarang unduh kodenya dari sini, saya sudah menyediakan kode di bawah ini:

"""* Pelacak Internasional dan Lokal Covid19 Realtime Dengan Jam *""" """ ************** Tetap Di Rumah Tetap Aman. Live, Let Live ******** ***** """

"""

penulis: ashraf minhaj email: [email protected] situs: ashrafminhajfb.blogspot.com """

#import perpustakaan yang diperlukan

impor PyQt5 #QT GUI Library untuk python3 dari PyQt5. QtCore impor Qt, QTimer #timer untuk memperbarui dari PyQt5. QtWidgets impor * #impor semuanya dari PyQt5. QtGui impor QFont #untuk font impor sys #diperlukan untuk aplikasi QT #impor os impor COVID19Py #informasi covid19 -api import datetime #kamu tahu ini untuk apa

kelas CoronaTracker (QWidget):

"""kelas utama yang berisi semuanya""" def _init_(self): """menginisialisasi sesuatu""" super()._init_() self.covid = COVID19Py. COVID19() #initialize self.timer = QTimer() #inisialisasi self.timer.timeout.connect(self.update) #jika timer mencapai ambang batas - panggil update self.ui() #user interface

def ui (diri):

"""Bagian Antarmuka Pengguna""" self.setWindowTitle("Pelacak Internasional dan Lokal Covid19") #self.setWindowFlags(Qt. CustomizeWindowHint) #sembunyikan bilah judul self.setStyleSheet("Warna latar: hitam") self.setFixedSize(640, 480) #sesuai tampilan saya (x, y) /rpi resolusi

#label utama

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("Pandemi CORONA - TRACKER COVID19") self.banner_label. setFont(QFont('SansSerif', 20)) self.banner_label.setStyleSheet(""" background-color: black; color: white; border-style: outset; border-width: 1px """)

"""_data terbaru di dunia_"""

#world label self.w = QLabel(self) self.w.setGeometry(200, 55, 400, 40) self.w.setText("Sekilas Dunia") self.w.setFont(QFont('SansSerif', 18)) self.w.setStyleSheet(""" warna latar: hitam; warna: biru; gaya batas: awal; lebar batas: 1px """)

#kasus terkonfirmasi di seluruh dunia

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 """) #nomor kasus 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(""" background-color: black; color: white; border-style: outset; border-width: 1 piksel """)

#kematian di seluruh dunia

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 """) #nomor kematian 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(""" background-color: black; color: white; border-style: outset; border-width: 1 piksel """)

#sembuh sedunia

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(""" warna latar belakang: hitam; warna: cyan; gaya batas: awal; lebar batas: 1px """)

#angka sembuh sedunia

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(""" warna latar belakang: hitam; warna: putih; gaya batas: awal; lebar batas: 1px """)

"""_Lokal-Menurut Kode negara_"""

#local - Country self.c = QLabel(self) self.c.setGeometry(170, 200, 400, 40) self.c.setText("My Country: Bangladesh") self.c.setFont(QFont('SansSerif', 18)) self.c.setStyleSheet(""" background-color: black; color: white; border-style: outset; border-width: 1px """) #local konfirmasi kasus 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 -warna: hitam; warna: oranye; gaya batas: awal; lebar batas: 1px """) #nomor kasus lokal 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 """)

#kematian lokal

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(""" warna latar belakang: hitam; warna: merah; gaya batas: awal; lebar batas: 1px """)

#jumlah kematian lokal

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(""" warna latar belakang: hitam; warna: putih; gaya batas: awal; lebar batas: 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(""" background-color: black; color: cyan; border-style: outset; border-width: 1px """) #nomor sembuh lokal 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(""" warna latar: hitam; warna: putih; gaya batas: awal; lebar batas: 1px """)

"""_Waktu, Tanggal, Jam_"""

#clock self.clock = QLabel(self) self.clock.setGeometry(115, 340, 400, 70) self.clock.setFont(QFont('SansSerif', 60)) self.clock.setStyleSheet(""" background- warna: hitam; warna: putih; gaya batas: awal; lebar batas: 1px """) #label untuk self.weekday hari kerja = 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(""" warna latar: hitam; warna: putih; gaya batas: awal; lebar batas: 1px """)

#periksa timer jika tidak self.timer.isActive(): #jika timer dihentikan (mencapai ambang batas) #Setelah 1 detik (kira-kira) atau 1000ms

mencoba:

"""coba ambil data, kalau tidak jalankan kodenya""" self.latest = self.covid.getLatest() #gte covid19 data terbaru

#dapatkan data terbaru dengan kode negara 'BD'-Bangladesh, 'IN'-India dll

self.local = self.covid.getLocationByCountryCode('BD', timelines=False) #print(self.local) #print(self.latest)

kecuali:

"""tidak bisa mendapatkan data""" print("Internet Error!!")

lewati #abaikan, tetap lari

self.timer.start(1000) #start timer

self.show() #tampilkan Antarmuka Pengguna kami

pembaruan def (sendiri):

"""perbarui label dengan informasi"""

"""_Ekstrak Informasi Waktu dan Tanggal Perbarui iklan_"""

#set up jam dan tanggal waktu (perbarui nilai) #dapatkan dan perbarui nilai #untuk mengetahui lebih lanjut baca dokumentasi python datetime

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')) """_perbarui data covid19_"""" #data terbaru di seluruh dunia self.w_cases_num.setText(str(self.latest['confirmed'])) self.w_death_num.setText(str(self.latest['deaths'])) self.w_cured_num.setText(str(self.latest['recovered'])) #local data terbaru self.c_cured_num.setText(str(self.local[0]['latest']['recovered'])) self.c_death_num.setText(str(self.local[0]['latest']['deaths'])) self.c_cases_num.setText(str(self.local[0]['latest']['confirmed']))

print("memperbarui")

kembali

def main(): app = QApplication(sys.argv) win = CoronaTracker() #instantiate sys.exit(app.exec()) #jalankan aplikasi jika _name_ == '_main_': main()

Langkah 6: Selesaikan:

Selesaikanlah
Selesaikanlah

Setelah menguji kode, saya meletakkannya di meja dan mendedikasikan sumber daya untuk itu. Sehingga dapat bekerja saat pengisian. Dengan menggunakan up ini dapat berjalan bahkan dalam pelepasan beban juga, ini memberikan kartu SD pi Anda perlindungan yang sesuai juga.

Tidak peduli bagaimana atau siapa kita, kita harus mati. Jangan memikirkan diri sendiri, pikirkan dunia. Kita hanya bisa hidup selamanya melalui perbuatan kita, biarlah seperti itu.

Direkomendasikan: