BAB 2 LANDASAN TEORI 2.1 Perangkat Keras - Potensi Mikrokontroller Atmega8535 dan Sensor Ultrasonik sebagai Pendeteksi Dini Banjir

BAB 2 LANDASAN TEORI

  2.1 Perangkat Keras

  Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu perangkat keras (hardware) yang dapat mengolah data, menghitung, mengingat dan mengambil pilihan. Mikrokontroler merupakan salah satu jawabannya. Vendor dari mikrokontroler ini ada beberapa macam, diantaranya yang paling terkenal adalah ATMega8535. Selain menggunakan mikrokontroler juga digunakan sensor ultrasonik sebagai pendeteksi jarak obyek dengan cara memancarkan gelombang ultrasonik dengan frekuensi 40 KHz dan kemudian mendeteksi pantulannya. Selain itu juga terdapat beberapa perangkat seperti : Mikrokontroler ATMega 8535, Transistor, Buzzer, LCD dan CVAVR.

  2.2 Mikrokontroller ATMega 8535

  ATMega8535 memiliki fitur yang cukup lengkap, mulai dari kapasitas memori program dan memori data yang cukup besar, interupsi, timer/counter, PWM, USART, TWI, analog comparator, EEPROM internal dan juga ADC internal semuanya ada dalam ATMega8535. Sehingga dengan fitur yang cukup lengkap ini memungkinkan kita untuk dapat merancang suatu sistem yang sederhana sampai dengan sistem yang relatif kompleks hanya dengan menggunakan satu IC saja, yaitu dengan IC ATMega8535.

  ATMega8535 merupakan salah satu mikrokontroler 8 bit buatan Atmel untuk keluarga AVR. Pada tahun 1997 Atmel mengembangkan AVR (Alf and Vegard’s RISC Processor). Mikrokontroler ATmega8535 menggunakan arsitektur RISC

  (Reduced Instruction Set Computing). Beberapa fitur yang dimiliki Mikrokontroler ATmega8535 adalah berbasis RISC dengan kecepatan maksimal

  16 MHz, memiliki memori Flash 8K Bytes, 512 Bytes EEPROM (Electrically ), dan 512 Bytes Internal SRAM.

  Erasable Programmable Read Only Memory

  Mikrokontroler ATmega8535 memiliki 2 8-bit Timer/Counter, RTC (Real Time

  

Counter ), 4 PWM chanel, 8-chanel 10-bit ADC, 1 programable serial USART,

  master/slave SPI serial interface, dan memiliki 32 programmable I/O. Sedangkan untuk power, ATmega 8535 dapat dicatu menggunakan tegangan 2.7 – 5.5V (untuk ATmega8535L) dan 4.5 – 5.5V (untuk ATmega8535) dengan frekuensi clock maksimum adalah 16MHz.

  ATMega8535 adalah mikrokontroler CMOS 8 bit daya rendah berbasis arsitektur RISC. Instruksi dikerjakan pada satu siklus clock, ATMega8535 mempunyai throughput mendekati 1 MIPS per MHz, hal ini membuat ATMega8535 dapat bekerja dengan kecepatan tinggi walaupun dengan penggunaan daya rendah. Mikrokontroler Atmega8535 memiliki beberapa fitur atau spesifikasi yang menjadikannya sebuah solusi pengendali yang efektif untuk berbagai keperluan.

2.2.1 Arsitektur ATMega8535

  Mikrokontroler ATMega8535 memiliki arsitektur Harvard, yaitu memisahkan memori untuk kode program dan memori untuk data sehingga dapat memaksimalkan unjuk kerja dan paralelisme. Instruksi-instruksi dalam memori program dieksekusi dalam satu alur tunggal, dimana pada saat satu instruksi dikerjakan instruksi berikutnya sudah diambil (pre-fetched) dari memori program. Konsep inilah yang memungkinkan instruksi-instruksi dapat dieksekusi dalam setiap satu siklus clock. 32 x 8-bit register serba guna digunakan untuk mendukung operasi pada Arithmetic Logic Unit (ALU) yang dapat dilakukan dalam satu siklus. 6 dari register serba guna ini dapat digunakan sebagai 3 buah register pointer 16-bit pada mode pengalamatan tak langsung untuk mengambil data pada ruang memori data. Ketiga register pointer 16-bit ini disebut dengan register X (gabungan R26 dan R27), register Y (gabungan R28 dan R29), dan register Z (gabungan R30 dan R31). Hampir semua instruksi AVR memiliki format 16-bit (word). Setiap alamat memori program terdiri dari instruksi 16-bit atau 32-bit. Selain register serba guna diatas, terdapat register lain yang terpetakan dengan teknik memory mapped I/O selebar 64 Byte. Beberapa register ini digunakan untuk fungsi khusus antara lain sebagai register kontrol Timer/Counter, Interupsi, ADC, USART, SPI, EEPROM dan fungsi I/O lainnya. Register-register ini menempati memori pada alamat 0x20h – 0x5Fh.

2.2.2 Organisasi Memori

  Mikrokontroler ATMega8535 memiliki 3 jenis memori yaitu memori program, memori data dan memori EEPROM. Ketiganya memiliki ruang sendiri dan terpisah.

  a.

  Memori Program ATMega8535 memiliki kapasitas memori program sebesar 8 Kbyte yang terpetakan dari alamat 0000h – 0FFFh dimana masing-masing alamat memiliki lebar data 16 bit. Sehingga organisasi memori program seperti ini sering dituliskan dengan 4K x 16 bit. Memori program ini terbagi menjadi 2 bagian yaitu bagian program boot dan bagian program aplikasi. Jika kita tidak menggunakan fitur Boot Loader Flash maka semua kapasitas memori program diatas dapat digunakan untuk program aplikasi. Tetapi jika yang digunakan fitur Boat Loader maka pembagian ukuran kedua bagian ini ditentukan oleh BOOTSZ fuse.

  Flash b.

  Memori Data ATMega8535 memiliki kapasitas memori data sebesar 608 Byte yang terbagi menjadi 3 bagian yaitu register serba guna, register I/O dan SRAM. 32 byte alamat terendah digunakan untuk register serba guna yaitu R0 – R31. 64 byte berikutnya digunakan untuk register I/O yang digunakan untuk mengatur fasilitas seperti timer/counter, interupsi, ADC, USART, SPI, EEPROM dan port I/O seperti Port A, Port B, Port C dan Port D. Selanjutnya 512 Byte diatasnya digunakan untuk memori data SRAM.

  c.

  Memori EEPROM ATMega8535 memiliki memori EEPROM sebesar 512 Byte yang terpisah dari memori program maupun memori data. Memori EEPROM ini hanya dapat diakses dengan menggunakan register-register I/O yaitu register EEPROM

  

Address (EEARH-EEARL), register EEPROM Data (EEDR) dan register

EEPROM Control (EECR). Untuk mengakses memori EEPROM ini diperlakukan

  seperti mengakses data eksternal sehingga waktu eksekusinya relatif lebih lama bila dibandingkan dengan mengakses data dari SRAM.

  Adapun kelebihan dari mikrokontroller adalah sebagai berikut : Pada dasarnya yang membedakan masing – masing kelas adalah memori, peripheral, dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan hampir sama. Oleh karena itu, dipergunakan salah satu AVR produk Atmel, yaitu ATMega 8535. Selain mudah didapatkan dan lebih murah ATMega 8535 juga memiliki fasilitas yang lengkap. Untuk tipe AVR ada 3 jenis yaitu AT Tiny, AVR klasik, AT Mega. Perbedaannya hanya pada fasilitas dan I/O yang tersedia serta fasilitas lain seperti ADC,EEPROM dan lain sebagainya. Salah satu contohnya adalah AT Mega 8535. Memiliki teknologi RISC dengan kecepatan maksimal 16 MHz membuat ATMega 8535 lebih cepat bila dibandingkan dengan varian MCS 51. Dengan fasilitas yang lengkap tersebut menjadikan ATMega 8535 sebagai mikrokontroler yang powerfull.

  Fitur-fitur yang dimiliki oleh mikrokontroler Atmega 8535 adalah sebagai berikut:

  1. Saluran I/O sebanyak 32 buah, yaitu port A, port B, port C, dan port D.

  2. ADC internal sebanyak 8 saluran.

  3. Dua buah Timer/Counter dengan kemampuan pembandingan.

  4. CPU yang terdiri atas 32 buah register.

  5. SRAM sebesar 512 byte.

  6. Memori Flash sebesar 8 kb dengan kemampuan Read While Write.

  7. Port antarmuka SPI 8.

  EEPROM sebesar 512 byte yang dapat diprogram saat operasi.

  9. Antarmuka komparator analog.

  10. Port USART untuk komunikasi serial.

  11. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16 MHz.

  12. Dan lain-lainnya.

2.2.3 Konstruksi ATMega8535

  Mikrokontroler ATmega8535 memiliki 3 jenis memori, yaitu memori program, memori data dan memori EEPROM. Ketiganya memiliki ruang sendiri dan terpisah.

  a. Memori program ATmega8535 memiliki kapasitas memori progam sebesar 8 Kbyte yang terpetakan dari alamat 0000h – 0FFFh dimana masing-masing alamat memiliki lebar data 16 bit. Memori program ini terbagi menjadi 2 bagian yaitu bagian program boot dan bagian program aplikasi.

  b. Memori data ATmega8535 memiliki kapasitas memori data sebesar 608 byte yang terbagi menjadi 3 bagian yaitu register serba guna, register I/O dan SRAM. ATmega8535 memiliki 32 byte register serba guna, 64 byte register I/O yang dapat diakses sebagai bagian dari memori RAM (menggunakan instuksi LD atau ST) atau dapat juga diakses sebagai I/O (menggunakan instruksi IN atau OUT), dan 512 byte digunakan untuk memori data SRAM.

  c. Memori EEPROM ATmega8535 memiliki memori EEPROM sebesar 512 byte yang terpisah dari memori program maupun memori data. Memori EEPROM ini hanya dapat diakses dengan menggunakan register-register I/O yaitu register EEPROM

  

Address , register EEPROM Data, dan register EEPROM Control. Untuk

  mengakses memori EEPROM ini diperlakukan seperti mengakses data eksternal, sehingga waktu eksekusinya relatif lebih lama bila dibandingkan dengan mengakses data dari SRAM.

  Interupsi ATMega8535 menyediakan 21 macam sumber interupsi yang masing-masing memiliki alamat program vector interupsi. Setiap interupsi yang aktif akan dilayani segera setelah terjadi permintaan interupsi, tetapi jika dalam waktu bersamaan terjadi lebih dari satu interupsi maka prioritas yang akan diselesaikan lebih dulu adalah interupsi yang memiliki nomor urut lebih kecil. Sebagai contoh jika interupsi timer0 overflow dan timer1 overflow terjadi bersamaan maka prioritasnya interupsi timer 1 lebih dulu yang akan diselesaikan karena interupsi timer 1 memiliki nomor urut diatas timer 0.

  Port I/O Semua port keluarga AVR bersifat bi-directional (dua arah) pada saat berfungsi sebagai port I/O digital. Bahkan setiap pin dapat dikonfigurasikan baik sebagai input maupun output secara individu tanpa mempengaruhi pin-pin yang lain. Hal ini dapat dilakukan dengan perintah SBI dan CBI. Pengaturan port I/O baik sebagai input maupun output otomatis akan diikuti dengan pengaturan pull-

  

up resistor internal. Meskipun demikian pengaturan pull-up resistor bias saja

  dinon-aktifkan melalui bit PUD pada register SFIOR. Jika bit PUD diset ‘1’ maka berarti konfigurasi pull-up port I/O non-aktif.

  Tiga alamat memori I/O dialokasikan untuk mengatur konfigurasi setiap port I/O yaitu :

  Data Register (PORTx)

  • Data Direction Register (DDRx)
  • >Data Input Pin (PINx)

  Timer / Counter ATMega8535 memiliki 3 modul timer yang terdiri dari 2 buah timer / counter

  8-bit dan 1 buah timer / counter 16-bit. Ketiga modul timer / counter ini dapat diatur dalam mode yang berbeda secara individu dan tidak saling mempengaruhi satu sama lain. Selain itu semua timer / counter juga dapat difungsikan sebagai sumber interupsi. Masing-masing timer / counter ini memiliki register tertentu yang digunakan untuk mengatur mode dan cara kerjanya tetapi ada 2 register yang digunakan secara bersama-sama yaitu register TIMSK dan register TIFR.

  USART

  

Universal Synchronous and Asynchronous Serial Receiver and Transmitter

  (USART) juga merupakan salah satu mode komunikasi serial yang dimiliki oleh ATMega8535. USART merupakan komunikasi yang memiliki fleksibilitas tinggi, yang dapat digunakan untuk melakukan transfer data baik antar mikrokontroler maupun dengan modul-modul eksternal termasuk PC yang memiliki fitur UART.

  USART memungkinkan transmisi data baik secara synchronous maupun

  

asynchronous sehingga dengan demikian USART pasti kompatibel dengan

  UART. Pada ATMega8535, secara umum pengaturan mode komunikasi baik

  

synchronous maupun asynchronous adalah sama. Perbedaannya hanyalah terletak

  pada sumber clock saja. Jika pada mode asynchronous masing-masing peripheral memiliki sumber clock sendiri maka pada mode synchronous hanya ada satu sumber clock yang digunakan secara bersama-sama. Dengan demikian secara hardware untuk mode asynchronous hanya membutuhkan 2 pin yaitu TXD dan RXD sedangkan untuk mode synchronous harus 3 pin yaitu TXD, RXD dan XCK.

  ATmega8535 merupakan tipe AVR yang telah dilengkapi dengan 8 saluran ADC internal dengan fidelitas 10 bit. Dalammode operasinya, ADC ATmega8535 dapat dikonfigurasi, baik secara single ended input maupun differential input.

  Selain itu, ADC ATmega8535 memiliki konfigurasi pewaktuan, tegangan referensi, mode operasi, dan kemampuan filter derau yang amat fleksibel, sehingga dengan mudah disesuaikan dengan kebutuhan ADC itu sendiri.

  ATmega8535 memiliki 3 modul timer yang terdiri dari 2 buah timer/counter 8 bit dan 1 buah timer/counter 16 bit. Ketiga modul timer/counter ini dapat diatur dalam mode yang berbeda secara individu dan tidak saling mempengaruhi satu sama lain. Selain itu, semua timer/counter juga dapat difungsikan sebagai sumber interupsi. Masing-masing timer/counter ini memiliki register tertentu yang digunakan untuk mengatur mode dan cara kerjanya.

  Serial Peripheral Interface (SPI) merupakan salah satu mode komunikasi serial syncrhronous kecepatan tinggi yang dimiliki oleh ATmega8535. Universal Syncrhronous and Asyncrhronous Serial Receiver and Transmitter (USART) juga merupakan salah satu mode komunikasi serial yang dimiliki oleh ATmega8535.

  USART merupakan komunikasi yang memiliki fleksibilitas tinggi, yang dapat digunakan untuk melakukan transfer data baik antar mikrokontroler maupun dengan modul-modul eksternal termasuk PC yang memiliki fitur UART.

  USART memungkinkan transmisi data baik secara syncrhronous maupun asyncrhronous, sehingga dengan memiliki USART pasti kompatibel dengan UART. Pada ATmega8535, secara umum pengaturan mode syncrhronous maupun asyncrhronous adalah sama. Perbedaannya hanyalah terletak pada sumber clock saja.

  Jika pada mode asyncrhronous masing-masing peripheral memiliki sumber clock sendiri, maka pada mode syncrhronous hanya ada satu sumber clock yang digunakan secara bersama-sama. Dengan demikian, secara hardware untuk mode asyncrhronous hanya membutuhkan 2 pin yaitu TXD dan RXD, sedangkan untuk mode syncrhronous harus 3 pin yaitu TXD, RXD dan XCK.

2.2.4 Pin-pin pada Mikrokontroler ATmega8535

Gambar 2.1. Konfigurasi pin ATmega8535 (Data Sheet AVR)

  Konfigurasi pin ATmega8535 dengan kemasan 40 pin DIP (Dual Inline Package) dapat dilihat pada gambar 2.1. Dari gambar di atas dapat dijelaskan fungsi dari masing-masing pin Atmega8535 sebagai berikut:

  1. VCC merupakan pin yang berfungsi sebagai masukan catu daya.

  2. GND merukan pin Ground.

  3. Port A (PortA0...PortA7) merupakan pin input/output dua arah dan pin masukan ADC.

  4. Port B (PortB0...PortB7) merupakan pin input/output dua arah dan pin fungsi khusus, seperti dapat dilihat pada tabel di bawah ini.

  Pin Fungsi Khusus PB7 SCK (SPI Bus Serial Clock) PB6 MISO (SPI Bus Master Input/ Slave Output) PB5 MOSI (SPI Bus Master Output/ Slave Input) PB4 SS (SPI Slave Select Input) PB3 AIN1 (Analog Comparator Negative Input) OC0

  (Timer/Counter0 Output Compare Match Output) PB2 AIN0 (Analog Comparator Positive Input) INT2 (External

  Interrupt 2 Input) PB1 T1 (Timer/ Counter1 External Counter Input) PB0 T0 T1 (Timer/Counter External Counter Input) XCK

  (USART External Clock Input/Output)

Tabel 2.1 Fungsi Khusus Port B

  5. Port C (PortC0...PortC7) merupakan pin input/output dua arah dan pin fungsi khusus, seperti dapat dilihat pada tabel dibawah ini.

  Pin Fungsi khusus PC7 TOSC2 ( Timer Oscillator Pin2) PC6 TOSC1 ( Timer Oscillator Pin1) PC5 Input/Output PC4 Input/Output PC3 Input/Output PC2 Input/Output PC1 SDA (Two-wire Serial Buas Data Input/Output Line) PC0 SCL (Two-wire Serial Buas Clock Line)

Tabel 2.2. Fungsi Khusus Port C

  6. Port D (PortD0...PortD7) merupakan pin input/output dua arah dan pin fungsi khusus, seperti yang terlihat pada tabel dibawah ini.

  Pin Fungsi khusus PD7 OC2 (Timer/Counter Output Compare Match Output) PD6 ICP (Timer/Counter1 Input Capture Pin) PD5 OC1A (Timer/Counter1 Output Compare A MatchOutput) PD4 OC1B (Timer/Counter1 Output Compare B MatchOutput) PD3

  INT1 (External Interrupt 1 Input) PD2

  INT0 (External Interrupt 0 Input) PD1 TXD (USART Output Pin) PD0 RXD (USART Input Pin)

Tabel 2.3 Fungsi Khusus Port D 7. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler.

  8. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal.

  9. AVCC merupakan pin masukan tegangan untuk ADC.

  10. AREFF merupakan pin masukan tegangan referensi ADC.

2.3 Sensor Jarak Ultrasonik PING

  Sensor jarak ultrasonik ping adalah sensor 40 khz produksi parallax yang banyak digunakan untuk aplikasi atau kontes robot cerdas. Kelebihan sensor ini adalah hanya membutuhkan 1 sinyal ( SIG ) selain jalur 5 v dan ground. Berikut adalah contoh gambar sensor PING:

Gambar 2.2 Sensor jarak ultrasonik ping

  Sensor ini dapat mengukur jarak antara 2 cm sampai 300 cm (blank area yaitu sensor tidak dapat mengukur jarak jika jarak benda < 2cm). Keluaran dari sensor ini berupa pulsa yang lebarnya merepresentasikan jarak. Lebar pulsanya bervariasi dari 115 uS sampai 18,5 mS. Sensor ultrasonic ping parallax terdiri dari sebuah chip pembangkit sinyal 40KHz, sebuah speaker ultrasonik dan sebuah mikropon ultrasonik. Speaker ultrasonik mengubah sinyal 40 KHz menjadi suara sementara mikropon ultrasonik berfungsi untuk mendeteksi pantulan suaranya.

  2.3.1 Spesifikasi sensor PING a.Kisaran pengukuran 3cm-3m.

  b.Input trigger –positive TTL pulse, 2uS min., 5uS tipikal. c.Echo hold off 750uS dari fall of trigger pulse. d.Delay before next measurement 200uS. e.Burst indicator LED menampilkan aktifitas sensor.

  2.3.2 Prinsip Kerja Sensor PING Berikut adalah prinsip kerja sensor ultrasonic ping parallax.

  1. Pin yang digunakan sebagai jalur data sensor dijadikan output.

  2. Mikrokontroler memberikan pulsa trigger (pulsa high dengan tOUT selama 2 µs sampai 5 µs).

  3. Kemudian setelah memberikan trigger, pin tersebut dijadikan input.

  4. Sensor memancarkan gelombang ultrasonic sebesar 40KHz selama 200 µs (tBURST).

  5. Gelombang ultrasonic ini akan merambat diudara dengan kecepatan 344.424 m/detik atau 1 cm setiap 29.034 µs.

  6. Gelombang tersebut akan mengenai objek kemudian terpantul kembali ke sensor.

  7. Selama menunggu pantulan, sensor akan menghasilkan sebuah pulsa (high) 8.

  Pulsa ini akan berhenti (low) ketika gelombang suara pantulan terdeteksi oleh sensor.

  9. Lebar pulsa tersebutlah yang yang dipresentasikan sebagai jarak antara sensor ping dengan objek.

  10. Lebar pulsa high (tIN) akan sesuai dengan lama waktu tempuh gelombang ultrasonik untuk 2x jarak ukur dengan obyek yang kemudian dapat merepresentasikan jarak antara sensor ping dengan objek.

11. Sinyal yang diterima oleh rangkaian receiver dikirimkan ke rangkaian mikrokontroler untuk selanjutnya diolah untuk menghitung jarak terhadap benda.

  12. Benda di sini adalah benda yang bersifat memantul, bukan benda yang bersifat meredam sinyal.

  Pada dasanya, Sensor PING terdiri dari sebuah chip pembangkit sinyal

  40KHz, sebuah speaker ultrasonik dan sebuah mikropon ultrasonik. Speaker ultrasonik mengubah sinyal 40 KHz menjadi suara sementara mikropon ultrasonik berfungsi untuk mendeteksi pantulan suaranya. Sensor PING mendeteksi jarak obyek dengan cara memancarkan gelombang ultrasonik (40 kHz) selama tBURST (200

  μs) kemudian mendeteksi pantulannya. Sensor PING memancarkan gelombang ultrasonik sesuai dengan kontrol dari mikrokontroler pengendali (pulsa trigger dengan tOUT min. 2 μs).

  Gambar 2. .3 Prinsip k erja sensor PING Gelom mbang ultra asonik ini melalui ud dara dengan n kecepatan n 344 mete er per detik, men ngenai oby yek dan me emantul kem mbali ke se ensor. PING G mengelu arkan pulsa outp put high pa ada pin SIG G setelah me emancarkan n gelomban ng ultrasonik k dan setelah ge elombang pa antulan terd deteksi PIN NG akan me embuat outp pad da pin

  put low

  SIG. Leba ar pulsa Hig gh (tIN) ak kan sesuai d dengan lama a waktu tem mpuh gelom mbang ultrasonik k untuk 2x ja arak ukur de engan obye ek.

2.4 Buzze er

  Buzze er adalah se ebuah komp ponen elektr ronika yang g berfungsi u untuk meng gubah getaran li istrik menja adi getaran suara. Bu zzer akan menyala jik ka mendap patkan tegangan antara 5 vo olt sampai dengan 12 volt DC. P Pada dasarn nya prinsip kerja buzzer ham mpir sama dengan lou ud speaker, jadi buzzer r juga terdir ri dari kum mparan yang terp pasang pada a diafragma a dan kem mudian kum mparan terse ebut dialiri i arus sehingga menjadi el lektromagne et, kumpar ran tadi ak kan tertarik k ke dalam atau keluar, te ergantung d dari arah ar arus dan po olaritas ma gnetnya, ka karena kum paran dipasang pada diafragma maka setiap gerakan kumparan akan menggerakkan diafragma secara bolak-balik sehingga membuat udara bergetar yang akan menghasilkan suara. Di dalam tugas akhir ini, buzzer digunakan sebagai indikator bahwa telah terjadi suatu kesalahan pada sebuah alat (alarm).

Gambar 2.4 Bentuk Buzzer

2.5 Transistor

  Transistor adalah alat semikonduktor yang dipakai sebagai penguat, sebagai sirkuit pemutus dan penyambung (switching), stabilisasi tegangan, modulasi sinyal atau sebagai fungsi lainnya. Transistor dapat berfungsi semacam kran listrik, dimana berdasarkan arus inputnya (BJT) atau tegangan inputnya (FET), memungkinkan pengaliran listrik yang sangat akurat dari sirkuit sumber listriknya. Transistor through-hole (dibandingkan dengan pita ukur sentimeter) Pada umumnya, transistor memiliki 3 terminal. Tegangan atau arus yang dipasang di satu terminalnya mengatur arus yang lebih besar yang melalui 2 terminal lainnya.

  Transistor merupakan alat dengan tiga terminal. Setelah bahan semikonduktor diolah, terbentuklah bahan semikonduktor jenis p dan n. Walaupun proses pembuatannya banyak, pada dasarnya transistor merupakan tiga lapis gabungan kedua jenis bahan tadi, yaitu n p n atau p n p. Transistor adalah komponen yang sangat penting dalam dunia elektronik modern. Dalam rangkaian analog, transistor digunakan dalam amplifier (penguat). Rangkaian analog melingkupi pengeras suara, sumber listrik stabil, dan penguat sinyal radio. Dalam rangkaian- rangkaian digital, transistor digunakan sebagai saklar berkecepatan tinggi.

  Beberapa transistor juga dapat dirangkai sedemikian rupa sehingga berfungsi sebagai logic gate, memori, dan komponen-komponen lainnya.

2.5.1 Transistor n p n

  Kolektor dan emitter merupakan bahan n dan lapisan diantara mereka merupakan jenis p. Pada mulanya diperkirakan bahwa transistor seharusnya bekerja dalam salah satu arah, ialah dengan saling menghubungkan ujung-ujung kolektor dan emitter karena mereka terbuat dari jenis bahan yang sama. Namun, hal ini tidaklah mungkin karena mereka tidak berukuran sama. Kolektor berukuran lebih besar dan kebanyakan dihubungkan secara langsung kekotaknya untuk penyerapan panas. Ketika transistor digunakan hampir semua panas yang terbentuk berada pada sambungan basis-kolektor yang harus mampu menghilangkan panas ini. Sambungan basis emitter hanya mampu menahan tegangan yang rendah.

  Operasi dalam arah balik dapat dijalankan tetapi tidak efisien, sehingga tidak sesuai dengan metode hubungan praktis karena sangat sering merusakkan alat.

  Pada umumnya transistor dianggap sebagai suatu alat yang beroperasi karena adanya arus. Kalau arus mengalir kedalam basis dan melewati sambungan basis

  

emitter, suatu suplai positif pada kolektor akan menyebabkan arus mengalir

  diantara kolektor dan emitter. Dua hal yang harus diperhatikan pada arus kolektor ini ialah :

  1. Untuk arus basis nol, arus kolektor turun sampai pada tingkat arus kebocoran, yaitu kurang dari 1µA dalam kondisi normal (untuk transistor silikon).

  2. Untuk arus basis tertentu, arus kolektor yang mengalir akan jauh lebih besar daripada arus basis itu.

  Salah satu fungsi Transistor yang paling banyak digunakan di dunia Elektronika Analog adalah sebagai penguat yaitu penguat arus,penguar tegangan, dan penguat daya. Fungsi komponen semikonduktor ini dapat kita temukan pada rangkaian Pree-Amp Mic, Pree-Amp Head, Mixer, Echo, Tone Control, Amplifier dan lain-lain.

  Cara kerja transistor apabila pada terminal transistor tidak diberi tegangan bias dari luar, maka semua arus akan nol atau tidak ada arus yang mengalir.

  Sebagaimana terjadi pada persambungan dioda, maka pada persambungan emiter dan basis (JE) serta pada persambungan basis dan kolektor (JC) terdapat daerah pengosongan. Tegangan penghalang (barrier potensial) pada masing- masing persambungan

  Dari banyak tipe-tipe transistor modern, pada awalnya ada dua tipe dasar transistor, bipolar junction transistor (BJT atau transistor bipolar) dan field-effect transistor (FET), yang masing-masing bekerja secara berbeda. Transistor bipolar dinamakan demikian karena kanal konduksi utamanya menggunakan dua polaritas pembawa muatan: elektron dan lubang, untuk membawa arus listrik. Dalam BJT, arus listrik utama harus melewati satu daerah/lapisan pembatas dinamakan depletion zone, dan ketebalan lapisan ini dapat diatur dengan kecepatan tinggi dengan tujuan untuk mengatur aliran arus utama tersebut. FET (juga dinamakan transistor unipolar) hanya menggunakan satu jenis pembawa muatan (elektron atau hole, tergantung dari tipe FET). Dalam FET, arus listrik utama mengalir dalam satu kanal konduksi sempit dengan depletion zone di kedua sisinya (dibandingkan dengan transistor bipolar dimana daerah Basis memotong arah arus listrik utama). Dan ketebalan dari daerah perbatasan ini dapat dirubah dengan perubahan tegangan yang diberikan, untuk mengubah ketebalan kanal konduksi tersebut.

  Transistor adalah komponen elektronika multitermal, biasanya memiliki 3 terminal. Secara harfiah, kata ‘Transistor’ berarti ‘ Transfer resistor’, yaitu suatu komponen yang nilai resistansi antara terminalnya dapat diatur. Secara umum transistor terbagi dalam 3 jenis :

  1. Transistor Bipolar

  2. Transistor Unipolar

  3. Transistor Unijunction Transistor bipolar bekerja dengan 2 macam carrier, sedangkan unipolar satu macam saja, hole atau electron. Pada transistor bipolar, arus yang mengalir berupa arus lubang (hole) dan arus electron atau berupa pembawa muatan mayoritas dan minoritas. Transistor dapat berfungsi sebagai penguat tegangan, penguat arus, penguat daya atau sebagai saklar. Ada 2 jenis transistor yaitu PNP dan NPN.

  Dari susunan bahan semikonduktor yang digunakan, transistor dapat dibedakan menjadi dua buah tipe yaitu transistor tipe PNP dan transistor tipe NPN. Pada prinsipnya transistor sama dengan dua buah dioda yang disusun saling bertolak belakang, seperti yang terlihat pada gambar dibawah ini :

   Struktur PNP Struktur NPN

  Transistor di desain dari pemanfaatan sifat diode, arus menghantar dari diode dapat dikontrol oleh electron yang ditambahkan pada pertemuan PN diode.

  Dengan penambahan elekdiode pengontrol ini, maka diode semi-konduktor dapat dianggap dua buah diode yang mempunyai electrode bersama pada pertemuan.

  Transistor dapat bekerja apabila diberi tegangan, tujuan pemberian tegangan pada transistor adalah agar transistor tersebut dapat mencapai suatu kondisi penghantar atau menyumbat. Baik transistor NPN maupun PNP tegangan antara emitor dan basis adalah forward bias, sedangkan antara basis dengan kolektor adalah reverse bias.

  Berdasarkan cara pemasangan ground dan pengambilan output, penguat transistor dibagi menjadi tiga bagian yaitu:

  1. Common Base Penguat Common Base digunakan sebagai penguat tegangan. Pada rangkaian ini Emitor merupakan input dan Collector adalah output sedangkan Basis di-ground-kan/ ditanahkan. Sifat-sifat Penguat Common Base:

   Isolasi input dan output tinggi sehingga Feedback lebih kecil

   Cocok sebagai Pre-Amp karena mempunyai impedansi input tinggi yang dapat menguatkan sinyal kecil  Dapat dipakai sebagai penguat frekuensi tinggi  Dapat dipakai sebagai buffer

  2. Penguat Common Emitor Penguat Common Emitor digunakan sebagai penguat tegangan. Pada rangkaian ini Emitor di-ground-kan/ ditanahkan, Input adalah Basis, dan output adalah Collector. Sifat-sifat Penguat Common Emitor:

   Signal output berbeda phasa 180 derajat  Memungkinkan adanya osilasi akibat feedback, untuk mencegahnya sering dipasang feedback negatif.

   Sering dipakai sebagai penguat audio (frekuensi rendah)  Stabilitas penguatan rendah karena tergantung stabilitas suhu dan bias transistor

  3. Penguat Common Collector Penguat Common Collector digunakan sebagai penguat arus. Rangkaian ini hampir sama dengan Common Emitor tetapi outputnya diambil dari Emitor. Input dihubungkan ke Basis dan output dihubungkan ke Emitor. Rangkaian ini disebut juga dengan Emitor Follower (Pengikut Emitor) karena tegangan output hapir sama dengan tegangan input.

  Sifat-sifat Penguat Common Collector:  Signal output dan sigal input satu phasa (tidak terbalik seperti Common Emitor)  Penguatan tegangan kurang dari 1 (satu)  Penguatan arus tinggi (sama dengan HFE transistor)

   Impedansi input tinggi dan impedansi output rendah sehingga cocok digunakan sebagai buffer

2.6 LCD (Liquid Crystal Display)

Gambar 2.5 LCD (Liquid Crystal Display)

  Display LCD sebuah liquid crystal atau perangkat elektronik yang dapat digunakan untuk menampilkan angka atau teks. Ada dua jenis utama layar LCD yang dapat menampilkan numerik (digunakan dalam jam tangan, kalkulator dll) dan menampilkan teks alfanumerik (sering digunakan pada mesin fotokopi dan telepon genggam). Dalam menampilkan numerik ini kristal yang dibentuk menjadi bar, dan dalam menampilkan alfanumerik kristal hanya diatur kedalam pola titik. Setiap kristal memiliki sambungan listrik individu sehingga dapat dikontrol secara independen. Ketika kristal off' (yakni tidak ada arus yang melalui kristal) cahaya kristal terlihat sama dengan bahan latar belakangnya, sehingga kristal tidak dapat terlihat. Namun ketika arus listrik melewati kristal, itu akan merubah bentuk dan menyerap lebih banyak cahaya. Hal ini membuat kristal terlihat lebih gelap dari penglihatan mata manusia sehingga bentuk titik atau bar dapat dilihat dari perbedaan latar belakang. Sangat penting untuk menyadari perbedaan antara layar LCD dan layar LED. Sebuah LED display (sering digunakan dalam radio jam) terdiri dari sejumlah LED yang benar-benar mengeluarkan cahaya (dan dapat dilihat dalam gelap). Sebuah layar LCD hanya mencerminkan cahaya, sehingga tidak dapat dilihat dalam gelap. LMB 162A adalah modul LCD matrix dengan konfigurasi 16 karakter dan 2 baris dengan setiap karakternya dibentuk oleh 8 baris pixel dan 5 kolom pixel (1 baris terakhir adalah kursor). Memori LCD terdiri dari 9.920 bir CGROM, 64 byte CGRAM dan 80x8 bit DDRAM yang diatur pengalamatannya oleh Address Counter dan akses datanya (pembacaan maupun penulisan datanya) dilakukan melalui register data. Pada LMB162A terdapat register data dan register perintah. Proses akses data ke atau dari register data akan mengakses ke CGRAM, DDRAM atau CGROM bergantung pada kondisi Address Counter, sedangkan proses akses data ke atau dari Register perintah akan mengakses Instruction Decoder (dekoder instruksi) yang akan menentukan perintah–perintah yang akan dilakukan oleh LCD. Kegunaan LCD banyak sekali dalam perancangan suatu sistem dengan menggunakan mikrokontroller. LCD dapat berfungsi untuk menampilkan suatu nilai hasil sensor, menampilkan teks, atau menampilkan menu pada aplikasi mikrokontroller.

Gambar 2.6 Block Diagram LCD

2.6.1 Klasifikasi LCD

  3 VEE Contrast voltage

Tabel 2.4 Pin dan fungsi LCD

  8 GND Ground voltage

  7 BPL Back Plane Light

  6 E Enable 0 = Start to lacht data to LCD character 1 = Disable

  5 R/W Read/write, to choose write or read mode 0 = Write mode 1 = Read mode

  4 RS Register Select 0 = Instruction register 1 = Data register

  a. 16 karakter x 2 baris

  b. 5x7 titik Matrix karakter + kursor

  1 VSS Ground voltage

  Pin Nama Fungsi

  Berikut table dan fungsi dari LCD :

  e. Tipe standar f. Bekerja hampir dengan semua Mikrokontroler.

  d. 4-bit atau 8-bit MPU Interface

  c. HD44780 Equivalent LCD kontroller/driver Built-In

  2 VCC +5V Display karakter pada LCD diatur oleh pin EN, RS dan RW: Jalur EN dinamakan Enable. Jalur ini digunakan untuk memberitahu LCD bahwa anda sedang mengirimkan sebuah data. Untuk mengirimkan data ke LCD, maka melalui program EN harus dibuat logika low “0” dan set pada dua jalur kontrol yang lain RS dan RW. Ketika dua jalur yang lain telah siap, set EN dengan logika “1” dan tunggu untuk sejumlah waktu tertentu ( sesuai dengan datasheet dari LCD tersebut ) dan berikutnya set EN ke logika low “0” lagi.

  Jalur RS adalah jalur Register Select. Ketika RS berlogika low “0”, data akan dianggap sebagai sebuah perintah atau instruksi khusus ( seperti clear screen, posisi kursor, dll ). Ketika RS berlogika high “1”, data yang dikirim adalah data text yang akan ditampilkan pada display LCD. Sebagai contoh, untuk menampilkan huruf “T” pada layar LCD maka RS harus diset logika high “1”. Jalur RW adalah jalur kontrol Read/Write. Ketika RW berlogika low (0), maka informasi pada bus data akan dituliskan pada layar LCD. Ketika RW berlogika high ”1”, maka program akan melakukan pembacaan memori dari LCD. Sedangkan pada aplikasi umum pin RW selalu diberi logika low ”0”. Pada akhirnya, bus data terdiri dari 4 atau 8 jalur ( bergantung pada mode operasi yang dipilih oleh user). Pada kasus bus data 8 bit, jalur diacukan sebagai DB0 s/d DB7

2.7 Perangkat Lunak

2.7.1 CodeVisionAVR

  CodeVisionAVR merupakan sebuah software yang digunakan untuk memprogram mikrokontroler sekarang ini telah umum. Mulai dari penggunaan untuk kontrol sederhana sampai kontrol yang cukup kompleks, mikrokontroler dapat berfungsi jika telah diisi sebuah program, pengisian program ini dapat dilakukan menggunakan compiler yang selanjutnya didownload ke dalam mikrokontroler menggunakan downloader. Salah satu compiler program yang umum digunakan sekarang ini adalah CodeVision AVR yang menggunakan bahasa pemrograman C.

  CodeVision AVR mempunyai suatu keunggulan dari compiler lain, yaitu adanya codewizard, fasilitas ini memudahkan kita dalam inisialisasi mikrokontroler yang akan kita gunakan, codevision telah menyediakan konfigurasi yang bisa diatur pada masing-masing chip mikrokontroler yang akan kita gunakan, sehingga kita tidak perlu melihat datasheet untuk sekedar mengonfigurasi mikrokontroler.

  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 sistem 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. 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.

  Adapun kelebihan-kelebihan yang dimiliki oleh CodeVisionAVR antara lain : 1.

  Menggunakan IDE (Integrated Development Environment).

  2. Fasilitas yang disediakan lengkap (mengedit program, mengkompile program, mendownload program) serta tampilannya terlihat menarik dan mudah dimengerti. Kita dapat mengatur settingan editor sedemikian rupa sehingga membantu memudahkan kita dalam penulisan program.

  3. Mampu membangkitkan kode program secara otomatis dengan menggunakan fasilitas CodeVisionAVR.

  4. Memiliki fasilitas untuk mendownload program langsung dari CodeVisionAVR dengan menggunakan hardware khusus seperti Atmel STK500, Kanda System STK200+ / 300 dan beberapa hardware lain yang telah didefinisikan oleh CodeVisionAVR.

  5. Memiliki fasilitas debugger sehingga dapat menggunakan software compiler lain untuk mengecek kode assembler nya, contohnya AVRStudio.

  6. Memiliki terminal komunikasi serial yang terintegrasi dalam CodeVisionAVR sehingga dapat digunakan untuk membantu pengecekan program yang telah dibuat khususnya yang menggunakan fasilitas komunikasi serial UART.