Anda di halaman 1dari 18

TUGAS BESAR

SISTEM MIKROPROSSESOR
ANALOG TO DIGITAL CONVERTER (ADC)

Disusun Oleh
Nurul Khairiyah A 04161054
Rizky Wulandari 04161067
Toga Clinton Sihotang 04161073

PROGRAM STUDI
TEKNIK ELEKTRO
INSTITUT TEKNOLOGI KALIMANTAN
2018

1
BAB I
LANDASAN TEORI
1.1 Arduino
Arduino adalah pengendali mikro single-board yang bersifat open-source,
diturunkan dari wiring platform, dirancang untuk memudahkan penggunaan
elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR
dan softwarenya memiliki bahasa pemrograman sendiri [1].
Arduino juga merupakan platform hardware terbuka yang ditujukan kepada
siapa saja yang ingin membuat purwarupa peralatan elektronik interaktif
berdasarkan hardware dan software yang fleksibel dan mudah digunakan.
Mikrokontroler diprogram menggunakan bahasa pemrograman arduino yang
memiliki kemiripan syntax dengan bahasa pemrograman C. Karena sifatnya yang
terbuka maka siapa saja dapat mengunduh skema hardware arduino dan
membangunnya[2].
Arduino menggunakan keluarga mikrokontroler ATMega yang dirilis oleh Atmel
sebagai basis, namun ada individu/perusahaan yang membuat clone arduino dengan
menggunakan mikrokontroler lain dan tetap kompatibel dengan arduino pada level
hardware. Untuk fleksibilitas, program dimasukkan melalui bootloader meskipun ada
opsi untuk mem-bypass bootloader dan menggunakan downloader untuk
memprogram mikrokontroler secara langsung melalui port ISP [2].
Seperti Mikrokontroler yang banyak jenisnya, Arduino lahir dan berkembang,
kemudian muncul dengan berbagai jenis. Diantaranya yang paling sering dipakai
antara lain:
a. Arduino Uno
Jenis yang ini adalah yang paling banyak digunakan. Terutama untuk pemula
sangat disarankan untuk menggunakan Arduino Uno. Banyak sekali referensi yang
membahas Arduino Uno. Versi yang terakhir adalah Arduino Uno R3 (Revisi 3),
menggunakan ATMEGA328 sebagai Mikrokontrolernya, memiliki 14 pin I/O digital
dan 6 pin input analog. Untuk pemprograman cukup menggunakan koneksi USB type
A to type B. Sama seperti yang digunakan pada USB printer [3].

Gambar 1 Arduino UNO


Sumber : arduino.cc

Arduino dapat diberi daya melalui koneksi USB (Universal Serial Bus) atau
melalui power supply eksternal. Jika arduino dihubungkan kedua sumber daya

2
tersebut secara bersamaan, maka arduino uno akan memilih salah satu sumber
daya secara otomatis untuk digunakan. Power supply external dapat berasal dari
adaptor AC ke DC atau baterai. Adaptor dapat dihubungkan ke soket power pada
arduino uno[1].
Arduino uno dapat beroperasi pada tegangan 6 sampai 20 volt. Jika arduino
diberi tegangan dibawah 7 volt, maka pin 5V akan menyediakan tegangan
dibawah 5 volt dan arduino uno mungkin bekerja tidak stabil. Jika diberikan
tegangan melebihi 12 volt, penstabilan tegangan kemungkinan akan menjadi
terlalu panas dan merusak arduino uno. Tegangan rekomendasi yang diberikan ke
arduino uno berkisar antara 7 sampai 12 volt [3].

b. Arduino Mega
Arduino Mega 2560 adalah papan pengembangan mikrokontroller yang berbasis
Arduino dengan menggunakan chip ATmega2560. Board ini memiliki pin I/O
yang cukup banyak, sejumlah 54 buah digital I/O pin (15 pin diantaranya adalah
PWM), 16 pin analog input, 4 pin UART (serial port hardware). Arduino Mega
2560 dilengkapi dengan sebuah oscillator 16 Mhz, sebuah port USB, power jack
DC, ICSP header, dan tombol reset. Board ini sudah sangat lengkap, sudah
memiliki segala sesuatu yang dibutuhkan untuk sebuah mikrokontroller.

Gambar 2. Arduino Mega


Sumber : arduino.cc

Arduino Mega dapat diaktifkan melalui koneksi USB atau dengan Catu daya
Eksternal. Sumber listrik dipilih secara otomatis. Eksternal (nonUSB) daya dapat
dating baik dari AC-DC adaptor atau baterai. Adaptor ini dapat dihubungkan
dengan cara menghubungkannya plug pusat-positif 2.1 mm ke dalam board
penghubung listrik. Lead dari beterai dapat dimasukkan ke dalam header pin GND
dan Vin dari konektor Power.

3
Bord dapat beroperasi pada pasokan daya dari 6-20 volt. Jika diberikan
dengan kurang dari 7V, bagaimanapun pin 5V dapat menyuplai kurang dari 5 Volt
dan board mungkin tidak stabil. Jika menggunakan lebih dari 12 Volt, regulator
tegangan bias panas dan merusak board. Rentang yang dianjurkan adalah 7-12
Volt [3].

1.2 ADC Arduino


ADC (Analog to Digital Converter) adalah suatu perangkat elektronika yang
mengubah suatu data yang kontinu terhadap waktu (analog) menjadi suatu data yang
diskrit terhadap waktu (digital). Terdapat 2 faktor yang perlu diperhatikan pada proses
kerja ADC yaitu kecepatan sampling dan resolusi. Kecepatan sampling menyatakan
seberapa sering perangkat mampu mengkonversi sinyal analog ke dalam bentuk
sinyal digital dalam selang waktu yang tertentu. Biasa dinyatakan dalam sample per
second (SPS). Sementara Resolusi menyatakan tingkat ketelitian yang dimilliki. Pada
Arduino, resolusi yang dimiliki adalah 10 bit atau rentang nilai digital antara 0 - 1023.
Dan pada Arduino tegangan referensi yang digunakan adalah 5 volt, hal ini berarti
ADC pada Arduino mampu menangani sinyal analog dengan tegangan 0 - 5 volt.
Tidak semua pin pada Arduino dapat digunakan untuk ADC, hanya ada beberapa pin
khusus yang dapat digunakan. Dan pada Arduino, pin ini diawali dengan 'A' (biasanya
A0-A7 atau A0-A15) [4].
Nilai ADC menunjukkan ratio perbandingan dengan tegangan yang terbaca.
Persamaannya ialah nilai ADC terukur ialah nilai ADC maximum dikalikan
tegangan terbaca, kemudian dibagi dengan nilai tegangan sumber. Nilai ADC
tergantung dengan tegangan yang menjadi catu daya sistem mikrokontroler. Cara
mencari nilai ADC, dengan menerapkan persamaan yang ada dan tegangan
terbaca pada board Arduino.
Board Arduino Uno memiliki resolusi 10 bit, dengan nilai terbesar 1023. Nilai
ADC terukur ialah nilai ADC maximum dikalikan tegangan terbaca, kemudian
dibagi dengan nilai tegangan sumber atau dapat dirumuskan sebagai berikut.
= ×

Selain dipengaruhi oleh besarnya nilai resolusi ADC, tepat tidaknya


Pengukuran nilai ADC juga dipengaruhi oleh clock speed ADC tersebut. Untuk
board Arduino Uno sendiri clock speed ADC maximum yang disarankan ialah 200
kHz. Nilai clock speed 200 kHz tersebut berdasarkan spesifikasi internal DAC
(Digital to Analog Converter) pada rangkaian pengubahnya. Meski demikian,
penggunaan clock speed pada 1 MHz tidak mengurangi kualitas resolusi ADC
tersebut [5].

1.3 Line Follower


Robot Line Follower atau Line Tracker merupakan robot yang dapat bergerak
mengikuti track berupa garis hitam. Untuk membaca garis, robot dilengkapi dengan

4
sensor proximity yang dapat membedakan antara garis hitam dengan lantai putih.
Sensor proximity ini dapat dikalibrasi untuk menyesuaikan pembacaan sensor
dikalibrasi untuk menyesuaikan pembacaan sensor terhadap kondisi pencahayaan
ruangan, sehingga pembacaan sensor lebih akurat [6].

Gambar 3 Robot Line Follower

Robot Line Follower terbagi menjadi dua jenis, yaitu robot line Follower
analog dan digital. Pada Line Follower analog tidak diperlukan adanya
pemrograman robot secara software sedangkan robot Line Follower digital
membutuhkan program pada bagian mikrokontrollernya sebagai prosessor atau
otak dari robot Line Follower itu sendiri [6].
Komponen pada robot Line Follower diantaranya adalah pertama
Mikrokontroller untuk mengontrol operasi dari mesin. Kedua, Photodiode adalah
dioda yang bekerja berdasarkan intensitas cahaya, jika phodiode terkena cahaya
maka photodiode bekerja seperti dioda pada umumnya, tetapi jika tidak mendapat
cahaya maka photodiode akan berperan seperti resistor dengan nilai tahanan yang
besar sehingga arus listrik tidak dapat mengalir. Ketiga, Motor DC memerlukan
suplai tegangan yang searah pada kumparan medan untuk diubah l berputar) dan
kumparan jangkar disebut rotor (bagian yang berputar). Jika terjadi putaran pada
kumparan jangkar dalam pada medan magnet, maka akan timbul tegangan (GGL)
yang berubah-ubah arah pada setiap setengah putaran, sehingga merupakan
tegangan bolak-balik. Keempat, LCD (Liquid Crystal Display) adalah suatu jenis
media tampil yang menggunakan kristal cair sebagai penampil utama. Kelima,
Downloader berfungsi untuk memasukkan bahasa pemrograman yang telah dibuat
kedalam mikrokontroler [6].

5
BAB II
PEMBAHASAN
2.1 Hardware
CARA KERJA ADC
Analog To Digital Converter (ADC) adalah pengubah input analog
menjadi kode – kode digital. ADC banyak digunakan sebagai Pengatur proses
industri, komunikasi digital dan rangkaian pengukuran/ pengujian. Umumnya
ADC digunakan sebagai perantara antara sensor yang kebanyakan analog dengan
sistim komputer seperti sensor suhu, cahaya, tekanan/ berat, aliran dan sebagainya
kemudian diukur dengan menggunakan sistim digital (komputer).
Pada Arduino, ADC dapat diakses melalui pin Analog A0 – A5 (pada
Arduino UNO) dan A0-A11 (pada Arduino Mega). Perbedaan pin analog dan pin
digital pada Arduino adalah pada pin digital, hanya dapat membaca sinyal 0 Volt
sebagai LOW dan sinyal 5V sebagai HIGH. Sedangkan pada pin analog, dapat
mengenali sinyal pada rentang nilai voltase tersebut. Pada Arduino, ADC
memiliki resolusi 10 bit, artinya nilai hasil konversi berkisar dari 0 hingga 1023.

Gambar 2.1 Pin Analog Pada Arduino Mega

Pin analog ini akan terhubung dengan microchip ATmega32, dimana didalam
microchip ini terdapat ADC 10 bit dengan skema yang ditunjukkan gambar 2.2.
ADC 10 bit ATmega32 memiliki spesifikasi sebagai berikut sebagai berikut.
Tabel 1. Spesifikasi ADC ATmega32
Resolusi 10 bit
Akurasi ± 2LSB
Waktu konversi 13 – 260 µs
Memiliki 8 kanal ADC
Rentang tegangan input = 0 volt – Vc
Tegangan referensi internal = 2,56 volt
Terdapat 2 mode kerja, yaitu:
a) Konversi tunggal (single conversion)
b) Konversi terus-menerus (free running
Nilai minimum ADC = 0 volt (GND)

6
Nilai maksimum ADC = tegangan pada pin AREF (minus 1 LSB).
Hasil konversi ADC disimpan pada pasangan register ADCH dan
ADCL.
Konversi ADC dimulai ketika mendapat auto trigger dari sumber
interupsi
Lengkapnya proses konversi ADC dapat menjadi pemicu interupsi.

Gambar 2.2 Blok Diagram ADC 10 Bit


Pada blok diagram diatas, terdapat beberapa register utama yang terlibat dalam
pengaturan kerja ADC yaitu :
1. ADC Multiplexer Selection Register (ADMUX)
2. ADC Control & Status Register A (ADCSRA)
3. ADC Data Register (ADCL dan ADCH)
4. Special Function I/O Register (SFIOR)
Prosedur pengaturan ADC dilakukan dengan langkah sebagai berikut:
1. Pengaturan Register ADMUX
Register ADMUX merupakan register yang mengatur tegangan refrensi yang
digunakan ADC. Register ini berfungsi untuk:
a. Memilih kanal ADC yang akan digunakan. bit MUX0, MUX1, MUX2,
MUX3, dan MUX4 (lihat tabel 2).

7
b. Menentukan format data hasil konversi ADC bit ADLAR. Lihat
formatnya pada register ADCH & ADCL.
c. Memilih tegangan referensi ADCbit REFS0 dan REFS1 (lihat tabel 2).

Tabel 2. Kanal ADC

Tabel 3. Memilih Kanal ADC


MUX4…0 Pin Input
00000 ADC0
00001 ADC1
00010 ADC2
00011 ADC3
00100 ADC4
00101 ADC5
00110 ADC6
00111 ADC7

Tabel 4. Memilih Tegangan Refrensi ADC

Tabel 5. Tabel Saat ADLAR = 0 dan ADLAR = 1

Register ADCH dan ADCL berfungsi untuk menyimpan data hasil konversi
ADC dengan format yang bergantung pada nilai bit ADLAR (0 atau 1) pada
register ADMUX (bit ke-5).

2. Pengaturan Register ADCSRA

8
Register ADCSRA adalah register 8 bit untuk melakukan manajemen sinyal
kontrol dan status ADC. Register ini berfungsi untuk :
a. Menentukan faktor pembagi (prescaler) frekuensi CPU yang digunakan
sebagai clock ADC pada bit ADPS0, ADPS1, dan ADPS2 (Lihat tabel 5)
b. Memilih mode operasi ADC
bit ADATE = 1 - Mode single conversion/auto trigger
bit ADATE = 0 - Mode free running conversion
c. Mengaktifkan auto trigger ADC (bit ADATE = 1), sehingga proses
pengonversian sinyal analog dimulai. Sumber trigger diatur
menggunakan bit ADTS0, ADTS1, dan ADTS2 pada register SFIOR.
Sumber trigger tergantung pada pengaturan bit ADATE pada register
ADCSRA.
d. Mengaktifkan ADC (bit ADEN = 1)
e. Memulai proses konversi (start conversion) ADC (bit ADSC = 1)
Jika mode single conversion: set ADSC tiap kali akan mengonversi.
Jika mode free running: set ADSC untuk memulai awal konversi.

Jika ADC beroperasi dengan mode single conversion dan


menggunakan interupsi, maka:
1. Aktifkan interupsi ADC (bit ADIE = 1)
2. Aktifkan interupsi global mikrokontroler (bit-I pada register SREG =
1) atau dengan perintah - sei ();
3. Buat fungsi layanan interupsi:

Gambar 2. 3 Membuat Fungsi Layanan Interupsi

Gambar 2. 4 Prescaler ADC

Tabel 6. Pengaturan Prescaler Frekuensi Clock ADC

9
ADSP2 ADSP1 ADSP0 Faktor
Pembagi
0 0 0 2
0 0 1 2
0 1 0 4
0 1 1 8
1 0 0 16
1 0 1 32
1 1 0 64
1 1 1 128

Tabel 7. Kanal SFIOR

Register SFIOR berfungsi untuk menentukan sumber auto trigger konversi


ADC, yaitu dengan menentukan nilai dari bit ADTS0, ADTS1, dan ADTS2.

Tabel 8. Pengaturan Nilai Bit-Bit Pemilih Sumber Auto Trigger


ADC

*Catatan untuk register SFIOR :


Efek pengaturan ADTS0, ADTS1, dan ADTS2 bergantung pada pengaturan
bit ADATE pada register ADCSRA (bit ke-5).
Jika ADATE = 1, maka sumber auto trigger akan menjadi pemicu otomatis
proses konversi ADC.
Jika ADATE = 0, maka pengaturan bit ADTS0 – ADTS2 tidak akan
berdampak pada sistem.

ADC ini beroperasi atau bekerja dalam berbagai mode. Mode ini tergantung
pada konversi yang diinginkan. Mode tersebut adalah sebagai berikut :
1. Single Conversion
Konversi dilakukan untuk sekali pembacaan sampel sinyal input.

10
Jika ingin membaca lagi harus melakukan sampel sinyal input lagi,
sehingga kita dapat mengonversi sinyal tegangan input ketika
dibutuhkan saja.
Konversi tunggal akan dimulai ketika bit-ADSC pada register
ADCSRA di-set. Bit tersebut akan tetap set sampai satu kali konversi
selesai (complete). Setelah konversi selesai, maka secara otomatis bit-
ADSC akan clear.

Gambar 2. 5 Timing Diagram ADC, First Conversion (Single


Convesion Diagram)

Gambar 2. 6 Timing Diagram ADC Single Conversion Mode

2. Single Conversion (Auto Triggered)


Single conversion dengan auto trigger adalah alternatif cara aktivasi
konversi ADC.
Pada mode auto trigger, proses konversi ADC dapat dipicu secara
otomatis oleh beberapa variasi sumber pemicunya (trigger).
Mode ini akan aktif dan proses konversi ADC dimulai ketika:
1. Bit ADATE pada register ADCSRA di-set
2. Sumber pemicu auto trigger dipilih(mengatur bit ADTS0, ADTS1.
Dan ADTS2 pada register SFIOR)
3. Ada transisi (edge) sinyal positif (0 ke 1) dari sumber trigger
4. Faktor pembagi clock (prescaler) pada register ADCSRA di atur
(ADSP0/1/2)
5. Bit ADSC pada register ADCSRA di-set

11
Proses konversi baru tidak akan terjadi jika sinyal trigger masih set
ketika proses konversi ADC selesai (complete).
Jika terjadi transisi (edge) sinyal positif lain saat proses konversi
berlangsung, maka edge sinyal tersebut akan diabaikan

Gambar 2. 7 Logika Auto Trigger ADC

Gambar 2. 8 Timing Diagram Auto Trigger ADC

3. Free Running
Penggunaan flag interupsi ADC sebagai sumber trigger membuat
proses konversi ADC baru dimulai segera setelah proses konversi
yang sedang berjalan selesai (complete).
Pada kondisi tersebut, ADC bekerja pada mode free running
conversion.
Pada mode free running, konversi dilakukan secara terus-menerus
(ADC membaca sample tegangan input kemudian dikonversi dan
hasilnya disimpan ke dalam register ADCH-ADCL secara terus-
menerus).
Proses konversi ADC harus dimulai dengan men-set bit ADSC pada
register ADCSRA.
Pada mode free running, ADC bekerja secara independen (tidak
bergantung) dari flag interupsi ADC. Apakah ADIF set atau clear,
maka tidak akan mempengaruhi operasi ADC

12
Gambar 2. 9 Timing Diagram ADC Free Running Conversion Mode

IMPLEMENTASI ADC PADA ROBOT LINE FOLLOWER


Pada Robot Line Follower yang dibuat pada Tugas Besar,
implementasi ADC terletak pada pembacaan garis melalui sensor garis
yang ada pada Robot Line Follower. Sensor garis berfungsi mendeteksi
warna garis hitam dan putih. Sensor ini biasa dibuat dari LED sebagai
pemancar cahaya lalu LDR ataupun photodioda sebagai sensor. Dengan
memanfaatkan sifat pemantulan cahaya yang berbeda dari berbagai macam
warna dan diaplikasikan pada rangkaian pembagi tegangan akan bisa
dibedakan warna hitam dan putih. Output dari sensor garis nantinya
dihubungkan ke komparator atau langsung ke mikrokontroler yang
mempunyai fitur ADC.
Prinsip kerja sensor garis dapat dibagi menjadi beberapa bagian yaitu :
1. Sifat pemantulan cahaya yang berbeda dari warna
LED Pada sensor garis berfungsi sebagai pengirim cahaya ke garis
untuk dipantulkan lalu dibaca sensor (photodioda ataupun LDR). Sifat
pemantulan cahaya yang berbeda dari berbagai macam warna
digunakan dalam hal ini. Ketika LED memancarkan cahaya ke bidang
berwarna putih, cahaya akan dipantulkan hampir semuanya oleh bidang
berwarna putih tersebut. Sebaliknya, ketika LED memancarkan cahaya
ke bidang berwarna gelap atau hitam, maka cahaya akan banyak diserap
oleh bidang gelap tersebut, sehingga cahaya yang sampai ke sensor
(photodioda atau LDR) sedikit. Karena perbedaan cahaya yang diterima
oleh sensor akan menyebabkan hambatan yang berbeda pula di dalam
sensor maka prinsip ini yang digunakan untuk membedakan pembacaan
garis. Gambar dibawah ini adalah ilustrasi mekanisme pemantulan
cahaya sensor garis.

13
Gambar 2. 10 Cara Kerja Sensor garis

2. Rangkaian pembagi tegangan


=
ℎ ×
ℎ+

Ratas

Vout
Vin
Rbawah

Gambar 2. 11 Rangkaian Pembagi Tegangan


Berdasarkan gambar dan rumus diatas, dapat dijelaskan bahwa:
Saat Rbawah sangat besar maka keluaran Vout=Vin
Saat Rbawah sangat kecil maka keluaran Vout=0
Vout Berbanding lurus dengan Rbawah
Pada penggunaanya di sensor garis, Rbawah diganti menggunakan sensor
(photodioda ataupun LDR). Dengan berubahnya resistansi saat sensor mendeteksi
warna berbeda maka Vout pun akan ikut berubah seiring perubahan pendeteksian
warna. Perubahan tegangan Vout inilah yang akan digunakan sebagai pembeda
warna.

14
Vin

R1 R2

Vout
ke mikrokontroler /
komparator

LED Photodiode/LDR

Gnd

Gambar 2. 12 Ilustrasi Kerja Sensor garis


Saat sensor pada garis putih, maka sensor akan terkena banyak cahaya
sehingga nilai resistansinya akan sangat kecil atau dapat diabaikan. Karena Rsens
sangat kecil maka Vout=0.
Saat sensor pada garis hitam, maka sensor akan tidak terkena cahaya
sehingga nilai resistansinya akan besar atau dapat diasumsikan tak hingga. Karena
Rsens sangat besar maka Vout= Vin
Dengan arti kata dengan rangkaian diatas perubahan Vout berbanding lurus
dengan cahaya. Untuk membuat rangkaian dengan Vout berbanding terbalik
dengan perubahan cahaya hanya dengan mengganti letak sensor berada dekat
dengan Vin.
Saat Sensor mendeteksi warna berbeda maka Vout pun akan ikut berubah.
Perubahan Vout inilah yang akan digunakan sebagai pembeda warna hitam dan
putih yang akan menjadi input ADC internal di mikrokontroler. Disini, nilai input
dari Vout yang memiliki rentang antara 0V – 5V akan dikonversi ADC sehingga
mikrokontroler akan memprosesnya dan akan mengarahkan robot line follower
mengikuti garis jika terdeteksi adanya bit-bit input dari ADC.

2.2 Software
Software yang digunakan pada proses perancangan Line Follower adalah
Proteus dan Arduino IDE. Untuk proses ADC arduino digunakan software
Arduino IDE. Berdasarkan Implementasi pada Line Follower, untuk menjalankan
robot Line Follower tersebut diperlukan perubahan data dari data analog ke data
digital agar data dapat diolah oleh mikrokontroler.

15
Gambar 3. Software Arduino IDE

Kode Program Arduino biasa disebut sketch dan dibuat menggunakan bahasa
pemrograman C. Program atau sketch yang sudah selesai ditulis di Arduino IDE
bisa langsung dicompile dan diupload ke Arduino Board. Secara sederhana, sketch
dalam Arduino dikelompokkan menjadi 3 blok (lihat gambar di atas) yaitu
Header, Setup dan Loop.
Header merupakan bagian yang biasanya ditulis definisi-definisi penting yang
akan digunakan selanjutnya dalam program, misalnya penggunaan library dan
pendefinisian variable. Setup merupakan awal program Arduino berjalan, yaitu di saat
awal, atau ketika power on Arduino board. Biasanya di blok ini diisi penentuan
apakah suatu pin digunakan sebagai input atau output, menggunakan perintah
pinMode. Selain itu, initialisasi variable juga bisa dilakukan di blok ini. Loop
merupakan blok yang akan dieksekusi secara terus menerus. Apabila program sudah
sampai akhir blok, maka akan dilanjutkan dengan mengulang eksekusi dari awal blok.
Program akan berhenti apabila tombol power Arduino di matikan.

2.2.1 Inisialisasi
Inisialisasi yang dilakukan untuk ADC adalah pada pemrograman untuk
menjalankan robot Line Follower. Perubahan data analog ke data digital ini terjadi

16
ketika robot sensor photodiode pada Line Follower telah membaca tegangan
referensi. Selanjutnya data yang telah diterima tersebut dikonversikan kedalam
bentuk digital oleh mikrokontroller yakni ADC pada Arduino. Data yang telah
diproses dan dikonversi kembali menjadi data analog oleh DAC yang selanjutnya
sinyal dikirim ke motor driver hingga dapat menggerakkan Line Follower sesuai
perintah. Di bawah ini adalah program sensor pada robot Line Follower.

Gambar 4. Program Pembacaan Sensor pada Line Follower dan pembacaan


sinyal analog
Untuk dapat menajalankan program tersebut maka program akan di compile
dan diupload pada hardware Arduino Mega atau dapat disimulasikan dengan
Proteus. Jika telah diupload, maka akan berlangsung proses pembacaan sensor dan
data analog yang diperoleh dari sensor dapat dikonversi ke data digital oleh ADC
Arduino yang selanjutnya data tersebut diubah lagi menjadi data digital oleh DAC
Arduino sehingga dapat menggerakkan motor driver dan dapat menjalankan
Arduino sesuia perintah.

17
DAFTAR PUSTAKA

[1] Arduino.cc (diakses 30 Oktober 2018)


[2] Masya, Fajar. Pengembangan IoT dengan arduino, Media Komputindo,
Jakarta, 2016.
[3] Santoso, Hari. Arduino untuk Pemula, Elang Sakti. Trenggalek. 2015
[4] Artanto, Dian. 2012. Interaksi Arduino dan Labview. Jakarta: PT. Elex Media
Komputindo
[5] Kadir, A. (2015). From Zero To A Pro Arduino. Andi Yogyakarta.
[6] Depari, Ganti, “Keterampilan Elektronika untuk Pemula”, “ Cetakan ke
enam”, M2S’ Bandung. 2003

18

Anda mungkin juga menyukai