BAB II LANDASAN TEORI 2.1 Pendahuluan Perubahan iklim global yang terjadi pada saat ini menyebabkan kondisi cuaca susah ditebak , hal ini menyebabkan perubahan cuaca secara tiba tiba dari panas ke hujan sebaliknya. Akibatnya banyak aktifitas yang terganggu akibat hal tersebut, diantaranya kegiatan menjemur pakaian. Adalah suatu kegiatan yang sering dilakukan di dalam kehidupan rumah tangga.dan biasa kita lihat menjemur pakaian sering kita tinggal bepergian, sehingga tidak sempat lagi untuk mengangkat jemuran pada waktu akan turun hujan atau hari sudah malam,untuk mengatasi masalah tersebut perlu adanya sistem kontrol otomatis untuk menjemur pakaian. Dalam perancangan impleentasi sistem atap rumah otomatis, masalah masalah yang dapat dipecahkan adalah meliputi : sistem pengendali atap rumah,arsitektur perangkat keras, meliputi : perangkat elektroniki dan mekanik. Penggunaan alat ini akan sangat membantu dalam kegiatan sehari hari. 2.2 Dasar Sistem Kendali Sistem kendali atau sistem kontrol merupakan suatu sistem yang keluaranya atau outputnya dikendalikan pada suatu nilai tertentu atau untuk merubah beberapa ketentuan yang telah ditetapkan dari masukan atau input ke sistem. Untuk merancang suatu sistem kendali yang dapat merespon perubahan tegangan dan menjalankan perintah berdasarkan situasi yang terjadi, maka diperlukan pemahaman tentang sistem kendali (controll system). Sistem kendali
4
5
merupakan suatu kondisi dimana sebuah perangkat (device) dapat dikontrol sesuai dengan perubahan situasi. 2.3 Komponen Hardware 2.3.1
Power Supplay
Gambar 2.1 : Power supplay Power supply adalah perangkat keras berupa kotak yang isinya merupakan kabel-kabel untuk menyalurkan tegangan ke dalam perangkat keras lainnya. Input power supply berupa arus bolak-balik (AC) sehingga power supply harus mengubah tegangan AC menjadi DC (arus searah). Besarnya listrik yang mampu ditangani power supply ditentukan oleh dayanya dan dihitung dengan satuan Watt. Powersupplay berfungsi sebagai penyupali tenaga untuk menghidupkan sebuah sistem. 2.3.2
Kapasitor
Gambar 2.2 : Kapasitor
6
Kapasitor adalah perangkat komponen elektronika yang berfungsi untuk menyimpan muatan listrik dan terdiri dari dua konduktor yang dipisahkan oleh bahan
penyekat
(dielektrik)
pada
tiap
konduktor
atau
yang
disebut
keping. Kapasitor biasanya disebut dengan sebutan kondensator yang merupakan komponen listrik dibuat sedemikian rupa sehingga mampu menyimpan muatan listrik. Prinsip kerja kapasitor pada umunya hampir sama dengan resistor yang juga termasuk ke dalam komponen pasif. Komponen pasif adalah jenis komponen yang bekerja tanpa memerlukan arus panjar. Kapasitor sendiri terdiri dari dua lempeng logam (konduktor) yang dipisahkan oleh bahan penyekat (isolator). Penyekat atau isolator banyak disebut sebagai bahan zat dielektrik. 2.3.3
Mikrokontroler ATMega8535
Gambar 2.3 : Minimum Sistem Atmega8535 Mikrokontroler adalah IC yang dapat diprogram berulang kali, baik ditulis atau dihapus (Agus Bejo, 2007). Biasanya digunakan untuk pengontrolan otomatis dan manual pada perangkat elektronika.
7
Beberapa tahun terakhir, mikrokontroler sangat banyak digunakan terutama dalam pengontrolan robot. Seiring perkembangan elektronika, mikrokontroler dibuat semakin kompak dengan bahasa pemrograman yang juga ikut berubah. Salah satunya adalah mikrokontroler AVR (Alf and Vegard’s Risc processor) ATmega8535 yang menggunakan teknologi RISC (Reduce Instruction Set Computing) dimana program berjalan lebih cepat karena hanya membutuhkan satu siklus clock untuk mengeksekusi satu instruksi program. Secara umum, AVR dapat dikelompokkan menjadi 4 kelas, yaitu kelas ATtiny, keluarga AT90Sxx, keluarga ATmega, dan AT86RFxx. Pada dasarnya yang membedakan masingmasing kelas adalah memori, peripheral, dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan hampir sama. Mikrokontroler AVR ATmega8535 memiliki fitur yang cukup lengkap. Mikrokontroler AVR ATmega8535 telah dilengkapi dengan ADC internal, EEPROM internal, Timer/Counter, PWM, analog comparator, dll (M.Ary Heryanto, 2008). Sehingga dengan fasilitas yang lengkap ini memungkinkan kita belajar mikrokontroler keluarga AVR dengan lebih mudah dan efisien, serta dapat mengembangkan kreativitas penggunaan mikrokontroler ATmega8535. Fitur-fitur yang dimiliki oleh mikrokontroler ATmega8535 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. Tiga buah Timer/Counter dengan kemampuan pembandingan. 4. CPU yang terdiri atas 32 buah register. 5. SRAM sebesar 512 byte.
8
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. 2.3.4
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
9
(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. ATmega8535 merupakan tipe AVR yang telah dilengkapi dengan 8 saluran ADC internal dengan fidelitas 10 bit. Dalam mode 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.
10
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
11
Pin-pin pada Mikrokontroler ATmega8535
Gambar 2.4 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 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)
12
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
13
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 Match Output)
PD4
OC1B (Timer/Counter1 Output Compare B Match Output)
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 Post D
2.3.5
Sensor Hujan
Gambar 2.5 : Sensor hujan Secara umum sensor hujan didefenisikan sebagai alat yang mampu menangkap fenomena fisika atau kimia kemudian mengubahnya menjadi sinyal elektrik baik arus fisik maupun tegangan.sensor hujan dirancang untuk
14
mendeteksi air pada saat turun hujan tetapi juga dapat digunakan untuk mendeteksi level air.rangkaian sensor hujan menggunakan komponen resistor sebagai komponen utama dan elektroda sebagai pendeteksi air. 2.3.6
LCD 16X2
Gambar 2.6 : LCD 16 X 2 Display elektronik adalah salah satu komponen elektronika yang berfungsi sebagai tampilan suatu data, baik karakter, huruf ataupun grafik. LCD (Liquid Cristal Display) adalah salah satu jenis display elektronik yang dibuat dengan teknologi CMOS logic yang bekerja dengan tidak menghasilkan cahaya tetapi memantulkan cahaya yang ada di sekelilingnya terhadap front-lit atau mentransmisikan cahaya dari back-lit. LCD (Liquid Cristal Display) berfungsi sebagai penampil data baik dalam bentuk karakter, huruf,dan angka.
15
2.3.7
Potensiometer
Gambar 2.7 : Potensiometer Potensiometer adalah resistor tiga terminal dengan sambungan geser yang membentuk pembagi tegangan dapat disetel.[1] Jika hanya dua terminal yang digunakan (salah satu terminal tetap dan terminal geser), potensiometer berperan sebagai resistor variabel atau Rheostat. Potensiometer biasanya digunakan untuk mengendalikan peranti elektronik seperti pengendali suara pada penguat. Potensiometer yang dioperasikan oleh suatu mekanisme dapat digunakan sebagai transduser, misalnya sebagai sensor joystick.
1. Elemen resistif 2. Badan 3. Penyapu (wiper) 4. Sumbu 5. Sambungan tetap pertama 6. Sambungan penyapu 7. Cincin
16
8. Baut 9. Sambungan tetap kedua Potensiometer jarang digunakan untuk mengendalikan daya tinggi (lebih dari 1 Watt) secara langsung. Potensiometer digunakan untuk menyetel taraf isyarat analog (misalnya pengendali suara pada peranti audio), dan sebagai pengendali masukan untuk sirkuit elektronik. Sebagai contoh, sebuah peredup lampu menggunakan potensiometer untuk menendalikan pensakelaran sebuah TRIAC, jadi secara tidak langsung mengendalikan kecerahan lampu. Potensiometer yang digunakan sebagai pengendali volume kadang-kadang dilengkapi dengan sakelar yang terintegrasi, sehingga potensiometer membuka sakelar saat penyapu berada pada posisi terendah. 2.3.8
Limit Swicth
Gambar 2.8 : Limit Switch Limit switch merupakan jenis saklar yang dilengkapi dengan katup yang berfungsi menggantikan tombol. Prinsip kerja limit switch sama seperti saklar Push ON yaitu hanya akan menghubung pada saat katupnya ditekan pada batas penekanan tertentu yang telah ditentukan dan akan memutus saat saat katup tidak
17
ditekan. Limit switch termasuk dalam kategori sensor mekanis yaitu sensor yang akan memberikan perubahan elektrik saat terjadi perubahan mekanik pada sensor tersebut. Penerapan dari limit switch adalah sebagai sensor posisi suatu benda (objek) yang bergerak 2.3.9
Driver L298
Gambar 2.9 : Driver L298 IC L298 adalah sebuah IC H-bridge yang mampu mengendalikan bebanbeban induktif seperti relay, solenoid, motor DC dan motor stepper. IC L298 mempunyai 2 buah H-bridge di dalamnya sehingga bisa mengendalikan kecepatan dan arah 2 buah motor DC dengan arus 2 Amps setiap H-bridge nya. Kedua H bridge di dalam IC ini bisa di parallel untuk meningkatkan kemampuan menopang arus mencapai 4 Amp. Dalam penggunaan nya IC L298 biasanya dipasangi heat sink untuk mecegah terjadinya over temperature. IC L 298 ini sering digunakan untuk robot line follower, robot KRI ataupun KRCI karena praktis dan melewatkan arus yang
18
cukup besar. Spesifikasi IC L298 :Tegangan operasi mencapai 46 volts-Mampu mengendalikan motor stepper bipolar 2 ampsMampu mengontrol arah motor DC dengan arus maks 2 amps setiap h-bridge.Mampu mengendalikan motor DC 4 amp dengan memparalelkan kedua h-bridge di dalam IC L298. Mendukung control PWM dengan frekuensi mencapai 20 KHZ. Mempunyai sensor arus keluaran Mempunyai Proteksi over temperatureSupply voltage: +5 VDC KONFIGURASI PIN IC L298 Keterangan Input 1, input 2, input 3, input 4 dihubungkan ke mikrokontroler sebagai direksi Enable A, Enable B dihubungkan ke Port OC pada mikro sebagai input PWM Cur Sen A, Cur Sen B dihubungkan ke groundLogic Supply Voltage Vss dihubungkan ke vcc mikro (5V)Supply Voltage Vs dihubungkan ke Catu Daya batere (12V)Output 1, output 2, output 3, output 3 dihubungkan ke motor DC 2.3.10 Motor DC
Gambar 2.10 : Motor DC Pengendali / Kontroler LCD (Liquid Cristal Display) Dalam modul LCD (Liquid Cristal Display) terdapat microcontroller yang berfungsi sebagai
19
pengendali tampilan karakter LCD (Liquid Cristal Display). Microntroller pada suatu LCD (Liquid Cristal Display) dilengkapi dengan memori dan register. Memori yang digunakan microcontroler internal LCD adalah : DDRAM (Display Data Random Access Memory) merupakan memori tempat karakter yang akan ditampilkan berada. CGRAM (Character Generator Random Access Memory) merupakan memori untuk menggambarkan pola sebuah karakter dimana bentuk dari karakter dapat diubah-ubah sesuai dengan keinginan. CGROM (Character Generator Read Only Memory) merupakan memori untuk menggambarkan pola sebuah karakter dimana pola tersebut merupakan karakter dasar yang sudah ditentukan secara permanen oleh pabrikan pembuat LCD (Liquid Cristal Display) tersebut sehingga pengguna tinggal mangambilnya sesuai alamat memorinya dan tidak dapat merubah karakter dasar yang ada dalam CGROM. Register control yang terdapat dalam suatu LCD diantaranya adalah. Register perintah yaitu register yang berisi perintah-perintah dari mikrokontroler ke panel LCD (Liquid Cristal Display) pada saat proses penulisan data atau tempat status dari panel LCD (Liquid Cristal Display) dapat dibaca pada saat pembacaan data. Register data yaitu register untuk menuliskan atau membaca data dari atau keDDRAM. Penulisan data pada register akan menempatkan data tersebut keDDRAM sesuai dengan alamat yang telah diatur sebelumnya. Pin, kaki atau jalur input dan kontrol dalam suatu LCD (Liquid Cristal Display) diantaranya adalah : Pin data adalah jalur untuk memberikan data karakter yang ingin ditampilkan menggunakan LCD (Liquid Cristal Display) dapat dihubungkan dengan bus data dari rangkaian lain seperti mikrokontroler dengan lebar data 8 bit.
20
Pin RS (Register Select) berfungsi sebagai indikator atau yang menentukan jenis data yang masuk, apakah data atau perintah. Logika low menunjukan yang masuk adalah perintah, sedangkan logika high menunjukan data. Pin R/W (Read Write) berfungsi sebagai instruksi pada modul jika low tulis data, sedangkan high baca data. Pin E (Enable) digunakan untuk memegang data baik masuk atau keluar. Pin VLCD berfungsi mengatur kecerahan tampilan (kontras) dimana pin ini dihubungkan dengan trimpot 5 Kohm, jika tidak digunakan dihubungkan ke ground, sedangkan tegangan catu daya ke LCD sebesar 5 Volt Motor DC (Direct Current) adalah peralatan elektromagnetik dasar yang berfungsi untuk mengubah tenaga listrik menjadi tenaga mekanik yang desain awalnya diperkenalkan oleh Michael faraday lebih dari seabad yang lalu (E. Pitowarno, 2006). Motor DC dikendalikan dengan menentukan arah dan kecepatan putarnya. Arah putaran motor DC adalah searah dengan arah putaran jarum jam (Clock Wise/CW) atau berlawanan arah dengan arah putaran jarum jam (Counter Clock Wise/CCW), yang bergantung dari hubungan kutub yang diberikan pada motor DC. Kecepatan putar motor DC diatur dengan besarnya arus yang diberikan. Motor DC dipakai untuk menggerakkan roda robot. Digunakan H-Brighge IC L298 sebagai penguat motor DC yang berfungsi sebagai driver, sebab sangat tidak mungkin mengendalikan motor DC langsung dari mikrokontroler yang memiliki arus dan tegangan terbatas. Untuk itu digunakan H-Brihge sebagai driver motor DC (H.Andrianto, 2008).
21
Metode Pulsa with modulation atau PWM dapat digunakan untuk mengatur kecepatan motor dan untuk menghindarkan rangkaian mengkomsumsi daya berlebih. PWM dapat mengatur kecepatan motor karena tegangan yang diberikan dalam selang waktu tertentu saja. PWM ini dapat dibangkitkan melalui software. Lebar pulsa PWM dinyatakan dalam Duty Cycle. Misalnya duty cycle 10 %, berarti lebar pulsa adalah 1/10 bagian dari satu perioda penuh (E. Pitowarno, 2006). 2.3.11 Gear Box
Gambar 2.11. Gear box motor dc Dalam beberapa unit mesin memiliki sistem pemindah tenaga yaitu gearbox yang berfungsi untuk menyalurkan tenaga atau daya mesin ke salah satu bagian mesin lainnya, sehingga unit tersebut dapat bergerak menghasilkan sebuah pergerakan baik putaran maupun pergeseran. Gearbox merupakan suatu alat khusus yang diperlukan untuk menyesuaikan daya atau torsi (momen/daya) dari motor yang berputar, dan gearbox juga adalah alat pengubah daya dari motor yang berputar menjadi tenaga yang lebih besar
22
2.2 Komponen Software 2.2.1
Pemrograman Bahasa C Bahasa
pemrograman
C merupakan
salah
satu bahasa
pemrograman komputer. Dibuat pada tahun 1972 oleh Dennis Ritchie untuk Sistem Operasi Unix di Bell Telephone Laboratories.Meskipun C dibuat untuk memprogram sistem dan jaringan komputer namun bahasa ini juga sering digunakan dalam mengembangkan software aplikasi. C juga banyak dipakai oleh berbagai jenis platform sistem operasi dan arsitektur komputer, bahkan terdapat beberepa compiler yang sangat populer telah tersedia. C secara luar biasa memengaruhi bahasa populer lainnya, terutama C++ yang merupakan extensi dari C 2.2.2
Codevision AVR CodeVision AVR 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 diprogram ke dalam mikrokontroler menggunakan fasilitas yang sudah di sediakan oleh program tersebut. 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.
23
2.2.3
AVRProg AVRProg adalah aplikasi yang digunakan untuk mentransfer program dari
codevisionAVR ke mikrokontroler.