• Tidak ada hasil yang ditemukan

Perancangan Alat Sortir Buah Jeruk Berdasarkan Warna RGB dengan Mikrokontroller Arduino

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perancangan Alat Sortir Buah Jeruk Berdasarkan Warna RGB dengan Mikrokontroller Arduino"

Copied!
9
0
0

Teks penuh

(1)

LAMPIRAN A

PROGRAM MIKROKONTROLER ARDUINO UNO

A.1 SensorTCS3200.ino

#include <Servo.h>

#include <LiquidCrystal.h> #define S0 A0

#define S1 A1 #define S2 A2 #define S3 A3

#define sensorOut A4 #define button 9

Servo topServo; Servo bottomServo; //Stopwatch

long startTime; long elapsedTime; //Sorting

int frequency = 0; int color = 0; int i=0;

int R, G, B;

int kr[5], kg[5], kb[5]; int play = 0;

int orange, Khijau, hijau;

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

void tampil_LCD()

{

//LCD

lcd.clear();

lcd.setCursor(0,0); lcd.print("R="); lcd.print(R); lcd.print(" G="); lcd.print(G); lcd.print(" B="); lcd.print(B); delay(100); }

(2)

{

Serial.println("Kalibrasi warna"); Serial.println("Waiting...");

lcd.clear();

lcd.setCursor(0,0);

lcd.print("Calibration");

for(i=0;i<3;i++) // 3 tahap kalibrasi {

readcolor(); kr[i]=R; kg[i]=G; kb[i]=B;

delay(200);

lcd.setCursor(11+i,0); lcd.print(".");

}

kondisiButton(); R = sort(kr); G = sort(kg); B = sort(kb); //SERIAL MONITOR Serial.print("r="); Serial.print(R);

Serial.print(" g="); Serial.print(G);

Serial.print(" b="); Serial.println(B); Serial.print(""); Serial.println();

Serial.print(elapsedTime); Serial.println(" ms");

Serial.print(""); Serial.println(); }

int cek_warna() {

kalibrasi();

if(R<0 && G<0 && B<0) return 0; else

{

if(G>R && G>B) return 3; else if(R>G && R>B)

{

if(abs(R-G)>50) return 4; else return 5;

(3)

} }

void setup() {

pinMode(S0, OUTPUT); pinMode(S1, OUTPUT); pinMode(S2, OUTPUT); pinMode(S3, OUTPUT);

pinMode(sensorOut, INPUT); pinMode(button, INPUT);

digitalWrite(S0, HIGH);//setting frequency-scaling to 20%

digitalWrite(S1, LOW); topServo.attach(11); bottomServo.attach(12); Serial.begin(9600); lcd.begin(16,2); lcd.clear();

lcd.setCursor(0,0); }

void kondisiButton()

{

if(digitalRead(button)==HIGH) {

if(!play) {play=true;} else {play=false;}

delay(50); //bouncing }

}

void loop()

{

topServo.write(85);

bottomServo.write(100); kondisiButton();

if(play) {

lcd.clear();

(4)

lcd.setCursor(7,1); lcd.print(Khijau); lcd.setCursor(12,1); lcd.print(hijau); }

else {

startTime = millis (); color = cek_warna();

elapsedTime = millis () - startTime; }

switch (color)

{

case 1:

Serial.print("BIRU "); // Warna Dasar break;

case 2:

Serial.print("MERAH "); // Warna Dasar break;

case 3:

tampil_LCD();

lcd.setCursor(0,1);

lcd.print("HIJAU");

Serial.println("HIJAU "); Serial.println(" ");

hijau++; delay(50);

topServo.write(120); //Arah buah ke wadah hijau break;

case 4:

tampil_LCD(); lcd.setCursor(0,1);

lcd.print("ORANGE");

Serial.println("ORANGE "); Serial.println(" ");

orange++; delay(50);

topServo.write(45); // Arah Buah ke wadah orange break;

case 5:

tampil_LCD();

lcd.setCursor(0,1);

lcd.print("KUNING-HIJAU");

(5)

Khijau++;

// custom function - readcolor()

int readcolor()

{

Serial.print(frequency);//printing RED frequency Serial.print(" ");

(6)

frequency = map(frequency, 25,70,255,0); B = frequency;

// Printing the value on the serial monitor Serial.print("B= ");//printing name

Serial.print(frequency);//printing Blue frequency Serial.println(" ");

(7)

LAMPIRAN B

GAMBAR FLOWCHART PEMOGRAMAN ARDUINO

B.1 Flowchart Pemograman Mikrokontroler Arduino.

Start

Inisialisasi Pin I/O Servo, LCD,

TCS3200

Kondisikan Servo dalam

keadaan default C

Baca kondisi Push Button

If play==true

If i<3

Baca Nilai Sensor Warna TCS3200

Sorting dan ambil nilai terbesar dari nilai yang sering

muncul Tampilkan

Jumlah Buah yang telah di sortir pada

LCD

Return Color = 4 Return Color = 5

B

Ya B

Tidak

(8)

B

If color ==1 If color == 2 If color == 3 If color == 4 If color == 5 C

Tampilkan Warna Biru

pada LCD

Tampilkan Warna Merah pada

LCD

Tampilkan Warna Hijau

pada LCD

Tampilkan Warna Orange pada

LCD

Tampilkan Warna Kuning

Hijau pada LCD

End Servo Atas Ke arah

Kanan (120°)

Servo Atas ke arah Kiri (45°)

(9)

CURRICULUM VITAE

DATA PRIBADI

Nama : Fadly Tommy

Tempat, Tanggal Lahir : Marjandi, 01 April 1994

Jenis Kelamin : Laki-Laki

Agama : Islam

Kewarganegaraan : Indonesia

Alamat KTP : Dusun V Emplasmen Pabatu, Tebing

Tinggi

Telepon / HP : 081260624547

Email : [email protected]

PENDIDIKAN FORMAL SEKOLAH /

UNIVERSITAS FAKULTAS JURUSAN KOTA IPK

PERIODE (TAHUN)

Universitas

Sumatera Utara FMIPA

Teknik

Informatika Medan 3,46 2011 - 2014

SMAN 4 - IPA Tebing Tinggi 8,50 2008 - 2011

SMPN 6 - - Tebing Tinggi - 2005 - 2008

SDN 091292 - - Siantar - 1999 - 2005

KETERAMPILAN KOMPUTER

1. Menguasai Microsoft Office

2. Menguasai Bahasa Pemrograman : C, PHP, MYSQL, CSS dan HTML

3. Kemampuan dalam Bidang Komputer dan Ilmu Robotika

Medan, 24 Januari 2017

Gambar

GAMBAR FLOWCHART PEMOGRAMAN ARDUINO

Referensi

Dokumen terkait

Berfungsi untuk membuat program dari komputer ke dalam board arduino,. komunikasi serial antara papan dan computer, memberi daya

Putra eko afgianto.2002.Teknik Antar Muka Komputer: Konsep dan Aplikasi. Yogyakarta:

Di rancang sebuah alat penyortir permen berdasarkan perbedaan warna, yang dapat memindahkan permen dari satu tempat ke tempat lain dengan warna yang telah disesuaikan

Fakultas : Matematika dan Ilmu Pengetahuan Alam (MIPA) Universitas Sumatera Utara. Disetujui di Medan,

Dari seluruh penjelasan dan pengujian robot sortir bola berdasarkan perbedaan warna RGB Berbasis Lego Mindstorms NXT 2.0 dapat diambil kesimpulan yang dapat dijadikan acuan dalam

Motor servo adalah sebuah motor dengan sistem closed feedback di mana posisi dari motor akan diinformasikan kembali ke rangkaian kontrol yang ada di dalam

Conveyor menggiring jeruk, Sensor Photo Dioda dan Sensor Infra Red untuk mengenali ukuran jeruk, Motor Servo MG-995 mendorong buah jeruk berukuran kecil ke dalam

Sedangkan untuk data yang akan dianalisis dalam sistem ini yakni terdiri atas pengujian program RGB terhadap kinerja alat yaitu pengujian kebenaran software