- Komponen yang Diperlukan:
- Bagaimana itu bekerja:
- Penjelasan Sirkuit:
- Cara menjalankan Kode di Raspberry Pi:
- Penjelasan Pemrograman:
Raspberry Pi adalah papan pengembangan populer berbasis korteks ARM yang dirancang untuk Insinyur dan Penghobi Elektronik. Ini adalah komputer papan tunggal yang bekerja dengan daya rendah dengan kecepatan pemrosesan dan memori yang sangat baik. Raspberry Pi dapat digunakan untuk melakukan berbagai fungsi pada satu waktu, seperti PC biasa, dan karenanya disebut Komputer Mini di telapak tangan Anda.
Kami telah membuat serangkaian Tutorial Raspberry Pi, di mana kami telah membahas Antarmuka Raspberry Pi dengan semua komponen dasar, serta beberapa proyek Raspberry Pi sederhana untuk memulai.
Di sini kita akan membangun Mesin Voting Elektronik menggunakan Raspberry Pi Board. Kita semua tahu tentang Electronic Voting Machine (EVM) yang digunakan untuk memberikan suara dalam Pemilu, dengan menekan tombol sederhana. Kami telah membahas Mesin Voting Elektronik menggunakan Mikrokontroler yang berbeda seperti EVM dengan mikrokontroler AVR dan EVM dengan Arduino. Kami juga telah membangun Mesin Pemungutan Suara di mana Pemilih diautentikasi dengan tag RFID, sehingga hanya suara yang diautentikasi yang dapat dihitung.
Mesin Voting Elektronik yang menggunakan Raspberry Pi ini lebih sederhana dan mudah, dibandingkan dengan Proyek Mesin Voting kami sebelumnya.
Komponen yang Diperlukan:
- Raspberry Pi - 1
- LCD 16x2 - 1
- Tombol tekan - 5
- Papan roti - 1
- Menghubungkan kabel
- Resistor 1K - 1
- Resistor 10K - 5
- POT 10K - 1
- LED - 5
Bagaimana itu bekerja:
Dalam proyek ini kami telah menggunakan empat tombol untuk memilih empat kandidat atau partai. Kami dapat menambah jumlah kandidat, tetapi untuk pemahaman yang lebih baik kami hanya menggunakan empat di sini. Ketika seorang pemilih menekan salah satu dari empat tombol, maka 'penghitungan suara' untuk partai atau kandidat yang dihormati, bertambah satu setiap kali. Pada saat yang sama LED berkedip dan bel berbunyi bip sedetik, untuk menandakan bahwa Suara telah diberikan. Setelah Voting selesai, kami memiliki tombol "Hasil", untuk menunjukkan hasil Voting. Saat kita menekan tombol ini, layar LCD menunjukkan nama pihak yang menang dengan no. suara yang diberikan kepada masing-masing partai.
Penjelasan Sirkuit:
Diagram Sirkuit EVM ini menggunakan Raspberry Pi diberikan di bawah ini. Raspberry Pi mengontrol seluruh proses seperti Membaca Tombol, meningkatkan penghitungan suara, menghasilkan hasil dan menampilkan semua hal di LCD.
Di sini kami telah menggunakan papan Raspberry Pi 3 untuk melakukan semua operasi dalam proyek dan menggunakan Perpustakaan wiringPi untuk memilih dan mengontrol pin GPIO dari Raspberry Pi. Kita juga bisa menggunakan Raspberry Pi 2 disini. Di sini kami telah menggunakan Lima Tombol, di mana empat telah digunakan untuk Memilih empat kandidat / partai yang berbeda dan satu tombol digunakan untuk menampilkan Hasil pada LCD. Kelima tombol ini terhubung langsung ke pin GPIO 21 hingga 25 dari RPI3, sehubungan dengan ground dengan resistor pull-up 10K untuk masing-masingnya. LCD 16x2 terhubung dengan Raspberry Pi. Pin kontrol RS, RW dan En dihubungkan ke pin GPIO 11, GND dan 10. Dan pin data D4-D7 dihubungkan ke pin GPIO 6, 5, 4 dan 1 RPI. Sebuah buzzerjuga digunakan untuk bip ketika salah satu tombol ditekan oleh pemilih. Di sini kami menggunakan LED Hijau (D5) untuk menunjukkan bahwa sistem sudah siap dan pemilih dapat mengirimkan suaranya di mesin, dengan menekan tombol. Pot 10k digunakan untuk mengontrol kecerahan LCD.
Cara menjalankan Kode di Raspberry Pi:
1. Pertama, Login ke Raspberry Pi Anda menggunakan SSH dengan nama pengguna default: 'pi' dan kata sandi: 'raspberry'. Di sini kami telah menggunakan klien SSH "Putty untuk Windows" untuk terhubung dengan Pi melalui Windows. Jika Anda menggunakan Linux, Anda dapat langsung terhubung ke Pi menggunakan SSH. Ada banyak tutorial di Internet tentang 'Terhubung dengan Raspberry Pi menggunakan SSH', jadi di sini kami tidak membahas detailnya. Anda juga harus memeriksa Cara memulai dengan Raspberry Pi untuk mempelajari lebih lanjut tentang Pi, instalasi OS (Raspbian Jessie) dan persyaratan Perangkat Keras dan Perangkat Lunaknya.
2. Sekarang jalankan perintah di bawah ini untuk membuka File baru bernama voting.c dan tempel kode (diberikan di bagian kode di bawah) ke dalam file, gunakan tombol "shift + insert" untuk menempelkan kode.
sudo nano voting. c
3. Setelah kode ditulis tekan ctrl + x lalu tekan y untuk menyimpan kode tersebut dan tekan enter.
4. Sekarang buat kode dapat dieksekusi menggunakan perintah yang diberikan:
cc -o voting voting.c -lwiringPi -std = c99
5. Terakhir jalankan kode dengan menggunakan perintah yang diberikan
sudo./voting
Penjelasan Pemrograman:
Di sini kami telah menggunakan banyak bahasa C yang akrab bagi pengguna untuk menulis kode dan pengkodeannya sangat mirip dengan pengkodean Arduino. Kami juga dapat menggunakan bahasa Python untuk membangun proyek ini.
Pertama-tama kami menyertakan file header dan menentukan pin untuk LCD; File header wiringPi.h digunakan untuk mengontrol pin GPIO dari Pi. Kemudian inisialisasi beberapa variabel dan pin untuk pengambilan input voting dan indikasi LED.
#include
Setelah itu, kami telah memberikan arahan ke semua GPIO yang digunakan dalam fungsi void setup () .
batal penyiapan () {if (wiringPiSetup () == - 1) printf ("ERROR"); pinMode (led1, OUTPUT); pinMode (led2, OUTPUT); pinMode (led3, OUTPUT); pinMode (led4, OUTPUT); pinMode (led5, OUTPUT); pinMode (buzz, OUTPUT); pinMode (RS, OUTPUT);……………….
Dalam kode, kami telah menggunakan fungsi digitalRead di void main () untuk membaca Tombol yang ditekan.
if (digitalRead (in1) == 0) {vote1 ++; menunjukkan(); digitalWrite (led1, HIGH); bel(); digitalWrite (led1, LOW); Tunggu(); }
void show () berfungsi untuk menampilkan informasi voting di LCD dengan nama calon partai.
void show () {setCursor (0,0); cetak ("BJP Cong AAP Ex"); setCursor (1,1); sprintf (pilih, "% d", vote1); cetak (voting); setCursor (6,1); sprintf (pilih, "% d", vote2);………………..
Berikut beberapa fungsi lain yang digunakan dalam proyek ini:
void buzzer () fuction digunakan untuk membunyikan bel sebagai tanda bahwa suara telah diberikan. Dan void wait () berfungsi untuk LED D5 (LED Hijau di perangkat keras), yang menunjukkan bahwa sistem siap untuk Vote, ketika LED dinyalakan.
void buzzer () {digitalWrite (buzz, HIGH); penundaan (1000); digitalWrite (buzz, LOW); } void wait () {digitalWrite (led5, LOW); penundaan (3000); }
Fungsi void comapare () digunakan, untuk membandingkan total suara dari masing-masing kandidat, untuk mendapatkan hasil dan menampilkan status hasil di LCD.
void bandingkan () {clear (); print ("Harap Tunggu…."); Tunggu(); jika (vote1> vote2 && vote1> vote3 && vote1> vote4) {digitalWrite (led1, HIGH); untuk (i = 0; i <2; i ++) {clear (); setCursor (0,0); print ("Congrates……."); setCursor (0,1); cetak ("BJP Menang pemilihan");…………………
Periksa Kode Lengkap di bawah ini.