BAB II TINJAUAN PUSTAKA 2.1 Energi Listrik Energi adalah kemampuan untuk melakukan usaha. Pengertian energi listrik adalah kemampuan untuk melakukan atau menghasilkan usaha listrik (kemampuan yang diperlukan untuk memindahkan muatan dari satu titik ke titik yang lain). Energi listrik dilambangkan dengan W. Sedangkan perumusan yang digunakan untuk menentukan besar energi listrik adalah : W = Q.V …..…………………………………..(2.1) Keterangan : W = Energi listrik ( Joule) Q = Muatan listrik ( Coulomb) V = Beda potensial ( Volt ) Karena I = Q/t, maka diperoleh perumusan : W = (I.t).V ……………………………..….…. (2.2) W = V.I.t ……………………………………...(2.3) Apabila persamaan tersebut dihubungkan dengan hukum Ohm ( V = I.R) maka diperoleh perumusan : W = I.R.I.t …………….………………………(2.4) Satuan energi listrik lain yang sering digunakan adalah kalori, dimana 1 kalori sama dengan 0,24 joule. Selain itu juga menggunakan satuan kWh (kilowatt jam). [Soeparlan,1995] 2.2 Biaya Penggunaan Energi Listrik Besarnya energi lsitrik dalam satuan SI diukur dalam joule dimana : 1 joule = 1 watt sekon 5 6 Energi 1 joule adalah energi yang sangat kecil.karena itu perusahaan listrik tidak mengukur energi dalam joule, tetapi dalam satuan lain, yang disebut kWh (kilowatt hour), diterjemahkan sebagai kilowatt jam. Satuan kWh didefinisikan sebagai energi listrik yang digunakan oleh suatu alat listrik yang digunakan oleh suatu alat listrik dengan rating daya satu kilowatt (1 kW) ketika diberi tegangan sesuai dengan rating tegangannya (tegangan normalnya) selama satu jam. Secara matematis dinyatakan : 1 kWh = 1 kW x 1 jam = (1000 W) (3600 s) = 3600.000 Ws Jadi, hubungan antara kWh dan joule adalah sebagai berikut: 1 kWh = 3.600.000 joule = 3,6 juta joule Gambar 2.1 memperlihatkan kwh meter analog. Gambar 2.1 kWh-meter analog [www.analog.com] 2.3 Pengertian Daya Daya adalah energi yang dikeluarkan untuk melakukan usaha. Dalam sistem tenaga listrik, daya merupakan jumlah energi yang digunakan untuk melakukan kerja atau usaha. Daya listrik biasanya dinyatakan dalam satuan Watt atau Horsepower (HP), Horsepower merupakan satuan daya listrik dimana 1 HP setara 746 Watt atau lbft/second. Sedangkan Watt merupakan unit daya listrik dimana 1 Watt memiliki 7 daya setara dengan daya yang dihasilkan oleh perkalian arus 1 Ampere dan tegangan 1 Volt. Daya dinyatakan dalam P, Tegangan dinyatakan dalam V dan Arus dinyatakan dalam I, sehingga besarnya daya dinyatakan : P = V x I ………………………………………………….(2.5) P = Volt x Ampere x Cos φ……………………………….(2.6) P = Watt Gambar 2.2 Rangkaian sumber dan beban [Soeparlan,1995] 2.3.1 Daya Aktif Daya aktif (Active Power) adalah daya yang terpakai untuk melakukan energi sebenarnya. Satuan daya aktif adalah Watt. Misalnya energi panas, cahaya, mekanik dan lain – lain. P = V. I . Cos φ……………………………….…………...(2.7) Daya ini digunakan secara umum oleh konsumen dan dikonversikan dalam bentuk kerja. 2.3.2 Daya Reaktif Daya reaktif adalah jumlah daya yang diperlukan untuk pembentukan medan magnet. Dari pembentukan medan magnet maka akan terbentuk fluks medan magnet. Contoh daya yang menimbulkan daya reaktif adalah transformator, motor, lampu pijar dan lain – lain. Satuan daya reaktif adalah Var. Q = V.I.Sin φ………………………………………………(2.8) 8 2.3.3 Daya Semu Daya semu (Apparent Power) adalah daya yang dihasilkan oleh perkalian antara tegangan rms dan arus rms dalam suatu jaringan atau daya yang merupakan hasil penjumlahan trigonometri daya aktif dan daya reaktif. Satuan daya nyata adalah VA. Gambar 2.3 Penjumlahan trigonometri daya aktif, reaktif dan semu [Soeparlan,1995] 2.3.4 Faktor Daya Faktor daya (Cos ) dapat didefinisikan sebagai rasio perbandingan antara daya aktif (Watt) dan daya nyata (VA) yang digunakan dalam sirkuit AC atau beda sudut fasa antara V dan I yang biasanya dinyatakan dalam cos φ . Faktor Daya = Daya Aktif (P) / Daya Nyata (S)…………………………(2.9) = kW / kVA = V.I Cos φ / V.I = Cos φ Faktor daya mempunyai nilai range antara 0 – 1 dan dapat juga dinyatakan dalam persen. Faktor daya yang bagus apabila bernilai mendekati satu. Tan φ = Daya Reaktif (Q) / Daya Aktif (P) …………..…….….(2.10) = kVAR / kW karena komponen daya aktif umumnya konstan (komponen kVA dan kVAR berubah sesuai dengan faktor daya), maka dapat ditulis seperti berikut : Daya Reaktif (Q) = Daya Aktif (P) x Tan φ……………………..(2.11) 9 sebuah contoh, rating kapasitor yang dibutuhkan untuk memperbaiki faktor daya sebagai berikut : Daya reaktif pada pf awal = Daya Aktif (P) x Tan φ1 Daya reaktif pada pf diperbaiki = Daya Aktif (P) x Tan φ2 sehingga rating kapasitor yang diperlukan untuk memperbaiki faktor daya adalah : Daya reaktif (kVAR) = Daya Aktif (kW) x (Tan φ1 - Tan φ2) Gambar 2.4 Hubungan daya aktif, reaktif dan kapasitansi [Belly Alto,2010] Seperti terlihat pada gambar 2.4, daya reaktif yang dibutuhkan oleh induktansi selalu mempunyai beda fasa 90° dengan daya aktif. Kapasitor menyuplai kVAR dan melepaskan energy reaktif yang dibutuhkan oleh induktor. Ini menunjukan induktansi dan kapasitansi mempunyai beda fasa 180°. Pada gambar 2.5, segitiga daya menunjukan faktor daya 0,70 untuk 100 kW (daya aktif) beban induktif. Daya reaktif yang dibutuhkan oleh beban adalah 100 kVAR. Dengan memasang 67 kVAR kapasitor, daya nyata akan berkurang dari 142 menjadi 105 kVA. Hasilnya terjadi penurunan arus 26% dan faktor daya meningkat menjadi 0,95. Energi listrik digunakan berbanding lurus dengan biaya produksi yang dikeluarkan. Semakin besar energi listrik yang digunakan maka semakin besar biaya produksi yang dibutuhkan. Dengan menggunakan power monitoring system dapat diketahui pemakaian energi listrik dan kondisi energy listrik dari peralatan listrik sehingga menigkatkan efisiensi dari energi listrik yang 10 digunakan dalam pekerjaan dan meminimalkan rugi – rugi pada sistem untuk penyaluran energi listrik yang lebih efisien dari sumber listrik ke beban. [Yahdi,1995] Gambar 2.5 Kompensasi daya reaktif [Soeparlan,1995] Faktor daya terdiri dari dua sifat yaitu faktor daya “leading” dan faktor daya “lagging”. Faktor daya ini memiliki karakteristik seperti berikut : 1. Faktor Daya “leading” Apabila arus mendahului tegangan, maka faktor daya ini dikatakan “leading”. Faktor daya leading ini terjadi apabila bebannya kapasitif, seperti capacitor, synchronocus generators, synchronocus motors dan synchronocus condensor. Gambar 2.6 Faktor daya “leading” [Belly Alto,2010] 11 Gambar 2.7 Segitiga daya untuk beban kapasitif [Belly Alto,2010] 2. Faktor Daya “lagging” Apabila tegangan mendahului arus, maka faktor daya ini dikatakan “lagging”. Faktor daya lagging ini terjadi apabila bebannya induktif, seperti motor induksi, AC dan transformator. Gambar 2.8 Faktor daya “lagging” [Belly Alto,2010] Gambar 2.9 Segitiga daya untuk beban induktif [Belly Alto,2010] 12 2.4 Pengertian Trafo Transformer adalah suatu alat listrik yang dapat memindahkan dan mengubah energy listrik dari satu atau lebih rangkaian listrik ke rangkaian listrik yang lain, melalui suatu gandengan magnet dan berdasarkan prinsip induksi elektromagnetik. Gambar 2.10 Transformasi Energi [Utumo,2002] Transformator atau biasa disebut dengan trafo adalah alat untuk mengubah tegangan bolak-balik menjadi lebih tinggi atau lebih rendah dan digunakan untuk memindahkan energi dari suatu rangkaian listrik ke rangkaian berikutnya tanpa merubah frekuensi. Dalam aplikasinya trafo dapat dibedakan menjadi 2 macam yaitu : 1. Transformator Step-Up atau tranformator penaik tegangan adalah tranformator yang digunakan untuk menaikkan tegangan dari rendah ke tegangan yang lebih tinggi. 2. Transformator Step-Down atau transformator penurun tegangan adalah transformator yang digunakan untuk menurunkan tegangan dari tinggi ke tegangan yan lebih rendah. 13 Cara kerja transformator adalah sebagai berikut : 1. Jika kumparan primer dihubungkan dengan sumber tegangan arus AC, maka pada kumparan primer timbul garis-garis gaya magnet yang berubah-ubah. 2. Perubahan garis-garis gaya dari kumparan primer ini menginduksi kumparan sekunder sehingga pada kumparan sekunder timbul arus bolak-balik. Dengan memilih jumlah lilitan yang sesuai untuk tiap kumparan dapat dihasilkan GGL kumparan sekunder yang berbeda dengan GGL kumparan primer. Hubungan GGL atau tegangan primer (Vp) tegangan sekunder (Vs), jumlah lilitan kumparan primer (np) dan jumlah lilitan kumparan sekunder (ns) dapat dinyatakan dengan rumus : Tegangan primer Jumlah lilitan primer Tegangan sekunder Jumlah lilitan sekunder Vp np Vs ns yang biasa disebut dengan perbandingan transformasi. Dengan memperhatikan perbandingan transformasi kita dapat mengetahui jenis dari transformator tersebut apakah trafo Step-Up atau Step-Down. 2.4.1 Prinsip Dasar Transformer Prinsip dasar suatu transformator adalah induksi bersama (mutual induction) antara dua rangkaian yang dihubungkan oleh fluks magnet. Dalam bentuk yang sederhana, transformator terdiri dari dua buah kumparan induksi yang secara listrik terpisah tetapi secara magnet dihubungkan oleh suatu path yang mempunyai relaktansi yang rendah. Kedua kumparan tersebut mempunyai mutual induction yang tinggi. Jika salah satu kumparan dihubungkan dengan sumber tegangan bolak-balik, fluks bolak-balik timbul di dalam inti besi yang dihubungkan dengan kumparan yang lain menyebabkan atau menimbulkan ggl (gaya gerak listrik) induksi ( sesuai dengan induksi elektromagnet) dari hukum faraday, Bila arus bolak balik mengalir pada induktor, maka akan timbul gaya gerak listrik (ggl). 14 2.4.2 Prinsip Kerja Prinsip kerja suatu transformator adalah induksi bersama (mutual induction) antara dua rangkaian yang dihubungkan oleh fluks magnet. Dalam bentuk yang sederhana, transformator terdiri dari dua buah kumparan yang secara listrik terpisah tetapi secara magnet dihubungkan oleh suatu alur induksi. Kedua kumparan tersebut mempunyai mutual induction yang tinggi. Jika salah satu kumparan dihubungkan dengan sumber tegangan bolak-balik, fluks bolak-balik timbul di dalam inti besi yang dihubungkan dengan kumparan yang lain menyebabkan atau menimbulkan ggl (gaya gerak listrik) induksi ( sesuai dengan induksi elektromagnet) dari hukum faraday. Gambar 2.11 Rangkaian transformer [Utumo,2002] 2.5 Trafo arus Trafo arus digunakan untuk pengukuran arus yang besarnya ratusan amper lebih yang mengalir pada jaringan tegangan tinggi. Jika arus hendak diukur mengalir pada tegangan rendah dan besarnya dibawah 5 amper, maka pengukuran dapat dilakukan secara langsung sedangkan arus yang besar tadi harus dilakukan secara tidak langsung dengan menggunakan trafo arus sebutan trafo pengukuran arus yang besar. Disamping untuk pengukuran arus, trafo arus juga dibutuhkan untuk pengukuran daya dan energi, pengukuran jarak jauh dan rele proteksi. Kumparan primer trafo arus dihubungkan secara serie dengan jaringan atau peralatan yang akan diukur arusnya, sedangkan kumparan sekunder dihubungkan dengan peralatan meter dan rele proteksi. Trafo aeus bekerja sebagai trafo yang terhubung singkat. Kawasan kerja trafo arus yang digunakan untuk pengukuran biasanya 0,05 sampai 1,2 kali arus yang 15 akan diukur. Trafo arus untuk tujuan proteksi biasnya harus mampu bekerja lebih dari 10 kali arus pengenalnya. Gambar 2.12 Rangkaian Trafo Arus Prinsip kerja sama dengan trafo daya satu fasa. Jika pada kumparan primer mengalir arus I1, maka pada kumparan primer akan timbul gaya gerak magnet sebesar N1 I1. gaya gerak magnet ini memproduksi fluks pada inti. Fluks ini membangkitkan gaya gerak listrik pada kumparan sekunder. Jika kumparan sekunder tertutup, maka pada kumparan sekunder mengalir arus I2. arus ini menimbulkan gaya gerak magnet N2I2 pada kumparan sekunder. Perbedaan utama trafo arus dengan trafo daya adalah jumlah belitan primer sangat sedikit, tidak lebih dari 5 belitan. Arus primer tidak mempengaruhi beban yang terhubung pada kumparan sekundernya, karena arus primer ditentukan oleh arus pada jaringan yang diukur. semua beban pada kumparan sekunder dihubungkan serie. terminal sekunder trafo tidak boleh terbuka, oleh karena itu terminal kumparan sekunder harus dihubungkan dengan beban atau dihubung singkat jika bebannya belum dihubungkan. 16 2.6 Mikrokontroler ATmega 328 Mikrokontroler ATmega328 memiliki fitur sebagai berikut: 1. Performa tinggi, Daya-rendah AVRR 8-bit mikrokontroler 2. Arsitektur Advanced RISC a. 131 Instruksi terpadu –Sebagian besar dieksekusi pada satu siklus detak b. 32 x 8 Register kerja fungsi umum c. Sampai dengan 20 MIPS pada 20 Mhz d. Pengali 2 siklus terintegrasi pada chip e. Pengunci program untuk keamanan software. 3. Memori data dan Program yang tak hilang jika energi listrik dipadamkan a. 32K bytes Flash yang dapat diprogram pada sistem, daya tahan 10,000 kali tulis/hapus b. Pemrograman pada sistem dengan Program Boot terintegrasi pada chip Mampu beroperasi membaca selagi menulis pada bagian kode program. c. 1 KByte EEPROM. Daya tahan 100,000 kali tulis/hapus d. 1 KByte Internal SRAM e. Pengunci program untuk keamanan software 4. Fitur perangkat a. Dua Timer/counter 8 bit dengan penskala terpisah dan mode pembanding b. Satu Timer/counter 16 bit dengan penskala terpisah, mode pembanding, dan mode penangkap c. Real Time Counter dengan Osilator terpisah d. Empat kanal PWM e. 6 kanal, 10 bit ADC: 6 kanal ujung tunggal f. Antar muka serial dua kabel berorientasi byte g. Serial USART yang dapat diprogram h. Antarmuka serial SPI master dan slave i. Watchdog Timer yang dapat diprogram dengan osilator terintegrasi pada chip dengan osilator yang terpisah 17 5. Fitur spesial mikrokontroler: a. 0-8 MHz untuk ATmega328 b. Osilator internal RC yang terkalibrasi c. Enam mode tidur: idle, reduksi noise ADC, Power-save, Power-down, standby, dan Extended Standby Gambar 2.13 PinOut Atmega 328 [Atmel,2009] 6. Paket dan I/O a. 23 jalur I/O yang dapat diprogram b. 28 pin PDIP 7. Tegangan Operasi a. 1.8-5.5V untuk ATmega 328 8. Kecepatan siklus 0-20 MHz 18 Gambar 2.14 Blok diagram ATmega328 [Atmel,2009] Fitur fitur yang disebutkan dapat dilihat pada blok diagram dari ATmega 328 yang terlihat pada gambar 2.14 19 2.6.1 Memori ATmega328 1. Program Memory ATMega328 memiliki On-Chip In-System Reprogrammable Flash Memory untuk menyimpan program. Untuk alasan keamanan, program memory dibagi menjadi dua bagian yaitu Boot Flash Section dan Application Flash Section. Boot Flash Section digunakan untuk menyimpan program Boot Loader, yaitu program yang harus dijalankan pada saat AVR reset atau pertamakali diaktifkan. Application Flash Section digunakan untuk menyimpan program aplikasi yang dibuat user. AVR tidak dapat menjalankan program aplikasi ini sebelum menjalankan program Boot Loader. Besarnya memori Boot Flash Sectiondapat diprogram dari 128 word sampai 1024 word tergantung setting pada konfigurasi bit di register BOOTSZ. Jika Boot Loader diproteksi, maka program pada Application Flash Section juga sudah aman. Gambar 2.15 Pemetaan memori ATmega328 [Atmel,2009] 20 2. Data Memory Gambar 2.15 menunjukkan peta memori SRAM pada ATmega 328. Terdapat 608 lokasi address data memori. 96 lokasi address digunakan untuk Register File dan I/O Memory sementara 512 lokasi address lainnya digunakan untuk data internal SRAM. Register File terdiri dari 32 general purpose working register, I/O register terdiri dari 64 register. 3. EEPROM Data Memory ATMega 328 memiliki EEPROM sebesar 1 Kbyte untuk menyimpan data. Lokasinya terpisah dengan sistem address register, data register dan control register yang dibuat khusus untuk EEPROM. 2.6.2 Status Register (SREG) Status Register adalah register yang memberikan informasi yang dihasilkan dari eksekusi instuksi aritmatika. Informasi ini berguna untuk mencari alternatif alur program sesuai dengan kondisi yang dihadapi. Bit 7 – I : Global Interrupt Enable Jika bit Global Interrupt Enable diset, maka fasilitas interupsi dapat dijalankan. Bit ini akan clear ketika ada interrupt yang dipicu dari hardware, setelah program interrupt dieksekusi, maka bit ini harus di set kembali dengan instruksi SEI. Bit 6 – T : Bit Copy Storage Instruksi bit copy BLD dan BST menggunakan bit T sebagai sumber atau tujuan dalam operasi bit. Bit 5 – H : Half Carry Flag Bit 4 – S : Sign ; Bit S = N + V Bit S merupakan hasil exlusive or dari Negative Flag N dan Two’s Complement Overflow Flag V. Bit 3 – V : Two’s Complement Overflow Flag Digunakan dalam operasi aritmatika Bit 2 – N : Negative Flag 21 Jika operasi aritmatika menghasilkan bilangan negatif, maka bit ini akan set. Bit 1 – Z : Zero Flag Jika operasi aritmatika menghaslkan bilangan nol, maka bit ini akan set. Bit 0 -C : Carry Flag berfungsi sebagai bit-overflow 2.6.3 Pin I/O ATmega328 ATmega 328 memiliki 28 jalur I/O, dimana fungsi dari tiap jalur ini diatur oleh register DDR, PORT dan PIN. Fungsi dari tiap register dijelaskan pada tabel 2.1 Sedangkan fungsi register PIN berguna ketika port I/O sebagai Input maka pembacaan tiap port dilakukan pada register ini. Tabel 2.1 Fungsi register yang berkaitan dengan port I/O [Atmel,2009] 2.6.4 Pewaktu CPU Mikrokontroler ATmega 328 memiliki 4 jenis pewaktu yang pada penggunaannya dapat dipilih salah satunya, yakni: 1. External Clock menggunakan clock yang langsung diumpankan pada pin XTAL1 2. External RC Clock menggunakan rangkaian R dan C dari luar mikrokontroler 3. Crystal Oscillator menggunakan crystal serta kapasitor resonansi di luar mikrokontroler 4. Callibrated RC Oscillator menggunakan R dan C yang terintegrasi di dalam mikrokontroler dan telah terkalibrasi. Pemilihan salah satu dari ketiga pewaktu CPU ini menggunakan fuse byte dan dipilih saat mikrokontroler diprogram. [Atmel, 2009] 22 2.7 Mikrokontroler Board Arduino Mikrokontroler Arduino adalah sebuah platform dari physical computing yang bersifat open source. Yang dimaksud platform dari physical computing adalah sebuah sistem atau perangkat fisik yang menggunakan software dan hardware yang sifatnya interaktif yaitu dapat menerima rangsangan dari lingkungan dan merespon balik. Physical computing merupakan sebuah konsep untuk memahami hubungan yang manusiawi antara lingkungan yang sifat alaminya gabungan dari system analog dengan dunia digital. Dengan konsep inilah maka system dapat diaplikasikan dalam desain – desain alat atau projek-projek yang menggunakan sensor dan microcontroller. Dan yang dimaksud dengan sifat arduino yang open source dimana tidak hanya softwarenya saja yang opensource melainkan hardwarenya pun open source. Open Source adalah diagram rangkaian elektronik arduino yang digratiskan kepada semua orang. Setiap orang bisa bebas men-download gambarnya, membeli komponen-komponennya, membuat PCB-nya dan merangkainya sendiri tanpa harus membayar kepada para pembuat Arduino. Arduino tidak hanya sekedar sebuah alat pengembangan, tetapi arduino merupakan 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 meng-upload ke dalam memory microcontroller. Secara umum Arduino terdiri dari dua bagian, yaitu : 1. Hardware ( papan input/output (I/O)). 2. Software ( Software Arduino meliputi IDE untuk menulis program, driver untuk koneksi dengan komputer, contoh program dan library untuk pengembangan program). Hardware pada arduino yang dimaksud berupa seperangkat system komponen yang telah terkombinasi dengan mikrokontroler sebagai otak dari system dan antarmuka ( interface ) yang akan menghubungkan system mikrokontroler dengan 23 system komputer. Komponen utama di dalam papan Arduino adalah sebuah microcontroller 8 bit dengan merk ATmega yang dibuat oleh perusahaan Atmel Corporation. Jenis arduino yang digunakan adalah arduino uno yang memiliki mikrokontroler ATmega 328 sebagai control utamanya. Pada gambar 2.14 diperlihatkan contoh diagram blok sederhana dari microcontroller ATmega328 yang dipakai pada Arduino Uno. Gambar 2.16 Blok diagram Mikrokontroler ATmega 328[Feri,2011] Blok-blok pada gambar 2.16 dijelaskan sebagai berikut: 1. Universal Asynchronous Receiver/Transmitter (UART) adalah antarmuka yang digunakan untuk komunikasi serial seperti pada RS-232, RS-422 dan RS-485. 2. 2KB RAM pada memory kerja bersifat volatile (hilang saat daya dimatikan), digunakan oleh variable-variabel di dalam program. 3. 32KB RAM flash memory bersifat non-volatile, digunakan untuk menyimpan program yang dimuat dari komputer. Selain program, flash memory juga menyimpan bootloader. Bootloader adalah program inisiasi yang ukurannya kecil, dijalankan oleh CPU saat daya dihidupkan. Setelah bootloader selesai dijalankan, berikutnya program di dalam RAM akan dieksekusi. 24 4. 1KB EEPROM bersifat non-volatile, digunakan untuk menyimpan data yang tidak boleh hilang saat daya dimatikan. Tidak digunakan pada papan Arduino. 5. Central Processing Unit (CPU), bagian dari microcontroller untuk menjalankan setiap instruksi dari program. 6. Port input/output, pin-pin untuk menerima data (input) digital atau analog, dan mengeluarkan data (output) digital atau analog. Bagian – bagian papan PCB dari arduino uno dapat dilihat pada gambar 2.17 Gambar 2.17 Bagian bagian arduino uno [Feri,2011] 25 2.8 Empat belas 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 deprogram antara 0 – 255, dimana hal itu mewakili nilai tegangan 0 – 5V. 2.8.1 USB USB pada board arduino berfungsi untuk: a. Memuat program dari komputer ke dalam papan b. Komunikasi serial antara papan dan komputer c. Memberi daya listrik kepada papan 2.8.2 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. 2.8.3 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). 2.8.4 Tombol Reset 1 Untuk me-reset papan sehingga program akan mulai lagi dari awal. Perhatikan bahwa tombol reset ini bukan untuk menghapus program atau mengosongkan microcontroller. 26 2.8.5 In-Circuit Serial Programming (ICSP) Port ICSP memungkinkan pengguna untuk memprogram microcontroller secara langsung, tanpa melalui bootloader. Umumnya pengguna Arduino tidak melakukan ini sehingga ICSP tidak terlalu dipakai walaupun disediakan. 2.8.6 IC 1 – Microcontroller Atmega Komponen utama dari papan Arduino, di dalamnya terdapat CPU, ROM dan RAM. 2.8.7 X1 – Sumber daya external – sumber daya eksternal Jika hendak disuplai dengan sumber daya eksternal, papan Arduino dapat diberikan tegangan DC antara 9-12V. 2.8.9 Enam 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. 2.9 Software Arduino Sehubungan dengan pembahasan untuk saat ini software Arduino yang akan digunakan adalah driver dan IDE, walaupun masih ada beberapa software lain yang sangat berguna selama pengembangan Arduino. IDE Arduino adalah software yang sangat canggih ditulis dengan menggunakan Java. IDE Arduino terdiri dari: 1. Editor program, sebuah window yang memungkinkan pengguna menulis dan mengedit program dalam bahasa Processing. 2. Compiler, sebuah modul yang mengubah kode program (bahasa Processing) menjadi kode biner. Bagaimanapun sebuah microcontroller tidak akan bisa 27 memahami bahasa Processing. Yang bisa dipahami oleh microcontroller adalah kode biner. Itulah sebabnya compiler diperlukan dalam hal ini. 3. Uploader, sebuah modul yang memuat kode biner dari Jomputer ke dalam memory di dalam papan Arduino. Gambar 2.18 adalah contoh tampilan IDE Arduino dengan sebuah sketch yang sedang diedit. Gambar 2.18 Tampilan IDE Arduino 2.10 LCD Liquid Cristal Display 2.10.1 LCD 2x16 Penjelasan 16 Pin pada LCD Gambar 2.19 Contoh LCD 2 x 16 dan Pin pada LCD Gambar 2.19 LCD 2x16 [www.digi-ware.com] 28 2.10.1.1 Pin VDD, VSS dan VEE VDD dan VEE merupakan power supply untuk LCD. VDD dihubungkan ke power supply DC +5V dan VEE di hubungkan ke power supply DC 0V (ground). Sedangkan VEE di gunakan untuk mengatur kontras LCD. 2.10.1.2 Pin RS (Register Select) Pin RS ini berfungsi untuk mengontrol instruksi LCD. Jika pin RS ini dibuat low (0), maka instruksi yang dijalankan adalah special instruksi LCD. Seperti Instruksi untuk On/Off LCD, Instruksi untuk geser kursor dan lain sebagainnya. Jika pin RS ini dibuat high (1), maka instruksi yang dijalankan adalah instruksi untuk mengirim informasi atau data ke LCD. 2.10.1.3 Pin R/W (Read / Write) Pin R/W ini berfungsi untuk membaca infromasi dari LCD atau menulis informasi ke LCD. Jika pin R/W ini dibuat low (0), maka infromasi yang ada pada data bus (D0 ~ D7 jika mode pemogramannya 8 bit, D4~D7 jika mode pemogramnya 4 bit) di tulis ke LCD. Jika pin R/W di buat high (1), maka infromasi pada LCD di baca oleh program. informasi yang di baca hanya satu informasi saja, yaitu membaca Status LCD saja. Status LCD di baca melalui pinj D7. Pin R/W selalu di set low (0), kecuali pada saat membaca status LCD di set high (1). 2.10.1.4 Pin D0 - D7 (Bus data) Pin-pin ini merupakan 8 bus data yang berfungsi untuk membaca atau mengirim informasi dari dan ke LCD. ketelapan bus data tersebut, bisa di gunakan dalam 2 kondisi, yaitu : 1. Jika mode pemograman yang di gunakan mode 8 bit, maka 8 bus data tersebut di gunakan semuanya. 2. Jika mode pemograman yang digunakan mode 4 bit, maka hanya 4 bus data saja yang digunakan, yaitu D4 ~ D7, sedangkan D0 ~ D3 di hubungkan ke ground. 29 2.10.1.5 Pin EN (Enable) Pin ini merupakan sinyal enable untuk proses pengiriman data ke LCD. pada saat pengiriman data ke LCD, Pin ini di set low (0). 2.11 Resistor sebagai Pembagi Tegangan. Menghubungkan resistor seri seperti ini pada tegangan DC memiliki satu keuntungan, tegangan yang berbeda muncul di setiap resistor menghasilkan sebuah rangkaian yang disebut Rangkaian Pembagi Tegangan. Rangkaian yang ditunjukkan di atas adalah pembagi tegangan sederhana di mana tiga 1V, 2V dan 6V dihasilkan dari satu supply tegangan battery 9V. Hukum tegangan Kirchoff menyatakan bahwa " tegangan dalam rangkaian tertutup sama dengan jumlah semua tegangan (IR) di seluruh rangkaian". Rangkaian dasar Resistor Seri sebagai Pembagi Tegangan dapat dilihat pada gambar rangkaian 2.20. Gambar 2.20 Rangkaian Pembagi Tegangan [ http://electronical-instrument.blogspot.com] Dalam rangkaian dua resistor yang dihubungkan secara seri melalui Vin, yang merupakan tegangan listrik yang terhubung ke resistor, Rtop, di mana tegangan keluaran Vout adalah tegangan resistor Rbottom yang diberikan oleh formula. Jika 30 lebih resistor dihubungkan secara seri pada rangkaian maka tegangan yang berbeda akan muncul di setiap resistor berkaitan dengan masing-masing hambatan R (IxR hukum Ohms) menyediakan tegangan berbeda dari satu sumber pasokan/catudaya. Namun, harus berhati-hati ketika menggunakan jaringan jenis ini sebagai impedansi karena dapat mempengaruhi tegangan keluaran. Sebagai contoh; Misalkan hanya memiliki 12V DC supply dan rangkaian yang memiliki impedansi 50Ω memerlukan pasokan 6V. Menghubungkan dua nilai yang sama resistor, misalkan masing-masing 50Ω bersama-sama sebagai sebuah jaringan pembagi potensial di 12V akan mendapatkan hasil yang diharapkan /baik sampai menambahkan beban rangkaian kedalam jaringan. 2.12 Antarmuka USB Gambar 2.21 Konektor USB (Tipe A dan B) [www.wikipedia.com] Gambar 2.22 Konektor USB [www.wikipedia.com] USB ( Universal Serial Bus) adalah standar bus serial untuk perangkat penghubung, biasanya kepada komputer namun juga digunakan di peralatan lainnya seperti konsol permainan, ponsel dan PDA.Sistem USB mempunyai desain yang asimetris, yang terdiri dari pengontrol host dan beberapa peralatan terhubung yang berbentuk pohon dengan menggunakan peralatan hub yang khusus. 31 Desain USB ditujukan untuk menghilangkan perlunya penambahan expansion card ke ISA komputer atau bus PCI, dan memperbaiki kemampuan plug-and-play (pasang-dan-mainkan) dengan memperbolehkan peralatan-peralatan ditukar atau ditambah ke sistem tanpa perlu mereboot komputer. Ketika USB dipasang, ia langsung dikenal sistem komputer dan memroses device driver yang diperlukan untuk menjalankannya. USB dapat menghubungkan peralatan tambahan komputer seperti mouse, keyboard, pemindai gambar, kamera digital, printer, hard disk, dan komponen networking. USB kini telah menjadi standar bagi peralatan multimedia seperti pemindai gambar dan kamera digital. Versi terbaru (hingga Januari 2005) USB adalah versi 2.0. Perbedaan paling mencolok antara versi baru dan lama adalah kecepatan transfer yang jauh meningkat. Kecepatan transfer data USB dibagi menjadi tiga, antara lain: 1. High speed data dengan frekuensi clock 480.00Mb/s dan tolerasi pensinyalan data pada ± 500ppm. 2. Full speed data dengan frekuensi clock 12.000Mb/s dan tolerasi pensinyalan data pada ±0.25% atau 2,500ppm. 3. Low speed data dengan frekuensi clock 1.50Mb/s dan tolerasi pensinyalan data pada ±1.5% atau 15,000ppm. 2.13 Persinyalan USB USB adalah host-centric bus di mana host/terminal induk memulai semua transaksi. Paket pertama/penanda (token) awal dihasilkan oleh host untuk enjelaskan apakah paket yang mengikutinya akan dibaca atau ditulis dan apa tujuan dari perangkat dan titik akhir. Paket berikutnya adalah data paket yang diikuti oleh handshaking packet yang melaporkan apakah data atau penanda sudah diterima dengan baik atau pun titik akhir gagal menerima data dengan baik. Setiap proses transaksi pada USB terdiri atas: 32 1. Paket token/sinyal penanda (Header yang menjelaskan data yang mengikutinya) 2. Pilihan paket data (termasuk tingkat muatan) dan 3. Status paket (untuk acknowledge/pemberitahuan hasil transaksi dan untuk koreksi kesalahan) Nomor kaki USB dapat dilihat pada gambar 2.23 Gambar 2.23 Pin USB [www.wikipedia.com] 2.14 Paket data umum USB Data di bus USB disalurkan dengan cara mendahulukan Least Significant Bit(LSB). Paket-paket USB terdiri dari data-data berikut ini: 1. Sync Semua paket harus diawali dengan data sync. Sync adalah data 8 bit untuk low dan full speed atau data 32 bit untuk high speed yang digunakan untuk mensinkronkan clock dari penerima dengan pemancar. Dua bit terakhir mengindikasikan dimana data PID dimulai. 2. PID (Packet Identity/Identitas paket) PID adalah field untuk menandakan tipe dari paket yang sedang dikirim. Tabel 2.2 menunjukkan nilai-nilai PID. 33 Tabel 2.2 Tabel nilai PID [www.wikipedia.com] Ada 4 bit PID data, supaya yakin diterima dengan benar, 4 bit dikomplementasikan dan diulang, menjadikan 8 bit data PID. Hasil dari pengaturan tersebut dapat dilihat pada gambar 2.24 : Gambar 2.24 Gambar hasil pengaturan 4bit USB [www.wikipedia.com] 34 3. ADDR (address) Bagian alamat dari peralatan dimana paket digunakan. Dengan lebar 7 bit, 127 peralatan dapat disambungkan. Alamat 0 tidak sah, peralatan yang belum terdaftar harus merespon paket yang dikirim ke alamat 0. 4. ENDP (End point) Titik akhir dari field yang terdiri dari 4 bit, menjadikan 16 kemungkinan titik akhir. Low speed devices, hanya dapat mempunyai 2 tambahan end point pada puncak dari pipe default. (maksimal 4 endpoints) 5. CRC Cyclic Redundancy Check dijalankan pada data di dalam paket yang dikirim. Semua penanda (token) paket mempunyai sebuah 5 bit CRC ketika paket data mempunyai sebuah 16 bit CRC. 6. EOP (End of packet) Akhir dari paket yang disinyalkan dengan satu angka akhir 0 (Single Ended Zero/SEO) untuk kira-kira 2 kali bit diikuti oleh sebuah J 1 kali. Data yang dikirim dalam bus USB adalah salah satu dari 4 bentuk, yaitu control, interrupt, bulk, atau isochronous. 2.15 Pengenalan Aplikasi Visual Aplikasi adalah adalah suatu subkelas perangkat lunak komputer yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna Biasanya dibandingkan dengan perangkat lunak sistem yang mengintegrasikan berbagai kemampuan komputer, tapi tidak secara langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang menguntungkan pengguna. Contoh utama perangkat lunak aplikasi adalah pengolah kata, lembar kerja, dan pemutar media. Visual adalah dapat dilihat, maka Pemrograman(aplikasi) visual adalah pengembangan bahasa pemrograman untuk mendesain sebuah aplikasi yang user 35 friendly (dapat dilihat oleh alat visual manusia yaitu mata) dan interaktif dengan enduser. Delphi adalah sebuah bahasa pemrograman dan lingkungan pengembangan perangkat lunak. Produk ini dikembangkan oleh Borland. Dengan menggunakan Free Pascal yang merupakan proyek opensource, bahasa ini dapat pula digunakan untuk membuat program yang berjalan di sistem operasi Mac OS X dan Windows CE. Keunggulan bahasa pemrograman ini terletak pada produktivitas, kualitas, pengembangan perangkat lunak, kecepatan kompilasi, pola desain yang menarik yang menarik serta diperkuat dengan pemrogramannya yang terstruktur. 2.16 IDE (Integrated Development Environment) Delphi Lingkungan pengembangan terpadu atau Integrated Development Environment (IDE) adalah bagian dari Delphi yang digunakan untuk memungkinkan pemrograman secara visual merancang tampilan untuk para user (antarmuka pemakai) dan menuliskan listing program atau kode. Gambar 2.25 Tampilan Utama IDE Delphi 1. Menu Bar Berfungsi untuk memilih tugas-tugas tertentu , seperti memulai, membuka, dan menyimpan project, mengompilasi project menjadi file executable (EXE), dan lain-lain. 36 Gambar 2.26 Menu bar pada Delphi 2. Tool Bar/Speed Bar Memiliki fungsi yang sama seperti menu bar, tetapi berfungsi seperti jalan pintas karena lebih praktis dalam penggunaannya. Gambar 2.27 Toolbar dan Speed Bar pada Delphi 3. Component Palette Component Palette berisi kumpulan ikon yang melambangkan komponenkomponen yang terdapat pada VCL (Visual Component Library). Pada Component Palette, akan ditemukan beberapa page control, seperti Standard, Additional, Win32, System, Data Access dan lain-lain. Ikon tombol pointer terdapat di setiap page control. Gambar 2.28 Compponent Palette pada Delphi 4. Form Form Designer merupakan suatu objek yang dapat dipakai sebagai tempat untuk merancang program aplikasi. Form berbentuk sebuah meja kerja yang dapat diisi dengan komponen-komponen yang diambil dari Component Palette. 37 Gambar 2.29 Form Designer pada Delphi 5. Object Inspector Object Inspector digunakan untuk mengubah properti dan karakteristik dari sebuah komponen. Object Inspector terdiri dari dua tab, yaiti Properties dan Events. Tab Properties digunakan untuk mengubah properti komponen. Properti dengan tanda + menunjukkanbahwa propeti tersebut mempunyai subproperti. Tab Events, bagian yang dapat diisi dengan kode program tertentu yang berfungsi unuk menangani event-event (kejadiankejadian yang berupa sebuah procedure) yang dapat direspon oleh sebuah komponen. 38 Gambar 2.30 Object Inspector pada Delphi 6. Object Tree View Object Tree View menampilkan diagram pohon dari komponen-komponen yang bersifat visual maupunnonvisual yang telah terdapat dalam form , data module, atau frame. Object Tree View juga menampilkan hubungan logika antarkomponen. Gambar 2.31 Object TreeView pada Delphi 39 7. Code Editor Code Editor merupaka tempat menuliskan kode program atau pernyataanpernyataan dalam Object Pascal. Code Editor dilengkapi dengan fasilitas highlight yang memudahkan pemakai menemukan kesalahan. Title bar yang terletak pada bagian atas jendela code editor menunjukkan nama file yang sedang disunting, serta pada bagian informasi yang perlu untuk diperhatikan, yaitu : Nomor baris/kolom yang terletak pada bagian paling kiri. Bagian ini berfungsi untuk menunjukkan posisi kursor di dalam jendela Code Editor. Modified menunjukkan bahwa file yang sedang disunting telah mengalami perubahan tersebut belum disimpan. Teks ini akan hilang jika telah menyimpan perubahan. Insert/Overwrite yang terletak pada bagian paling kanan menunjukkan bahwa modus pengetikan teks dalam jendela Code Editor. Insert menunjukkan bahwa modus penyisipan teks dalam keadaan aktif, sedangkan Overwrite menunjukkan bahwa modus penimpaan teks dalam keadaan aktif. Gambar 2.32 Code Editor pada Delphi