• Tidak ada hasil yang ditemukan

Alat Deteksi Nominal Uang Kertas Untuk Penyandang Tuna Netra Dengan Sensor TCS3200-DB Berbasis Arduino Uno Chapter III V

N/A
N/A
Protected

Academic year: 2017

Membagikan "Alat Deteksi Nominal Uang Kertas Untuk Penyandang Tuna Netra Dengan Sensor TCS3200-DB Berbasis Arduino Uno Chapter III V"

Copied!
23
0
0

Teks penuh

(1)

BAB 3

METODE PENELITIAN

3.1. Diagram Blok Sistem

Arduino uno Sensor warna

Power Supply

LCD

buzzer

Gambar 3.1 Diagram blok system

3.1.1. Fungsi-fungsi diagram blok

(2)

2. Blok Supply sebagaisumbertegangan ke mikrokontroler dan sensor 3. Blok LCD sebagai output tampilan

4. Block arduino uno sebagai otak dari system yang memproses data dari sensor dan menampilakan ke LCD

5. Blok buzzer sebagai indikator

3.2. Rangkaian Arduino uno

Gambar 3.2 rangkaian arduino uno

(3)

mikrokontrol secara mudah terhubung dengan kabel power USB atau kabel power supply adaptor AC ke DC atau juga battery.

Arduino Uno berbeda dari semua board mikrokontrol diawal-awal yang tidak menggunakan chip khusus driver FTDI USB-to-serial. Sebagai penggantinya penerapan USB-to-serial adalah ATmega16U2 versi R2 (versi sebelumnya ATmega8U2). Versi Arduino Uno Rev.2 dilengkapi resistor ke 8U2 ke garis ground yang lebih mudah diberikan ke mode DFU.

3.3. Rangkaian sensor warna

(4)

3.4. Rangkaian Power Supply

Gambar 3.4 rangkaian Power supply

Untuk mempermudah perancangan alat, pada rangkaian saya ini menggunakan power supply 12 volt yang telah ada dipasaran.Tetapi mikrokontroler hanya membutuhkan tegangan 5 volt.Jadi untuk menstabilkan tegangan yaitu menggunakan IC7805 yang berfungsi untuk menjaga tegangan 5 volt.

3.5. Rangkaian LCD

(5)

Pada rangkaian ini LCD di hubungkan ke PORT arduino, RS LCD – D2 arduino, E LCD –D3 arduino, D4 LCD –D4 arduino, D5 LCD -D5 arduino, D6LCD –D6 arduino, D7LCD –D7 arduino. Rangkaian LCD ini disesuaikan dengna kebutuhan LCD dan kebutuhan pada sistem. Semua port LCD juga dapat langsung

dihubungkan ke PORT arduino, tetapu terlalu banyak memakan pin pada arduino.

(6)

3.7 Flowchart Sistem

Inialisasi Start

Deteksi Warna Uang

Selesai Konversi data

analog

Tampil LCD Suara

(7)

BAB 4

PENGUJIAN DAN HASIL

4.1. Pengujian rangkaian Arduino uno

Pengujian sistem arduino uno dilakukan dengan memprogram sistem arduino uno untuk membuat Pin.4 menjadi nilai positif negative 0 dan 1 yang diulang ulang dengan delay 100 ms. kemudian keluaran tegangan dari Pin.4 akan diukur dengan avometer.

Pengujian sistem arduino uno ini untuk memastikan bahwa sistem arduino yang digunakan pada penelitian ini tidak rusak.Sehingga program yang ditanamkan pada microcontroller mampu untuk mengontrol suhu dan kelembaban ruang seperti yang diharapkan.

Untuk pengujian arduino dapat digunaka program standar sebagai berikut void setup() {

pinMode(13, OUTPUT);

}

void loop() {

digitalWrite(13, HIGH);

delay(1000);

digitalWrite(13, LOW);

delay(1000);

(8)

Dan kemudian untuk mengupload program, menggunakan tool upload pada arduino. Apabila pin 13 atau bisa di lihat pada led yang telah disediakan pada arduino, akan terlihat led akan hidup dan mati selama 1 detik dan berulang ulang. Pengujian ini bertujuan untuk mengertahui arduino dapat digunakan dengan baik atau tidak.

4.2. Pengujian sensor Warna

sensor ini mempunya 4 buah mode filter warna yaitu mode clear, mode filter merah,mode filter hijau,mode filter biru. disini filter yang dimaksud adalah range panjang gelombang atau lambda cahaya yang bisa diterima oleh photodioda. grafik range lambda bisa dilihat pada datasheet. output akhir dari sensor ini adalah komposisi warna Red-Green-Blue atau bisa dikenal dengan RGB. unuk bisa mendapakan RGB dari suatu object, maka sensor harus dikalibrasi dulu dengan warna putih sebagai referensinya. jarak pengambilan data 2 cm dari sensor. kalibrasi warna putih menggunakan kertas HVS putih.

Pengujian sensor ini yaitu dengan program pada arduino sebagai berikut.

int S0 = 8;

int S1 = 9;

int S2 = 12;

int S3 = 11;

int flag=0;

(9)

int countR=0,countG=0,countB=0;

void setup()

{

Serial.begin(115200);

pinMode(s0,OUTPUT);

pinMode(s1,OUTPUT);

pinMode(s2,OUTPUT);

attachInterrupt(0, ISR_INTO, CHANGE);

timer2_init();

}

void ISR_INTO()

{

counter++;

}

void timer2_init(void)

{

TCCR2A=0x00;

(10)

TCNT2= 100; //10 ms overflow again

TIMSK2 = 0x01; //allow interrupt

}

int i=0;

ISR(TIMER2_OVF_vect)//the timer 2, 10ms interrupt

overflow again. Internal overflow interrupt executive

function

else if(flag==2)

{

digitalWrite(s2,LOW);

digitalWrite(s3,LOW);

countR=counter/1.051;

Serial.print("red=");

Serial.println(countR,DEC);

digitalWrite(s2,HIGH);

digitalWrite(s3,HIGH);

}

(11)

{

countG=counter/1.0157;

Serial.print("green=");

Serial.println(countG,DEC);

digitalWrite(s2,LOW);

digitalWrite(s3,HIGH);

}

else if(flag==4)

(12)

delay(10);

else if((countG>=countR)&&(countG>countB))

{

Serial.print("green");

Serial.print("\n");

delay(1000);

}

else if((countB>countG)&&(countB>countR))

(13)

delay(1000);

}

}

4.3. Pengujian Power supply

Voltage regulator IC adalah IC yang digunakan untuk mengatur tegangan .IC 7805 adalah Regulator 5V, Voltage yang membatasi output tegangan 5V dan menarik 5V diatur power supply.Pengujian rangkaian regulator ini biasanya menggunakan volt meter, rangkaian ic7805 ini akan mengeluarkan tegangan 5 volt dengan inputan diatas 6 volt sampai dengan 35 Volt.

4.4 Pengujian rangkaian LCD

Pengujian LCD menggunakan arduino uno r3 sebagai alat untuk memerintahkan LCD menampilkan beberapa karakter.Pada pengujian LCD ini arduino uno r3 diberi program untuk menampilkan nilai suhu dan kelembaban.

Pengujian LCD bertujuan untuk memastikan LCD nya dapat berjalan dengan baik. Sehingga pada proses pemantuan suhu dan kelembaban ruang pengering akan didapatkan data yang baik.

Berikut adalah program untuk pengujian LCD include<LiquidCrystal.h>

LiquidCrystal lcd(2, 3, 4, 5, 6, 7);

void setup() {

lcd.begin(16, 2);

}

(14)

lcd.setCursor(0,0);

lcd.print("hello, world!");

}

Program diatas untuk menampilkan kata "hello, world!" pada LCD.

4.5. Pengujian keseluruhan

Pengujian rangkaian yaitu dengan program sebagai berikut.

int S0 = 8;

int S1 = 9;

int S2 = 12;

int S3 = 11;

int taosOutPin = 10;

int LED = 13;

#include <LiquidCrystal.h>

LiquidCrystal lcd(2, 3, 4, 5, 6, 7);

void setup() {

TCS3200setup();

lcd.begin(16, 2);

Serial.begin(9600);

delay(100);

(15)

// primary loop takes color readings from all four

channels and displays the raw values once per second.

What you might wish to do with those values is up to

you...

void loop() {

detectColor(taosOutPin);

Serial.println(" ");

delay(500);

}

int detectColor(int taosOutPin)

{

int white = colorRead(taosOutPin,0,1);

int red = colorRead(taosOutPin,1,1);

int blue = colorRead(taosOutPin,2,1);

int green = colorRead(taosOutPin,3,1);

if (red==11 && green==12 || green==11 && blue==10 &&

white ==4 )

{

lcd.clear();

lcd.setCursor(0,0);

lcd.print("Letakan uang...");

(16)

else if (red == 10 || red == 11 && green == 14 ||

green == 13 && blue ==13 || blue ==14 && white == 4)

{

lcd.setCursor(0,0);

lcd.print("Uang terdeteksi");

lcd.setCursor(0,1);

lcd.print("Rp 100.000");

}

else if (red == 14 || red == 15 && green == 14 ||

green == 15 && blue ==12 || blue ==13 && white == 5)

{

lcd.setCursor(0,0);

lcd.print("Uang terdeteksi");

lcd.setCursor(0,1);

lcd.print("Rp 50.000");

}

else if (red == 13 || red == 12 && green == 12 ||

green == 13 && blue ==10 || blue ==11 && white == 4)

{

lcd.setCursor(0,0);

lcd.print("Uang terdeteksi");

lcd.setCursor(0,1);

lcd.print("Rp 50.000");

(17)

float colorRead(int taosOutPin, int color, boolean

LEDstate){

if(color == 0){//white

digitalWrite(S3, LOW); //S3

digitalWrite(S2, HIGH); //S2

// Serial.print(" w");

}

else if(color == 1){//red

digitalWrite(S3, LOW); //S3

digitalWrite(S2, LOW); //S2

// Serial.print(" r");

}

else if(color == 2){//blue

digitalWrite(S3, HIGH); //S3

digitalWrite(S2, LOW); //S2

// Serial.print(" b");

}

else if(color == 3){//green

digitalWrite(S3, HIGH); //S3

digitalWrite(S2, HIGH); //S2

// Serial.print(" g");

}

(18)

// turn LEDs on or off, as directed by the LEDstate

var

if(LEDstate == 0){

digitalWrite(LED, LOW);

}

if(LEDstate == 1){

digitalWrite(LED, HIGH);

}

//if the pulseIn times out, it returns 0 and that

throws off numbers. just cap it at 80k if it happens

if(readPulse < .1){

readPulse = 80000;

}

//turn off color sensor and LEDs to save power

taosMode(0);

// return the pulse value back to whatever called for

it...

return readPulse;

}

void taosMode(int mode){

if(mode == 0){

(19)

digitalWrite(LED, LOW);

digitalWrite(S0, LOW); //S0

digitalWrite(S1, LOW); //S1

}else if(mode == 1){

//this will put in 1:1, highest sensitivity

digitalWrite(S0, HIGH); //S0

digitalWrite(S1, HIGH); //S1

// Serial.println("m1:1m");

}else if(mode == 2){

//this will put in 1:5

digitalWrite(S0, HIGH); //S0

digitalWrite(S1, LOW); //S1

//Serial.println("m1:5m");

}else if(mode == 3){

//this will put in 1:50

digitalWrite(S0, LOW); //S0

digitalWrite(S1, HIGH); //S1

//Serial.println("m1:50m");

}

return;

(20)

void TCS3200setup(){

//initialize pins

pinMode(LED,OUTPUT); //LED pinD

//color mode selection

pinMode(S2,OUTPUT); //S2 pinE

pinMode(S3,OUTPUT); //s3 pinF

//color response pin (only actual input from taos)

pinMode(taosOutPin, INPUT); //taosOutPin pinC

//communication freq (sensitivity) selection

pinMode(S0,OUTPUT); //S0 pinB

pinMode(S1,OUTPUT); //S1 pinA

return;

}

Data 4.5.1.pengujian pada uang 10.000

Table 4.5.1.1.pengujian pada uang 10.000

Gambar R G B

Depan kanan 6 7 6

Depan kiri 4 4 3

(21)

Belakang kanan 3 4 3

Belakang kiri 5 6 4

Belakang tengan 9 14 12

Data 4.5.1.pengujian pada uang 20.000

Table 4.5.1.2.pengujian pada uang 20.000

Gambar R G B

Depan kanan 4 4 4

Depan kiri 3 3 3

Depan tengah 9 9 9

Belakang kanan 2 3 3

Belakang kiri 4 4 4

Belakang tengan 5 4 4

Data 4.5.2.pengujian pada uang 50.000

Table 4.5.2.1.pengujian pada uang 50.000

Gambar R G B

Depan kanan 5 5 3

Depan kiri 3 3 3

Depan tengah 7 7 6

Belakang kanan 2 3 2

Belakang kiri 5 5 4

(22)

Data 4.5.2.pengujian pada uang 100.000

Table 4.5.2.2.pengujian pada uang 100.000

Gambar R G B

Depan kanan 7 10 7

Depan kiri 3 4 3

Depan tengah 6 9 9

Belakang kanan 2 3 3

Belakang kiri 3 5 4

(23)

BAB 5

KESIMPULAN DAN SARAN

5.1Kesimpulan

Berdasarkan uraian – uraian terdahulu dapat diambil kesimpulan bahwa :

1. Alat pendeteksi nominal uang kertas berbasis arduino uno R3 dengan menggunakan tampilan LCD 2 x 16 telah bekerja dengan baik.

2. Sensor TCS 3200-DB dapat diaplikasikan sebagai pendeteksi nominal

uang kertas dengan cara membentuk pola range RGB tiap uang kertas dari keluaran sensor yang berupa frekuensi.

5.2 Saran

Beberapatambahan yang diperlukandalammeningkatkankemampuanalatiniadalah: 1. Untuk hasil yang lebih baik lagi dalam pembacaan uang kertas, alat ini

dapat dipadukan dengan sensor ukuran agar didapatkan hasil pembacaan error yang lebih kecil.

Gambar

Gambar 3.1 Diagram blok system
Gambar 3.2 rangkaian arduino uno
Gambar 3.3 Rangkaian sensor warna
Gambar 3.4 rangkaian Power supply
+5

Referensi

Dokumen terkait

Dari hasil pengujian yang dilakukan didapatkan hail daya bakar briket arang terendah pada perlakuan 70 mesh yaitu 0,096 gram/ menit yang artinya briket ini

Kandungan amylosa ketiga galur tersebut masing-masing adalah 28%, 27% dan 27% hal yang sama juga ditemui pada Cisokan mempunyai kandungan amylosa 27%, Prilaku konsumen

Di  tengah‐tengah  persaingan  yang  terjadi  saat  ini,  UT  tetap  harus  mengantisipasi  terjadinya  penurunan  mahasiswa  yang  diakibatkan 

Dalam perjanjian asuransi jiwa, risiko tersebut adalah meninggalnya si tertanggung, dengan meninggalnya tertanggung maka penanggung akan membayarkan sejumlah manfaat

(1) Dalam hal Kepala Kantor Pertanahan berhalangan karena dinas, cuti, sakit atau sebab lain untuk waktu lebih dari 10 (sepuluh) hari kerja berturut-turut dan tidak

Setelah dilakukan pengujian SPSS dengan independent sample t test didapatkan hasil p- value 0,038 yang artinya terdapat perbedaan prestasi belajar pada mahasiswa PSPD FKK

Pada dasarnya bahasa adalah sarana untuk berkomunikasi dengan orang lain baik secara lisan maupun tertulis. Kemampuan seseorang dalam menyusun kata-kata yang baik dan

Hasil penelitian menunjukan bahwa kesenian rodat adalah kesenian tradisional yang masih dilestarikan oleh masyarakat dan menurut pemahaman masyarakat desa