• Tidak ada hasil yang ditemukan

Perancangan Alat Pengisi Baterai Lead Acid Berbasis Mikrokontroler ATMEGA 8535

N/A
N/A
Protected

Academic year: 2016

Membagikan "Perancangan Alat Pengisi Baterai Lead Acid Berbasis Mikrokontroler ATMEGA 8535"

Copied!
72
0
0

Teks penuh

(1)

BERBASIS MIKROKONTROLER ATMEGA 8535

Diajukan untuk memenuhi salah satu persyaratan dalam menyelesaikan Pendidikan Sarjana (S-1) pada Departemen Teknik Elektro

Sub Jurusan Teknik Komputer

Oleh:

BUKRY CHAMMA SIBURIAN 100422004

DEPARTEMEN TEKNIK ELEKTRO

FAKULTAS TEKNIK

UNIVERSITAS SUMATERA UTARA

MEDAN

(2)
(3)

ABSTRAK

Tulisan ini membahas tentang perancangan sebuah alat pengisi baterai lead acid. Pengendali utama pada alat ini menggunakan mikrokontroler ATMega 8535. Alat ini bekerja untuk memantau keadaan tegangan baterai pada saat kosong dan saat penuh. Ketika tegangan baterai berada pada tegangan minimum maka akan dilakukan proses pengisian dan ketika tegangan baterai berada pada tegangan maksimum maka akan menghentikan proses pengisian. Setiap tegangan baterai yang tebaca ditampilkan pada LCD.

(4)

KATA PENGANTAR

Puji dan Syukur penulis panjatkan kepada Tuhan yang Maha Esa, atas berkat dan karuniaNya sehingga penulis dapat menyelesaikan laporan Tugas Akhir ini.

Adapun Tugas akhir ini disusun sebagai salah satu syarat untuk menyelesaikan Pendidikan Sarjana (S-1) Teknik Komputer pada Departemen Teknik Elektro, Fakultas Teknik Universitas Sumatera Utara, yang penulis beri judul Perancangan Alat Pengisi Baterai Lead Acid Berbasis Mikrokontroler ATMEGA 8535.

Dalam menyelesaikan Tugas Akhir ini penulis banyak menerima bimbingan dan dorongan berupa pemikiran tenaga dan waktu dari berbagai pihak. Oleh sebab itu, pada kesempatan ini penulis mengucapkan terima kasih yang sebesar-besarnya kepada :

1. Ayahanda Gr. Drs. J. Siburian dan Ibunda T. Sihite, BA tercinta selaku orangtua penulis, Kakak dan adik-adikku Yusrini Siburian, AMG, Yosi Enola Siburian,SE dan Abram Yosua Siburian yang selalu memberikan dukungan moril dan semangat kepada saya.

2. Bapak Ir. T. Ahri Bahriun, MSc, selaku dosen pembimbing Tugas Akhir yang telah memberikan bimbingan, arahan, kritik, semangat dan pengetahuan kepada penulis selama masa kuliah sampai menyelesaikan Tugas Akhir.

(5)

4. Bapak Rahmad Fauzi, ST, MT, selaku Sekretaris Departemen Teknik Elektro, Fakultas Teknik Universitas Sumatera Utara dan sekaligus dosen wali penulis.

5. Seluruh Bapak/Ibu Dosen Pengajar Departemen Teknik Elektro, Fakultas Teknik Universitas Sumatera Utara yang telah mengajar dan mendidik penulis selama masa perkuliahan.

6. Seluruh staff karyawan Departemen Teknik Elektro, Fakultas Teknik Universitas Sumatera utara.

7. Teman-teman seperjuangan penulis Leo, Elda, Ratih, Yetty, Mutiara, Wilfrid, Erik, Rinaldi, Adi, Bg Doli, Bg Ronald, Bg Jackson, Bg Fery, yang telah memberikan masukan dan semangat kepada penulis.

Penulis menyadari bahwa Tugas Akhir ini belum sempurna, karena masih banyak kekurangan. Oleh karena itu, saran dan kritik yang bersifat membangun sangat diharapkan. Akhirnya penulis berharap Tugas Akhir ini dapat bermanfaat bagi yang membacanya.

Medan, Maret 2015 Hormat Penulis

(6)
(7)

BAB III PERANCANGAN SISTEM ... 26

3.1 Spesifikasi Sistem yang dirancang... 26

3.2 Rangkaian Alat Pengisi Baterai Lead Acid ... 27

3.3 Rangkaian Catu Daya Mikrokontroler... 33

3.4 Rangkaian Penggerak Relay... 34

3.5 Rangkaian Mikrokontroler ATMega 8535 ... 36

3.6 Rangkaian Pembagi Tegangan ... 38

3.8 Hubungan Tombol ke Mikrokontroler ... 39

3.9 Hubungan LCD ke Mikrokontroler ... 40

3.10 Flowchart Program ... 42

BAB IV PENGUJIAN SISTEM ... 46

4.1 Pengujian Rangkaian ... 46

4.1.1 Pengujian Rangkaian Catu Daya ... 46

4.1.2 Pengujian Rangkaian Relay... 47

4.1.3 Pengujian Rangkaian Mikrokontroler ATMega 8535, LCD dan Tombol ... 47

4.1.4 Pengujian Rangkaian Pembagi Tegangan ... 49

4.2 Pengujian Secara Keseluruhan ... 51

BAB V KESIMPULAN DAN SARAN ... 53

5.1 Kesimpulan ... 53

5.2 Saran ... 53

DAFTAR PUSTAKA ... 54

(8)

DAFTAR GAMBAR

Gambar 2.1 Blok Diagram Fungsional ATMega 8535 ... 17

Gambar 2.2 Konfigurasi pin ATMega 8535 ... 20

Gambar 2.3 Skema Sistem Minimum ATMega 8535... 20

Gambar 2.4 LCD 16x2 ... 22

Gambar 2.5 Relay ... 23

Gambar 3.1 Blok Diagram Sistem Pengisian Secara Keseluruhan ... 26

Gambar 3.2 Baterai Lead Acid 12V 4Ah... 28

Gambar 3.3 Rangkaian penyearah Gelombang penuh ... 28

Gambar 3.4 Bentuk Gelombang dengan Filter Kapasitor... 29

Gambar 3.5 Rangkaian regulator tegangan LM317 ... 29

Gambar 3.6 Jumlah tegangan yang diperlukan pada setiap komponen ... 31

Gambar 3.7 Rangkaian alat pengisi baterai lead acid ... 33

Gambar 3.8 Rangkaian Catu Daya Mikrokontroler ... 34

Gambar 3.9 Rangkaian Penggerak Relay ... 34

Gambar 3.10 Rangkaian Penggerak relay Keseluruhan ... 36

dan Gambar 3.11 Rangkaian minimum Mikrokontroler ATMega 8535 ... 37

Hubungan I/O PORT... 37

Gambar 3.12 Rangkaian Pembagi Tegangan ... 38

Gambar 3.13 Hubungan Tombol ke Mikrokontroler ... 40

Gambar 3.14 Hubungan LCD ke Mikrokontroler ... 41

Gambar 3.15 Diagram alir sistem secara keseluruhan ... 42

Gambar 4.1 Pengujian Rangkaian Catu Daya ... 46

Gambar 4.2 Tampilan pengujian Mikrokontroler, LCD dan Tombol... 49

Gambar 4.3 Rangkaian Pembagi Tegangan... 50

Gambar 4.4 Pengujian saat Pengisian Baterai ... 51

(9)

DAFTAR TABEL

Tabel 3.1 Konsumsi arus dari komponen yang dicatu ... 31

Tabel 3.2 Fungsi PORT/Bandar yang digunakan ... 37

Tabel 4.1 Data Pengujian Rangkaian Catu Daya ... 47

Tabel 4.2 Hasil Pengujian Pembagi Tegangan ... 50

(10)

ABSTRAK

Tulisan ini membahas tentang perancangan sebuah alat pengisi baterai lead acid. Pengendali utama pada alat ini menggunakan mikrokontroler ATMega 8535. Alat ini bekerja untuk memantau keadaan tegangan baterai pada saat kosong dan saat penuh. Ketika tegangan baterai berada pada tegangan minimum maka akan dilakukan proses pengisian dan ketika tegangan baterai berada pada tegangan maksimum maka akan menghentikan proses pengisian. Setiap tegangan baterai yang tebaca ditampilkan pada LCD.

(11)

PENDAHULUAN

1.1Latar Belakang Penulisan

Baterai pada saat ini sudah menjadi bagian yang sangat penting dalam kehidupan sehari-hari. Penggunaan baterai juga sangat mudah ditemui, mulai dari kebutuhan industry, rumah tangga dan bahkan juga di kendaraan bermotor. Baterai berdasarkan sifatnya terdiri dari dua jenis yaitu baterai primer dan baterai sekunder. Baterai primer merupakan baterai yang habis dalam sekali pakai, sedangkan baterai sekunder merupakan baterai yang dapat diisi ulang karena reaksi kimia yang dimilikinya dapat dibalik.

Salah satu jenis baterai sekunder adalah Baterai Lead Acid. Baterai ini sangat mudah dijumpai karena baterai ini memiliki performa yang baik dan banyak digunakan pada kendaraan, selain itu material untuk membuat baterai lead acid ini cukup murah.

Baterai lead acid ini memerlukan suatu alat pengisi baterai untuk mengisi ulang apabila baterai sudah lemah. Proses pengisiannya dilakukan dengan cara mengaliri baterai dengan arus listrik secara terus menerus. Pengisian akan berhenti ketika tegangan baterai telah sampai pada tegangan maksimum. Apabila pada saat tegangan baterai penuh tetap dilakukan pengisian maka akan menyebabkan pemanasan yang berlebihan pada baterai dan akan memperpendek umur baterai dan juga pemborosan listrik.

(12)

penuh maka proses pengisian akan berhenti dan akan mengisi kembali apabila tegangan baterai sudah hampir habis.

1.2 Rumusan Masalah

Dari latar belakang diatas maka dapat diambil rumusan masalah pada Tugas Akhir ini adalah bagaimana merancang alat pengisi baterai lead acid yang dapat membaca kondisi tegangan baterai saat penuh dan saat kosong. sehingga dapat secara otomatis memutus dan mengisi kembali baterai sesuai dengan kondisi tegangan baterai.

1.3 Batasan Masalah

Batasan masalah pada Tugas akhir ini adalah :

1. Alat ini bekerja dengan membaca tegangan baterai.

2. Baterai yang digunakan disini adalah Baterai jenis lead acid yang mempunyai tegangan 12 volt 4Ah.

3. Mikrokontroler yang digunakan adalah Mikrokontroler ATMega8535

1.4 Tujuan Penulisan

Tujuan Tugas Akhir ini adalah :

1. Merancang suatu alat pengisi baterai lead acid yang dapat memutus dan mengisi kembali sesuai dengan kondisi tegangan baterai.

(13)

1.5 Metodologi Penulisan

Metodologi penulisan pada Tugas Akhir ini dilakukan dalam beberapa tahapan yakni :

1. Tahap Perancangan Perangkat Keras

Pada tahap ini dilakukan perancangan perangkat keras yaitu meliputi : perancangan rangkaian power supply, rangkaian pengisi baterai, rangkaian sistem minimum mikrokontroler, rangkaian sensor dll.

2. Tahap Perancangan Perangkat Lunak

Pada tahap ini dilakukan perancangan perangkat lunak yang akan ditanamkan pada mikrokontroler dan menggunakan bahasa c sebagai media pemasukan data. Aplikasi yang digunakan sebagai compiler adalah CodeVisionAVR.

3. Tahap pengujian

Pengujian alat dari sistem yang dirancang ini dibutuhkan untuk memeriksa kinerja dari sistem yang dirancang.

1.6 Sistematika Penulisan

Untuk memudahkan pemahaman terhadap tugas akhir ini maka penulis menyusun sistematika penulisan sebagai berikut :

BAB I : PENDAHULUAN

(14)

belakang penulisan, rumusan masalah, batasan masalah, tujuan penulisan, metodologi penulisan, dan sistematika penulisan.

BAB II : DASAR TEORI

Bab ini berisi pembahasan sekilas tentang Baterai, Alat Pengisi Baterai, Mikrokontroler, LCD (Liquid Crystal Display), CodeVisionAVR yang digunakan dalam Tugas Akhir ini.

BAB III : PERANCANGAN SISTEM

Bab ini berisi pembahasan tentang perancangan alat pengisi baterai, perancangan program menggunakan Bahasa C dan cara kerja alat.

BAB IV : PENGUJIAN SISTEM

Bab ini membahas tentang pengujian-pengujian sistem keseluruhan perangkat yang telah dirancang.

BAB V : KESIMPULAN DAN SARAN

(15)

DASAR TEORI

2.1 Baterai

Baterai atau akumulator adalah sebuah sel listrik di mana di dalamnya berlangsung proses elektrokimia yang reversible (dapat berbalikan) dengan efisiensinya yang tinggi. Yang dimaksud dengan proses elektrokimia reversibel, adalah di dalam baterai dapat berlangsung proses pengubahan energi kimia menjadi energi listrik (proses pengosongan), dan sebaliknya dari energi listrik menjadi energi kimia, pengisian kembali dengan cara regenerasi dari elektroda-elektroda yang dipakai, yaitu dengan melewatkan arus listrik dalam arah (polaritas) yang berlawanan di dalam sel.

Jenis sel baterai ini disebut juga Storage Battery, adalah suatu baterai yang dapat digunakan berulang kali pada keadaan sumber listrik arus bolak – balik (AC).

2.1.1 Jenis – Jenis Baterai

Jenis-jenis baterai dibedakan berdasarkan bahan elektrolit yang digunakan pada baterai tersebut. Bahan elektrolit yang banyak digunakan pada baterai adalah jenis asam (Lead acid) dan basa (alkali). Untuk itu dibawah ini akan dibahas beberapa jenis baterai :

1. Baterai Asam (Lead Acid Storage Battery)

(16)

dari pelat-pelat timah peroksida PbO2 (Lead Peroxide) sebagai anoda (kutub positif) dan timah murni Pb (Lead Sponge) sebagai katoda (kutub negatif). Ciri-ciri umum (tergantung pabrik pembuat) sebagai berikut.

- Tegangan nominal per sel 2 volt.

- Ukuran baterai per sel lebih besar bila dibandingkan dengan baterai alkali.

- Nilai berat jenis elektrolit sebanding dengan kapasitas baterai. - Suhu elektrolit sangat mempengaruhi terhadap nilai berat jenis

elektrolit, semakin tinggi suhu elektrolit semakin rendah berat jenisnya dan sebaliknya.

- Nilai standar berat jenis elektrolit tergantung dari pabrik pembuatnya.

- Umur baterai tergantung pada operasi dan pemeliharaan, biasanya dapat mencapai 10-15 tahun, dengan syarat suhu baterai tidak lebih dari 200 C.

- Tegangan pengisian per sel harus sesuai dengan petunjuk operasi dan pemeliharaan dari pabrik pembuat. sebagai contoh adalah :

 Pengisian awal (Initial Charge) : 2,7 Volt

 Pengisian secara Floating : 2,18 Volt  Pengisian secara Equalizing : 2,25 Volt

 Pengisian secara Boosting : 2,37 Volt.

(17)

2. Baterai Alkali (Alkaline Storage Battery)

Baterai alkali bahan elektrolitnya adalah larutan alkali (Potassium Hydroxide) yang terdiri dari :

- Nickel-Iron Alkaline Battery (Ni-Fe battery) - Nickel-Cadmium Alkaline Battery (Ni-Cd battery)

Pada umumnya yang banyak dipergunakan di instansi unit pembangkit adalah baterai alkali-cadmium (Ni-Cd). Ciri-ciri umum (tergantung pabrik pembuat) sebagai berikut.

- Tegangan nominal per sel 1,2 volt

- Nilai berat jenis elektrolit tidak sebanding dengan kapasitas baterai.

- Umur baterai tergantung pada operasi dan pemeliharaan, biasanya dapat mencapai 15-20 tahun, dengan syarat suhu baterai tidak lebih dari 200 C.

- Tegangan pengisian per sel harus sesuai dengan petunjuk operasi dan pemeliharaan dari pabrik pembuat. Sebagai contoh adalah :

 Pengisian awal (initial charge) = 1,6-1,9 Volt

 Pengisian secara Floating = 1,40-1,42 volt  Pengisian secara Equalizing = 1,45 Volt

 Pengisian secara Boosting = 1,50-1,65 Volt

(18)

3. Baterai Ni-Cd (Nickel-Cadmium)

Baterai Ni-Cd (Nickel-Cadmium) adalah jenis baterai yang menggunakan Nickel Oxide Hydroxide dan Metallic Cadmium sebagai bahan Elektrolitnya. Baterai Ni-Cd memiliki kemampuan beroperasi dalam jangkauan suhu yang luas dan siklus daya tahan yang lama. Di satu sisi, Baterai Ni-Cd akan melakukan discharge sendiri (self discharge) sekitar 30% per bulan saat tidak digunakan. Baterai Ni-Cd juga mengandung 15% Toksin/racun yaitu bahan Carcinogenic

Cadmium yang dapat membahayakan kesehatan manusia dan

lingkungan hidup.

4. Baterai Ni-MH (Nickel-Metal Hydride)

(19)

5. Baterai Li-Ion (Lithium-Ion)

Baterai jenis Li-Ion (Lithium-Ion) merupakan jenis baterai yang paling banyak digunakan pada peralatan Elektronika portabel seperti Digital Kamera, Handphone, Video Kamera ataupun Laptop. Baterai Li-Ion memiliki daya tahan siklus yang tinggi dan juga lebih ringan sekitar 30% serta menyediakan kapasitas yang lebih tinggi sekitar 30% jika dibandingkan dengan Baterai Ni-MH. Rasio Self-discharge adalah sekitar 20% per bulan. Baterai Li-Ion lebih ramah lingkungan karena tidak mengandung zat berbahaya Cadmium. Sama seperti Baterai Ni-MH (Nickel- Metal Hydride), Meskipun tidak memiliki zat berbahaya Cadmium, Baterai Li-Ion tetap mengandung sedikit zat berbahaya yang dapat merusak kesehatan manusia dan lingkungan hidup, sehingga perlu dilakukan daur ulang (recycle) dan tidak boleh dibuang di sembarang tempat.

2.1.2 Prinsip Kerja Baterai

Ada dua prinsip kerja baterai yaitu : - Proses Discharging (Pengosongan)

(20)

- Proses Charging (Pengisian)

Bila sel dihubungkan dengan power supply maka elektroda positif menjadi anoda dan elektroda negatif menjadi katoda dan proses kimia yang terjadi adalah sebagai berikut :

- Aliran elektron menjadi terbalik, mengalir dari anoda melalui power supply ke katoda.

- Ion-ion negatif mengalir dari katoda ke anoda Ion-ion positif mengalir dari anoda ke katoda.

2.1.3 Prinsip Kerja Baterai Asam

Bila sel baterai tidak dibebani, maka setiap molekul cairan elektrolit Asam Sulfat (H2SO4) dalam sel tersebut pecah menjadi dua yaitu ion hydrogen yang bermuatan positif (2H+) dan ion sulfat yang bermuatan negatif (SO4)

H2SO4 2H+ + SO4-  Proses Pengosongan

(21)

 Proses Pengisian

Proses ini adalah kebalikan dari proses pengosongan di mana arus listrik dialirkan yang arahnya berlawanan dengan arus yang terjadi pada saat pengosongan. Pada proses ini setiap molekul air terurai dan tiap pasang ion hydrogen (2H+) yang dekat pelat negatif bersatu dengan ion negatif sulfat (SO4-) pada pelat negatif untuk membentuk asam sulfat. Sedangkan ion oksigen yang bebas bersatu dengan tiap atom Pb pada pelat positif membentuk timah peroxide (PbO2).

2.2 Alat Pengisi Baterai

Alat pengisi baterai atau charger adalah suatu rangkaian peralatan listrik yang digunakan untuk mengubah arus listrik bolak-balik (Alternating Current) menjadi arus listrik searah (Direct Current), yang berfungsi untuk pasokan DC power baik ke peralatan-peralatan yang menggunakan sumber DC maupun untuk mengisi baterai agar kapasitasnya tetap terjaga penuh.

2.2.1 Prinsip Kerja Alat Pengisi Baterai

(22)

2.2.2 Bagian-Bagian Alat Pengisi Baterai

Alat pengisi baterai yang digunakan terdiri dari beberapa peralatan antara lain adalah :

1. Trafo utama

Trafo utama yang terpasang di rectifier merupakan trafo Step-Down (penurun tegangan) dari AC 220Volt menjadi AC 12 Volt. Besarnya kapasitas trafo tergantung dari kapasitas baterai dan beban yang terpasang pada baterai yaitu paling tidak kapasitas arus output trafo harus lebih besar 20 % dari arus pengisian baterai. Trafo yang digunakan ada yang 1 fasa ada juga yang 3 fasa.

2. Penyearah (dioda)

Dioda merupakan suatu bahan semikonduktor yang berfungsi merubah arus bolak-balik menjadi arus searah. Mempunyai 2 terminal yaitu terminal positif (anoda) dan terminal negatif (katoda).

3. Thyristor

Suatu bahan semikonduktor seperti dioda yang dilengkapi dengan satu terminal kontrol, Thyristor berfungsi untuk merubah arus bolak-balik menjadi arus searah.

Thyristor mempunyai 3 terminal yaitu : - Terminal positif (anoda)

- Terminal negatif (katoda) - Terminal kontrol (gate).

(23)

gate, sehingga arus mengalir sebanding dengan besarnya tegangan trigger positif yang masuk pada terminal gate tersebut. Tegangan keluaran penyearah thyristor bervariasi tergantung pada sudut penyalaan dari thyristor.

2.2.3 Metode Pengisian

Ada beberapa metode pengisian baterai antara lain adalah : -Tegangan Konstan (Constant Voltage)

Pada dasarnya adalah berupa DC power supply biasa. Terdiri dari transformator step down dengan rangkaian penyearah untuk memberikan tegangan DC yang digunakan untuk mengisi baterai.

-Arus Konstan (Constant Current)

Metode ini memvariasikan nilai tegangan sehingga didapatkan besarnya arus yang konstan.

-Taper Constant

Metode taper constant mengisi daya baterai dari sumber tegangan konstan. Arus akan berkurang seiring dengan terbentuknya ggl (gaya gerak listrik) pada tegangan sel.

-Pulsed Charged

(24)

tidak diinginkan seperti timbulnya gelombang gas, timbulnya kristal dan passivasi.

-Burp Charging

Metode ini merupakan kebalikan dari metode pulse charged, pengisian terjadi dengan menggunakan pulsa negatif pada baterai.

-Trickle Charge

Metode ini dirancang untuk mengimbangi debit daripada baterai. Tingkat pengisian disesuaikan dengan frekuensi debit baterai yang akan diisi.

2.3 Mikrokontroler Secara Umum

Mikrokontroler adalah sebuah chip yang didalamnya terdapat mikroprosesor yang sudah dilengkapi dengan I/O dan memori. Mikrokontroler terdiri dari sejumlah komponen, antara lain : Prosesor, ROM, RAM, Timer/Counter, Bandar I/O dan peralatan pendukung lainnya.

1. Prosesor

(25)

2. ROM

ROM digunakan untuk menyimpan data yang bersifat permanen. Dalam mikrokontroler, program disimpan dalam ROM, atau EPROM, atau Flash ROM. Ada mikrokontroler yang dapat ditambah ROM eksternal di luar serpih mikrokontroler. Dalam beberapa mikrokontroler, di samping ROM untuk program, juga digunakan EEPROM untuk menyimpan data.

3. RAM

RAM digunakan untuk menyimpan data yang bersifat sementara. Dalam kebanyakan mikrokontroler, RAM yang tersedia sangat sedikit yang sebagiannya digunakan lagi sebagai register prosesor, dikatakan register dipetakan sebagai memori.

4. Timer

Timer (pewaktu) adalah counter (pencacah) yang digunakan untuk membangkitkan pulsa atau deretan pulsa pada saat-saat tertentu atau dengan frekuensi tertentu. Pulsa ini digunakan sebagai interupsi internal untuk memulai atau mengakhiri kegiatan tertentu. Dalam kebanyakan mikrokontroler, pencacah ini adalah pencacah naik, berbeda dengan pencacah turun yang diterapkan dalam sistem mikroprosesor.

5. Bandar I/O

(26)

masukan atau keluaran pada umumnya dipilih melalui register arah (Data Direction Register, disingkat DDR). Bandar-bandar ini juga dipetakan sebagai memori.

6. Interupsi

Interupsi dapat dibedakan atas interupsi perangkat lunak yang dibangkitkan oleh instruksi interupsi yang ditanamkan dalam program dan interupsi perangkat keras yang dibangkitkan oleh sinyal perangkat keras baik yang berasal dari sumber internal seperti timer atau sumber eksternal dari Bandar seri atau paralel.

7. Bus

Bus adalah saluran yang melakukan (membawa) sinyal-sinyal perangkat keras. Bus dibedakan atas bus data, alamat dan kontrol. Bus data melakukan data antara register dan memori atau I/O, bus ini bersifat dua arah (bidirectional). Bus alamat menunjuk nomor alamat memori dari/ke mana data disimpan, bus ini bersifat satu arah (unidirectional). Bus kontrol melakukan sinyal-sinyal yang mengendalikan kegiatan sistem termasuk didalamnya sinyal-sinyal pewaktuan dan interupsi.

(27)

2.3.1 Mikrokontroler ATMega 8535

Mikrokontroler AVR (Alf and Vegard’s Risc processors) memiliki

arsitektur 8 bit, dimana semua instruksi dikemas dalam kode 16 bit (16-bits word) dan sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock. Mikrokontroler AVR berteknologi RISC (Reduced Instruction Set Computing). Secara umum, AVR dikelompokkan menjadi 4 kelas yaitu, keluarga ATtiny, AT90Sxx, ATMega dan AT86RFxx.

2.3.1.1 Arsitektur Mikrokontroler 8535

Mikrokontroler AVR ATMega 8535 memiliki arsitektur seperti terlihat pada Gambar 2.1.

Gambar 2.1 Blok Diagram Fungsional ATMega 8535

(28)

- Saluran I/O sebanyak 32 buah, yaitu Port A, Port B, Port C dan Port D. - ADC 10 bit sebanyak 8 saluran.

- Tiga buah Timer/Counter dengan kemampuan perbandingan. - CPU yang terdiri atas 32 register.

- Watchdog Timer dengan osilator internal. - SRAM sebesar 512 byte.

- Memori flash sebesar 8 KB dengan kemampuan Read While Write. - Unit interupsi internal dan eksternal.

- Port antarmuka SPI.

- EEPROM sebesar 512 byte yang dapat diprogram saat operasi. - Antarmuka komparator anolog.

- Port USART untuk komunikasi serial.

2.3.1.2 Fitur ATMega 8535

Mikrokontroler AVR ATMega 8535 memiliki fitur sebagai berikut : - Sistem mikroprossesor 8 bit berbasis RISC dengan kecepatan

maksimal 16 MHz.

- Kapabilitas memori flash 8 KB, SRAM sebesar 512 byte dan EEPROM sebesar 512 byte.

- ADC internal dengan fidelitas 10 bit sebanyak 8 saluran.

- Portal komunikasi serial (USART) dengan kecepatan maksimal 2,5 Mbps.

(29)

2.3.1.3 Konfigurasi Pin ATMega 8535

Konfigurasi pin dari mikrokontroler ATMega 8535 sebanyak 40 pin dapat dilihat pada Gambar 2.2. Dari gambar tersebut dapat dijelaskan secara funsional konfigurasi pin ATMega 8535 sebagai berikut :

- VCC merupakan pin yang berfungsi sebagai pin masukan catu daya. - GND merupakan pin ground.

- Port A (PA0..PA7) merupakan pin I/O dua arah dan pin masukan ADC.

- Port B (PB0..PB7) merupakan pin I/O duah arah dan pin fungsi khusus, yaitu Timer/Counter, komparator dan SPI.

- Port C (PC0..PC7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu komparator analog, interupsi eksternal dan komunikasi serial. - Port D (PD0..PD7) merupakan pin I/O dua arah dan pin fungsi khusus,

yaitu komparator analog, interupsi eksternal dan komunikasi serial. - RESET merupakan pin yang digunakan untuk me-reset mikrokontroler. - XTAL1 dan XTAL2 merupakan pin masukan clock eksternal.

(30)

Gambar 2.2 Konfigurasi pin ATMega 8535

2.3.1.4 Sistem Minimum ATMega 8535

Disebut sistem minimum karena pemakaian komponen hardware yang digunakan merupakan kebutuhan yang paling minimal agar sebuah prosesor dapat bekerja. Pada ATMega 8535 sudah mencakup prosesor, RAM, ROM, dan I/O, sehingga cukup dengan menambahkan osilator (sumber clock) dan catu daya saja akan bisa membuat sistem bekerja. Skema Sistem Minimum ATMega 8535 seperti ditunjukan pada Gambar 2.3.

(31)

2.3.2 Bahasa Pemrograman Mikrokontroler

Bahasa Pemrograman adalah instruksi standar untuk memerintah komputer. Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan semantic yang dipakai untuk mendefenisikan program komputer.

Menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman terdiri dari :

1. Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110. Terkadang untuk memudahkan penulisan, bahasa biner ini dituliskan dalam bilangan heksadesimal, seperti : 2A, F5 dan BC. File yang dihasilkan dari penulisan bahasa mesin berekstensi *.hex.

2. Bahasa tingkat rendah, atau dikenal dengan istilah bahasa rakitan(Assembly), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kode mnemonic), contohnya MOV, SUB, CJNE, JMP,LOOP,dsb. File yang dihasilkan dari penulisan bahasa ini berekstensi *.asm.

3. Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<,>>,&&,||, dsb.

(32)

Sebagian besar bahasa pemrograman digolongkan sebagai bahasa tingkat tinggi, hanya bahasa C yang digolongkan sebagai bahasa tingkat menengah dan Assembly yang merupakan bahasa tingkat rendah.

Mikrokontroler juga harus memerlukan suatu program agar dapat bekerja sesuai dengan yang diinginkan. Bahasa pemrograman untuk mikrokontroler dapat ditulis dengan berbagai bahasa, namun harus di kompilasi agar mendapatkan hasil file eksekusi dengan ekstensi *.hex. File *.hex kemudian di download ke memori program pada mikrokontroler menggunakan suatu

downloader.

2.4 LCD (Liquid Crystal Display)

LCD 16x2 adalah Liquid Crystal Display dot matrix yang mampu menampilkan 16x2 karakter atau 16 kolom dan 2 baris. Alat ini membutuhkan daya yang kecil dan dilengkapi panel LCD dengan tingkat kontras yang cukup tinggi serta kontroler LCD CMOS yang telah terpasang dalam modul tersebut. Kontroler ini memiliki ROM/RAM dan display data RAM. Semua fungsi display dikontrol dengan instruksi khusus. Modul LCD ini juga dapat dengan mudah dihubungkan dengan unit mikrokontroler. Secara fisik, LCD 16x2 dapat dilihat dari Gambar 2.4 berikut :

(33)

2.5 Relay

Relay adalah suatu peralatan elektronik yang berfungsi untuk memutuskan atau untuk menghubungkan suatu rangkaian elektronik yang satu dengan rangkaian yang lainnya. Pada dasarnya relay adalah saklar elektro magnectic yang akan bekerja apabila arus mengalir melalui kumparan, inti besi akan menjadi magnet dan akan menarik kontak-kontak relay. Kontak-kontak dapat ditarik apabila garis magnet yang ditetapkan oleh medan yang ada pada celah udara pada jangkar dan inti magnet, dan banyaknya lilitan kumparan, kuat arus yang mengalir atau yang disebut dengan imperal lilitan dan pelawan magnet yang berada pada sirkuit pemagnetan. Untuk memperkuat medan magnet di bentuk suatu sirkuit.

Kontak-kontak atau kutub dari relay umumnya memiliki tiga dasar pemakaian yaitu :

1. Bila kumparan di aliri arus listrik maka kontaknya akan menutup dan disebut sebagai kontak Normally Open (NO).

2. Bila kumparan di aliri arus listrik maka kontaknya akan membuka dan disebut dengan Normally Close (NC).

3. Tukar sambung (Change Over/NO), relay jenis ini mempunyai kontak tengah yang normalnya tertutup tetapi melepaskan diri dari posisi dan membuat kontak dengan yang lain bila relay di aliri arus listrik.

Bentuk relay dapat dilihat pada Gambar 2.5. :

(34)

2.6 Code Vision AVR

CodeVisionAVR merupakan salah satu software compiler yang khusus digunakan untuk mikrokontroler keluarga AVR. CodeVisionAVR merupakan yang terbaik bila dibandingkan dengan compiler yang lain karena beberapa kelebihan yang dimiliki oleh CodeVisionAVR antara lain : - Menggunakan IDE (Integrated Development Environment).

- Fasilitas yang disediakan lengkap (mengedit program, meng-compile program, men-download program) serta tampilannya terlihat menarik dan mudah dimengerti. Kita dapat mengatur settingan editor sedemikian rupa sehingga memudahkan kita dalam penulisan program.

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

- Memiliki fasilitas untuk men-download program langsung dari CodeVisionAVR dengan menggunakan hardware khusus seperti Atmel STK500, Kanda System STK200/300 dan beberapa hardware lain yang telah didefenisikan oleh CodeVisionAVR.

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

(35)
(36)

MIKROKONTROLER

LCD

RELAY CHARGER

BATTERY

SENSOR TEGANGAN (PEMBAGI TEGANGAN)

TOMBOL SETTING

CATU DAYA

PERANCANGAN SISTEM

3.1

Spesifikasi Sistem yang dirancang

Spesifikasi dalam perancangan alat pengisi baterai Lead Acid ini adalah : - Sumber Tegangan 220 VAC/50Hz

- Tegangan Output adalah 13,8 V - Arus pengisian adalah 0,4 A.

- Sebagai pengendali otomatis digunakan Mikrokontroler ATMega 8535.

Dari spesifikasi diatas maka dibuat Blok Diagram untuk memudahkan dalam pembacaan cara kerja sistem secara keseluruhan. Blok diagram sistem yang dibuat dapat dilihat pada Gambar 3.1.

(37)

Berdasarkan blok diagram diatas, fungsi dari masing-masing blok dapat dijelaskan sebagai berikut :

1. Catu Daya berfungsi untuk mensupply tegangan dan arus ke seluruh rangkaian.

2. Charger berfungsi untuk mengisi baterai.

3. Relay berfungsi untuk memutus dan mengalirkan arus listrik ke baterai. 4. Sensor Tegangan berfungsi untuk membaca tegangan baterai.

5. LCD berfungsi untuk menampilkan nilai tegangan.

6. Tombol Setting berfungsi untuk mengatur tegangan yang kita inginkan pada saat pengisian.

7. Mikrokontroler berfungsi sebagai pengendali seluruh rangkaian.

3.2 Rangkaian Alat Pengisi Baterai Lead Acid

Charger adalah suatu peralatan listrik yang digunakan untuk mengubah arus listrik bolak-balik (AC) menjadi arus listrik searah (DC), yang berfungsi untuk mengisi baterai agar kapasitasnya tetap terjaga penuh sehingga kehandalan baterai tetap terjamin.

(38)

Gambar 3.2 Baterai Lead Acid 12V 4Ah

Pada perancangan ini tegangan baterai yang diinginkan pada saat penuh adalah 13,8 Volt dan pada saat tegangan rendah adalah sebesar 12,1 Volt, dengan arus pengisian normal sebesar 400mA atau 0,4 A. Sebagai sumber tegangan pada perancangan ini diperlukan catu daya. Catu daya merupakan rangkaian elektronik yang mengubah arus listrik bolak-balik menjadi arus searah. Secara prinsip rangkaian catu daya ini berfungsi untuk menurunkan tegangan AC, menyearahkan tegangan AC sehingga menjadi DC, dan menstabilkan tegangan DC. Pada catu daya ini digunakan transformator step down CT yang berfungsi untuk menurunkan tegangan, yang kemudian akan disearahkan dengan dioda penyearah. Rangkaian penyearah yang digunakan disini adalah rangkaian penyearah gelombang penuh. Pada rangkaian ini, tegangan positif phasa yang pertama diteruskan oleh D1 sedangkan phasa yang berikutnya dilewatkan melalui D2 ke beban dengan CT Transformator sebagai common ground. Dengan demikian beban mendapat suplai tegangan gelombang penuh, seperti terlihat pada Gambar 3.3.

(39)

Pada Gambar 3.3 tegangan ripple (riak)disini masih sangat besar karena itu perlu digunakan sebuah kapasitor yang berfungsi untuk menyaring tegangan ripple agar tegangan keluaran menjadi rata. Semakin besar nilai kapasitor yang dipakai maka tegangan ripple akan semakin kecil. Dengan adanya kapasitor ini bentuk gelombang tegangan keluarannya menjadi rata, seperti terlihat pada Gambar 3.4.

Gambar 3.4 Bentuk Gelombang dengan Filter Kapasitor

Tegangan DC yang sudah disearahkan masih perlu untuk distabilkan dan pada rangkaian catu daya ini diperlukan suatu regulator tegangan. Regulator tegangan yang digunakan pada rancangan ini adalah IC LM317 dimana IC ini dapat memberikan tegangan output dari 1,25 V sampai dengan 37V dengan arus maksimal yang mampu dialirkan 1,5 A.

Gambar 3.5 Rangkaian regulator tegangan LM317

Untuk menghasilkan tegangan output sebesar 13,8V dari IC LM317 digunakan

(40)

�out = , � +�

� + IAdj*R2)

Nilai dari R2 dan R1 dipilih sesuai dengan datasheet, R2 sebesar 2400 ohm dan untuk R1 sebesar 240 ohm, sehingga tegangan output dari LM317 dapat dihitung dengan menggunakan rumus sesuai dengan datasheet LM317, yaitu :

�out = , � +�

� + IAdj*R2)

�out = , � + Ω

Ω + �� ∗ Ω

�out = , � + . �

�out = , �

Dari hasil diatas maka tegangan keluaran yang diinginkan akan tetap sebesar 13,8Volt. Pada alat pengisi baterai ini pengisian dilakukan dengan arus pengisian sebesar 0,4 A. Untuk mengatur arus pengisian maka pada rancangan ini digunakan IC LM317 sebagai pembatas arus yang dapat menghasilkan arus pengisian sebesar 0,4 A.

� =

��

Dari rumus diatas untuk mengatur arus pengisian sebesar 400mA atau 0,4 A maka kita harus menentukan nilai hambatan (R),dimana nilai I = 0,4A, Vref = 1,2 V maka dapat dicari nilai R1 dengan rumus :

� =��

� = , �

,

(41)

maka besar arus pengisian akan dibatasi sebesar 0,4A. Pada rancangan ini pemilihan nilai tegangan trafo ditentukan dengan mengetahui tegangan puncak dan arus yang dikonsumsi pada komponen yang dicatu. Ada beberapa komponen yang harus dicatu antara lain Rangkaian charger, mikrokontroler ATMega8535, Sensor, dan LCD. Konsumsi arus yang dibutuhkan komponen tersebut sesuai dengan datasheet dapat dilihat seperti yang tertera pada tabel 3.1:

Tabel 3.1 Konsumsi arus dari komponen yang dicatu

No Komponen yang dicatu Konsumsi Arus

1 Rangkaian Charger 400mA 2 Rangkaian Driver 30mA

3 Rangkaian sistem minimum 50mA

4 Rangkaian Sensor 13mA 5 Rangkaian LCD 3mA

Total 496mA

Dari tabel 3.1 diperoleh arus total yang dikonsumsi untuk rangkaian seluruhnya adalah sebesar 496mA, maka dapat ditentukan tegangan trafo dengan terlebih dahulu menghitung tegangan VDC, tegangan ripple Vrip, dan tegangan puncak VP. Untuk menentukan tegangan DC jumlah seluruh tegangan yang diperlukan oleh setiap komponen dijumlahkan, yaitu dengan menjumlahkan nilai tegangan yang ada di titik A,B, dan C. Seperti terlihat pada Gambar 3.6. Jumlah setiap tegangan dapat dihitung dengan rumus sebagai berikut :

(42)

VC = Vout = 13,8 V

VB = VC + Vjatuh IC1 = 16,8 V + 1,2 V = 18 Volt VA = VB + VIC1 = 18 V + 3 V = 21 Volt

maka nilai VDC pada saat diberi beban adalah sebesar 21 Volt.

Untuk menentukan tegangan ripple digunakan rumus sebagai berikut dimana nilai kapasitor yang digunakan adalah 4700µF :

V

ripple = mengggunakan rumus seperti berikut :

VDC = VP - ���� VP = VDC + ���� = 21 + = 21 + 0,5 = 21,5 Volt.

Maka untuk menentukan nilai tegangan trafo digunakan rumus sebagai berikut :

Vtrafo = VP/√2 = 21,5/1,4 = 15 Volt

(43)

tegangan diperoleh, sesuai dengan perhitungan diatas maka dapat dirangkai suatu alat pengisi baterai seperti terlihat pada Gambar 3.7 :

Gambar 3.7 Rangkaian alat pengisi baterai lead acid

3.3 Rangkaian Catu Daya Mikrokontroler

(44)

dibuat sebuah rangkaian catu daya mikrokontroler dengan regulator tegangan IC LM7805, seperti terlihat pada Gambar 3.8 :

Gambar 3.8 Rangkaian Catu Daya Mikrokontroler

3.4 Rangkaian Penggerak Relay

Rangkaian penggerak (driver) ini berfungsi untuk mengaktifkan relay pada saat pengisian baterai dan memutuskan relay pada saat proses pengisian selesai atau baterai penuh. Rangkaian penggerak (driver) ini menggunakan transistor, transistor disini berfungsi untuk menguatkan arus basis sehingga dapat menggerakkan atau menghidupkan relay, dengan kata lain transistor bekerja sebagai saklar. Relay berfungsi sebagai saklar elektronik yaitu yang menghubungkan dua titik penghantar dengan menggunakan saklar sehingga arus akan mengalir dari sumber ke beban. Pada rangkaian transistor dirangkai sebagai rangkaian common-emitor. Dengan demikian, pemberian arus pada basis transistor akan menjenuhkan (saturasi) transistor tersebut.

(45)

Pada Gambar 3.9 diperlihatkan rangkaian penggerak (driver) relay. Berikut penjabaran perhitungan arus, tegangan dan hambatan yang dibutuhkan pada perancangan rangkaian penggerak (driver) :

Diketahui nilai VCC Relay = +12 Volt, hambatan relay (Relay) = 400Ω,

Berikutnya untuk menghitung nilai IB adalah (hFE min =100)

0,3mA

dengan demikian untuk menentukan nilai RB yang harus digunakan adalah :

Ω

Dari hasil perhitungan diatas diperoleh nilai RB (13) sebesar 11KΩ. Karena nilai resistor 11 KΩ jarang ada di pasaran, maka resistor yang dipilih untuk rangkaian driver ini adalah resistor 10KΩ. Dan untuk transistor yang digunakan

(46)

diatas diperoleh nilai dan jenis komponen yang digunakan pada rangkaian Driver seperti terlihat pada Gambar 3.9.

Gambar 3.10 Rangkaian Penggerak relay Keseluruhan

3.5 Rangkaian Mikrokontroler ATMega 8535

Rangkaian sistem minimum mikrokontroler ATMega 8535 terdiri dari rangkaian sistem minimum dan rangkaian I/O. Rangkaian minimum mikrokontroler terdiri dari rangkaian clock dan rangkaian reset. Rangkaian clock pada mikrokontroler ATMega 8535 ini membutuhkan osilator Kristal dan 2 buah kapasitor non polar agar dapat berosilasi. Pada perancangan ini, besar frekuensi osilator Kristal yang digunakan adalah 12 MHz dan besar kapasitor adalah 22pF. Pemilihan frekuensi dan besar kapasitor tersebut dirancang berdasarkan datasheet mikrokontroler ATMega 8535.

Rangkaian reset pada mikrokontroler ATMega 8535 berfungsi untuk mengembalikan mikrokontroler pada program awal. Rangkaian reset ini terdiri dari resistor 10KΩ dan kapasitor nonpolar 100nF. Kombinasi komponen kapasitor

(47)

muatan pada kapasitor. Ketika catu daya dihidupkan, kapasitor akan melakukan pengisian muatan awal sehingga logika yang diterima pena reset saat itu dalam keadaan logika rendah dan mikrokontroler masuk ke dalam modus reset. Akan tetapi setelah pengisian muatan kapasitor penuh, pena reset akan berubah menjadi logika tinggi. Setelah itu, mekanisme reset dilakukan dengan mengosongkan kembali kapasitor melalui penekanan tombol reset.

Gambar 3.11 Rangkaian minimum Mikrokontroler ATMega 8535 dan Hubungan I/O PORT

Rangkaian I/O adalah semua rangkaian yang terhubung dengan mikrokontroler ATMega 8535. Bandar-bandar yang digunakan untuk mengendalikan rangkaian I/O dapat dilihat pada Tabel 3.2 :

Tabel 3.2 Fungsi PORT/Bandar yang digunakan

PORT/Bandar Bit Fungsi

A 1 Sensor Tegangan

B

1-5 Hubungan ke Tombol

6 Led Indikator

7 Relay Charger

(48)

Untuk pemograman ke mikrokontroler ATMega8535, maka diperlukan suatu programmer/downloader ISP (In System Programming). Programmer ISP mempunyai keuntungan yaitu dapat memprogram mikrokontroler yang sedang terpasang dengan rangkaian lainnya tanpa harus mencabut serpih (chip) mikrokontroler tersebut sehingga lebih praktis jika ingin melakukan pemograman secara berulang-ulang. Pemograman berbasis ISP cukup menghubungkan antara pin MOSI, MISO, SCK, RESET, VCC dan Ground dengan programmer ISP tersebut.

3.6 Rangkaian Pembagi Tegangan

Rangkaian pembagi tegangan berfungsi untuk membaca tegangan, dimana tegangan keluarannya nanti akan dikirimkan ke ADC yang kemudian mengolah data analog menjadi data digital. Komponen yang digunakan sebagai sensor tegangan adalah dua buah resistor yaitu R14=4K7 dan R15=10K, Gambar rangkaian pembagi tegangan dapat dilihat pada Gambar 3.12.

Gambar 3.12 Rangkaian Pembagi Tegangan

(49)

�out = � mikrokontroler karena tidak lebih dari 5V. Ketika sensor tegangan membaca tegangan baterai 4,4 V, maka pengisian akan dihentikan yang menandakan bahwa baterai lead acid sudah penuh. Untuk mengetahui kondisi baterai lemah (low) dapat juga diketahui dengan menggunakan sensor tegangan, diasumsikan tegangan pada saat baterai lemah adalah 12,1 V, maka dapat dihitung berapa tegangan output dari sensor tegangan, yaitu :

Vout= � mengaktifkan relay untuk melakukan pengisian baterai lead acid.

3.8 Hubungan Tombol ke Mikrokontroler

(50)

baterai. Hubungan tombol ke mikrokontroler dapat dilihat seperti pada Gambar 3.13.

Gambar 3.13 Hubungan Tombol ke Mikrokontroler

Pada Gambar 3.13 Tombol 1 dan tombol 4 dihubungkan ke PB 6 dan PB2 pada kaki mikrokontroler yang berfungsi untuk mengatur besar kecil nilai tegangan minimum, Tombol 2 dan 5 dihubungkan ke PB 5 dan PB 3 yang berfungsi untuk mengatur besar kecil nilai tegangan maksimum. Dan Tombol 3 dihubungkan ke PB 4 yang berfungsi untuk memulai proses pengisian.

3.9 Hubungan LCD ke Mikrokontroler

(51)

Gambar 3.14 Hubungan LCD ke Mikrokontroler

(52)

Start

(53)

Program dimulai dengan menampilkan tegangan maksimum dan minimum yang kemudian dilanjutkan dengan pembacaan tegangan baterai melalui ADC. Apabila tegangan minimum, maka charger akan aktif dan ketika tegangan baterai mencapai maksimum maka charger akan putus. Selanjutnya pada saat pengisian sudah berhenti maka tampilan akan kembali seperti semula.

Prinsip Kerja dan fungsi perintah-perintah pada program awal.

#define charger PORTB.7 #define indikator PORTB.6 #define setting PINB.3 #define max_naik PINB.5 #define max_turun PINB.1 #define min_naik PINB.4 #define min_turun PINB.2

Perintah program diatas merupakan perintah untuk penamaan port yaitu memberikan nama ataupun inisialisasi pada port-port yang digunakan. Tujuan penamaan adalah untuk mempermudah pemograman.

// Alphanumeric LCD Module functions #asm

.equ __lcd_port=0x15 ;PORTC #endasm

#include <lcd.h>

(54)

indikator=0; status=0;

simpan_sensor=0; simpan_nilai_V=0; while (1)

Perintah diatas merupakan inisialisasi dan tampilan pada LCD

// ADC initialization

// ADC Clock frequency: 750,000 kHz // ADC Voltage Reference: AVCC pin // ADC High Speed Mode: Off

// ADC Auto Trigger Source: Free Running ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0xA4;

SFIOR&=0x0F;

Perintah diatas merupakan inisialisasi ADC. {

if(max_turun==0){baca_ADC=0; delay_ms(1000);} }

delay_ms(500); };

Perintah diatas untuk membaca nilai tegangan dengan menggunakan ADC.

//Input/Output Ports initialization //Port A initialization

//Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

//State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

(55)

//Port B initialization

//Func7=Out Func6=Out Func5=In Func4=In Func3=In Func2=In Func1=In Func0=Out

//State7=0 State6=0 State5=P State4=P State3=P State2=P State1=P State0=0

PORTB=0x3E; DDRB=0xC1; //Port C initialization

//Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

//State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTC=0x00; DDRC=0x00;

//Port D initialization

//Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

//State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTD=0x00; DDRD=0x00;

Printah diatas merupakan inisialisasi setiap port yang dipakai.

if(nilai_V1>=V_max){charger=0; indikator=0; status=0;} if(nilai_V1<=V_min){charger=1; indikator=1; status=1;}

(56)

PENGUJIAN SISTEM

4.1 Pengujian Rangkaian

Setelah melakukan perancangan maka tahap selanjutnya adalah tahap pengujian. Pengujian dilakukan kepada rangkaian yang telah dibuat untuk mengetahui sejauh mana kinerja alat yang telah dibuat dan untuk mengetahui kekurangan dari alat yang dirancang.

4.1.1 Pengujian Rangkaian Catu Daya

Pengujian pada rangkaian catu daya bertujuan untuk mengukur besarnya tegangan yang dibutuhkan oleh setiap blok rangkaian. Pengujian ini dilakukan dengan mengukur tegangan pada titik A,B, dan C. Seperti terlihat pada Gambar 4.1.

Gambar 4.1 Pengujian Rangkaian Catu Daya

(57)

Tabel 4.1 Data Pengujian Rangkaian Catu Daya

No. Tegangan (Volt) Hasil Pengukuran

1 Pada Titik A 21 V

2 Pada Titik B 18 V

3 Pada Titik C 13,8 V

4.1.2 Pengujian Rangkaian Relay

Pengujian rangkaian relay dapat dilakukan dengan memberikan tegangan 5 volt pada basis transistor Q1 melalui resistor R13. Tegangan atau sinyal pemicu dari transistor berasal dari mikrokontroler Port PB7. Pada saat logika pada port PB7 adalah tinggi, maka transistor mendapat tegangan bias dari kaki basis, dengan adanya tegangan bias ini maka transistor akan aktif (saturasi), sehingga adanya arus yang mengalir ke kumparan relay. Hal ini akan menyebabkan saklar pada relay menjadi tertutup, sehingga rangkaian pengisi baterai akan terhubung ke baterai (terjadi proses pengisian). Begitu juga sebaliknya pada saat logika pada port PB7 adalah rendah maka relay tidak dialiri arus, hal ini akan menyebabkan saklar pada relay terbuka, sehingga hubungan antara rangkaian pengisi baterai dengan baterai akan terputus (tidak terjadi proses pengisian). Dari hasil pengujian diperoleh bahwa relay berfungsi dengan baik.

4.1.3 Pengujian Rangkaian Mikrokontroler ATMega 8535, LCD dan Tombol

Pengujian rangkaian mikrokontroler, LCD dan Tombol ini dilakukan untuk mengecek apakah data yang dimasukkan (input) dan dikeluarkan (output)

(58)

menekan tombol satu per satu secara bergantian, dimana tombol ini berfungsi untuk mengatur nilai Vmax dan Vmin dan hasil pengujian tombol akan ditampilkan pada LCD. Berikut ini merupakan potongan listing program pengujian mikrokontroler, LCD dan Tombol :

Chip type : ATmega8535

// Alphanumeric LCD Module functions #asm

(59)

{

// Place your code here while(settingan==1) {

if(max_naik==0){V_max=V_max+0.1;} if(max_turun==0){V_max=V_max-0.1;} if(min_naik==0){V_min=V_min+0.1;} if(min_turun==0){V_min=V_min-0.1;} sprintf(datalcd,"Vmax=%0.01f V",V_max); lcd_gotoxy(0,0);

lcd_puts(datalcd);

sprintf(datalcd,"Vmin=%0.01f V",V_min); lcd_gotoxy(0,1);

lcd_puts(datalcd);

lcd_gotoxy(12,0); lcd_putsf("Vbat"); lcd_gotoxy(12,1); lcd_putsf("Eror");

Dari hasil pengujian program diatas, mikrokontroler, LCD dan tombol berfungsi dengan baik, seperti yang terlihat pada Gambar 4.2 :

Gambar 4.2 Tampilan pengujian Mikrokontroler, LCD dan Tombol

4.1.4 Pengujian Rangkaian Pembagi Tegangan

(60)

ketika diperoleh tegangan baterai maksimal maka pada mikrokontroler akan terbaca 5V.

� = �+ �� � ����

Pada saat proses pengisian, kondisi baterai dapat terbaca oleh mikrokontroler, sehingga pengisian akan berhenti mengisi, saat baterai terbaca dengan nilai Vmax, dan ketika baterai terbaca sama dengan nilai Vmin maka pengisian akan dijalankan kembali.

Gambar 4.3 Rangkaian Pembagi Tegangan

Pengujian ini dilakukan dengan cara mengukur tegangan keluaran pada mikrokontroler dengan menggunakan multimeter digital pada saat terhubung dengan baterai. Hasil pengujian dari rangkaian pembagi tegangan dapat dilihat pada Tabel 4.2.

Tabel 4.2 Hasil Pengujian Pembagi Tegangan

No. Tegangan Baterai (V)

Tegangan Keluaran Pembagi Tegangan (V)

1 13,8 4,4

2 13,5 4,1

3 13,0 4,0

4 12,5 3,8

5 12,0 3,7

6 11,5 3,5

(61)

Dari hasil pengujian ini diperoleh bahwa nilai tegangan yang dihasilkan oleh pembagi tegangan dapat dibaca oleh mikrokontroler. Dengan demikian maka rangkaian pembagi tegangan berfungsi dengan baik.

4.2 Pengujian Secara Keseluruhan

Pengujian keseluruhan sistem dilakukan setelah semua rangkaian dan perangkat lunak diintegrasikan menjadi satu sistem. Pengujian ini bertujuan untuk menunjukkan bahwa perancangan sesuai dengan yang diharapkan. Pengujian ini dilakukan dengan cara mengisi baterai 12V 4Ah dengan kondisi tegangan awal yang berbeda-beda sebanyak 5 kali. Gambar dan Data hasil dari pengujian ini dapat dilihat pada Gambar 4.4 dan Tabel 4.3.

Gambar 4.4 Pengujian saat Pengisian Baterai

Tabel 4.3 Hasil Pengujian Keseluruhan

No. Besar Tegangan (V) Lama Waktu Pengisian

Vmin Vmax

1 11,0 13,8 10 Jam 0 menit

2 11,5 13,8 8 Jam 0 menit

3 12,0 13,8 5 Jam 59 menit

4 12,5 13,8 3 Jam 30 menit

(62)

Dari hasil pengujian secara keseluruhan ini diperoleh bahwa :

- Sistem dapat mengisi baterai pada saat tegangan baterai terbaca rendah dan pengisian akan berhenti ketika tegangan baterai terbaca tinggi.

(63)

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Setelah melakukan perancangan dan pengujian sistem, dapat disimpulkan beberapa hal antara lain :

1. Alat yang dirancang berfungsi sesuai dengan yang diharapkan.

2. Ketika baterai mencapai tegangan maksimum, maka proses pengisian akan berhenti, dan ketika tegangan baterai terbaca minimum maka proses pengisian berjalan.

3. Pengaturan tegangan maksimum dan minimum dapat diatur dengan mengggunakan tombol setting, untuk menghentikan pengisian dan melakukan pengisian.

5.2 Saran

(64)

DAFTAR PUSTAKA

Albert Paul Malvino, P. E. (2003). Prinsip-Prinsip Elektronika. Jakarta: Salemba Teknika. Bejo, A. (2008). C&AVR Rahasia Kemudahan Bahasa C dalam Mikrokontroler ATMega8535. Yogyakarta: GRAHA ILMU.

Wardhana, L. (2006). Belajar Sendiri Mikrokontroler AVR Seri ATMega 8535 Simulasi, Hardware dan Aplikasi. yogyakarta: ANDI OFFSET.

www.alldatasheets.com, Juli 2014 www.elecfree.com

(65)
(66)
(67)

LISTING PROGRAM

/***************************************************** This program was produced by the

CodeWizardAVR V1.25.8 Standard Automatic Program Generator

© Copyright 1998-2007 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com

// Alphanumeric LCD Module functions #asm

.equ __lcd_port=0x15 ;PORTC #endasm

#include <lcd.h> #include <delay.h> #include <stdio.h>

(68)

unsigned int read_adc(unsigned char adc_input) {

ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);

// Delay needed for the stabilization of the ADC input voltage delay_us(10);

// Start the AD conversion ADCSRA|=0x40;

// Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0);

ADCSRA|=0x10; return ADCW; }

// Declare your global variables here

int nilai_V, baca_ADC, simpan_nilai_V, i, nilai_Vmax; float nilai_V1;

void main(void) {

// Declare your local variables here // Input/Output Ports initialization // Port A initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00;

DDRA=0x00;

// Port B initialization

// Func7=Out Func6=Out Func5=In Func4=In Func3=In Func2=In Func1=In Func0=Out

// State7=0 State6=0 State5=P State4=P State3=P State2=P State1=P State0=0 PORTB=0x3E;

DDRB=0xC1;

// Port C initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00;

DDRC=0x00;

// Port D initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

(69)

DDRD=0x00;

// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh // Clock source: System Clock // Clock value: Timer 1 Stopped // Mode: Normal top=FFFFh // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off

(70)

MCUCR=0x00;

// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;

SFIOR=0x00; // ADC initialization

// ADC Clock frequency: 750,000 kHz // ADC Voltage Reference: AVCC pin // ADC High Speed Mode: Off

(71)

sprintf(datalcd,"Vmin=%0.01f V",V_min); lcd_gotoxy(0,1);

lcd_puts(datalcd);

lcd_gotoxy(12,0); lcd_putsf("Vbat"); lcd_gotoxy(12,1); lcd_putsf("Eror");

if (nilai_Vmax<=nilai_V){nilai_Vmax=nilai_V;} }

lcd_gotoxy(12,0); lcd_putsf("Vbat"); sprintf(datalcd,"%0.01f",nilai_V1);

if(nilai_V1==V_max){charger=0; indikator=0;} if(nilai_V1>V_max){charger=0; indikator=0;} if(nilai_V1==V_min){charger=1;indikator=1;} if(nilai_V1<V_min){charger=1;indikator=1;} if(setting==0){settingan=0; delay_ms(1000);} }

(72)

{

if (nilai_Vmax<=nilai_V){nilai_Vmax=nilai_V;} }

if(nilai_V1==V_max){charger=0; indikator=0;} if(nilai_V1>V_max){charger=0; indikator=0;} if(nilai_V1==V_min){charger=1;indikator=1;} if(nilai_V1<V_min){charger=1;indikator=1;} if(setting==0){settingan=1; delay_ms(1000);} if(max_turun==0){baca_ADC=1; delay_ms(1000);} while(baca_ADC==1)

if(max_turun==0){baca_ADC=0; delay_ms(1000);} }

delay_ms(500); };

Gambar

Gambar 2.1 Blok Diagram Fungsional ATMega 8535
Gambar 2.3 Skema Sistem Minimum ATMega 8535
Gambar 2.4 LCD 16x2
Gambar 2.5 Relay
+7

Referensi

Dokumen terkait

Maka dapat disimpulkan oleh peneliti bahwa dari hasil pemerolehan data yang terdapat dalam penelitian ini, bahwa masalah dalam penelitian ini tentang bagaimana

Puji syukur kehadirat Allah SWT atas Rahmat dan Karunia-Nya sehingga dapat menyelesaikan Tugas Akhir yang berjudul “Analisis Balok Gedung Apartemen W/R Simpang Lima

Tujuan penelitian ini adalah: (1) Mengetahui biodegradasi limbah cair tahu menggunakan bakteri indigen yang potensial mereduksi protein dan karbohidrat, pH dan BOD serta

bahwa berdasarkan pertimbangan sebagaimana dimaksud pada huruf a, maka perlu menetapkan Peraturan Bupati tentang Bantuan Pelayanan Kesehatan Bagi Masyarakat Miskin

Untuk pengukuran di luar kawasan pasar tradisonal (titik 1), hubungan tertinggi antara konsentrasi CO dengan jumlah total kendaraan terdapat pada kawasan Pasar Lubuk

perilaku Organizational Citizenship Behavior (OCB) atau extra- role behavior guru diwujudkan dengan bersedia membantu rekan kerja yang mengalami kesulitan dalam

pembagian Anggah- Ungguhing Basa Bali sebagaimana terurai di atas, tampaknya penutur bahasa Bali dituntut untuk menguasai beberapa sistem stratifikasi masyarakat Bali,

Meskipun demikian, karena pengujian dengan variasi waktu kontak dilakukan pada saat yang bersamaan (contoh air yang sama), maka perbedaan ketebalan tersebut tidak