• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB II LANDASAN TEORI"

Copied!
24
0
0

Teks penuh

(1)

4 2.1 Power Supply Switching Step-Up

Power supply switching Step-Up merupakan sebuah converter step-up (biasanya sering disebut dengan nama Boost Converter) adalah konverter daya dari DC ke DC dengan tegangan output lebih besar dari tegangan input. Ini merupakan teknik switched-mode power supply (SMPS) yang mengandung setidaknya dua semikonduktor switching (dioda dan transistor) dan setidaknya satu elemen penyimpanan energy seperti kapasitor, induktor, atau kombinasinya. Filter biasanya terbuat dari kapasitor (namun kadang-kadang berada dalam kombinasi dengan inductor juga) biasanya ditambahkan untuk output konverter sehingga dapat mengurangi riak tegangan output.

Gambar 2.1 Skematik dasar Boost Converter

2.1.1 Teknologi

Prinsip utama untuk menaikan tegangan adalah kemampuan induktor untuk menyimpan energi. Dalam boost konverter , tegangan output selalu lebih tinggi dari tegangan input . Prinsip dasar dari sebuah Boost converter terdiri dari 2 kondisi yang berbeda :

(2)

 Bila saklar ditutup , arus mengalir melalui induktor searah jarum jam dan induktor menyimpan energi . Polaritas dari sisi kiri induktor adalah positif. Ketika sakelar di On, saklar S (lihat gambar diatas) ditutup, maka akan mengakibatkan terjadinya peningkatan arus induktor.

 Ketika saklar dibuka , arus akan berkurang sebagai impedansi lebih tinggi . Oleh karena itu , perubahan atau pengurangan saat ini akan ditahan oleh induktor. Dengan demikian polaritas akan terbalik ( berarti sisi kiri induktor akan negatif sekarang ) . Akibatnya dua sumber akan dalam seri menyebabkan tegangan yang lebih tinggi untuk mengisi kapasitor melalui dioda D. maka ketika sakelar Off-negara, saklar terbuka dan satu-satunya jalan yang ditawarkan untuk arus induktor adalah melalui flyback dioda D, kapasitor C dan beban R. Ini hasil dalam mentransfer energi yang terakumulasi selama On-negara menjadi kapasitor. Arus input sama dengan arus induktor seperti dapat dilihat pada gambar 2.

Gambar 2.3 Keadaan dasar 2 sistem Boost Converter

Jika saklar buka-tutup dengan cukup cepat, maka induktor tidak akan sepenuhnya kosong ketika masa pengisian dan pengurangan energi. Maka dengan hal ini beban akan melihat tegangan akan selalu lebih besar daripada sumber tegangan input ketika sakelar dibuka. Dan ketika sakelar dibuka kapasitor secara pararel dengan beban, maka kapasitor akan menyuplai energi ke beban dengan kombinasi energi dari input sehingga energi total menjadi berlipat-lipat energy semula. Ketika sakelar ditutup maka akan terjadi korsleting sehingga sisi kanan akan kekurangan energy, namun pada waktu ini energi akan di supply oleh

(3)

kapasitor. Maka pada waktu tersebut kapasitor itu mampu memberikan tegangan dan energi ke beban. Selama waktu ini, dioda akan mencegah energi dari kapasitor untuk keluar melalui saklar . Saklar tentu saja harus dibuka dengan sangat cepat untuk mencegah energi kapasitor keluar terlalu banyak .

2.1.2 Operasi kerja

Ada 2 buah operasi kerja dengan pada sistem Boost Konverter ini yaitu : Continuous mode

Ketika boost konverter beroperasi secara kontinyu, arus melalui induktor (IL) tidak pernah jatuh ke nol. Gambar dibawah menunjukkan bentuk gelombang baik arus maupun tegangan dalam operasi konverter mode ini. Tegangan output dapat dihitung sebagai berikut, dalam kasus sebuah konverter yang ideal (yaitu menggunakan komponen ideal) yang beroperasi dalam kondisi stabil. Selama saklar S ditutup, yang membuat tegangan input (Vi) muncul di induktor, yang menyebabkan perubahan arus (IL) mengalir melalui induktor selama periode waktu (t) dengan rumusuntuk mencari siklus waktu kerja :

……….…Persamaan 2.1 Persamaan di atas menunjukkan bahwa tegangan keluaran selalu lebih tinggi dari tegangan input (sebagai siklus pergi dari 0 ke 1), dan hal tersebut meningkatkan dengan D, secara teoritis hingga tidak terbatas hingga D mendekati 1. Inilah sebabnya mengapa konverter ini kadang-kadang disebut sebagai konverter langkah-naik.

(4)

Discontinuous mode

Jika riak amplitudo saat ini terlalu tinggi, induktor dapat benar-benar habis sebelum akhir siklus pergantian seluruhnya. Hal ini biasanya terjadi di bawah beban ringan. Dalam hal ini, arus melalui induktor jatuh menuju nol selama bagian dari periode (lihat bentuk gelombang pada gambar dibawah). Meskipun sedikit, perbedaan memiliki efek yang kuat pada persamaan tegangan output. Hal ini dapat dihitung sebagai berikut:

……….…Persamaan 2.2 Dibandingkan dengan persamaan untuk tegangan output dengan mode continued, persamaan ini jauh lebih rumit. Selanjutnya, dalam mode discontinued, penguatan tegangan keluaran tidak hanya tergantung pada siklus, tetapi juga pada nilai induktor, tegangan input, frekuensi switching, dan arus keluaran.

Gambar 2.5 Bentuk gelombang arus & tegangan mode discontinued

2.2 Baterai Lithium Ion

Sebuah baterai lithium-ion (kadang-kadang Li-ion baterai atau LIB) adalah anggota dari keluarga dari jenis baterai isi ulang. Pada baterai ini ion-ion lithium akan bergerak dari anoda ke katoda selama waktu discharge dan akan kembali ke tempatnya semula ketika waktu pengisian/charging. Li-ion baterai menggunakan senyawa lithium sebagai bahan elektroda.

Baterai lithium-ion umumnya digunakan pada perangkat elektronik yang bersifat mobile. Baterai ini adalah salah satu jenis yang paling populer dari baterai isi ulang untuk perangkat elektronik portable. Baterai ini memiliki kepadatan

(5)

energi yang terbaik, tidak memiliki efek memori , dan sangat lambat dalam masalah pengosongan energi ketika baterai ini tidak digunakan.

Gambar 2.6 Baterai Lithium Ion bentuk kotak

2.2.1 Teknologi Baterai

Ada 3 buah komponen utama dari baterai lithium-ion yaitu

 Anoda , biasanya terminal anoda berasal dari sel lithium-ion konvensional terbuat dari karbon, namun baru-baru ini untuk terminal anoda dibuat dari material komersial yang paling populer yaitu grafit.

 Katoda, biasanya terdiri dari material oksida logam seperti Oksida berlapis ( seperti lithium kobalt oksida ) , sebuah polyanion ( seperti lithium besi fosfat ) atau spinel ( seperti lithium oksida mangan ).

 Elektrolit, biasanya terdiri dari material lithium garam dalam pelarut organik . peran elektroda elektrokimia adalah untuk membalikkan antara anoda dan katoda, tergantung pada arah arus listriknya. Elektrolit biasanya campuran karbonat organik seperti etilen karbonat atau karbonat dietil mengandung kompleks ion lithium.

Baterai lithium ion yang lebih mahal daripada baterai NiCd tetapi beroperasi pada rentang temperatur yang lebih luas dengan kepadatan energi yang lebih tinggi. Mereka membutuhkan sirkuit pelindung tambahan untuk mencegah sel-sel baterai melewati puncak tegangan yang diperbolehkan, Biasanya sel lithium-ion yang ada disertai dengan sensor suhu, converter / regulator tegangan. Komponen ini memantau keadaan muatan dan arus masuk dan keluar dari setiap sel , kapasitas masing-masing sel individu ( dimana perubahan drastis dapat

(6)

menyebabkan pembalikkan polaritas yang berbahaya ), dan setiap sel suhunya harus terjaga sehingga meminimalkan risiko sirkuit pendek.

Gambar 2.7 Baterai Lithium-Ion bentuk tabung

2.2.2 Charge dan Discharge

Baterai Li-Ion merupakan jenis baterai yang dapat di isi ulang, Namun baik pengisian maupun pada saat pengosongan baterai jenis ini harus memiliki prosedur keamanan sehingga tidak terjadi short circuit ataupun overcharge yang dapat menyebabkan baterai ini meledak.

2.2.2.1 Charging

Charging adalah sebuah aktifitas yang dilakukan untuk mengisi kembali energi yang sudah habis terpakai pada sebuah tempat penyimpan energi seperti baterai dan lainnya. Berikut adalah cara pengisian energi pada baterai Li-Ion :

Metode Charging

Baterai jenis Li-Ion harus diisi dengan hati-hati. Hal yang paling mudah untuk melakukan pengisian baterai jenis ini adalah dengan melakukan pengisian dengan arus konstan yang kecil. Namun metode charging jenis ini akan memakan waktu yang lama sekali sehingga tidak praktis apabila diterapkan ke dalam sebuah sebuah aplikasi. Sehingga dikembangkan sebuah metode baru yaitu charger akan berhenti ketika battery akan mengalami kerusakan. Kebanyakan pabrik memberikan jaminan overcharging adalah aman apabila arus pengisiannya kecil

(7)

dibawah 0.1C (nilai C adalah nilai kapasitansi baterai berdasarkan arus persatuan waktu biasanya jam ).

Charger akan melakukan monitoring terhadap baterai dan ketika baterai penuh maka tegangan akan drop sedikit, charger akan mendeteksi akan hal ini dan kemudian akan menghentikan proses charging.Proses adalah untuk mengisi pada arus konstan sampai setiap sel mencapai tegangan 4,1 Volt. Charger kemudian akan beralih ke modus tegangan konstan sehingga arus pengisian secara bertahap akan berkurang pada saat charger mencapai tegangan sel pada 4,2 Volt. Kebanyakan produsen mengklaim tegangan maksimum dan minimum sel baterai adalah sebesar 4,23 Volt dan 2,75 Volt ( pada penelitian ini batas tegangan dibawah adalah 3 Volt sebagai proteksi tambahan untuk mencegah adanya kerusakan pada rangkaian pelindung baterai dari Short-circuit ). Apabila sel dipaksakan melewati batas-batas ini maka dapat mengurangi kapasitas sel dan kemampuan untuk memberikan nilai arus penuh.

Suhu versus Charging

Ketika pengisian energi terjadi pada saat baterai belum penuh maka yang terjadi adalah seluruh arus akan diubah menjadi materi kimia, namun ketika baterai sudah hampir penuh maka yang terjadi adalah kebanyakan energi akan diubah menjadi panas. Hal ini akan mengakibatkan naiknya suhu temperature pada baterai. Pada beberapa pabrik baterai mereka dilengkapi dengan jaket suhu yang akan menjaga suhu stabil dan beberapa paberik yang lain membuat pengaturan besarnya arus pada saat pengisian yang juga dapat menjaga suhu tetap stabil. Beberapa standar baterai yang digunakan memiliki kemampuan untuk hidup lebih panjang dengan suhu kamar yang dingin. Pada 25 °C (77 °F) baterai mampu beroperasi sampai dengan 10 tahun, pada suhu 33 °C (91 °F) baterai mampu beroperasi sampai dengan 5 tahun, dan 42 °C (108 °F) baterai mampu beroperasi sampai dengan 2,5 tahun.

2.2.2.2 Discharging

Discharging adalah suatu keadaan ketika energi pada baterai secara perlahan-lahan habis keluar dari baterai.

(8)

Self discharging

Tingkat self-discharge bervariasi dengan suhu, di mana suhu penyimpanan yang lebih rendah menyebabkan tingkat pengosongan debit lebih lambat dan sehingga akan menyebabkan daya tahan baterai yang lebih lama. Tingkat self-discharge adalah 5 - 20% pada hari pertama dan akan stabil sekitar 0,5-4% per hari pada suhu kamar Tetapi pada 45 ° C adalah sekitar 3 kali lebih tinggi. Ini bukan masalah dalam jangka pendek tetapi membuat mereka tidak cocok untuk banyak kegunaan.

Over discharging

Apabila discharge terjadi pada sebuah cell sampai semua energinya habis, akan menyebabkan adanya pembalikan polaritas pada beberapa sel-selnya. Biasanya hal ini terjadi pada 4 buah baterai AA yang dipasang seri (contohnya adalah pada kamera). Ketika salah satu baterai habis energinya, dan ketika hal ini terjadi baterai yang masih terisi energi akan mendorong sel yang energinya habis secara terbalik sehingga akan menyebabkan kerusakan permanen pada sel tersebut. Hal ini terjadi ketika 4 buah baterai tersebut memiliki kapasitas yang berbeda-beda. Namun pada kondisi pararel baterai tidak akan memiliki masalah

Pada pertengahan 2013, tingkat pengosongan baterai dapat mencapai 70C secara terus-menerus (70C adalah 70 kali arus yang dikeluarkan dari kapasitas arus yang tertera pada baterai) akan tetapi hal ini merupakan pengecualian dari aturan umum. karena umumnya bahwa tingkat pengosongan setiap sel baterai 1C masih berdiri sebagai standar yang direkomendasikan antara para pengguna. Hal ini juga penting untuk dicatat bahwa pengisian ataupun pengosongan baterai dengan arus 1C akan dapat memperpanjang umur setiap baterai Li-Ion.

2.3 Mikrokontroller Arduino Leonardo

Pengendali mikro (Inggris: microcontroller) adalah sistem mikroprosesor lengkap yang terkandung di dalam sebuah chip. Mikrokontroler berbeda dari mikroprosesor serba guna yang digunakan dalam sebuah PC, karena sebuah mikrokontroler umumnya telah berisi komponen pendukung sistem minimal mikroprosesor, yakni memori dan antarmuka I/O.

(9)

Gambar 2.8 Microcontroller Arduino Leonardo

Sistem komputer dewasa ini paling banyak justru terdapat di dalam peralatan lain, seperti telepon, jam, perangkat rumah tangga, kendaraan, dan bangunan. Sistem embedded biasanya mengandung syarat minimal sebuah sistem mikroprosesor yaitu memori untuk data dan program, serta sistem antarmuka input/output yang sederhana. Antarmuka semacam keyboard, tampilan, disket, atau printer yang umumnya ada pada sebuah komputer pribadi justru tidak ada pada sistem mikrokontroler. Sistem mikrokontroler lebih banyak melakukan pekerjaan-pekerjaan sederhana yang penting seperti mengendalikan motor, saklar, resistor variabel, atau perangkat elektronis lain. Seringkali satu-satunya bentuk antarmuka yang ada pada sebuah sistem mikrokontroler hanyalah sebuah LED, bahkan ini pun bisa dihilangkan jika tuntutan konsumsi daya listrik mengharuskan demikian.

Perkembangan Teknologi Mikrokontroler sekarang ini sudah sampai pada Mikrokontroler dengan platform open source Arduino. Arduino adalah open-source elektronik prototyping platform berbasis pada perangkat keras dan perangkat lunak yang fleksibel dan mudah digunakan. Hal Ini dimaksudkan bagi para seniman, desainer, penggemar, dan siapapun yang tertarik dalam menciptakan objek atau lingkungan yang interaktif.

Arduino bisa merasakan lingkungan dengan menerima masukan dari berbagai sensornya dan dapat melakukan pengendalian sekitarnya dengan menggunakan lampu, motor, aktuator dan lain-lainnya. Mikrokontroler di modul ini diprogram menggunakan bahasa pemrograman Arduino (berdasarkan Wiring) dan pengembangan lingkungan Arduino (berdasarkan Processing). Proyek

(10)

Arduino dapat berdiri sendiri atau mereka dapat berkomunikasi dengan perangkat lunak yang berjalan pada komputer (misalnya Flash, Pengolahan,MaxMSP).

Modul arduino ini dapat dibangun sendiri atau dibeli jadi. Perangkat lunaknya dapat didownload secara gratis. Desain referensi perangkat keras (File CAD) yang tersedia di bawah lisensi open-source, dan bebas untuk menyesuaikannya dengan kebutuhan. Ada banyak jenis modul arduino Semua modul berbeda antara satu dengan yang lainnya. Hal yang membedakan antar modul arduino adalah chipsetnya, ukuran onboard memori, on-board peripheral dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan mereka bisa dikatakan hampir sama.

2.3.1 Sketch

Sketch adalah lembar kerja pada sistem arduino yang digunakan untuk menulis listing program, mengeditnya, mengcompile dan kemudian mengupload ke dalam microcontroller arduino tersebut. Sketch Arduino terdiri dari bagian-bagian seperti comments, Setup (), dan Loop (). Dibawah ini akan dijelaskan secara lebih detail mengenai bagian-bagian tersebut.

2.3.1.1 Comments

Biasanya komentar digunakan untuk memudahkan bagi orang-orang membaca kode yang telah ditulis oleh engineer, untuk menjelaskan tujuan dari dibuatnya program ini, cara kerjanya, atau mengapa program tersebut ditulis seperti itu. Dibawah adalah contoh Comments :

/*

* Blink

*

* The basic Arduino example. Turns on an LED on for one second, * then off for one second, and so on... We use pin 13 because, * depending on your Arduino board, it has either a built-in LED * or a built-in resistor so that you need only an LED. *

(11)

* http://www.arduino.cc/en/Tutorial/Blink */

Adalah sesuatu yang baik untuk memberikan komentar atas sketch, salah satunya adalah untuk membantu ketika adanya kode yang ingin diperbaiki serta hal ini dapat membantu orang lain untuk belajar dari atau memodifikasi kode yang sudah berjalan. Ada comments dengan bentuk lain, yaitu single-line. Comments ini dimulai dengan “ // “ dan lanjut hingga ke akhir baris. Sebagai contohnya adalah :

int ledPin = 13; // LED connected to digital pin 13

Kalimat yang berisi pesan ini "LED connected to digital pin 13" adalah sebuah comments yang digunakan untuk menjelaskan mengenai variable 13

2.3.1.2 Fungsi Setup ()

Ada beberapa fungsi khusus yang merupakan bagian dari sketch yaitu “ Setup () “. Fungsi Setup () dipanggil sekali, yaitu ketika sketsa dimulai. Fungsi ini merupakan tempat yang baik untuk melakukan pengaturan-pengaturan seperti :

 Pengaturan mode output pada pin digital

 Inisialisasi library microcontroller arduino

 Inisialisasi Variabel, dan lain-lain

fungsi setup hanya akan berjalan sekali, setelah setiap PowerUp atau setelah tombol reset pada rangkaian modul Arduino ditekan. Berikut adalah contoh dari fungsi setup () : void setup() { Serial.begin(9600); pinMode(buttonPin, INPUT); } 2.3.1.3 Fungsi Loop ()

Fungsi Loop () adalah fungsi utama dalam sketch arduino ini. Fungsi ini dipanggil berulang kali oleh modul microcontroller untuk menjalankan program

(12)

yang telah tersimpan di dalamnya. Berikut adalah contoh penggunaan dari fungsi Loop () : void loop() { if (digitalRead(buttonPin) == HIGH) serialWrite('H'); else serialWrite('L'); delay(1000); }

fungsi loop () sesuai dengan namanya, melakukan perulangan setiap listing program yang dituliskan, yang pada saat tertentu variable dari program anda telah berubah sehingga system merespon dan menghasilkan output baru yang berbeda dengan hasil output pertama.

2.3.2 Fitur-fitur Microcontroller Arduino

Berikut ini adalah Fitur-fitur dari perangkat keras microcontroller Arduino Leonardo. Perangkat keras ini dapat diprogram dengan mudah pada sketch. Ada beberapa fitur-fitur perangkat keras yang dapat ditemukan pada modul microcontroller arduino Leonardo, berikut adalah penjelasan dari fitru-fitur tersebut :

2.3.2.1 Pin Digital

I/O Port pada modul microcontroller Arduino Leonardo dikenal dengan Pin Digital. Pin ini dapat dikonfigurasi baik sebagai input ataupun dapat digunakan sebagai output.

Karakteristik pin digital ketika menjadi input

Arduino dengan chipsnya Atmega, secara default pengaturan port digital adalah pengaturan untuk port masukan, sehingga mereka tidak perlu secara eksplisit dinyatakan sebagai input dengan pinMode (). Pin dikonfigurasi sebagai input sehingga pin tersebut berada dalam keadaan impedansi tinggi. Salah satu

(13)

penjelasannya adalah pin input akan mengambil daya yang sangat kecil sekali pada rangkaian ketika dalam kondisi pengambilan sampel, dapat dikatakan bahwa ada resistor seri dari 100 Megaohm di depan pin tersebut. Hal ini berarti bahwa hanya sangat sedikit arus yang digunakan untuk memindahkan kondisi pin input tersebut dari keadaan satu ke keadaan yang lain. Sehingga hal ini dapat membuat pin berguna untuk melakukan tugas-tugas seperti membaca sensor sentuh kapasitif, membaca sebuah LED sebagai dioda, atau membaca sebuah sensor analog dengan skema seperti RCTime. Akan tetapi hal ini juga berarti, apabila ada pin input yang tidak terhubung ke rangkaian, akan menghasilkan beberapa keadaaan seperti akan berlogika acak, menghasilkan noise, atau akan menjadi kapasitor coupling pada pin yang berdekatan dengan Pin tersebut.

Adalah hal yang berguna untuk mengarahkan pin masukan ke keadaan yang dikenal jika tidak ada input. Hal ini dapat dilakukan dengan menambahkan resistor pullup (ke +5 V), atau resistor pull-down (resistor ke tanah) pada input, dengan resistor 10 Kohm. Ada juga resistor pullup 20 KOhm yang dapat di akses pada chip Atmega dengan perangkat lunak. Berikut ini adalah cara untuk mengakses resistor pullup built-in.

pinMode(pin, INPUT); // set pin to input

digitalWrite(pin, HIGH); // turn on pullup resistors

Karakteristik pin digital ketika menjadi Output

Apabila Pin digital ini dikonfigurasi sebagai OUTPUT dengan pinMode (), maka Pin ini akan berada dalam keadaan impedansi rendah. Hal ini berarti bahwa mereka dapat menyediakan sejumlah besar arus ke rangkaian lainnya. Pin Atmega dapat menjadi sumber arus positif atau menjadi sumber arus negatif hingga 40 mA (milliamps) arus ke perangkat lain. Hal ini cukup untuk menghidupkan sebuah LED, menjalankan banyak sensor, namun sayangnya saat ini tidak cukup untuk menjalankan relay, solenoida, atau motor.

Hubungan pendek pada pin Arduino, atau mencoba untuk menjalankan rangkaian dengan arus yang besar, dapat merusak atau menghancurkan transistor output pada pin, atau merusak chip Atmega keseluruhan. Sering kali ini akan menghasilkan sebuah pin "mati" dalam mikrokontroler akan tetapi chip yang

(14)

tersisa masih akan berfungsi secara memadai. Maka untuk alasan ini, adalah sebuah ide yang baik untuk menghubungkan pin OUTPUT ke perangkat lain dengan resistor 470 Ohm atau 1 KOhm.

2.3.2.2 Pin Analog

Sebagian besar port Arduino (Atmega) adalah pin analog yang dapat dikonfigurasi dan digunakan persis dengan cara yang sama seperti pin digital. Berikut ini adalah karakteristik dari Pin Analog.

A/D Converter

Chips Atmega digunakan pada Arduino memiliki 6 saluran analog-ke-digital converter (ADC). ADC tersebut memiliki 10 bit resolusi dari 0 ke 1023. Sedangkan fungsi utama dari pin analog pada Arduino adalah untuk membaca sensor analog. pin analog juga memiliki semua fungsi General Purposes input / output (GPIO) pin (sama dengan pin digital 0-13).

Pemetaan Pin

Pin analog dapat digunakan sama seperti pin digital, menggunakan penamaan A0 (untuk input analog 0), A1, dll Sebagai contoh, kode berikut digunakan untuk mengatur 0 pin analog ke output, dan mengaturnya berlogika “High” :

pinMode(A0, OUTPUT); digitalWrite(A0, HIGH);

Pull up Resistor

Pin yang analog juga memiliki resistor pullup, yang bekerja sama seperti resistor pullup pada pin digital. Mereka diaktifkan dengan mengeluarkan perintah seperti dibawah ini :

digitalWrite(A0, HIGH); // set pullup on analog pin 0

namun harus disadari bahwa mengatur Resistor Pull up akan mempengaruhi nilai yang akan diambil oleh analogRead (). Hal tersebut

(15)

dikarenakan Perintah analogRead tidak akan bekerja dengan benar jika pin sebelumnya di gunakan sebagai output, akan tetapi apabila hal ini terjadi maka pin tersebut harus di atur kembali menjadi masukan sebelum menggunakan perintah analogRead. Hal yang sama pula harus diterapkan jika pin telah diatur untuk menjadi logika “High” sebagai output, resistor pullup harus diatur ketika beralih kembali ke input.

2.3.2.3 PWM ( Pulse Width Modulator )

Pulse Width Modulation, atau PWM, adalah teknik untuk mendapatkan hasil yang analog dengan teknik digital. Digital kontrol digunakan untuk membuat gelombang persegi, dan kemudian sinyal diatur sehingga beralih antara hidup dan mati secara cepat. Pola on-off ini dapat mensimulasikan tegangan Hidup (5 Volt) dan off (0 Volt) dengan mengubah sebagian waktu sinyal Hidup dengan waktu pada sinyal mati. Lamanya "on time" disebut lebar pulsa. Untuk mendapatkan berbagai nilai analog, pengguna akan mengubah, atau memodulasi, yang lebar pulsa. Jika pengguna mengulangi pola on-off ini dengan cukup cepat dan menggunakan LED misalnya sebagai output, maka hasilnya adalah pengendalian kecerahan LED.

Dalam grafik di bawah, garis-garis hijau merupakan periode waktu yang teratur. Ini adalah durasi atau periode yang merupakan kebalikan dari frekuensi PWM. Dengan kata lain, dengan frekuensi PWM Arduino di sekitar 500Hz, garis hijau hanya akan teratur selama 2 milidetik saja. Fungsi untuk analogWrite () memiliki nilai skala dari 0 – 255. Ketika analogWrite memiliki (255) maka siklus akan 100% (selalu high), dan analogWrite (127) adalah siklus kerja 50% (High pada separuh waktu dan low pada separuh waktu).

(16)

Gambar 2.9 PWM Microcontroller Arduino

2.3.2.4 Memory

Ada tiga jenis memori dalam mikrokontroler yang digunakan pada Arduino

 Flash memori adalah tempat dimana listing program (sketch) Arduino disimpan.

 SRAM adalah di mana listing program (sketch) Arduino menciptakan dan memanipulasi variabel ketika berjalan sketch tersebut dijalankan.

 EEPROM adalah ruang memori untuk menyimpan informasi jangka panjang.

Flash memori dan EEPROM adalah non-volatile (informasi tetap ada setelah power dimatikan). Sedangkan SRAM adalah volatile dan akan hilang saat tidak adanya power supply.

Chip ATmega32u4 memiliki kapasitas memori sebagai berikut : Flash 32k Bytes (of which 4k is used for the bootloader)

SRAM 2.5 KBytes EEPROM 1 KByte

2.3.3 Teknik memprogram Microcontroller

Berikut adalah konsep dalam memprogram modul microcontroller arduino Leonardo :

(17)

2.3.3.1 Variabel

Variabel adalah tempat untuk menyimpan data. Variabel memiliki nama, nilai, dan tipe. Sebagai contoh, pernyataan ini (disebut deklarasi):

int pin = 13;

Perintah ini menciptakan variabel yang namanya pin, yang nilainya adalah 13, dan bertipe int. apabila user membutuhkan variable ini, maka akan dapat menunjuk ke variabel ini dengan memanggil namanya. pada saat itu variable ini nilainya akan dicari dan digunakan. seperti dalam pernyataan ini:

pinMode(pin, OUTPUT);

Nilai dari pin (13) ini akan diteruskan ke perintah pinMode (). Dalam hal ini, sebenarnya user tidak perlu menggunakan variabel, pernyataan ini akan bekerja dengan baik sama seperti :

pinMode(13, OUTPUT);

Keuntungan dari penggunaan variabel dalam hal ini adalah bahwa user hanya perlu menentukan jumlah pin yang digunakan sekali, akan tetapi user dapat menggunakannya berkali-kali. sehingga jika user kemudian memutuskan untuk mengubah penggunaan dari pin 13 menjadi pin 12, user hanya perlu mengubah sedikit kode. user juga dapat menggunakan nama pengenal untuk membuat pentingnya variabel yang jelas (misalnya program mengendalikan LED RGB memungkinkan penamaan variabel redPin, greenPin, dan bluePin. Sebuah variabel memiliki kelebihan lain atas nilai seperti mengubah nilai dari variabel menggunakan perintah Sebagai contoh:

pin = 12;

Perintah ini akan mengubah nilai dari variabel menjadi 12. Perhatikan bahwa user tidak menentukan jenis variable, hal tersebut tidak diubah oleh perintah tersebut. Artinya, nama variabel secara permanen diasosiasikan dengan jenis, user hanya melakukan perubahan nilainya. user harus mendeklarasikan variabel sebelum user memberikan nilai untuk itu. Jika tidak maka pesan error ini akan muncul "error: pin was not declared in this scope".

Bila user menetapkan satu variabel yang lain, user membuat salinan nilai variable tersebut dan menyimpan salinannya pada lokasi di memori yang terkait

(18)

dengan variabel lain. Mengubah satu tidak berpengaruh pada yang lain. Misalnya, setelah:

int pin = 13; int PIN2 = pin; pin = 12;

hanya variable pin yang memiliki nilai 12, sedangkan untuk variable PIN2 memiliki nilai 13. Hal ini mengacu pada bagian dari listing program user di mana variabel tersebut digunakan. Sebagai contoh, jika user ingin dapat menggunakan variabel mana saja dalam programnya, maka user dapat menyatakan di bagian atas listing programnya. Ini disebut variabel global, berikut adalah contohnya:

int pin = 13; void setup() { pinMode(pin, OUTPUT); } void loop() { digitalWrite(pin, HIGH); }

Seperti yang terlihat, pin yang digunakan di kedua setup () dan loop () fungsi. Kedua fungsi mengacu pada variabel yang sama, sehingga perubahan itu satu akan mempengaruhi nilai yang telah di yang lain, seperti di bawah ini : int pin = 13; void setup() { pin = 12; pinMode(pin, OUTPUT); } void loop() { digitalWrite(pin, HIGH);

(19)

}

Di sini, digitalWrite () fungsi yang dipanggil dari loop () akan melewati nilai 12, karena itu nilai yang ditugaskan ke variabel di setup () fungsi. Jika user hanya perlu menggunakan variabel dalam sebuah perintah tunggal, user dapat menyatakan variable tersebut di Setup (), sehingga ruang lingkup variable tersebut akan terbatas pada perintah tersebut. Sebagai contoh :

void setup() { int pin = 13; pinMode(pin, OUTPUT); digitalWrite(pin, HIGH); }

Dalam perintah ini, pin variabel hanya dapat digunakan dalam setup () fungsi. Jika user mencoba untuk melakukan sesuatu seperti ini:

void loop() {

digitalWrite(pin, LOW); // wrong: pin is not in scope here. }

User akan mendapatkan pesan yang sama seperti sebelumnya"error: pin was not declared in this scope". Hal ini berarti meskipun user telah menyatakan variable pin dalam program, user mencoba untuk menggunakan suatu variabel di luar jangkauannya. Hal ini berarti jika sebuah variabel bersifat global, nilainya bisa diubah di mana saja di dalam listing program tersebut, sehingga user perlu memahami keseluruhan program untuk mengetahui apa yang akan terjadi pada variabel. Misalnya, jika variabel user memiliki nilai yang tidak Anda harapkan, akan lebih mudah untuk mencari tahu di mana nilai tersebut berasal dari jika variabel memiliki ruang lingkup terbatas.

2.3.3.2 Fungsi-Fungsi

Segmentasi program ke fungsi memungkinkan programmer untuk membuat potongan-potongan program yang melakukan tugas yang telah

(20)

didefinisikan sebelumnya dan kemudian kembali ke awal program dimana fungsi itu dipanggil. Menciptakan sebuah fungsi sangat berguna ketika salah satu kebutuhan untuk melakukan tindakan yang sama beberapa kali dalam sebuah program.

Untuk programer yang terbiasa menggunakan BASIC, fungsi dalam Arduino memberikan (dan memperluas) kegunaan menggunakan subrutin (gosub dalam BASIC). Menstandarisasikan program ke fungsi memiliki beberapa keuntungan yaitu membantu programmer tetap terorganisir yang seringkali hal ini membantu pada awal konsep program. Fungsi juga mengelompokan satu tindakan dalam satu tempat sehingga fungsi hanya harus dipikirkan dan debugged sekali. Hal ini juga mengurangi kemungkinan untuk kesalahan dalam modifikasi, jika ada listing program yang perlu diubah. Fungsi juga membuat sketsa keseluruhan menjadi lebih kecil dan lebih kompak karena hanya bagian kode tertentu saja yang digunakan kembali berkali-kali. Fungsi membuat lebih mudah untuk menggunakan kembali kode dalam program lain dengan membuatnya lebih modular, dan sebagai efek sampingnya, menggunakan fungsi juga sering membuat program lebih mudah dibaca.

Ada dua fungsi yang diperlukan dalam sketsa Arduino, setup () dan loop (). Fungsi lainnya harus dibuat di luar kurung dari dua fungsi. Sebagai contoh, dibawah ini adalah fungsi sederhana untuk mengalikan dua angka.

void setup(){ Serial.begin(9600); } void loop() { int i = 2; int j = 3; int k;

k = myMultiplyFunction(i, j); // k now contains 6 Serial.println(k);

delay(500); }

(21)

int result; result = x * y; return result; }

2.3.3.3 Library-Library

Sebuah Kelas hanyalah sebuah kumpulan fungsi dan variabel yang semua berada di satu tempat. Fungsi-fungsi dan variabel dapat bersifat publik, yang berarti bahwa mereka dapat diakses oleh orang yang menggunakan library user, atau Private yang berarti mereka hanya dapat diakses dari dalam kelas itu sendiri. Setiap kelas memiliki fungsi khusus yang dikenal sebagai konstruktor, yang digunakan untuk membuat sebuah instance dari kelas. Konstruktor ini memiliki nama yang sama dengan kelas, dan tidak ada jenis kembali.

library menyediakan fungsionalitas tambahan untuk digunakan dalam sketch, misalnya menggunakan perangkat keras atau memanipulasi data. Untuk menggunakan perpustakaan di sketch, pilih Sketch> Impor Library Menu. Hal ini akan memasukkan satu atau lebih pernyataan # include di bagian atas sketch dan akan mengcompile sketch user dengan Library. Karena library masuk ke sketch user hal ini menyebabkan peningkatan jumlah memory yang diperlukan untuk sketch ini. Jika sketch tidak lagi membutuhkan library, cukup hapus pernyataannya # include dari atas sketch.

Ada banyak library yang sudah ada di dalam perangkat lunak arduino, Dan beberapa dapat didownload dari berbagai sumber. Library dapat ditemukan dalam folder khusus, dan biasanya akan berisi sedikitnya dua file dengan akhiran h Dan satu dengan akhiran cpp.

2.4 LCD Display

LCD adalah sebuah layar kristal cair yang merupakan display panel datar, tampilan visual elektronik, atau tampilan video yang menggunakan sifat modulasi cahaya kristal cair. Komponen kristal cair ini tidak memancarkan cahaya secara langsung.

(22)

LCD digunakan dalam berbagai aplikasi termasuk monitor komputer, televisi, panel instrumen, menampilkan pesawat kokpit, dan lain-lainnya. LCD umum dalam perangkat konsumen seperti pemutar video, perangkat game, jam tangan, kalkulator, dan telepon. LCD pada masa kini telah menggantikan tabung sinar katoda (CRT) dan telah dapat menampilkan dalam sebagian besar aplikasi. LCD tersedia dalam berbagai ukuran layar lebih luas dibanding CRT dan plasma display. LCD tidak menggunakan fosfor sehingga tidak berbahaya.

2.4.1 Cara Kerja LCD

Setiap pixel dari sebuah LCD biasanya terdiri dari lapisan molekul yang selaras antara dua elektroda transparan, dan dua filter polarisasi, sumbu transmisi cahaya yang (di sebagian besar kasus) tegak lurus satu sama lain. Sehingga dengan filter polarisasi ini sinar yang melewati filter pertama akan diblokir oleh polarizer (silang) filter kedua.

Permukaan elektroda yang berada dalam kontak dengan bahan kristal cair diperlakukan sedemikian rupa untuk menyelaraskan molekul kristal cair dalam arah tertentu. Peralatan ini biasanya terdiri dari lapisan polimer tipis satu arah ( biasanya digosok menggunakan kain), sehingga arah alignment kristal cair ini kemudian ditentukan oleh arah menggosoknya. Elektroda terbuat dari konduktor transparan Indium Tin Oksida (ITO). Liquid Crystal Display pada hakekatnya merupakan perangkat "pasif ” yang merupakan katup cahaya sederhana. Untuk mengelola dan mengatur data yang akan ditampilkan dilakukan oleh satu atau lebih sirkuit biasanya disebut sebagai driver LCD.

Sebelum medan listrik diterapkan, orientasi molekul kristal cair ditentukan oleh penyelarasan pada permukaan elektroda. Dalam perangkat twisted nematic (masih perangkat kristal cair yang paling umum), arah keselarasan permukaan pada dua elektroda yang tegak lurus satu sama lain, sehingga molekul mengatur diri mereka dalam struktur heliks, atau berputar. Ini menginduksi rotasi polarisasi dan akan menghalangi cahaya yang masuk. Jika tegangan yang diberikan cukup besar, molekul kristal cair di tengah lapisan hampir sepenuhnya dipilin dan polarisasi cahaya insiden tidak diputar saat melewati lapisan kristal cair. Lampu ini kemudian akan terutama terpolarisasi tegak lurus terhadap filter kedua, dan

(23)

dengan demikian akan diblokir dan akan muncul pixel hitam. Dengan mengontrol tegangan diterapkan di seluruh lapisan kristal cair di setiap pixel, cahaya dapat diperbolehkan untuk melewati dalam jumlah yang bervariasi sehingga level cahaya yang keluar akan bervariasi.

Kedua bahan kristal cair dan bahan lapisan alignment mengandung senyawa ionik. Jika medan listrik dari satu polaritas tertentu diterapkan untuk jangka waktu yang lama, bahan ini ionik akan tertarik ke permukaan dan menurunkan kinerja perangkat. Hal ini harus dihindari baik dengan menerapkan arus bolak-balik atau dengan membalik polaritas medan listrik tersebut.

2.4.2 LCD Matrix 16x2 Hitachi HD44780

Hitachi HD44780 LCD controller adalah salah satu matriks layar kristal cair yang paling umum. Hitachi mengembangkan mikrokontroler khusus untuk mengendalikan layar LCD alfanumerik dengan antarmuka yang sederhana yang dapat terhubung ke mikrokontroler atau mikroprosesor pada umumnya.

Tegangan operasi nominal untuk lampu latar LED 5V pada kecerahan penuh, dengan peredupan pada tegangan yang lebih rendah tergantung pada detil seperti warna LED. Non-LED lampu latar sering membutuhkan tegangan yang lebih tinggi.

Gambar 2.10 LCD Hitachi HD44780

D44780U dot-matrix liquid crystal display controller dan driver yang menampilkan alphanumerics LSI, dan simbol. Hal ini dapat dikonfigurasi untuk mengatur dot-matrix liquid crystal display di bawah kontrol dari 4 - atau 8-bit mikroprosesor. Karena semua fungsi-fungsi seperti RAM monitor, karakter generator, dan driver LCD yang dibutuhkan untuk mengendalikan dot-matrix

(24)

liquid crystal display secara internal diberikan pada satu chip, sebuah sistem minimal dapat dihubungkan dengan controller / driver.

Sebuah HD44780U tunggal dapat menampilkan hingga 8-karakter satu baris atau dua baris. HD44780U ini memiliki kompatibilitas fungsi pin dengan HD44780S yang memungkinkan pengguna untuk dengan mudah mengganti LCD-II dengan HD44780U. Karakter HD44780U generator ROM diperpanjang untuk menghasilkan 208 5 '8 titik karakter font dan 32 5 '10 titik karakter font dengan total 240 font karakter yang berbeda.

Catu daya yang rendah (2.7V ke 5.5V) dari HD44780U ini cocok untuk setiap produk portabel berbasis baterai yang membutuhkan daya rendah. Beberapa fitur lainnya adalah sebagai berikut:

 Tegangan kerja yang rendah : 2,7 sampai 5.5V.

 Antar muka kecepatan tinggi bus MPU 2 MHz (ketika VCC = 5V)

 4-bit atau 8-bit diaktifkan antarmuka MPU

 80 '8-bit display RAM (80 karakter maks.)

 9920-bit karakter ROM untuk pembangkit total 240 font karakter font karakter 208 (5'8 titik) karakter font 32 (5 '10 titik)

 Rangkaian ulang otomatis yang menginisialisasi controller / driver setelah power on

 Osilator internal dengan resistor eksternal

 Konsumsi daya rendah

Gambar

Gambar 2.1 Skematik dasar Boost Converter
Gambar 2.3 Keadaan dasar 2 sistem Boost Converter
Gambar 2.5 Bentuk gelombang arus & tegangan mode discontinued
Gambar 2.6 Baterai Lithium Ion bentuk kotak
+6

Referensi

Dokumen terkait

Telah tetap dengan seluruh riwayat- riwayat ini bahwa Amr bin Luhai - laknat Allah Shubhanahu wa ta’alla atasnya- adalah orang yang membawa berhala ke tanah Arab dan

Masing-masing rencana aksi mitigasi emisi GRK akan dilaksanakan oleh masing-masing lembaga/instansi yang terkait seperti yang dijabarkan pada Bab III dan Bab V. Sementara,

• Jangan biarkan kabel jaringan listrik bersentuhan atau mendekati pintu peralatan atau ditempatkan di rongga bawah peralatan, terutama saat beroperasi atau pintu peralatan

111 Gambar 4.25 Diagram Batang Strategi Investasi Berdasarkan Hubungan Nilai Kualitas dan Nilai Breadth terhadap Biaya Maintenance ... 112 Gambar 4..26 Diagram Bubble Hubungan

Hasil uji aktivitas sitotoksik secara MTT, ekstrak n-heksana memiliki aktivitas terhadap sel kanker payudara T-47D yang lebih tinggi dibandingkan ekstrak metanol.dengan nilai IC 50

Artikel ini menyajikan informasi mengenai pengaruh yang ditimbulkan dengan adanya pembangunan jalan terowongan di Jalan Raya Pasar Minggu terhadap tingkat pendapatan

· Lepaskan selalu daya listrik AC dengan mencabut kabel daya dari colokan daya sebelum menginstal atau melepaskan motherboard atau komponen perangkat keras lainnya.. ·

NO Nama NIM Program Studi L/P