i
TUGAS AKHIR
CATU DAYA DIGITAL
BERBASIS MIKROKONTROLER ATMEGA8535
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
oleh:
MARIA RATNA PUSPITA
NIM : 085114012
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2014
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
FINAL PROJECT
DIGITAL POWER SUPPLY
BASED ON MICROCONTROLER ATMEGA8535
Presented as Partial Fulfillment of the Requirements
To Obtain the Sarjana Teknik Degree
In Electrical Engineering Study Program
MARIA RATNA PUSPITA
NIM : 085114012
DEPARTEMENT OF ELECTRICAL ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2014
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
LEMBAR PERSETUJUAN
TUGAS AKHIR
CATU DAYA DIGITAL
BERBASIS MIKROKONTROLER ATMEGA8535
(DIGITAL POWER SUPPLY
BASED ON MICROCONTROLER ATMEGA8535)
disusun oleh :
MARIA RATNA PUSPITA
NIM : 085114012
Telah disetujui oleh :
Pembimbing,
Ir. Tjendro M.Kom Tanggal : 17 Maret 2014
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
HALAMAN PENGESAHAN
TUGAS AKHIR
CATU DAYA DIGITAL BERBASIS
MIKROKONTROLER ATMEGA8535Oleh:
Maria Ratna PuspitaNIM: 085114012
Telah dipertahankan di depan Panitia PengujiPada tanggal 28 Februari 2014
Dan dinyatakan memenuhi syarat
Susunan Panitia Penguji
Nama Lengkap Tanda Tangan
Ketua
Sekretaris
Anggota
: Ir. Th. Prima Ari Setiyani, M.T.
: Ir. Tjendro, M.Kom
: Pius Yozy Merucahyo, S.T., M.T.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
PERNYATAAN KEASLIAN KARYA
“Saya menyatakan dengan sesungguhnya bahwa tugas akhir yang saya tulis ini
tidak memuat karya atau bagian karya orang lain,
kecuali yang telah disebutkan dalam kutipan dan daftar pustaka,
sebagaimana layaknya karya ilmiah.”
Yogyakarta, 25 Februari 2014
Maria Ratna Puspita
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
HALAMAN PERSEMBAHAN
Karya tulis ini keupersembahkan untuk:
Yesus Kristus Gembalaku
Bunda Maria dan Malaikat pelindungku
Kedua Orang tua saya Bapak Suparno dan Mamak
Nurtyas Murwaningsih tercinta
Adik-adiku Johan, Doly, Desy dan Chandra tersayang
Almamaterku Teknik Elektro Universitas Sanata Dharma
‘Penting untuk kamu tahu, apa yang kamu bisa dan apa
yang kamu tidak bisa.
Jika kamu punya kekuatan, pikiran, dan ketekunan.
Kamu akan sukses di akhir’
-Chesterfield-
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
HALAMAN PERNYATAAN PERSETUJUAN
PUBLIKASI KARYA ILMIAH UNTUK
KEPENTINGAN AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :
Nama : Maria Ratna Puspita
Nomor Mahasiswa : 085114012
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas
Sanata Dharma karya ilmiah saya yang berjudul :
CATU DAYA DIGITAL BERBASIS
MIKROKONTROLER ATMEGA8535
beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada
Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk
media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan
mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu
meminta ijin dari saya maupun memberikan royalty kepada saya selama tetap mencantumkan
nama saya sebagai penulis.
Demikian pernyataan ini yang saya buat dengan sebenarnya.
Yogyakarta, 25 Februari 2014
Maria Ratna Puspita
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
INTISARI
Perkembangan teknologi telah maju dengan pesat dalam perkembangan dunia elektronika. Catu daya merupakan hal terpenting dalam sebuah instrumentasi elektronika. Pada umumnya catu daya yang sudah memiliki sumber tegangan keluaran dengan sedikit pilihan.
Catu daya dengan nilai tegangan variable ditampilkan secara digital. Sistem ini akan dikendalikan dengan program pada mikrokontroler dengan mengatur potensiometer digital untuk menghasilkan sumber tegangan yang diharapkan. Sistem ini juga dilengkapi dengan keypad sebagai masukan dan Liquid Crystal Display (LCD) sebagai tampilan sumber tegangan. User memasukan nilai tegangan yang diperlukan dengan menekan tombol pada keypad sehingga keluaran akan sama dengan nilai yang tertampil pada layar LCD.
Alat catu daya digital sudah berhasil dibuat dan bekerja dengan baik. Tegangan keluaran sudah sesuai dengan tegangan masukan.
Kata kunci: Catu daya, Potensiometer digital, LCD, Keypad
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRACT
The developing technology has so fast advanced in electronic. The power supply is the most important thing on electronics instrumentation. In general, existing power supply has little choice output voltage source.
Power supply with variable voltage values displayed digitally. This system will controller by program in microcontroller by controlled digital potentiometer to receive voltage sources wanted. This system has completed with keypad as an input and Liquid Crystal Display (LCD) as voltage source display. User input the voltage value needed by pushed the keypad, the output will get value as same as displayed on the LCD.
Digital power supply has been successfully made and ha well done operation. The output voltage got same value with the input voltage.
Keywords: Power supply, Digital potentiometer, LCD, Keypad
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
KATA PENGANTAR
Puji dan Syukur penulis panjatkan kepada Tuhan Yesus Kristus karena telah
memberikan berkat-Nya sehingga penulis dapat menyelesaikan laporan akhir ini dengan
baik. Laporan akhir ini disusun untuk memenuhi syarat memperoleh gelar sarjana.
Penulis mengucapkan terima kasih kepada :
1. Paulina Heruningsih Prima Rosa, S.Si., M.Sc., Dekan Fakultas Sains dan Teknologi
Universitas Sanata Dharma Yogyakarta.
2. Petrus Setyo Prabowo, S.T., M.T., Ketua Program Studi Teknik Elektro Universitas
Sanata Dharma Yogyakarta.
3. Ir. Tjendro, M.Kom., dosen pembimbing yang dengan penuh pengertian dan
ketulusan hati memberi bimbingan, kritik, saran, serta motivasi dalam penulisan
skripsi ini.
4. Ir. Th. Prima Ari Setiyani, M.T., dan Pius Yozy Merucahyo, S.T., M.T., dosen
penguji yang telah memberikan masukan, bimbingan, saran dalam merevisi skripsi
ini.
5. Kedua orang tua saya atas dukungan, doa, cinta, perhatian, kasih sayang yang tiada
henti.
6. Adik-adikku tersayang Johan, Doly, Desy dan Chandra atas doa, perhatian,
dukungan dan kasih sayang tiada henti.
7. Hardy Boyfonda Doko atas dukungan, doa, perhatian, semangat dalam
menyelesaikan skripsi ini.
8. Staf sekretariat Teknik Elektro, atas bantuan dalam melayani mahasiswa.
9. Teman-teman kost muria Frada, kak Sopi, astrid, kak Eva, dll atas dukungan dan
doa.
10. Rake Silverrian alias om Rian, terima kasih banyak atas dukungan dalam
penyelesaian skripsi ini.
11. Aninditya Dichi Saptarini, atas segala dukungan yang selalu mengingatkan, doa,
dan menjadi teman yang baik.
12. Angelina Nita Jatun alias bu Nita, atas dukungan, doa, dan kasih sayang yang tiada
henti.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
13. Kawan-kawan seperjuangan angkatan 2008 Teknik Elektro, kawan-kawan
seperjuangan, dan semua kawan yang mendukung saya dalam mendukung dalam
menyelesaikan tugas akhir ini.
14. Semua pihak yang tidak dapat disebutkan satu persatu atas semua dukungan yang
telah diberikan dalam penyelesaian skripsi ini.
Penulis menyadari bahwa dalam penyusunan laporan akhir ini masih mengalami
kesulitan dan tidak lepas dari kesalahan. Oleh karena itu, penulis mengharapkan masukan,
kritik dan saran yang membangun agar skripsi ini menjadi lebih baik. Semoga skripsi ini
dapat bermanfaat sebagaimana mestinya.
Penulis
Maria Ratna Puspita
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
DAFTAR ISI
HALAMAN JUDUL ................................................................................................ i
HALAMAN PERSETUJUAN ............................................................................. iii
HALAMAN PENGESAHAN ............................................................................... iv
PERNYATAAN KEASLIAN KARYA ............................................................. v
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ............................. vi
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA
ILMIAH UNTUK KEPENTINGAN AKADEMIS ...................................... vii
INTISARI .................................................................................................................... viii
ABSTRACT ................................................................................................................ ix
KATA PENGANTAR ............................................................................................. x
DAFTAR ISI .............................................................................................................. xii
DAFTAR GAMBAR ............................................................................................... xv
DAFTAR TABEL..................................................................................................... xvii
BAB I PENDAHULUAN
1.1. Latar Belakang .................................................................................................. 1
1.2. Tujuan dan Manfaat .......................................................................................... 1
1.3. Batasan Masalah ............................................................................................... 2
1.4. Metodologi Penelitian ...................................................................................... 2
BAB II DASAR TEORI
2.1. Mikrokontroer AVR Atmega8535 ................................................................... 4
2.1.1. Arsitektur AVR ATmega8535 ............................................................. 4
2.1.2. Deskripsi Mikrokontroler ATmega8535 .............................................. 4
2.1.3. Organisasi Memori AVR ATmega8535 ............................................... 5
2.1.4. Interupsi ................................................................................................ 7
2.1.5. Timer/Counter0 .................................................................................... 8
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
2.2. Analog To Digital Converter (ADC) ................................................................ 13
2.2.1. ADC Multiplexer Selection Register (ADMUX) ... …………………. 15
2.2.2. ADC Control and Status Register A (ADSRA) ...... …………………. 16
2.2.3. ADC Data Register (ADCH-ADCL) ...................... …………………. 17
2.2.4. ADC Auto Trigger Source (ADTS2:0) ........................ …………………. 17
2.3 Keypad .............................................................................................................. 18
2.4. Liquid Crystal Display (LCD) .......................................................................... 19
2.5. Potensiometer Digital ....................................................................................... 21
2.6. Rectifier .............................................................................................................. 24
2.7. Filter ................................................................................................................. 24
2.8. IC Regulator ..................................................................................................... 26
2.9. Penguat Arus .................................................................................................... 28
BAB III PERANCANGAN
3.1. Perancangan Sistem Secara Keseluruhan ............................ …………………. 30
3.2. Perancangan Perangkat Keras ............................................. …………………. 31
3.2.1. Perancangan Rangkaian Sistem Minimum mikrokontroler ATmega8535 31
3.2.2. Perancangan Rangkaian Penyearah ........................................................ 33
3.2.3. Perancangan Rangkaian Regulator ......................................................... 36
3.2.4. Perancangan Rangkaian Current Bosster ............................................... 37
3.2.5. Rangkaian LCD ...................................................................................... 38
3.2.6. Rangkaian Keypad .................................................................................. 38
3.3. Perancangan Perangkat Lunak ......................................................................... 39
3.3.1. Diagram Alir Sistem ............................................................................... 39
3.3.2. Diagram Alir Input Tegangan................................................................. 40
3.3.3. Diagram Alir Proses ............................................................................... 41
3.3.4. Diagram Alir Proses penyetaraan ........................................................... 42
BAB IV HASIL DAN PEMBAHASAN
4.1. Hasil Implementasi Alat ................................................................................... 44
4.1.1. Rangkaian Potensiometer Digital ........................................................... 45
4.1.2. Rangkaian Regulator +15Volt dan -15Volt ............................................ 47
4.2. Data Pengujian dan Pembahasan ...................................................................... 42
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
4.2.1. Pengujian Tegangan keluaran Tanpa Beban.……. ................................ 48
4.2.2. Pengujian Keluaran Berbeban ................................... …………………. 52
4.3. Analisa dan Pembahasan Perangkat Lunak ......................... …………………. 54
4.3.1. Program Menu ........................................................................................ 54
4.3.2. Program Tegangan Masukan .................................................................. 56
4.3.3. Program Proses ....................................................................................... 57
4.3.4. program penyetaraan .............................................................................. 58
BAB V KESIMPULAN DAN SARAN
5.1. Kesimpulan ....................................................................................................... 62
5.2. Saran ................................................................................................................. 62
DAFTAR PUSTAKA .............................................................................................. 63
LAMPIRAN ............................................................................................................... L1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
DAFTAR GAMBAR
Gambar 1.1. Diagram Blok Sistem ............................................................................... 2
Gambar 2.1. Konfigurasi Pin Mikrokontroler Atmega8535......................................... 5
Gambar 2.2. Organisasi Memori ATmega8535 ........................................................... 6
Gambar 2.3. Pulsa Fast PWM ...................................................................................... 12
Gambar 2.4. Pulsa Non-inverting Phase correct PWM ............................................... 13
Gambar 2.5. Blok ADC ................................................................................................ 14
Gambar 2.6. Konfigurasi Keypad Matriks 4x4 ............................................................ 18
Gambar 2.7. Kolom dan Baris Karakter pada LCD 16x2 ............................................ 19
Gambar 2.8. Konfigurasi Pin LCD 16x2 ...................................................................... 20
Gambar 2.9. Konfigurasi Pin DS1669 8-pin DIP 300-mil ........................................... 21
Gambar 2.10. Konfigurasi Pin DS1669 8-pin SOIC 208-mil ........................................ 21
Gambar 2.11. DS1669 dengan pushbutton tunggal ........................................................ 22
Gambar 2.12. DS1669 dengan pushbutton ganda .......................................................... 23
Gambar 2.13. Rangkaian Penyearah Gelombang Penuh ................................................ 24
Gambar 2.14. Rangkaian penyarah gelombang penuh ................................................... 24
Gambar 2.15. Bentuk gelombang penyearah gelombang penuh .................................... 25
Gambar 2.16. Rangkaian internal LM317 ...................................................................... 26
Gambar 2.17. Rangkaian dasar regulator LM317 .......................................................... 27
Gambar 2.18. Rangkaian Regulator 0-12V .................................................................... 27
Gambar 2.19. Transistor Darlington ............................................................................... 28
Gambar 2.20. Konfigurasi Transistor Darlington ........................................................... 29
Gambar 3.1. Diagram blok sistem ................................................................................ 30
Gambar 3.2. Rangkaian osilator ATmega8535 ............................................................ 31
Gambar 3.3. Rangkaian reset ATmega8535 ................................................................ 32
Gambar 3.4. Rangkaian Sistem Minimum ................................................................... 33
Gambar 3.5. Rangkaian minimum sistem .................................................................... 30
Gambar 3.6. Rangkaian Regulator 0-12V .................................................................... 36
Gambar 3.7. Rangkaian Current Booster ..................................................................... 37
Gambar 3.8. Rangkaian LCD ....................................................................................... 38
Gambar 3.9. Rangkaian keypad 4x4 ............................................................................. 39
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
Gambar 3.10. Diagram alir sistem .................................................................................. 40
Gambar 3.11. Diagram Alir Input Tegangan .................................................................. 41
Gambar 3.12. Diagram Alir Proses ................................................................................ 42
Gambar 3.13. Diagram Alir Proses Penyetaraan ............................................................ 43
Gambar 4.1. Rangkaian Sistem minimum ATmega8535 ............................................. 44
Gambar 4.2. Keypad 4x4 dan LCD 16x2 ....................................................................... 45
Gambar 4.3. Rangkaian PCB Potensiometer Digital .................................................... 46
Gambar 4.4. Rangkaian Potensiometer Digital ............................................................ 47
Gambar 4.5. Rangkaian Regulator +15V dan -15V .................................................... 48
Gambar 4.6. Tampilan Menu utama ............................................................................. 55
Gambar 4.7. Tampilan Menu Pilihan ........................................................................... 55
Gambar 4.8. Tampilan Memasukkan Tegangan ........................................................... 56
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvii
DAFTAR TABEL
Tabel 2.1. Hubungan PIN dan Interupsi ........................................................................ 7
Tabel 2.2. Alamat Vektor Interupsi ATmega8535 ........................................................ 7
Tabel 2.2. (lanjutan) Alamat Vektor Interupsi ATmega8535 ....................................... 8
Tabel 2.3. Timer/Counter Control Register (TCCR0) .................................................. 8
Tabel 2.4. Presceale Timer/Counter0............................................................................ 8
Tabel 2.5. Mode Operasi ............................................................................................... 9
Tabel 2.6. Mode Normal dan CTC ................................................................................ 9
Tabel 2.7. Mode Fast PWM .......................................................................................... 9
Tabel 2.8. Mode phase correct PWM ........................................................................... 10
Tabel 2.9. Timer/Counter Register (TCNT0) ................................................................ 10
Tabel 2.10. Output Compare Register (OCR0) ............................................................... 10
Tabel 2.11. Timer/Counter Interrupt Mask Register (TIMSK) ...................................... 10
Tabel 2.12. Timer/Counter Interrupt Flag Register TIFR ............................................. 11
Tabel 2.13. Register ADMUX ........................................................................................ 15
Tabel 2.14. Pengaturan Tegangan Referensi ADC......................................................... 15
Tabel 2.15. ADC Control and Status Register A (ADSRA) .......................................... 16
Tabel 2.16. Skala Clock ADC ....................................................................................... 16
Tabel 2.17. Format data ADCH-ADCL jika ADLAR = 0 ............................................. 17
Tabel 2.18. Format data ADCH-ADCL jika ADLAR = 1 ............................................. 17
Tabel 2.19. ADC Auto Trigger Source (ADTS2:0) ....................................................... 17
Tabel 2.20. Pemicu ADC ................................................................................................ 17
Tabel 2.21. Konfigurasi Pin LCD 16x2 .......................................................................... 20
Tabel 4.1. Hasil Pengujian tegangan keluaran regulator +15 Volt dan -15 Volt ......... 47
Tabel 4.2. Hasil Penurunan tegangan keluaran regulator +15 Volt dan -15 Volt ........ 48
Tabel 4.3. Hasil Pengujian Tanpa Beban ..................................................................... 49
Tabel 4.4. Hasil Pengujian Arus Berbeban................................................................... 53
Tabel 4.5. Hasil Pengujian Tegangan Berbeban........................................................... 54
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Perkembangan teknologi telah maju dengan pesat dalam perkembangan dunia
elektronika . Dalam kehidupan sehari-hari telah banyak dijumpai alat-alat elektronika yang
menggunakan catu daya (power supply) sebagai sumber tegangan maupun sumber arus.
Catu daya merupakan hal terpenting dalam sebuah instrumentasi elektronika [1]. Catu daya
sudah banyak dipergunakan untuk praktikum oleh mahasiswa, penelitian para perancang
dan untuk keperluan-keperluan lain yang berhubungan dengan penggunaan catu daya.
Keluaran (sumber tegangan maupun sumber arus) dari catu daya memiliki nilai keluaran
tertentu (tetap) dan nilai keluaran yang dapat diatur-atur (variable).
Catu daya merupakan suatu rangkaian elektronik yang mengubah arus bolak-balik
menjadi arus listrik searah. Hampir semua peralatan elektronik membutuhkan catu daya
agar dapat berfungsi [2]. Berbagai variasi catu daya telah diciptakan oleh manusia untuk
mempermudah penggunaan dalam menginstrumentasikan alat-alat elektronika. Pada
umumnya catu daya yang sudah ada dengan keluaran sumber tegangan yang variable
belum memiliki banyak pilihan sumber tegangan.
Berdasarkan hal diatas, penulis ingin membuat catu daya dengan nilai tegangan
variable dan ditampilkan secara digital. Sistem ini akan dikendalikan dengan program pada
mikrokontroler dengan mengatur potensiometer digital untuk menghasilkan sumber
tegangan yang diharapkan. Sistem ini juga dilengkapi dengan keypad sebagai masukan dan
Liquid Crystal Display (LCD) sebagai tampilan sumber tegangan, user memasukan nilai
tegangan yang diperlukan dengan menekan tombol pada keypad sehingga keluaran akan
sama dengan nilai yang tertampil pada layar LCD.
1.2. Tujuan dan Manfaat
Tujuan penelitian ini adalah menghasilkan sebuah alat yaitu catu daya digital
dengan pengaturan keluaran tegangan sesuai masukan yang diberikan melalui keypad dan
keluarannya akan ditampilkan pada LCD (Liquid Crystal Display).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
Manfaat dari penelitian ini adalah untuk mempermudah bagi pengguna catu daya
dalam menginstrumentasikan alat-alat elektronika dengan hanya memasukkan nilai
sumber tengangan yang diperlukan yaitu nilai sumber masukan sama dengan nilai sumber
pada keluaran.
1.3. Batasan Masalah
Penelitian akan dibatasi pada pembuatan catu daya digital berbasis mikrokontroler
ATmega8535, spesifikasi alat yang digunakan:
a. Keluaran Tegangan DC yang terukur 0-12 volt dengan interval 0.1 volt.
b. Menggunakan IC LM317.
c. Menggunakan trafo step down maksimal arus 2 A.
d. Keypad sebagai masukan.
e. LCD (Liquid Crystal Display) sebagai penampil.
f. Menggunakan potensiometer digital.
1.4. Metodologi Penelitian
Penulisan tugas akhir ini menggunakan metode:
a. Pengumpulan bahan-bahan referensi berupa buku-buku dan jurnal-jurnal. Studi
kepustakaan yang mencangkup literature-literatur mengenai datasheet
ATmega8535 dan datasheet DS1669 (potensiometer digital).
b. Perancangan subsistem hardware dan software. Tahap ini bertujuan untuk
mencari bentuk model yang optimal dari sistem yang akan dibuat dengan
mempertimbangkan dari berbagai faktor-faktor permasalahan dan kebutuhan
yang telah ditentukan. Gambar 1.1 adalah model diagram blok sistem yang
akan dirancang.
Gambar 1.1. Diagram Blok Sistem
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
c. Perancangan dan pembuatan rangkaian elektronik seperti rangkaian ic regulator
tegangan. Tahap ini meliputi perhitungan teoritis dan pembuatan PCB.
d. Perancangan dan pembuatan program menggunakan bahasa C dengan software
CodeVision AVR.
e. Proses pengambilan data. Teknik pengambilan data dilakukan dengan cara
memasukkan beberapa nilai melalui keypad dan keluaran akan tertampil
melalui LCD (Liquid Crystal Display).
f. Analisa dan penyimpulan hasil percobaan. Analisa dan kesimpulan hasil
percobaan dapat dilakukan dengan melihat presentasi error yang terjadi pada
kinerja sistem secara keseluruhan, yaitu membandingkan nilai masukan dengan
nilai keluaran.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
BAB II
DASAR TEORI
2.1. Mikrokontroler AVR ATmega8535AVR (Alf and Vegard’sRiscProcessor) merupakan seri mikrokontroler CMOS 8-bit
yang diproduksi oleh Atmel berbasis arsitektur RISC (Reduced Instruction Set Computer).
Chip AVR yang digunakan untuk tugas akhir ini adalah ATmega8535. Hampir semua
instruksi dieksekusi dalam satu siklus clock dan mempunyai 32 register general-purpose,
timer/counter fleksibel dengan mode compare, interupsi internal dan eksternal, serial
UART, programmable Watchdog Timer, dan power saving mode.
2.1.1 Arsitekstur AVR ATmega8535
Mikrokontroler ATmega8535 memiliki arsitektur sebagai berikut:
a. Saluran IO sebanyak 32 buah, yaitu Port A, Port B, Port C dan Port D
b. ADC 10 bit sebanyak 8 channel
c. Tiga buah timer/counter yaitu Timer 0, Timer 1 dan Timer 2
d. Watchdog Timer dengan osilator internal
e. SRAM sebanyak 512 byte
f. Memori Flash sebesar 8 kb
g. Sumber Interupsi internal dan eksternal
h. Port SPI (Serial Pheriperal Interface)
i. EEPROM on board sebanyak 512 byte
j. Komporator analog
k. Port USART (Universal Shyncbrounous Ashynchronous Receiver Transmitter)
2.1.2 Deskripsi Mikrokontroler ATmega8535
Konfigurasi Pin Mikrokontroler ATmega8535 dengan kemasan 40-pin DIP (dual
in-line package) dapat dilihat pada gambar 2.1. Untuk memaksimalkan performa dan
paralelisme, AVR menggunakan arsitektur Harvard (dengan memori dan bus terpisah
untuk program dan data). Ketika sebuah intruksi sedang dikerjakan maka instruksi
berikutnya diambil dari memori program.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
Gambar 2.1. Konfigurasi Pin Mikrokontroler ATmega8535 [3]
Mikrokontroler ATmega8535 memiliki konfigurasi Pin sebagai berikut [3]:
a. VCC (power supply)
b. GND (ground)
c. Port A (PA7…PA0), Port A berfungsi sebagai input analog pada ADC (analog
digital converter). Port A juga berfungsi sebagai suatu Port I/O 8-bit dua arah.
d. Port B (PB7…PB0), Port B adalah suatu Port I/O 8-bit dua arah dengan
resistor internal pull-up (yang dipilh untuk beberapa bit).
e. Port C (PC7…PC0), Port B adalah suatu Port I/O 8-bit dua arah dengan
resistor internal pull-up (yang dipilh untuk beberapa bit).
f. Port D (PD7…PD0), Port B adalah suatu Port I/O 8-bit dua arah dengan
resistor internal pull-up (yang dipilh untuk beberapa bit).
g. RESET (Reset Input)
h. XTAL1 (Input Oscillator)
i. XTAL2 (Output Oscillator)
j. AVCC adalah pin pengelola tegangan untuk Port A dan ADC
k. AREF adalah pin referensi analog untuk ADC
Port A berfungsi sebagai input analog pada A/D converter dan Port I/O 8-bit dua
arah. Port B, Port C, Port D adalah suatu Port I/O 8-bit dua arah dengan resistor internal
pull-up (yang dipilih untuk beberapa bit). Pada rangkain reset, waktu pengosongan
kapasitor dapat dihitung dengan persamaan :
= × (2.1)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
2.1.3 Organisasi Memori AVR ATmega8535Mikrokontroler ATmega8535 memiliki 3 jenis memori yaitu memori Flash,
memori data dan EEPROM. Ketiganya memiliki ruang sendiri dan terpisah seperti pada
gambar 2.3.
Gambar 2.2. Organisasi Memori ATmega8535 [4]
2.1.3.1 Memori Flash
Memori flash merupakan memori ROM tempat kode-kode program berada. Kata
flash menunjukkan jenis ROM yang dapat ditulis dan dihapus secara elektrik [5]. Memori
ini terdiri dari program boot dan program aplikasi. Jika tidak menggunakan fitur Boot
Leader Flash maka semua kapasitas aplikasi memori program digunakan untuk program
aplikasi namun jika mengunakan fitur Boot Leader Flash maka pembagian ukuran
ditentukan oleh BOOTSZ fuse.
2.1.3.2 Memori Data
Memori data merupakan memori RAM yang digunakan untuk diperlukan program
[5].
Memori data terdiri dari 32 General Purpose Register (GPR) yang merupakan
register khusus yang bertugas untuk membantu eksekusi program oleh Arithmetic Logic
Unit (ALU) dan I/O register dan additional I/O register yang difungsikan khusus untuk
mengendalikan berbagai peripheral dalam mikrokontroler antara lain pin, port,
timer/counter, USART.
ATmega8535 memiliki kapasitas memori data sebesar 608 Byte yang terbagi
menjadi 3 bagian yaitu register serba guna, register I/O dan SRAM.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
2.1.3.3 EEPROM
EEPROM merupakan memori data yang dapat menyimpan ketika chip mati (off).
Memori ini digunakan untuk keperluan penyimpanan data yang tahan terhadap gangguan
catu daya. ATmega8535 memiliki EEPROM sebesar 512 Byte yang terpisah dari memori
program maupun memori data [4].
2.1.4 InterupsiInterupsi adalah suatu kondisi dimana mikrokontroler akan berhenti sementara dari
program utama untuk melayani instruksi-instruksi pada interupsi kemudian kembali
mengerjakan instruksi program utama setelah instruksi-instruksi pada interupsi selesai
dikerjakan [6].
Tabel 2.1. Hubungan PIN dan Interupsi [6]
Jenis Interupt PIN pada ATmega8535INT0 PORTD.2INT1 PORTD.3INT2 PORTB.2
ATmega8535 menyediakan 21 macam sumber interupsi yang masing-masing
memiliki alamat program vector interupsi. Setiap interupsi yang aktif akan dilayani segera
setelah terjadi permintaan interupsi, tetapi jika di dalam waktu bersamaan terjadi lebih dari
satu interupsi maka prioritas yang akan diselesaikan lebih dulu adalah interupsi yang
memiliki nomor urut lebih kecil sesuai pada tabel 2.2.
Tabel 2.2. Alamat Vektor Interupsi ATmega8535 [4]
No.Vektor
AlamatProgram Sumber Interupsi Keterangan
1. 0x000 RESET External Pin, Power-on, Reset, Brown-outReset and Watchdog Reset
2. 0x001 INT0 External Interrupt Request 03. 0x002 INT1 External Interrupt Request 14. 0x003 TIMER2 COMP Timer/Counter2 Compare Match5. 0x004 TIMER2 OVF Timer/Counter2 Overflow6. 0x005 TIMER1 CAPT Timer/Counter1 Capture Event7. 0x006 TIMER1 COMPA Timer/Counter1 Compare Match A8. 0x007 TIMER1 COMPB Timer/Counter1 Compare Match B9.. 0x008 TIMER1 OVF Timer/Counter1 Overflow10. 0x009 TIMER0 OVF Timer/Counter0 Overflow11. 0x00A SPI, STC Serial Transfer Complete
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
Tabel 2.2. (lanjutan) Alamat Vektor Interupsi ATmega8535 [4]
No.Vektor
AlamatProgram Sumber Interupsi Keterangan
12. 0x00B USART, RXC USART, Rx Complete13. 0x00C USART, UDRE USART Data Register Empty14. 0x00D USART, TXC USART, Tx Complete15. 0x00E ADC ADC Conversion Complete16. 0x00F EE_RDY EEPROM Ready17. 0x010 ANA_COMP Analog Comparator18. 0x011 TWI Two-wire Serial Interface19. 0x012 INT2 External Interrupt Request 220. 0x013 TIMER0 COMP Timer/Counter0 Compare Match21. 0x014 SPM_RDY Store Program Memory Ready
2.1.5 Timer/Counter0Timer/Counter0 adalah sebuah timer/counter yang dapat mencacah sumber
pulsa/clock baik dari dalam chip (timer) maupun dari luar chip (counter) dengan kapasitas
8-bit (256 cacahan).
2.1.5.1 Register Pengendali Timer0 [5]
1. Timer/Counter Control Register (TCCR0)
Tabel 2.3. Timer/Counter Control Register (TCCR0)
Bit CS00 s.d. 02 bertugas untuk memilih (prescealer) atau mendefenisikan pulsa/clock
yang akan masuk ke dalam Timer/Counter0.
Tabel 2.4. Presceale Timer/Counter0
CS02 CS01 CS00 Keterangan0 0 0 Stop/berhenti0 0 1 Clk (sama dengan clock cpu)0 1 0 Clk/8 (1 clk timer/counter0 = 8 clk cpu)0 1 1 Clk/64 (1 clk timer/counter0 = 64 clk cpu)1 0 0 Clk/256 (1 clk timer/counter0 = 256 clk cpu)1 0 1 Clk/1024 (1 clk timer/counter0 = 1024 clk cpu)1 1 0 Clk eksternal dari pin T0 pada kondisi falling edge1 1 1 Clk eksternal dari pin T0 pada kondisi rising edge
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
(1 clk timer/counter0= 8 clk cpu) artinya tiap 8 clock CPU yang masuk ke dalam
timer/counter0 dihitung satu oleh register pencacah TCNT0. Falling edge adalah
perubahan pulsa/clock dari 1 ke 0. Rising edge adalah perubahan pulsa/clock dari 0 ke 1.
a. Bit 7 – FOC0 : Force Output Compare
Bit 7 hanya dapat digunakan untuk metode pembanding . Jika bit – F0C0 di-set
maka akan memaksa terjadinya compare-match (TCNT0==OCR0).
b. Bit 3, 6 – WGM01:0: Waveform Generation Mode
Bit 3 dan bit 6 digunakan untuk memilih mode seperti ditunjukkan pada tabel
2.5.
Tabel 2.5. Mode Operasi
WGM01 WGM00 Mode Operasi TOP UpdateOCR0
Flag TOV0on
0 0 Normal 0xFF Imidiet MAX0 1 Phase correct PWM 0xFF TOP Bottom1 0 CTC OCR0 Imidiet MAX1 1 Fast PWM 0xFF Bottom MAX
c. Bit 5,4 – COM01:0: Compare Match Output Mode
Bit 5 dan bit 4 berfungsi mendefinisikan pin OC0 sebagai output Timer0
(saluran output PWM).
Tabel 2.6. Mode Normal dan CTC
COM01 COM00 Output pin OC00 0 Tidak dihubungkan0 1 Toggle saat compare match1 0 Clear saat compare match1 1 Set saat compare match
Tabel 2.7. Mode Fast PWM
COM01 COM00 Output pin OC00 0 Tidak dihubungkan0 1 -1 0 Clear saat compare match, Set saat bottom (noninverting)1 1 Set saat compare match, clear saat bottom (inverting)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
Tabel 2.8. Mode Phase Correct PWM
COM01 COM00 Output pin OC00 0 Tidak dihubungkan0 1 -
1 0 Clear saat compare match ketika up-counting, Set saatcompare match ketika down-counting (noninverting)
1 1 Set saat compare match ketika up-counting, clear saatcompare match ketika down-counting (inverting)
2. Timer/Counter Register (TCNT0)
Tabel 2.9. Timer/Counter Register (TCNT0)
Register yang bertugas menghitung pulsa yang masuk kedalam timer/counter.
Kapasitas registernya adalah 8-bit (255 hitungan), setelah mencapai hitungan
maksimal maka akan kembali ke nol (overflow/limpahan).
3. Output Compare Register (OCR0)
Tabel 2.10. Output Compare Register (OCR0)
Register yang bertugas sebagai register pembanding dengan menentukan besarnya
sesuai dengan kebutuhan. Saat TCNT0 mencacah maka secara otomatis oleh CPU
akan dibandimgkan dengan isi OCR0 secara kontinyu dan jika isi TCNT0 sama
dengan isi OCR0 maka akan terjadi compare match yang dapat dimanfaatkan untuk
mode CTC dan PWM.
4. Timer/Counter Interrupt Mask Register (TIMSK)
Tabel 2.11. Timer/Counter Interrupt Mask Register (TIMSK)
a. Bit 0 – TOIE0: T/C0 Overflow Interrupt Enable
Register TIMSK Timer/Counter0 memiliki bit TOIE0 sebagai bit peng-aktif
interupsi Timer/Counter0, jika TOIE0=1 maka enable dan jika TOIE0=0 maka
disable.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
b. Bit 1 – OCIE0: T/C0 Output Compare Match Enable
Selain ATMega8,TIMSK Timer/Counter0 memilki OCIE0 sebagai bit peng-
aktif interupsi compare match Timer/Counter0, jika OCIE0=1 enable dan jika
OCIE0=0 maka disable.
5. Timer/Counter Interrupt Flag Register (TIFR)
Tabel 2.12. Timer/Counter Interrupt Flag Register (TIFR)
a. Bit 1 – OCF0: Output Compare Flag 0
Flag OCF0 akan di set sebagai indikator jika terjadinya compare match dan
akan clear dengan sendirinya bersamaan eksekusi vektor interupsi Timer0
compare match.
b. Bit 0 – TOV0: Timer/Counter0 Overflow Flag
Bit status Timer/Counter0 dalam register TIFR, dimana bit TOV0 akan set
secara otomatis ketika terjadi limpahan/overflow pada register TCNT0 dan
akan clear bersamaan dengan eksekusi vektor interupsi.
2.1.5.2 Mode Operasi
1. Normal
Mode normal ada dua yaitu normal overflow dan normal compare match. Dalam mode
normal overflow register pencacah TCNT0 bekerja secara normal selalu
mencacah/menghitung ke-atas (counting-up) hingga mencapai nilai maksimal 0xFF
lalu 0x00 lagi (overflow). Dalam mode normal compare match register TCNT0
bekerja seperti mode normal overflow, bedanya jika diberi isi register OCR0 maka
ketika TCNT0==OCR0 akan terjadi compare match yang menyebabkan flag OCF0
secara otomatis set yang ditandai dengan terjadinya interupsi jika interupsi Timer0
compare match diaktifkan.
2. CTC (Clear Timer on Compare Match)
Dalam mode CTC register pencacah TCNT0 mencacah naik (counting-up) hingga
mencapai TOP (nilai TCNT0 sama dengan nilai OCR0 yang telah ditentukan)
kemudian TCNT0 nol lagi yang otomatis menge-set flag OCF0 dan akan
membangkitkan interupsi Timer0 compare match jika diaktifkan dan seterusnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
3. Fast PWM (Pulsa Width Modulation)
Dalam mode fast PWM membuat generator gelombang. PWM adalah gelombang
digital/pulsa yang dapat diatur duty cycle-nya. Duty cycle adalah perbandingan antara
lama pada saat satu (on) dan lama periode satu gelombang pulsa.
Gambar 2.3. Pulsa PWM [5]
= × 100% (2.2)
Timer/Counter0 dalam mode fast PWM untuk mengendalikan lama t on dan t off
melalui register pembanding OCR0 yang menyebabkan besar duty cycle yang
dihasilkan. Chanel (saluran) PWM Timer/Counter0 adalah pin OC0 (PB3) sebagai
keluaran saluran PWM. Sifat cacahan mode fast PWM register pencacah TCNT0
mencacah dari BOTTOM (0x00) terus mencacah naik (counting-up) hingga mencapai
MAX (0xFF) kemudian mulai dari BOTTOM lagi dan seterusnya disebut single slope
(satu arah cacahan ) seperti ditunjukkan gambar 2.3.
Gambar 2.3. Pulsa Fast PWM [5]
Frekuensi pin OC0 (PB3) untuk fast PWM dihitung dengan menggunakan persamaan:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
= _ /· 256 (2.3)
dengan:_ / = frekuensi clock chip
= presecaler sumber clock (1,8,64,256,1024)
4. Phase Correct PWM
Pada mode phase correct PWM operasi cacahan register TCNT0 menggunakan dual
slope (dua arah cacahan/bolak-balik) dimana TCNT0 mencacah dari BOTTOM (0x00)
counting-up hingga mencapai MAX (0xFF) kemudian counting-down hingga
BOTTOM (0x00) dan seterusnya.
Gambar 2.4. Pulsa Non-inverting Phase Correct PWM [4]
Frekuensi phase correct PWM dihitung menggunakan persamaan:
= _ /· 510 (2.4)
dengan:_ / = frekuensi clock chip
= presecaler sumber clock (1,8,64,256,1024)
2.2. Analog To Digital Converter (ADC)Mikrokontroler ATmega8535 memiliki fasilitas ADC yang sudah built-in dalam
chip. ATmega8535 memiliki resolusi ADC 10-bit dengan 8 channel input dan mendukung
16 macam penguat beda [4].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
Data hasil konversi dapat dihitung dengan persamaan:
1. Konversi tunggal
= · 1024(2.5)
dengan:
= Tegangan masukan pada pin yang dipilih
= Tegangan referensi
2. Penguat beda
= ( − ) · · 512(2.6)
dengan:
= Tegangan masukan pada pin positif
= Tegangan masukan pada pin negative
= Faktor penguatan
= Tegangan referensi
Gambar 2.5. Blok ADC [5]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
2.2.1. ADC Multiplexer Selection Register (ADMUX)
Tabel 2.13. Register ADMUX
a. Bit 7:6 – REFS1:0 : Reference Selection Bits
Bit REFS1 dan REFS0 digunakan untuk menentukan tegangan dari ADC
seperti ditunjukkan pada tabel 2.14 dan tidak dapat dirubah saat konversi
sedang berlangsung.
Gambar 2.14. Pengaturan Tegangan Referensi ADC
REFS1 REFS0 Tegangan Referensi0 0 Pin AVEF0 1 PIN AVCC, dengan pin AREF diberi kapasitor1 0 -1 1 Internal 2.56 V dengan pin AREF diberi kapasitor
keterangan:
‘00’= Tegangan referensi menggunakan tegangan yang terhubung ke pin
AREF
‘01’= Tegangan referensi menggunakan tegangan AVCC dan pin AREF
diberi kapasitor
‘10’= Tidak digunakan
‘11’= Tegangan referensi menggunakan referensi interval 2.56V dan pin
AREF diberi kapasitor
b. Bit 5 – ADLAR : ADC Left Adjust Result
Bit ADLAR digunakan untuk mengatur format peyimpanan data ADC pada
register ADCL dan ADCH
c. Bit 4:0 – MUX4:0 : Analog Channel and Gain Selection Bits
Bit MUX4:0 digunakan untuk menentukan pin masukan analog ADC pada
konversi tunggal atau menentukan pin-pin masukan analog dan nilai
penguatannya (gain) pada mode penguat beda.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
2.2.2. ADC Control and Status Register A (ADSRA)
Tabel 2.15. ADC Control and Status Register A (ADSRA)
a. Bit 7 – ADEN : ADC Enable
Bit ADEN digunakan untuk mengaktifkan dan menonaktifkan fasilitas ADC.
(Bit ADEN= 1 maka ADC aktif dan Bit ADEN= 0 maka ADC tidak aktif).
b. Bit 5 – ADATE : ADC Auto Trigger Enable
Bit ADATE digunakan untuk mengaktifkan pemicu proses konversi ADC
sesuai dengan bit-bit ADTS pada register SFIOR (bit ADATE=1 maka pemicu
ADC aktif).
c. Bit 4 –ADIF : ADC Interrupt Flag
Bit ADIF adalah bendera interupsi ADC yang digunakan untuk menunjukkan
ada tidaknya permintaan interupsi ADC. Bit ADIF akan bernilai ‘1’ jika proses
konversi ADC telag selesai.
d. Bit 3 – ADIE : ADC Interrupt Enable
Bit ADIE digunakan untuk mengaktifkan dan menonaktifkan interupsi ADC.
e. Bit 2:0 – ADPS2:0 : ADC Preascaler Select Bits
Bit ADPS2, ADPS1 dan ADPS0 digunakan untuk menentukan factor pembagi
frekuensi kristal yang hasilnya digunakan sebagai clock ADC.
Tabel 2.16. Skala Clock ADC [4]
ADPS2 ADPS1 ADPS0 Faktor Pembagi0 0 0 20 0 1 20 1 0 40 1 1 81 0 0 161 0 1 321 1 0 641 1 1 128
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
2.2.3. ADC Data Register (ADCH-ADCL)
Register ini digunakan untuk penyimpanan data 10-bit hasil konversi ADC. Data
tersebut dapat disimpan dalam 2 format yang berbeda tergantung pada nilai bit ADLAR
seperti ditunjukkan pada tabel 2.17 dan tabel 2.18.
Tabel 2.17. Format data ADCH-ADCL jika ADLAR = 0
Tabel 2.18. Format data ADCH-ADCL jika ADLAR = 1
2.2.4. ADC Auto Trigger Source (ADTS2:0)
Tabel 2.19. ADC Auto Trigger Source (ADTS2:0)
Bit-bit ADTS2:0 berada pada register SFIOR digunakan untuk mengatur pemicu
proses konversi ADC seperti ditunjukkan pada tabel 2.20.
Tabel 2.20. Pemicu ADC [4]
ADTS2 ADTS1 ADTS0 Sumber Pemicu Konversi ADC0 0 0 Free Running Mode0 0 1 Analog Comparator0 1 0 External Interrupt Request 00 1 1 Timer/Counter0 Compare Match1 0 0 Timer/Counter0 Overflow1 0 1 Timer/counter1 Compare Match B1 1 0 Timer/counter1 Overflow1 1 1 Timer/counter1 Capture Event
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
keterangan:
‘000’ = Mode Free-Running, konversi ADC akan dimulai pada saat bit ADSC
pada register ADCSRA diset ‘1’.
‘001’ = Konversi ADC akan dimulai sesuai dengan pengaturan output Analog
Comparator
‘010’ = Konversi ADC akan dimulai pada saat terjadi interupsi eksternal 0
‘011’ = Konversi ADC akan dimulai pada saat terjadi Timer/Counter0
Compare Match
‘100’ = Konversi ADC akan dimulai pada saat terjadi Timer/Counter0
Overflow
‘101’ = Konversi ADC akan dimulai pada saat terjadi Timer/counter1 Compare
Match B
‘110’ = Konversi ADC akan dimulai pada saat terjadi Timer/counter1 Overflow
‘111’ = Konversi ADC akan dimulai pada saat terjadi Timer/counter1 Capture
Event
2.3. KeypadKeypad matriks adalah tombol-tombol yang disusun secara matriks (baris x kolom)
sehingga dapat mengurangi penggunaan pin input. Sebagai contoh, keypad matriks 4x4
menggunakan 8 pin untuk 16 tombol. Hal tersebut dimungkinkan karena rangkain tombol
disusun secara horizontal membentuk baris dan secara vertikal membentuk kolom seperti
pada gambar 2.6.
Gambar 2.6. Konfigurasi Keypad Matriks 4x4 [7]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
Proses pengecekan dari tombol yang dirangkai secara matriks adalah dengan teknik
scanning, yaitu proses pengecekan yang dilakukan dengan cara memberikan umpan-data
pada satu bagian dan mengecek feedback (umpan balik) pada bagian lain. Pemberian
umpan-data dilakukan pada bagian baris dan pengecekan umpan balik pada kolom. Pada
saat pemberian umpan data pada satu baris, maka baris yang lain harus dalam kondisi
inversi. Tombol yang ditekan dapat diketetahui dengan melihat asal data dan di kolom
mana data tersebut terdeteksi.
2.4. Liquid Crystal Display (LCD)LCD (Liquid Crystal Display) memiliki 2 jenis yaitu LCD karakter dan LCD
grafik. LCD karakater adalah LCD yang karakternya terbatas pada tampilan karakter,
khususnya karakter ASCII seperti karakter-karakter yang tercetak pada keyboard
komputer. Sedangkan LCD grafik adalah LCD yang tampilannya tidak terbatas, bahkan
dapat menampilkan foto. LCD grafik inilah yang terus berkembang seperti layar LCD yang
biasa dilihat di notebook/laptop [8].
Jenis LCD karakter yang beredar di pasaran biasanya dituliskan dengan bilangan
matriks dari jumlah karakater yang dapat dituliskan pada LCD tersebut, yaitu jumlah
kolom karakter dikali jumlah baris karakter. Sebagai contoh, LCD 16x2 artinya terdapat 16
kolom dalam 2 baris ruang karakter seperti pada gambar 2.7, yang berarti total karakter
yang dapat dituliskan adalah 32 karakater [8].
Gambar 2.7. Kolom dan Baris Karakter pada LCD 16x2
Agar dapat mengendalikan LCD karakter dengan baik memerlukan koneksi yang
benar. Koneksi yang benar dengan mengetahui pin-pin antarmuka yang dimiliki LCD
karakter. LCD karakter memilki 16 pin seperti pada gambar 2.8 dan tabel 2.13.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
Gambar 2.8. Konfigurasi Pin LCD 16x2
Tabel 2.21. Konfigurasi Pin LCD 16x2
Display karakter pada LCD diatur oleh pin EN, RS dan R/W dimana jalur EN
dinamakan Enable. Jalur ini digunakan untuk memberitahukan LCD bahwa data sedang
dikirimkan. Untuk mengirimkan data ke LCD, maka melalui program EN harus dibuat
logika low “0” dan set pada dua jalur kontrol yang lain RS dan R/W. Ketika dua jalur yang
lain telah siap, set En dengan logika high “1” dan tunggu utnuk sejumlah waktu tertentu
(sesuai dengan datasheet dari LCD tersebut) dan berikutnya set ke logika low “0” lagi.
Jalur RS adalah jalur Register Select. Ketika RS berlogika low “0”, data akan di anggap
sebagai sebagai sebuah perintah atau instruksi khusus (seperti clear screen, posisi kursor,
dll). Ketika RS berlogika high “1” , data yang dikirim adalah data text yagn akan
ditampilkan pada display LCD. Sebagai contoh, untuk menampilkan angka “1” pada layar
LCD maka RS harus diset logika high “1”, jalur R/W adalah jalur control Read/Write.
Ketika R/W berlogika high “1”, maka program akan melakukan pembacaan memori dari
NomorPIN PIN Keterangan
1 VSS GND2 VDD 5V3 Vo Kontras4 RS5 R/W Read / Write6 EN Enable7 DB0 Data 08 DB1 Data 19 DB2 Data 210 DB3 Data 311 DB4 Data 412 DB5 Data 513 DB6 Data 614 DB7 Data 715 - -16 - -
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
LCD. Sedangakan pada aplikasi umum pin R/W selalu diberi logika low “0”. Pada
akhirnya, bus data terdiri dari 4 atau 8 jalur (bergantung pada mode operasi yang dipilih
oleh user). Pada kasus bus data8 bit, jalur diacuhkan sebagai DB0 s/d DB7.
2.5. Potensiometer DigitalPotensiometer atau resistor digital menggunakan seri DS1669. DS1669
menawarkan dua paket IC standar yaitu 8-pin DIP 300-mil (gambar 2.9) dan 8-pin SOIC
208-mil (gambar 2.10). DS1669 dapat dikonfigurasikan untuk beroperasi menggunakan
pushbutton tunggal, pushbutton ganda atau sumber input dengan memvariasikan kondisi
daya.
Gambar 2.9. Konfigurasi Pin DS1669 8-pin DIP 300-mil [9]
Gambar 2.10. Konfigurasi Pin DS1669 8-pin SOIC 208-mil [9]
Deskripsi Pin DS1669 sebagai berikut [9] :
a. RH (High Terminal of Potensiometer)
b. RW ( Wiper Terminal of Potensiometer)
c. RL (Low Terminal of Potensiometer)
d. –V, +V (Voltage Inputs)
e. UC (Up Contact Input)
f. D (Digital Input)
g. DC (Down Contact Input)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
IC DS1669 dapat dikonfigurasi untuk beroperasi dari contact closure tunggal,
contact closure ganda, atau sumber digital input (D). Contact closure didefinisikan sebagai
transisi dari tingkat tinggi ke tingkat rendah pada input up contact (UC) atau down contact
(DC). Ketiga input kontrol aktif ketika dalam keadaan low dan tidak aktif ketika dalam
keadaan high.
IC DS1669 menafsirkan masukan lebar pulsa sebagai sarana untuk mengontrol
gerakan wiper. Sebuah masukan pulsa tunggal pada terminal masukan UC, DC, atau D
akan menyebabkan posisi wiper untuk bergerak 1/64 dari hambatan total. Sebuah transisi
dari tinggi ke rendah pada masukan tersebut dianggap sebagai awal activity pulse atau
contact closure. Sebuah pulsa tunggal harus lebih besar dari 1 ms tapi berlangsung tidak
lebih dari 1 detik.
Masukan pulsa yang berlangsung lebih lama dari 1 detik akan menyebabkan wiper
bergerak satu posisi setiap 100ms mengikuti waktu 1 detik terus awal. Total waktu untuk
mengatasi seluruh potensiometer menggunakan pulsa masukan terus menerus diberikan
oleh persamaan:
1 + 63 × 100 = 7.3 (2.8)
Operasi contact closure tunggal memungkinkan pengguna untuk mengontrol
gerakan wiper di kedua arah dari masukan pushbutton tunggal. Gambar 2.11 menyajikan
konfigurasi pushbutton tunggal. Masukan UC digunakan untuk kenaikan dan pengurangan
posisi wiper untuk mode operasi pushbutton tunggal. Masukan DC tidak memberikan
fungsi pada mode ini, tetapi harus terhubung ke sumber tegangan positif (Vcc).
Gambar 2.11. DS1669 dengan pushbutton tunggal [9]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
Arah awal gerakan wiper dalam operasi pushbutton tunggal ditentukan oleh
aktivitas sebelumnya. Arah awal gerakan wiper akan berlawanan dengan kegiatan
sebelumnya. Mengubah arah gerakan wiper dalam mode pushbutton tunggal dicapai
dengan memungkinkan masa tidak aktif pada masukan dari UC (lebih besar dari) 1 detik,
atau dengan menggerakkan wiper untuk akhir dari kisaran potensiometer. Hal ini akan
terjadi terlepas dari apakah input adalah pulsa terus menerus, urutan pulsa berulang atau
pulsa tunggal.
sumber digital input (D), dirancang untuk mikroprosesor atau aplikasi pengendali.
Masukan pengendali ini memanipulasi perangkat dengan cara yang sama seperti
konfigurasi pushbutton tunggal, mengendalikan pergerakan posisi wiper baik arah keatas
dan ke bawah. Penambahan fitur atas konfigurasi pushbutton tunggal adalah kemampuan
untuk kenaikan atau pengurangan posisi wiper pada tingkat yang lebih cepat.
Dalam mode pushbutton ganda, setiap arah dikendalikan oleh masukan up contact
(UC) atau down contact (DC), masing-masing. Tidak ada pernyataan menunggu yang
diperlukan untuk mengubah arah wiper dalam mode pushbutton ganda. Dalam mode
pushbutton ganda, sebagai posisi wiper mencapai potensiometer akhir, arah gerakan wiper
tidak akan berubah.
Gambar 2.12. DS1669 dengan pushbutton ganda [9]
Semua masukan UC, DC, dan D, secara internal pulled-up oleh hambatan 100kΩ.
Masukan UC dan DC secara internal debounced dan tidak memerlukan komponen
eksternal untuk pengkondisian sinyal masukan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
2.6. RectifierRectifier adalah sebuah rangkaian yang mengkonversi sebuah sinyal AC (arus
bolak-balik) menjadi sinyal DC (arus searah).
Gambar 2.13. Rangkaian Penyearah Gelombang Penuh
= √2 (2.9)
= − (2 ∙ ) (2.10)
2.7. FilterFilter dalam rangkaian penyearah digunakan untuk memperkecil tegangan ripple,
sehingga dapat diperoleh tegangan keluaran yang lebih rata, dengan memanfaatkan proses
pengisian dan pengosongan muatan kapasitor [10].
Penyearah gelombang penuh tapis kapasitor diperoleh dengan menghubungkan
parallel kapasitor beban dari rangkaian seperti pada gambar 2.14. Bentuk gelombang
tegangan keluaran terlihat pada gambar 2.15.
Gambar 2.14. Rangkaian penyarah gelombang penuh
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
Gambar 2.15. Bentuk gelombang penyearah gelombang penuh
Bila tegangan pengosongan kapasitor total dinyatakan dengan Vr, maka tegangan
keluaran dc [11] adalah:
= − 2 (2.11)
dimana:
= Tegangan input regulator (Vi-Vo = 5V) [12]
= Tegangan puncak
= Tegangan ripple
maka Vr adalah:
= 2 ∙ ∙ ∙ (2.12)
dimana:
= Arus maksimal keluaran (2A)
= Frekuensi
= Kapasitor filter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
2.8. IC RegulatorRegulator tegangan variabel merupakan regulator yang memiliki tegangan output
dapat diubah-ubah sesuai kebutuhan. Rangkaian regulator tegangan variabel saat ini telah
tersedia dalam bentuk chip IC regulator tegangan variabel 3-pin. IC LM317 merupakan
chip IC regulator tegangan variabel untuk tegangan DC positif.
Gambar 2.16. Rangkaian internal LM317 [12]
Fungsi bagian pada regulator tegangan positif LM317 [13] seperti berikut:
Voltage reference adalah jalur atau bagian yang berfungsi untuk memberikan
tegangan referensi dari kontrol tegangan output pada LM317. Input tegangan
referensi diambil dari rangkaian pembagi tegangan variabel, R1 dan R2 pada
rangkaian gambar 2.17.
Komparator berfungsi sebagai pembanding antar tegangan output dan tegangan
referensi, dimana besarnya tegangan output dapat dihitung dari persamaan 2.7.
Circuit protection adalah rangkaian pelindung IC LM317 dari terjadinya arus
korsleting.
Power regulator adalah rangkaian darlington transistor NPN yang berfungsi
untuk memperkuat arus output regulator tegangan variabel LM317.
IC regulator variabel di aplikasikan pada rangkaian dasar seperti gambar 2.17
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
Gambar 2.17. Rangkaian dasar regulator LM317 [12]
= 1.25 · 1 + + · (2.13)
Cin diperlukan ketika regulator adalah lokasi jarak yang cukup dari filter catu daya.
Cout tidak diperlukan untuk stabilitas, namun itu tidak meningkatkan respon transien. Bila
Iadj adalah pengendali kurang dari 100uA, kesalahan yang berhubungan dengan istilah ini
diabaikan dalam sebagian besar aplikasi [12].
Gambar 2.18. Rangkaian Regulator 0-12V [14]
= 1 + + + ( + ) − (2.14)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
Rangakaian regulator pada gambar 2.18 merupakan rangkaian pengembangan yang
akan menghasilkan tegangan variabel keluaran berawal dari 0V.
2.9. Penguat ArusTransistor berfungsi sebagai penguat selain sebagai saklar. Prinsip yang digunakan
dalam transistor sebagai penguat adalah arus kecil pada basis digunakan untuk mengontrol
arus yang lebih besar yang diberikan ke kolektor melewati transistor tersebut. Fungsi dari
transisitor hanya sebagai penguat ketika arus basis akan berubah. Perubahan arus kecil
pada basis mengontrol inilah yang dinamakan dengan perubahan besar pada arus yang
mengalir dari kolektor ke emitter. Kelebihan dari transistor penguat tidak hanya dapat
menguatkan sinyal tetapi transistor ini juga bisa digunakan sebagai penguat arus, penguat
tegangan dan penguat daya.
Rangkaian darlington adalah rangkaian elektronika yang terdiri dari sepasang
bipolar (dwikutub) yang tersambung secara tandem (seri). Sambungan seri dipakai untuk
mendapatkan penguatan (gain) yang tinggi karena hasil penguatan pada transistor yang
pertama akan dikuatkan lebih lanjut oleh transistor kedua. Keuntungan dari rangkaian
darlington adalah penggunaan ruang yang lebih kecil dari pada rangkain dua transistor
biasa dengan bentuk konfigurasi yang sama. Penguatan arus listrik atau gain dari
rangkaian transistor darlington dituliskan dengan notasi β atau hfe.
Gambar 2.19. Transistor Darlington
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
Gambar 2.20. Konfigurasi Transistor Darlington [10]
− + − + = 0 (2.15)
Mensubtitusikan persamaan: = ( + 1) (2.16)
Maka persamaan IB: = ++ ( + 1) (2.17)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
BAB III
RANCANGAN PENELITIAN
3.1 Perancangan Sistem Secara Keseluruhan
Gambar 3.1 Diagram blok sistem
Diagram blok sistem penelitian pada gambar 3.1 menunjukkan urutan cara kerja
sistem secara keseluruhan. Sistem ini terdiri atas beberapa bagian yaitu:
a. Arus bolak-balik (ac) sebagai sumber masukan utama (PLN 220V).
b. Transformator berfungsi untuk menurunkan level tegangan AC.
c. Rectifier berfungsi untuk mengubah tegangan bolak-balik (AC) menjadi
tegangan searah (DC).
d. Filter berfungsi perata (penghalus) arus DC.
e. Regulator berfungsi untuk memperoleh tegangan DC yang diharapkan.
f. Current Booster berfungsi sebagai penguat arus.
g. Keypad berfungsi untuk memasukkan tegangan.
h. Mikrokontroler berfungsi memproses sistem.
i. LCD sebagai penampil.
AC Transformator Rectifier Filter Regulator Beban
Mikrokontroler LCDKeypadPotensiometerDigital
CurrentBooster
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
j. Potensiometerdigital berfungsi untuk mengatur tegangan yang diinginkan.
k. Beban berupa beban resistif.
Nilai tegangan yang diinginkan oleh user akan dimasukkan melalui keypad dan
ditampilkan melalui LCD. Data tersebut akan diproses oleh mikrokontroler ATmega8535
yang melalui potensiometer digital yang digunakan pada regulator akan mengeluarkan
tegangan keluaran. Hasil tesebut akan dibandingkan kembali melalui mikrokontroler
ATmega8535 untuk membandingkan tegangan yang diinginkan dan dihasilkan. Apabila
tidak sama maka akan diproses kembali oleh mikrokontroler agar sama dengan nilai
tegangan yang diharapkan.
3.2 Perancangan Perangkat Keras3.2.1 Perancangan Rangkaian Sistem Minimum Mikrokontroler ATmega8535
Rangkaian sistem minimum berfungsi sebagai I/O untuk mengolah data dari keypad
dan mengontrol potensiometer digital pada regulator variabel. Mikrokontroler
membutuhkan sistem minimum yang terdiri dari rangkaian eksternal yaitu rangkaian
osilator dan rangkaian reset.
Rangkaian osilator ditunjukkan pada gambar 3.2. Perancangan rangkaian osilator
menggunakan kristal dengan frekuensi 12Mhz dan menggunakan kapasitor 22pF
(datasheet) pada pin XTAL1 dan XTAL2 di mikrokontroler.
Gambar 3.2. Rangkaian osilator ATmega8535 [5]
Gambar 3.3 menunjukkan rangkaian reset mikrokontroler ATmega8535. Rangkaian
reset bertujuan untuk memaksa proses kerja pada mikrokontroler diulang dari awal. Jika
tombol reset ditekan, maka pin reset akan mendapat input logika rendah, sehingga
mikrokontroler akan mengulang proses eksekusi program dari awal. Pada perancangan
rangkaian reset digunakan resistor sebesar 10kΩ dan kapasitor sebesar 10µF.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
Gambar 3.3. Rangkaian reset ATmega8535 [5]
Perancangan pengunaan port sebagai input dan output pada mikrokontroler
disesuaikan dengan kebutuhan. Port yang akan digunakan adalah portA, portB, portC dan
portD. PortB digunakan sebagai port input dari keypad. PortD.0, portD.1, portD.2 dan
portD.3 digunakan sebagai port data, sedangkan portD.4, portD.5 dan portD.6 digunakan
sebagai port pengatur interface LCD. Pada portA.0 digunakan sebagai port potensiometer
digital. Tabel 3.1 menunjukkan pengunaan port-port yang akan digunakan pada
mikrokontroler ATmega8535.
Tabel 3.1. Penggunaan port-port pada mikrokontroler
No Nama Port Keterangan1 PortA.0 UC PD_12 PortA.3 ADC_13 PortA.4 ADC_24 PortA.7 UD PD_15 PortB.0 K1 Keypad6 PortB.1 K2 Keypad7 PortB.2 K3 Keypad8 PortB.3 K4 Keypad9 PortB.4 B1 Keypad10 PortB.5 B2 Keypad11 PortB.6 B3 Keypad12 PortB.7 B4 Keypad13 PortC.0 UC PD_214 PortC.1 UD PD_215 PortD.0 DB 7 LCD16 PortD.1 DB 6 LCD17 PortD.2 DB 5 LCD18 PortD.3 DB 4 LCD19 PortD.4 Enable LCD20 PortD.5 R/W LCD21 PortD.6 RS LCD
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
Secara keseluruhan rangkaian sistem minimum mikrokontroler ATmega8535
ditunjukkan pada gambar 3.4.
Gambar 3.4. Rangkaian Sistem Minimum
3.2.2 Perancangan Rangkaian Penyearah
Rangkaian penyearah seperti pada gambar 2.15 menggunakan trafo 3A dengan
tegangan AC Vac sebesar 12V (Vrms) dan bridge rectifier. Diketahui arus beban Idc
sebesar 2A.
Pada persamaan 2.9 dapat dihitung nilai tegangan ac pada titik Vm seperti terlihat
pada gambar 2.16 seperti perhitungan:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
= √2= 12√2= 16,9Pada perhitungan nilai Vm dapat diperoleh sebesar 16,9V dari hasil tersebut dapat
diperoleh nilai tegangan DC sebelum difilter VL dengan persamaan:
= − (2 ∙ )= 16,9 − (2 ∙ 0,7)= 15,5Pada gambar 2.17 dan gambar 2.18, perhitungan nilai Vr dengan menentukan nilai
tegangan dc (Vdc) sebesar 15V agar tegangan keluaran dc sebesar 12Vdc dapat dihitung
melalui persamaan 2.11:
= − 2= −−2= 15 − 15,5−2= 0,25Perhitungan kapasitor filter dapat diperoleh dengan persamaan 2.12 dengan nilai Vr
sebesar 0,25V. Arus dc (Idc) dalam miliampere dan filter kapasitor (C) dalam microfarad.
= 2 ∙ ∙= 2 ∙ ∙= 20002 ∙ 60 ∙ 0,25= 66,7
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
Pada perhitungan nilai minimal C diperoleh sebesar 66,7uF, nilai tesebut tidak
terdapat dipasaran sehingga digunakan nilai kapasitor sebesar 1000uF.
= × 100%= 0,2515 × 100%= 1,7%
Pemilihan nilai C sebesar 1000uF akan berdampak memperkecil ripple seperti
persamaan: = 2 ∙ ∙= 20002 ∙ 60 ∙ 1000= 0,017maka ripple menjadi:
= × 100%= 0,01715 × 100%= 0,11%
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
3.2.3 Perancangan Rangkaian Regulator
Gambar 3.6. Rangkaian Regulator 0-12V [14]
Rangkaian regulator pada gambar 3.6 didisain untuk menghasilkan tegangan
variabel keluaran 0V hingga 24V. Untuk membuatnya menjadi regulator tegangan variable
resistor R2 diganti dengan potensiometer digital dengan nilai resistansi sebesar 10kΩ.
Perhitungan nilai resistor R1 dapat diperoleh dengan persamaan 2.14 dimana telah
diketahui nilai tegangan referensi Vref sebesar 1,25V, arus adjustable Iadj sebesar 46uF,
dan tegangan keluaran Vo sebesar 24V serta nilai yang sudah ditentukan untuk VEE sebesar
-5V dan resistor R3 sebesar 680Ω.
= 1 + + + ( + ) −= ( + )− − ( + ) +
= 1,25(10000 + 680)24 − 1,25 − 46 × 10 (10000 + 680) + (−5)= 773,5 ≈ 774
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
Pada perhitungan diperoleh nilai resistor R1 sebesar 773,5Ω atau dapat dibulatkan
menjadi 774Ω. Penentuan nilai kapasitor yang digunakan adalah Cin sebesar 0,1uF dan
Cout sebesar 1uF disesuaikan berdasarkan datasheet IC regulator LM317 [12].
3.2.4 Perancangan Rangkaian Current Booster
Gambar 3.7. Rangkaian Current Booster
Regulator LM317 hanya mampu mengalirkan arus maksimum sebesar 1,5A, maka
agar dapat mengalirkan arus sebesar 2A diperlukan rangkaian current booster seperti pada
gambar 3.7.
= 1,4= ∙== 1,42= 0,7
Pada perhitungan nilai resistor R diporeh sebesar 0,7Ω, dari hasil tersebut tidak
terdapat dipasaran sehingga digunakan nilai resisitor sebesar 1Ω yang terdapat dipasaran.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
3.2.5 Rangkaian LCD
Gambar 3.8. Rangkaian LCD [15]
LCD digunakan untuk menampilkan data output dari sensor PIR dan ultrasonik.
LCD yang digunakan adalah LCD 16x2 yang memiliki tipe LMB162A. LCD 16x2 bertipe
ini memungkinkan pemrogram untuk mengoperasikan komunikasi data secara 8 bit atau 4
bit. Dalam perancangan ini mode yang digunakan untuk menuliskan data ke LCD
digunakan sebanyak 4 bit (mode nibble). PortD.0, portD.1, portD.2 dan portD.3 digunakan
sebagai port data, sedangkan portD.4, portD.5 dan portD.6 digunakan sebagai port
pengatur interface LCD.
Berdasarkan datasheet tegangan kontras (Vcc LCD) maksimum sebesar 5VDC,
sehingga dalam perancangan digunakan sebuah resistor variabel sebesar 10KΩ yang
berfungsi untuk membatasi tegangan yang masuk ke pin Vcc LCD. Rangkaian LCD
dengan mode 4 bit ditunjukkan pada gambar 3.8.
3.2.6 Rangkaian Keypad
Keypad yang digunakan dengan matriks 4x4. Keypad berfungsi sebagai masukan
nilai tegangan yang diinginkan oleh user. Port yang digunakan pada mikrokontroler untuk
keypad adalah portB.0 sampai portB.7. PortB.0, portB.2, portB.4, dan portB.6 atau port
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
baris digunakan sebagai input, sedangkan portB.1, portB.3, portB.5, dan portB.7 atau port
kolom digunakan sebagai output.
Gambar 3.9. Rangkaian keypad 4x4
3.3 Perancangan Perangkat Lunak3.3.1 Diagram Alir Sistem
Diagram alir sistem ditunjukkan pada gambar 3.10. Program utama menunjukkan
proses perancangan secara keseluruhan. Program di mulai dengan melakukan inisialisasi
port-port mikrokontroler yang digunakan untuk proses yang akan terjadi. Kemudian user
memasukkan input tegangan melalui keypad dan keluaran tegangan akan tertampil di LCD,
kemudian program akan dilanjutkan ke bagian proses. Dari bagian proses, dihasilkan
tegangan keluaran yang akan dibandingkan dengan input tegangan apakah sudah sama.
Jika data tersebut belum sama akan kembali ke bagian proses penyetaraan dan jika sudah
sama akan dilanjutkan ke program berikutnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
Gambar 3.10. Diagram alir sistem
3.3.2 Diagram Alir Input Tegangan
Diagram alir input tegangan ditunjukan pada gambar 3.11. Subrutin ini akan
menjelaskan dimana input tegangan yang dimasukkan melalui tombol pada keypad dan
tertampil melalui LCD.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
Gambar 3.11. Diagram Alir Input Tegangan
3.3.3 Diagram Alir Proses
Diagram alir proses ditunjukkan pada gambar 3.12. Pada diagram alir ini data-data
akan diinisialisaikan kemudian data yang baru akan dibandingkan dengan data awal yang
diberikan dengan nilai 0. Jika data awal lebih kecil dari data baru maka increment data
awal. Jika data awal lebih besar dari data baru maka decrement data awal kemudian
potensiometer digital akan berputar kearah kebalikan. Selanjutnya data akan diberi pulsa
sebesar 100ms. Jika data awal sama dengan data baru maka program selesai. Jika data awal
belum sama dengan data baru maka kembali keawal program.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
Gambar 3.12. Diagram Alir Proses
3.3.4 Diagram Alir Proses Penyetaraan
Diagram alir proses penyetaraan ditunjukkan pada gambar 3.13. Diagram alir
proses penyetaraan ini merupakan proses menyamakan tegangan masukan dan tegangan
keluaran yang diharapkan. Pada diagram alir ini tegangan akan dikonversikan ke ADC.
Jika keluaran lebih kecil dari masukan maka kekurangan dari keluaran akan dijumlahkan.
Jika keluaran lebih besar dari masukan maka kelebihan dari keluaran akan dikurangkan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
Gambar 3.13. Diagram Alir Proses Penyetaraan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
BAB IV
HASIL DAN PEMBAHASAN
Bab ini membahas hasil dari alat catu daya digital berbasis mikrokontroler
ATmega8535. Hasil pengamatan yang dilakukan berupa tegangan keluaran yang berubah-
ubah baik yang tertampil maupun secara terukur dan tingkat keberhasilan alat secara
keseluruhan.
4.1 Hasil Implementasi AlatImplementasi dari alat catu daya digital berbasis mikrokontroler ATmega8535
tersusun atas rangkaian potensiometer digital, sistem minimum ATmega8535, rangkaian
LCD 16x2, rangkaian keypad, dan rangkaian regulator tegangan.
Rangkaian sistem minimum ATmega8535 ditunjukkan pada gambar 4.1. digunakan
untuk mengolah data input seperti keypad, dan pengaturan naik turunnya nilai tegangan pada
potensiometer digital. Rangkaian LCD 16x2 dan rangkaian keypad sebagai penampil informasi
ditunjukan pada Gambar 4.2.
Gambar 4.1. Rangkaian Sistem minimum ATmega8535
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
Gambar 4.2. Keypad 4x4 dan LCD 16x2
4.1.1 Rangkaian Potensiometer Digital
Rangkaian Potensiometer digital seperti ditunjukkan pada gambar 4.3. Pada
perancangan rangkaian potensiometer digital menggunakan regulator variable yaitu LM317,
namun implementasinya menggunakan operational amplifier yaitu LM741.
Alasan tidak menggunakan LM317 karena arus yang masuk ke potensiometer digital
sama dengan penjumlahan Iadj dan IR1 (Ipot.dig = Iadj + IR1). Saat nilai hambatan potensiometer
digital 10kΩ (nilai hambatan maksimal) tegangan antara Vout dan ground diperancangan
adalah 12V maka:
. = + .. = 12774 + 10000. = 1,1
Hasil perhitungan diperoleh arus potensiometer digital sebesar 1,1mA. Potensiometer digital
memiliki karakteristik arus maksimum sebesar 1mA, sehingga hasil perhitungan sudah
melebihi dari arus maksimum.
Saat nilai hambatan potensiometer digital 10Ω (nilai hambatan minimum) maka:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
. = 12774 + 10. = 15Hasil perhitungan diperoleh arus potensiometer digital sebesar 15mA. Arus tersebut sangat
besar dari arus karakteristik potensiometer digital sendiri, sehingga merusak potensiometer
digital.
Gambar 4.3. Rangkaian PCB Potensiometer Digital
Jika menggunakan LM741 potensiometer digital difungsikan sebagai pembagi
tegangan. Berdasarkan datasheet diperoleh bahwa beda tegangan maksimum antara RH dan
RL sebesar 8V maka diperlukan penguat menggunakan LM741 agar output yang dihasilkan
sebesar 12V. Karakteristik Output dari LM741 kurang lebih sebesar 12V. Pada
implementasi output yang dihasilkan kurang dari 12V, untuk memperoleh output tegangan
yang diinginkan akan dibuffer dengan transistor yang diregulasikan dengan operational
amplifier seperti ditunjukkan pada gambar 4.4.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
Gambar 4.4 Rangkaian Potensiometer Digital
4.1.2 Rangkaian Regulator +15 Volt dan -15 Volt
Rangkaian regulator 15 volt dan -15 volt ditunjukkan pada gambar 4.5. Tegangan
keluaran rangkaian regulator dilakukan dengan cara mengukur tegangan keluaran
menggunakan multimeter. Tabel 4.1. menunjukkan hasil pengujian tegangan keluaran
regulator.
Tabel 4.1. Hasil Pengujian tegangan keluaran regulator +15 Volt dan -15 Volt
Regulator Tegangan Keluaran (Volt) Error (Volt)+15 Volt +15,02 0,02-15 Volt -15,30 0,30
Berdasarkan tabel 4.1. hasil pengukuran tegangan keluaran rangkaian regulator +15
volt dan -15 volt akan dipergunakan sebagai sumber operational amplifier. Beda tegangan
antara Vcc dan Vee operational amplifier maksimum 15 volt sehingga untuk menurunkan
tegangan menggunakan dioda 5 A, tegangan yang dihasilkan seperti tabel 4.2.
Penguat LM741 Buffer
Potensiometer Digital
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
Tabel 4.2. Hasil Penurunan tegangan keluaran regulator +15 Volt dan -15 Volt
Regulator Tegangan Keluaran (Volt) Error (Volt)+15 Volt +14,32 0,68-15 Volt -14,68 0,32
Gambar 4.5. Rangkaian Regulator +15V dan -15V
4.2 Data Pengujian Dan PembahasanData pengujian dan pembahasan meliputi tegangan keluaran tanpa beban yang
tertampil maupun secara terukur menggunakan multimeter dan arus keluaran saat berbeban
secara terukur menggunakan multimeter. Beban yang digunakan adalah beban resistif.
4.2.1 Pengujian Tegangan Keluaran Tanpa beban
Pengujian dilakukan dengan user memasukan nilai tegangan melalui keypad dan
hasil tegangan akan tertampil pada LCD dan di ukur menggunakan multimeter. Tabel 4.3
merupakan hasil pengujian tanpa beban.
Hasil pengujian dapat dihitung nilai error menggunakan rumus berikut:
= − × 100%
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
Tabel 4.3. Hasil Pengujian Tanpa beban
No Masukan (V) Tampilan (V) Terukur (V) Error (%)1 0.0 0.0 0.0 0.02 0.1 0.1 0.1 0.03 0.2 0.2 0.2 0.04 0.3 0.3 0.2 33.35 0.4 0.4 0.4 0.06 0.5 0.5 0.5 0.07 0.6 0.6 0.6 0.08 0.7 0.7 0.7 0.09 0.8 0.8 0.8 0.010 0.9 0.9 0.9 0.011 1.0 1.0 1.0 0.012 1.1 1.1 1.1 0.013 1.2 1.2 1.2 0.014 1.3 1.3 1.3 0.015 1.4 1.4 1.4 0.016 1.5 1.5 1.5 0.017 1.6 1.6 1.6 0.018 1.7 1.7 1.7 0.019 1.8 1.8 1.8 0.020 1.9 1.9 1.9 0.021 2.0 2.0 2.0 0.022 2.1 2.1 2.1 0.023 2.2 2.2 2.2 0.024 2.3 2.3 2.3 0.025 2.4 2.4 2.4 0.026 2.5 2.5 2.5 0.027 2.6 2.6 2.6 0.028 2.7 2.7 2.7 0.029 2.8 2.8 2.8 0.030 2.9 2.9 2.9 0.031 3.0 3.0 3.0 0.032 3.1 3.1 3.1 0.033 3.2 3.2 3.2 0.034 3.3 3.3 3.3 0.035 3.4 3.4 3.4 0.036 3.5 3.5 3.5 0.037 3.6 3.6 3.6 0.038 3.7 3.7 3.7 0.0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
No Masukan (V) Tampilan (V) Terukur (V) Error (%)39 3.8 3.8 3.8 0.040 3.9 3.9 3.9 0.041 4.0 4.0 3.9 2.542 4.1 4.1 4.0 2.443 4.2 4.2 4.1 2.444 4.3 4.3 4.2 2.345 4.4 4.4 4.3 2.346 4.5 4.5 4.4 2.247 4.6 4.6 4.5 2.248 4.7 4.7 4.6 2.149 4.8 4.8 4.7 2.150 4.9 4.9 4.8 2.051 5.0 5.0 4.9 2.052 5.1 5.1 5.0 2.053 5.2 5.2 5.1 1.954 5.3 5.3 5.2 1.955 5.4 5.4 5.3 1.956 5.5 5.5 5.4 1.857 5.6 5.6 5.5 1.858 5.7 5.7 5.7 0.059 5.8 5.8 5.7 1.760 5.9 5.9 5.8 1.761 6.0 6.0 5.9 1.762 6.1 6.1 6.0 1.663 6.2 6.2 6.1 1.664 6.3 6.3 6.3 0.065 6.4 6.4 6.3 1.666 6.5 6.5 6.4 1.567 6.6 6.6 6.5 1.568 6.7 6.7 6.6 1.569 6.8 6.8 6.7 1.570 6.9 6.9 6.8 1.471 7.0 7.0 6.9 1.472 7.1 7.1 7.0 1.473 7.2 7.2 7.1 1.474 7.3 7.3 7.2 1.475 7.4 7.4 7.3 1.476 7.5 7.5 7.4 1.377 7.6 7.6 7.5 1.378 7.7 7.7 7.6 1.3
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
No Masukan (V) Tampilan (V) Terukur (V) Error (%)79 7.8 7.8 7.7 1.380 7.9 7.9 7.8 1.381 8.0 8.0 7.9 1.382 8.1 8.1 8.0 1.283 8.2 8.2 8.1 1.284 8.3 8.3 8.2 1.285 8.4 8.4 8.4 0.086 8.5 8.5 8.4 1.287 8.6 8.6 8.5 1.288 8.7 8.7 8.7 0.089 8.8 8.8 8.7 1.190 8.9 8.9 8.8 1.191 9.0 9.0 8.9 1.192 9.1 9.1 9.0 1.193 9.2 9.2 9.1 1.194 9.3 9.3 9.1 2.295 9.4 9.4 9.2 2.196 9.5 9.5 9.3 2.197 9.6 9.6 9.4 2.198 9.7 9.7 9.5 2.199 9.8 9.8 9.6 2.0100 9.9 9.9 9.7 2.0101 10.0 10.0 9.9 1.0102 10.1 10.1 9.9 2.0103 10.2 10.2 10.0 2.0104 10.3 10.3 10.1 1.9105 10.4 10.4 10.2 1.9106 10.5 10.5 10.4 1.0107 10.6 10.6 10.5 0.9108 10.7 10.7 10.6 0.9109 10.8 10.8 10.7 0.9110 10.9 10.9 10.8 0.9111 11.0 11.0 10.9 0.9112 11.1 11.1 11.1 0.0113 11.2 11.2 11.2 0.0114 11.3 11.3 11.2 0.9115 11.4 11.4 11.3 0.9116 11.5 11.5 11.4 0.9117 11.6 11.6 11.6 0.0118 11.7 11.7 11.6 0.9
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
No Masukan (V) Tampilan (V) Terukur (V) Error (%)119 11.8 11.8 11.7 0.8120 11.9 11.9 11.9 0.0121 12.0 12.0 11.9 0.8
Jumlah Error (%) 146.9Rata-Rata Error (%) 1.2
Hasil perhitungan dari rumus error di atas dapat diketahui hasil Jumlah error
sebesar 146,9 % dan jumlah data sebanyak 121 data.
= ∑ 121= 146,9%121= 1,2%Hasil perhitungan diperoleh error data secara keseluruhan sebesar 1,2%.
4.2.2 Pengujian Keluaran Berbeban
Hasil pengujian keluaran arus berbeban ditunjukkan pada tabel 4.4 diperoleh error
arus pada beban 44 Ohm sebesar 18,9% dan pada beban 22 Ohm sebesar 35,2%. Hasil
perhitungan di atas berdasarkan rumus:
(%) = ℎ −ℎ × 100ℎ =
maka
(%) = ℎ12
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
Tabel 4.4 Hasil Pengujian Arus berbeban
No TeganganInput (V)
Arus Terukur (mA) Arus Terhitung (mA) Error (%)44 Ohm 22Ohm 44 Ohm 22Ohm 44 Ohm 22Ohm
1 1 19.1 24.2 22.7 45.5 16.0 46.82 2 37.7 55.6 45.5 90.9 17.1 38.83 3 55.9 90.5 68.2 136.4 18.0 33.64 4 72.9 120.6 90.9 181.8 19.8 33.75 5 91.1 149.8 113.6 227.3 19.8 34.16 6 110.2 181.9 136.4 272.7 19.2 33.37 7 127.9 209.5 159.1 318.2 19.6 34.28 8 146.1 240.4 181.8 363.6 19.6 33.99 9 164.5 270.6 204.5 409.1 19.6 33.910 10 182.1 302.2 227.3 454.5 19.9 33.511 11 201.6 332.1 250.0 500.0 19.4 33.612 12 219.9 363.8 272.7 545.5 19.4 33.3
Jumlah Error 227.3 422.6Rata-Rata Error (%) 18.9 35.2
Hasil pengujian tegangan terukur ditunjukkan pada tabel 4.5 diperoleh error pada
beban 44 Ohm sebesar 0,5% dan error pada beban 22 Ohm sebesar 0,8%. Hasil perhitungan
di atas berdasarkan rumus:
(%) = − × 100ℎ =
(%) = ℎ12
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
Tabel 4.5 Hasil Pengujian Tegangan Berbeban
No Tegangan Input(V)
Tegangan terukur(V) Error (%)
44 Ohm 22 Ohm 44 Ohm 22 Ohm1 1 1.0 1.0 0.6 0.22 2 2.1 2.0 2.7 1.33 3 3.1 3.0 2.5 0.64 4 4.1 4.0 2.0 0.25 5 5.0 5.0 0.8 0.66 6 6.0 5.9 0.7 1.37 7 6.9 7.0 1.0 0.78 8 8.0 8.0 0.5 0.49 9 9.0 9.0 0.6 0.410 10 10.1 9.9 0.7 0.911 11 11.0 10.9 0.3 0.912 12 12.0 11.7 0.0 2.5
Jumlah Error 6.4 9.7Rata-Rata Error (%) 0.5 0.8
4.3 Analisa dan Pembahasan Perangkat LunakPerangkat lunak dibuat dengan menggunakan software compiler CodeVision AVR
dan bahasa pemrograman yang digunakan adalah bahasa C. Perangkat lunak terdiri dari
tampilan menu tegangan input dc, dan tegangan output dc.
4.2.3 Program Menu Utama
Program menu utama merupakan program yang akan di eksekusi ketika user
menekan tombol ON pada alat keseluruhan. Ketika alat dalam keadaan ON maka pada
LCD akan menampilkan menu utama seperti gambar 4.6 untuk user memilih menu dengan
menekan tombol # (menggeser menu pilihan kekanan) atau tombol * (menggeser menu
pilihan ke kiri) pada keypad. Menu pilihan yang tersedia yaitu tegangan DC, PWM 1Hz-
20KHz, Sweep, Voltmeter 0-12V, dan Manual Sweep ditunjukkan pada gambar 4.7. Setelah
user memilih salah satu menu yang telah tersedia maka user dapat menekan tombol A (ok)
sebagai tanda persetujuan melalui keypad.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
Gambar 4.6 Tampilan Menu utama
Gambar 4.7 Tampilan Menu pilihan
Berikut adalah penggalan program dari pemilihan menu:
void MenuProgram()int geser=0,tempGeser=4;int latch=1;char state=0;PORTA.0=1;PORTA.1=1;
PORTA.2=0;lcd_clear();lcd_gotoxy(0,1);lcd_putsf("*=<<,#=>>,A=ok!");while(1)
state=kbhit();if(state=='#')
geser++;delay_ms(300);
if(state=='*')
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
56
geser--;delay_ms(300);
if(state=='A')
………….goto endMenu;
4.3.2 Program Tegangan Masukan
Program memasukkan tegangan setelah user memilih tegangan DC pada menu
utama ditunjukkan pada gambar 4.8. Selanjutnya user dapat memasukkan nilai tegangan
ketika menekan tombol A pada keypad maka akan muncul tampilan pada LCD seperti pada
gambar 4.7. Berikut merupakan penggalan program memasukkan tegangan:
void getMasukkanTegangan()
………..teganganInput=teganganPuluhan*10+teganganSatuan+teganganBelakangKoma*0.1;teganganADC=teganganInput*82.986;delay_ms(200);
Gambar 4. 8 Tampilan Memasukkan Tegangan
Proses yang akan dilakukan setelah memasukan tegangan, data akan dikonversikan
ke ADC. Contoh user memasukkan tegangan sebesar 12,0V. Angka 1 merupakan nilai
tegangan puluhan, angka 2 merupakan nilai tegangan satuan, dan nilai 0 merupakan
tegangan belakang koma maka pada program akan dihitung sebagai berikut:
= ( ℎ × 10) + ( ) + ( × 0,1)= (1 × 10) + 2 + (0 × 0,1)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
57
= 12,0Hasil dari perhitungan tegangan input akan dikonversikan ke ADC dengan perhitungan
berikut:
= × 82.968= 12,0 × 82,968= 995,6164.3.3 Program Proses
Program proses merupakan program yang akan membaca tegangan dan
menghasilkan nilai tegangan ADC. Berikut penggalan program membaca tegangan:
void bacaTegangan(int channel)
int a;nilaiTeganganADC=0;for(a=0;a<64;a++)nilaiTeganganADC+=read_adc(channel);nilaiTeganganADC/=64;
Nilai tegangan ADC awal sebesar 0 atau tidak memiliki nilai. Nilai tegangan ADC
akan dijumlahkan dengan nilai tegangan ADC sebelumnya yang tidak diketahui pasti
nilainya sebanyak 64 kali. Hasil penjumlahan nilai tegangan ADC tersebut akan dibagi
dengan 64. Enam puluh empat merupakan nilai dari pembagian antara integer dan ADC
seperti berikut: 64 =64 = 655361024
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
58
diketahui integer jangkauan nilainya 0 sampai dengan 65535 dan ADC jangakauan nilainya
0 sampai dengan 1023.
4.3.4 Program penyetaraan
Program penyetaraan merupakan bagian program yang membandingkan tegangan
antara ADC pada potensiometer digital 1 dan potensiometer digital 2. Berikut merupakan
penggalan program proses penyetaraan:
while (1)while(aturTegangan==1)
bacaTegangan(3);if(nilaiTeganganADC<teganganADC-8)PORTA.2=0;PORTA.0=1;lcd_gotoxy(10,0); lcd_putsf(">>");…………..if(nilaiTeganganADC>teganganADC+8)PORTA.2=0;PORTA.7=1;lcd_gotoxy(10,0); lcd_putsf("<<");……………else
…………..while(1)
bacaTegangan(3);kembaliKeMenu();if(nilaiTeganganADC>teganganADC)PORTA.2=1;PORTC.1=1;lcd_gotoxy(10,0); lcd_putsf("< ");………….if(nilaiTeganganADC<teganganADC)PORTA.2=1;PORTC.0=1;lcd_gotoxy(10,0); lcd_putsf("> ");
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
59
…………if(nilaiTeganganADC==teganganADC)
PORTA.2=1;PORTC.1=1;lcd_gotoxy(10,0); lcd_putsf("ok!");delay_ms(DelayPotensio);if(nilaiTeganganADC==teganganADC)………….
tampilTegangan();
tampilTegangan();
Nilai tegangan ADC (Output) yang diperoleh dari hasil proses akan dibandingkan
dengan dengan tegangan ADC (input).
Jika tegangan input ADC lebih kecil dengan tegangan ADC dikurang dengan nilai
8 maka menaikan potensiometer digital dengan mengubah pin control UC_1 (up control
pada potensiometer digital 1) menjadi low selama antara antara 1 ms sampai dengan 100
ms pada program ini selama 5 ms dimana sudah bisa mengeser satu nilai.
Jika tegangan input ADC lebih besar dengan tegangan ADC ditambah dengan nilai
8 maka menurunkan potensiometer digital dengan mengubah pin control DC_1 (down
control pada potensiometer digital 1) menjadi high selama antara antara 1 ms sampai
dengan 100 ms pada program ini selama 5 ms dimana sudah bisa mengeser satu nilai.
Nilai ±8 diperoleh dari 1023/63 setiap geser naik atau turun loncat 16 nilai secara teoritis.
Selain proses pembandingan tidak berada seperti proses di atas maka akan
diproses pada fungsi else yaitu:
Jika tegangan input ADC lebih besar dengan tegangan ADC ditambah dengan nilai
2 maka menurunkan potensiometer digital dengan mengubah pin control UC_2 (up control
pada potensiometer digital 2) menjadi low selama antara 5 ms dimana sudah bisa mengeser
satu nilai.
Jika tegangan input ADC lebih besar dengan tegangan ADC ditambah dengan nilai
2 maka menurunkan potensiometer digital dengan mengubah pin control DC_2 (down
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
60
control pada potensiometer digital 2) menjadi high selama 5 ms dimana sudah bisa
mengeser satu nilai.
Jika nilai tegangan ADC sama dengan nilai tegangan ADC maka akan dilanjutkan
pada proses tampilkan tegangan.
Berikut penggalan program yang akan menampilkan nilai tegangan:
void tampilTegangan()
if(nilaiTeganganADCTemp!=nilaiTeganganADC)tegangan=(nilaiTeganganADC+1)*0.0120528;depanKoma=tegangan;belakangKoma=(tegangan-depanKoma)*10;lcd_clear();lcd_gotoxy(0,0);sprintf(temp,"ADC:%d",nilaiTeganganADC);lcd_puts(temp);lcd_gotoxy(0,1);sprintf(temp2,"voltage=%d.",depanKoma);lcd_puts(temp2);if(belakangKoma<0)belakangKoma*=-1;sprintf(temp3,"%d",belakangKoma);lcd_puts(temp3);nilaiTeganganADCTemp=nilaiTeganganADC;
Contoh perhitungan berikut menggunakan nilai tegangan ADC sebesar 995,616
maka perhitungan tegangan yang akan ditampilkan pada LCD sebagai berikut:
= ( + 1) × 0,0120528= (995,616 + 1) × 0,0120528= 12,012
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
61
Hasil dari perhitungan tegangan merupakan nilai yang berbilangan pecahan (float)
sehingga nilai tegangan tersebut dibagi 2 yaitu depan koma dan belakang koma yang
nilainya masing-masing akan berbilangan bulat (int) seperti berikut:
= = 12= ( − ) × 10= (12,012 − 12) × 10= 0,12
dalam tipe int bilangan yang kurang dari 1 akan dianggap sebagai 0 maka nilai belakang
koma menjadi 0, sehingga di LCD akan tertampil:
= = 995,616dan = = 12
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
62
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Dari hasil pengujian dan pengambilan data catu daya digital berbasis
mikrokontroler ATmega8535, dapat diambil kesimpulan:
1. Secara keseluruhan alat sudah bekerja dengan baik tegangan yang diinginkan
seseuai dengan tegangan keluaran, tegangan masukan sama dengan tegangan
keluaran secara tertampil.
2. Tingkat keberhasilan alat sebesar 98,8% dengan error sebesar 1,2% dari hasil
pengujian alat secara terukur.
5.2 Saran
Saran bagi pengembangan selanjutnya adalah:
Adanya keterbatasan jenis potensiometer digital dipasaran maka diperlukan
penelitian spesifikasi potensiometer digital yang tersedia terlebih dahulu sebelum
merancang rangkaian catu daya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
63
DAFTAR PUSTAKA
[1] http://dewey.petra.ac.id/jiunkpe_dg_19487_5.html, diakses tanggal 14 februari 2013
[2] http://110.138.206.53/bahanajar/modul_online/umum/POWER%20SUPPLY/index.ht
m, diakses tanggal 25 februari 2013
[3] ----. 2011. Datasheet Mikrokontroler ATmega8535. Atmel
[4] Bejo, Agus. 2008. C dan AVR Rahasia Kemudahan Bahasa C dalam Mikrokontroler
ATMega8535. 1st ed. GRAHA ILMU. Yogyakarta.
[5] Winoto, Ardi. 2008. Mikrokontroler AVR ATmega8/32/16/8535 dan
Pemrogramannya dengan Bahasa C pada WinAVR. INFORMATIKA. Bandung
[6] Heryanto, Ari M. P., Wisni Adi 2008. Pemograman Bahasa C untuk Mikrokontroler
ATMEGA8535. 1st ed. C. V ANDI OFFSET. Yogyakarta.
[7] http://depokinstruments.com/2011/07/27/teori-keypad-matriks-4x4-dan-cara-
penggunaannya/, Diakases tanggal 12 februari 2013
[8] http://depokinstruments.com/2010/02/08/teknik-pengendalian-lcd-karakter-i/, Diakses
tanggal 11 Februari 2013
[9] ----. Datasheet DS1669 Dallastat Electronic Digital Rheostat. Dallas Semiconductor
[10] Boylestad Robert, Louis Nashelsky. 1996. Electronic Devices and Circuit Theory
sixth edition. New Jersey : Prentice Hall.
[11] Widodo, Thomas Sri. 2002. Elektronika Dasar Dilengkapi dengan Contoh dan
latihan serta Kunci Jawaban. Salemba Teknika. Jakarta.
[12] ----. Datasheet LM317 3-Terminal Positive adjustable Regulator. FAIRCHILD
Semiconductor.
[13] http://elektronika-dasar.com/komponen/regulator-tegangan-variable-lm317/, diakses
tangggal 18 april 13
[14] ----. 2013. 3-TERMINAL ADJUSTABLE REGULATOR. TEXAS INSTRUMEN
[15] Andrianto, Heri. 2008. Pemrograman Mikrokontroler AVR ATMEGA16
menggunakan Bahasa C (CodeVision AVR). INFORMATIKA. Bandung
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L1
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L2
RANGKAIAN KESELURUHAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L3
LISTING PROGRAM/*****************************************************This program was produced by theCodeWizardAVR V2.05.0 ProfessionalAutomatic Program Generator© Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l.http://www.hpinfotech.com
Project :Version :Date : 2/4/2014Author :Company :Comments:
Chip type : ATmega8535Program type : ApplicationAVR Core Clock frequency: 12.000000 MHzMemory model : SmallExternal RAM size : 0Data Stack size : 128*****************************************************/
#include <mega8535.h>#include <stdio.h> //library standart input output// Alphanumeric LCD Module functions#asm
.equ __lcd_port=0x12 ;PORTC#endasm#include <lcd.h>#include <delay.h>
#define ADC_VREF_TYPE 0xC0
#define KEY_DIR DDRB //inisiasi port yang digunakan untuk membaca keypad#define KEY_IN PINB#define KEY_OUT PORTB#define BOUNCING 30#define DelayPotensio 5const char KEYTABLE[4][4] = 1,4,7,'*',2,5,8,'0',3,6,9,'#','A','B','C','D';//digunakan sebagai nilai yang dipanggil dalam matrik keypadinttimeLogicHighInt=0,timeLogicLowInt=0,i=0,PWMOn=0,sweepOn,step,voltmeter,manualChange,chargeCapacitor=1;//global variableunsigned int nilaiTeganganADC,nilaiTeganganADCTemp,aturTegangan=1,flipflop1;int depanKoma,belakangKoma;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L4
floattegangan,teganganInput,teganganAwal,teganganAkhir,teganganStep,teganganADC,frekwensi,periodeUs,PWM,teganganProbe1,teganganProbe2;long timeLogicHigh,timeLogicLow;charkarakter,teganganPuluhan,teganganSatuan,teganganBelakangKoma,temp[16],temp2[10],temp3[5],satuan[3],menu,frekwensiRatusan,frekwensiPuluhan,
frekwensiSatuan,frekwensiBelKoma,PWMRatusan,PWMPuluhan,PWMSatuan;eeprom unsigned intbacaTeganganKeluaranSweep[64],bacaTeganganMasukkanSweep[64];
void main(void);void konversiCharToLcd(char angka,int baris,int kolom) //digunakan untuk menampilkankarakter di lcd dari tipe data char
if(angka==1)lcd_gotoxy(baris,kolom);lcd_putsf("1");if(angka==2)lcd_gotoxy(baris,kolom);lcd_putsf("2");if(angka==3)lcd_gotoxy(baris,kolom);lcd_putsf("3");if(angka==4)lcd_gotoxy(baris,kolom);lcd_putsf("4");if(angka==5)lcd_gotoxy(baris,kolom);lcd_putsf("5");if(angka==6)lcd_gotoxy(baris,kolom);lcd_putsf("6");if(angka==7)lcd_gotoxy(baris,kolom);lcd_putsf("7");
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L5
if(angka==8)lcd_gotoxy(baris,kolom);lcd_putsf("8");if(angka==9)lcd_gotoxy(baris,kolom);lcd_putsf("9");if(angka==0)lcd_gotoxy(baris,kolom);lcd_putsf("0");if(angka==10)lcd_gotoxy(baris,kolom);lcd_putsf(" ");
void initKeypad() //inisiasi bagian pin keypad yang akan dijadikan input dan outputKEY_DIR=0x0F;KEY_OUT=0xF0;
char kbhit() //digunakan untuk mendeteksi adanya tombol keypad yang ditekan
unsigned char row, col, row_val, output;unsigned char delaytime;output=0;for(col=0;col<4;col++)
KEY_OUT=~(1<<col);for(delaytime=0x10; delaytime > 0; delaytime--) ;row_val=~((KEY_IN&0b11110000)>>4);for(row=0;row<4;row++)
if(row_val & (1<<row))output=KEYTABLE[row][col];
return output;
return output;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L6
char getKeypadTampilLcd(int baris,int kolom) //digunakan untuk meminta data karakterdari masukan keypad yang telah diolahunsigned char debcount; // debounce counterstatic unsigned char newkey=0;static unsigned char oldkey=0;int flipflop=0;
do if(flipflop==1)
konversiCharToLcd(0,baris,kolom);delay_ms(30);flipflop=0;
if(flipflop==0)
konversiCharToLcd(10,baris,kolom);delay_ms(30);flipflop=1;
newkey = kbhit();
while(newkey == oldkey);for(debcount=0; debcount < BOUNCING; debcount++)
newkey = kbhit();if(newkey == 0 || newkey != oldkey)
debcount=0;oldkey = newkey;
if(newkey=='0')newkey=0;konversiCharToLcd(newkey,baris,kolom);return(newkey);
// Read the AD conversion resultunsigned int read_adc(unsigned char adc_input)ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);// Delay needed for the stabilization of the ADC input voltagedelay_us(10);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L7
// Start the AD conversionADCSRA|=0x40;// Wait for the AD conversion to completewhile ((ADCSRA & 0x10)==0);ADCSRA|=0x10;return ADCW;
int angka(char nilai)
if(nilai!=1&&nilai!=2&&nilai!=3&&nilai!=4&&nilai!=5&&nilai!=6&&nilai!=7&&nilai!=8&&nilai!=9&&nilai!=0)
return 0;elsereturn 1;
void getMasukkanTegangan()
masukkanTeganganPuluhan:lcd_gotoxy(0,0);lcd_putsf("voltage:00.0volt");teganganPuluhan=getKeypadTampilLcd(8,0);if(teganganPuluhan!=0&&teganganPuluhan!=1)goto masukkanTeganganPuluhan;
masukkanTeganganSatuan:teganganSatuan=getKeypadTampilLcd(9,0);if(teganganPuluhan==0)
if(!angka(teganganSatuan))goto masukkanTeganganSatuan;
else
if(teganganSatuan!=0&&teganganSatuan!=1&&teganganSatuan!=2)goto masukkanTeganganSatuan;
lcd_putsf(".");masukkanTeganganBelakangKoma:teganganBelakangKoma=getKeypadTampilLcd(11,0);if(teganganPuluhan==1&&teganganSatuan==2)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L8
teganganBelakangKoma=0;lcd_gotoxy(11,0);lcd_putsf("0");goto teganganSelesai;
if(!angka(teganganBelakangKoma))goto masukkanTeganganBelakangKoma;teganganSelesai:teganganInput=teganganPuluhan*10+teganganSatuan+teganganBelakangKoma*0.1;teganganADC=teganganInput*82.968;delay_ms(200);
void getMasukkanPulsa()
getMasukkanTegangan();masukkanFrekwensiRatusan:frekwensiRatusan=getKeypadTampilLcd(5,1);if(!angka(frekwensiRatusan))
goto masukkanFrekwensiRatusan;masukkanFrekwensiPuluhan:frekwensiPuluhan=getKeypadTampilLcd(6,1);if(!angka(frekwensiPuluhan))
goto masukkanFrekwensiPuluhan;masukkanFrekwensiSatuan:frekwensiSatuan=getKeypadTampilLcd(7,1);if(!angka(frekwensiSatuan))
goto masukkanFrekwensiSatuan;masukkanFrekwensiBelKoma:frekwensiBelKoma=getKeypadTampilLcd(9,1);if(!angka(frekwensiBelKoma))
goto masukkanFrekwensiBelKoma;while(1)
if(kbhit()=='B')
lcd_gotoxy(10,1);satuan[0]=' ';
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L9
satuan[1]='H';satuan[2]='z';delay_ms(100);
frekwensi=frekwensiRatusan*100+frekwensiPuluhan*10+frekwensiSatuan+frekwensiBelKoma*0.1;
if(kbhit()=='C')
lcd_gotoxy(10,1);satuan[0]='K';satuan[1]='H';satuan[2]='z';delay_ms(100);
frekwensi=frekwensiRatusan*100000+frekwensiPuluhan*10000+frekwensiSatuan*1000+frekwensiBelKoma*100;
if(kbhit()=='A')if(frekwensi>20000)lcd_gotoxy(0,1);lcd_putsf("frek terlalu besar");delay_ms(1000);lcd_gotoxy(0,1);lcd_putsf("freq:000.0 hz ");goto masukkanFrekwensiRatusan;
periodeUs=1/frekwensi*1000000;goto selesaiInputFrekwensi;
if(flipflop1==1)lcd_gotoxy(10,1);lcd_puts(satuan);delay_ms(50);flipflop1=0;
if(flipflop1==0)lcd_gotoxy(10,1);lcd_puts(" ");delay_ms(50);flipflop1=1;
selesaiInputFrekwensi:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L10
lcd_clear();lcd_gotoxy(0,0);lcd_putsf("PWM:000 %");inputPWMRatusan:PWMRatusan=getKeypadTampilLcd(4,0);if(!angka(PWMRatusan))
goto inputPWMRatusan;inputPWMPuluhan:PWMPuluhan=getKeypadTampilLcd(5,0);if(!angka(PWMPuluhan))
goto inputPWMPuluhan;inputPWMSatuan:PWMSatuan=getKeypadTampilLcd(6,0);if(!angka(PWMSatuan))
goto inputPWMSatuan;PWM=PWMRatusan*100+PWMPuluhan*10+PWMSatuan;if(PWM>100)
goto inputPWMRatusan;timeLogicHigh=periodeUs*PWM*0.01;timeLogicLow=periodeUs-timeLogicHigh;timeLogicHighInt=timeLogicHigh;timeLogicLowInt=timeLogicLow;lcd_clear();lcd_gotoxy(0,0);lcd_putsf("PLEASE WAIT");PWMOn=1;
void getSweep()lcd_gotoxy(0,1);lcd_putsf("Start");getMasukkanTegangan();teganganAwal=teganganADC;
lcd_gotoxy(0,1);lcd_putsf("End ");getMasukkanTegangan();teganganAkhir=teganganADC;
lcd_gotoxy(0,1);lcd_putsf("Step ");
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L11
getMasukkanTegangan();teganganStep=teganganADC;teganganADC=teganganAwal;
void MenuProgram()int geser=0,tempGeser=4;char state=0;PORTA.0=1;PORTA.1=1;
PORTA.2=0;lcd_clear();lcd_gotoxy(0,1);lcd_putsf("*=<<,#=>>,A=ok!");while(1)
state=kbhit();if(state=='#')
geser++;delay_ms(300);
if(state=='*')
geser--;delay_ms(300);
if(state=='A')
delay_ms(300);if(geser==0)lcd_clear();getMasukkanTegangan();aturTegangan=1;PWMOn=0;sweepOn=0;voltmeter=0;manualChange=0;goto endMenu;
if(geser==1)lcd_clear();lcd_gotoxy(0,1);lcd_putsf("freq:000.0 hz");getMasukkanPulsa();
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L12
aturTegangan=1;PWMOn=1;sweepOn=0;voltmeter=0;manualChange=0;goto endMenu;
if(geser==2)lcd_clear();getSweep();aturTegangan=1;PWMOn=0;sweepOn=1;voltmeter=0;manualChange=0;goto endMenu;
if(geser==3)lcd_clear();aturTegangan=0;PWMOn=0;sweepOn=0;voltmeter=1;manualChange=0;goto endMenu;
if(geser==4)lcd_clear();aturTegangan=0;PWMOn=0;sweepOn=0;voltmeter=0;manualChange=1;goto endMenu;
if(geser>4)
geser=0;if(geser<0)
geser=4;
if(geser==0&&tempGeser!=geser)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L13
lcd_gotoxy(0,0);lcd_putsf("tegangan DC ");tempGeser=geser;
if(geser==1&&tempGeser!=geser)
lcd_gotoxy(0,0);lcd_putsf("PWM 1Hz-10Khz ");tempGeser=geser;
if(geser==2&&tempGeser!=geser)
lcd_gotoxy(0,0);lcd_putsf("Sweep ");tempGeser=geser;
if(geser==3&&tempGeser!=geser)
lcd_gotoxy(0,0);lcd_putsf("Voltmeter0-12V");tempGeser=geser;
if(geser==4&&tempGeser!=geser)
lcd_gotoxy(0,0);lcd_putsf("Manual Sweep ");tempGeser=geser;
endMenu:void tampilkanSweep()
float teganganMasukkanTampil[2],teganganKeluaranTampil[2];int
masukkanDepanKoma[2],masukkanBelakangKoma[2],keluaranDepanKoma[2],keluaranBelakangKoma[2],shift=0,tempShift=-1;
char state,buffMasukkan[2][8],buffKeluaran[2][8];while(1)
state=kbhit();if(state=='C')
shift++;if(state=='B')
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L14
shift--;
if(state=='D')
MenuProgram();if(shift<0)
shift=0;if(shift>=step-1)
shift=step-1;if(shift!=tempShift)
teganganKeluaranTampil[0]=(bacaTeganganKeluaranSweep[shift]+1)*0.0120528;
teganganKeluaranTampil[1]=(bacaTeganganKeluaranSweep[shift+1]+1)*0.0120528;keluaranDepanKoma[0]=teganganKeluaranTampil[0];keluaranBelakangKoma[0]=(teganganKeluaranTampil[0]-
keluaranDepanKoma[0])*100;keluaranDepanKoma[1]=teganganKeluaranTampil[1];keluaranBelakangKoma[1]=(teganganKeluaranTampil[1]-
keluaranDepanKoma[1])*100;
teganganMasukkanTampil[0]=(bacaTeganganMasukkanSweep[shift]+1)*0.0120528;
teganganMasukkanTampil[1]=(bacaTeganganMasukkanSweep[shift+1]+1)*0.0120528;masukkanDepanKoma[0]=teganganMasukkanTampil[0];masukkanBelakangKoma[0]=(teganganMasukkanTampil[0]-
masukkanDepanKoma[0])*100;masukkanDepanKoma[1]=teganganMasukkanTampil[1];masukkanBelakangKoma[1]=(teganganMasukkanTampil[1]-
masukkanDepanKoma[1])*100;
lcd_clear();sprintf(buffKeluaran[0],"%d ",shift);lcd_puts(buffKeluaran[0]);sprintf(buffKeluaran[0]," %d.",keluaranDepanKoma[0]);lcd_gotoxy(2,0);lcd_puts(buffKeluaran[0]);sprintf(buffKeluaran[0],"%dV|",keluaranBelakangKoma[0]);lcd_puts(buffKeluaran[0]);sprintf(buffMasukkan[0],"%d.",masukkanDepanKoma[0]);lcd_puts(buffMasukkan[0]);sprintf(buffMasukkan[0],"%dV",masukkanBelakangKoma[0]);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L15
lcd_puts(buffMasukkan[0]);lcd_gotoxy(0,1);
sprintf(buffKeluaran[1],"%d ",shift+1);lcd_puts(buffKeluaran[1]);sprintf(buffKeluaran[1]," %d.",keluaranDepanKoma[1]);lcd_gotoxy(2,1);lcd_puts(buffKeluaran[1]);sprintf(buffKeluaran[1],"%dV|",keluaranBelakangKoma[1]);lcd_puts(buffKeluaran[1]);sprintf(buffMasukkan[1],"%d.",masukkanDepanKoma[1]);lcd_puts(buffMasukkan[1]);sprintf(buffMasukkan[1],"%dV",masukkanBelakangKoma[1]);lcd_puts(buffMasukkan[1]);tempShift=shift;delay_ms(300);
void sweepProcess()
step=0;if(teganganAwal>=teganganAkhir)
lcd_gotoxy(0,1);lcd_putsf("turun");while(nilaiTeganganADC>=teganganAkhir&&step<=63)
nilaiTeganganADC=read_adc(3);bacaTeganganKeluaranSweep[step]=nilaiTeganganADC;bacaTeganganMasukkanSweep[step]=read_adc(4);
tegangan=(nilaiTeganganADC+1)*0.0120528;depanKoma=tegangan;belakangKoma=(tegangan-depanKoma)*10;lcd_clear();lcd_gotoxy(0,0);sprintf(temp,"ADC:%d",nilaiTeganganADC);lcd_puts(temp);lcd_gotoxy(0,1);sprintf(temp2,"voltage=%d.",depanKoma);lcd_puts(temp2);sprintf(temp3,"%d",belakangKoma);lcd_puts(temp3);sprintf(temp2,"%d",step);lcd_gotoxy(14,1);lcd_puts(temp2);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L16
PORTA.1=1;delay_ms(DelayPotensio);PORTA.1=0;delay_ms(DelayPotensio);PORTA.1=1;delay_ms(DelayPotensio);step++;
if(teganganAwal<teganganAkhir)
lcd_gotoxy(0,1);lcd_putsf("naik");while(nilaiTeganganADC<=teganganAkhir&&step<=63)
nilaiTeganganADC=read_adc(3);bacaTeganganKeluaranSweep[step]=nilaiTeganganADC;bacaTeganganMasukkanSweep[step]=read_adc(4);lcd_clear();
tegangan=(nilaiTeganganADC+1)*0.0120528;depanKoma=tegangan;belakangKoma=(tegangan-depanKoma)*10;lcd_gotoxy(0,0);sprintf(temp,"ADC:%d",nilaiTeganganADC);lcd_puts(temp);lcd_gotoxy(0,1);sprintf(temp2,"voltage=%d.",depanKoma);lcd_puts(temp2);sprintf(temp3,"%d",belakangKoma);lcd_puts(temp3);sprintf(temp2,"%d",step);lcd_gotoxy(14,1);lcd_puts(temp2);
PORTA.0=1;delay_ms(DelayPotensio);PORTA.0=0;delay_ms(DelayPotensio);PORTA.0=1;delay_ms(DelayPotensio);step++;
tampilkanSweep();
void bacaTegangan(int channel)
int a;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L17
nilaiTeganganADC=0;for(a=0;a<64;a++)nilaiTeganganADC+=read_adc(channel);nilaiTeganganADC/=64;
void tampilTegangan()
if(nilaiTeganganADCTemp!=nilaiTeganganADC)tegangan=(nilaiTeganganADC+1)*0.0120528;depanKoma=tegangan;belakangKoma=(tegangan-depanKoma)*10;lcd_clear();lcd_gotoxy(0,0);sprintf(temp,"ADC:%d",nilaiTeganganADC);lcd_puts(temp);lcd_gotoxy(0,1);sprintf(temp2,"voltage=%d.",depanKoma);lcd_puts(temp2);if(belakangKoma<0)belakangKoma*=-1;sprintf(temp3,"%d",belakangKoma);lcd_puts(temp3);nilaiTeganganADCTemp=nilaiTeganganADC;
void manual()nilaiTeganganADCTemp=~nilaiTeganganADC;PORTA.2=1;while(1)
bacaTegangan(3);menu=kbhit();switch(menu) //jika tombol 'D' ditekan maka akan memanggil subrutin
Pilih_Menu()dan program akan menampilkan menucase 'D': delay_ms(300);main();break;case 'B': lcd_gotoxy(10,0);
lcd_putsf(">>");delay_ms(50);PORTA.0=0;delay_ms(DelayPotensio);PORTA.0=1;delay_ms(DelayPotensio);lcd_gotoxy(10,0); lcd_putsf(" ");break;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L18
case 'C': lcd_gotoxy(10,0);lcd_putsf("<<");delay_ms(50);PORTA.7=0;delay_ms(DelayPotensio);PORTA.7=1;delay_ms(DelayPotensio);lcd_gotoxy(10,0); lcd_putsf(" ");break;
case 6: lcd_gotoxy(10,0); lcd_putsf(">");delay_ms(50);PORTC.0=0;delay_ms(DelayPotensio);PORTC.0=1;delay_ms(DelayPotensio);lcd_gotoxy(10,0); lcd_putsf(" ");break;
case 9: lcd_gotoxy(10,0); lcd_putsf("<");delay_ms(50);PORTC.1=0;delay_ms(DelayPotensio);PORTC.1=1;delay_ms(DelayPotensio);lcd_gotoxy(10,0); lcd_putsf(" ");break;
tampilTegangan();
void kembaliKeMenu()menu=kbhit();switch(menu) //jika tombol 'D' ditekan maka akan memanggil subrutin Pilih_Menu()danprogram akan menampilkan menu
case 'D': delay_ms(300);main();break;
void initPotensio()
int a;lcd_gotoxy(0,0);lcd_putsf(" adjust");lcd_gotoxy(0,1);for(a=0;a<64;a++)
PORTA.0=0;PORTC.0=0;if(a%2==0)
lcd_putsf(">");delay_ms(DelayPotensio);PORTA.0=1;PORTC.0=1;delay_ms(DelayPotensio);
lcd_clear();if(chargeCapacitor)
chargeCapacitor=0;lcd_gotoxy(0,0);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L19
lcd_putsf("charge capacitor");lcd_gotoxy(0,1);for(a=0;a<16;a++)
delay_ms(200);lcd_putsf("*");
lcd_clear();lcd_gotoxy(0,0);lcd_putsf(" wait");lcd_gotoxy(0,1);for(a=0;a<32;a++)if(a%4==0)
lcd_putsf("<");
PORTA.7=0;PORTC.1=0;delay_ms(DelayPotensio);PORTA.7=1;PORTC.1=1;delay_ms(DelayPotensio);
void main(void)// Timer/Counter 1 initialization// Clock source: System Clock// Clock value: 12000.000 kHz// Mode: Normal top=0xFFFF// OC1A output: Discon.// OC1B output: Discon.// Noise Canceler: On// Input Capture on Falling Edge// Timer1 Overflow Interrupt: On// Input Capture Interrupt: Off// Compare A Match Interrupt: Off// Compare B Match Interrupt: Off
ACSR=0x80;TCCR1B=0x81;// ADC initialization// ADC Clock frequency: 750.000 kHz// ADC Voltage Reference: AREF pin// ADC High Speed Mode: Off// ADC Auto Trigger Source: ADC Stopped
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L20
ADMUX=ADC_VREF_TYPE & 0xff;ADCSRA=0x84;SFIOR&=0xEF;DDRA=0b10000111;PORTA=0b10000011;DDRC=0b11111111;PORTC=0b11111111;lcd_init(16); //inisiasi baris yang ada di dalam lcdinitKeypad(); //menginisiasi keypad dengan memanggil libraryinitPotensio();MenuProgram();while (1)
while(aturTegangan==1)
bacaTegangan(3);if(nilaiTeganganADC<teganganADC-8)PORTA.2=0;PORTA.0=1;lcd_gotoxy(10,0); lcd_putsf(">>");delay_ms(50);PORTA.0=0;delay_ms(DelayPotensio);PORTA.0=1;delay_ms(DelayPotensio);
if(nilaiTeganganADC>teganganADC+8)PORTA.2=0;PORTA.7=1;lcd_gotoxy(10,0); lcd_putsf("<<");delay_ms(50);PORTA.7=0;delay_ms(DelayPotensio);PORTA.7=1;delay_ms(DelayPotensio);
elsePORTA.0=1;PORTA.1=1;
PORTA.7=1;delay_ms(50);
while(1)
bacaTegangan(3);kembaliKeMenu();
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L21
if(nilaiTeganganADC>teganganADC)PORTA.2=1;PORTC.1=1;lcd_gotoxy(10,0); lcd_putsf("< ");delay_ms(50);PORTC.1=0;delay_ms(DelayPotensio);PORTC.1=1;delay_ms(DelayPotensio);
if(nilaiTeganganADC<teganganADC)PORTA.2=1;PORTC.0=1;lcd_gotoxy(10,0); lcd_putsf("> ");delay_ms(50);PORTC.0=0;delay_ms(DelayPotensio);PORTC.0=1;delay_ms(DelayPotensio);if(nilaiTeganganADC==teganganADC)
PORTA.2=1;PORTC.1=1;lcd_gotoxy(10,0); lcd_putsf("ok!");delay_ms(DelayPotensio);if(nilaiTeganganADC==teganganADC)
if(PWMOn==1||sweepOn==1)
aturTegangan=0;
tampilTegangan();
tampilTegangan();
while(PWMOn==1)
PORTA.2=1;for(i=0;i<=timeLogicHighInt;i++)
kembaliKeMenu();
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L22
delay_us(1);PORTA.2=0;for(i=0;i<=timeLogicLow;i++)
kembaliKeMenu();delay_us(1);
while(sweepOn==1)
lcd_clear();lcd_putsf("Proses");sweepProcess();
while(voltmeter==1)
nilaiTeganganADC=read_adc(3);teganganProbe1=(nilaiTeganganADC+1)*0.0120528;depanKoma=teganganProbe1;belakangKoma=(teganganProbe1-depanKoma)*10;lcd_clear();lcd_gotoxy(0,0);sprintf(temp2,"V-probe1=%d.",depanKoma);lcd_puts(temp2);sprintf(temp3,"%dV",belakangKoma);lcd_puts(temp3);nilaiTeganganADC=read_adc(4);teganganProbe2=(nilaiTeganganADC+1)*0.0120528;depanKoma=teganganProbe2;belakangKoma=(teganganProbe2-depanKoma)*10;lcd_gotoxy(0,1);sprintf(temp2,"V-probe2=%d.",depanKoma);lcd_puts(temp2);sprintf(temp3,"%dV",belakangKoma);lcd_puts(temp3);delay_ms(100);kembaliKeMenu();
while(manualChange==1)
manual();
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Daftar Riwayat Hidup
IDENTITAS DIRINama : Maria Ratna PuspitaTempat dan Tanggal Lahir : Labuhan Batu (Sumatera Utara),19 Juli 1989Jenis Kelamin : PerempuanAgama : KatolikAlamat Rumah : Dsn. Kepuhsari, gang randu 22C,Maguwoharjo, Depok, Sleman,Yogyakarta.Telp./HP. : 085743559922Alamat e-mail : [email protected] PENDIDIKAN
2008-2013, Universitas Sanata Dharma, Teknik Elektro di Yogyakarta dengan IPK3,2 2005-2008, SMA Bruderan Purworejo di Purworejo 2002-2005, SMP Santa Theresia di Air Molek, Riau 1996-2002, SD Negeri di Bukit Lembah Subur, Riau
PENGALAMAN KERJA Prakek kerja di PT. Yogya Presisi Tehnikatama IndustriPeriode : Januari – Februari 2012Posisi : Staf EngineeringDeskripsi pekerjaan : Mendisain Produk Asisten praktikum Mikrokontroler DasarPeriode : Februari – Juni 2011
PENGALAMAN ORGANISASITahun Jabatan Jenis/NamaOrganisasi2009 Bendahara Himpunan Mahasiswa Jurusan Teknik ElektroUSD periode 20092009 Panitia - Seksi AlatPeraga Open House Paingan Universitas Sanata Dharma2009 Panitia - Bendahara Pekan Inisiasi Sains dan Teknologi 20092008 Peserta Pelatihan pendampingan Pengurus Baru HMJ danUKF Fakultas Sains da Teknologi 20082008 Panitia - Bendahara Open House Fakultas Sains dan Teknologi 2008
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Daftar Riwayat Hidup
KEAHLIAN Menguasai Microsoft Office Word, Power Point Menguasai software pemrograman, CodeVisionAVR, Pinacle Menguasai bahasa pemrograman C, Assembly Menguasai software disain elektronika Eagle Menguasai software simulasi elektronika Microcap
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI