-
1
BAB 6
MIKROKONTROLER
A. Pengertian Mikrokontroler
Mikrokontroler adalah sebuah system computer fungsional dalam
suatu chip yang di dalamnya terkandung sebuah inti prosesor memori
(sejumlah kecil RAM, memori program atau duanya), dan perlengkapan
input output.
Dengan kata lain, mikrokontroler adalah suatu alat elektronika
digital yang mempunyai masukan dan keluaran serta kendali dengan
program yang bisa ditulis dan dihapus dengan cara khusus, cara
kerja mikrokontroler sebenarnya membaca dan menulis data.
Mikrokontroler merupakan komputer didalam chip yang digunakan untuk
mengontrol peralatan elektronik, yang menekankan efisiensi dan
efektifitas biaya. Secara harfiahnya bisa disebut pengendali kecil
dimana sebuah sistem elektronik yang sebelumnya banyak memerlukan
komponen-komponen pendukung seperti IC TTL dan CMO dapat
direduksi/diperkecil dan akhirnya terpusat serta dikendalikan oleh
mikrokontroler ini. Namun demikian tidak sepenuhnya mikrokontroler
bisa mereduksi komponen IC TTL dan CMOS yang seringkali masih
diperlukan untuk aplikasi kecepatan tinggi atau sekedar menambah
jumlah saluran masukan dan keluaran (I/O). Dengan kata lain,
mikrokontroler adalah versi mini atau mikro dari sebuah komputer
karena mikrokontroler sudah mengandung beberapa periferal yang
langsung bisa dimanfaatkan, misalnya port paralel, port serial,
komparator, konversi digital ke analog (DAC), konversi analog ke
digital dan sebagainya hanya menggunakan sistem minimum yang tidak
rumit atau kompleks. Agar sebuah mikrokontroler dapat berfungsi,
maka mikrokontroler tersebut memerlukan komponen eksternal yang
kemudian disebut dengan sistem minimum. Untuk membuat sistem
minimal paling tidak dibutuhkan sistem clock dan reset, walaupun
pada beberapa mikrokontroler sudah menyediakan sistem clock
internal, sehingga tanpa rangkaian eksternal pun mikrokontroler
sudah beroperasi.
Untuk merancang sebuah sistem berbasis mikrokontroler, kita
memerlukan
perangkat keras dan perangkat lunak, yaitu: 1. Sistem minimal
mikrokontroler
Yang dimaksud dengan sistem minimal adalah sebuah rangkaian
mikrokontroler yang sudah dapat digunakan untuk menjalankan sebuah
aplikasi. Sebuah IC mikrokontroler tidakakan berarti bila hanya
berdiri sendiri. Pada dasarnya sebuah sistem minimal mikrokontroler
AVR memiliki prinsip yang sama, yang terdiri dari 4 bagian, yaitu
:
a. prosesor, yaitu mikrokontroler itu sendiri b) rangkaian reset
agar mikrokontroler dapat menjalankan program mulai dari awal c)
rangkaian clock, yang digunakan untuk memberi detak pada CPU d)
rangkaian catu daya, yang digunakan untuk memberi sumber daya
-
2
2. Software pemrograman dan kompiler, serta downloader.
Mikrokontroler Design
Ada dua kelas utama dari arsitektur komputer, yaitu arsitektur
Havard dan arsitektur Von Neumann (atau Princeton). Banyak desain
khusus mikrokontroler dan DSP (Digital Signal Processor)
menggunakan arsitektur Havard.
Arsitektur Havard menggunakan memori terpisah untuk program dan
data dengan alamat dan bus data yang berdiri sendiri. Karena dua
perbedaan aliran data dan alamat, maka tidak diperlukan
multiplexing alamat dan bus data. Arsitektur ini tidak hanya
didukung dengan bus paralel untuk alamat dan data, tetapi juga
menyediakan organisasi internal yang berbeda sedemikian rupa
instruksi dapat diambil dan dikodekan ketika berbagai data sedang
diambil dan dioperasikan. Lebih lanjut lagi, bus data bisa saja
memiliki ukuran yang berbeda dari bus alamat. Hal ini memungkinkan
pengoptimalan bus data dan bus alamat dalam pengeksekusian
instruksi yang cepat. Sebagai contoh, mikrokontroler Intel keluarga
MCS-51 menggunakan arsitektur Havard karena ada perbedaan kapasitas
memori untuk program dan data, bus terpisah (internal) untuk alamat
dan data. Begitu juga dengan keluarga PIC dari Microchip yang
menggunakan arsitektur Havard.
Gambar. Design mikrokontroler [1]
Gambar. Intel MSC-51 [2]
-
3
Pada arsitektur Von Neumann, program dan data dibagi pada ruang
memori yang sama. Arsitektur Von Neumann menyediakan fitur
penyimpanan dan modifikasi program secara mudah. Bagaimanapun,
penyimpanan program tidak mungkin optimal dan membutuhkan berbagai
pengumpulan program dan data untuk membentuk instruksi. Pengumpulan
program dan data diselesaikan menggunakan time division
multiplexing yang akan berpengaruh pada performa mikrokontroler itu
sendiri. Salah satu contoh mikrokontroler yang menggunakan
arsitektur Von Neumann (princeton) adalah Motorola 68HC11.
Arsitektur MCS-51
Diagram blok mikrokontroler 8051 ditunjukkan pada gambar dibawah
ini.
Gambar Jenis-jenis mikrokontroler [3]
Gambar Block Diagram [4]
-
4
Istilah 8051 disini mengacu kepada anggota keluarga MCS-51. Blok
fungsional mikrokontoler 8051 terdiri dari ALU, unit kendali dan
pewaktu, RAM/EPROM/ROM, register, latch dan driver untuk port P0,
P1, P2 dan P3. Setiap blok fungsional tersebut didiskusikan berikut
ini
ALU ALU 8051 menampilkan operasi aritmatik dan logika pada
operand 8-bit. Latch adalah register yang mendapatkan keluaran dari
ALU. Selain memiliki operasi penambahan (ADD) dan pengurangan (SUB)
8051 juga memiliki operasi perkalian (MUL) dan pembagian (DIV).
Tiap operasi logika bersangkutan dengan gerbang-gerbang digital
didalamnya yang memungkinkan operasi NOT, OR, NOT dan XOR.
Prosesor Boolean
Mikrokontroler 8051 memiliki sebuah Prosesor Boolean terpisah
yang terintegrasi langsung dengan mikrokontoler tersebut. Prosesor
boolean ini memiliki set instruksi sendiri, latch, dan bit RAM yang
dapat dialamati. Flag carry tersedia sebagai akumulator. Intruksi
pemanipulasian bit menampilkan operasi-operasi seperti bit
komplemen, set bit, dan penghapusan bit. Terdapat juga instruksi
pengkondisian, seperti JUMP, IF, BIT, SET, dsb. Selain itu pula
mikrokontroler ini juga mendukung operasi logika AND, OR. Hasil
dari operasi logika tersimpan pada bit carry yang mana bekerja
sebagai akumulator.
Memori data dan program Mikrokontroler 8051 memiliki memori
program dan memori data yang terpisah. Code program biasanya
tersimpan pada ROM/EPROM. Storage program adalah salah satu faktor
yang membedakan antara anggota keluarga 8051 yang satu dengan yang
lainnya. Memori program dari 80C51 adalah 4K ROM, sedangkan memori
program 80C52 adalah 8K ROM. 87C51 memiliki program memori EPROM
sebesar 4K.
Memori data bisa berupa RAM internal dan RAM eksternal. Contoh
yang memiliki RAM internal adalah 80C51 yang berkapasitas 128 byte.
Beberapa lokasi internal RAM yang juga digunakan untuk pengendalian
operasi periperal seperti pewaktu/pencacah, port serial, interupsi,
dsb disebut sebagai SFR (Spesial Function Register). Ruang RAM
eksternal dapat terakses dalam hampir semua anggota 8051. Untuk
mengakses RAM eksternal digunakan alamat 16-bit. Bus alamat (Port
0) dan bus alamat-data (Port2) yang menahan alamat ini. Orde byte
yang lebih rendah dari bus alamat-data merupakan waktu
termultipleksi. Sedangkan multipleksi mengurangi jumlah pin, dan
juga mengurangi kecepatan dari akses memori. Hal ini yang mennjadi
alasan mengapa akses memori data eksternal selalu lebih lambat
dibanding dengan pengaksesan RAM internal. Selanjutnya untuk
mengakses memori eksternal kita memerlukan load pointer data yang
mana membutuhkan instruksi ekstra.
-
5
Osilator Semua anggota keluarga 8051 menggunakan kristal
eksternal sebagai fungsi osilator. Frekuensi operasi bisa
tergantung kepada device itu sendiri. Data sheet device bisa
dijadikan rujukan untuk melihat frekuensi operasi yang sesuai dan
mendukung device-device yang akan digunakan. Sebagai contoh 80C51
beroperasi pada frekuensi 12 MHz. Tetapi itu tidak menjadi suatu
patokan yang tetap karena pada kenyataannya banyak juga user
menggunakan kristal 11,059 MHz. Selain itu masih banyak lagi device
yang berjalan pada frekuensi dibawah atau diatas 12 MHz. Frekuensi
ringan yang lebih rendah memperkenankan pewaktu membangkitkan
frekuensi klok untuk pengoperasian serial port.
Kendali dan pewaktuan Keseluruhan operasi mikrokontroler 8051
singkron dengan klok. Segala yang terjadi didalam mikrokontroler
tersebut selangkah dengan klok. Terlepas dari pewaktuan internal,
untuk mengakses device diluar chip terdapat pula fitur seperti
pengendali sinyal ALE, PSEN dan RD, WR yang dibangkitkan oleh unit
pewatuan dan kendali. [1]
B. Jenis-jenis Mikrokontroller
Secara teknis, hanya ada 2 macam mikrokontroller. Pembagian ini
didasarkan pada kompleksitas instruksi-instruksi yang dapat
diterapkan pada mikrokontroler tersebut. Pembagian itu yaitu RISC
dan CISC.
RISC merupakan kependekan dari Reduced Instruction Set Computer.
Instruksi yang dimiliki terbatas, tetapi memiliki fasilitas yang
lebih banyak.
Sebaliknya, CISC kependekan dari Complex Instruction Set
Computer. Instruksi bisa dikatakan lebih lengkap tapi dengan
fasilitas secukupnya. Masing-masing mempunyai keturunan atau
keluarga sendiri-sendiri. Sekarang kita akan membahas pembagian
jenis-jenis mikrokonktroler yang telah umum digunakan.
1. Keluarga MCS51
Mikrokonktroler ini termasuk dalam keluarga mikrokonktroler
CISC. Sebagian besar instruksinya dieksekusi dalam 12 siklus clock.
Mikrokontroler ini berdasarkan arsitektur Harvard dan meskipun
awalnya dirancang untuk aplikasi mikrokontroler chip tunggal,
sebuah mode perluasan telah mengizinkan sebuah ROM luar 64KB dan
RAM luar 64KB diberikan alamat dengan cara jalur pemilihan chip
yang terpisah untuk akses program dan memori data. Salah satu
kemampuan dari mikrokontroler 8051 adalah pemasukan sebuah mesin
pemroses boolean yang mengijikan operasi logika boolean
tingkatan-bit dapat dilakukan secara langsung dan secara efisien
dalam register internal dan RAM. Karena itulah MCS51 digunakan
dalam rancangan awal PLC (programmable Logic Control).
-
6
2. AVR
Mikrokonktroler Alv and Vegards Risc processor atau sering
disingkat AVR merupakan mikrokonktroler RISC 8 bit. Karena RISC
inilah sebagian besar kode instruksinya dikemas dalam satu siklus
clock. AVR adalah jenis mikrokontroler yang paling sering dipakai
dalam bidang elektronika dan instrumentasi. Secara umum, AVR dapat
dikelompokkan dalam 4 kelas. Pada dasarnya yang membedakan
masing-masing kelas adalah memori, peripheral dan fungsinya.
Keempat kelas tersebut adalah keluarga ATTiny, keluarga AT90Sxx,
keluarga ATMega dan AT86RFxx.
3. PIC
Pada awalnya, PIC merupakan kependekan dari Programmable
Interface Controller. Tetapi pada perkembangannya berubah menjadi
Programmable Intelligent Computer. PIC termasuk keluarga
mikrokonktroler berarsitektur Harvard yang dibuat oleh Microchip
Technology. Awalnya dikembangkan oleh Divisi Mikroelektronik
General Instruments dengan nama PIC1640.
Sekarang Microhip telah mengumumkan pembuatan PIC-nya yang
keenam PIC cukup popular digunakan oleh para developer dan para
penghobi ngoprek karena biayanya yang rendah, ktersediaan dan
penggunaan yang luas, database aplikasi yang besar, serta
pemrograman (dan pemrograman ulang) melalui hubungan serial pada
komputer. [2]
C. Tipe Tipe mikrokontroler
1. Mikrokontroler AT89C51 (mohamad fathurohim) Mikrokontroler
AT89C51 merupakan produk Atmel Corp, milik keluarga MCS51
mikrokontroler. Mikrokontroler ini memiliki arsitektur yang sama
dengan mikrokontroler 8031, produk dari Intel Corp Spesifikasi
mikrokontroler AT89C51 dinyatakan di bawah ini: - Baris 8 bit data
- 4K byte memori flash - Frekuensi clock maksimum adalah 24MHz -
Memory internal 128 Byte - Empat port I / O - Dual 16 bit timer /
counter - Register dari AT89C51 - Mikrokontroler AT89C51 memiliki
beberapa register, register yang menjelaskan dalam tutorial ini
adalah: - Akumulator - R0 - R7 [3]
-
7
2. mikrokontroler MCS-51 Arsitektur mikrokontroler MCS-51
diotaki oleh CPU 8 bit yang terhubung
melalui satu jalur bus dengan memori penyimpanan berupa RAM dan
ROM serta jalur I/O berupa port bit I/O dan port serial. Selain itu
terdapat fasilitas timer/counter internal dan jalur interface
address dan data ke memori eksternal. Salah satu tipe
mikrokontroler arsitektur MCS-51 yang banyak digunakan saat ini
adalah tipe Atmel 89S51. Tipe ini banyak digunakan karena memiliki
fasilitas on-chip flash memory dan In System Programming. Berikut
adalah feature-feature untuk mikrokontroler tipe 89S51 buatan
Atmel.
4K bytes Flash ROM tes RAM port @ 8-bit I/O (Input/Output) port
2 buah 16 bit timer Interface komunikasi serial 64K pengalamatan
code (program) memori 64K pengalamatan data memori Prosesor Boolean
(satu bit satu bit) 210 lokasi bit-addressable Fasilitas In System
Programming (ISP) [4]
D. Contoh pemrogaman sederhana mikrokontroler contoh program dan
rangkaiannya 1. Merancang aplikasi lampu berjalan dari kiri ke
kanan dan dari kanan ke kiri
lengkap dengan program perhitungan delaynya.
Gambar rangakaian menyalakan lampu led 8 buah [5]
-
8
Bahasa Pemrograman a) Lampu berjalan yang bergerak satu per dari
kiri ke kanan secara berulang-ulang
ORG OH : awal program di mulai pada alamat 0HI
Mulai : MOV A,#07FH : isi akumuklator dengan data 7FH Putar :
MOV PD, A :salin data dari akumuklator ke PD (nyalakan 1 lampu ) RR
A : Putar 1 bit data akumuklator ke a rah kanan ACALL Tunda :
Panggil subrutin tunda untuk waktu tunda penyalaan 5JMP Putar :
Lompat ke label mulai (lakukan secara berulang) : Led akan nyala
jika di beri logik 0 Tunda : MOV R5,#250 : Isi register 5 dengan
data 250 Tunda1 : MOV R6,#100 : Isi register 6 dengan data 100
Tunda2 : MOV R7,#10 : Isi register 7 dengan data 10 DJNZ R7,S :
Kurangi R7 dengan 1 sampai 0 DJNZ R6, Tunda2 : Kurangi R6 jika
belum 0 lompat ke label tunda2 DJNZ R5, Tunda1 : Kurangi R7 jika
belum 0 lompat ke label tunda 1 RET : Kembali ke program utama End
: Waktu tunda (siklus DJNZ = S): : : 2 (R7) = 2 (10) = 20 S : : 2
(R7 x R6) = 2 (10 x 100) = 2000 S : : 2 (R7 x R6 x R5) = 2 (10 x
100 x 250) = 500000 S : .+ : 502020 S = 500 mS
b) Bahasa pemrogamannya jika lampu bergerak dari kanan ke kiri
yaitu
-
9
Mulai : MOV A,#0FEH : intruksi yang diganti Putar : MOV P0,A RL
A : intruksi yang diganti ACALL tunda SJMP putar : led akan nyala
jika diberi logic 0
c) Bahasa program untuk menggerakan lampu dari tengah k pinggir
dengan waktu tunda 200 mili detik yaitu :
ORG 0H : awal program dimulai pada alamat 0H Mulai: MOV
P0,#11100111B : isi port 0 dengan data 11100111B ACALL Tunda :
panggil subrutin tunda MOV P0,#11100111B : isi port 0 dengan data
11100111B ACALL Tunda : panggil subrutin tunda MOV P0,#11100111B :
isi port 0 dengan data 11100111B ACALL Tunda : panggil subrutin
tunda MOV P0,#11100111B : isi port 0 dengan data 11100111B ACALL
Tunda : panggil subrutin tunda SJMP Mulai : lompat ke label mulai
(lakukan berulang) Led akan nyala jika diberi logic 0 Tunda : MOV
R5,#250 : isi register 5 dengan data 250 Tunda1: MOV R6,#40 : isi
register 6 dengan data 40 Tunda2: MOV R7,#10 : isi register 5
dengan data 10
-
10
DJNZ R7,S : kurangi R7 dengan 1 sampai 0 DJNZ R6, Tunda2 :
kurangi R6 jika belum 0 lompat ke label Tunda2 DJNZ R5, Tunda1 :
kurangi R7 jika belum 0 lompat ke label Tunda1 RET : kembali ke
program utama End : waktu tunda (siklus DJNZ = 2 S) : : : 2 (R7) =
2 (10) = 20 S : : 2 (R7 x R6) = 2 (10 x 40) = 800 S : : 2 (R7 x R6
x R5) = 2 (10 x 100 x 250) = 200000 S .+ 200820 S = 200 mS [5]
E. Bilangan binner pada seven segment Seven Segment adalah suatu
segmen- segmen yang digunakan menampilkan
angka. Seven segment merupakan display visual yang umum
digunakan dalam dunia digital. Seven segment sering dijumpai pada
jam digital, penujuk antrian, diplay angka digital dan termometer
digital. Penggunaan secara umum adalah untuk menampilkan informasi
secara visual mengenai data-data yang sedang diolah oleh suatu
rangkaian digital.
Seven segmen ini tersusun atas 7 batang LED yang disusun
membentuk angka 8 yang penyusunnya menggunakan diberikan lebel dari
a sampai g dan satu lagi untuk dot point (DP). Setiap segmen ini
terdiri dari 1 atau 2 Light Emitting Diode ( LED ). salah satu
terminal LED dihubungkan menjadi satu sebagai kaki common.
Jenis-jenis Seven Segment : 1. Common Anoda Semua anoda dari LED
dalam seven segmen disatukan secara parallel dan semua itu
dihubungkan ke VCC, dan kemudian LED dihubungkan melalui tahanan
pembatas arus
Gambar. Seven-segment Display [6]
-
11
keluar dari penggerak LED. Karena dihubungkan ke VCC, maka
COMMON ANODA ini berada pada kondisi AKTIF LOW (led akan
menyala/aktif bila diberi logika 0). 2. Common Katoda Merupakan
kebalikan dari Common Anoda. Disini semua katoda disatukan secara
parallel dan dihubungkan ke GROUND. Karena seluruh katoda
dihubungkan ke GROUND, maka COMMON KATODA ini berada pada kondisi
AKTIF HIGH (led akan menyala/aktif bila diberi logika 1). [6]
Gambar Angka pada seven-segment [7]
Penyusun dari COMMON
2. Decoder yaitu suatu alat yang berfungsi mengubah/ mengkoversi
input bilangan biner menjadi decimal.
3. Encoder yaitu suatu alat yang berfungsi mengubah/ mengkoversi
input bilangan desimal menjadi biner
4. Multiplexer adalah Suatu rangkaian kombinasi yang ouputnya
mempunyai logika sama dengan jalur input yang ditunjuk pada
selector. Multiplexer ini memiliki banyak input dan memiliki satu
output. Prinsip kerjanya sama dengan saklar pemilih dai 2n buah
inputdipilih melalui n buah jalur pemilih ( DATA SELECT ).
5. Demultiplexer adalah suatu rangkain kombinasi yang bersifat
berkebalikan dari multiplexer. Rangkaian ini memiliki satu input
dan memiliki banyak keluaran ( output ). Rangkaian ini akan
menghasilkan output high ( 1 ) pada jalur yang sesuai dengan yang
ditunjuk oleh selector.
KODE, ENKODE, DEKODE, PERAGA SEVEN SEGMEN Pada umumnya orang
menggunakan kode desimal untuk menyatakan angka.
Rangkaian elektronika digital dalam kalkulator atau komputer
kebanyakan menggunakan kode biner untuk menyatakan angka. 6.1 Kode
BCD 8421
Angka biner yang telah kita bicarakan di atas tidak banyak
memberi arti. Agar angka biner dapat diproses maka perlu dikodekan.
Kode BCD-8421 (Binary Coded Decimal) suatu kode dengan angka biner.
Kode BCD mengkodekan setiap bilangan pada bilangan desimal kedalam
bilangan biner 4 bite, misal angka desimal 2347, kode BCD bilangan
tersebut adalah 0010 0011 0100 0111.
-
12
6.2 Kode Ekses-3 Untuk menyatakan bulangan desimal ke kode
ekses-3:
Bilangan desimal + 3 kemudian tiap bilangan diubah ke dalam
biner 4 bite. Contah bilangan desimal 2347: 2 + 3 = 5, 3 + 3 = 6, 4
+3 = 7, 7 +3 = 10, jadi kode ekses-3 bilangan 2347: 0101 0100 0111
1010 6.3 kode GRAY
Kode Gray tidak memiliki keteraturan yang jelas, hanya ada satu
keteraturan yang konsisten yaitu satu digit berubah bila cacahan
dari atas ke bawah.
Tabel Bilangan biner [1]
Bilangan Desimal
Bilangan Biner
Bilangan kode BCD 8421
Bilangan kode Gray
0 0000 0000 0000 1 0001 0001 0001 2 0010 0010 0011 3 0011 0011
0010 4 0100 0100 0110 5 0101 0101 0111 6 0110 0110 0101 7 0111 0111
0100 8 1000 1000 1100 9 1001 1001 1101
10 1010 0001 0000 1111 11 1011 0001 0001 1110 12 1100 0001 0010
1010 13 1101 0001 0011 1011 14 1110 0001 0100 1001 15 1111 0001
0101 1000 16 10000 0001 0110 11000 17 10001 0001 0111 11001
6.4 Kode ASCII
Kode ASCII (American Standard Code for Information) banyak
digunakan untuk mengirim informasi ke dalam komputer mikro. Kode
ASCII ini merupakan kode 7 bit yang lebih rumit, yang digunakan
dalam pengalihan informasi berkode dari papan ketik ke tampilan
komputer dan pencetak. Kode ASCII digunakan untuk menggantikan
angka huruf, tanda baca, maupun karakter kontrol. Contoh huruf A
dalam kode ASCII adalah 100 0001 = A. Jika huruf A papan ketik
ditekan maka kode 100 0001 dikirim ke CPU.
6.5 Pengkode
Pengkode merupakan alat yang berfungsi mengkodekan informasi
(bahasa manusia ke bahasa mesin elektronika digital. Contoh
pengkode pada system gambar 6.1
-
13
pengkode dalam sistem ini harus menerjemahkan masukan desimal
dari papan ketik ke suatu kode BCD 8421.
Pengkode
Dekoder
0
7 8 9
4 5 6
1 2 3
Unitproses
danmemori
Dekoder
IC 74147 merupakan Pengkode BCD, yaitu pengkode prioritas 10
baris ke 4 baris
123456789
D
C
B
A
0 0 1 1
IC 74147
Tabel 2. Table kebenaran IC pengkode BCD
IC 74147 mempunyai input RENDAH aktif dan output RENDAH aktif.
Tabel kebenaran IC pengkode
BCD ini: INPUT
OUTPUT
1 2 3 4 5 6 7 8 9 D C B A H H H H H H H H H H H H H X X X X X X
X X L L H H L X X X X X X X L H L H H H X X X X X X L H H H L L L X
X X X X L H H H H L L H X X X X L H H H H H L H L X X X L H H H H H
H L H H X X L H H H H H H H H L L X L H H H H H H H H H L H L H H H
H H H H H H H H L
Contoh input 3, berarti no 3 adalah LOW bersesuaian dengan
output HHLL, karena output RENDAH AKTIF maka keluaran sesungguhnya
adalah LLHH
Gambar Pengkode [8]
-
14
6.6 Peraga LED 7 segmen Peraga bilangan desimal yang umum berupa
7 segemen. Peraga ini tersesun atas 7
LED membentuk formasi angka 8, bagian kutub positif dijadikan
satu dihubungkan positif baterai, dan negatifnya diaktifkan sesuai
output:
ab
c
d
e
f
g
abcdefg
Sebagai contoh sistem digital dengan input berupa angka desimal,
dan ditampilkan dalam bentuk peraga 7 segmen, diperlukan rangkaian:
papan ketik, enkoder BCD IC 74147, dekoder/pengendali 7 segmen IC
7447A dan LED 7 segment, seperti gambar berikut :
0
7 8 9
4 5 6
1 2 3
123456789
D
C
B
A
IC 74147
abcdefg
D
C
B
A
IC 7447A
ab
c
d
e
f
g
abcdefg
6.7 Peraga 7 segmen LCD
LCD (Liquid Crystal Display) merupakan peraga/penampil yang
bekerja berdasarkan efek polarisasi cahaya pada kristal cair.
Kristal cair jika diberi beda potensial medan listriknya akan
terpolarisasi.
Polarisator
Metal
Kristal cair
Pola konduktif pada kaca
Sinyal 100Hz
Gambar Peraga LED 7 segment [9]
Gambar Peraga LED 7 segment [10]
Gambar Peraga 7 segment LCD [11]
-
15
Polarisasi medan listrik pada kristal cair dan polarisator
memberikan kesan warna gelap. LCD tebuat berlapis-lapis, meliputi
polarisator, pola konduktif pada kaca, kristal cair (fluida
nematik), metal, dan pengemas. Pemberian medan listrik pada LCD
tidak boleh dilakukan dalam satu arah dalam waktu lama, karena hal
ini akan menimbulkan kerusakan. Oleh karena itu LCD dioperasikan
polaritas betganti ganti, yaitu dengan sinyal persegi. Prinsip
Kerja :
Prinsip kerja seven segmen ialah input biner pada switch
dikonversikan masuk ke dalam decoder, baru kemudian decoder
mengkonversi bilangan biner tersebut menjadi decimal, yang nantinya
akan ditampilkan pada seven segment.
Seven segment dapat menampilkan angka-angka desimal dan beberapa
karakter tertentu melalui kombinasi aktif atau tidaknya LED
penyusunan dalam seven segment. Untuk memudahkan penggunaan seven
segment, umumnya digunakan sebuah decoder( mengubah/ mengkoversi
input bilangan biner menjadi decimal) atau seven segment driver
yang akan mengatur aktif tidaknya led-led dalam seven segment
sesuai dengan nilai biner yang diberikan.
Dekoder BCD ke seven segment digunakan untuk menerima masukan
BCD 4-bit dan memberikan keluaran yang melewatkan arus melalui
segmen untuk menampilkan angka desimal. Jenis dekoder BCD ke seven
segment ada dua macam yaitu dekoder yang berfungsi untuk menyalakan
seven segment mode common anoda dan dekoder yang berfungsi untuk
menyalakan seven segment mode common katoda. Contoh IC converter
BCD to Seven Segment untuk 7-segment Common Anoda pake decoder IC
TTL 7447 untuk Common Katoda pake IC TTL 7448.
Salah satu contoh saja, IC 74LS47 merupakan dekoder BCD ke seven
segment yang berfungsi untuk menyalakan seven segmen mode common
anode. Gambar dan konfigurasi pin IC 74LS47 ditunjukkan pada gambar
berikut :
Dekoder BCD ke seven segment mempunyai masukan berupa bilangan
BCD 4-bit
(masukan A, B, C dan D). Bilangan BCD ini dikodekan sehingga
membentuk kode tujuh segmen yang akan menyalakan ruas-ruas yang
sesuai pada seven segment. Masukan BCD diaktifkan oleh logika 1,
dan keluaran dari dekoder 7447 adalah aktif low. Tiga masukan
ekstra juga ditunjukkan pada konfigurasi pin IC 7447 yaitu masukan
(lamp test), masukan (blanking input/ripple blanking output), dan
(ripple blanking input).
Gambar Konfigurasi pin IC 74LS47 [12]
-
16
Tabel kebenaran dari IC 74LS47 [3]
Pada konfigurasi pin IC 7447 yaitu masukan (lamp test), masukan
(blanking input/ripple blanking output), dan (ripple blanking
input).
LT' , Lamp Test, berfungsi untuk mengeset display, bila diberi
logika 0 maka semua keluaran dari IC ini akan berlogika 0. Sehingga
seven segment akan menunjukkan angka delapan (8). BI'/RBO' ,
Blanking Input/Row Blanking Output, berfungsi untuk mematikan
keluaran dari IC. Bila diberi logika 0 maka semua keluaran IC akan
berlogika 1 dan seven segment akan mati.
RBI' , Row Blanking Input, berfungsi untuk mematikan keluaran
dari IC jika semua input berlogika 0. Bila diberi logika 0, diberi
logika 1 dan diberi logika 0 maka semua keluaran IC akan berlogika
1 dan seven segment akan mati. (Haviz Setiawan)
-
17
Sedangkan untuk tabel kebenaran pada penampil 7 segment dengan 4
bit input dapat dilihat pada gambar 3. Dengan 4 bit tersebut dapat
digunakan kombinasi bilangan biner untuk menentukan keluaran angka
yang dihasilkan dari penampil 7 segment tersebut.
Tabel kebenaran pada penampil 7 segment dengan 4 bit input
[4]
Masing masing bit keluaran a, b, c, d, e, f, dan g dapat
dinyatakan sebagai berikut :
-
18
Untuk aplikasinya atau contoh rangkaiannya dapat menggunakan IC
7447 dan
gambar rangkaiannya dapat dilihat pada gambar 4. IC 7447
merupakan komponen elektronika yang dapat digunakan untuk
menampilkan pada 7 segment. Dengan IC 7447 dapat merubah bilangan
BCD ( Binary Coded Decimal ) ke 7 segment. Masih banyak IC yang
dapat digunakan sebagai decoder BCD ke 7 segment. [7]
Gambar Bit keluaran a, b, c, d, e, f, dan g [13]
Gambar decoder BCD ke 7 segment [14]
-
19
- BCD ke 7-Segmen c /w latch Decoder 4-bit Setelah 7-segmen LED
display menjadi mudah tersedia IC sederhana yang dikenal sebagai
"BCD ke 7-segmen decoder" dengan cepat dikembangkan untuk
mempermudah penggunaannya. Biner diformat data yang disajikan
kepada hasil ini IC masukan dalam output IC yang ditempatkan ke
negara yang benar untuk menampilkan angka setara (0 sampai 9) pada
layar 7-Segmen.
Meskipun BCD ke 7-segmen IC decoder tersedia tanpa dibangun di
kait, IC ini khusus termasuk built in 4-bit latch yang kita akan
menggunakan contoh di kemudian. Untuk saat ini latch diatur untuk
hanya memungkinkan data masukan untuk secara bebas melewati ke
decoder.
Dalam diagram di atas, 4 switch toggle, SW0 untuk SW3 digunakan
untuk memilih angka yang diinginkan (0-9) yang akan muncul pada
layar 7-Segmen. Dengan menggunakan decoder, sekarang hanya masalah
pengaturan pola 4-bit BCD benar makan input dari decoder, decoder
dan mengurus sisanya. [8] Bagian decoder juga memiliki dua input
tambahan. Lamp Test (LT) ternyata semua
segmen sehingga Anda dapat memverifikasi sekaligus bahwa semua
segmen tampilan bekerja, atau mengidentifikasi unit display yang
perlu diganti. Masukan ini biasanya ditinggalkan di logika 1. Para
Blanking (BL) input kebalikan dari itu; memaksa seluruh tampilan
off. Ini digunakan dalam banyak kasus mengosongkan keluar terkemuka
atau trailing nol dari tampilan lama. LT akan menimpa BL sehingga
Anda dapat menguji bahkan blanked-out digit tampilan. Satu juga
harus mencatat bahwa sirkuit yang sama dibayangkan dapat
dikendalikan oleh PLC, jika 4 bit output dari kartu output PLC 5VDC
digunakan di tempat 4 switch ditampilkan.
-
20
Jika output kartu 8-bit yang tersedia, kemudian dua sirkuit
tersebut (2 digit) dapat dikendalikan. Kartu 16-bit pada gilirannya
akan memungkinkan kita untuk mengontrol empat sirkuit tersebut (4
digit).
Angka (atas) di sebelah kiri diambil dari layar I / O LogixPro
simulator, dan menggambarkan metode umum interfacing ke layar 4
digit. Angka-angka di sebelah kanan diambil dari lembar data dari
unit pra-diproduksi 4 digit tampilan yang dapat segera digunakan
dalam aplikasi tertentu.
Unit diproduksi memang mengandung empat sirkuit yang terpisah,
dan setiap sirkuit (digit) memiliki decoder itu sendiri, tapi
dibandingkan dengan sirkuit contoh kita sebelumnya, unit ini
menggunakan komponen tambahan dan sirkuit sehingga jauh lebih
fleksibel dan mudah digunakan.
Perhatikan bahwa ada 4 "Strobe" baris yang ditampilkan, satu
untuk setiap digit. Garis-garis ini strobo mengawasi dibangun di IC
kait yang memberikan kita pilihan untuk multiplexing angka, atau
layar, jika kita ingin melakukannya. Dalam aplikasi
non-multiplexing atas, lampunya secara permanen diaktifkan
memungkinkan data untuk hanya melewati dari input BCD dan
ditampilkan seperti biasa.
Juga mencatat bahwa unit khusus dirancang untuk digunakan 24VDC.
Ini adalah jauh yang paling umum tegangan DC tingkat digunakan
dalam instalasi industri, dan PLC I / O kartu dirancang untuk
penggunaan tersebut oleh karena itu sangat umum. Dibandingkan
dengan sirkuit 5VDC, sirkuit 24VDC biasanya dapat mentolerir
kunjungan pasokan tegangan jauh lebih besar, kurang sensitif
terhadap efek dari resistansi kontak, dan lebih toleran terhadap
lingkungan bising elektrik. [9]
Gambar Paralel Tampilan Non-multiplex Digit [15]
-
21
ATMEL AVR ATMEGA8535
Sebelum belajar lebih dalam tentang aplikasi mikrokontroller,
ada baiknya kita bicarakan dulu tentang mikrokontroller yang kita
gunakan. Pada pelatihan ini dipilih mikrokontroller jenis ATMEL AVR
RISC dengan pertimbangan sebagai berikut: ATMEL AVR RISC memiliki
fasilitas dan kefungsian yang lengkap dengan harga yang
relatif murah. Kecepatan maksimum eksekusi instruksi
mikrokontroller mencapai 16 MIPS (Million
Instruction per Second), yang berarti hanya dibutuhkan 1 clock
untuk 1 eksekusi instruksi. Konsumsi daya yang rendah jika
dibandingkan dengan kecepatan eksekusi instruksi. Ketersediaan
kompiler C (CV AVR) yang memudahkan user memprogram menggunakan
bahasa C.
Tabel 1.1: perbandingan kecepatan processor dan efisiensi
Dari tabel diatas dapat dilihat, ketika bekerja dengan kecepatan
clock yang sama AVR 7
kali lebih cepat dibandingkan denga PIC16C74, 15 kali lebih
cepat daripada 68 HC11, dan 28 kali lebih cepat dibanding 8051.
Dari kemampuan dan fasilitas yang dimiliki, AVR RISC cocok dipilih
sebagai mikrokontroller untuk membangun bermacam-macam aplikasi
embedded sistem. Oleh karena itu, dalam pelatihan ini juga dipilih
salah satu jenis AVR RISC sebagai dasar pelatihan yaitu ATMEGA
8535. Chip AVR ATMEGA8535 memiliki 40 pin kaki, berikut skema kaki
AT MEGA8535,
Gambar 1.3: skema mikrokontroller AVR RISC ATMEGA8535
-
22
ATMEGA8535 memiliki 4 buah port input/output 8 bit, yaitu PORTA,
PORTB, PORTC, dan PORTD. Selain sebagai input/output masing masing
port juga memiliki fungsi yang lain. PORTA dapat difungsikan
sebagai ADC (Analog to Digital Converter), PORTB dapat difungsikan
sebagai SPI (Serial Peripheral Interface) communication.
PEMROGRAMAN ATMEL AVR \
Ada 2 cara untuk memprogram mikrokontroller ini, menggunakan
software AVR assembler yang berbasis pada bahasa assembly, dan
menggunakan software CV AVR (Code Vision AVR) yang berbasis pada
bahasa C. Pada pelatihan ini akan digunakan cara yang kedua dengan
pertimbangan kemudahan pembuatan program dari algoritma yang telah
dibangun. Pelatihan ini tidak menitikberatkan penggunaan bahasa C
pada CV AVR, tapi lebih pada cara dan aplikasi dari
mikrokontroller. Untuk itu peserta diharapkan membaca sendiri
petunjuk pemakaian software ini. Berikut tampilan utama CVAVR,
Gambar 1.4: tampilan utama CV AVR
Untuk dapat menyimpan program yang telah kita buat pada memory
mikrokontroller dibutuhkan perangkat tambahan yang menghubungkan
antara PC dan mikrokontroller. Perangkat interface ini disebut
isp_dongle yang menghubungkan port parallel PC dan port SPI (Serial
Peripheral Interface) mikrokontroller.
-
23
Untuk memaksimalkan pemanfaatan fasilitas mikrokontroller
MAX-TRON telah mengembangkan board dan peripheral pendukung yang
dapat digunakan untuk membangun bermacam-macam aplikasi sistem
digital. Salah satunya adalah Universal controller board M.B.3.2,
board yang dilengkapi dengan komponen-komponen tambahan pendukung
kerja mikrokontroller. Berikut data Universal board M.B.3.2,
MAX-TRON M.B.3.2 Universal Controller Board Feature:
High-performance, low power AVR ATMEGA8535 8 bit
mikrocontroller
4 bidirection port 8 channel ADC 2 channel servo motor
controller 2 channel max-tron H-bridge controller Master/Slave SPI
serial interface Serial USART interface Operating voltage 9 V 35 V
PIN Description
Gambar 1.6: skema pin universal board M.B.3.2
-
24
BAB 7
7.1 LINE TRACER
Gambar line tracer
Sensor Proximity Sensor proximity bisa kita buat sendiri.
Prinsip kerjanya sederhana, hanya memanfaatkan
sifat cahaya yang akan dipantulkan jika mengenai benda berwarna
terang dan akan diserap jika mengenai benda berwarna gelap. Sebagai
sumber cahaya kita gunakan LED (Light Emiting Diode) yang akan
memancarkan cahaya merah. Dan untuk menangkap pantulan cahaya LED,
kita gunakan photodiode. Jika sensor berada diatas garis hitam maka
photodioda akan menerima sedikit sekali cahaya pantulan. Tetapi
jika sensor berada diatas garis putih maka photodioda akan menerima
banyak cahaya pantulan. Berikut adalah ilustrasinya :
Gambar 1. Cahaya pantulan sedikit Gambar 2. Cahaya pantulan
banyak
Gambar 2. Prinsip Kerja Sensor Proximity
-
25
Tabel proses pembacaan sensor
Kalau cahaya yang dipancarkan ke bidang putih, sensor akan :
Kalau cahaya yang dipancarkan ke bidang hitam, sensor akan :
Baca Putih Baca Hitam
- Pantulan cahaya banyak - Pantulan cahaya sedikit
- Receiver menerima banyak cahaya - Receiver menerima sedikit
cahaya
- Hambatan / resistansi receiver kecil - Hambatan / resistansi
receiver besar
Sifat dari photodioda adalah jika semakin banyak cahaya yang
diterima, maka nilai resistansi diodanya semakin kecil. Dengan
melakukan sedikit modifikasi, maka besaran resistansi tersebut
dapat diubah menjadi tegangan. Sehingga jika sensor berada diatas
garis hitam, maka tegangan keluaran sensor akan kecil, demikian
pula sebaliknya. Berikut adalah gambar rangkaian sensor proximity
yang digunakan pada robot ini :
Agar dapat dibaca oleh mikrokontroler, maka tegangan sensor
harus disesuaikan denganlevel tegangan TTL yaitu 0 1 volt untuk
logika 0 dan 3 5 volt untuk logika 1. Hal ini bisa dilakukan dengan
memasang operational amplifier yang difungsikan sebagai komparator.
Output dari photodiode yang masuk ke input inverting op-amp akan
dibandingkan dengan tegangan tertentu dari variable resistor VR.
Tegangan dari VR inilah yang kita atur agar sensor proximity dapat
menyesuaikan dengan kondisi cahaya ruangan.
Sensor proximity terdiri dari 6 pasang LED dan photodiode yang
disusun sedemikian rupa sehingga jarak antara satu sensor dengan
yang lainnya lebih kecil dari lebar garis hitam. Perhatikan gambar
berikut :
-
26
Algoritma Pergerakan Robot
Sebelum membuat program, maka kita perlu mendefinisikan seluruh
kemungkinan pembacaan sensor proximity. Dengan demikian kita dapat
menentukan pergerakan robot yang tujuannya adalah menjaga agar
robot selalu berada tepat diatas garis. Berikut adalah beberapa
kemungkinan pembacaan garis oleh sensor proximity :
Gambar 7. Kemungkinan Posisi Sensor Proximity Pada Line
Setelah mengetahui kemungkinan-kemungkinan posisi sensor, maka
selanjutnya harus
didefinisikan aksi dari setiap kondisi tersebut. Perhatikan
tabel berikut ini :
Tabel 1. Aksi Pergerakan Robot
-
27
7.2 Motor DC 12 volt
Gambar Flying dc gearbox motor
Flying dc gearbox motor adalah motor dc yg dipadukan dengan
gearbox secara satu body dan memiliki kecepatan putar dengan tiga
pilihan yaitu 410 rpm, 510 rpm dan 630 rpm serta memiliki torsi 4,8
Kg, Flying dc gearbox motor ini berdiameter shaft 2,9 mm sehingga
cocok sekali digunakan untuk motor pengerak robot line tracer
analog, robot sumo dan maze solving.
Speed 630 rpm @ 12 volt DC
Dimensi :
- Diameter shaft = 3mm - Panjang Gaerbox = 14mm
- Panjang shaft = 8mm - Panjang total = 54mm
- Panjang motor = 28mm
Untuk menggerakkan dua buah motor dc, digunakan IC H-Bridge
Motor Driver L298,
yang mampu memberikan arus maksimum sebesar 1A ke tiap motor.
Input L298 ada 6 jalur, terdiri dari input data arah pergerakan
motor dan input untuk PWM (Pulse Width Modulation). Untuk mengatur
kecepatan motor, pada input PWM inilah akan diberikan lebar pulsa
yang bervariasi dari mikrokontroler.
Gambar 10. Rangkaian Driver Motor DC
-
28
Untuk menentukan arah pergerakan motor maka pada input L298
harus diberikan kondisi sesuai dengan tabel berikut :
Tabel 2. Tabel Kebenaran Driver Motor
7.3 baterai cx g3 lipo
Hyperion Generasi 3 Lithium Polymer Paket yang revolusioner baik
dalam kinerja dan nilai. Dibandingkan dengan rata-rata baterai pada
tahun pasar terakhir, Hyperion G3 selmenyediakan hingga sampai
siklus 4x lebih bawah kondisi debit yangsama. HyperionG3 Lipo bisa
dengan aman dibebankan sampai dengan tingkat 5C - untuk kali
biayaserendah 10 sampai 12 menit. Paket G3 yang dibuat dengan
teknologi konstruksi baruRS Hybrid, super-halus bahan substrat,
ketat ISO 9001 Quality Control, dan proses sel akhir yang cocok,
yang semua jaminan Anda tidak hanya kinerja yang luar biasa, tetapi
juga erat seimbang dan tahan lama kemasan .
Gambar Baterai cx g3 lipo
-
29
12 V
78055 V
RANGKAIAN
12 VMOTOR
Gambar rangkaian baterai cx g3 lipo
IC MICROATMEGA 16
+
SENSOR
DRIVERMOTOR
Port D
Port A
DRIVERMOTOR
LCD2 X 16
TOMBOL
Port D
INTERFACE
Gambar Diagram Instalasi
BAHASA PEMROGRAMAN C
Bahasa C++ merupakan salah satu bahasa pemrograman komputer.
Bahasa pemrograman ini dikembangkan di Bell Labs (Bjarne
Stroustrup) 1970-an, dan merupakan turunan dari bahasa sebelumnya,
yaitu BCL. Pada mulanya, bahasa C++ dirancang sebagai bahasa
pemrograman yang dijalankan pada sistem Unix. Pada perkembangannya,
versi ANSI (American National Standart Institute) bahasa
pemrograman C menjadi versi dominan, Meskipun versi tersebut
sekarang jarang dipakai dalam pengembangan sistem dan jaringan
maupun untuk sistem embedded.
-
30
Bjarne Stroustrup pada Bell labs pertama kali mengembangkan C++
pada awal 1980-an. Untuk mendukung fitur-fitur pada C++, dibangun
efisiensi dan system support untuk pemrograman tingkat rendah (low
level coding)
Pada C++ ditambahkan konsep-konsep baru seperti class dengan
sifat-sifatnya seperti inheritance dan overloading. Salah satu
perbedaan yang paling mendasar dengan bahasa C adalah dukungan
terhadap konsep pemrograman berorientasi objek (Object Oriented
Programming).
Perbedaan Antara Bahasa pemrograman C dan C++ meskipun
bahasa-bahasa tersebut menggunakan sintaks yang sama tetapi mereka
memiliki perbedaan. C merupakan bahasa pemrograman prosedural,
dimana penyelesaian suatu masalah dilakukan dengan membagi-bagi
masalah tersebut kedalam su-submasalah yang lebih kecil. Selain
itu, C++ merupakan bahasa pemrograman yang memiliki sifat
Pemrograman berorientasi objek, Untuk menyelesaikan masalah, C++
melakukan langkah pertama dengan menjelaskan class-class yang
merupakan anak class yang dibuat sebelumnya sebagai abstraksi dari
object-object fisik, Class tersebut berisi keadaan object,
anggota-anggotanya dan kemampuan dari objectnya, Setelah beberapa
Class dibuat kemudian masalah dipecahkan dengan Class.[10]
CodeVisionAVR Step-by-Step
Tentang CodeVisionAVR
CodeVisionAVR merupakan sebuah cross-compiler C, Integrated
Development Environtment (IDE), dan Automatic Program Generator
yang didesain untuk mikrokontroler buatan Atmel seri AVR.
CodeVisionAVR dapat dijalankan pada system operasi Windows 95, 98,
Me, NT4, 2000, dan XP.
Cross-compiler C mampu menerjemahkan hampir semua perintah dari
bahasa ANSI C, sejauh yang diijinkan oleh arsitektur dari AVR,
dengan tambahan beberapa fitur untuk mengambil kelebihan khusus
dari arsitektur AVR dan kebutuhan pada sistem embedded. File object
COFF hasil kompilasi dapat digunakan untuk keperluan debugging pada
tingkatan C, dengan pengamatan variabel, menggunakan debugger Atmel
AVR Studio. IDE mempunyai fasilitas internal berupa software AVR
Chip In-System Programmer yang memungkinkan Anda untuk melakukan
transfer program kedalam chip mikrokontroler setelah sukses
melakukan kompilasi/asembli secara otomatis. Software In-System
Programmer didesain untuk bekerja dengan Atmel
STK500/AVRISP/AVRProg, Kanda Systems STK200+/300, Dontronics DT006,
Vogel Elektronik VTEC-ISP, Futurlec JRAVR dan MicroTronics
ATCPU/Mega2000 programmers/development boards. Untuk keperluan
debugging sistem embedded yang menggunakan komunikasi serial, IDE
mempunyai fasilitas internal berupa sebuah Terminal.
-
31
Selain library standar C, CodeVisionAVR juga mempunyai library
tertentu untuk: Modul LCD alphanumeric Bus I2C dari Philips Sensor
Suhu LM75 dari National Semiconductor Real-Time Clock: PCF8563,
PCF8583 dari Philips, DS1302 dan DS1307 dari Maxim/Dallas
Semiconductor Protokol 1-Wire dari Maxim/Dallas Semiconductor
Sensor Suhu DS1820, DS18S20, dan DS18B20 dari Maxim/Dallas
Semiconductor
Termometer/Termostat DS1621 dari Maxim/Dallas Semiconductor
EEPROM DS2430 dan DS2433 dari Maxim/Dallas Semiconductor SPI Power
Management Delay Konversi ke Kode Gray CodeVisionAVR juga mempunyai
Automatic Program Generator bernama CodeWizardAVR, yang mengujinkan
Anda untuk menulis, dalam hitungan menit, semua instruksi yang
diperlukan untuk membuat fungsi-fungsi berikut: Set-up akses memori
eksternal Identifikasi sumber reset untuk chip Inisialisasi port
input/output Inisialisasi interupsi eksternal Inisialisasi
Timer/Counter
Inisialisasi Watchdog-Timer Inisialisasi UART (USART) dan
komunikasi serial berbasis buffer yang digerakkan oleh interupsi
Inisialisasi Pembanding Analog Inisialisasi ADC Inisialisasi
Antarmuka SPI Inisialisasi Antarmuka Two-Wire Inisialisasi
Antarmuka CAN Inisialisasi Bus I2C, Sensor Suhu LM75,
Thermometer/Thermostat DS1621 dan Real-Time Clock PCF8563, PCF8583,
DS1302, dan DS1307 Inisialisasi Bus 1-Wire dan Sensor Suhu DS1820,
DS18S20 Inisialisasi modul LCD CodeVisionAVR merupakan hak cipta
dari Pavel Haiduc, HP InfoTech s.r.l.
Instalasi CodeVisionAVR.
Anda dapat memperoleh file instalasi CodeVisionAVR dengan cara
mendownload pada situs pembuatnya yaitu HP InfoTech di
http://www.hpinfotech.com. File yang dapat didownload adalah tipe
evaluation yang artinya mempunyai keterbatasan, salah satunya
adalah ukuran
-
32
program yang dapat dikompilasi terbatas. Contoh yang digunakan
adalah CodeVisionAVR versi 1.24.7a. Klik ganda file setup.exe yang
didapat dari proses download dari situs HP InfoTech.
Gambar 1. Ikon file setup.exe
Untuk pilihan bahasa pilih English, klik OK, seperti pada Gambar
2.
Gambar 2. Pilihan bahasa
Kemudian akan muncul kotak dialog seperti pada Gambar 3, klik
tombol next.
Gambar 3. Klik tombol next
-
33
Selanjutnya pada kotak dialog Licence Agreement, pilih I accept
the agreement lalu klik tombol next seperti pada Gambar 4.
Gambar 4. Menyetujui syarat-syarat yang diberikan
Berikutnya kotak dialog Select Destination Location seperti pada
Gambar 5 menanyakan tempat dimana software akan diletakkan. Gunakan
tempat yang telah ditentukan lalu klik tombol next.
Gambar 5. Menentukan lokasi tujuan
-
34
Akan muncul kotak dialog yang menginformasikan bahwa tempat
tersebut belum ada sebelumnya. Klik tombol Yes untuk membuat tempat
baru tersebut seperti yang ditunjukkan oleh Gambar 6.
Gambar 6. Setuju untuk membuat tempat baru Kemudian muncul kotak
dialog seperti pada Gambar 7 untuk menanyakan nama program shortcut
pada menu Start dari Windows. Lanjutkan dengan menekan tombol
next
Gambar 7. Nama folder pada Start Menu
-
35
Program CodeVisionAVR telah siap untuk di-install. Tekan tombol
Install seperti pada Gambar 8. Maka proses instalasi akan bekerja
seperti ditunjukkan oleh Gambar 9. Setelah selesai akan dimunculkan
kotak dialog informasi seperti pada Gambar 10.
Gambar 8. Nama folder pada Start Menu
Gambar 9. Proses instalasi sedang berlangsung
-
36
Gambar 10. Informasi tambahan Klik tombol next pada Gambar 10
untuk mengakhiri proses instalasi. Setelah kotak dialog seperti
yang ditunjukkan oleh Gambar 11 muncul, Anda dapat menekan tombol
Finish dengan pilihan langsung menjalankan software CodeVisionAVR
atau tidak
Gambar 11. Proses instalasi selesai
-
37
Un-Install CodeVisionAVR.
Bila suatu saat Anda tidak membutuhkan aplikasi CodeVisionAVR,
Anda dapat membuang hasil instalasi dari komputer Anda. Pada menu
Start dari Windows, klik shortcut Uninstall CodeVisionAVR C
Compiler Evaluation seperti pada Gambar 12.
Gambar 12. Shortcut untuk melakukan un-install
Maka kotak dialog seperti pada Gambar 13 akan muncul untuk
menanyakan keseriusan Anda. Klik tombol Yes untuk membuang aplikasi
tersebut dari komputer Anda.
Gambar 13. Yakin akan membuang aplikasi dari computer
Berikutnya proses pembuangan aplikasi berlangsung seperti
ditunjukkan oleh Gambar 14. Lalu kotak dialog seperti Gambar 15
akan muncuk, klik OK untuk menutup proses pembuangan.
Gambar 14. Proses un-install sedang berlangsung
-
38
Gambar 15. Proses selesai
Proses pembuangan tersebut biasanya tidak bersih, artinya masih
ada file yang tertinggal. Anda dapat melanjutkan dengan melakukan
proses delete secara manual menggunakan aplikasi windows explorer.
Membuat Project dengan CodeVisionAVR.
Pada penjelasan berikutnya, sebagai contoh digunakan modul AVR
yang mempunyai hubungan sebagai berikut: PortA terhubung dengan 8
buah LED dengan operasi aktif high PortB terhubung dengan 8 buah
saklar dengan operasi aktif high PortC terhubung dengan LCD
alphanumeric 16 kolom x 2 baris Jalankan aplikasi CodeVisionAVR
dengan cara melakukan klik ganda pada shortcut ikon CodeVisionAVR
yang terbentuk pada Desktop.
Gambar 16. Ikon CodeVisionAVR pada Desktop
Sebuah Splash Screen akan muncul seperti ditunjukkan oleh Gambar
17. Informasi tentang versi yang dipakai dan keterangan evaluation
akan terlihat Gambar
Gambar 17. Tampilan Splash Screen
-
39
Beberapa detik kemudian IDE dari CodeVisionAVR akan muncul
seperti yang ditunjukkan oleh Gambar 18.
Gambar 18. IDE CodeVisionAVR
Untuk memulai membuat project baru, pada menubar, pilih File
New, seperti yang ditunjukkan oleh Gambar 19Untuk memulai membuat
project baru, pada menubar, pilih File New, seperti yang
ditunjukkan oleh Gambar 19
Gambar 19. Membuat file baru
-
40
Anda harus membuat sebuah project sebagai induk desain dengan
memilih Project, lalu klik tombol OK seperti pada Gambar 20.
Gambar 20. Membuat project baru Berikutnya Anda akan ditanya
apakah akan menggunakan CodeWizardAVR. Tentu saja lebih
menyenangkan bila Anda memilih jawaban ya dengan cara menekan
tombol Yes seperti pada Gambar 21.
Gambar 21. Memilih untuk menggunakan CodeWizardAVR Tampilan
CodeWizardAVR yang sederhana namun lengkap ditunjukkan oleh Gambar
22. Pilih Chip dengan IC yang Anda gunakan. Sebagai contoh Anda
memilih Chip ATmega8535. Tab-tab pada CodeWizardAVR menunjukkan
fasilitas yang dimiliki oleh chip yang Anda pilih. Cocokkan pula
frekuensi kristal yang Anda gunakan pada bagian Clock. Pengisian
frekuensi clock digunakan oleh software untuk menghitung
rutin-rutin seperti delay agar diperoleh perhitungan yang cukup
akurat.
-
41
Gambar 22. CodeWizardAVR pada tab Chip
Berikutnya Anda akan menginisialisasi Port A yang terhubung
dengan LED. LED merupakan modul output. Pada tab Port bagian Port
A, ubah bagian Data Direction menjadi OUT dengan nilai output sama
dengan 0 seperti pada Gambar 23. Artinya Port Adigunakan sebagai
port output dengan nilai awal nol setelah kondisi reset. Kemudian
lakukan inisialisasi Port B seperti pada Gambar 24. Port B
tersambung dengan saklar sebagai modul input. Pada sub-tab Port B,
yakinkan Data Direction pada posisi IN dengan resistor pullup
internal yang disingkat dengan huruf P. Dengan mengaktifkan
resistor pull-up internal, Anda tidak perlu menambahkan resistor
pull-up pada saklar.
Gambar 23. Seting Port A sebagai pin output
-
42
Gambar 24 Gambar 25
Gambar 24. Seting Port B sebagai pin input dengan pull-up
resistor Gambar 25. Seting LCD pada Port C
LCD alphanumeric yang dihubungkan dengan Port C haruslah
mempunyai pengkawatan seperti yang ditunjukkan oleh Gambar 25. Pada
tab LCD, pilihlah Port C.
Karena pada contoh ini tidak digunakan fasilitas lain maka
seting CodeWizardAVR siap disimpan dalam file. Pada menu
CodeWizardAVR, pilih File Generate, Save and Exit, seperti yang
ditunjukkan oleh Gambar 26.
-
43
Gambar 26. Menyimpan seting Agar file yang dihasilkan tidak
berantakan, buatlah sebuah folder baru, misalnya folder bernama my
project, seperti yang ditunjukkan oleh Gambar 27.
Gambar 26. Membuat folder baru
-
44
Kemudian masuk kedalam folder tersebut untuk menyimpan file-file
yang dihasilkan oleh CodeWizardAVR. Yang pertama Anda diminta untuk
memberikan nama file C yang dihasilkan. Misalnya beri nama coba,
lalu klik tombol Save. Lebih jelas pada Gambar 27.File tersebut
nantinya akan mempunyai akhiran .C.
Gambar 27. Menyimpan file pertama Yang kedua Anda diminta untuk
memberikan nama file project yang dihasilkan. Misalnya beri nama
coba, lalu klik tombol Save. Lebih jelas pada Gambar 28. File
tersebut nantinya akan mempunyai akhiran .prj.
Gambar 28. Menyimpan file kedua
-
45
Yang terakhir Anda diminta untuk memberikan nama file project
CodeWizard yang dihasilkan. Misalnya beri nama coba, lalu klik
tombol Save. Lebih jelas pada Gambar 29. File tersebut nantinya
akan mempunyai akhiran .cwp.
Gambar 29. Menyimpan file ketiga Setelah ketiga file disimpan
maka pada Project Navigator akan muncul nama project beserta file
C-nya. Secara bersamaan isi file C akan dibuka pada jendela editor
seperti ditunjukkan oleh Gambar 30.
Gambar 30. Project baru telah siap dalam hitungan detik Sekarang
Anda coba untuk menyisipkan instruksi utama. Instruksi ini
ditambahkan pada badan program file coba.c seperti yang ditunjukkan
oleh Gambar 31.
-
46
Gambar 31. Menambahkan inti program Program tambahan tersebut
bertujuan untuk menampilkan kata-kata pada LCD kemudian menampilkan
nilai pada saklar pada LED yang terpasang. Jika nanti saklar
diaktifkan maka LED yang bersesuaian akan aktif pula. Kemudian
pilih menu Project Compile untuk melakukan kompilasi seperti yang
ditunjukkan oleh Gambar 32. Lalu kotak dialog seperti ditunjukkan
Gambar 33 akan muncul. Klik tombol OK.
Gambar 32. Melakukan kompilasi
-
47
Gambar 33. Informasi hasil kompilasi
Program yang Anda buat siap untuk ditransfer kedalam
mikrokontroler. Sebelumnya Anda harus melakukan seting pada
programmernya. Pada menu pilih Setting Programmer, seperti pada
Gambar 34.
Gambar 34. Melakukan seting pada programmer
-
48
Pilihlah programmer sesuai dengan yang Anda gunakan. Pada Gambar
35 ditunjukkan menggunakan programmer Kanda Systems STK200+/300
sebagai contoh. Programmer ini menggunakan kabel paralel yang
terhubung dengan port paralel pada komputer Anda.
Gambar 35. Menggunakan programmer STK200+/300
Kemudian pilih menu Project Configure, seperti yang ditunjukkan
oleh Gambar 36. Kotak dialog pada Gambar 37 akan muncul, pada tab
After Make, pilih Program the Chip. Lalu klik tombol OK.
Gambar 36. Melakukan konfigurasi project
-
49
Gambar 37. Memilih opsi Program the Chip After Make
Setelah melakukan seting, lakukan make project dengan memilih
menu Project Make, seperti ditunjukkan oleh Gambar 38. Apabila
tidak ada kesalahan maka kotak dialog informasi seperti pada Gambar
39 akan muncul. Klik tombol Program untuk mentransfer program
kedalam mikrokontroler.
Gambar 38. Melakukan make project
-
50
Gambar 39. Kotak dialog informasi hasil make
Apabila muncul kotak dialog seperti pada Gambar 40 menandakan
telah terjadi suatu hal yang menyebabkan proses transfer gagal.
Penyebabnya adalah: suplai tegangan mikrokontroler dan programmer
belum dinyalakan, tipe programmer tidak sama dengan yang digunakan,
alamat port paralel tidak cocok, atau mikrokontrolernya rusak.
Gambar 40. Gagal melakukan transfer program
-
51
Bila kerusakan seperti yang ditampilkan oleh Gambar 40 telah
diperbaiki atau bila tidak ada kerusakan maka proses transfer atau
yang umum disebut dengan proses download akan berlangsung seperti
yang ditunjukkan oleh Gambar 41.
Gambar 41. Proses transfer ke mikrokontroler
Coba Anda perhatikan yang terjadi dengan modul yang terpasang,
apakah pada LCD muncul tulisan seperti yang telah Anda program dan
bila saklar diubah posisinya maka LED yang bersesuaian akan
menyala. Bila Anda ingin menambahkan instruksi lain maka Anda dapat
melakukan penyuntingan program pada file .C-nya. Kemudian lakukan
kompilasi dan make project berikutnya proses download.
LINE TRACER 2 Pengertian line tracer:
Sebuah line-following robot atau disebut juga line follower
sangat sering dijumpai dan dibuat oleh para penghobi robot. Banyak
sekali kompetisi robotik yang berupa lomba line following. Line
atau jalur yang di ikuti biasanya merupakan jalur gelap diatas
permukaan terang atau sebaliknya. Robot mendeteksi garis dengan
cara mengukur intensitas cahaya yang di pantulkan dari permukaan
yang dilaluinya. Intensitas cahaya yang di pantulkan permukaan
gelap lebih sedikit dari pada yang dipantulkan oleh permukaan yang
terang.
PERGERAKAN DT-ROBOT LINE FOLLOWER
Gerakan Keterangan
Lurus Motor kiri dan motor kanan berputar maju dengan
kecepatan
yang sama Belok Kiri Motor kiri dan motor kanan berputar maju
dengan kecepatan
motor kanan lebih besar daripada kecepatan motor kiri
-
52
Belok Kanan Motor kiri dan motor kanan berputar maju dengan
kecepatan
motor kiri lebih besar daripada kecepatan motor kanan Tikung
Kiri Motor kiri berhenti dan motor kanan berputar maju dengan
kecepatan tertentuTikung Kanan Motor kanan berhenti dan motor
kiri berputar maju dengan
kecepatan tertentuPutar Kiri Motor kiri berputar mundur dan
motor kanan berputar maju
Putar Kanan Motor kiri berputar maju dan motor kanan berputar
mundur
Mundur Motor kiri dan motor kanan berputar mundur
Stop Motor kiri dan motor kanan berhenti
DT-SENSE LINE-TRACKING SFH 4 SENSOR
Gambar. Tata Letak DT-SENSE LINE TRACKING SFH 4 SENSOR
ProsedurPengujian :
1. Hubungkan sumbercatu daya 5 VDC dan ground-nya masing-masing
pada pin 2 dan pin 1 konektor J4 DTSENSE LINE-TRACKING SFH 4
SENSOR.
2. Hubungkan tegangan 5 VDC ke pin 4 konektor J4 untuk
mengaktifkan/menyalakan LED. 3. Bila tidak ada masalah pada modul,
maka seluruh LED (4 buah) akan menyala. 4. Letakkan modul sensor di
atas kertas/jalur berwarna putih dan ukur tegangan output
masing-
masing sensor (pada pin 5 - 8 konektor J4). 5. Atur variabel
resistor kalibrasi untuk sensor ke-1 sehingga tegangan output
sensor ke-1
bernilai sekitar 0,1 - 0,2 VDC.
-
53
6. Atur variabel resistor kalibrasi untuk sensor-sensor yang
lain sehingga tegangan output masing-masing sensor juga bernilai
sekitar 0,1 - 0,2 VDC.
7. Letakkan modul sensor di atas kertas/jalur berwarna hitam dan
ukur tegangan output masing-masing sensor (pada pin 5 - 8 konektor
J4).
8. Nilai tegangan output masing-masing sensor akan berubah
menjadi lebih tinggi (sekitar 3,2 - 3,4 VDC).
ALGORITMA LINE FOLLOWING
Bila sensor garis yang terpasang pada DT-ROBOT memiliki 4 buah
sensor,Maka semua gerakan robot juga ditentukan oleh hasil
pembacaan keempat Sensor tersebut. Misalkan bila sensor berada
tepat di atas jalur maka hasil pembacaannya bernilai 1 dan bila
sensor tidak mendeteksi jalur maka hasil pembacaannya bernilai 0.
Contoh keputusan yang dapat diambil berdasarkan Hasil pembacaan
sensor dapat dilihat pada table berikutini.
Hasil Sensor Contoh Keputusan Yang Dapat Diambil 0110 Jalur
tepat di tengah. Robot bergerak lurus. 0010 Jalur agak menyimpang
ke kanan. Robot belok kanan. 0011 Jalur menyimpang ke kanan. Robot
tikung kanan. 0001 Jalur ada di ujung ke kanan. Robot putar kanan.
0111 Kemungkinan ada tikungan ke kanan. Robot putar kanan. 0100
Jalur agak menyimpang ke kiri. Robot belok kiri. 1100 Jalur
menyimpang ke kiri. Robot tikung kiri. 1000 Jalur ada di ujung ke
kiri. Robot putar kiri. 1110 Kemungkinan ada tikungan ke kiri.
Robot putar kiri. 1111 Kemungkinan ada perempatan. Robot bergerak
lurus. 0000 Robot keluar jalur. Jalankan algoritma untuk kembali ke
jalur
TATA LETAK KOMPONEN DT-ROBOT LINE FOLLOWER
gambar 1.gambar layout line tracer dari sisi atas
-
54
B. PenjelasanBagian-Bagian DT Robot Line
gambar 3.Baut tempat baterai harus di lepas gambar4.Baut
untukbracket(dibawah tempat
terlebih dahulu saat mengganti bracket baterai), dilepas saat
mengganti bracket
(untuk memasang jenis motor berbeda) (untuk memasang jenis motor
berbeda)
gambar6. Baut untuk LCD, dilepas lebih gambar5. Baut untuk lampu
digunakan
dulu saat memasang motor berjenis metal gear. dulu saat
mengganti spacer.
-
55
Pertama, dengan mengatur parameter-parameter yang tersedia
melalui software GUI yang disediakan .Algoritma tersebu tsudah
terprogram di robot. Di dalam DVD yang disertakan ,algoritma
default tersebut disimpan dengan nama file default.hex
untukprogramdan default.eep untuk parameter awal.
Padasaat DT-ROBOT LINE FOLLOWER pertama kali dinyalakan, pada
LCD akan tampil Menu Tracking yang ditandai dengan tulisan "READY"
pada baris bawah dan kombinasi digital hasil pembacaan sensor pada
baris atas.
XXXX
READY!
Jika Tombol TS1 ditekan, makaDT-ROBOT LINE FOLLOWER akan mulai
melakukan line following dan pada LCD akan tampil tulisan seperti
berikut ini.
TRACKING
START!
Untuk menghentikan line following,dapat dilakukan dengan
menekanTombo lTS2 sehingga DT-ROBOT LINE FOLLOWER kembalike Menu
Tracking.
Pada saat DT-ROBOT LINE FOLLOWER berada pada Menu Tracking, dan
Tombol TS2 ditekanselama 2 detik, maka DT-ROBOT LINE FOLLOWER akan
Berpindah ke menu selanjutnya yaitu Menu Raw Data.
SSS SSS
SSS SSS
Pada posisi Menu Raw Data ini pada LCD akan tampil nilai hasil
pembacaan sensor sehingga pengguna dapat melakukan pengaturan pada
variable resistor masing-masing sensor serta mencatat nilai sensor
jika berada di atas jalur dan nilai sensor jika berada di atas
permukaan selain jalur. Untuk berpindah dari Menu Raw Data ke menu
selanjutnya dapat dilakukan dengan menekan Tombol TS2 selama 2
detik. Menu selanjutnya adalah Menu Threshold yang ditandai dengan
tampilan LCD yang menyerupai gambar berikut ini.
XXXX
Th = YYY
Threshold atau Batas merupakan sebuah nilai yang digunakan untuk
mengkategorikan apakah sensor berada di atas jalur atau tidak.Untuk
mode Black Track yaitu jalur gelap di atas permukaan terang, jika
nilai hasil pembacaan sensor lebih besar dari pada nilai Batas maka
akan dikategorikan sebagai jalur (data digital bernilai 1).
Sedangkan untuk mode White Track yaitu jalur terang di atas
permukaan gelap, jika nilai hasil pembacaan sensor lebih kecil atau
sama
-
56
dengan nilai Batas maka akan dikategorikan sebagai jalur (data
digital bernilai 1).Untuk menaikkan nilai Batas dapatdilakukan
dengan menekan Tombol TS1 sedangkan untuk menurunkan nilai Batas
dapat dilakukan dengan menekan Tombol TS1 dan Tombol TS2 secara
bersamaan.
Nilai Batas akan disimpan pada EEPROM DT-ROBOT LINE FOLLOWER
jika pengguna berpindah ke menu selanjutnya dengan menekan Tombol
TS2 selama 2 detik. Menu selanjutnya adalah Menu Track Mode yang
ditandai dengan tampilan LCD yang menyerupai gambar berikut
ini.
Black
Track
Pada posisi Menu Track Mode, pengguna dapat menentukan apakah
jalur yang akan dilalui oleh DT-ROBOT LINE FOLLOWER termasuk
kategori Black Track yaitu jalur gelap di atas permukaan terang
atau White Track yaitu jalur terang di atas permukaan gelap.Untuk
merubah track mode dapat dilakukan dengan menekan Tombol TS1. Track
mode akan disimpan pada EEPROM DT-ROBOT LINE FOLLOWER jika pengguna
berpindah ke menu selanjutnya dengan menekan Tombol TS2 selama 2
detik.
DT-ROBOT LINE FOLLOWER GUI
Untuk memudahkan bereksperimen dengan mengatur
parameter-parameter algoritma line following yang disertakan, maka
pada paket DT-ROBOT LINEFOLLOWER juga tersedia software GUI yaitu
DT-ROBOT-LINE-FOLLOWER-GUI. Untuk mengatur parameter-parameter
telah tersimpan pada DT-ROBOTLINE FOLLOWER, hubungkan DT-ROBOT LINE
FOLLOWER dengan PC melalui jalur komunikasi UART menggunakan kabel
serial yang disertakan (parameter komunikasi UART dapat dilihat
pada bagian COM Setting).Berikut tampilan dari GUI beserta
penjelasan tentang bagian-bagiannya.
gambar8.contoh pemprogaman pada line tracer
-
57
Keterangan :
A = COM Setting H = Sensor
B = Connection Status I = Left Motor Action
C = Test Connection J = Left Motor Speed
D = Track Mode K = Right Motor Action
E = Raw Data L = Right Motor Speed
F = Track Threshold M = Send Setting to DT-ROBOT
G = Digital Data N = DT-ROBOT LINE FOLLOWER Model
PROSEDUR PENGUJIAN :
1. Hubungkan catu daya ke terminal biru J7 (dari baterai ataupun
dari sumber lain).
2. Nyalakan DT-ROBOT LINE FOLLOWER menggunakan saklar ON/OFF
yang tersedia.
3. Pada LCD akan tampil Menu Tracking yang ditandai dengan
tulisan"READY" pada baris bawah dan kombinasi digital hasil
pembacaan sensor pada baris atas.
4. Tekan Tombol TS1 sehingga DT-ROBOT LINE FOLLOWER akan mulai
melakukan line-following (motor kanan dan/atau kiri akan
berputar).
5. Tekan Tombol TS2 untuk kembali ke Menu Tracking.
6. Tekan Tombol TS2 selama 2 detik.
7. DT-ROBOT LINE FOLLOWER akan masuk keposisi Menu Raw Data dan
pada LCD akan tampil nilai hasil pembacaan sensor.
8. Letakkan sensor di atas permukaan terang atau permukaan
gelap. Nilai sensor akan berubah sesuai dengan tingkat kecerahan
permukaan.
9. Hubungkan DT-ROBOT LINE FOLLOWER dan PC menggunakan kabel
serial yang disediakan.
10. Jalankan software DT-ROBOT-LINE-FOLLOWER-GUI.
11. Atur konfigurasi Serial Port yang digunakan melalui tombol
COM Setting.
12. Tekan tombol Test Connection.
-
58
13. Jika koneksi berhasil, maka akan tampil "Connected to
DT-ROBOT" pada bagian Connection Status.
gambar9.Line Tracer Robot
Line Tracer Robot juga ada yang menyebutnya dengan Line Tracker,
Line Following Robot dan sebagainya.
Sedangkan LightFollower adalah robot yang pergerakannya
mengikuti cahaya.
Blok Diagram Rangkaian Robot Line tracer
gambar10.WRC Line Tracer
Cara kerjasecaraumum:
Robot Line tracer ini bekerjadengan sensor -sensor yang terdiri
dari LED atau photo dioda yang tersambung di rangkaian PCB tertentu
yang disambungkan ke motor DC ke 2 roda utama.
-
59
KOMPARATOR
komparator adalah membandingkan dua masukan, yaitu sinyal atau
tegangan dari sensor dengan tegangan referensi. Hasil yang dicapai
adalah output dari sumber (Vcc atau ground) op-amp sesuai tegangan
input mana yang lebih besar.
Gambar11.Rangkain Sensor dan comparator
DRIVER MOTOR DC
Driver motor yang dimaksud adalah suatu rangkaian elektronik
yang memiliki tujuan untuk mengendalikan arah putar dari motor DC.
Jika pada keadaan pertama motor berputar searah jarum jam maka pada
keadaan ke dua motor berputar berlawanan jarum jam. Prinsip ini
yang diperlukan robot untuk maju, belok, dan mundur
Gambar12.rangkaian motor DC Gambar13.rangkain motor DC
-
60
PRINSIP GERAK MOTOR DC
Robot line tracer dapat berjalan mengikuti perbedaan warna
gelap/terang pada alasnya. Prinsip geraknya terdapat pada perubahan
arah putar dari motornya, pada robot ini roda kanan dan kiri
dikendalikan dengan driver motor secara terpisah. Untuk lebih
jelasnya dapat dilihat pada gambar dibawah ini.
Gambar 14 prinsipkerja line tracer Gambar 15.prinsip kerja line
tracer [12]