5 BAB II LANDASAN TEORI 2.1 TEORI SINGKAT 2.1.1 MIKROKONTROLER AVR AVR adalah sebuah mikrokontroler yang dibuat dengan menggunakan arsitektur Harvard dimana data dan program disimpan secara terpisah sehingga sangat baik untuk sebuah sistem terbenam di lapangan karena terlindungi dari interferensi yang dapat merusak isi program. Salah satu mikrokontroler keluarga AVR yang dipergunakan pada penelitian ini yaitu ATmega328. ATMega328 memiliki fitur 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. Dibawah ini merupakan penjelasan melalui gambar mengenai konfigurasi pin-pin yang merupakan bagian dari mikrokontoller ATMega328 yang digunakan didalam modul board arduino yang digunakan dalam penelitian dan perancangan ini adalah, sebagai berikut ini: Gambar 2.1 Konfigurasi Pin ATMega328 Sumber: http://www.jasonvolk.com/wp-content/uploads/2010/04/mega328p.jpg 6 2.1.2 Arduino Uno Arduino adalah platform pembuatan prototipe elektronik yang bersifat open-source hardware yang berdasarkan pada perangkat keras dan perangkat lunak yang fleksibel dan mudah digunakan. Arduino ditujukan bagi para seniman, desainer, dan siapapun yang tertarik dalam menciptakan objek atau lingkungan yang interaktif. Arduino pada awalnya dikembangkan di Ivrea, Italia. Nama Arduino adalah sebuah nama maskulin yang berarti teman yang kuat. Platform arduino terdiri dari arduino board, shield, bahasa pemrograman arduino, dan arduino development environment. Arduino board biasanya memiliki sebuah chip dasar mikrokontroler Atmel AVR ATmega8 berikut turunannya. Blok diagram arduino board yang sudah disederhanakan dapat dilihat pada (gambar 2.2) Shield adalah sebuah papan yang dapat dipasang diatas arduino board untuk menambah kemampuan dari arduino board. Bahasa pemrograman arduino adalah bahasa pemrograman yang umum digunakan untuk membuat perangkat lunak yang ditanamkan pada arduino board. Bahasa pemrograman arduino mirip dengan bahasa pemrograman C++. Gambar 2.2 Konfigurasi Pin ATMega328 pada board arduino 7 Arduino uno merupakan salah satu jenis rangkaian mikrokontroller yang menggunakan system physical computing. Physical computing adalah membuat sebuah sistem atau perangkat fisik dengan menggunakan software dan hardware yang sifatnya interaktif yaitu dapat menerima rangsangan dari lingkungan dan merespon balik. Physical computing adalah sebuah konsep untuk memahami hubungan yang manusiawi antara lingkungan yang sifat alaminya adalah analog dengan dunia digital(Djuandi,2011). Pada prakteknya konsep ini diaplikasikan dalam desain-desain alat atau projek-projek yang menggunakan sensor dan microcontroller untuk menerjemahkan input analog ke dalam sistem software untuk mengontrol gerakan alat-alat elektro-mekanik seperti lampu, motor dan sebagainya. Pembuatan prototype atau prototyping adalah kegiatan yang sangat penting di dalam prose physical computing karena pada tahap inilah seorang perancang melakukan eksperimen dan ujicoba dari berbagai jenis komponen, ukuran, parameter, program komputer dan sebagainyaberulang-ulang kali sampai diperoleh kombinasi yang paling tepat. Dalam hal ini perhitungan angka-angka dan rumus yang akurat bukanlah satu-satunya faktor yang menjadi kunci sukses di dalam mendesain sebuah alat karena ada banyak faktor eksternal yang turut berperan, sehingga proses mencoba dan menemukan/mengoreksi kesalahan perlu melibatkan hal-hal yang sifatnya non-eksakta. Prototyping adalah gabungan antara akurasi perhitungan dan seni. Proses prototyping bisa menjadi sebuah kegiatan yang menyenangkan atau menyebalkan, itu tergantung bagaimana kita melakukannya. Misalnya jika untuk mengganti sebuah komponen, merubah ukurannya atau merombak kerja sebuah prototype 8 dibutuhkan usaha yang besar dan waktu yang lama, mungkin prototyping akan sangat melelahkan karena pekerjaan ini dapat dilakukan berulang-ulang sampai puluhan kali – bayangkan betapa frustasinya perancang yang harus melakukan itu. Idealnya sebuah prototype adalah sebuah sistem yang fleksibel dimana perancang bisa dengan mudah dan cepat melakukan perubahan-perubahan dan mencobanyalagi sehingga tenaga dan waktu tidak menjadi kendala berarti. Dengan demikian harus ada sebuah alat pengembangan yang membuat proses prototyping menjadi mudah. Pada masa lalu (dan masih terjadi hingga hari ini) bekerja dengan hardware berarti membuat rangkaian menggunakan berbagai komponen elektronik seperti resistor, kapasitor, transistor dan sebagainya. Setiap komponen disambungkan secara fisik dengan kabel atau jalur tembaga yang disebut dengan istilah “hard wired” sehingga untuk merubah rangkaian maka sambungan-sambungan itu harus diputuskan dan disambung kembali. Dengan hadirnya teknologi digital dan microprocessor fungsi yang sebelumnya dilakukan dengan hired wired digantikan dengan program-program software. Ini adalah sebuah revolusi di dalam proses prototyping. Di antara sekian banyak alat pengembangan prototype, Arduino adalah salah satunya yang paling banyak digunakan. Arduino dikatakan sebagai sebuah platform dari physical computing yang bersifat open source. Pertama-tama perlu dipahami bahwa kata “platform” di sini adalah sebuah pilihan kata yang tepat. Arduino tidak hanya sekedar sebuah alat pengembangan, tetapi ia adalah kombinasi dari hardware, bahasa pemrograman dan Integrated Development Environment (IDE) yang canggih. IDE adalah sebuah software yang sangat berperan untuk menulis program, meng-compile menjadi kode biner dan mengupload ke dalam memory microcontroller. Ada banyak projek dan alat-alat 9 dikembangkan oleh akademisi dan profesional dengan menggunakan Arduino, selain itu juga ada banyak modul-modul pendukung (sensor, tampilan, penggerak dan sebagainya) yang dibuat oleh pihak lain untuk bisa disambungkan dengan Arduino. Arduino berevolusi menjadi sebuah platform karena ia menjadi pilihan dan acuan bagi banyak praktisi. Software lebih mudah diubah dibandingkan hardware, dengan beberapa penekanan tombol kita dapatmerubah logika alat secara radikal dan mencoba versi ke-dua, ke-tiga dan seterusnya dengan cepat tanpa harus mengubah pengkabelan dari rangkaian. Salah satu yang membuat Arduino memikat hati banyak orang adalah karena sifatnya yang open source, baik untuk hardware maupun software-nya. Diagram rangkaian elektronik Arduino digratiskan kepada semua orang. Anda bisa bebas men-download gambarnya, membeli komponen-komponennya, membuat PCB-nya dan merangkainya sendiri tanpa harus membayar kepada para pembuat Arduino. Sama halnya dengan IDE Arduino yang bisa di-download dan diinstal pada komputer secara gratis. Kita patut berterima kasih kepada tim Arduino yang sangat dermawan membagi-bagikan kemewahan hasil kerja keras mereka kepada semua orang. Arduino Uno adalah arduino board yang menggunakan mikrokontroler ATmega328. Arduino Uno memiliki 14 pin digital (6 pin dapat digunakan sebagai output PWM), 6 input analog, sebuah 16 MHz osilator kristal, sebuah koneksi USB, sebuah konektor sumber tegangan, sebuah header ICSP, dan sebuah tombol reset. Arduino Uno memiliki area cakupan yang luas untuk segala hal yang dibutuhkan untuk mendukung sebuah aplikasi yang berbasiskan mikrokontroler. Hanya dengan menghubungkannya ke sebuah komputer melalui USB atau 10 memberikan tegangan DC dari baterai atau adaptor AC ke DC sudah dapat membuat aplikasinya bekerja. Arduino Uno menggunakan ATmega16U2 yang diprogram sebagai USB-to-serial converter untuk komunikasi serial ke komputer melalui port USB. Adapun data teknis yang terdapat board Arduino UNO R3 adalah sebagai berikut: ● Mikrokontroler: ATmega328 ● Tegangan Operasi: 5V ● Tegangan Input (recommended): 7 - 12 V ● Tegangan Input (limit): 6-20 V ● Pin digital I/O: 14 (6 diantaranya pin PWM) ● Pin Analog input: 6 input pin ● Arus DC per pin I/O: 40 mA ● Arus DC untuk pin 3.3 V: 150 mA ● Flash Memory: 32 KB dengan 0.5 KB digunakan sebagai bootloader ● SRAM: 2 KB ● EEPROM: 1 KB ● Kecepatan besaran waktu sebesar: 16 Mhz sebagai komponen untuk (Crystall oscillator) Untuk memberikan gambaran mengenai apa saja yang terdapat di dalam sebuah microcontroller, pada gambar berikut ini diperlihatkan (gambar 2.3) contoh diagram blok sederhana dari microcontroller ATmega328 (dipakai pada Arduino Uno) seperti gambar blok diagram sederhana dibawah ini: 11 Gambar 2.3 Konfigurasi Pin ATMega328 Sumber: http://www.arduino.cc Blok-blok di atas dijelaskan sebagai berikut: Universal Asynchronous Receiver/Transmitter (UART) adalah antar muka yang digunakan untuk komunikasi serial seperti pada RS-232, RS-422 dan RS-485. 2KB RAM pada memory kerja bersifat volatile (hilang saat daya dimatikan), digunakan oleh variable-variabel di dalam program. 32KB RAM flash memory bersifat non-volatile, digunakan untuk menyimpan program yang dimuat dari komputer. Selain program, flash memory juga menyimpan bootloader. Bootloader ini yang menjembatani antara software compiler arduino dengan mikrokontroler. Dan ketika pengguna papan mikrokontroller arduino menulis program tidak perlu banyak menuliskan sintak bahasa C, cukup melakukan pemanggilan fungsi program, hemat waktu dan pikiran. 12 1KB EEPROM bersifat non-volatile, digunakan untuk menyimpan data yang tidak boleh hilang saat daya dimatikan. Tidak digunakan pada papan Arduino. Central Processing Unit (CPU), bagian dari microcontroller untuk menjalankan setiap instruksi dari program. Port input/output, pin-pin untuk menerima data (input) digital atau analog, danmengeluarkan data (output) digital atau analog. Setelah mengenal bagian-bagian utama dari microcontroller ATmega sebagai komponen utama, selanjutnya kita akan mengenal bagian-bagian dari papan Arduino itu sendiri. Dengan mengambil contoh sebuah papan Arduino tipe USB, bagian-bagiannya dapat dijelaskan sebagai berikut seperti pada (gambar 2.4) seperti gambar dibawah ini: Gambar 2.4 Konfigurasi Pin ATMega328 arduino uno Sumber: http://arduino.cc/en/main/hardware 13 Tabel 2.1 Tabel karakteristik rangkaian pada board arduino uno 14 pin input/output digital (0-13) Berfungsi sebagai input atau output, dapat diatur oleh program. Khusus untuk 6 buah pin 3, 5, 6, 9, 10 dan 11, dapat juga berfungsi sebagai pin analog output dimana tegangan output-nya dapat diatur. Nilai sebuah pin output analog dapat diprogram antara 0 – 255, dimana hal itu mewakili nilai tegangan 0 – 5V USB Berfungsi untuk: - Memuat program dari komputer ke dalam papan - Komunikasi serial antara papan dan komputer - Memberi daya listrik kepada papan Sambungan SV1 Sambungan atau jumper untuk memilih sumber daya papan, apakah dari sumber eksternal atau menggunakan USB. Sambungan ini tidak diperlukan lagi pada papan Arduino versi terakhir karena pemilihan sumber daya eksternal atau USB dilakukan secara otomatis Q1 – Kristal (quartz crystal oscillator) Jika microcontroller dianggap sebagai sebuah otak, maka kristal adalah jantung-nya karena komponen ini menghasilkan detak-detak yang dikirim kepada microcontroller agar melakukan sebuah operasi untuk setiap detak-nya. Kristal ini dipilih yang berdetak 16 juta kali per detik (16MHz). 14 Tombol Reset S1 Untuk me-reset papan sehingga program akan mulai lagi dari awal. Perhatikan bahwa tombol reset ini bukan untuk menghapus program atau mengosongkan microcontroller. In-Circuit Serial Programming (ICSP) Port ICSP memungkinkan microcontroller secara pengguna langsung, tanpa untuk melalui memprogram bootloader. Umumnya pengguna Arduino tidak melakukan ini sehingga ICSP tidak terlalu dipakai walaupun disediakan. IC 1 – Microcontroller Atmega Komponen utama dari papan Arduino, di dalamnya terdapat CPU, ROM dan RAM. sum X1 – sumber daya ekstber daya eksternal Jika hendak disuplai dengan sumber daya eksternal, papan Arduino dapat diberikan tegangan DC antara 9-12V. 6 pin input analog (0-5) Pin ini sangat berguna untuk membaca tegangan yang dihasilkan oleh sensor analog, seperti sensor suhu. Program dapat membaca nilai sebuah pin input antara 0 – 1023, dimana hal itu mewakili nilai tegangan 0 – 5V. Tanpa melakukan konfigurasi apapun, begitu sebuah papan Arduino dikeluarkan dari kotak pembungkusnya ia dapat langsung disambungkan ke sebuah komputer melalui kabel USB. Selain berfungsi sebagai penghubung untuk pertukaran data, kabel USB ini juga akan mengalirkan arus DC sebesar: 5 Volt 15 kepada papan Arduino sehingga praktis tidak diperlukan sumber daya dari luar. Saat mendapat suplai daya, lampu LED indikator daya pada papan Arduino akan menyala menandakan bahwa ia siap bekerja. Gambar 2.5 Komponen LED yang terdapat pada board Arduino Uno Sumber: http://arduino.cc/en/main/hardware Pada papan Arduino Uno terdapat sebuah LED kecil yang terhubung ke pin digital 13. LED ini dapat digunakan sebagai output saat seorang pengguna membuat sebuah program dan ia membutuhkan sebuah penanda dari jalannya program tersebut. Ini adalah cara yang praktis saat pengguna melakukan uji coba. Umumnya microcontroller pada papan Arduino telah memuat sebuah program kecil yang akan menyalakan LED tersebut berkedip-kedip dalam jeda satu detik. Jadi sangat mudah untuk menguji apakah sebuah papan Arduino baru dalam kondisi baik atau tidak, cukup sambungkan papan itu dengan sebuah komputer dan perhatikan apakah LED indikator daya menyala konstan dan LED dengan pin-13 itu menyala berkedip-kedip. 16 2.2 Pengenalan Sensor Sensor merupakan jenis tranduser yang digunakan untuk mengubah besaran mekanis, magnetis, panas, sinar, dan kimia menjadi tegangan dan arus listrik. Sensor sering digunakan untuk pendeteksian pada saat melakukan pengukuran atau pengendalian. Beberapa jenis sensor yang banyak digunakan dalam rangkaian elektronik antara lain sensor cahaya(LDR),sensor suhu(LM35), dan sensor kelembaban uadara(DHT11). Ada 4 jenis utama sensor suhu yang biasa digunakan : yaitu Thermocouple, Detektor suhu tahanan, Thermistor, Sensor suhu layanan terpadu (IC). Tabel 2.1. Keterangan dari sensor suhu yang biasa digunakan A. Thermocouple Thermocouple pada pokoknya terdiri dari sepasang penghantar yang berbeda disambung las dilebur bersama satu sisi membentuk “hot” atau sambungan pengukuran yang ada ujung-ujung bebasnya untuk hubungan dengan sambungan 17 referensi. Perbedaan suhu antara sambungan pengukuranmdengan sambungan referensi harus muncul untuk alat ini sehingga berfungsi sebagai thermocouple. Gambar 2.6 Gambar 2.7 Thermocouple Simbol thermocouple B. Detektor Suhu Tahanan Konsep utama dari yang mendasari pengukuran suhu dengan detektor suhu tahanan (resistant temperature detector = RTD) adalah tahanan listrik dari logam yang bervariasi sebanding dengan suhu. Kesebandingan variasi ini adalah presisi dan dapat diulang lagi sehingga memungkinkan pengukuran suhu yang konsisten melalui pendeteksian tahanan. Bahan yang sering digunakan RTD adalah platina karena kelinearan, stabilitas dan reproduksibilitas. 18 Gambar 2.8 Detektor suhu tahanan Gambar 2.9 Simbol RTD C. Thermistor Adalah resistor yang peka terhadap panas yang biasanya mempunyai koefisien suhu negatif. Karena suhu meningkat, tahanan menurun dan sebaliknya. Thermistor sangat peka (perubahan tahanan sebesar 5 % per ³C) oleh karena itu mampu mendeteksi perubahan kecil di dalam suhu. Gambar 2.10 Thermistor D. Sensor Suhu Rangkaian Terpadu (IC) Sensor suhu dengan IC ini menggunakan chip silikon untuk elemen yang merasakan (sensor). Memiliki konfigurasi output tegangan dan arus. Meskipun 19 terbatas dalam rentang suhu (dibawah 200 C), tetapi menghasilkan output yang sangat linear di atas rentang kerja. Gambar 2.11 2.2.1 Sensor suhu IC Sensor IC Suhu / Temperature (LM35) Karena komponen utama Arduino adalah mikrokontroler, maka Arduino pun dapat diprogram menggunakan komputer sesuai kebutuhan kita. untuk dapat mengukur suhu ruangan dibutuhkan satu komponen saja yaitu LM35. Selain modul mikrokontroler Arduino. LM35 adalah sensor suhu dari National Semiconductor yang mempunyai akurasi tinggi. Outputnya berupa tegangan analog dan memiliki jangkauan pengukuran -55ºC hingga +150ºC dengan akurasi ±0.5ºC. Tegangan output adalah 10mV/ºC. Output dapat langsung dihubungkan port mikrokontroler yang memiliki ADC atau dengan Arduino, karena Arduino memiliki port ADC (analog input) sebanyak 6 buah. kemudian rangkaian modul Arduino dengan sensor suhu seperti gambar di bawah ini ; 20 Gambar 2.12 Sensor suhu/Temperature (LM35) Sumber: http://www.sunrom.com Gambar 2.13 Tampak bawah sensor suhu (LM35) Sumber : http://www.sunrom.com Dari penjelasan (gambar 2.6),dan seperti gambar (gambar 2.7)diatas bahwa struktur kaki-kaki yang merupakan bagian dari sensor suhu/temperature LM35 memiliki tiga buah kaki yaitu: pada bagian kaki(+Vs),dihubungkan ke bagian (Vcc) yg bernilai sebesar 5V,pada board arduino uno dan untuk bagian kaki GND dihubungkan ke ground (GND)pada board arduino uno,sedangkan pada bagian kaki(VOut)yang merupakan keluaran(Output)dari hasil pengolahan data analog dari 21 sensor LM35 yang dihubungkan ke bagian analog input0(pin A0) pada board arduino uno. 2.2.2 Teori konsep penggabungan sensor dan pembuat program Pada tahapan ini teori mengacu kepada pembelajaran untuk mencari solusi untuk menggabungkan dan menyatukan kumpulan komponenkomponen tersebut agar dapat bekerja bersamaan/parallel, dimana perancng menemukan solusi dan mencoba memecahkan masalah ini dengan konsep kerja yang menggunakan sistem penyatuan rangkaian dengan menggunakan konsep ” Thermometer digital Multi channel”, yang dihubungkan ke arduino uno yang merupakan pusat pengolahan data analog sebagai masukan (Input) yang akan diproses melalui proses konversi data menjadi data digital dengan menggunakan ADC (Analog to Digital Converter) yang merupakan hasil untuk (Output) yang ditampilkan pada display yaitu LCD 16x2, Output serial pada program arduino v1.0.4 dan program tampilan Thermometer digital Multi channel yang dibuat oleh perancang dengan menggunakan program Visual basic 6. 2.3 Liquid Crystal Dispaly (LCD) Liquid Crystal Display adalah suatu jenis media tampilan yang menggunakan kristal cair sebagai penampil utama. LCD bisa memunculkan gambar atau tulisan dikarenakan terdapat banyak sekali titik cahaya (pixel) yang terdiri dari satu buah kristal cair sebagai sebuah titik cahaya. Dan juga LCD merupakan salah satu komponen penting dalam pembuatan tugas akhir ini karena LCD dapat menampilkan perintah-perintah yang harus dijalankan oleh pemakai. LCD mempunyai kemampuan untuk menampilkan tidak hanya angka, huruf abjad, kata-kata tapi juga simbol-simbol. Jenis dan ukuran LCD 22 bermacam-macam, antara lain 2x16, 2x20, 2x40, dan lain-lain. LCD mempunyai dua bagian penting yaitu backlight yang berguna jika digunakan pada malam hari dan contrast yang berfungsi untuk mempertajam tampilan. LCD yang digunakan pada tugas akhir ini yaitu 16x2 yang memiliki fitur sebagai berikut: a. Terdiri dari 16 karakter dan 2 baris b. Mempunyai 192 karakter tersimpan c. Terdapatkarakter generator terprogram d. Dapat dialamati dengan mode 4 bit dan 8 bit e. Dilengkapi dengan backlight Gambar 2.14 Liquid Crystal Display (LCD) Untuk mengakses LCD 16x2 harus mengkonfigurasi pin dari LCD dengan pin I/O mikrokontroler tersebut. Konfigurasi dari pin-pin tersebut sebagai berikut: 23 Fungsi dari masing– masing pin pada LCD adalah pin pertama dan kedua merupakan pin untuk tegangan suplai sebesar 5 volt, untuk pin ketiga harus ditambahkan resistor variabel 4K7 atau 5K ke pin ini sebagai pengatur kontras tampilan yang diinginkan. Pin keempat berfungsi untuk memasukkan input command atau input data, jika ingin memasukkan input command maka pin 4 diberikan logic low (0), dan jika ingin memasukkan input data maka pin 4 diberikan logic high (1). Fungsi pin kelima untuk read atau write, jika diinginkan untuk membaca karakter data atau status informasi dari register (read) maka harus diberi masukan high (1), begitu pula sebaliknya untuk menuliskan karakter data (write) maka harus diberi masukan low (0). Pada pin ini dapat dihubungkan ke ground bila tidak 24 diinginkan pembacaan dari LCD dan hanya dapat digunakan untuk mentransfer data ke LCD. Pin keenam berfungsi sebagai enable, yaitu sebagai pengatur transfer command atau karakter data ke dalam LCD. Untuk menulis ke dalam LCD data ditransfer waktu terjadi perubahan dari high ke low, untuk membaca dari LCD dapat dilakukan ketika terjadi transisi perubahan dari low ke high. Pin-pin dari nomor 7 sampai 14 merupakan data 8 bit yang dapat ditransfer dalam 2 bentuk yaitu 1 kali 8 bit atau 2 kali 4 bit, pin-pin ini akan langsung terhubung ke pin-pin mikrokontroler sebagai input/output. Untuk pin nomor 15-16 berfungsi sebagai backlight. 2.4 Push Button Gambar 2.15 Push Button Push Button adalah saklar tekan yang berfungsi sebagai pemutus atau penyambung arus listrik dari sumber arus ke beban listrik. Suatu sistem saklar tekan push button terdiri dari saklar tekan start, stop reset dan saklar tekan untuk emergency. Push button memiliki kontak NC (normally close) dan NO (normally open). 25 Prinsip kerja Push Button adalah apabila dalam keadaan normal tidak ditekan maka kontak tidak berubah, apabila ditekan maka kontak NC akan berfungsi sebagai stop (memberhentikan) dan kontak NO akan berfungsi sebagai start (menjalankan) biasanya digunakan pada sistem pengontrolan motor – motor induksi untuk menjalankan mematikan motor pada industri – industri. Push button dibedakan menjadi beberapa tipe, yaitu: a. Tipe Normally Open (NO)\ Tombol ini disebut juga dengan tombol start karena kontak akan menutup bila ditekan dan kembali terbuka bila dilepaskan. Bila tombol ditekan maka kontak bergerak akan menyentuh kontak tetap sehingga arus listrik akan mengalir. b. Tipe Normally Close (NC) Tombol ini disebut juga dengan tombol stop karena kontak akan membuka bila ditekan dan kembali tertutup bila dilepaskan. Kontak bergerak akan lepas dari kontak tetap sehingga arus listrik akan terputus. c. Tipe NC dan NO Tipe ini kontak memiliki 4 buah terminal baut, sehingga bila tombol tidak ditekan maka sepasang kontak akan NC dan kontak lain akan NO, bila tombol ditekan maka kontak tertutup akan membuka dan kontak yang membuka akan tertutup 2.5 Resistor (Hambatan) Gambar 2.16 Resistor (Hambatan) 26 Resistor adalah komponen elektronik dua kutub yang didesain untuk menahan arus listrikdengan memproduksi tegangan listrik di antara kedua kutubnya, nilai tegangan terhadap resistansi berbanding dengan arus yang mengalir, berdasarkan hukum Ohm: Resistor digunakan sebagai bagian dari jejaring elektronik dan sirkuit elektronik, dan merupakan salah satu komponen yang paling sering digunakan. Resistor dapat dibuat dari bermacam-macam kompon dan film, bahkan kawat resistansi (kawat yang dibuat dari paduan resistivitas tinggi seperti nikel-kromium). Karakteristik utama dari resistor adalah resistansinya dan daya listrik yang dapat dihantarkan. Karakteristik lain termasuk koefisien suhu, desah listrik, dan induktansi.(sumber:Wikipedia) Resistor berfungsi untuk: menahan arus dan tegangan listrik, membagi arus listrik, membagi tegangan listrik. Resistor biasanya terbuat dari bahan-bahan berikut ini: karbon, film karbon, film metal, dan lain-lain. Pada badan resistor atau tahanan biasanya menggunakan satuan ohm (Ω) diambil dari nama George Ohm.Berikut ini satuan turunan dari ohm: Ohm = Ω Kilo Ohm = KΩ Mega Ohm = MΩ KΩ = 1 000Ω MΩ = 1 000 000Ω 27 Biasanya untuk mengetahui nilai tahanan pada resistor ditandai dengan angka atau menggunakan kode warna pada gelang resistor.Berikut ini cara membaca tahanan resistor: Angka Untuk pembacaan angka pada resistor mudah dipahami untuk dibaca.Sebagai contoh pada badan resistor tertera angka: o 0R5 : 0,5 ohm (Ω) o 1K5 = 1,5 Kilo ohm (KΩ) o 2M2 = 2,2 Mega ohm (MΩ) Kode warna Untuk pembacaan kode warna ada yang menggunakan kode 4 gelang warna dan kode 5 warna.Berikut table pembacaan untuk kode 4 warna: 28 Sebagai contoh, hijau-biru-kuning-merah adalah 56 x 104Ω = 560 kΩ ± 2%. Deskripsi yang lebih mudah adalah: pita pertama, hijau, mempunyai harga 5 dan pita kedua, biru, mempunyai harga 6, dan keduanya dihitung sebagai 56. Pita ketiga,kuning, mempunyai harga 104, yang menambahkan empat nol di belakang 56, sedangkan pita keempat, merah, merupakan kode untuk toleransi ± 2%, memberikan nilai 560.000Ω atau 560 KΩ pada keakuratan ± 2% Gambar 2.17 Nilai – nilai warna gelang Resistor Dan untuk yang kode 5 gelang warna sebagai berikut : Identifikasi lima pita digunakan pada resistor presisi (toleransi 1%, 0.5%, 0.25%, 0.1%), untuk memberikan harga resistansi ketiga. Tiga pita pertama menunjukkan harga resistansi, pita keempat adalah pengali, dan yang kelima adalah toleransi. Resistor lima pita dengan pita keempat berwarna emas atau perak kadangkadang diabaikan, biasanya pada resistor lawas atau penggunaan khusus. Pita keempat adalah toleransi dan yang kelima adalah koefisien suhu. Pada akhir-akhir ini ada juga jenis resistor SMD (Surface Mounting Device) terutama digunakan pada perakitan pabrikan.Berikut ini uraian resistor SMD: 29 Resistor pasang-permukaan dicetak dengan harga numerik dengan kode yang mirip dengan kondensator kecil. Resistor toleransi standar ditandai dengan kode tiga digit, dua pertama menunjukkan dua angka pertama resistansi dan angka ketiga menunjukkan pengali (jumlah nol). Contoh: "334" = 33 × 10.000 ohm = 330 KOhm "222" = 22 × 100 ohm = 2,2 KOhm "473" = 47 × 1,000 ohm = 47 KOhm "105" = 10 × 100,000 ohm = 1 MOhm Resistansi kurang dari 100 ohm ditulis: 100, 220, 470. Contoh: "100" = 10 × 1 ohm = 10 ohm "220" = 22 × 1 ohm = 22 ohm Kadang-kadang harga-harga tersebut ditulis "10" atau "22" untuk mencegah kebingungan. Resistansi kurang dari 10 ohm menggunakan 'R' untuk menunjukkan letak titik desimal. Contoh: "4R7" = 4.7 ohm "0R22" = 0.22 ohm "0R01" = 0.01 ohm Resistor presisi ditandai dengan kode empat digit. Dimana tiga digit pertama menunjukkan harga resistansi dan digit keempat adalah pengali. Contoh: "1001" = 100 × 10 ohm = 1 kohm "4992" = 499 × 100 ohm = 49,9 kohm 30 "1000" = 100 × 1 ohm = 100 ohm "000" dan "0000" kadang-kadang muncul bebagai harga untuk resistor nol ohm Resistor pasang-permukaan saat ini biasanya terlalu kecil untuk ditandai. 2.6 ADC ( Analog To Digital Converter ) Analog To Digital Converter (ADC) adalah pengubah input analog menjadi kode – kode digital. ADC banyak digunakan sebagai pengatur proses industri, komunikasi digital dan rangkaian pengukuran/pengujian. Umumnya ADC digunakan sebagai perantara antara sensor yang kebanyakan analog dengan sistim komputer seperti sensor suhu, cahaya, tekanan/berat, aliran dan sebagainya kemudian diukur dengan menggunakan sistim digital (komputer). ADC (Analog to Digital Converter) memiliki 2 karakter prinsip, yaitu kecepatan sampling dan resolusi. Kecepatan sampling suatu ADC menyatakan seberapa sering sinyal analog dikonversikan ke bentuk sinyal digital pada selang waktu tertentu. Kecepatan sampling biasanya dinyatakan dalam sample per second (SPS). Pengaruh Kecepatan Sampling ADC Gambar 2.18 Sampling ADC terhadap kecepatan Resolusi ADC menentukan ketelitian nilai hasil konversi ADC. Sebagai contoh: ADC 8 bit akan memiliki output 8 bit data digital, ini berarti sinyal input dapat dinyatakan dalam 255 (2n – 1) nilai diskrit. ADC 12 bit memiliki 12 bit output 31 data digital, ini berarti sinyal input dapat dinyatakan dalam 4096 nilai diskrit. Dari contoh diatas ADC 12 bit akan memberikan ketelitian nilai hasil konversi yang jauh lebih baik daripada ADC 8 bit. Prinsip kerja ADC adalah mengkonversi sinyal analog ke dalam bentuk besaran yang merupakan rasio perbandingan sinyal input dan tegangan referensi. Sebagai contoh, bila tegangan referensi (Vref) 5 volt, tegangan input 3 volt, rasio input terhadap referensi adalah 60%. Jadi, jika menggunakan ADC 8 bit dengan skala maksimum 255, akan didapatkan sinyal digital sebesar 60% x 255 = 153 (bentuk decimal) atau 10011001 (bentuk biner). ADC Simultan ADC Simultan atau biasa disebut flash converter atau parallel converter. Input analog Vi yang akan diubah ke bentuk digital diberikan secara simultan pada sisi + pada komparator tersebut, dan input pada sisi – tergantung pada ukuran bit converter. Ketika Vi melebihi tegangan input – dari suatu komparator, maka output komparator adalah high, sebaliknya akan memberikan output low. Rangkaian Dasar ADC Simultan 32 Bila Vref diset pada nilai 5 Volt, maka dari gambar rangkaian ADC Simultan diatas didapatkan : V(-) untuk C7 = Vref * (13/14) = 4,64 V(-) untuk C6 = Vref * (11/14) = 3,93 V(-) untuk C5 = Vref * (9/14) = 3,21 V(-) untuk C4 = Vref * (7/14) = 2,5 V(-) untuk C3 = Vref * (5/14) = 1,78 V(-) untuk C2 = Vref * (3/14) = 1,07 V(-) untuk C1 = Vref * (1/14) = 0,36 Sebagai contoh Vin diberi sinyal analog 3 Volt, maka output dari C7=0, C6=0, C5=0, C4=1, C3=1, C2=1, C1=1, sehingga didapatkan output ADC yaitu 100 biner, sehingga diperoleh tabel berikut : 2.7 Komunikasi serial a. Tata cara komunikasi data serial Dikenal dua cara komunikasi secara serial, yaitu komunikasi data serial secara sinkron dan komunikasi data serial secara asinkron. Pada komunikasi data serial sinkron, clockdikirimkan bersama-sama dengan data serial, sedangkan komunikasi data serial asinkron, clocktidak dikirimkan bersama data serial, tetapi dibangkitkan secara sendiri sendiri baik pada sisi pengirim 33 (transmitter) dan pada sisi penerima (receiver). Pada IBM PC kompatibel, port serial termasuk jenis asinkron. Komunikasi serial ini dikerjakan oleh UART (Universal Asynchronous Receiver/Transmitter). IC UART dibuat khusus untuk mengubah data paralel menjadi serial dan menerima data serial yang kemudian diubah kembali menjadi data paralel. IC UART 8250 INTEL merupakan salah satunya. Selain berbentuk IC mandiri, berbagai macam mikrokontroller ada dilengkapi UART. Pada UART, kecepatan pengiriman data (baudrate) dan fase clockpada sisi transmitterdan receiverharus sinkron. Untuk itu diperlukan sinkronisasi antara keduanya. Hal ini dilakukan oleh bit Startdan bit Stop. Ketika saluran transmisi dalam keadaan idle, keluaran UART adalah dalam keadaan logika high. Ketika transmitteringin mengirimkan data, output UART akan diset lebih dahulu ke logika low. Sinyal ini pada receiverakan dikenali sebagai sinyal Startyang digunakan untuk sinkronisasi fase clockantara transmitter dan receiver. Selanjutnya, data akan dikirimkan secara serial dari bit paling rendah (bit 0) sampai bit tertinggi. Selanjutnya, akan dikirimkan sinyal Stop sebagai akhir dari pengiriman dari data serial. Kecepatan transmisi (baudrate) dapat dipilih bebas dalam rentang tertentu. Baudrateyang umum dipakai adalah 110, 135, 150, 300, 600, 1200,2400, dan 9600 (bit/sekon). b. Karakteristik Sinyal Port Serial Standard sinyal komunikasi serial yang banyak digunakan adalah Standard RS232 yang dikembangkan oleh Electronic Industry Association and the Telecommunications Industry(EIA/TIA). Standar sinyal serial RS232 memiliki ketentuan level tegangan sebagai berikut: 34 Logika Highdisebut markterletak antara -3 Volt sampai -25 Volt Logika Lowdisebut spaceterletak antara +3 sampai +25 Volt Daerah tegangan antara -3 sampai +3 Volt adalah invalid level yang harus dihindari. c. Flow Control Jika kecepatan transfer data dari DTE (Data Terminal Equipment) ke DCE (Data Circuit Equipment) lebih cepat daripada transfer data dari DCE ke DCE, maka bufferpada DCE akan mengalami overflow. d. Konfigurasi Port Serial Keterangan mengenai fungsi saluran RS-232 pada konektor DB-9 adalah sebagai berikut: Recieved Line Signal Detect, dengan saluran ini DCE memberitahukan ke DTE bahwa pada terminal masukan ada data masuk. Recieve Data, digunakan DTE untuk menerima data dari DCE. Transmit Data, digunakan DTE untuk mengirimkan data dari DCE. Data Terminal Ready, pada saluran ini DTE memberitahukan kesiapan terminalnya. Signal Ground, saluran ground 35 Ring Indicator, pada saluran ini DCE memberitahu ke DTE bahwa sebuah stasiun menghendaki hubungan dengannya. Clear To Send, dengan saluran ini DCE memberitahukan bahwa DTE boleh mulai mengirimkan data. Request To Send, dengan saluran ini DCE diminta mengirmkan data oleh DTE DCE Ready, sinyal aktif pada saluran ini menunjukkan bahwa DCE sudah siap. Alasan penggunaan port serial karena dibandingan dengan menggunakan port paralel, penggunaan port serial lebih sederhana. Berikut keuntungan penggunaan dari port serial dibandingkan port paralel: Pada komunikasi dengan kabel yang panjang, masalah cable loss tidak akan menjadi masalah besar dibandingkan paralel. Port serial mentransmisikan „1‟ pada level -3 V sampai -25 V dan „0‟ pada +3 V sampai +25 V, sedangkan paralel mentransmisikan „1‟ pada 2.4 V hingga 5 V dan „0‟ pada 0V hingga 0.4 V. Dibutuhkan jumlah kabel yang lebih sedikit. Bahkan dapat menggunakan 3 kabel saja, yaitu TxD, RxD dan GND. 2.8 Microsoft Visual Basic 6.0 Program Microsoft Visual Basic merupakan bahasa pemrograman tingkat tinggi ( High Level Languange). Microsoft Visual Basic juga merupakan bahasa pemrograman Object Oriented Programming (OOP), yaitu pemrograman berorientasi pada objek. Microsoft Visual Basic memiliki beberapa versi yaitu Microsoft Visual Basic 3.0, Microsoft Visual Basic 5.0, Microsoft Visual Basic Versi 6.0, VB. Net. 36 Dan mungkin akan berkembang lagi dengan berbagai versi dan semakin sempurna dalam penggunaannya. Menurut Kusrini (2007:171), “Visual Basic adalah salah satu bahasa pemrograman komputer”. Bahasa pemrograman adalah perintah-perintah yang dimengerti oleh komputer untuk melakukan tugas-tugas tertentu. Visual Basic merupakan salah satu development tool, yaitu alat bantu untuk membuat berbagai macam program komputer, khususnya yang menggunakan sistem operasi windows. Menurut Suhata, (2005:3), “Visual Basic 6.0 merupakan salah satu bahasa pemrograman yang dapat digunakan untuk menyusun dan membuat program aplikasi pada lingkungan sistem operasi windows”. Program aplikasi dapat berupa program database, program grafis, dan lain sebagainya. Di dalam visual basic 6.0 sudah terdapat kompenen-kompenen yang sangat membantu pembuatan program aplikasi. Adapun alasan penulis menggunakan pemrogramman Visual Basic Versi 6.0 yaitu antara lain : a. Bahasa pemrograman ini berbasis Windows sehingga seorang programmer dapat membuat penampilan semenarik mungkin. b. Program ini sangat User Friendly. c. Mudah dalam penanganan database serta mudah dalam pembuatan laporan. d. Cara penggunaan program ini cukup mudah bagi seorang programmer masih pemula. Dengan adanya Microsoft Visual Basic 6.0 ini dapat memudahkan para programmer untuk membuat program yang familier untuk pemakai (User) karena menggunakan visualisasi dan animasi yang cukup tinggi serta tampilan yang menarik untuk dilihat. 37 Karena kemiripannya dengan pemrograman basic, bahasa pemrograman Microsoft Visual Basic ini menjadi lebih mudah untuk dipahami dan dipelajari. Microsoft Visual Basic 6.0 ini mempunyai kemampuan yang sangat besar dalam membuat program-program yang lebih kompleks. Microsoft Visual Basic terdiri dari beberapa versi, dan Microsoft Visual Basic 6.0 merupakan penyempurnaan dari versi sebelumnya. a. Keunggulan dari Microsoft Visual Basic 6.0. Sejak diciptakan versi pertamanya pada tahun 1991, Microsoft Visual Basic kini telah mencapai versi yang keenam yang memilki keunggulan dari versi sebelumnya. Berikut ini beberapa keunggulan dari Microsoft Visual Basic 6.0: Kemampuan membuat ActiveX dan fasilitas internet yang lebih banyak. Memiliki compiler yang dapat menghasilkan output file executable (.exe). Memiliki beberapa tambahan sarana wizard yang lebih lengkap. Membuat flat form pembuatan program yang diberi nama developer studio. Sarana akses data yang lebih cepat dan handal untuk membuat aplikasi database yang berkemampuan tinggi dan kompleks. Penambahan kontrol baru peningkatan kaidah struktur Basic 6.0. b. IDE Microsoft Visual Basic 6.0. yang lebih canggih serta bahasa Microsoft Visual 38 Untuk dapat menggunakan fasilitas dalam Microsoft Visual Basic 6.0 dengan baik dan benar, maka diperlukan penguasaan tentang IDE (Integrated Development Environment) atau lingkungan kerja Microsoft Visual Basic 6.0 itu sendiri. Tampilan fasilitas-fasilitas atau IDE Microsoft Visual Basic 6.0 berisi komponen-komponen.