Pengujian Pembacaan Warna TCS3200

Gambar 4.3 Rangkaian Limit Switch Dari pengujian yang dilakukan, fungsi limit switch sebagai trigger pada pintu lemari berbicara ini dapat berfungsi dengan baik dan tidak mempunyai kendala dalam menghambat proses pengujian. Tabel 4.8 Implementasi Tegangan Keluaran Limit Switch Kondisi tombol Tegangan keluaran Ditekan 4.12 V Tidak ditekan Data yang diperoleh pada tabel 4.7 adalah data saat saklar ditekan dan saklar tidak ditekan. Pengujian saklar ini menunjukkan bahwa saat ditekan tegangan keluaran bernilai 4.12 V. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

4.3 Perangkat Lunak

Perangkat lunak atau program yang terdapat pada mikrokontroller dibuat untuk menunjang kerja dari sistem lemari berbicara berbasis mikrokontroller ini. Dalam sistem ini terdapat sebuah program utama dan empat sub program. Program utama berisi inisialisasi pin pada Arduino sebagai input dan output, pembacaan SD Card untuk membaca data suara, pembacaan warna wadah oleh sensor warna, dan selektor sensor warna yang aktif serta mengeluarkan keluaran suara dengan menggunakan limit switch. Inisialisasi IO bertujuan agar komponen yang terpasang pada Arduino dapat berfungsi dengan baik sesuai dengan konfigurasi IO yang telah ditentukan. Pengaturan ini dapat dilakukan dengan cara perintah pinMode. Inisialisasi IO ini ditulis di dalam void setup pada program tersebut. Program inisialisasi IO ditunjukkan pada gambar 4.5. Gambar 4.4. Inisialisasi input dan output Peran limit switch pada program adalah sebagai selektor yang berfungsi untuk memilih sensor warna mana yang akan dijalankan untuk melakukan scanning warna serta mengeluarkan data suara di dalam SD Card. Nilai limit switch yang dibaca oleh program Arduino sebagai trigger untuk selektor adalah LOW. Jika limit switch tidak ditekan atau bernilai LOW, maka program akan mengaktifkan kondisi syarat yang terdapat pada pengaturan sensor warna. Selanjutnya sensor warna akan melakukan scanning sesuai dengan kalibrasi yang telah dilakukan sebelumnya. Program pemilihan sensor yang aktif dapat dilihat pada gambar 4.6. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI Gambar 4.5. Program Selektor Sensor Warna Agar Arduino dapat membaca nilai pada suatu komponen, maka pin yang terhubung dari komponen ke Arduino harus dituliskan dalam program yaitu digitalRead. Variabel dalam kurung adalah nama variabel yang sebelumnya sudah ada pada void setup. Setelah itu pengaturan suatu syarat kondisi harus dilakukan agar program dapat mengetahui kapan program sensor warna akan dijalankan. Pada program di atas perintah if digunakan sebagai syarat untuk melakukan suatu perinta program tergantung pada kondisi tersebut. Perintah ifval=LOW adalah perintah untuk membuat kondisi bahwa jika nilai limit switch bernilai LOW maka program akan langsung menjalankan perintah program yang ada di bawahnya. Warna yang dideteksi oleh sensor warna TCS3200 harus dikalibrasi terlebih dahulu. Hal ini karena setiap warna mempunyai intensitas yang berbeda-beda sehingga masing-masing warna harus dikalibrasi. Program kalibrasi sensor warna dapat dilihat pada gambar 4.7. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI Gambar 4.6. Program Kalibrasi Sensor Warna Untuk mengenali sebuah warna, sensor warna TCS3200 menggunakan fotodioda yang berfungsi untuk menangkap intensitas 3 warna dasar yaitu merah, biru, dan hijau. Tiga dari nilai intensitas inilah yang akan menjadi patokan untuk melakukan kalibrasi terhadap warna wadah yang akan diletakkan. Dapat dilihat pada program di atas bahwa untuk menetukan warna biru pada suatu wadah, syarat intensitas warna dasar yang diterima fotodioda harus sesuai dengan syarat pada program. Syarat untuk menentukan warna biru yaitu intensitas warna dasar biru yang terdeteksi harus lebih kecil dari merah dan hijau sehingga baru bisa dikenali sebagai warna biru. Pada syarat kalibrasi dimasukkan logika red 800 dan green 1400. Angka ini bertujuan agar syarat kalibrasi tidak bertabrakan dengan warna kuning. Hal ini karena pulsa warna kuning menghasilkan intensitas red sebesar rata-rata 500 dan green rata-rata 850. Saat program masuk di red 800 maka warna kuning ikut terpanggil tapi jika ditambah kalibrasi green 1400 maka otomatis syarat untuk warna kuning tidak terpilih lagi. Untuk mengeluarkan data suara dari SD Card, program harus mengecek apakah komunikasi Arduino dengan modul SD Card sudah terkoneksi dengan baik atau belum. Program akan mengecek melalui perintah yang telah dibuat lalu dengan bantuan serial