5 Universitas Kristen Petra 2. TEORI PENUNJANG Pada bab ini akan dijelaskan dasar-dasar dari komponen-komponen yang akan digunakan dalam perancangan perangkat keras (hardware) tugas akhir. The International Standard Organization dalam ISO/TR/8373-2.3 mendefinisikan robot sebagai berikut: “A robot is an automatically controlled, reprogrammable multipurpose, manipulative machine with several reprogrammable axes, which maybe either fixed in place or mobile for use in industrial automation application. “ Kata kunci dari definisi tersebut adalah reprogrammable dan multipurpose. Reprogrammable terdiri atas dua hal yaitu: • Pertama, gerakan robot dikendalikan oleh program yang telah dituliskan pada dirinya. • Kedua, programnya dapat dimodifikasi dengan mengganti gerakan lengan robot secara signifikan. Sedangkan multipurpose lebih menitikberatkan pada fakta bahwa robot dapat digunakan untuk berbagai macam pekerjaan. Contohnya, sebuah robot pada suatu industri diprogram untuk melakukan pengelasan sedangkan pada industri yang lain robot tersebut digunakan untuk melakukan pekerjaan lain. Secara garis besar, sistem robot dalam dunia industri terdiri atas The Arm sebagai komponen mekanik dan The Controls sebagai alat untuk mengontrol pergerakan dari The Arm. Masing-masing komponen pendukung sistem robot tersebut akan dijelaskan berikut ini. 2.1. Komponen Mekanik Untuk mendukung area kerja atau fungsi yang akan dikerjakan sebuah robot, dibutuhkan beberapa komponen pendukung lainnya. Karena komponen ini berhubungan erat dengan bidang mekanik, maka dapat disebut juga sebagai komponen mekanik. Komponen mekanik yang digunakan terdiri atas mechanical
27
Embed
Kontrol robot lengan pada proses pengecatan menggunakan ...
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
5 Universitas Kristen Petra
2. TEORI PENUNJANG
Pada bab ini akan dijelaskan dasar-dasar dari komponen-komponen yang
akan digunakan dalam perancangan perangkat keras (hardware) tugas akhir. The
International Standard Organization dalam ISO/TR/8373-2.3 mendefinisikan
robot sebagai berikut:
“A robot is an automatically controlled, reprogrammable multipurpose,
manipulative machine with several reprogrammable axes, which maybe either
fixed in place or mobile for use in industrial automation application. “
Kata kunci dari definisi tersebut adalah reprogrammable dan
multipurpose. Reprogrammable terdiri atas dua hal yaitu:
• Pertama, gerakan robot dikendalikan oleh program yang telah dituliskan
pada dirinya.
• Kedua, programnya dapat dimodifikasi dengan mengganti gerakan lengan
robot secara signifikan.
Sedangkan multipurpose lebih menitikberatkan pada fakta bahwa robot
dapat digunakan untuk berbagai macam pekerjaan. Contohnya, sebuah robot pada
suatu industri diprogram untuk melakukan pengelasan sedangkan pada industri
yang lain robot tersebut digunakan untuk melakukan pekerjaan lain.
Secara garis besar, sistem robot dalam dunia industri terdiri atas The Arm
sebagai komponen mekanik dan The Controls sebagai alat untuk mengontrol
pergerakan dari The Arm. Masing-masing komponen pendukung sistem robot
tersebut akan dijelaskan berikut ini.
2.1. Komponen Mekanik
Untuk mendukung area kerja atau fungsi yang akan dikerjakan sebuah
robot, dibutuhkan beberapa komponen pendukung lainnya. Karena komponen ini
berhubungan erat dengan bidang mekanik, maka dapat disebut juga sebagai
komponen mekanik. Komponen mekanik yang digunakan terdiri atas mechanical
Gambar 2.4(a). Proses Pergerakan Armature Pada Motor DC
Sumber: Frank D. Petruzella. Industrial Electronics. Singapore: McGraw-Hill Book Company. 1996, p.183.
Pada gambar 2.4 (a) di atas terlihat bahwa arus DC mengalir dari sumber
tegangan DC melalui kumparan rotor (armature coil), sehingga menyebabkan
rotor berfungsi sebagai magnet buatan. Masing-masing kutub magnet yang
dihasilkan dari magnet permanen dan rotor saling berlawanan. Hal ini
menyebabkan timbulnya gaya tarik-menarik pada masing-masing kutub magnet
tersebut, sehingga rotor bergerak searah jarum jam.
Gambar 2.4(b). Proses Pergerakan Armature Pada Motor DC
Sumber: Frank D. Petruzella. Industrial Electronics. Singapore: McGraw-Hill Book Company. 1996, p.183.
Universitas Kristen Petra
11
Pada saat posisi rotor sejajar dengan magnet permanen dan masing-
masing komutatornya (comutator brush) tidak terhubung pada sumber tegangan,
dikarenakan adanya jarak (gap) antara komutator satu dengan yang lain. Dengan
kata lain arus tidak mengalir pada kawat seperti terlihat pada gambar 2.4 (b).
Maka pada saat ini rotor akan bersifat netral.
Gambar 2.4(c). Proses Pergerakan Armature Pada Motor DC
Sumber: Frank D. Petruzella. Industrial Electronics. Singapore: McGraw-Hill Book Company. 1996, p.183.
Ketika rotor mulai bergerak sedikit seperti terlihat pada gambar 2.4 (c)
dan komutator terhubung dengan sumber tegangan yang arah aliran arus listriknya
berlawanan dengan posisi semula. Keadaan tersebut menyebabkan rotor berfungsi
sebagai magnet buatan kembali, dimana posisi masing-masing kutub magnetnya
sejenis dengan kutub magnet dari magnet permanen. Hal tersebut menyebabkan
timbul gaya tolak-menolak pada masing-masing kutub magnet tersebut dan
membuat rotor berputar kembali searah jarum jam. Jadi arah pergerakan sebuah
rotor akan bergantung pada arah dari arus yang diberikan pada kumparan rotor
tersebut.
Gambar 2.5. Torsi yang Dihasilkan Oleh Motor DC
Sumber: Frank D. Petruzella. Industrial Electronics. Singapore: McGraw-Hill Book Company. 1996, p.182.
Universitas Kristen Petra
12
Karena gaya tarik-menarik dan gaya tolak-menolak antara kutub-kutub
magnet dari rotor dan magnet permanen inilah, menyebabkan timbul torsi pada
rotor yang arahnya seperti ditunjukan pada gambar 2.5. Agar didapatkan torsi
yang terus-menerus, biasanya rotor pada sebuah motor DC terdiri atas kumparan
dan komutator yang banyak. Besarnya torsi pada rotor dalam satuan dyne-cm
ditunjukan pada persamaan berikut.
ϕπ
××= aIZa
PT20
(2.2)3
Dimana; T : Torsi (dyne-cm)
P : jumlah kutub
a : jumlah cabang paralel lilitan armature
Z : jumlah lilitan kawat penghantar
Ia : arus listrik pada armature (Ampere)
φ : flux magnet yang melewati armature
Sebuah motor DC akan memiliki besar daya mekanik maksimal ketika
mencapai setengah dari besar torsi maksimum dan setengah dari kecepatan
sudutnya. Berikut ini akan ditunjukan grafik hubungan antara torsi, kecepatan
sudut dan daya dari motor DC, sedangkan daya mekanik maksimum dari motor
DC dapat juga dituliskan dengan persamaan 2.4.
maxmaxmax 41 ω×= TPm (2.4)4
3 Drs Sumanto. Mesin Arus Searah. Yogyakarta: Andi Offset. 1984, p.112. 4 Dennis Clarck, Michael Owings. Building Robot Drive Trains.Robot DNA Series. New York:
McGraw-Hill Book Company. 2003, p.32.
Universitas Kristen Petra
13
Gambar 2.6. Grafik Hubungan antara Torsi, Kecepatan Sudut dan Daya pada
sebuah Motor DC
Sumber: Dennis Clark, Michael Owings. Building Robot Drive Trains. Robot DNA Series. New York: McGraw-Hill Book Company. 2003, p.32.
2.2.2. Operational Amplifier (Op-amp)
Operational amplifier atau biasa disebut dengan Op-amp adalah
komponen IC, dimana banyak transistor digabungkan dalam satu kristal
semikonduktor. Rangkaian Op-amp dalam IC modern merupakan pendekatan
yang baik untuk sifat Op-amp yang ideal. Sifat dari suatu Op-amp yang ideal
adalah sebagai berikut:
• Penguatan Op-amp tak berhingga.
• Tidak ada arus yang masuk atau keluar dari masukannya, berarti
resistifitas masukan RI = ∞.
• Resistifitas keluaran sebesar RO = 0 (nol).
• Tegangan output hanya tergantung dari selisih tegangan input dan tidak
tergantung dari potensial bersama pada kedua input-nya.
Sebuah Op-amp merupakan suatu penguat deferensial dengan penguatan
yang tak berhingga, sedangkan sebuah penguat deferensial adalah suatu penguat
yang memiliki dua input tegangan dan satu output tegangan yang bergantung dari
perbedaan potensial antara kedua input-nya tersebut. Sehingga dapat ditulis
dengan rumus sebagai berikut:
Max Motor Velocity 0
Max
Min
Torque Power
Universitas Kristen Petra
14
( )AVVV 2 INPUT1 INPUTOUT −= (2.5)5
Di mana A adalah faktor penguatan, karena penguatan dari Op-amp tak
berhingga maka persamaan tersebut diatas dapat juga ditulis sebagai berikut:
( )∞−= 2 INPUT1 INPUTOUT VVV (2.6)6
Dari persamaan (2.6) di atas dapat dilihat bahwa besar dari output menjadi
positif tak berhingga, ketika input1 lebih besar dari input2. Ketika input1 lebih kecil
dari input2, besar output-nya menjadi negatif tak berhingga. Berarti ketika input2
tinggi output-nya menjadi rendah. Oleh karena itu input2 disebut juga dengan
inverting input, dalam skema rangkaian biasanya ditandai dengan tanda negatif
(minus). Ketika input1 tinggi output-nya menjadi tinggi. Sebab itu juga input1
disebut juga sebagai non-inverting input dan dalam skema rangkaian biasanya
ditandai dengan tanda positif (+). Tetapi dalam kenyataannya nilai tegangan
output dari sebuah Op-amp adalah terbatas seperti diperlihatkan pada gambar 2.7.
Gambar 2.7. Grafik Hubungan antara Masukan dan Keluaran pada Op-amp Ideal
Sumber: Richard Blocher. Dasar Elektronika. Yogyakarta: Andi Offset. 2003, p.158.
Dan persamaannya dapat ditulis sebagai berikut:
( )∞−= + -ININOUT VVV (2.7)7
5 Richard Blocher. Dasar Elektronika, Yogyakarta: Andi Offset. 2003, p.157. 6 Ibid, p.157 7 Ibid, p.158
Universitas Kristen Petra
15
Dengan kata lain, ketika +INV lebih besar dari pada −
INV , tegangan output-nya
sebesar VMAX. Ketika +INV lebih kecil dari pada −
INV , maka tegangan output-nya
sebesar VMIN.
Umumnya, Op-amp bekerja dengan dual supply, yaitu supply positif (+V)
dan supply negatif (-V). Sedangkan untuk besar tegangan output maksimal sedikit
di bawah nilai supply positif dan tegangan output minimal sedikit di atas nilai
supply negatif. Lambang dari sebuah Op-amp dalam skema rangkaian dapat
dilihat pada gambar 2.8 di bawah ini.
Gambar 2.8. Simbol Skematik Op-amp Ideal
Sumber: Robert F, Coughlin Frederick F, Driscoll. Operational Amplifier and Linier Integrated Circuit. New Jersey: Prentice Hall Company. 1991, p.15.
Karena Op-amp idealnya memiliki penguatan yang tidak terhingga, maka
setiap perubahan tegangan kecil saja dari input akan dihasilkan perubahan yang
cukup besar pada output-nya. Hal ini menjadikan Op-amp tidak stabil dan
penguatannya menjadi tidak terukur (infinite). Agar Op-amp dapat dirangkai
menjadi suatu aplikasi dengan nilai penguatan yang terukur (finite), maka
penguatannya harus dikurangi dengan jalan mengumpan balikan beberapa sinyal
output pada input inverting dari Op-amp yang biasa disebut dengan umpan balik
negatif (negative feedback).
Terdapat dua aturan penting dalam melakukan analisa terhadap rangkaian
Op-amp yang berdasarkan karakteristik Op-amp ideal. Kedua aturan tersebut
adalah.
Universitas Kristen Petra
16
a) Perbedaan tegangan antara input non inverting ( +INV ) dan input inverting
( −INV ) adalah nol ( +
INV - −INV = 0, sehingga +
INV = −INV ).
b) Arus pada input Op-amp adalah nol ( +INI = −
INI = 0).
2.2.2.1. Rangkaian Dasar Inverting amplifier
Rangkaian dasar penguat inverting adalah seperti yang ditunjukkan pada
gambar 2.9, dimana sinyal masukannya dibuat melalui input inverting. Sesuai
dengan namanya, maka polaritas keluaran dari rangkaian penguat inverting ini
akan selalu berbalikan dengan input-nya.
Gambar 2.9. Rangkaian Dasar Penguat Linier Inverting
Sumber: Richard Blocher. Dasar Elektronika. Yogyakarta: Andi Offset. 2003, p.158.
Kaki input non-inverting pada rangkaian ini dihubungkan dengan ground,
sehingga potensialnya sama dengan nol atau A = 0. Input rangkaian (D) dan input
inverting dari Op-amp (B) tersambung melalui sebuah resistor R1, input inverting
(B) dan output dari Op-amp (C) terhubung melalui resistor R2. Dengan meninjau
aturan pertama Op-amp ideal, maka akan dipenuhi +INV - −
INV = 0 atau A – B = 0.
Karena nilai B = 0 dan pin input inverting tidak terhubung langsung ke
ground, maka input inverting pada rangkaian ini dinamakan virtual ground.
Dengan demikian maka dapat dihitung tegangan pada R1 adalah:
0VVVVV
1R
1R
−=−=
in
Bin
Universitas Kristen Petra
17
inR VV 1 = (2.8)
Tegangan pada R2 adalah:
0VVVVV
out2R
out2R
−=−= B
CVV 2R = (2.9)
Kemudian dengan menggunakan aturan kedua, diketahui bahwa:
0==+
−
−
iiii outin (3.0)
Dengan cara mensubtitusikan persamaan (2.8), persamaan (2.9) dan
persamaan (3.0) tersebut di atas, maka akan didapatkan persamaan baru sebagai
berikut:
−=
=+
=+ −
1
in
2
out
2
out
1
in
outin
RV
RV
0RV
RV
iii
−=
1
2
in
out
RR
VV
(3.1) 8
Jika penguatan G didefinisikan sebagai besar penguatan close loop atau
perbandingan tegangan keluaran terhadap tegangan masukan, maka dapat ditulis
bahwa:
−==
1
2
RR
VinVoutG
Impedansi rangkaian inverting didefinisikan sebagai impedansi input dari
sinyal masukan terhadap ground. Karena input inverting (-) pada rangkaian ini
diketahui adalah 0 (virtual ground) maka impendasi rangkaian ini adalah ZIN = R1.
2.2.3. Dasar Konversi Analog ke Digital
Dalam dunia elektronika dikenal dua jenis rangkaian untuk menjembatani
dunia analog dan digital, jenis pertama dikenal dengan rangkaian konversi sinyal
8 Aswan Hamonangan. Analisa rangkaian Op-amp popular. August 23. 2005, p.3. <http://www.electroniclab.com/labanalog/opamp2.html>
Universitas Kristen Petra
18
digital ke sinyal analog atau sering disebut dengan Digital to Analog Converter
(DAC) dan yang kedua adalah rangkaian konversi sinyal analog ke sinyal digital
yang dikenal sebagai Analog to Digital Converter (ADC).
Ketelitian IC DAC ataupun ADC tergantung pada berapa bit sinyal digital
yang diharapkan, yang paling umum dipakai adalah 8-bit sinyal digital. Dengan 8-
bit sinyal digital, sebuah IC DAC dapat membangkitkan tegangan dengan 256
tingkatan. Misalnya tegangan maksimum yang ingin dibangkitkan sebesar 2,55
VDC, maka sebuah IC DAC dapat membangkitkan tegangan 0 sampai dengan 2,55
VDC dengan kenaikan setiap 0,01 VDC. Dengan kata lain input biner bernilai 01B
pada kaki input DAC akan membangkitkan tegangan sebesar 0,01 VDC, biner 10B
membangkitkan tegangan sebesar 0,02 VDC dan seterusnya, sampai FFH (255)
menghasilkan 2,55 VDC.
Begitu pula sebaliknya tegangan 0 sampai dengan 2,55 VDC akan diskala
oleh IC ADC menjadi besaran digital 00H sampai FFH (255). IC ADC yang
banyak dipakai dan mudah ditemui di pasaran Surabaya adalah jenis ADC0801,
ADC0802, ADC0804, ADC0808, ADC 0809 dengan resolusi output sebesar 8-bit
dan masih banyak lagi yang lainnya.
2.2.3.1.Gambaran umum
ADC0808 adalah IC yang dapat mengkonversi sinyal analog ke bentuk
sinyal digital atau Analog to Digital Converter (ADC) yang memiliki jumlah
input analog sebanyak 8 channel dengan resolusi perubahan sebesar 8-bit, dan
berikut adalah beberapa kelebihan dari IC ADC0808:
• Kompatibel dengan semua jenis microprocessor ataupun mikrokontroler.
• Memiliki input analog sebanyak 8 channel yang dapat dipilih melalui
multiplexer address register.
• Resolusi konversi sebesar 8-bit atau sama dengan 255 perubahan.
• Batas tegangan input yang dapat dikonversi pada setiap channel-nya antara
0 sampai dengan +5 VDC.
• Output sesuai dengan spesifikasi level tegangan Transistor-transistor
Logic (TTL).
Universitas Kristen Petra
19
ADC0808 adalah IC pengubah tegangan analog menjadi digital dengan
masukan berupa 8 channel input yang dapat dipilih. IC ADC0808 dapat
melakukan proses konversi secara terkontrol ataupun free running. Proses
konversi secara terkontrol merupakan sebuah proses konversi perubahan tegangan
dari analog ke digital berdasarkan perintah dari mikrokontroler (digunakan pada
tugas akhir ini).
2.2.3.2. Metode Successive Approximation Register (SAR).
Metode yang digunakan untuk mengkonversi data analog ke bentuk
data digital pada IC ADC0808 adalah metode Successive Approximation Register
(SAR) atau biasa disebut dengan teknik pendekatan beruntun.
Prinsip dasar dari metode ini adalah pertama, membangkitkan suatu
taksiran awal terhadap nilai input pada saat ini. MSB dari taksiran awal di-switch
‘on’ (10000000B), mengubahnya menjadi sinyal analog dan kemudian
membandingkannya dengan input tegangan yang akan dikonversi.
Jika input tegangan konversi lebih besar dari tegangan taksiran, maka bit
MSB dibiarkan (tetap di-switch ‘on’) dan bit berikutnya di-switch ‘on’, sehingga
data menjadi (11000000B). Data 8-bit tersebut akan dirubah menjadi tegangan
analog dan akan menjadi taksiran awal berikutnya, yang nantinya dibandingkan
kembali dengan tegangan analog yang akan dikonversi.
Jika input tegangan konversi lebih kecil atau sama dengan tegangan
taksiran, maka bit saat ini di-switch ‘off’ dan bit berikutnya di-switch ‘on’,
sehingga data menjadi (10100000B). Data 8-bit tersebut akan dirubah menjadi
tegangan analog dan akan menjadi taksiran awal berikutnya, yang nantinya
dibandingkan kembali dengan tegangan analog yang akan dikonversi.
Dengan kata lain, bilamana input tegangan yang akan dikonversi lebih
besar dari tegangan taksiran, maka bit saat ini dibiarkan tetap ‘1’ dan dicoba bit
berikutnya. Jika bit saat ini tidak lebih besar, maka bit sekarang dibuat ‘0’ dan
dicoba bit berikutnya. Algoritma dari metode teknik pendekatan beruntun ini
dapat dilihat pada gambar 2.10.
Universitas Kristen Petra
20
Gambar 2.10. Algoritma Teknik Pendekatan Beruntun ADC
Sumber: Ir. Sofyan H. Nasution, M.Sc. Teknik Perantaraan Mikroprosesor. Jakarta: Erlangga. 1988, p.214.
2.2.3.3.Cara kerja ADC0808
Proses konversi dilakukan ketika pin START dan ALE diberikan logic
‘high’. Hasil konversi dikirimkan ke Tri State Output Latch Buffer yang
kompatibel dengan level TTL, yaitu sebuah buffer penahan yang bersifat tiga
tingkat.
Tingkat pertama terjadi pada saat data hasil konversi masuk ke input dari
bagian ini. Tingkat kedua saat data tersebut di latch (otomatis) ke dalam buffer
internalnya, dan tingkat ketiga saat pin Output Enable (OE) diberikan logic ‘high’,
sehingga data yang ada dalam buffer internal dikirim ke bagian output (D0-D7).
Selama kaki OE masih ber-logic ‘low’, maka jalur output (D0-D7) bersifat
high impedance (impedansi tinggi), sehingga jalur ini masih dapat digunakan oleh
komponen lain yang mempunyai kemampuan akses dengan menggunakan sistem
bus.
Universitas Kristen Petra
21
Gambar 2.11. Blok Diagram ADC0808
Sumber: National Semiconductor. ADC0808/ADC0809 8-bit Compatible A/D Converters with 8-Channel Multiplexer. 1999, p.1. <http://www.national.com/ds.cgi/da/adc0808.pdf>
Input analog sebanyak 8 channel pada ADC0808 secara selektif akan diset
‘on’, sesuai dengan data yang di latch kedalam 3-bit multiplexer address register
yaitu pada pin ADD A, ADD B dan ADD C. Tabel 2.1 berikut akan menunjukan
pemilihan channel input pada ADC0808.
Tabel 2.1. Channel input ADC0808
Sumber: National Semiconductor. ADC0808/ADC0809 8-bit Compatible A/D Converters with 8-Channel Multiplexer. 1999, p.3. <http://www.national.com/ds.cgi/da/adc0808.pdf>
Universitas Kristen Petra
22
Berikut ini akan ditunjukan timing diagram dari kerja ADC0808 yang
terjadi pada setiap kaki pin dari IC ADC0808.
Gambar 2.12. Timing Diagram ADC0808
Sumber: National Semiconductor. ADC0808/ADC0809 8-bit Compatible A/D Converters with 8-Channel Multiplexer. 1999, p.7. <http://www.national.com/ds.cgi/da/adc0808.pdf>
Pada timing diagram di atas, tampak proses konversi mulai terjadi saat
sinyal ALE dan START ber-logic ’high’. Sinyal analog pada masing-masing
channel sesuai yang ditunjuk berdasarkan pin ADD A, ADD B dan ADD C akan
dikonversi menjadi 8-bit sinyal digital. Proses konversi akan berakhir pada saat
pin EOC berubah dari logic low ke logic high. Data hasil konversi akan muncul di
data bus (D0-D7) pada saat pin OE ber-logic high.
2.2.4. Mikrokontroler
Mikrokontroler merupakan kombinasi dari Central Processing Unit
(CPU), memori dan input/output (I/O) dalam sebuah level chip, sehingga
membentuk suatu sistem minimum sederhana dalam sebuah Integrated Circuit
(IC).
Universitas Kristen Petra
23
Mikrokontroler AT89C51 adalah mikrokontroler yang diproduksi oleh
ATMEL, dengan 4 Kbyte Flash PEROM (Programmable and Erasable Read
Only Memory). AT89C51 merupakan memori yang menggunakan teknologi
nonvolatile memori, dimana isi memori tersebut dapat diisi ulang ataupun dihapus
berkali-kali. Berikut adalah beberapa kemampuan-kemampuan dari
mikrokontroler AT89C51.
• CPU 8-bit yang compatible dengan keluarga MCS-51.
• 4 kbyte Sistem Reprogrammable Flash Memory dengan ketahanan 1000
kali ditulis dan dihapus.
• Dapat bekerja pada frekuensi 0-24 MHz.
• Random Access Memory (RAM) internal 128 x 8-bit.
• Memiliki 32 pin I/O yang programmable.
• Dua buah timer/counter 16-bit.
• Enam buah jalur interupsi (3 interupsi eksternal dan 3 interupsi internal).
• Sebuah port serial yang programmable.
• Kecepatan pelaksanaan intruksi per-siklus sama dengan satu mikrodetik,
pada frekuensi clock 12 MHz.
2.2.4.1.Deskripsi Pin AT89C51
Mikrokontroler memiliki blok diagram seperti yang terlihat pada gambar
berikut ini.
Gambar 2.13. Blok Diagram AT89C51
Sumber: STTS. Pengetahuan Dasar AT89Cx051 Bagian I. October 20. 1999, p.2. <http://www.sttsedu.ac.id/budhisutanto/mcs51/tutorial.html>
Universitas Kristen Petra
24
Seperti gambar di atas, di dalam IC mikrokontroler AT89C51 selain
Central Processing Unit (CPU) juga terintegrasi didalamnya:
a) Random Access Memory (RAM) sebesar 128-byte. RAM merupakan
tempat menyimpan sementara yang akan terhapus jika sistem
mikrokontroler dimatikan.
b) Read Only Memory (ROM) sebesar 4 Kbyte. ROM ini berisikan program-
program yang akan dijalankan oleh mikrokontroler. ROM hanya bisa
dibaca tidak dapat ditulis pada saat eksekusi program. Mikrokontroler
menggunakan jenis Electric Erasable Programmable ROM (EEPROM)
dapat dihapus dengan memberikan tegangan +5 VDC selama beberapa saat
pada pin tertentu.
c) Timer Register sebanyak dua buah yaitu timer 0 dan timer 1 yang masing-
masing memiliki kapasitas 16-bit, register ini digunakan sebagai:
• Delay atau waktu jeda, delay memberikan waktu kepada sebuah
piranti I/O yang dikontrolnya untuk bekerja selama rentang waktu
tertentu.
d) Port Input/Output (I/O), mikrokontroler mempunyai 4 buah port 8-bit
yang dapat dikontrol sebagai I/O yaitu port P0, P1, P2 dan P3. Tetapi
setiap port memiliki fungsi yang berbeda.
• Port P0, mempunyai fungsi sebagai port data dan alamat. Jika
mikrokontroler sedang mengakses alamat, maka port P0 aktif
sebagai pembawa lower address 8-bit (A0-A7). Ketika mengakses
data (bisa input maupun output) port P0 akan berfungsi sebagai
jalur data atau data bus (D0-D7).
• Port P1 tidak memiliki fungsi lainnya selain sebagai port I/O
sehingga port ini sering digunakan untuk mengontrol piranti lain
pada sistem antar muka.
• Port P2 berfungsi sebagai pembawa upper address 8-bit (A8-A15).
Berbeda dengan port P0, port ini tidak bersifat sebagai jalur data
hanya sebagai pembawa alamat. Dengan demikian jelas bahwa
untuk alamat AT89C51 menyediakan 16-bit jalur alamat dan 8-bit
untuk jalur data.
Universitas Kristen Petra
25
• Port P3 selain sebagai port I/O juga memiliki fungsi khusus pada
setiap pin-nya. Tabel 2.2 berikut ini akan memperlihatkan fungsi-
fungsi special dari port P3 pada mikrokontroler AT89C51.
Tabel 2.2. Fungsi Alternatif Port P3
Sumber: Atmel Corporation. 8-bit Microcontroller with 4K Bytes Flash AT89C51. July 22. 2000, p.2. <http://www.atmel.com/dyn/resources/prod_documents/doc2487.pdf>
e) Sepasang port serial yaitu pin transmitter (Tx) dan receiver (Rx) berfungsi
untuk komunikasi serial dengan CPU lain (pin P3.0 dan pin P3.1).
f) Jalur kontrol, sebagai mikrokontroler yang berorientasi kontrol, AT89C51
memiliki pin yang berfungsi secara khusus untuk mengontrol piranti lain
dan untuk melakukan sebuah eksekusi atau mengakses data. Jalur tersebut
terdiri atas:
• PSEN (Program Store Enable) digunakan untuk mengakses
eksternal program memori. Umumnya dihubungkan dengan pin
output enable pada eksternal memori. PSEN akan bernilai ‘low’
pada saat pembacaan program dari eksternal memori dan akan
bernilai ‘high’ pada saat pembacaan program dari internal memori.
• ALE (Address Latch Enable) berfungsi sebagai demultiplexer
(Demux) pada saat port P0 bekerja sebagai multiplexed
address/data bus. Pada paruh pertama memori cycle, pin ALE
mengeluarkan sinyal latch yang menahan alamat ke register
eksternal. Pada paruh kedua memori cycle port P0 akan digunakan
sebagai data bus.
Universitas Kristen Petra
26
• EA (Enable Access) digunakan sebagai input kontrol, jika EA
benilai ‘low’ (dihubungkan ke ground) maka program akan
dijalankan dari eksternal program memori. Jika EA bernilai ‘high’
(dihubungkan pada VCC +5 volt) maka program akan dijalankan
dari internal program memori terlebih dahulu.
• RST (Reset) digunakan sebagai input untuk melakukan reset
terhadap AT89C51. Jika pin RST bernilai ‘high’ selama minimal 2
machine cycle, maka nilai internal register akan dikembalikan
seperti keadaan awal pada saat mikrokontroler mulai bekerja.
g) Oscillator on-chip AT89C51 terdiri dari dua pin XTAL1 dan XTAL2
merupakan input dan output untuk komponen crystal yang berfungsi
sebagai pembangkit pulsa, dimana pulsa ini penting dalam menentukan
siklus mesin dari mikrokontroler.
2.2.4.2.Memori AT89C51
Memori pada intinya berfungsi untuk ‘mengingat’ atau menyimpan suatu
informasi. Memori sangat penting bagi sistem MCS-51 karena semua program
dan data tersimpan dalam memori. Semakin besar kapasitas memori yang
dimiliki, sistem dapat mengakomodasi program yang lebih kompleks dan data
yang lebih banyak. Pada dasarnya memori pada AT89C51 dibagi menjadi dua
yaitu data memori dan program memori, pembagian dua memori ini bertujuan
agar proses kerja dari mikrokontroler dapat lebih cepat.
Semua mikrokontroler dalam keluarga MCS-51 memiliki pembagian
ruangan alamat untuk program dan data. Pemisahan memori data dan memori
program ini memperbolehkan memori data untuk diakses oleh alamat 8-bit.
Sekalipun demikian, alamat data memori 16-bit dapat dihasilkan melalui register
Data Pointer Register (DPTR). DPTR adalah suatu register untuk mengakses
suatu alamat eksternal (komponen diluar AT89C51) dengan lebar 16-bit.
Untuk memori program pada AT89C51, sudah terintegrasi di dalamnya
dan gambar berikut memperlihatkan denah dari memori program mikrokontroler
AT89C51.
Universitas Kristen Petra
27
Gambar 2.14. Peta Memori Program
Sumber: STTS. Pengetahuan Dasar AT89Cx051 Bagian I. October 20. 1999, p.4. <http://www.sttsedu.ac.id/budhisutanto/mcs51/tutorial.html>
RAM dalam mikrokontroler AT89C51 terintegrasi di dalamnya
mempunyai kapasitas 256-byte. Internal data memori memuat empat buah register
banks yang biasa digunakan sebagai alamat, untuk menampung delapan register
yang masing-masing memiliki lebar 1-byte yang diberi nama R0-R7.
Memori data umum atau General Purpose RAM biasa digunakan sebagai
tempat menyimpan variable atau sebagai alamat inisialisasi stack pointer, memori
ini hanya dapat diakses per-byte. Pembagian internal data memori pada AT89C51
dapat dilihat pada gambar di bawah berikut ini.
Universitas Kristen Petra
28
Gambar 2.15. Pembagian Internal Data Memori
Sumber: STTS. Pengetahuan Dasar AT89Cx051 Bagian I. October 20. 1999, p.5. <http://www.sttsedu.ac.id/budhisutanto/mcs51/tutorial.html>
Untuk memori umum internal beralamat dari 30H - 7FH. Sedangkan
untuk register dengan fungsi khusus atau yang biasa disebut dengan Special
Function Register (SFR) beralamat 80H – FFH, alamat tersebut mencakup alamat
port, accumulator, register B, timer, dan sejumlah register kontrol. Beberapa SFR
hanya dapat diakses per-byte, tetapi beberapa SFR juga dapat diakses per-bit (bit-
addressable). Pembagian alamat dari Special Function Register (SFR) dapat
dilihat pada gambar berikut.
Universitas Kristen Petra
29
Gambar 2.16. Pembagian Alamat Pada Special Function Register (SFR)
Sumber: STTS. Pengetahuan Dasar AT89Cx051 Bagian I. October 20. 1999, p.7. <http://www.sttsedu.ac.id/budhisutanto/mcs51/tutorial.html>
2.2.5. Liquid Crystal Display (LCD)
LCD adalah salah satu komponen elektronik yang dapat digunakan untuk
menampilkan suatu bentuk tampilan (huruf, angka dan karakter lain yang dapat
kita bentuk sendiri). Kontrol LCD dilakukan melalui register 8-bit, ada dua
macam yaitu IR (Instruction Register) dan DR (Data Register). Kedua register itu
dapat dipilih melalui pin RS (Register Select).
Universitas Kristen Petra
30
Tabel 2.3. Nomor Pin dan Simbol LCD
No Simbol Level Fungsi
1 Vss - Power supply 0V (GND)
2 Vcc - Power supply 5V± 10%
3 Vcc - Power supply LCD drive
4 RS H/L H = Data input
L = Instruction input
5 R/W H/ H = READ ; L = WRITE
6 E H/L Chip 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 - Back Light 4 – 4,2V ,
50-200mA
16 V-BL - Back Light 0V (GND)
Sumber: Seiko Corporation. Liquid Crystal Display Module M1632 User Manual. Japan: Seiko Instruments Inc. 1987, p.5. Dalam penggunaannya, LCD juga mengenal berbagai macam instruksi
(seperti: Display Clear, Cursor Shift, Blink, dan sebagainya) untuk menangani
masalah tampilannya. Instruksi-instruksi tersebut dapat diberikan oleh
mikrokontroler pada LCD melalui register IR.
Data yang diterima oleh LCD adalah data sesuai karakter ASCII dan
ditambah dengan karakter-karakter khusus yang tersedia dalam LCD. Tersedia
juga 8 alamat RAM yang dapat dipakai untuk membuat karakter sendiri. Untuk
membaca dan menulis instruksi atau data ke atau dari LCD, mikrokontroler harus
menyesuaikan dengan timing characteristic seperti yang terlihat pada gambar
berikut ini.
Universitas Kristen Petra
31
Gambar 2.17. Timing Diagram Untuk Proses Penulisan ke LCD
Sumber: Seiko Corporation. Liquid Crystal Display Module M1632 User Manual. Japan: Seiko Instruments Inc. 1987, p.14.
Gambar 2.18. Timing Diagram Untuk Proses Pembacaan dari LCD
Sumber: Seiko Corporation. Liquid Crystal Display Module M1632 User Manual. Japan: Seiko Instruments Inc. 1987, p.15.