Anda di halaman 1dari 77

ALAT SORTIR BENDA BERDASARKAN WARNA RGB

MENGGUNAKAN SENSOR TCS3200 BERBASIS


MIKROKONTROLLER ATMEGA328

TUGAS AKHIR

FRENSON GULTOM
172408068

PROGRAM STUDI D-3 FISIKA


FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2020

UNIVERSITAS SUMATERA
ALAT SORTIR BENDA BERDASARKAN WARNA RGB
MENGGUNAKAN SENSOR TCS3200 BERBASIS
MIKROKONTROLLER ATMEGA328

TUGAS AKHIR

DIAJUKAN UNTUK MELENGKAPI TUGAS AKHIR DAN MEMENUHI


SYARAT MEMPEROLEH GELAR AHLI MADYA

FRENSON GULTOM
172408068

PROGRAM STUDI D-3 FISIKA


FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2020

i
i
UNIVERSITAS SUMATERA
i

UNIVERSITAS SUMATERA UTARA


ii

UNIVERSITAS SUMATERA UTARA


ALAT SORTIR BENDA BERDASARKAN WARNA RGB
MENGGUNAKAN SENSOR TCS3200 BERBASIS
MIKROKONTROLLER ATMEGA328

ABSTRAK
Di rancang sebuah alat penyortir benda berdasarkan warna yang dapat
memindahkan benda dari satu tempat ke tempat yang lain dengan warna yang
telah disesuaikan dari rangkaian tersebut. Apabila benda berwarna di letakkan
pada corong yang mengenai sensor TCS3200, maka secara otomatis akan
memberikan tegangan input ke Arduino dan akan bekerja membaca program
yang tersimpan pada IC yang sesuai dengan program. Kemudian Arduino akan
memberikan output tegangan ke motor servo untuk menggerakkan benda tersebut
dan menjalankan program secara otomatis yang mana, servo akan memindahkan
benda dari tempat sensor ke tempat warna yang sama yang telah di sediakan dan
akan berhenti secara otomatis ketika waktu yang ditetapkan di IC Arduino telah
bekerja. Alat yang dibuat menggunakan Arduino Uno adalah sebagai otak
pengendalinya. Struktur serta antar muka Arduino yang sederhana memberikan
kemudahan pengguna dalam memahaminya dan dalam kaitannya penyortir ini
akan dibuat secara sistematis dan teliti. Dimana akan menyortir barang berwarna
yang pengendaliannya dan pendeteksian melalui sensor secara full automatisi
(otomatis). Adapun perbandingan alat yang menggunakan sensor TCS 3200
dengan nilai RGB standart warna internasional memiliki ralat 6,6% pada warna
merah, 7,05% pada warna hijau dan 10,1% pada warna biru.
Kata Kunci : Sensor Warna TCS3200,Mikrokontroller Arduino, Motor Servo

UNIVERSITAS SUMATERA
SORTING EQUIPMENT BASED ON RGB COLOR USING
TCS3200 SENSOR BASED MICROCONTTROLER ATMEGA 328

ABSTRACT
Designed an object sorter based on color that can move objects from one
place to another with the color that has been adjusted from the series. If a colored
object is placed in the funnel that is on the TCS3200 sensor, it will automatically
provide an input voltage to the Arduino and will work reading the program stored
on the IC that matches the program. Then Arduino will provide voltage output to
the servo motor to move the object and run the program automatically which, the
servo will move the object from the sensor to the same color that has been
provided and will stop automatically when the time set in the Arduino IC has been
work. The tools made using Arduino Uno are as the controlling brain. The simple
structure and interface of Arduino make it easy for users to understand it and in
this connection the sorter will be made systematically and thoroughly. Where
will sort colored items that control and detection through sensors in full
automatisi (automatic). The comparison of tools that use TCS 3200 sensors with
international standard RGB values have a correction of 6.6% in red, 7.05% in
green and 10.1% in blue.

Keywords : TCS3200 Color Sensor, Arduino Microcontroller, Servo Motor

iv

UNIVERSITAS SUMATERA UTARA


PENGHARGAAN

Segala puji dan syukur kepada Tuhan Yang Maha Esa, dengan limpahan
berkat-Nya penyusunan Tugas Akhir ini dapat diselesaikan sesuai waktu yang
telah ditetapkan.
Tugas Akhir ini disusun untuk melengkapi persyaratan dalam mencapai
gelar Ahli Madya pada Program Studi Diploma Tiga Fisika Departemen
Fisika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera
Utara. Adapun judul Tugas Akhir ini adalah :
ALAT SORTIR BENDA BERDASARKAN WARNA RGB
MENGGUNAKAN SENSOR TCS3200 BERBASIS MIKROKONTROLLER
ATMEGA328. Penulis menyadari bahwa tersusunnya Tugas Akhir ini dari Doa,
perhatian, bimbingan, motivasi dan dukungan berbagai pihak, sehingga dengan
keikhlasan dan kerendahan hati pada kesempatan ini penulis mengucapkan terima
kasih yang sebesar-besarnya kepada :
1. Kedua orang tua dan oppung saya tercinta serta saudara kandung yang
telah memberikan bantuan moral maupun materi, semangat dan doa yang
begitu besar kepada penulis.
2. Bapak Prof.Dr. Kerista Sebayang, MS, selaku Dekan Fakultas Matematika
dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.
3. Ibu Dr. Nursahara Pasaribu, M.Sc, selaku Pembantu Dekan I Fakultas
Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.
4. Bapak Drs. Takdir Tamba, M.Eng. Sc, selaku Ketua Program Studi D-3
Fisika Fakultas Matematika dan Ilmu Pengetahuan Alam.
5. Bapak Drs. Aditia Warman, M.Si, selaku Sekretaris Program Studi D-3
Fisika Fakultas Matematika dan Ilmu Pengetahuan Alam.
6. Bapak Tua Raja Simbolon, S.Si, M.Si selaku pembimbing saya yang telah
banyak membantu dan mendukung penulis dalam menyelesaikan Tugas
Akhir ini.
7. Seluruh Dosen dan Karyawan Program Studi D-3 Fisika Departemen
Fisika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas
Sumatera Utara.

UNIVERSITAS SUMATERA
vi

UNIVERSITAS SUMATERA UTARA


DAFTAR ISI

PENGESAHAN LAPORAN TUGAS PROYEK ........................................................... i


ABSTRAK ......................................................................................................................... ii
ABSTRACT....................................................................................................................... iii
PENGHARGAAN............................................................................................................. iv
DAFTAR ISI...................................................................................................................... vi
DAFTAR TABEL ............................................................................................................. viii
DAFTAR GAMBAR......................................................................................................... ix

BAB I PENDAHULUAN.................................................................................................. 1
1.1 Latar Belakang ................................................................................................... 1
1.2 Rumusan Masalah.............................................................................................. 2
1.3 Tujuan ................................................................................................................ 2
1.4 Batasan Masalah ................................................................................................ 2
1.5 Sistematika Penulisan ........................................................................................ 2

BAB II LANDASAN TEORI ........................................................................................... 4


2.1. Sensor warna TCS3200...................................................................................... 4
2.1.1. Karakteristik Sensor Warna TCS3200..................................................... 6
2.1.2. Prinsip Kerja Sensor TCS3200 ................................................................ 8
2.1.3. Kelebihan Dan Kekurangan Sensor TCS3200......................................... 9
2.1.4. Konstruksi Sensor Warna TCS3200 ........................................................ 9
2.2. Elemen Warna..................................................................................................... 10
2.3. LCD (Liquid Crystal Display) ............................................................................ 11
2.3.1. Konfigurasi LCD (Liquid Crystal Display) ............................................. 14
2.4. AVR Mikrokontroller Atmega 328.................................................................... 16
2.4.1. Konfigurasi Pin Atmega 328 ................................................................... 18
2.4.2. Status Registar 328 .................................................................................. 20
2.4.3. Arsitektur Mikrokontroller Atmega 328 .................................................. 22
2.4.4. Kebutuhan Clock Atmega 328................................................................. 22

77

UNIVERSITAS SUMATERA
2.4.5. Memori Atmega 328 ................................................................................ 23
2.4.6. Timer Counter 0....................................................................................... 24
2.4.7. Komunikasi Serial Pada Atmega328 ..................................................... 24
2.4.8. Daya ....................................................................................................... 25
2.5. Bahasa Pemrograman....................................................................................... 25
2.5.1. Struktur Bahasa C .................................................................................. 27
2.5.2. Pengenal ................................................................................................. 27
2.5.3. Tipe Data................................................................................................ 28
2.5.4. Kostanta Variabel................................................................................... 30
2.6. IC Regulator 7805............................................................................................ 30
2.7. Power Supply ................................................................................................... 30
2.8. Arduino Uno .................................................................................................... 31
2.8.1. Prinsip Kerja Motor DC........................................................................ 32
2.9. Motor DC ......................................................................................................... 33
2.10. Driver Motor DC............................................................................................ 34

BAB III PERANCANGAN DAN PEMBUATAN SISTEM.......................................... 36


3.1. Perancangan Sistem ......................................................................................... 36
3.3.1. Diagram Blok proyek............................................................................. 36
3.2. Perancangan Rangkaian Sistem ....................................................................... 37
3.2.1. Rangkaian Mikrokontroler ATMega 328 .............................................. 37
3.2.2. Rangkaian Sensor Warna TCS3200 dengan ATMega328..................... 38
3.2.3. Rangkaian LCD dengan ATMega328. .................................................. 40
3.2.4. Rangkaian Power Supply dengan ATMega 328. ................................... 41
3.2.5. Rangkaian Motor Servo dengan ATMega 328. ..................................... 43
3.2.6. Rangkaian Motor DC dengan Driver Motor DC ................................... 44
3.3. Perancangan Perangkat Lunak Sistem ............................................................. 45
3.3.1. Mikrokontroler....................................................................................... 45
3.3.2. LCD........................................................................................................ 46
3.3.3. Pengujian Modul Sensor Warna TCS3200 ............................................ 47
3.4. Flowchart Sistem Kerja Pendeteksi Warna...................................................... 50

88

UNIVERSITAS SUMATERA
BAB IV PEMBAHASAN HASIL PENGUKURAN ...................................................... 51
4.1. Pengukuran dan Hasil Pengukuran Sistem ..................................................... 51
4.1.1. Sensor Warna ........................................................................................ 51
4.2. Kalibrasi Alat .................................................................................................. 52

BAB V PENUTUP............................................................................................................. 54
5.1. Kesimpulan ...................................................................................................... 54
5.2. Saran ................................................................................................................ 54
DAFTAR PUSTAKA........................................................................................................ 55
LAMPIRAN....................................................................................................................... 56
Lampiran 1. Program Alat ................................................................................................. 56
Lampiran 2. Gambar Alat ................................................................................................... 62
Lampiran 3. Gambar Rangkaian Lengkap .......................................................................... 63
Lampiran 4. Gambar Standar Warna Internasional ............................................................ 64

UNIVERSITAS SUMATERA
DAFTAR TABEL

Tabel 2.1. Fungsi Sensor Warna ......................................................................................... 5


Tabel 2.2. Mode Pemilihan Photodioda pembaca Warna................................................... 8
Tabel 2.3. Konfigurasi Pin LCD ......................................................................................... 14
Tabel 2.4. Clock Atmega328 .............................................................................................. 22
Tabel 2.5. Tipe Data............................................................................................................ 29
Tabel 2.6. Spesifikasi Arduino Uno.................................................................................... 31
Tabel 4.1. Pengukuran Sensor Warna................................................................................. 51
Tabel 4.2. Tabel Nilai R G B dengan pembanding standart warna internasional............... 52

UNIVERSITAS SUMATERA
DAFTAR GAMBAR

Gambar 2.1.Sensor Warna TCS3200.................................................................................. 4


Gambar 2.2. Pin-Pin Sensor Warna TCS3200.................................................................... 5
Gambar 2.3. Karakteristik se nsivitas dan linearitas photodiode ........................................ 7
Gambar 2.4. Blok Diagram Fungsionl TCS3200................................................................ 9
Gambar 2.5. Bentuk Gelombang dari Spectrum yang Nampak.......................................... 10
Gambar 2.6. Warna Cahaya RGB ....................................................................................... 11
Gambar 2.7. LCD 2x16....................................................................................................... 12
Gambar 2.8. Konfigurasi LCD............................................................................................ 14
Gambar 2.9.Mikrokontroller Atmega 328 .......................................................................... 18
Gambar 2.10.Konfigurasi Pin Atmega 328......................................................................... 18
Gamber 2.11.Status Registar Atmega 328 .......................................................................... 20
Gambar 2.12.Architecture Atmega328 ............................................................................... 22
Gambar 2.13.Peta Memori Atmega .................................................................................... 24
Gambar 2.14. Motor DC ..................................................................................................... 32
Gambar 2.15. Prinsip Kerja Motor DC ............................................................................... 33
Gambar 2.16. Motor Servo MG996 1800 ........................................................................... 35
Gambar 3.1. Diagram Blok Sistem ..................................................................................... 36
Gambar 3.2. RangkaianMikrokontroler ATMega328......................................................... 37
Gambar 3.3. Rangkaian Sensor warna TCS3200 dengan ATMega328.............................. 38
Gambar 3.4. Rangkaian LCD dengan ATMega328............................................................ 40
Gambar 3.5. Rangkaian Power Supply dengan ATMega328 ............................................. 42
Gambar 3.6. Rangkaian Motor Servo ................................................................................. 43
Gambar 3.7. Rangkaian Driver Motor DC.......................................................................... 44
Gambar 3.8. TampilanJendela Program Arduino AVR ...................................................... 45
Gambar 3.9. Flowchart ....................................................................................................... 50
Gambar 4.1. Grafik Hasil Nilai RGB Yang Diuji............................................................... 52

UNIVERSITAS SUMATERA
BAB I

PENDAHULUAN

1.1 Latar Belakang


Perkembangan mikrokontroler yang demikian pesat dari waktu ke waktu
mengharuskan kita agar memahami teknologi tersebut minimal, mengetahui
dasarnya dan cara penggunaannya. Dengan menggunakan mikrokontroler
maka penghematan biaya operasional dapat lebih ditekan lagi dibandingkan
dengan menggunakan tenaga sumber daya manusia. Mikrokontroler pun turut
mengambil andil dalam perkembangan saat ini untuk menyempurnakan
teknologi mereka.
Dalam ilmu fisika, warna disusun dari warna dasar untuk cahaya. Warna
cahaya penyusunnya adalah warna merah, hijau dan biru atau lebih dikenal
dengan istilah RGB (Red-Green-Blue). Adapun parameter warna tersebut
memiliki gelombang cahaya yang berbeda. Perusahaan industri yang
membutuhkan konsistensi bekerja yang tinggi untuk melakukan berbagai
macam pekerjaan. Umumnya, pengelompokan atau sortir barang pada
beberapa produksi barang saat ini masih dilakukan dengan cara manual.
Dalam pembuatan tugas akhir ini, penulis ingin memaparkan suatu
perancangan instrumen ukur dengan memanfaatkan warna dasar RGB dalam
pendeteksian warna. Dalam penggunaan alat ini, kebanyakan pemakai hanya
mengetahui fungsi dasarnya saja dan tanpa disadari bahwa alat ini masih
mempunyai kegunaan yang dapat dikembangkan untuk lebih menghasilkan
fungsi lain yang sangat penting. Oleh sebab itu, penulis akan mencoba untuk
membuat suatu alat yang berjudul “Alat Sortir Benda Berdasarkan RGB
Menggunakan Sensor TCS3200 Berbasis Mikrokontroller”.

UNIVERSITAS SUMATERA
1.2. Rumusan Masalah
Permasalahan yang akan ditemukan dalam merealisasikan rancangan
dirumuskan sebagai berikut:
1. Bagaimana merancang sebuah sistem sortir benda berbasis
Mikrokontroller Atmega 328.
2. Bagaimana cara kerja sensor TCS3200 dalam pengukuran warna
menggunakan variable warna dasar penyusun RGB?
3. Bagaimana cara mendeteksi warna dengan sensor TCS3200?

1.3. Tujuan
Adapun tujuan dari perancangan dan penelitian dari alat ini adalah :

1. Merancang suatu Alat Sortir benda berdasarkan Warna RGB


menggunakan Sensor TCS3200.
2. Memanfaatkan Mikrokontroller Atmega 328 sebagai alat pengolah data
sensor warna.
3. Mengetahui tingkat keakuratan pembacaan warna pada suatu benda.

1.4. Batasan Masalah


Adapun batasan masalah yang dibuat adalah pembahasan tentang
komponen yang digunakan,yaitu :
1. Rancang bangun alat menggunakan Mikrokontroller atmega 328
2. Bahasa C sebagai program yang digunakan pada mikrokontroler
3. Rancang bangun alat ukur, sensor yang digunakan Sensor TCS3200
untuk menyortir benda berdasarkan Warna RGB
4. Motor servo untuk menggerakkan benda tersebut dan menjalankan
program secara otomatis.

1.5. Sistematika Penulisan


Untuk mempermudah penulisan tugas akhir ini, penulis membuat suatu
sistematika penulisan yang terdiri dari :
1. BAB I: PENDAHULUAN

UNIVERSITAS SUMATERA
Bab ini akan membahas latar belakang tugas akhir, identifikasi masalah,
batasan masalah, tujuan, metode penelitian, tinjauan pustaka, dan
sistematika penulisan.
2. BAB II: LANDASAN TEORI
Bab ini akan menjelaskan tentang teori pendukung yang digunakan untuk
pembahasan.
3. BAB III: PERANCANGAN ALAT
Bab ini membahas tentang perencanaan dan pembuatan sistem secara
keseluruhan.
4. BAB IV: HASIL DAN PEMBAHASAN
Berisi tentang uji coba alat yang telah dibuat, pengoperasian dan
spesifikasi alat dan lain-lain.
5. BAB V: KESIMPULAN DAN SARAN
Sebagai bab terakhir penulis akan menguraikan beberapa kesimpulan dari
uraian bab-bab sebelumnya dan penulis akan berusaha memberikan saran
yang mungkin bermanfaat.

UNIVERSITAS SUMATERA
BAB II LANDASAN

TEORI

2.1. Sensor Warna TCS3200


Sensor warna adalah sensor yang digunakan pada aplikasi mikrokontroler
untuk pendeteksian suatu objek benda atau warna dari objek yang dimonitor.
Salah satu jenis sensor warna yaitu TCS3200 merupakan konverter yang
diprogram untuk mengubah warna menjadi frekuensi yang tersusun atas
konfigurasi silicon photodiode dan konverter arus ke frekuensi dalam IC CMOS
monolithic yang tunggal.
Keluaran dari sensor ini adalah gelombang kotak (duty cycle 50%)
frekuensi yang berbanding lurus dengan intensitas cahaya (irradiance). Dalam
TCS3200 seperti gambar konverter cahaya ke frekuensi membaca sebuah
array
8x8 dari photodioda, 16 photodioda mempunyai penyaring warna biru, 16
photodioa mempunyai penyaring warna merah, 16 photodioda mempunyai
penyaring warna hijau dan 16 photodioda untuk warna terang tanpa penyaring.

Gambar 2.1. Sensor Warna TCS3200

UNIVERSITAS SUMATERA
Sensor warna TCS 3200 memiliki konfigurasi pin dengan memiliki fungsi
yang berbeda pada setiap pin seperti gambar 2.1

Gambar 2.2 Pin-pin Sensor Warna TCS3200

Tabel 2.1Fungsi Pin Sensor Warna TCS3200


No Kaki
Nama IC I/O Fungsi Pin

GND 4 - Sebagai Ground Pada Power Supply

OE 3 I Output enable, sebagai input untuk

frekuensi output skala rendah

OUT 6 O Sebagai Output Frekuensi

SO,SI 1,2 I Sebagai saklar Pemilih Pada Frekuensi

Output Skala Tinggi

S2,S3 7,8 I Sebagai Saklar Pemilih 4 Kelompok

Dioda

Vdd 5 - Supply Tegangan

UNIVERSITAS SUMATERA
Catatan Penggunaan
 Tegangan, VDD = 6 Volt
 Jarak tegangan masukan, semua masukan, Vi = -0.3 to VDD +
0.3 V
0 0
 Suhu untuk beroperasi = -40 C to 85 C
0 0
 Suhu untuk penyimpanan = -40 C to 85 C
 Temperatur maksimum penyolderan sesuai dengan JEDEC J-
0
STD-020A = 260 C
4 tipe warna dari photodioda telah diintegrasikan untuk meminimalkan
efek ketidak seragaman dari insiden irradiance. Semua photodioda dari warna
yang sama telah terhubung secara paralel. Pin S2 dan S3 digunakan untuk
memilih grup dari photodioda (merah, hijau, biru, jernih) yang telah aktif. Pada
prinsipnya pembacaan warna pada TCS3200 dilakukan secara bertahap yaitu
membaca frekuensi warna dasar secara simultan dengan cara memfilter pada tiap
tiap warna dasar. Untuk itu, diperlukan sebuah pengaturan atau pemprograman
untuk memfilter tiap-tiap warna tersebut.

2.1.1 Karakteristik Sensor Warna TCS3200

IC TCS3200 dapat dioperasikan dengan supply tegangan pada Vdd


berkisar antara 2,7 Volt – 5,5 volt. Dalam pengoperasiannya sensor tersebut dapat
dilakukan dengan dua cara :
1. Dengan mode supply tegangan maksimu m, yaitu dengan menyuplai
tegangan berkisar antara 2,7volt – 5,5 volt pada sensor warna TCS3200.
2. Mode supply tegangan minimum, yaitu dengan menyuplai tegangan 0
sampai 0,8.

Sensor warna TCS3200 terdiri dari 4 kelompok photodioda, masing –


masing kelompok memiliki sensitivitas yang berbeda satu dengan yang lainnya.
Pada respon photodioda terhadap panjang gelombang cahaya yang dibaca
photodioda yang mendeteksi.

Warna merah dan clear memiliki nilai sensitivitas yang tinggi ketika
mendeteksi intensitas cahaya dengan panjang gelombang 715 nm, sedangkan pada

UNIVERSITAS SUMATERA
panjang gelombang 1100 nm photo dioda tersebut memiliki nilai sensitivitas yang
paling rendah. Hal ini menunjukkan bahwa sensor TCS3200 tidak bersifat
linearitas dan memiliki sensitivitas yang berubah terhadap panjang gelombang
yang diukur. Gambar 2.5 menunjukkan karakteristik photodioda terhadap panjang
gelombang cahaya.

Gambar 2.3. Karakteristik sensitivitas dan linearitas photodioda


terhadap panjang gelombang cahaya.

Semakin besar temperatur koefisien yang diperoleh dari photodioda, maka


semakin jauh panjang gelombang yang dihasilkan oleh sensor. Dimana besar atau
kecil temperatur koefisien tersebut dipengaruhi oleh keadaan panjang gelombang
atau pencahayaan. Hal ini menunjukkan bahwa sensor TCS3200 memiliki
karaktersitik panjang gelombang yang linear.

UNIVERSITAS SUMATERA
2.1.2 Prinsip Kerja Sensor Warna TCS3200

Pada prinsipnya sensor warna TCS3200 bekerja dengan cara membaca


nilai intensitas cahaya yang dipancarkan oleh led super bright terhadap objek.
Pembacaan nilai intensitas cahaya tersebut dilakukan melalui matrik 8x8
photodioda, dimana 64 photo dioda tersebut dibagi menjadi 4 kelompok pembaca
warna. Setiap warna yang disinari led akan memantulkan sinar led menuju
photodiode. pantulan sinar tersebut memiliki panjang gelombang yang berbeda –
beda tergantung pada warna objek yang terdeteksi. Hal ini yang membuat sensor
warna TCS3200 dapat membaca beberapa macam warna.

Tabel 2.2 Mode pemilihan photo dioda pembaca warna

S2 S3 Photo Dioda

0 0 Merah

0 1 Biru

1 0 Clear (no Filter)

1 1 Hijau

Setiap 16 photodiode terhubung secara parallel dengan menggunakan dua


pin kontrol S2 dan S3. Kita dapat memilih mana dari mereka yang akan dibaca.
Jika kita ingin mendeteksi warna merah, maka kita bisa menggunakan 16 foto
merah yang filter dengan menyetel dua pin S2/S3 ke tingkat logika LOW. Sensor
TCS3200 memiliki dua pin kontrol yaitu S0 dan S1 yang digunakan untuk
menskalakan frekuensi output. Frekuensi dapat diskalakan ketiga nilai preset yang
berbeda dari 100%, 20% atau 2%. Fungsi penskalaan frekuensi ini memungkinkan

UNIVERSITAS SUMATERA
keluaran sensor dioptimalkan untuk berbagai penghitung frekuensi atau
mikrokontroler.

2.1.3 Kelebihan Dan Kekurangan Sensor Warna TCS3200

 Kelebihan :
a. Konversi tinggi Resolusi intensitas Cahaya ke Frekuensi
b. Warna Diprogram dan Full Skala Frekuensi keluaran
c. Berkomunikasi langsung dengan Microcontroller
d. Pasokan tunggal Operasi (2,7 sampai 5,5 Volt)
e. Mempunyai power Down Fitur
f. Kesalahan Non Linear biasanya 0,2 % pada 5 KHZ
0
g. Stabil 200 ppm/ Celcius Koefisien Suhu
h. Bebas timbal (Pb) dan RoHS
i. Kompatibel Paket “Surface Mount”
 Kekurangan : Pembacaan data yang rumit karena outputnya berupa
wawe dengan duty cycle 50 %.

2.1.4 Konstruksi Sensor Warna TCS3200


Pada sensor warna TCS230 terdapat selektor S2 dan S3 yang berfungsi
untuk memilih kelompok konfigurasi photodiode yang akan digunakan atau
dipakai.

Gambar 2.4. Blok Diagram Fungsional TCS3200

UNIVERSITAS SUMATERA
Ada dua komponen utama pembentuk IC ini, yaitu photodiode dan
pengkonversi arus ke frekuensi. Keluaran dari sensor ini sendiri berupa output
digital yang berbentuk pulsa-pulsa hasil pembacaan warna RGB. Antar muka
sensor ini dengan arduino cukup mudah, yaitu dengan menghubungkan pin-pin
dalam sensor ini kedalam pin I/O digital arduino dan pin catu daya.

2.2 Elemen Warna


Warna adalah spektrum tertentu yang terdapat didalam suatu cahaya
sempurna (berwarna putih). Identitas suatu warna ditentukan panjang gelombang
cahaya tersebut. Sebagai contoh warna biru memiliki panjang gelombang 460
nanometer. Panjang gelombang warna yang masih bisa ditangkap mata manusia
berkisar antara 380-780 nanometer. Pada gambar dibawah ini menunjukkan
bentuk gelombang dari spektrum yang nampak.

Gambar 2.5. Bentuk Gelombang dari spectrum yang Nampak.

UNIVERSITAS SUMATERA
Dalam peralatan optis, warna bisa pula berarti interpretasi otak
terhadap campuran tiga warna primer cahaya: merah, hijau dan biru
yang digabungkan dalam komposisi tertentu. Misalnya pencampuran
100% merah, 0% hijau, dan 100% biru akan menghasilkan interpretasi
warna magenta. Didalam ilmu warna hitam dianggap sebagai
ketidakhadiran seluruh jenis gelombang warna. Sementara putih
dianggap sebagai representasi kehadiran seluruh gelombang warna
dengan proporsi seimbang. Secara ilmiah, keduanya bukanlah warna
meskipun bisa dihadirkan dalam bentuk pigmen.

Model warna RGB adalah model warna berdasarkan konsep


penambahan kuat cahaya primer yaitu Red, Green dan Blue. Dalam
suatu ruang yang sama sekali tidak ada cahaya, maka ruangan tersebut
adalah gelap total. Tidak ada signal gelombang cahaya yang diserap
oleh mata atau RGB (0,0,0). Apabila menambahkan cahaya merah pada
ruangan tersebut, maka ruangan akan berubah.

Gambar 2.6. Warna Cahaya RGB

2.3 LCD (Liquid Crystal Display)


LCD ( Liquid Crystal Dispalay ) sering diartikan dalam bahasa indonesia
sebagai tampilan kristal cair merupakan suatu jenis media tampilan yang
menggunakan kristal cair sebagai penampil utama.

UNIVERSITAS SUMATERA
LCD dapat menampilkan karakter ASCI sehingga kita bisa menampilkan
campuran huruf dan angka sekaligus berwarna ataupun tidak berwarna. Hal ini
disebabkan karena terdapat banyak sekali titik cahaya (piksel) yang terdiri dari
satu buah kristal cair sebagai sebuah titik cahaya. Walau disebut sebagai titik
cahaya namun, kristal cair ini tidak memancarkan cahaya sendiri. Sumber cahaya
didalam sebuah perangkat LCD ada belakang susunan kristal cair tadi.
Titik cahaya yang jumlahnya puluhan ribu bahkan jutaan inilah yang
membentuk tampilan citra. Kutub kristal cair yang dilewati arus listrik akan
berubah karena pengaruh polarisasi medan magnetic yang timbul dan oleh
karenanya akan hanya membiarkan beberapa warna diteruskan sedangkan warna
lainnya tersaring lampu neon berwarna putih.
Dalam menampilkan karakter untuk membantu menginformasikan proses
dan control yang terjadi dalam suatu program robot kita sering menggunakan
LCD. Ada beberapa jenis LCD yang perbedaannya hanya terletak pada alamat
menaruh karakternya.
Salah satu LCD yang sering dipergunakan adalah LCD 16x2 artinya,
LCD tersebut terdiri dari 16 kolom dan 2 baris. LCD ini sering digunakan karena
harganya yang relatif murah dan pemakaiannya yang mudah. LCD yang kita
gunakan dapat dikoneksikan dengan system minimum dalam suatu
mikrokontroler. Driver tersebut berisi rangkaian pengaman, pengatur tingkat
kecerahan backligt maupun data serta untuk mempermudah pemasangan di
mikrokontroler (portable-red).

Gambar 2.7. LCD 2x16

UNIVERSITAS SUMATERA
LCD memanfaatkan silicon atau gallium dalam bentuk Kristal cair sebagai
pemendar cahaya. Pada layar LCD, setiap matrik adalah susunan dua dimensi
piksel yang dibagi dalam baris dan kolom. Dengan demikian, setiap pertemuan
yang merupakan lempengan kaca bagian belakang dengan sisi dalam yang
ditutupi oleh lapisan elektroda transparan.
Dalam keadaan normal, cairan yang digunakan memiliki warna cerah.
Daerah-daerah tertentu pada cairan akan berubah warnanya menjadi hitam ketika
tegangan diterapkan antara bidang latar dan pola elektroda yang terdapat pada sisi
dalam lempeng kaca bagian depan. Keunggulan LCD adalah hanya menarik arus
yang kecil (beberapa micro ampere), sehingga alat atau sistem menjadi portable
karena dapat menggunakan catu daya yang kecil. Keunggulan lainnya adalah
tampilan yang diperlihatkan dapat dibaca dengan mudah di bawah terang sinar
matahari.
Di bawah sinar cahaya yang remang-remang dalam kondisi gelap, sebuah
lampu (berupa LED) harus dipasang dibelakang layar tampilan.
LCD yang digunakan adalah jenis LCD yang menampilkan data dengan 2 baris
tampilan pada display. Keuntungan dari LCD ini adalah :
1. Dapat menampilkan karakter ASCII, sehingga dapat memudahkan untuk
membuat program tampilan.
2. Mudah dihubungkan dengan port I/O karena hanya menggunakan 8 bit
data dan 3 bit control.
3. Ukuran modul yang proporsional.
Operasi dasar pada LCD terdiri dari empat, yaitu instruksi mengakses
proses internal, instruksi menulis data, instruksi membaca kondisi sibuk, dan
instruksi membaca data. ROM pembangkit sebanyak 192 tipe karakter, tiap
karakter dengan huruf 5x7 dot matrik. Kapasitas pembangkit RAM 8 tipe karakter
(membaca program), maksimum pembacaan 80x8 bit tampilan data. Perintah
utama LCD adalah Display Clear, Cursor Home, Display ON/OFF, Display
Character Blink, Cursor Sihft dan Display Shift.

UNIVERSITAS SUMATERA
2.3.1 Konfigurasi Pin LCD(Liquid Crystal Display)

Gambar 2.8. Konfigurasi LCD

Tabel 2.3. Konfigurasi Pin LCD

Nomor Simbol Level Fungsi


1 Vss - 0 Volt
2 Vcc - 5 + 10% Volt
3 Vee - Penggerak LCD
H=Memasukkan
4 RS H/L Data,L=Memasukkan Ins
5 R/W H/L H=Baca,L=Tulis
6 E Enable Signal
7 DB0 H/L Data Bus
8 DB1 H/L Data Bus
9 DB2 H/L Data Bus
10 DB3 H/L Data Bus
11 DB4 H/L Data Bus
12 DB5 H/L Data Bus
13 DB6 H/L Data Bus
14 DB7 H/L Data Bus
15 V+BL Kecerahan LCC
16 V-BL Kecerahan LCC

UNIVERSITAS SUMATERA
Modul LCD memiliki karakteristik sebagai berikut:
1. Terdapat 16 x 2 karakter huruf yang bisa ditampilkan.
2. Setiap terdiri dari 5 x 7 dot-matrix cursor.
3. Terdapat 192 macam karakter.
4. Terdapat 80 x 8 bit display RAM ( maksimal 80 karakter ).
5. Memiliki kemampuan penulisan dengan 8 bit maupun dengan 4 bit.
6. Dibangun oleh osilator lokal.
7. Satu sumber tegangan 5 Volt.
8. Otomatis reset saat tegangan dihidupkan.
9. Bekerja pada suhu 0oC sampai 550C.

Lapisan film yang berisi Kristal cair diletakkan diantara dua lempeng kaca
yang telah ditanami elektroda logam transparan. Saat tegangan dicatukan pada
beberapa pasang elektroda, molekul-molekul Kristal cair akan menyusun diri agar
cahaya yang mengenainya dipantulkan atau diserap. Dari hasil pemantulan atau
penyerapan cahaya tersebut akan terbentuk pola huruf, angka, atau gambar sesuai
yang di aktifkan.
LCD membutuhkan tegangan dan daya yang kecil sehingga sangat popular
untuk aplikasi pada kalkulator, arloji digital dan instrument elektronika. Berbeda
seperti Global Positioning System (GPS), baragraph display dan multimeter
digital. LCD umumnya dikemas dalam bentuk Dual In Line Package (DIP) dan
mempunyai kemampuan untuk menampilkan beberapa kolom dan baris dalam
satu panel. Untuk membentuk pola, baik karakter maupun gambar pada kolom
dan baris secara bersamaan digunakan metode Screening.
Metode screening adalah mengaktifkan daerah pertolongan suatu kolom
dan suatu baris secara bergantian dan cepat sehingga seolah-olah aktif semua.
Penggunaan metode ini dimaksudkan untuk menghemat jalur yang digunakan
untuk mengaktifkan panel LCD. Saat ini telah dikembangkan berbagai jenis LCD
mulai jenis LCD biasa, Passive Matrix LCD (PWLCD), hingga Thin-
FilmTransistor Active Matrix (IFT-AMLCD). Kemampuan LCD juga telah
ditingkatkan dari yang monokrom hingga yang mampu menampilk warna tersebut

UNIVERSITAS SUMATERA
selain untuk loader ketika mem-program, bisa juga difungsikan sebagai
port
komunikasi serial.
Arduino menyediakan 20 pin I/O yang terdiri dari 6 pin input analog dan
14 pin digital input/output. Untuk 6 pin analog sendiri bisa juga difungsikan
sebagai output digital jika diperlukan output digital tambahan selain 14 pin yang
sudah tersedia. Untuk mengubah pin analog menjadi digital cukup mengubah
konfigurasi pin pada program.
Dalam board kita bisa lihat pin digital diberi keterangan 0-13, jadi untuk
menggunakan pin analog menjadi output digital, pin analog yang pada keterangan
board 0-5 kita ubah menjadi pin 14-19. Dengan kata lain, pin analog 0-5
berfungsi juga sebagi pin output digital 14-16. Sifat open source arduino juga
banyak memberikan keuntungan tersendiri untuk kita dalam menggunakan board
ini karena dengan sifat open source komponen yang kita pakai tidak hanya
tergantung pada satu merek, namun memungkinkan kita bisa memakai semua
komponen yang ada dipasaran. Bahasa pemrograman arduino merupakan bahasa
C yang sudah disederhanakan syntax bahasa pemrogramannya sehingga
mempermudah kita dalam mempelajari dan mendalami mikrokontroller.
ICNE555 bukanlah satu – satunya komponen yang digunakan. Disini
peneliti menambahkan beberapa komponen pelengkap yang sama bergunanya
dalam pembuatan alat ini. Komponen – komponen itu antara lain adalah 1 buah
potensiometer 10k, 2 buah kapasitor 0,01uF, 1 buah kapasitor 1uF, 1 buah IC
NE555, 1 buah Speaker 8Ω, 0,5watt, 1 buah baterai 9volt dan 1 buah transistor
NPN 9013.

2.4. AVR Mikrokontroller ATMega 328


ATMega328 adalah mikrokontroller keluaran dari atmel yang mempunyai
arsitektur RISC (Reduce Instruction Set Computer) yang dimana, setiap proses
eksekusi data lebih cepat dari pada arsitektur CISC (Completed Instruction Set
Computer). ATMega328 memiliki beberapa fitur antara lain :
 130 macam instruksi yang hampir semuanya dieksekusi dalam satu
siklus clock.
 32x 8-bit register serba guna.

UNIVERSITAS SUMATERA
 Kecepatan mencapai 16 MIPS dengan clock 16 MHz.
 32 KB Flash memory dan pada arduino memiliki bootloader yang
menggunakan
 2 KB dari flash memori sebagai bootloader.
 Memiliki EEPROM (Electrically Erasable Programmable Read Only
Memory) sebesar 1KB sebagai tempat penyimpanan data semi
permanent karena EEPROM tetap dapat menyimpan data meskipun catu
daya dimatikan.
 Memiliki SRAM (Static Random Access Memory) sebesar 2KB.
 Memiliki pin I/O digital sebanyak 14 pin 6 diantaranya PWM (Pulse
Width Modulation) output.
 Master / Slave SPI Serial interface.

Mikrokontroller ATmega 328 memiliki arsitektur Harvard, yaitu


memisahkan memori untuk kode program dan memori untuk data sehingga dapat
memaksimalkan kerja dan parallelism. Instruksi – instruksi dalam memori.
Konsep inilah yang memungkinkan instruksi – instruksi dapat dieksekusi dalam
setiap satu siklus clock. 32 x 8-bit register serba guna digunakan untuk
mendukung operasi pada ALU (Arithmatic Logic unit) yang dapat dilakukan
dalam satu siklus. 6 dari register serbaguna ini dapat digunakan sebagai 3 buah
register pointer 16-bit pada mode pengalamatan tidak langsung untuk mengambil
data pada ruang memori data ketiga register pointer 16-bit ini disebut dengan
register X ( gabungan R26 dan R27 ), register Y ( gabungan R28 dan R29 ), dan
register Z ( gabungan R30 dan R31 ). Hampir semua instruksi AVR memiliki
format 16-bit. Setiap alamat memori program terdiri dari instruksi 16- bit atau 32-
bit. Selain register serba guna di atas, terdapat register lain yang terpetakan
dengan teknik memory mapped I/O selebar 64 byte. Beberapa register ini
digunakan untuk fungsi khusus antara lain sebagai register control Timer/
Counter, Interupsi, ADC, USART, SPI, EEPROM, dan fungsi I/O lainnya.
Register – register ini menempati memori pada alamat 0x20h – 0x5Fh.

UNIVERSITAS SUMATERA
.
Gambar 2.9.mikrokontroller ATMEGA 328

2.4.1 Konfigurasi Pin ATMega 328

Gambar 2.10.Konfigurasi Pin ATMega 328

ATMega328 memiliki 3 buah PORT utama yaitu PORTB, PORTC dan


PORTD dengan total pin input/output sebanyak 23 pin. PORT tersebut dapat
difungsikan sebagai input/output digital atau difungsikan sebagai periperal
lainnya.

UNIVERSITAS SUMATERA
1. PortB
Port B merupakan jalur data 8 bit yang dapat difungsikan sebagai
input/output. Selain itu PORTB juga dapat memiliki fungsi alternatif seperti di
bawah ini.
 ICP1 (PB0), berfungsi sebagai Timer Counter 1 input capture pin.
 OC1A (PB1), OC1B (PB2) dan OC2 (PB3) dapat difungsikan sebagai
keluaran PWM (Pulse Width Modulation).
 MOSI (PB3), MISO (PB4), SCK (PB5), SS (PB2) merupakan jalur
komunikasi SPI.
 Selain itu pin ini juga berfungsi sebagai jalur pemograman serial (ISP).
 TOSC1 (PB6) dan TOSC2 (PB7) dapat difungsikan sebagai sumber clock
external untuk timer.
 XTAL1 (PB6) dan XTAL2 (PB7) merupakan sumber clock utama
mikrokontroler.
2. PortC
Port C merupakan jalur data 7 bit yang dapat difungsikan sebagai
input/output digital. Fungsi alternatif PORTC antara lain sebagai berikut.
 ADC6 channel (PC0,PC1,PC2,PC3,PC4,PC5) dengan resolusi sebesar 10
bit.
 ADC dapat kita gunakan untuk mengubah input yang berupa tegangan
analog menjadi data digitb. I2C (SDA dan SDL) merupakan salah satu
fitur yang terdapat pada PORTC. I2C digunakan untuk komunikasi dengan
sensor atau device lain yang memiliki komunikasi data tipe I2C seperti
sensor kompas, accelerometer nunchuck.
3. PortD
Port D merupakan jalur data 8 bit yang masing-masing pin-nya juga dapat
difungsikan sebagai input/output. Sama seperti Port B dan Port C, Port D juga
memiliki fungsi alternatif dibawah ini.
 USART (TXD dan RXD) merupakan jalur data komunikasi
serialdenganlevel sinyal TTL. Pin TXD berfungsi untuk mengirimkan data
serial, sedangkan RXD kebalikannya yaitu sebagai pin yang berfungsi
untuk menerima data serial.

UNIVERSITAS SUMATERA
 Interrupt (INT0 dan INT1) merupakan pin dengan fungsi khusus sebagai
interupsi hardware. Interupsi biasanya digunakan sebagai selaan dari
program, misalkan pada saat program berjalan kemudian terjadi interupsi
hardware/software maka program utama akan berhenti dan akan
menjalankan program interupsi.
 XCK dapat difungsikan sebagai sumber clock external untuk USART,
namun kita juga dapat memanfaatkan clock dari CPU, sehingga tidak perlu
membutuhkan externalclock.
 T0 dan T1 berfungsi sebagai masukan counter external untuk timer 1 dan
timer 0.
 AIN0 dan AIN1 keduanya merupakan masukan input untuk analog
comparator.

2.4.2 Status Register 328


Pada AVR status register mengandung beberapa informasi mengenai hasil
dari kebanyakan hasil eksekusi intruksiaritmatika. Informasi ini digunakan untuk
Altering arus program sebagai kegunaan untuk meningkatkan performa
pengoperasian. Register ini di-update setelah operasi ALU (Arithmetic Logis Unit)
hal tersebut seperti yang tertulis dalam datasheet khususnya pada bagian
intruction set reference.
Dalam hal ini untuk membuang beberapa kasus dapat membuang
penggunaan kebutuhan intruksi perbandingan yang telah didedikasikan serta dapat
menghasilkan peningkatan dalam hal kecepatan dan kode yang lebih sederhana
dan singkat. Register ini tidak secara otomatis tersimpan ketika memasuki sebuah
rutin interupsi dan juga ketika menjalankan sebuah perintah kembali dari
interupsi. Namun hal tersebut harus dilakukan melalui softwere.

Gambar 2.11.Status Register Atemega 328

UNIVERSITAS SUMATERA
Penjelasan :
1. Bit 7 (I)
Merupakan bit Global Interrupt Enable. Bit ini harus di set agar semua
perintah interupsi dapat dijalankan. Untuk perintah interupsi individual akan di
jelaskan pada bagian yang lain. Jika bit ini di-reset, maka semua perintah
interupsi baik yang individual maupun yang secara umum akan di abaikan. bit
ini akan dibersihkan atau cleared oleh hardwere setelah sebuah interupsi di
jalankan dan akan di-set kembali oleh perintah RETI. Bit ini juga dapat di-set
dan di-reset melalui aplikasi SEI dan CLL.
2. Bit 6 (T)
Merupakan bit copy storage. Intruksi bit copy intruction BLD (Bit Load)
and BST (Bit Store) menggunakan bit ini sebagai asal atau tujuan untuk bit
yang telah dioperasikan. sebuah bit dari sebuah register dalam register file
dapat disalin ke dalam bit ini dengan menggunakan intruksi BST, dan sebuah
bit di dalam bit ini dapat di salin ke dalam bit di dalam register pada register
file dengan menggunakan perintah BLD.

3. Bit 5 (H)
Merupakan bit Half Carry Flag. Bit ini menandakan sebuah Half Carry
dalam beberapa operasi aritmatika. Bit ini berfungsi dalam aritmatika BCD.
4. Bit 4 (S)
Merupakan Sign Bit. Bit ini selalu merupakan sebuah eksklusif diantara
Negative Flag (N)dan two’s Complemen Overflow Flag (V).
5. Bit 3 (V)
Merupakan bit Two’s Complemen Overflow Flag. Bit ini menyediakan fungsi
aritmatika dua komplemen.
6. Bit 2 (N)
Merupakan bit Negative Flag. Bit ini mengindikasikan sebuah hasil
negatif di dalam sebuah fungsi logika atau aritmatika.
7. Bit 1 (Z)
Merupakan Bit Zero Flag. bit ini mengindikasikan sebuah hasil nol “0”
dalam sebuah fungsi aritmatika atau logika.

UNIVERSITAS SUMATERA
8. Bit 0 (C)
Merupakan bit Carry Flag. bit ini mengindikasikan sebuah Carry atau
sistem dalam sebuah aritmatika atau logika.

2.4.3. Arsitektur Mikrokontroller ATMega 328

Gambar 2.12. Architecture Atmega 328

2.4.4 Kebutuhan Clock ATMega 328


Sumber clock pada ATMega 328 secara garis besar ada 2 buah, yaitu
clock internal dan clock external. Untuk clock internal maksimum clock yang
dapat digunakan adalah 8MHz, sedangkan untuk clock external maksimum clock
yang dapat digunakan adalah sebesar 16MHz. Lebih jelasnya mengenai berbagai
macam sumber clock dapat dilihat pada tabel di bawah ini.

Tabel 2.4Clock ATMega 328


Device Clocking Option CKSEL3..0
External Crystal/Ceramic Resonator 1111 – 1010
External Low-frequency Crystal 1001
External RC Oscillator 1000 – 0101
Calibrated Internal RC Oscillator 0100 – 0001
External Clock 0000

UNIVERSITAS SUMATERA
2.4.5 Memori ATMega 328
Memori atmega terbagi menjadi tiga yaitu :

a. Memori Flash

Memori Flas adalah memori ROM menjadi kode-kode program


berada. Kata Flash menunjukkan jenis ROM yang dapat di tulis dan di
hapus secara elektrik. memori flash terbagi menjadi dua bagian yaitu bagian
aplikasi dan bagian boot. bagian aplikasi adalah bagian kode-kode program
aplikasi berada. bagian boot adalah bagian yang di gunakan khusus untuk
booting awal yang dapat di program untuk menulis bagian aplikasi tanpa
melalui programmer / downloader, misalnya melalui USART.

b. Memori Data
Memori data adalah memori RAM yang digunakan untuk keperluan
program. memori data terbagi menjadi empat bagian yaitu : 32 GPR (General
Purphose Register) adalah register khusus yang bertugas untuk membantu
eksekusi program oleh ALU (Aritmatich logic unit), dalam intruksi assembler
setiap intruksi harus melibatkan GPR.
Dalam bahasa C biasanya di gunakan untuk variabel global atau nilai
balik fungsi dan nilai-nilai yang dapat memperingan kerja ALU. Dalam istilah
processor komputer sehari-hari GPR dikenal sebagai “chace memory”. I/O
register dan Aditional I/O register adalah register yang di fungsikan khusus
untuk mengendalikan berbagai pheripheral dalam mikrokontroller seperti pin
port, timer/counter, usart dan lain-lain.

c. EEPROM
EEPROM adalah memori data yang dapat mengendap ketika chip mati
(off), digunakan untuk keperluan penyimpanan data yang tahan terhadap
gangguan catu daya.

UNIVERSITAS SUMATERA
Gambar 2.13.Peta Memori ATMEGA 328

2.4.6 Timer / Counter 0

Timer Counter 0 adalah timer/counter yang dapat mencacah sumber


pulsa/clock baik dari dalam chip (timer) ataupun dari luar chip (counter) dengan
kapasitas 8-bit atau 256 cacahan. Timer Counter dapat di gunakan untuk :
Timer / Counter biasa
Clear Timer On Company Match (Selain Atmega8)
Generator frekuensi (selain ATMega8)
Counter pulsa eksternal

2.4.7 Komunikasi Serial Pada ATMega 328


Atmega328 menyediakan komunikasi serial UART TTL (5V) yang
tersedia di pin 0 (RX) dan pin 1 (TX). Sebuah chip FTDI yang terdapat pada
board berfungsi menterjemahkan bentuk komunikasi ini melalui USB dan akan
tampil sebagai Virtual Port di komputer. Pada Arduino Software (IDE) terdapat
monitor serial yang memudahkan data textual untuk dikirim menuju Arduino atau
keluar dari Arduino. Lampu led TX dan RX akan menyala berkedip-kedip ketika
ada data yang ditransmisikan melalui chip FTDI USB to Serial via kabel USB ke
komputer. Untuk menggunakan komunikasi serial dari digital pin, gunakan
Software Serial library. Chip ATmega328 juga mendukung komunikasi I2C
(TWI) dan SPI. Didalam Arduino Software (IDE) sudah termasuk Wire Library

UNIVERSITAS SUMATERA
untuk memudahkan anda menggunakan bus I2C. Untuk menggunakan
komunikasi SPI, gunakan SPI library.

2.4.8 Daya
Mikrokontroler Atmega 328 dapat diaktifkan dengan catu daya eksternal.
Adaptor ini dapat dihubungkan dengan menancapkan plug positif 2.1 mm ke
colokan listrik. Dari baterai dapat dimasukan dalam Gnd dan Vinpin header
darikonektor power. Mikrokontroler Atmega 328 ini dapat beroperasi pada
pasokan tegangan eksternal 6 sampai 20 volt. Jika diberikan dengan kurang dari 7
volt, pin yang keluaran 5 volt mungkin pasokannya kurang dari 5 volt dan
mikrokontroler Atmega 328 mungkin tidak stabil. Jika menggunakan lebih dari 12
volt, regulator tegangan bisa panas dan merusak IC mikro. Kisaran yang
disarankan adalah 7-12 volt.
Pin sumber daya dalam mikrokontroler Atmega 328 ini adalah sebagai
berikut :
 VIN
Tegangan masukan pada mikrokontroler Atmega 328 menggunakan
sumber daya eksternal.
 5V
Catu daya 5 volt ini digunakan untuk daya mikrokontroler dan komponen
lainnya pada boardmikrokontroler Atmega 328. Hal ini dapat terjadi
dilakukan dari pin VIN melalui regulator on-board, atau melalui port
USB atau sumber tegangan lainnya seperti adaptor.
 GND
Pin ground.

2.5. Bahasa Pemrograman c

Bahasa C dikembangkan pada Lab Bell pada tahun 1978 oleh Dennis
Ritchi dan Brian W. Kernighan. Pada tahun 1983 dibuat standar C yaitu standar
ANSI ( American National Standards Institute ) yang digunakan sebagai referensi
dari berbagai versi C yang beredar dewasa ini termasuk Turbo C.
Dalam beberapa literature, bahasa C digolongkan bahasa level menengah
karena bahasa C mengkombinasikan elemen bahasa tinggi dan elemen bahasa

UNIVERSITAS SUMATERA
rendah. Kemudahan dalam level rendah merupakan tujuan diwujudkanya bahasa
C. Pada tahun 1985 lahirlah pengembangan ANSI C yang dikenal dengan C++
(diciptakan oleh Bjarne Struostrup dari AT % TLab). Bahasa C++ adalah
pengembangan dari bahasa C. Bahasa C++ mendukung konsep pemrograman
berorientasi objek dan pemrograman berbasis windows.
Sampai sekarang bahasa C++ terus berkembang dan hasil
perkembangannya muncul bahasa baru pada tahun 1995 (merupakan keluarga C
dan C++ yang dinamakan java). Istilah prosedur dan fungsi dianggap sama dan
disebut dengan fungsi saja. Hal ini karena di C++ sebuah prosedur pada dasanya
adalah sebuah fungsi yang tidak memiliki tipe data kembalian (void). Hingga kini,
bahasa ini masih popular dan penggunaannya tersebar di berbagai platform dari
windows samapi linux dan dari PC hingga main frame. Ada pun kekurangan dan
kelebihan Bahasa C sebagai berikut :
 Kelebihan Bahasa C:
- Bahasa C tersedia hampir di semua jenis computer.

- Kode bahasa C sifatnya adalah portable dan fleksibel untuk semua

jenis computer.

- Bahasa C hanya menyediakan sedikit kata-kata kunci. Hanya

Terdapat 32 kata kunci

- Proses executable program bahasa C lebih cepat

- Dukungan pustaka yang banyak.

- C adalah bahasa yang terstruktur

- Bahasa C termasuk bahasa tingkat menengah

Penempatan ini hanya menegaskan bahwa c bukan bahasa pemrograman


yang berorientasi pada mesin yang merupakan ciri bahasa tingkat rendah.
Melainkan berorientasi pada obyek tetapi dapat diInterprestasikan oleh mesin.
inilah salah satu kelebihan C yaitu memiliki kemudahan dalam menyusun
programnya semudah bahasa tingkat tinggi namun dalam mengesekusi program
secepat bahasa tingkat rendah.

UNIVERSITAS SUMATERA
 Kekurangan Bahasa C:
- Banyaknya operator serta fleksibilitas penulisan program kadang-

kadang membingungkan pemakai.

- Bagi pemula pada umumnya akan kesulitan menggunakan

pointer.

2.5.1 Struktur Bahasa C


a. Program bahasa C tersusun atas sejumlah blok fungsi.
b. Setiap fungsi terdiri dari satu atau beberapa pernyataan untuk melakukan
suatu proses tertentu.
c. Tidak ada perbedaan antara prosedur dan fungsi.
d. Setiap program bahasa C mempunyai suatu fungsi dengan nama “main”
(Program Utama).
e. Fungsi bisa diletakkan diatas atau dibawah fungsin “main”.
f. Setiap statemen diakhiri dengan semicolon (titik koma).

2.5.2 Pengenal
Pengenal (identifier) merupakan sebuah nama yang didefenisikan oleh
pemrograman untuk menunjukkan indetitas dari sebuah konstanta, variable,
fungsi, label atau tipe data khusus. Pemberian nama sebuah pengenal dapat
ditentukan bebas sesuai keinginan pemrogram tetapi harus memenuhi atura
berikut :
 Karakter pertama tidak boleh menggunakan angka
 Karakter kedua dapat berupa huruf, angka atau garis bawah.
 Tidak boleh menggunakan spasi.
 Bersifat Case Sensitive, yaitu huru capital dan huruf kecil dianggap
Berbeda
 Tidak boleh mengunakan kata – kata yang merupakan sitaks maupun
operator dalam pemrograman C, misalnya : Void, short, const, if, static,
bit, long, case, do, switch dll.

UNIVERSITAS SUMATERA
2.5.3 Tipe Data
Tipe data merupakan suatu hal yang penting untuk kita ketahui pada saat
belajar bahasa pemrograman. Kita harus dapat menentukan tipe data yang tepat
untuk menampung sebuah data, baik itu data berupa bilangan numerik ataupun
karakter. Hal ini bertujuan agar program yang kita buat tidak membutuhkan
pemesanan kapling memori yang berlebihan.
Seorang programmer yang handal harus dapat memilih dan menentukan
tipe data apa yang seharusnya digunakan dalam pembuatan sebuah program.
Secara garis besar tipe data pada bahasa C dibagi menjadi beberapa bagian antara
lain sebagai Berikut
Macam-Macam Tipe Data Pada Bahasa C :
1. Tipe Data Karakter
Sebuah karakter, baik itu berupa huruf atau angka dapat disimpan
padasebuah variabel yang memiliki tipe data char dan unsigned char.
Besarnya datayang dapat disimpan pada variabel yang bertipe data char adalah
-127 - 127. Sedangkan untuk tipe data unsigned char adalah dari 0 - 255. Pada
dasarnya setiap karakter memiliki nilai ASCII, nilai inilah yang sebetulnya
disimpan pada variabel yang bertipe data karakter ini.
2. Tipe Data Bilangan Bulat
Tipe data bilangan bulat atau dapat disebut juga bilangan decimal
merupakan sebuah bilangan yang tidak berkoma. Pada bahasa C terdapat
bermacam-macam tipe data yang dapat kita gunakan untuk menampung
bilangan bulat. Kita dapat menyesuaikan penggunaan tipe data dengan terlebih
dahulu memperhitungkan seberapa besar nilai yang akan kita simpan.
Contohnya seperti berikut, kiata akan melakukan operasi penjumlahan nilai
300 dan 100 dan hasilnya akan disimpan pada variabel c.
Jika dilihat, hasil dari penjumlahan tersebut nilainya akan lebih besar
dari 255 dan nilainya pasti positif oleh karena itu, sebaiknya kita
menggunakan tipe data unsigned int jika dilihat hasilnya akan negatif maka
selayaknya digunakan variabel dengan tipe data int.

UNIVERSITAS SUMATERA
3. Tipe Data Bilangan Berkoma
Pada bahasa C terdapat dua buah tipe data yang berfungsi untuk
menampung data yang berkoma. Tipe data tersebut adalah float dan double.
Double lebih memiliki panjang data yang lebih banyak dibandingkan float. Tipe
data double dapat digunakan jika kita membutuhkan variabel yang dapat
menampung tipe data berkoma yang bernilai besar.

Tabel 2.5 Tipe Data

Nomor Tipe Data Ukuran Jangkauan Nilai

1 Bit 1 byte 0 atau 1

2 1 byte -128 s/d 127


Char

3 Unsigned Char 1 byte


0 s/d 225

4 1 byte -128 s/d 127


Signed Char

5 2 byte -32.768 s/d 32.767


Int

6 Short Int 2 byte


-32.768 s/d 32.767

7 Unsigned Int 2 byte


0 s/d 65.535

8 Signed Int 2 byte


-32.768 s/d 32.767

9 Long Int 4 byte


-2.147.483.648 s/d 2.147.483.647
Unsigned long
10 4 byte
Int 0 s/d 4.294.967.295

Signed Long
11 4 byte
Int -2.147.483.648 s/d 2.147.483.647

12 Float 4 byte -38 +38


1.2*10 s/d 3.4*10
13 Double 4 byte -38 +38
1.2*10 s/d 3.4*10

UNIVERSITAS SUMATERA
2.5.4 Konstanta Dan Variabel
Konstanta dan variable merupakan sebuah tempat untuk menyimpan data
yang berada di dalam memori. Konstanta berisi data yang nilainya tetap dan tidak
dapat diubah selama program dijalankan, sedangkan variable berisi data yang bisa
berubah nilainya pada saat program dijalankan.

2.6 Power Supply


Power supplay sebagai alat atau perangkat keras yang mampu menyuplai
tenaga atau tegangan listrik secara langsung dari sumber tegangan listrik ke
tegangan listrik yang lainnya. Power supply biasanya digunakan untuk komputer
sebagai penghantar tegangan listrik secara langsung kepada komponen-komponen
atau perangkat keras lainnya yang ada di komputer tersebut seperti hardisk, kipas,
motherboard dan lain sebagainya. Power supply memiliki input dari tegangan
yang berarus alternating current (AC) dan mengubahnya menjadi arus direct
current (DC) lalu menyalurkannya ke berbagai perangkat keras yang ada di
komputer . Karena memang arus direct current (DC)-lah yang dibutuhkan untuk
perangkat keras agar dapat beroperasi. Direct current biasa disebut juga sebagai
arus yang searah sedangkan alternating current merupakan arus yang berlawanan.

2.7. Arduino Uno


Mikrokontroller berbasis ATmega 328, Arduino memiliki 14 pin
input/output digital yang mana 6 tersebut dapat digunakan sebagai output PWM, 6
analog input, 16 MHZ sebuah isolator Kristal, koneksi USB, jack power, ICSP
header dan tombol reset. Untuk mendukung mikrokontroler agar dapat digunakan,
cukup hanya menghubungkan board Arduino uno ke komputer dengan
menggunakan kabel USB atau listrik dengan AC yang ke adaptor atau baterai
untuk menjalankannya. Arduino Uno berbeda dari semua papan sebelumnya
dalam hal itu tidak menggunakan FTDI chip driver USB to serial. Sebaliknya,
fitur ATmega 16U2 (ATmega 8U2 hingga versi R2) diprogram sebagai converter
USB to serial revisi 2 dari dewan Uno memiliki resistor menarik garis 8U2 HWB
ke tanah sehingga lebih mudah untuk dimasukkan ke dalam mode DFU.

UNIVERSITAS SUMATERA
Microcontroller ATmega328
Operating Voltage 5V
Input Voltage 7-12V
(recommended)
Input Voltage 6-20V
Digital I/O Pin s 14 (of which 6 provide PWM output)
Analog Input Pin s 6
DC Current Per I/o 40 Ma
DC Current for 3.3V 50 Ma
32 KB (Atmega) of which 0,5 KB used by
Flash Memory bootloader
SR A M 2 KB (Atmega328)
EEPROM 1 KB (ATmega328)
Clock Speed 16 MHZ
Length 68,6 mm
Width 53,4
Weight 25 g

Tabel 2.6. Spesifikasi Arduino Uno

2.8. Motor DC
Motor DC atau lebih tepatnya motor listrik adalah komponen elektrik yang
sifatnya merubah besaran elektrik menjadi berupa putaran. Motor listrik terdiri
atas tiga bagian utama yang disebut stator (bagian yang diam), rotor (bagian yang
bergerak) dan air gap. Rotor dapat berputar karena adanya medan magnet yang
dipengaruhi oleh arus listrik. Air gap adalah bagian yang memisahkan rotor dan
stator. Motor terdiri dari dua jenis yaitu motor AC dan motor DC.
Motor DC menggunakan 2 data yang harus tersambung ke data digital
mikrokontroler namun ketika harus menggunakan motor DC yang membutuhkan
arus tinggi harus menggunakan rangkaian penguat (driver) dari motor ke
mikrokontroler. Sedangkan Motor AC biasanya memerlukan rangkian berupa
relay untuk menjalankannya karena tegangan yang berasal dari mikrokontroler
adalah DC sedangkan tegangan yang dibutuhkan adalah tegangan AC.

UNIVERSITAS SUMATERA
Gambar 2.14. Motor DC

2.8.1. Prinsip Kerja Motor DC


 Pada posisi 1 arus elektron mengalir dari sikat negatif menuju ke
sikatpositif. Akan timbul torsi yang menyebabkan jangkar berputar
berlawanan arah jarum jam
 Ketika jangkar pada posisi 2, sikat terhubung dengan kedua
segmencomutator. Aliran arus pada jangkar terputus sehingga tidak ada
torsi yang dihasilkan. Tetapi, kelembaban menyebabkan jangkar tetap
berputar melewati titik netral.
 Pada posisi 3, letak sisi jangkar berkebalikan dari letak sisi jangkarpada
posisi 1. Segmen comutator membalik arah arus elektron yang
mengalirpada kumparan jangkar. Oleh karena itu arah arus yang mengalir
padakumparan jangkar sama dengan posisi 1. Torsi akan timbul yang
menyebabkan jangkar tetap berputar berlawanan arah jarum jam.
 Jangkar berada pada titik netral. Karena adanya kelembaman padaporos
jangkar, maka jangkar berputar terus – menerus.

UNIVERSITAS SUMATERA
Gambar 2.15 Prinsip Kerja Motor DC

Pada dasarnya, motor arus searah merupakan suatu transduser yang


mengubah energi listrik menjadi energi mekanik. Proses konversi ini terjadi
melalui medan magnet. Ketika arus (I) melalui sebuah konduktor akan dihasilkan
garis-garis gayamagnet (fluks) B. Arah dari fluks bergantung pada arus yang
mengalir atau dimana terjadi perbedaan potensial tegangan.

2.9. Driver Motor DC


Driver adalah rangkaian yang tersusun dari transistor yang digunakan
untuk menggerakkan motor DC. Motor memang dapat berputar hanya dengan
daya DC, tapi tidak bisa diatur tanpa menggunakan driver, maka diperlukan suatu
rangkaian driver yang berfungsi untuk mengatur kerja dari motor. Dapat dilihat
driver motor yang digunakan sebagai berikut. Pada driver motor DC ini dapat
mengeluarkan arus hingga 43A, dengan memiliki fungsi Pulse-WidthModulation.

UNIVERSITAS SUMATERA
Tegangan sumber DC yang dapat diberikan antara 5.5V- 27VDC, sedangkan
tegangan input level antara 3.3V-5VDC, driver motor ini menggunakan rangkaian
full H-bridge dengan IC BTS7960 dengan perlindungan saat terjadi panas dan
arus berlebihan.

2.10. Motor Servo


Motor servo adalah sebuah perangkat sebagai aktuator putar (motor) yang
dirancang dengan sistem kontrol umpan balik loop tertutup (servo), sehingga
dapat di set-up atau diatur untuk menentukan dan memastikan posisi sudut dari
poros output motor. Motor servo merupakan perangkat yang terdiri dari motor
DC, serangkaian gear, rangkaian kontrol dan potensiometer. Serangkaian gear
yang melekat pada poros motor DC akan memperlambat putaran poros dan
meningkatkan torsi motor servo, sedangkan potensiometer dengan perubahan
resistansinya saat motor berputar berfungsi sebagai penentu batas posisi putaran
poros motor servo.
Penggunaan sistem kontrol loop tertutup pada motor servo berguna untuk
mengontrol gerakan dan posisi akhir dari poros motor servo. Posisi poros output
akan dihasilkan oleh sensor untuk mengetahui posisi poros sudah tepat seperti
yang diinginkan atau belum dan jika belum, maka kontrol input akan mengirim
sinyal kendali untuk membuat posisi poros tersebut tepat pada posisi yang
diinginkan. Motor servo biasa digunakan dalam aplikasi-aplikasi di industri selain
itu, digunakan juga dalam berbagai aplikasi lain seperti pada mobil mainan radio
kontrol, robot, pesawat dan lain sebagainya.
Ada dua jenis motor servo, yaitu motor servo AC dan DC. Motor servo
AC lebih dapat menangani arus yang tinggi atau beban berat sehingga sering
diaplikasikan pada mesin-mesin industri. Sedangkan motor servo DC biasanya
lebih cocok untuk digunakan pada aplikasi-aplikasi yang lebih kecil dan bila
dibedakan menurut rotasinya umumnya, terdapat dua jenis motor servo yang dan
terdapat di pasaran yaitu motor servo rotation 180⁰ dan servo rotation
continuous
360⁰.

 Motor servo standard (servo rotation 180⁰) adalah jenis yang paling umum
dari motor servo, dimana putaran poros outputnya terbatas hanya 90⁰

UNIVERSITAS SUMATERA
kearah kanan dan 90⁰ kearah kiri. Dengan kata lain total putarannya hanya
setengah lingkaran atau 180⁰.
 Motor servo rotation continuous 360⁰ merupakan jenis motor servo yang
sebenarnya sama dengan jenis servo standard, hanya saja perputaran
porosnya tanpa batasan atau dengan kata lain dapat berputar terus, baik ke
arah kanan maupun kiri.
Pada alat Aplikasi Accelerometer pada Penstabil Monopod Menggunakan
Motor Servo memanfaatkan motor servo DC karena penggunaanya yang
praktis dan ditambah keunggulan dari fitur motor servo DC. Motor servo DC
memiliki sistem umpan balik tertutup di mana posisi rotor-nya akan
diinformasikan kembali ke rangkaian kontrol yang ada di dalam motor servo.
Motor ini terdiri dari sebuah motor DC, serangkaian gear, potensiometer dan
rangkaian kontrol. Potensiometer berfungsi untuk menentukan batas sudut dari
putaran servo. Sedangkan sudut dari sumbu motor servo diatur berdasarkan lebar
pulsa yang dikirim melalui kaki sinyal dari kabel motor servo.

Gambar 2.16. Motor Servo MG996 1800

UNIVERSITAS SUMATERA
BAB 3
PERANCANGAN DAN PEMBUATAN SISTEM

Perancangan yang dilakukan dalam penelitian ini meliputi perancangan


perangkat keras dan perencangana perangkat lunak. Perancangan perangkat keras
dimulai dengan merancang diagram blok dan prinsip kerja sistem, kemudian
dilanjutkan merancang rangkaian system dengan menggabungkan keseluruhan
perangkat menjadi sebuah system terkendali.

3.1 PerancanganSistem
3.1.1 Diagram Blok Sistem
Diagram blok merupakan salah satu bagian terpenting dalam perancangan
peralatan elektronika, Untuk mempermudah perancangan system diperlukan
sebuah diagram blok sistem yang mana tiap blok mempunyai fungsi dan cara
kerja tertentu. Adapun diagram blok dari sistem yang dirancang adalah sebagai
berikut :

CATU DAYA

Motor Servo 1
LCD
ATMEGA 328

SENSOR
WARNA
TCS3200
Motor Servo 2

Driver Motor DC

Motor DC

Gambar 3.1 Diagram Blok Sistem

UNIVERSITAS SUMATERA
3.2 Perancangan Rangkaian Sistem
3.2.1 Rangkaian Mikrokontroler ATMega328
Rangkaian ini merupakan otak dari alat yang dibuat. Rangkaian ini
menggunakan mikrokontroler ATMega328 sebagai pusat dari pemrosesan data.
Berikut gamba rrangkaian yang digunakan pada alat ini:

Gambar 3.2 Rangkaian Mikrokontroler ATMega328


Rangkaian ini terbagi atas 2 bagian utama, yaitu rangkaian minimum
mikrokontroler ATMega328 dan rangkaian komunikasi mikrokontroler.
Rangkaian minimum mikrokontroler terdiri dari rangkaian Reset yang dibentuk
oleh R1 dan kemudian rangkaian pembangkit clock yang terdiri dari kristal Q1
dan 2 buah kapasitor C1 dan C2. Konektor J1 digunakan sebagai jalur pengisian
boot loade rmikrokontroler. C3 digunakan sebagai filter tegangan yang masuk ke
mikrokontroler. LED1 diperlukan sebagai indicator adaa tau tidaknya tegangan
pada mikrokontroler ketika sudah dihubungkan ke power supply. LED2
digunakan sebagai sarana pengujian rangkaian ketika rangkaian sudah dibuat.

UNIVERSITAS SUMATERA
Bagian lainnya adalah bagian komunikasi. Rangkaian ini digunakan
sebagai jalur untuk memasukkan program ke memori mikrokontroler. Rangkaian
ini dibangun dari IC CH340G yang merupakan converter komunikasi USB ke
UART-TTL. Hal ini diperlukan agar mikrokontroler yang hanya mempunyai
fasilitas komunikasi serial UART-TTL dapat berkomunikasi dengan PC yang
mempunyai fasilitas port USB. Sebagai pembangkit clock pada rangkaian
komunikasi ini, digunakan kristal Q2, dan C4, C5.

3.2.2 Rangkaian Sensor warna TCS3200 dengan ATMega328


Sensor warna TCS3200 memiliki 8 pin yang dapat digunakan sebagai
input dan output. Pada alat deteksi warna yang akan dibuat sensor warna
TCS3200 dihubungkan ke pin analog ATMega328.

Gambar 3.3 Rangkaian Sensor warna TCS3200 dengan ATMega328

Rangkaian sensor TCS3200 merupakan salah satu rangkaian sensor yang


terdapat di dalam perangkat elektronik dan biasanya sering digunakan untuk
perangkat yang membutuhkan gerakan dan juga beberapa kinerja untuk

UNIVERSITAS SUMATERA
menggerakkan perangkat tersebut. Rangkaian sensor tersebut bisa berupa
rangkaian sensor suhu, cahaya, gerak dan juga infra merah. Rangkaian sensor
sederhana =infrared yang biasa digunakan untuk membuat rangkaian robot line
follower. Pastinya dalam membuat rangkaian sensor infrared atau biasa disebut
light source dan juga sebuah photodioda yang akan bertindak sebagai sensor
cahaya photodetector. Cara kerja sensor halangan ini adalah komponen
photodioda akan digunakan sebagai sensor cahaya dimana sensor infrared tersebut
yang akan bertindak sebagai suber cahaya. Ketika komponen infrared akan
ditembakkan pada photodioda, maka cahaya akan langsung menuju ke sensor
photodioda yang menerima cahaya tersebut. Komponen sensor TCS3200 yang
menerima cahaya tersebut akan memiliki nilai resistansi yang cukup rendah
sehingga menghasilkan tegangan yang besar.
Pin yang digunakan sensor warna pada ATMega328 adalah :
1. Pin S0 dihubungkan dengan Pin 8 ATMega328
2. Pin S1 dihubungkan dengan Pin 7 ATMega328
3. Pin S2 dihubungkan dengan Pin 9 ATMega328
4. Pin S3 dihubungkan dengan Pin 10 ATMega328
5. Pin GND dihubungkan dengan GND ATMega328
6. Pin VCCdihubungkan dengan Pin 5VA ATMega328
7. Pin OUT dihubungkan dengan Pin 11 ATMega328

UNIVERSITAS SUMATERA
3.2.3 Rangkaian LCD dengan ATMega328
Pada Rancanganini LCD digunakan untuk menampilkan nilai RGB dari
sensor warna.

Gambar 3.4Rangkaian LCD dengan ATMega328

Dari gambar 3.5 dapat dilihat bahwa LCD 16×2 mempunyai 16 pin.
Sedangkan, pengkabelannya adalah sebagai berikut :
1. Kaki 1 dihubungkan dengan GND
2. Kaki 2 dan 15 terhubung dengan VCC (+5V)
3. Kaki 3 dari LCD 16×2 adalah pin yang digunakan untuk mengatur kontras
kecerahan LCD.
4. Pin 4 (RS) dihubungkan dengan pin mikrokontroler
5. Pin 5 (RW) dihubungkan dengan GND
6. Pin 6 (E) dihubungkan dengan pin mikrokontroler

UNIVERSITAS SUMATERA
Sedangkan pin 11 hingga 14 dihubungkan dengan pin mikrokontroler
sebagai jalur datanya. Rangkaian ini dibangun dari sebuah IC PCF8574T yang
berperan untuk mengkonversi perintah yang didapat melalui komunikasi I2C
menjadi logika digital ditiap pin outputnya (P0 s.d. P7). Logika – logika digital
tersebutlah yang menjadi logika untuk mengaktifkan LCD. Dengan demikian,
untuk mengendalikan LCD mikrokontroler hanya membutuhkan 2 pin yaitu pin
SDA dan SCL. Pin 1,2 dan 3 dari IC PCF8574T dihubungkan pada resistor pull-
up yang mengakibatkan logikanya selalu bernilai 1. Sesuai dengan datasheet IC
ini, jika di pin-pin tersebut diberika logika 1 maka address untuk pemrograman ic
ini akan menjadi 0x27. Trimpot R4 digunakan untuk mengatur kontras dari
karakter yang muncul pada saat LCD dinyalakan.

3.2.4 Rangkaian Power Supply dengan ATMega328


Rangkaian power supply berfungsi sebagai sumber tegangan utama dari
alat yang akan dibuat. Rangkaian power supply memanfaatkan tegangan dari PLN
sebesar 220 VAC dan 10 VAC. Tegangan dari PLN ini terlalu besar, sehingga
digunakan trafo step down 5 ampere dengan keluaran tegangannya dibuat 12
VAC. Output ini telah sesuai dengan menggunakan IC 7805. Selanjutnya
tegangan akan disearahkan oleh diode sehingga tegangan AC dirubah menjadi
tegangan DC. Kapasitor untuk filter sehingga tegangan keluarnya bias menjadi
normal. Komponen penyusun pembuatan power supply ini diantaranya trafo step
down, dioda, kapasitor, resistor dan IC regulator. Rangkaian power supply dengan
output 12 VDC dapat dilihat pada gambar berikuti ni :

UNIVERSITAS SUMATERA
Gambar 3.5 Rangkaian Power Supply dengan ATMega328

Agar alat dapat digunakan, maka dibutuhkan sebuah catu daya yang
memberikan daya pada seluruh rangkaian. Sensor display dan mikrokontroler
umumnya menggunakan tegangan 5V DC agar dapat bekerja. Untuk itu dibangun
sebuah system power supply yang mempunyai output 5V DC.
Rangkaian ini dibangun dari IC LM2576 yang merupakan IC converter
penurun tegangan. Rangkaian jenis ini dipilih karena lebih efisien dibanding
dengan linear regulator biasa. LM2576 merupakan IC regulator switching yang
mampu memberikan arus 3A pada tegangan 5V. Regulator jenis ini hanya
memerlukan sedikit komponen tambahan untuk dapat dioperasikan.

UNIVERSITAS SUMATERA
3.2.5 RangkaianMotor Servo dengan AT Mega 328

Gambar 3.6 Rangkaian Motor Servo

Sebagai actuator pada alat yang dibuat digunakan motor servo. Motor
servo digunakan karena penggunaannya yang mudah dan torsi putaran relative
lebih besar. Jika dibanding motor jenis lainnya pada tegangan kerja yang sama.
Motor servo yang digunakan pada alat ini adalah motor servo SG-90 yang
mempunyai torsi maksimum 8,5 kgf cm pada tegangan 4,8V DC. Putaran motor
servo ini diatur oleh lebar pulsa yang masuk ke pin data motor ini. Untuk
penggunaannya cukup dengan menghubungkan pin data motor servo ke pin PWM
pada mikrokontroler. Kemudian kita dapat mengatur lebar pulsa yang masuk ke
motor servo melalui fitur PWM pada mikrokontroler.

Kabel Motor Servo Deskripsi Pin Mikrokontroler


Coklat Power GND GND
Oranye Data PWM
Merah Power +5V +5V

UNIVERSITAS SUMATERA
3.2.6 Rangkaian Motor DC dengan Driver Motor DC
Agar mikrokontroler dapat mengendalikanputaran motor DC yang digunakan,
makadiperlukansebuahrangkaian driver motor DC. Berikut merupakan gambar
rangkaian driver motor DC yang digunakan:

Gambar 3.7 Rangkaian Driver Motor DC

Motor DC yang digunakan adalah motor DC 12V untuk itu, diperlukan


sebuah rangkaian penggerak motor DC agar motor DC tersebut dapat
dikendalikan oleh mikrokontroler. Rangkaian tersebut dibentuk dari sebuah
transistor T1 yang dioperasikan dalam mode sakelar elektronik. T1 akan aktif
apabila tegangan INP_PWM bernilai 5V. Jika dalam keadaan aktif, maka pin
kolektor dan emitor dari T1 akan terhubung. Ketika terhubung, maka arus dapat
mengalir melalui motor DC dan akan menyebabkan motor DC berputar. Dioda D1
diperlukan untuk meredam arus kejut ketika adanya peralihan logika di pin
INP_PWM. Pin INP_PWM dihubungkan pada mikrokontroler yang memiliki fitur
PWM.

PengujianRangkaian Driver Motor DC

Pengujian rangkaian driver motor DC dilakukan dengan memberi pin


INP_PWM logika High dan Low secarabergantian, kemudian diamatilah putaran
motor DC yang dihasilkan. Berikut merupakan table uji coba yang dilakukan:

UNIVERSITAS SUMATERA
Logika Pin INP_PWM Keadaan Motor DC
1 Berputar
0 TidakBerputar

3.3 Perancangan Perangkat Lunak Sistem


Arduino AVR merupakan software C-cross compiler, dimana program
dapat ditulis menggunakan bahasa C. Dengan menggunakan pemrograman bahasa
C diharapkan waktu disain (developing time) akan menjadi lebih singkat. Setelah
program dalam bahasa C ditulis dan dilakukan kompilasi tidak terdapat kesalahan
(error) maka proses download dapat dilakukan. Mikrokontroler AVR mendukung
system download secara In Sistem Programming (ISP). Untuk selanjutnya
fasilitas-fasilitaslainnya dapat disetting sesuai kebutuhan dari pemrograman.

\
Gambar 3.8 Tampilan Jendela Program Arduino AVR

Untuk memprogram board Arduino, kita butuh aplikasi IDE (Integrated


Development Environment) bawaan dari Arduino. Aplikasi ini berguna untuk
membuat, membuka dan mengedit source code Arduino. Sketch merupakan
source code yang berisi logika dan algoritma yang akan diupload kedalam IC
mikrokontroller (Arduino).

3.3.1 Mikrokontroler
Agar dapat mengetahui rangkaian mikrokontroler yang dibuat memang
sudah dapat beroperasi, maka dilakukanlah pengujian rangkaian mikrokontroler.

UNIVERSITAS SUMATERA
Pengujian dilakukan dengan cara memasukkan program kemikrokontroler dan
kemudian melihat apakah mikrokontroler dapat mengeksekusi program yang
dibuat. Berikut merupakan program yang dimasukkan pada saat pengujian
rangkaian mikrokontroler:

void setup() {
pinMode(4, OUTPUT);
}
void loop() {
digital Write(4, HIGH);
delay(1000);
digitalWrite(4, LOW);
delay(1000);
}
Program ditujukan untuk mengedipkan Led yang terhubung pada pin 4
pada rangkaian mikrokontroler dengan jeda waktu kedip 1 detik. Jika led yang
terhubung pada pin 4 sudah dapat berkedip dengan jeda 1 detik ketika program
tersebut dieksekusi mikrokontroler, maka dapat dikatakan rangkaian
mikrokontroler yang dibuat sudah dapat bekerja dengan normal.

3.3.2 LCD
Untuk melakukan pengujian LCD, maka diperlukan rangkaian
mikrokontroler juga sebagai sarana pembantu pengujian. Hal ini diperlukan
karena LCD hanya dapat bekerja berdasarkan perintah mikrokontroler. Agar dapat
berkomunikasi, maka dihubungkanlah pin SDA pada IC PCF8574T pada pin A4
rangkaian mikrokontroler dan pin SCL pada IC PCF8574T dihubungkan pada pin
A5 mikrokontroler. Kemudian pada mikrokontroler dimasukkan program berikut:

#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4);
void setup()
{

UNIVERSITAS SUMATERA
lcd.init(); lcd.backlight();
lcd.setCursor(0,0);
lcd.print("Hello World!");
}
void loop()
{
}

3.3.3 Pengujian Modul Sensor Warna TCS3200


Modul ini merupakan modul sensor yang digunakan untuk mendeteksi
warna benda. Hasil pengukuran warna dari modul ini dinyatakan dalam bentuk
pulsa yang frekuensinya akan berubah sesuai dengan warna yang dideteksinya.
Modul ini akan mendeteksi kadar 3 warna utama pada benda yang dideteksinya.
Warna-warna tersebu tadalah merah, hijau dan biru. Kadar ketiga warna inilah
yang dibaca oleh mikrokontroler sehingga mikrokontroler dapat membedakan
warna. Berikut merupakan gambar modul sensor warna TCS3200 dan table
koneksi modul ini dengan mikrokontroler agar dapat berkomunikasi. Untuk
melakukan pengujian pada modul ini, maka setelah rangkaian dirakit sesuai
dengan table koneksi, maka diupload program sebagai berikut kemikrokontroler
yang digunakan.

#define S0 5

#define S1 6

#define S2 7

#define S3 8

#define sensOut 9

int r = 0;

int g = 0;

int b = 0;

UNIVERSITAS SUMATERA
void setup() {

Serial.begin(9600);

pinMode(S0,OUTPUT);

pinMode(S1,OUTPUT);

pinMode(S2,OUTPUT);

pinMode(S3,OUTPUT);

pinMode(sensOut, INPUT);

digitalWrite(S0,HIGH);

digitalWrite(S1,LOW);

void loop() {

digitalWrite(S2,LOW); //Aktifkan filter Merah

digitalWrite(S3,LOW);

r = pulseIn(sensOut,LOW);

digitalWrite(S2,HIGH); //Aktifkan filter hijau

digitalWrite(S3,HIGH);

g = pulseIn(sensOut,LOW);

digitalWrite(S2,LOW); //Aktifkan filter biru

digitalWrite(S3,HIGH);

b = pulseIn(sensOut, LOW);

UNIVERSITAS SUMATERA
Serial.print("R : ");

Serial.print(r);

Serial.print(" G : ");

Serial.print(g);

Serial.print(" B : ");

Serial.println(b);

delay(100);

UNIVERSITAS SUMATERA
3.4 Flowchart Sistem Kerja Pendeteksi Warna
Flowchart merupakan bagan dengan simbol yang menggambarkan urutan
proses secara detail dan hubungan setiap proses dengan proses yang lainnya.
Berikut adalah flowchart perancangan alat pada judul ini:

Mulai

Inisialisa siTC 200, LCD,


Motor servo, variabel

Ambil da ta ,B

Ya Masukkan Benda
Benda
Ruang 1
Merah

Ti k
da Masukkan Benda
Ya
Benda Ruang 2
Hijau

Ti k
da Masukkan Benda
Ya
Benda Biru Ruang 3

Non Aktifkan
Conveyer

Gambar 3.9 Flowchat

UNIVERSITAS SUMATERA
BAB IV

PEMBAHASAN HASIL PENGUKURAN

Untuk mengetahui kinerja dari system pendeteksi apakah sesuai dengan


harapan, maka perlu dilakukan pengukuran terhadap alat tersebut. Pengukuran
yang dilakukan meliputi pengukuran sensor warna dengan tujuan untuk melihat
kinerja dari sensor warna dalam mengukur frekuensi warna RGB. Setelah semua
rangkaian bekerja dengan secara normal, maka dilakukan pengujian secara
keseluruhan.

4.1 Pengukuran dan Hasil Pengukuran Sistem

4.1.1 Sensor Warna

Pengukuran dilakukan dengan metode membandingkan nilai alat yang


sudah dibuat. Pengukuran dilakukan terhadap 3 warna berbeda. Sehingga dapat
diperoleh atau percobaan sebagai berikut :

Warna Hasil Nilai RGB yang Diuji


R G B
Merah 238 12 5
Hijau 10 237 8
Biru 16 9 230

Tabel 4.1 Pengukuran Sensor Warna

UNIVERSITAS SUMATERA
Chart Title
300
200
100
0
Merah Hijau Biru

Hasil Nilai RGB yang Diuji Hasil Nilai RGB yang Diuji
Hasil Nilai RGB yang Diuji

Gambar 4.1 Grafik Hasil Nilai RGB Yang Diuji

4.2 Kalibrasi Alat

Kalibrasi adalah untuk menentukan kebenaran konvensional nilai


pemasukan alat ukur dan bahan ukur dengan cara membandingkan terhadap
standar ukur. Suatu sensor perlu dilakukan kalibrasi agar pengukurannya sesuai.
Kalibrasi sensos TCS 3200 sendiri diperlukan sebuah data yakni nilai standart
warna internasional.

Nilai Standart Warna


Hasil Nilai RGB
Internasional Ralat (%)
Warna yang diuji
(Pembanding)
R G B R G B R G B
Merah 238 12 5 225 0 0 6,6%
Hijau 10 237 8 0 255 0 7,05%
Biru 16 9 229 0 0 225 10,1%

Tabel 4.2 Nilai R G B dengan pembanding standart warna internasional

Dari tabel 4.2 maka hasil presentasi ralat warna dapat dihitung :

%=: x 100%

1. Merah

UNIVERSITAS SUMATERA
% R: x 100% = │-6,6%│= 6,6%

2. Hijau
% G: x 100% = │-7,05%│= 7,05%

3. Biru
% B: x 100% = │-10,1%│= 10,1%

UNIVERSITAS SUMATERA
BAB V

PENUTUP

5.1. Kesimpulan

Berdasarkan penelitian yang telah dilakukanm dapat diambil kesimpulan


sebagai berikut:

1. Sistem pendeteksi warna menggunakan sensor TCS3200 yang dibangun dapat


bekerja dengan baik dan hasil implementasi menunjukkan bahwa tingkat-
tingkat akurasi alat sangat tergantung dari beberapa hal seperti pencahayaan,
jenis benda warna yang dideteksi, jarak antara sensor dengan obyek warna.

2. Cahaya luar dapat mempengaruhi kondisi keakuratan pembacaan sensor


sehingga diperlukan penutup warna hitam untuk menghalangi cahaya luar pada
sensor.

3. Tingkat keakuratan pembacaan warna ditentukan oleh faktor teknis yaitu posisi
peletakan sensor tidak berubah dan harus pada kondisi cahaya yang stabil.

5.2. Saran

Adapun beberapa saran yang ingin disimpulkan penulis untuk


mengembangkan penelitian ini pada kesempatan penelitian berikutnya adalah:

1. Dalam pengambilan data obyek, warna tata letak dari obyek warna yang
ditempatkan dalam posisi yang tepat, untuk menghindari sensor warna tidak
bisa mengambil data obyek yang didekatkan.

2. Perlu pemahaman yang tepat cara kerja dari sensor TCS3200.

3. Supaya alat dapat bekerja dengan baik di berbagai tempat, diperlukan program
khusus kalibrasi warna agar ketika ingin digunakan, alat akan mengkalibrasi
warna menyesuaikan dengan intensitas cahaya pada tempat tersebut.

UNIVERSITAS SUMATERA
DAFTAR PUSTAKA

Budiharto,Widodo dan Sigit Firmansyah, 2010. Elektronika digital


dan mikroprosesor. Yogyakarta: ANDI
Dr. Ir. Saluddin Muis, M.Kom, 2005 Pembuatan LCD Perancangan Dan
Proses Fungsi Layar Sentuh Incell-Oncell. Yogyakarta : Graha Ilmu
Fitzgerald. A.E, 2010. Dasar- dasar Elektroteknik. Jilid 1. Jakarta. Erlangga.
Kurniawan Dayat, 2009. Atmega8 Dan Aplikasinya. Jakarta :
Penerbit Pt. Elex Media Komputindo
Michael Margolis, 2011. Arduino Cookbook. USA.
Sasongko Bagus Hari, 2012. Pemrograman Mikrokontroller Dengan Bahasa
C Yogyakarta : Penerbit Andi
Suprianto,Dodit, 2019. Microcontroller Arduino. Jakarta : Jasakom
Tooley, Michael, 2002. Rangkaian Elektronik Prinsip dan Aplikasi.
Jakarta:Erlangga
TirtamihardjaSamuel,1996.elektonikadigital.yogyakarta.penerbit:andi
Yogyakarta.
Winoto, Ardi, 2008. Mikrokontroller Avr Atmega8/32/16/8535 Dan
Pemrograman Dengan Bahasa C Pada Win AVR . Penerbit : Inforatika

UNIVERSITAS SUMATERA
LAMPIRAN 1
PROGRAM ALAT

#include <Servo.h>
#include <LiquidCrystal_I2C.h>

#define motorDC 3
#define S0 8
#define S1 7
#define S2 9
#define S3 10
#define sensOut 11

const int tutupMerah = 180;


const int bukaMerah = 80;
const int tutupHijau = 172;
const int bukaHijau = 70;
const int pwmDCaktif = 70;
const int pwmDCmati = 0;

// Konstanta Barang Hijau


const int rMinHijau = 100;
const int rMaxHijau = 120;
const int gMinHijau = 55;
const int gMaxHijau = 70;
const int bMinHijau = 65;
const int bMaxHijau = 85;

//Konstanta Barang Merah


const int rMinMerah = 35;
const int rMaxMerah = 45;
const int gMinMerah = 100;

UNIVERSITAS SUMATERA
const int gMaxMerah = 115;
const int bMinMerah = 75;
const int bMaxMerah = 90;

//Konstanta Barang Biru


const int rMinBiru = 115;
const int rMaxBiru = 135;
const int gMinBiru = 65;
const int gMaxBiru = 80;
const int bMinBiru = 25;
const int bMaxBiru = 50;

//Konstanta Tidak Ada Barang


const int rMinKosong = 265;
const int rMaxKosong = 300;
const int gMinKosong = 265;
const int gMaxKosong = 290;
const int bMinKosong = 180;
const int bMaxKosong = 300;

int r = 0;
int g = 0;
int b = 0;

LiquidCrystal_I2C lcd(0x27, 16, 2);

Servo servoMerah;
Servo servoHijau;

void setup() {
pinMode(S0,OUTPUT);

UNIVERSITAS SUMATERA
pinMode(S1,OUTPUT);
pinMode(S2,OUTPUT);
pinMode(S3,OUTPUT);
pinMode(sensOut, INPUT);

lcd.init();
lcd.backlight();

servoMerah.attach(5);
servoHijau.attach(6);

servoMerah.write(tutupMerah);
servoHijau.write(tutupHijau);

pinMode(motorDC,OUTPUT);

analogWrite(motorDC,pwmDCmati);

lcd.clear();
lcd.setCursor(0,0);
lcd.print("Warna: ");
lcd.setCursor(0,1);
lcd.print("Ruang: ");

digitalWrite(S0,HIGH);
digitalWrite(S1,LOW);
}

void loop() {
digitalWrite(S2,LOW); //Aktifkan filter Merah
digitalWrite(S3,LOW);
r = pulseIn(sensOut,LOW);

UNIVERSITAS SUMATERA
digitalWrite(S2,HIGH); //Aktifkan filter hijau
digitalWrite(S3,HIGH);
g = pulseIn(sensOut,LOW);

digitalWrite(S2,LOW); //Aktifkan filter biru


digitalWrite(S3,HIGH);
b = pulseIn(sensOut, LOW);

if(((r >= rMinHijau) && (r <= rMaxHijau)) && ((g >= gMinHijau) && (g <=
gMaxHijau)) && ((b >= bMinHijau) && (b <= bMaxHijau))){
lcd.setCursor(7,0);
lcd.print(" ");
lcd.setCursor(7,1);
lcd.print(" ");
lcd.setCursor(7,0);
lcd.print("Hijau");
lcd.setCursor(7,1);
lcd.print("2");

analogWrite(motorDC,pwmDCmati);
delay(3000);
servoHijau.write(tutupHijau);
servoMerah.write(bukaMerah);
delay(1000);
analogWrite(motorDC,pwmDCaktif);
delay(5000);
analogWrite(motorDC,pwmDCmati);
}

if(((r >= rMinMerah) && (r <= rMaxMerah)) && ((g >= gMinMerah) && (g <=
gMaxMerah)) && ((b >= bMinHijau) && (b <= bMaxMerah))){

UNIVERSITAS SUMATERA
lcd.setCursor(7,0);
lcd.print(" ");
lcd.setCursor(7,1);
lcd.print(" ");
lcd.setCursor(7,0);
lcd.print("Merah");
lcd.setCursor(7,1);
lcd.print("1");

analogWrite(motorDC,pwmDCmati);
delay(3000);
servoHijau.write(bukaHijau);
servoMerah.write(tutupMerah);
delay(1000);
analogWrite(motorDC,pwmDCaktif);
delay(5000);
analogWrite(motorDC,pwmDCmati);
}

if(((r >= rMinBiru) && (r <= rMaxBiru)) && ((g >= gMinBiru) && (g <=
gMaxBiru)) && ((b >= bMinBiru) && (b <= bMaxBiru))){
lcd.setCursor(7,0);
lcd.print(" ");
lcd.setCursor(7,1);
lcd.print(" ");
lcd.setCursor(7,0);
lcd.print("Biru");
lcd.setCursor(7,1);
lcd.print("3");

analogWrite(motorDC,pwmDCmati);
delay(3000);

UNIVERSITAS SUMATERA
servoHijau.write(bukaHijau);
servoMerah.write(bukaMerah);
delay(1000);
analogWrite(motorDC,pwmDCaktif);
delay(5000);
analogWrite(motorDC,pwmDCmati);
}

if(((r >= rMinKosong) && (r <= rMaxKosong)) && ((g >= gMinKosong) &&
(g <= gMaxKosong)) && ((b >= bMinKosong) && (b <= bMaxKosong))){
lcd.setCursor(7,0);
lcd.print(" ");
lcd.setCursor(7,1);
lcd.print(" ");
lcd.setCursor(7,0);
lcd.print("Kosong");
lcd.setCursor(7,1);
lcd.print(" - ");

analogWrite(motorDC,pwmDCmati);
servoHijau.write(tutupHijau);
servoMerah.write(tutupMerah);

delay(250);

UNIVERSITAS SUMATERA
LAMPIRAN 2
GAMBAR ALAT

UNIVERSITAS SUMATERA
LAMPIRAN 3
GAMBAR RANGKAIAN LENGKAP

UNIVERSITAS SUMATERA
Lampiran 4
Gambar Standar Warna Internasional

UNIVERSITAS SUMATERA

Anda mungkin juga menyukai