BAB II TINJAUAN PUSTAKA
2.1 Mikrokontroler ATMega 8535 Atmel AVR adalah jenis mikrokontroler yang paling sering dipakai dalam bidang elektronika dan instrumentasi. Mikrokontroler AVR ini memiliki arsitektur RISC (Reduce Instruction Set Computer) delapan bit, di mana semua instruksi dikemas dalam kode 16-bit (16 bits word) dan sebagian besar instruksi dieksekusi dalam 1 (satu ) siklus clock. (http://id.wikipedia.org/wiki/Atmel_AVR) Mikrokontroler AVR memiliki arsitektur RISC 8 bit, di mana semua instruksi dikemas dalam kode 16-bit (16-bits wor) dan sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock. AVR berteknologi RICS (Reduced Instruction Set Computer), sedangkan seri MCS51 berteknologi CICS (Complex Instruction Set Computer). Secara umum, AVR dapat dikelompokkan mnjadi 4 kelas, yaitu keluarga ATtiny, keluarga AT90Sxx, keluarga ATMega, dan AT86RFxx. Pada dasarnya yang membedakan masing-masing kelas adalah memory, peripheral, dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan hampir sama. Dalam hal ini ATMEGA8535 dapat beroperasi pada kecepatan maksimal 16MHz serta memiliki 6 pilihan mode sleep untuk menghemat penggunaan daya listrik.
5
6
Gambar 2.1 Mikrokontroler AVR ATMega 8535 Gambar 2.2 adalah gambar blok diagram fungsional ATMega 8535.
Gambar 2.2 Blok Diagram ATMega 8535
7
Dari gambar tersebutdapat dilihat bahwa ATMega 8535 memiliki bagian sebagai berikut: ¾ Saluran I/O sebanyak 32 buah, yaitu Port A, Port B, Port C, dan Port D. ¾ ADC 10 bit sebanyak 8 saluran. ¾ Tiga buah Timer/Counter dengan kemampuan pembandingan. ¾ CPU yang terdiri atas 32 buah register. ¾ Watchdog Timer dengan osilator internal. ¾ SRAM sebesar 512 byte. ¾ Memori Flash sebesar 8 kb dengan kemampuan Read While Write. ¾ Unit interupsi internal dan eksternal. ¾ Port antarmuka SPI. ¾ EEPROM sebesar 512 byte yang dapat diprogram saat operasi. ¾ Antarmuka komparator analog. ¾ Port USART untuk komunikasi serial.Fitur ATMega8535. (http://joaldera.com/2008/10/mikrokontroler-atmega-8535/) 2.1.1 Konfigurasi Mikrokontroler AVR ATMega 8535 Mikrokontroller AVR memiliki arsitektur RISC 8 Bit, sehingga semua instruksi dikemas dalam kode 16-bit (16-bits word) dan sebagian besar instruksi dieksekusi dalam satu siklus instruksi clock. Dan ini sangat membedakan sekali dengan instruksi MCS-51 (Berarsitektur CISC) yang membutuhkan siklus 12 clock. RISC adalah Reduced Instruction Set Computer sedangkan CISC adalah Complex Instruction Set Computer.
8
Mikrokontroler AVR ATMega 8535 mempunyai 40 kaki, 32 kaki digunakan untuk keperluan port pararel. Setiap port teriri dari 8 pin, sehingga terdapat port yaitu Port A (PA0..PA7), Port B (PB0..PB7), Port C (PC0..PC7), Port D (PD0..P7).
Gambar 2.3 Konfigurasi Pin ATMega 8535 ¾ VCC merupakan Pin yang berfungsi sebagai pin masukan catudaya. ¾ GND merupakan Pin Ground. ¾ Port A (PA0...PA7) merupakan pin I/O dan pin masukan ADC. ¾ Port B (PB0...PB7) merupakan pin I/O dan pin yang mempunyai fungsi khusus yaitu Timer/Counter, komparator Analog dan SPI.
9
¾ Port C (PC0...PC7) merupakan port I/O dan pin yang mempunyai fungsi khusus, yaitu komparator analog dan Timer Oscillator. ¾ Port D (PD0...PD7) merupakan port I/O dan pin fungsi khusus yaitu komparator analog dan interrupt eksternal serta komunikasi serial. ¾ RESET merupakan pin yang digunakan untuk mereset mikrokontroler. ¾ XTAL1 dan XTAL2 merupakan pin masukan clock eksternal. ¾ AVCC merupakan pin masukan untuk tegangan ADC. ¾ AREF merupakan pin masukan tegangan referensi untuk ADC. (Warhdana, 2006). Penjelasan dari pin-pin mikrokontroler ATMega 8535 tersebut adalah sebagai berikut : ¾ VCC merupakan Input sumber tegangan (+). ¾ GND merupakan Ground (-). ¾ Port A (PA0...PA7) merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port A dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port A (DDRA) harus disetting terlebih dahulu sebelum Port A digunakan. Bit-bit DDRA diisi 0 jika ingin memfungsikan pin-pin port A yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, kedelapan pin port A juga digunakan untuk masukan sinyal analog bagi A/D converter.
10
Tabel 2.1 Fungsi Khusus Port A Port Pin
Fungsi Khusus
PA0
ADC0 (ADC input channel 0)
PA1
ADC1 (ADC input channel 1)
PA2
ADC2 (ADC input channel 2)
PA3
ADC3 (ADC input channel 3)
PA4
ADC4 (ADC input channel 4)
PA5
ADC5 (ADC input channel 5)
PA6
ADC6 (ADC input channel 6)
PA7
ADC7 (ADC input channel 7)
¾ Port B (PB0...PB7) merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port B dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port B (DDRB) harus disetting terlebih dahulu sebelum Port B digunakan. Bit-bit DDRB diisi 0 jika ingin memfungsikan pin-pin port B yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Pin-pin port B juga memiliki untuk
11
fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam tabel berikut. Tabel 2.2 Fungsi Khusus Port B Port Pin Fungsi Khusus PB0
T0 = timer/counter 0 external counter input
PB1
T1 = timer/counter 0 external counter input
PB2
AIN0 = analog comparator positive input
PB3
AIN1 = analog comparator negative input
PB4
SS = SPI slave select input
PB5
MOSI = SPI bus master output / slave input
PB6
MISO = SPI bus master input / slave output
PB7
SCK = SPI bus serial clock
¾ Port C (PC0...PC7) merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port C dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port C (DDRC) harus disetting terlebih dahulu sebelum Port C digunakan. Bit-bit DDRC diisi 0 jika ingin memfungsikan pin-pin port C yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, dua pin port C (PC6 dan
12
PC7) juga memiliki fungsi alternatif sebagai oscillator untuk timer / counter 2. Tabel 2.3 Fungsi Khusus Port C Port Pin Fungsi Khusus PC0
SCL (Two-wire Serial Bus Clock Line)
PC1
SDA (Two-wire Serial Bus Data Input/Output Line)
PC6
TOSC1 (Timer Oscilator Pin 1)
PC7
TOSC2 (Timer Oscilator Pin 2)
¾ Port D (PD0...PD1) merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port D dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port D (DDRD) harus disetting terlebih dahulu sebelum Port D digunakan. Bit-bit DDRD diisi 0 jika ingin memfungsikan pin-pin port D yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, pin-pin port D juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam tabel berikut.
13
Tabel 2.4 Fungsi Khusus Port D Port Pin Fungsi Khusus PD0
RDX (UART input line)
PD1
TDX (UART output line)
PD2
INT0 ( external interrupt 0 input )
PD3
INT1 ( external interrupt 1 input )
PD4
OC1B (Timer/Counter1 output compareB match output)
PD5
OC1A (Timer/Counter1 output compareA match output)
PD6
ICP (Timer/Counter1 input capture pin)
PD7
OC2 (Timer/Counter2 output compare match output)
¾ RESET merupakan RST pada pin 9 merupakan reset dari AVR. Jika pada pin ini diberi masukan low selama minimal 2 machine cycle maka sistem akan di-reset. ¾ XTAL1 adalah masukan ke inverting oscillator amplifier dan input ke internal clock operating circuit. ¾ XTAL2 adalah output dari inverting oscillator amplifier. ¾ Avcc adalah kaki masukan tegangan bagi A/D Converter. Kaki ini harus secara eksternal terhubung ke Vcc melalui lowpass filter.
14
¾ AREF adalah kaki masukan referensi bagi A/D Converter. Untuk operasionalisasi ADC, suatu level tegangan antara AGND dan Avcc harus dibeikan ke kaki ini. ¾ AGND adalah kaki untuk analog ground. Hubungkan kaki ini ke GND, kecuali jika board memiliki anlaog ground yang terpisah. (http://www.mikron123.com/index.php/Tutorial-AVR/Arsitektur-MikrokontrolerAVR.html)
2.2 H-Bridge Driver Motor DC H-Bridge atau yang diterjemahkan secara kasar sebagai “Jembatan H”, adalah sebuah rangkaian dimana motor menjadi titik tengahnya dengan dua jalur yang bisa dibuka tutup untuk melewatkan arus pada motor tersebut, persis seperti huruf “H” (dengan motor berada pada garis horizontal).
Gambar 2.4 Motor Pada Garis Horizontal Dua terminal motor a dan b dikontrol oleh 4 saklar (1 s/d 4). Ketika saklar satu dan dua diaktifkan (saklar 3 dan 4 dalam keadaan off), maka terminal motor a
15
akan mendapatkan tegangan (+) dan terminal b akan terhubung ke ground (-), hal ini menyebabkan motor bergerak maju (atau searah jarum jam)
Gambar 2.5 Motor Bergerak Searah Jarum Jam Sedangkan sebaliknya, bila saklar 1 dan 2 dalam keadaan off, saklar 3 dan 4 dalam keadaan aktif, maka terminal a akan terhubung ke ground (-) dan terminal b akan mendapatkan tegangan (+), dan tentunya hal ini dapat menyebabkan motor berubah arah putarnya, menjadi bergerak mundur (atau berlawanan dengan arah jarum jam)
Gambar 2.6 Motor Bergerak Berlawanan Jarum Jam
16
Untuk
mengimplementasikan
H-Bridge
ini,
tidak
bisa
langsung
dihuhubungkan ke output yang diambil dari pin I/O mikrokontroler. Sebab output dari mikrokontroler hanya mempunyai daya yang sangat kecil. Sedangkan untuk motor sendiri, kadang-kadang membutuhkan daya yang tidak kecil (misalnya 200 mA, 1 A atau bahkan lebih). Jika kita memaksakan menghubungkan output digital dari mikrokontroler langsung ke motor, bisa jadi merusak mikrokontroler itu sendiri.
Untuk itu kita membutuhkan sebuah rangkaian penguat yang dapat dikontrol dari input digital. Dan tentunya chip (IC) yang mengakomodasi keperluan ini telah ada. H-Bridge driver. Salah satu tipenya kita bisa menggunakan L293D (untuk menghandle arus rata-rata 600 mA) atau LMD18200 (untuk meng-handle arus 3A, tegangan
sampai
55V).
(http://insansainsprojects.wordpress.com/2008/06/05/h-
bridge-driver-kontrol-arah-motor/)
2.3 Motor DC Motor DC memiliki dua elemen listrik yang terdiri dari bagian stator (kumparan medan utama) dan rotor (kumparan jangkar). Kumparan jangkar mengalirkan arus yang berasal dari komutator. Tegangan DC dialirkan ke kumparan jangkar melalui karbon yang menempel pada komutator. Pada saat tegangan dialirkan ke kumparan medan di stator dengan kutub utara dan selatan buatan (elekromagnet),
17
akan dihasilkan medan magnet statis (bukan medan magnet putar). Untuk menjelaskannya, stator akan dianggap sebagai magnet permanen. Motor DC berputar sebagai akibat adanya dua medan magnet yang saling berinteraksi satu dengan yang lainnya. Medan pertama adalah medan magnet utama yang berada pada kumparan stator dan medan kedua adalah medan magnet yang berada pada jangkar. Gambar 2.7 memperlihatkan konstruksi dari motor DC.
Gambar 2.7 Konstruksi Motor DC 2.3.1 Prinsip Kerja Motor DC Pada motor DC, kumparan medan yang dialiri arus listrik akan menghasilkan medan magnet yang melingkupi kumparan jangkar dengan arah tertentu. Konverter energi baik energi listrik menjadi energi mekanik (motor) maupun sebaliknya dari energi mekanik menjadi energi listrik (generator) berlangsung melalui medium medan magnet. Energi yang akan diubah dari suatu sistem ke sistem yang lain, sementara akan tersimpan pad medium medan magnet untuk kemudian dilepaskan menjadi energi system lainya. Dengan demikian, medan magnet disini selain
18
berfungsi sebagi tempat penyimpanan energi juga sekaligus proses perubahan energi, dimana proses perubahan energi pada motor arus searah. Motor DC terdapat dalam berbagai ukuran dan kekuatan, masing- masing didisain untuk keperluan yang berbeda-beda namun secara umum memiliki berfungsi dasar yang sama yaitu mengubah energi elektrik menjadi energi mekanik. Sebuah motor DC sederhana dibangun dengan menempatkan kawat yang dialiri arus di dalam medan magnet.kawat yang membentuk loop ditempatkan sedemikian rupa diantara dua buah magnet permanen.Bila arus mengalir pada kawat, arus akan menghasilkan medan magnet sendiri yang arahnya berubah-ubah terhadap arah medan magnet permanen sehingga menimbulkan putaran. (http://www.ittelkom.ac.id/library/index.php?view=article&catid=16%3Amikroproce ssorkontroller&id=305%3Amotor-dc&option=com_content&Itemid=15)