- Komponen yang Diperlukan:
- Sensor Warna TCS3200 Bekerja
- Pinout dari Sensor Warna TCS3200:
- Diagram Sirkuit
- Penjelasan Kode
Dalam proyek ini kita akan mengerjakan ide proyek arduino yang inovatif, di mana kita dapat menghitung uang kertas dan menghitung jumlahnya, dengan merasakan mata uang kertas menggunakan Sensor Warna dan Arduino. Sensor warna TCS230 akan digunakan untuk mendeteksi uang kertas dan Arduino UNO untuk memproses data dan menunjukkan sisa saldo pada LCD 16x2.
Komponen yang Diperlukan:
- Arduino UNO
- Sensor warna TCS230
- Sensor IR
- Papan tempat memotong roti
- 16 * 2 LCD alfanumerik
- Menghubungkan Kabel
Sensor Warna TCS3200 Bekerja
Sensor warna TCS3200 digunakan untuk mendeteksi berbagai warna. Kami sebelumnya menghubungkan sensor warna TCS3200 dengan Arduino dan Raspberry pi, dan juga membangun beberapa proyek yang berguna seperti mesin sortir Warna.
Sensor TCS230 memiliki LED infra merah inbuilt yang digunakan untuk menerangi objek yang warnanya akan dideteksi. Ini memastikan bahwa tidak akan ada dampak cahaya eksternal di sekitar objek. Sensor ini membaca fotodioda array 8 * 8 yang terdiri dari 16 fotodioda dengan filter merah, 16 dengan filter biru, 16 dengan filter hijau dan 16 fotodioda tanpa filter. Masing-masing larik sensor dalam tiga larik ini dipilih secara terpisah tergantung pada kebutuhan. Karenanya ia dikenal sebagai sensor yang dapat diprogram. Modul ini dapat ditampilkan untuk merasakan warna tertentu dan meninggalkan yang lain. Ini berisi filter untuk tujuan pemilihan itu. Ada mode keempat yang disebut ' mode tanpa filter' di mana sensor mendeteksi cahaya putih.
Sinyal keluaran dari sensor warna TCS230 adalah gelombang persegi dengan siklus kerja 50% dan frekuensinya sebanding dengan intensitas cahaya dari filter yang dipilih.
Pinout dari Sensor Warna TCS3200:
VDD- Pin suplai tegangan Sensor. Disuplai dengan 5V DC.
GND- Pin referensi ground dari sensor warna
S0, S1- Input pemilihan skala frekuensi keluaran
S2, S3- Input pemilihan jenis dioda foto
OUT- Pin keluaran dari sensor warna
OE- Aktifkan pin untuk frekuensi keluaran
Kami juga telah menggunakan sensor IR dalam proyek ini, yang cara kerjanya dapat dipahami dengan tautan berikut.
Diagram Sirkuit
Di bawah ini adalah diagram rangkaian untuk Penghitung Uang Arduino:
Di sini, saya telah membuat struktur kecil seperti mesin gesek mata uang POS menggunakan kardus. Dalam struktur ini, sensor warna dan sensor IR dipasang dengan karton seperti yang ditunjukkan pada gambar di bawah.
Disini sensor IR digunakan untuk merasakan keberadaan mata uang di dalam slot dan jika ada note maka sensor warna akan mendeteksi warna Note dan mengirimkan nilai warna tersebut ke Arduino. Dan Arduino selanjutnya menghitung nilai mata uang berdasarkan warna catatan.
Penjelasan Kode
Kode lengkap bersama dengan video demo diberikan di akhir artikel. Di sini penjelasan bertahap dari kode lengkap diberikan di bawah ini.
Pertama, masukkan semua perpustakaan ke dalam program. Disini kita hanya membutuhkan perpustakaan LCD untuk dimasukkan ke dalam program. Kemudian nyatakan semua variabel yang digunakan dalam kode.
#include
Di dalam setup (), cetak pesan selamat datang pada LCD dan tentukan semua arah data dari pin digital yang digunakan dalam proyek ini. Selanjutnya, atur skala frekuensi keluaran dari sensor warna, dalam kasus saya, ini diatur ke 20% yang dapat diatur dengan memberikan pulsa TINGGI ke S0 dan pulsa RENDAH ke S1.
void setup () {Serial.begin (9600); lcd.begin (16, 2); lcd.setCursor (0, 0); lcd.print ("Dompet Cerdas"); lcd.setCursor (0, 1); lcd.print ("Circuit Digest"); penundaan (2000); lcd.clear (); pinMode (2, OUTPUT); // S0 pinMode (3, OUTPUT); // S1 pinMode (11, OUTPUT); // S2 pinMode (12, OUTPUT); // S3 pinMode (13, INPUT); // OUT digitalWrite (2, TINGGI); digitalWrite (3, LOW); }
Di dalam infinite loop (), baca semua output data dari sensor. Output dari sensor IR dapat ditemukan dengan membaca pin A0 dan frekuensi warna output dapat ditemukan dengan memanggil fungsi individu yang ditulis sebagai merah (), biru () dan hijau (). Kemudian cetak semuanya pada monitor Serial. Ini diperlukan ketika kami perlu menambahkan mata uang baru ke proyek kami.
int sensor = digitalRead (A0); int red1 = merah (); int blue1 = blue (); int green1 = hijau (); Serial.println (red1); Serial.println (blue1); Serial.println (hijau1); Serial.println ("-----------------------------");
Selanjutnya tulis semua kondisi untuk mengecek frekuensi keluaran sensor warna dengan frekuensi referensi yang telah kita atur sebelumnya. Jika cocok, maka kurangi jumlah yang ditentukan dari saldo dompet.
if (red1> = 20 && red1 <= 25 && blue1> = 30 && blue1 <= 35 && green1> = 30 && green1 <= 35 && a == 0 && sensor == HIGH) {a = 1; } lain jika (sensor == LOW && a == 1) {a = 0; jika (total> = 10) {lcd.setCursor (0, 1); lcd.print ("10 Rupees !!!"); total = total-10; penundaan (1500); lcd.clear (); }}
Di sini kami hanya mengatur kondisi untuk 10 Rupees dan 50 Rupees Note warna, Anda dapat mengatur lebih banyak kondisi untuk mendeteksi tidak lebih. dari catatan mata uang.
Catatan: Output frekuensi mungkin berbeda dalam kasus Anda tergantung pada pencahayaan eksternal dan pengaturan sensor. Jadi, disarankan untuk memeriksa frekuensi keluaran mata uang Anda dan mengatur nilai referensi yang sesuai.
Kode di bawah ini akan menunjukkan saldo yang tersedia di dompet pada LCD 16x2.
lcd.setCursor (0, 0); lcd.print ("Total Bal:"); lcd.setCursor (11, 0); lcd.print (total); penundaan (1000);
Fungsi berikut akan mendapatkan frekuensi warna keluaran konten merah dalam mata uang. Demikian pula, kita dapat menulis fungsi lain untuk mendapatkan nilai konten warna biru dan hijau.
int merah () {digitalWrite (11, LOW); digitalWrite (12, LOW); frekuensi = pulseIn (OutPut, LOW); frekuensi kembali; }
Jadi beginilah cara penghitung Uang berbasis Arduino dapat dibangun dengan mudah menggunakan beberapa komponen. Kami selanjutnya dapat memodifikasinya dengan mengintegrasikan beberapa pemrosesan gambar dan kamera untuk mendeteksi mata uang menggunakan gambar, dengan cara itu akan lebih akurat dan akan dapat mendeteksi mata uang apa pun.