FINAL PROJECT MEDICINE BOX TEMPERATURE CONTROL BASED ON DIGITAL PID Presented as Partial Fulfillment of the Requirements to Obtain the SARJANA TEKNIK Degree in Electrical Engineering
TUGAS AKHIR
PENGENDALI SUHU KOTAK OBAT
BERBASIS PID DIGITAL
Diajukan untuk memenuhi salah satu syarat
memperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
Fakultas Sains dan Teknilogi Universitas Sanata Dharma
Disusun oleh :
RICKY HENRY RAWUNG
NIM : 045114010
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
FINAL PROJECT
MEDICINE BOX TEMPERATURE CONTROL
BASED ON DIGITAL PID
Presented as Partial Fulfillment of the Requirements
to Obtain the SARJANA TEKNIK Degree
in Electrical Engineering
By :
RICKY HENRY RAWUNG
Student Number : 045114010
ELECTRICAL ENGINEERING DEPARTEMENT
SCIENCE AND TECHNOLOGY FACULTY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
HALAMAN 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 daftar pustaka, sebagaimana layaknya karya ilmiah.
Yogyakarta, 12 Juli 2008 Ricky Henry Rawung
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
Karya ini ku persembahan kepada :
- Kedua Orang Tua ku, yang telah memberikan keparcayaannya sehingga dapat melanjutkan studi di tanah perantauan “ Kota Pelajar “ Yogyakarta.
- Kedua kakak penulis, keluarganya dan ketiga keponakan, Liebert, Emelie, Azel.
- Mereka yang mau berusaha.
Semua berawal dari Kemauan yang berubah menjadi
Kemampuan dan menghasilkan
Kesempatan
HALAMAN PERNYATAAN PERSETUJUAN
PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma : Nama : Ricky Henry Rawung Nomor Mahasiswa : 0451140 10
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul :
PENGENDALI SUHU KOTAK OBAT BERBASIS PID DIGITAL
beserta perangkat yang diperlukan (bila ada). Dengan demilian 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. Dibuat di Yogyakarta Pada tanggal : 12 juni 2008 Yang menyatakan Ricky Henry Rawung
INTISARI
Vaksin adalah suatu produk biologis yang terbuat dari kuman, komponen kuman, atau racun kuman yang telah dilemahkan atau dimatikan yang berguna untuk merangsang timbulnya kekebalan tubuh seseorang. Bila vaksin diberikan kepada seseorang, akan menimbulkan kekebalan spesifik secara aktif terhadap penyakit tertentu. Sebagai produk biologis, vaksin memiliki karakteristik tertentu dan memerlukan penanganan yang khusus sejak diproduksi di pabrik hingga dipakai di unit pelayanan. Suhu yang baik untuk semua jenis vaksin adalah + 2 ºC sampai dengan + 8 ºC[1].
Untuk mempertahankan suhu tempat penyimpanan vaksin pada suhu + 2 ºC sampai dengan + 8 ºC biasanya menggunakan kulkas atau es. Penggunaan es sebagai sumber dingin kurang efektif karena sifat es mudah mencair. Sehingga pada penelitian ini akan meneliti sumber pendingin alternatif yang lebih stabil dari es yaitu termoelektrik. Komponen termoelektrik akan dikendalikan oleh mikrokontroler dengan penerapan metode kendali PID berdasar pada metode Ziegler-Nichols. Semakin rendah Suhu yang akan dicapai maka semakin lama waktu yang diperlukan, suhu terendah yang dapat dikendalikan adalah + 3 ºC.
Kata kunci : Kendali PID digital, suhu, vaksin, pendingin.
ABSTRACT
Vaccine is a biological product made from germs, component of germs, orernavated poison of germs to stimulate the immunity to certain diseases for its
use. If the vaccine given, there is a possibilty for a specific immunity to disease to
arise. Vaccine, as a biological product, has definite characteristics and needs
special treatment starting from the manufacture production to the service unit's
consumption. Thus, the temperature to maintain the vaccine condition is set + 2 to
- + 8 degree Celcius for best.
Furthermore, refrigerator or ice cube is used to maintain the temperature of
vaccine storage at + 2 to + 8 degree Celcius. The use of ice cube as the source is
in fact not effective since it can be diffused to liquid. Therefore, this research will
investigate the alternative freezing source which is more stabile than ice cube,
that is thermoelectric.The components of thermoelectric will be controlled by microcontroller. Then,
the application of PID controlling method is based on the Ziegler- Nichols
method. The lower the temperature, the longer the time is needed to reach the
target temperature. Moreover, the under control's lowest temperature is + 3
degree Celcius.Key words: digital PID control, temperature, vaccine, refregent.
KATA PENGANTAR
Syukur kepada Tuhan Yang Maha Esa karena penyertaan dan hikmatnya sehingga Penulis dapat menyelesaiakan penulisan karya tugas akhir ini. Penulis berharap agar karya tulis ini dapat berguna bagi perkembangan ilmu pengetahuan pada bidang kendali elektronika di Universitas Sanata Dharma pada khususnya dan di Indonesia pada umumnya.
Tugas akhir ini ditulis untuk memenuhi salah satu syarat dalam memperoleh gelar sarjana teknik pada program studi Teknik Elektro Universitas Sanata Dharma. Penulisan ini didasarkan pada hasil-hasil yang penulis peroleh pada saat perancangan alat, pembuatan alat, sampai pada hasil pengujian alat.
Penulis ingin mengucapkan terima kasih kepada beberapa pihak yang telah memberikan banyak bimbingan, bantuan, dan arahan sehingga tulisan ini dapat terselesaikan, diantaranya :
1. Tuhan Yang Maha Esa, untuk semua perlindungan dan hikmat pengetahuanNya.
2. Kedua Orang Tua Penulis, yang tak henti-hentinya memberi didikan tentang kehidupan yang tidak didapat di bangku kulia.
3. Kedua Dosen Pembimbing, Bapak Ir. Tjendro untuk Ide dan kepercayaannnya dan Ibu B. Wuri Harini, S.T, M.T yang tak bosan- bosan membimbing penulis hingga dapat berhasil, bahkan dalam mengikuti Lomba Cipta Elektroteknik Nasional 2008 yang di selenggarakan di Institut Teknologi Sepuluh November Surabaya dan meraih Juara I pada bidang Otomasi Industri.
4. Bapak dan Ibu dosen pengajar di Prodi Teknik Elektro Universitas Sanata Dharma untuk bimbingan dan pengajarannya selama penulis menuntut ilmu dan segenap Staf Sekretariat Jurusan Sains dan Teknologi yang membantu dalam bidang administrasi dan akademis.
5. Segenap SATPAM atas dukungannya pada keberhasilan tugas akhir ini, dan juga para laboran yang senantiasa menyediakan alat-alat yang
6. Teman tim pembuat pendingin vaksin Ricky Nelson dan Andre Arif.
Terima kasih untuk dukungan dan penghiburannya dikala bingung.
7. Teman-teman Teknik Elektro angkatan 2003, 2004, 2006 dan teman- teman Ekonomi Manajemen 2004, semoga kompak selalu.
8. Semua pihak yang terlibat yang tidak dapat penulis sebutkan satu demi satu, terima kasih atas dukungannya
9. Chaterina Intan Mulyono, Untuk waktu, perhatian, pengertian, dan kesabaran. Makase nge.
Penulis menyadari bahwa tulisan ini masi banyak terdapat kekurangan. Sehingga keritik dan saran dari berbagai pihak penulis terima untuk perkembagan selanjutnya. Semoga tulisan ini dapat bermanfaat bagi pembaca.
Yogyakarta, 12 Juli 2008 Penulis
Daftar Isi
Cover Bahasa Indonesia i
Cover Bahasa Inggris ii
Halaman Pengesahan oleh Pembimbing iii Halaman Pengesahan oleh Penguji iv
Halaman Pernyataan Keaslian Karya Tulis v Halaman Persembahan dan Motto hidup vi Halaman Pernyataan Persetujuan Publikasi Karya ilmiah vii Intisari viii Abstract ix Kata Pengantar x
Daftar Isi xii
Dafrat Gambar xv
Daftar Tabel xviii
Bab I Pendahuluan
1.1 Latar Belakang Masalah
1.6 Metide Penelitian
5
2.2 Mikrokontroler AVR AtMega8535
4
2.1 Komponen Termoelektrik (Element Pendingin)
4
3 Bab II Dasar Teori
2
1
1.5 Manfaat Penulisan
2
1.4 Tujuan Penulisan
2
1
2
1.2 Rumusan Masalah
1.3 Batasan Masalah
2.2.2 Interupsi
7
2.2.3 Timer/Counter
10
2.2.4 PWM (Pulsa Width Modulation) 12
2.2.5 ADC (Analog to Digital Converter) 13
2.3 Kendali PID Digital
16
2.4 Tunning Kontroler dengan Metode Ziegler-Nichols
18
2.5 Penguat Non-Inverting
20
2.6 Rangkaian Penjumlah
21
2.7 Piranti Masukan dan Keluaran
21
2.7.1 Tombol Keypad Matriks 4x3
21
2.7.2 Modul LCD seri M1632
22
2.8 Sensor Suhu
24
2.9 Dioda Zener
25
2.10 Respon Transien – Orde Dua
25 Bab III Perancangan
28
3.1 Perancangan set-point 29
3.2 Perancangan LCD
31
3.3 Perancangan sensor
32
3.3.1 Perancangan Tegangan Referensi pada ADC
33
3.4 Perancangan PWM dan Pengkondisi Sinyal
35
3.4.1 Perancangan Penguat Non-Inverting 1.4x
36
3.5 Perancangan Antarmuka Sistem Mikrokontroler
37
3.6 Perhitungan Koefisien PID dan Algoritma pada Sistem Kendali
43
3.7 Perancangan Model Kotak Pendingin
45
Bab IV Hasil dan Pembahasan
46
4.1 Model Tabung Pendingin
46
4.2 Prinsip dan Cara Kerja
49
4.2.1 Analisa Perangkat Keras
51
4.2.2 Analisa Perangkat Lunak
53
4.3 Data Percobaan
60
4.3.1 Set-Point = 8°C
61
4.3.2 Set-Point = 5°C
64
4.3.3 Set-Point = 2°C
69
4.3.4 Set-Point = 3°C
70 Bab V Kesimpulan dan Saran
75 A. Kesimpulan
75 B. Saran
75 Daftar Pustaka
76 Lampiran 77 Dimensi Tabung
77 Dimensi Kotak Pendingain
79 Gambar Rangkaian Lengkap
80 Kode Program
81 Data Sheet
95
Daftar Gambar
Gambar 2.1 Rangkaian sambungan PN pada termoelektrik5 Gambar 2.2 konfigurasi pin pada ATMega8535
7 Gambar 2.3 Komponen register MCUCR
9 Gambar 2.4 Komponen register MCUCSR
10 Gambar 2.5 Komponen register GICR
10 Gambar 2.6 Komponen register TCCRn
11 Gambar 2.7 Diagram pewaktuan Fast PWM
13 Gambar 2.8 Komponen register ADMUX
14 Gambar 2.9 Komponen register SFIOR
15 Gambar 2.10 Komponen register ADCSRA
15 Gambar 2.11 Blok diagram kendali digital
17 Gambar 2.12 Blok diagram kendali PID implementasi mixed
17 Gambar 2.13 Kurva respons tangga satuan yang memperlihatkan 25 % lonjakan maksimum
19 Gambar 2.14 Respon tangga satuan sistem
19 Gambar 2.15 Kurva Respons berbentuk S.
20 Gambar 2.16 Rangkain penguat Non Inverting 21
Gambar 2.17 Rangkain penjumlah inverting21 Gambar 2.18 Keyped Matriks
22 Gambar 2.19 Modul LCD
23 Gambar 2.20 Konfigurasi pin LM35
24 Gambar 2.21 LM 35 dengan Dumper R-C
24 Gambar 2.22 Karakteristik zener
25
Gambar 3.1 Blok diagram sistem model Kotak pendingin41 Gambar 3.14 grafik data open loop (data awal)
68 Gambar 4.9 Grafik set-point 2ºC pertama
63 Gambar 4.8 Grafik perbandingan data siang dan malam set-point 5ºC
52 Gambar 4.7 Grafik perbandingan data siang dan malam set-point 8ºC
49 Gambar 4.6 Tanggapan suhu sensor Lm35
48 Gambar 4.5 Driver arus
47 Gambar 4.4 Sumber tegangan
47 Gambar 4.3 PCB antarmuka
46 Gambar 4.2 Layout PCB sistem mikrokontroler
45 Gambar 4.1 Model tabung pendingin
43 Gambar 3.15 Diagram alir Kendali PID digital
40 Gambar 3.13 Diagram alir penentuan nilai masukan
28 Gambar 3.2 Rangkaian Push-Button
39 Gambar 3.12 Diagram alir Program sistem kendali
39 Gambar 3.11 Rangkaian sistem kendali
38 Gambar 3.10 Rangkaian reset
37 Gambar 3.9 Rangkaian osilator kristal
36 Gambar 3.8 Rangkaian penjumlah dan pembalik OpAmp
35 Gambar 3.7 Penguat Non-Inverting 1.4x
31 Gambar 3.6 Rangkaian pembagi tegangan dengan dioda zener
31 Gambar 3.5b Tampilan LCD saat proses berjalan
30 Gambar 3.5a Tampilan LCD saat set poin
30 Gambar 3.4 Diagram alir pengecekan set-poin
29 Gambar 3.3 Diagram alir pembacaan data melalui keypad matriks 4x3
69
Gambar 4.10 Grafik set-point 2ºC kedua70 Gambar 4.11 Gambar dalam tabung setelah percobaan dihentikan
71 Gambar 4.12 Grafik percobaan set-point 3ºC
72
Daftar Tabel
Tabel1.1 Standart suhu penyimpanan obat
1 Tabel 2.1 konfigurasi pengaturan untuk Port I/O
7 Tabel 2.2 Macam sumber Interupsi pada AVR ATMega8535
9 Tabel 2.3 Pengaturan kondisi terjadinya interupsi
9 Tabel 2.4 Konfigurasi Bit WGMn
11 Tabel 2.5 Penalaan paramater PID dengan metode kurva reaksi
20 Tabel 2.6 Perintah M1632
23 Tabel 3.1 Perbandingan perubahan suhu dengan tegangan
33 Tabel 4.1 Data pengukuran tegangan
51 Tabel 4.2 Perbandingan tanggapan suhu Lm35 dalam percobaan sensor
53 Tabel 4.3 Data pengukuran set-point 8ºC
61 Tabel 4.4 Perhitungan PID dan tanggapan PWM
65 Tabel 4.5 Nilai PID ketika nilai pengukuran kurang dari set-point
66 Tabel 4.6 Nilai PID ketika suhu telah stabil pada set-point
67 Tabel 4.7 Data pengukuran set-point 5ºC 67
Tabel 4.8 Data pengukuran set-point 3ºC 71Tabel 4.9 Data Perbandingan Waktu Stabil73 Tabel 4.10 Data perbandingan Mp pada set-point 8ºC, 5ºC, dan 3ºC setelah diberi beban
73
BAB I PENDAHULUAN
1.1 Latar Belakang Masalah
Banyak orang belum mengetahui tentang penyimpanan obat dengan benar, terutama terkait dengan suhu penyimpanan. Tabel 1.1 memperlihatkan standart suhu penyimpanan obat yang terdiri dari beberapa kategori berdasarkan ikatan farmasi Inggris, Eropa dan Amerika[1]. Dari tabel tersebut diketahui bahwa obat juga memerlukan perlakuan yang khusus, sehingga dalam penyimpanannya harus berada pada suhu tertentu. Biasanya untuk mendinginkan sesuatu orang cenderung menggunakan es, padahal es mudah mencair sehingga suhu dapat berubah.
Penelitian ini akan meneliti pengendali suhu obat dengan sumber pendingin selain es sehingga suhu dapat konstan. Objek penelitian dikhususkan pada satu jenis produk kesehatan yaitu vaksin. Vaksin yang telah dibuka harus tersimpan
o o
pada suhu dingin sekitar 2 C sampai 8 C.
Tabel1.1 Standart suhu penyimpanan obat
Keadaan Suhu
Dibawa titik beku -25°C to -10°C Tempat pendingin 2°C - 8°C Dingin 8°C - 15°C Suhu normal Suhu standart pada daerah kerja.27°C Didalam ruang terkontrol Pada umumnya 25°C Hangat 30°C dan 40° C Panas
≥ 40° C
1.2 Rumusan Masalah
Masalahnya adalah mendapatkan suhu dingin yang konstan dan tidak tergantung dengan es.
1.3 Batasan Masalah
Pada penelitian ini akan menggunakan rangkaian elektronika sebagai sumber suhu untuk menggantikan kebutuhan es sebagai pendingin.
Tingkat ketelitian suhu yang dapat diatur adalah 0.1° C. Sedangkan untuk mengendalikan suhu digunakan rangkaian sistem mikrokontroler sebagai pusat operasi.
Alat yang dihasilkan berupa model kotak pendingin dengan suhu dari model
o o
pendingin dapat berkisar antara 1 C sampai 25
C. Beban yang diujikan dalam percobaan ini adalah zat cair (air), karena model kotak obat dirancang untuk penyimpanan vaksin. Kendali suhu berdasar atas kendali PID digital dengan tunning PID menggunakan tunning Z-N (Ziegler-Nichols), menggunakan konfigurasi MIX PID.
1.4 Tujuan Penulisan
Untuk mengurangi ketergantungan penggunaan es pada pendingin karena es mudah mencair.
Dengan penerapan kendali PID maka suhu yang dihasilkan akan sama dengan suhu yang diinginkan.
1.5 Manfaat Penulisan
Penelitian ini memiliki beberapa manfaat yaitu :
1. Karena suhu yang stabil maka akan memperpanjang umur vaksin.
2. Kendali PID dapat diaplikasikan pada sistem kendali yang lain seperti kendali kecepatan motor dan kendali-kendali yang lain yang memerlukan tingkat ketepatan yang tinggi.
3. Dengan berbasis digital maka akan mempersingkat rangkaian kendali, karena untuk proses pengolahan datanya dapat berupa pengolahan data digital.
1.6 Metodologi Penelitian
Penelitian ini akan terbagi dua yaitu perancangan perangkat keras dan perancangan perangkat lunak. Dengan pembahasan mengacu pada blok diagram sistem kendali.
BAB II Dasar Teori Vaksin adalah suatu produk biologis yang terbuat dari kuman, komponen
kuman, atau racun kuman yang telah dilemahkan atau dimatikan yang berguna untuk merangsang timbulnya kekebalan tubuh seseorang. Bila vaksin diberikan kepada seseorang, akan menimbulkan kekebalan spesifik secara aktif terhadap penyakit tertentu.
Sebagai produk biologis, vaksin memiliki karakteristik tertentu dan memerlukan penanganan yang khusus sejak diproduksi di pabrik hingga dipakai di unit pelayanan. Suhu yang baik untuk semua jenis vaksin adalah + 2 ºC s/d + 8 ºC.[2] Sebagai dasar dari penetian ini, maka pada bab ini akan membahas : 1. Komponen termoelektrik.
2. Mikrokontroler.
3. Kendali Digital.
4. Tuning PID.
5. Penguat Non-inverting dengan OpAmp.
6. Piranti keluaran dan masukan.
7. Sensor suhu.
8. Dioda zener 2.1 Komponen Termoelektrik (Element Pendingin) [3]. Komponen ini berbentuk kotak yang terbuat dari keramik, berisi semikonduktor sambungan PN yang dirangkaikan secara seri. Seperti pada gambar 2.1
Fenomena termoelektrik merupakan sebuah fenomena perubahan sifat-sifat termodinamika menjadi sifat-sifat elektrik dan sebaliknya. Dua buah batang dari bahan logam yang berbeda disambungkan kedua ujungnya, sehingga membentuk sebuah rangkaian tertutup. Ketika salah satu ujung dipanaskan, maka pada rangkaian tertutup tersebut akan mengalir arus. Fenomena ini dinamakan efek Seebeck , karena ditemukan Thomas Seebeck pada tahun 1821.
Gambar 2.1 Rangkaian sambungan PN pada termoelektrikBegitu pula bila dilakukan hal yang sebaliknya yaitu pada rangkaian tertutup dari dua batang logam berbeda bahan yang disambungkan tersebut dialirkan arus listrik. Pada salah satu ujung sambungan akan menyerap kalor, sehingga menjadi hangat dan pada ujung sambungan lainnya akan melepaskan kalor. Fenomena ini ditemukan Jean Charles Athanase Peltier pada tahun 1834, kemudian dinamakan efek PeltierI.
2.2 Mikrokontroler AVR ATMega8535[4]
Mikrokontroler adalah suatu komponen semikonduktor yang di dalamnya sudah terdapat suatu sistem mikroprosesor seperti : ALU, ROM, RAM, dan Port I/O. Avr ATMega8535 memiliki arsitektur RISC (Reduced Instruction Set
Computing ) 8 bit. Semua instruksi dikemas dalam kode 16 bit dan sebagian besar
instruksi di eksekusi dalam satu siklus clock. Avr ATMega8535 memiliki 32
Fitur yang tersedia pada mikrokontroler ini sebagai berukut:
dengan susunan 32 register menempati alamat 0x0000 – 0x001F, kemudian dilanjutkan dengan 64 I/O register hingga alamat 0x005F dan sisanya ditempati SRAM sebesar 512 byte hingga alamat 0x025F. I/O register berisikan alamat – alamat untuk pengaturan fungsi dan fitur dari ATMega8535. sedangkan pada 32 register serbaguna terdapat tiga pasang alamat berukuran 16 bit yang dinamakan X (R26-R27), Y(R28-R29) dan Z (R30-R31), register ini biasanya digunakan sebagai pointer (penunjuk) alamat.
- Saluran I/O (input/output)sebanyak 32 buah saluran, yaitu PortA, PortB, PortC, PortD.
- ADC (Analog Digital Converter) 10 bit sebanyak delapan saluaran.
- Tiga buah Timer/Counter dengan kemampuan pembandingan
- Empat saluran PWM.
- CPU (Central Processing Unit) yang terdiri atas 32 buah register.
- SRAM sebesar 512 byte.
- Unit interupsi internal dan eksternal.
- EEPROM (Electrically Erasable Programmable Read Only Memory) sebesar 512 byte yang dapat diprogram saat operasi, antarmuka komparator analog.
- Port USART (Universal Syncronous and Asyncronous serial Receiver and Transmiter ) untuk komunikasi serial.
Miktrokontroler ini memiliki konfigurasi pin seperti gambar 2.2.
2.2.1 Port Input/Output
Port I/O pada mikrokontroler ATMega8535 dapat berfungsi sebagai masukan dan keluaran. Untuk mengatur fungsi port I/O sebagai masukan atau keluaran dilakukan pengaturan pada register DDRn (Data Direction Register), n merupakan port yang dipilih misalnya : port A maka DDRA ,seperti pada tabel
2.1. Tabel 2.1 konfigurasi pengaturan untuk Port I/O
DDR bit =1 DDR bit = 0
Port bit =1 Keluaran aktif tinggi Masukan aktif rendah
Port bit =0 Keluaran aktif rendah Masukan aktif tinggi
Gambar 2.2 konfigurasi pin pada ATMega85352.2.2 Interupsi
Interupsi adalah kondisi yang membuat CPU berhenti dari rutinitas yang sedang dikerjakan (program utama) untuk mengerjakan program lain (program interupsi). Mikrokontroler ini memiliki 21 sumber interupsi yang ditunjukkan
Untuk inisialisasi awal interupsi, perlu dituliskan terlebih dahulu vektor interupsi dari interupsi yang terdapat pada sistem. Vektor interupsi adalah nilai yang disimpan ke program counter pada saat terjadi interupsi sehingga program akan menuju ke alamat yang ditunjuk oleh program counter. Alamat dari tiap interupsi dapat dilihat pada tabel 2.2. Masing-masing alamat vektor memiliki alamat yang berdekatan, sehingga akan timbul masalah jika sebuah layanan interupsi yang panjang. Untuk menghindari hal ini maka ketika suatu interupsi aktif dan menunjuk pada vektor tertentu maka dari alamat vektor tersebut digunakan perintah agar memanggil fungsi yang terletak pada alamat yang lain. Setelah interupsi telah diinisialisasi, selanjutnya mengaktifkan bit I pada STATUS register (SREG) yang berarti mengaktifkan Global Interupsi.
Mikrokontroler ini memiliki tiga buah interupsi eksternal (INT0, INT1, INT2). Pengaturan keadaan untuk INT0 dan INT1 yang menyebabkan terjadinya interupsi terdapat pada register MCUCR (MCU Control Register). Sedangkan untuk INT2 terdapat pada MCUCSR (MCU Control and Status Register).
Fungsi tiap bit register MCUCR terdapat pada gambar 2.3 yaitu, ISC01 dan
ISC00 merupakan bit untuk mengatur kondisi terjadi interupsi pada INT0, sedangkan ISC10 dan ISC11 untuk mengatur interupsi INT1. Tabel 2.3 memperlihatkan konfigurasi dari bit ISC ( Interrupt Sense Control ) untuk setiap interupsi.
Tabel 2.2 Macam sumber Interupsi pada AVR ATMega8535Gambar 2.3 Komponen register MCUCRTabel 2.3 Pengaturan kondisi terjadinya interupsiGambar 2.4 memperlihatkan konfigurasi bit register MCUCSR, jika ISC2 berlogika 0, maka transisi dari 1 ke 0 (falling edge) pada INT2 menyebabkaninterupsi. Sebaliknya jika berlogika 1, maka transisi yang terjadi dari 0 ke 1 (rising edge).
Selanjutnya interupsi diaktifkan dengan memberi logika 1 pada register GICR (Global Interrupt Control Register) untuk interupsi yang diinginkan, dengan susunan register seperti pada gambar 2.5
Gambar 2.4 Komponen register MCUCSRGambar 2.5 Komponen register GICR2.2.3 Timer/Counter
Mikrokontroler ini menyediakan fasilitas pewaktuan yang diberi nama Timer/Counter sebanyak tiga buah, yaitu Timer/Counter 0 dan 2 yang terdiri dari 8 bit dan Timer/Counter 1 yang terdiri dari 16 bit.
Register yang digunakan oleh Timer/Counter adalah TCNTn sebagai register penyimpan nilai dari Timer/Counter. Regiater OCRn (Output Compare Register) merupakan register pembanding, jika nilai OCRn sama dengan TCNTn maka terjadi Compare Match. Peristiwa ini dapat menyebabkan keluaran pulsa yang berulang-ulang pada pin OCn (Output Compare). Pengaturan Timer/Counter 0,
(Timer/Counter Control Register). Konfigurasi dari register TCCRn dapat dilihat pada gambar 2.6
Gambar 2.6 Komponen register TCCRnFOCn (Force Output Compare) hanya aktif pada mode non-PWM, jika 1 maka akan memaksakan operasi compare match. FOCn tidak akan memicu terjadinya interupsi atau menolkan timer pada mode CTC. WGMn(1:0) (Waveform Generation Mode) berfungsi untuk mengendalikan kenaikan dari pencacah pada register TCNTn, menentukan sumber dari nilai maksimal (top) dari pencacah dan tipe timer yang akan digunakan. Konfigurasi dari bit WGMn(1:0) dapat di lihat pada tabel 2.4
COMn (1:0) (Compare Match Output Mode) berfungsi mengendalikan pin OCn. Jika kedua bit tersebut bernilai 0, maka OCn berfungsi sebagai pin biasa, apabila salah satu bit bernilai 1, maka fungsi dari OCn bergantung pada pengaturan bit WGMn.
Tabel 2.4 Konfigurasi Bit WGMn Mode WGMn1 WGMn0 Mode operasi TOP OCRn TOV0 Flage set on
0 0 0 Normal 0xFF Immediate MAX
1 0 1 Phase Correct PWM 0xFF TOP BOTTOM2 1 0 CTC OCR0 Immediate MAX
3 1 1 Fast PWM 0xFF TOP MAX
Pada mode CTC (WGMn1=1 WGMn0= 0) cacahan selalu meningkat, ketika mencapai nilai maksimum akan kembali ke nol lagi. Dalam operasai normal flag
timer/counter overflow (TVOn) akan aktif ketika terjadi overflow. Karena selalu mencacah naik, maka dapat digunakan sebagai pewaktu presisi. Cara kerja dari mode ini yaitu akan membandingkan antara OCRn sama dengan TCNTn, jika sama maka pencacahan timer dimulai dari awal lagi, persamaan perhitungan waktu tunda:
f OSC waktu _ tunda (2.1) = Pr escaler
Keterangan : f = Kristal yang digunakan (Hz). OSC
Prescaler = pembagi waktu presisi (liat datasheet).
Nilai dari register TCNTn diisni dengan nilai waktu_tunda. Ketika timer/counter diaktifkan TCNTn akan mencacah naik sebanyak waktu_tunda untuk mencapai nilai maksimal (0xFF) sesuai dengan waktu tundaan yang diinginkan.
2.2.4 PWM (Pulse Width Modulator)
Pulsa PWM adalah sederetan pulsa yang lebar pulsanya dapat diatur, karena lebar pulsa yang dihasilkan dapat diubah-ubah maka dapat difungsikan sebagai DAC (Digital Analog Conversion) dengan cara melewatkan keluaran tersebut pada sebuah rangkaian Shift and Hold. Fasilitas Timer/Counter dapat digunakan sebagai penghasil pulsa PWM. Pengaturan Timer/Counter 8 bit sebagai penghasil pulsa PWM dengan mode Fast PWM dengan mengubah bit WGMn (1:0) pada mode 3. Diagram pewaktuan dari mode ini dapat dilihat pada gambar 2.7. Mode ini mengacu pada satu kemiringan yang terjadi pada pewaktuan, pencacah akan mencacah dari nilai nol sampai 0xFF kemudian kembali dari awal lagi.
Gambar 2.7 Diagram pewaktuan Fast PWMPada mode Non-Inverting keluaran pembanding Pin OCn akan menjadi 0 jika nilai TCNTn sama dengan OCRn dan pin OCn akan menjadi 1 lagi setelah register TCNTn terjadi overflow.
Flag timer/counter overflow (TOVn) akan aktif saat cacahan mencapai nilai
maksimal, jika interupsi overflow diaktifkan, maka rutin penanganan interupsi dapat digunakan untuk mengubah nilai pembanding.
Keluaran frekuensi PWM pada mode Fast PWM dihitung menggunakan persamaan : f clk _ I / O f = ; N = Faktor prescale (1, 8, 64, 256, or 1024) (2.2) OCnPCPWM
N ⋅ 256
2.2.5 ADC (Analog to Digital Converter)
Pada mikrokontroler ini telah disediakan ADC internal dengan fitur : 1.
Resolusi 10-bit.
2.
0.5 LSB Integral Tidak Linier.
3. Ketepatan mutlak ±2 LSB.
5. Delapan kanal masukan.
6. Selang tegangan masukan dari 0 sampai VCC.
7. Memiliki tegangan refrensi internal sebesar 2.56V.
8. Dapat bekerja secara free running atau saat diperlukan saja.
9. Mulai mengkonversi dengan trigger otomatis pada sumber interupsi.
10. Interupsi dapat dibangkitkan ketika konfersi selesai. Proses inisialisasi ADC meliputi proses penentuan clock ADC, pemilihan saluran tegangan referensi, format keluaran data dan mode pembacaan. Register yang menangani ADC internal ini adalah register ADMUX (ADC Multiplexer
Selection Register ) berfungsi menentukan tegangan referensi ADC, format data
keluaran, dan pemilihan jalur masukan, komponen register ini dapat dilihat pada
gambar 2.8. Register SFIOR (Special Function IO Register) berfungsi untuk mengatur sumber picu konversi ADC, komponen register ini dapat dilihat padagambar 2.9. Register ADCSRA (ADC Control and Status Register A) berfungsi melakukan manajemen sinyal control dan status dari ADC, komponen bit terdapatpada gambar 2.10.
Gambar 2.8 Komponen register ADMUXREFS(1:0) (Reference Selection Bits) digunakan sebagai pemilih sumber tegangan refrensi dari ADC, ADLAR (ADC Left Adjust Result) digunakan untuk menentukan konfigurasi isi dari register ADCH dan ADCL sebagai tempat
ADTS(2:0) (ADC Auto Trigger Source) untuk menentukan mode dari ADC yang digunakan. ADEN (ADC Enable) berfungsi untuk mengaktifkan ADC jika bernilai satu. ADSC (ADC Start Conversion) akan bernilai nol jika selesai mengkonversi dan diberinilai satu jika ingin memuli konversi. ADATE (ADC
Auto Trigger Enable ), berhubungan dengan bit (ADTS) pada register SFIOR. Jika
bernilai satu menyebabkan trigger otomatis akan aktif. ADIF (ADC Interrupt
Flag ) bit ini akan aktif, jika konversi telah selesai dan dapat memicu interupsi,
selama fasilitas interupsi diaktifkan.Pemilihan konfigurasi ADLR :
Gambar 2.9 Komponen register SFIORGambar 2.10 Komponen register ADCSRAJika ADIE (ADC Interrupt Enable) bernilai 1 dan bit I pada SREG 1 dan
ADPS(2:0) (ADC Prescaler Select Bits) mendefinisikan faktor pembagi dari sumber clock ADC.
Resolusi untuk 10-bit ADC dapat di hitung dengan persamaan : Vref
Re solusi ( V ) = ; n = resolusi ADC (2.3) n
2
2.3. Kendali PID Digital [5] Kontroler adalah komponen yang berfungsi mengurangi sinyal kesalahan.
Tipe kontroler yang paling popular adalah kontroler PID. Elemen-elemen kontroler P, I dan D masing-masing secara keseluruhan bertujuan untuk mempercepat reaksi sebuah system, menghilangkan offset dan menghasilkan perubahan awal yang besar.
Fungsi utama dari kontroler digital sama dengan kontroler analog. Perbedaan yang utama yaitu kontroler digital tidak dapat menerima sinyal analog. Dengan keterbatasan tersebut maka kontroler digital memerlukan pengubah sinyal analog ke digital (ADC) untuk mengubah sinyal analog menjadi digital dalam bentuk bilangan biner dan sebaliknya (DAC) untuk mengubah data digital menjadi sinyal analog. Gambar 2.11 memperlihatkan blok diagram sebuah kendali digital.
Pada kendali PID digital, untuk memproses algoritma PID dengan cara yang efisien maka proses dari integral dan diferensial diubah kedalam bentuk aljabar yang ringkas [6]. Bentuk aljabar yang digunakan adalah perkalian, pembagian, penjumlahan dan pengurangan, dengan mengacu pada algoritma kontroler analog.
Gambar 2.11 Blok diagram kendali digitalGambar 2.12 Blok diagram kendali PID implementasi mixedAlgoritma kendali PID analog :
Transfer function dari sistem berdasarkan Gambar 2.12 : u ⎛ 1 ⎞
1 T s (2.4) + + ( s ) = H ( s ) = Kp d ⎜⎜ ⎟⎟ s T s i ⎝ ⎠
diubah ke dalam domain waktu : t ⎛ ⎞ 1 de ( t )
= + + u ( t ) Kp e ( t ) e ( t ) dt T (2.5) d
∫
⎜⎜ ⎟⎟ T dt i
⎝ ⎠ Kontroler digital bukan menggunakan sistem kontinu melainkan sistem diskrit. Pada kontroler digital ukuran error hanya terukur setiap waktu interval pada pengambilan sample. Setiap perubahan yang diperoleh akan langsung Karena data E(n+1) adalah data yang berikutnya belum tersedia, maka perhitungan data yang akan datang digunakan data yang saat ini E(n). jika n adalah t untuk setiap sample waktu maka persamaan diskrit dapat ditulis : n
- u ( n ) = Kp × e ( n ) Ki e ( k ) Kd ( e ( n ) − e ( n − 1 )) ∑ k
- Vo Ri Rf Rf
=
dengan Kp × T Kp × Td
Ki = ; Kd = ; T = waktu sampling Ti T untuk menyederhanakan nilai sikma : n
= × + + u ( n ) Kp e ( n ) Ki e ( k ) Kd ( e ( n ) − e ( n − 1 ))
∑ k = n 1 −
1 ) = Kp × e ( n − 1 ) Ki e ( k ) Kd ( e ( n − + + u ( n − 1 ) − e ( n − 2 )) ∑ k
=
menjadi : 1 ) Kp e ( n ) − e ( n − 1 ) ) Kie ( n ) Kd ( e ( n ) + = − × ( + + u ( n ) u ( n 2 e ( n −
1 ) e ( n − + − 2 ) ) (2.6)
2.4. Tuning Kontroler dengan Metode Ziegler-Nichols[7]
Aspek yang sangant penting dalam merancang kontroler PID adalah penentuan parameter kontroler supaya sistem close loop memenuhi kriteria performasni yang diinginkan.
Ziegler-Nichols pertama kali memperkenalkan metodenya pada tahun 1942. Metode ini memiliki dua cara, metode osilasi dan kurva reaksi. Kedua metode ditujukan untuk menghasilkan respon sistem dengan lonjakan maksimum sebesar 25%. Gambar 2.13 memperlihatkan kurva dengan lonjakan 25%.
Metode Kurva Reaksi
Metode ini didasarkan terhadap reaksi sistem untaian terbuka. Plant sebagai untaian terbuka dikenai sinyal fungsi tangga satuan (gambar 2.14). Kalau plant minimal tidak mengandung unsur integrator ataupun pole-pole kompleks, reaksi sistem akan berbentuk S. Gambar 2.15 menunjukkan kurva berbentuk S tersebut.
Gambar 2.13 Kurva respons tangga satuan yang memperlihatkan 25 % lonjakan maksimumKelemahan metode ini terletak pada ketidakmampuannya untuk plant integrator maupun plant yang memiliki pole kompleks. Kurva berbentuk-s mempunyai dua konstanta, waktu mati (dead time) L dan waktu tunda T. Dari gambar 2.15 terlihat bahwa kurva reaksi berubah naik, setelah selang waktu L.
Gambar 2.14 Respon tangga satuan sistemSedangkan waktu tunda menggambarkan perubahan kurva setelah mencapai 66% dari keadaan mantapnya. Pada kurva dibuat suatu garis yang bersinggungan dengan garis kurva. Garis singgung itu akan memotong dengan sumbu absis dan garis maksimum. Perpotongan garis singgung dengan sumbu absis merupakan ukuran waktu mati, dan perpotongan dengan garis maksimum merupakan waktu tunda yang diukur dari titik waktu L.
Gambar 2.15 Kurva Respons berbentuk S.Penalaan parameter PID didasarkan perolehan kedua konstanta itu. Zeigler dan Nichols melakukan eksperimen dan menyarankan parameter penyetelan nilai Kp, Ti, dan Td dengan didasarkan pada kedua parameter tersebut. Tabel 4.1 merupakan rumusan penalaan parameter PID berdasarkan cara kurva reaksi.
Tabel 2.5 Penalaan paramater PID dengan metode kurva reaksiTipe Kontroler K p T i T d P T/L ~
PI 0,9 T/L L/0.3 PID 1,2 T/L
2L 0,5L
2.5.Penguat Non-Inverting [8]
Penguat non inverting berupa rangkain OpAmp dengan gambar skematik pada gambar 2.16
Gambar 2.16 Rangkain penguat non invertingdengan persamaan penguatan (Av) sebagai berikut :
1 + Av = = = (2.7)
Vi Ri Ri
2.6. Rangkaian Penjumlah [8]
Berupa rangkaian OpAmp penjumlah inverting, dengan gambar skematik pada - gambar 2.17 V2 V1 R1 Rf Vn R2 + Vo
Rn
Gambar 2.17 Rangkain penjumlah invertingDengan persamaan keluaran sebagai berikut : Rf Rf Rf
Vo = −
V 1 −
V 2 − ⋅ ⋅⋅ − Vn (2.8) R
1 R
2 Rn
2.7 Piranti Masukan dan Keluaran
2.7.1 Tombol Keypad Matriks 4x3[9] Keypad matrik berupa rangkaian tombol-tombol yang tersusun secara matriks.
Tombol-tombol disini berfungsi sebagai saklar. Untuk keypad matriks 4x3, memiliki delapan pin masukan dan keluaran, empat pin mewakili banyak baris
Untuk membedakan 12 variasi keadaan maka empat pin baris atau empat pin kolom berfungsi sebagai masukan dan empat pin yang lain sebagai keluaran pada suatu sistem.
Gambar 2.18 Keyped MatriksVariasi keadaan diperoleh dengan cara memeriksa kondisi pin masukan untuk setiap pin keluaran. Gambar 2.18 memperlihatkan cara kerja dari keypad matriks saat mendeteksi penekanan tombol 3, pin yang beroperasi pada proses ini adalah pin baris 1 dan pin kolom 3.
2.7.2 Modul LCD seri M1632[10]
M1632 merupakan modul LCD Matriks dengan konfigurasi 16 karakter dan dua baris dengan setiap karakternya dibentuk oleh delapan baris pixel (satu baris pixel terakhit adalah kursor). Pada Modul LCD ini telah dilengkapi dengan mikrokontroler pengendali, HD44780 buatan Hitachi adalah salah satu mikrokontroler yang tertanam pada M1632. Mikrokontroler mempunyai kemampuan untuk mengatur proses scanning pada layar LCD, sehingga perangkat yang mengakses modul LCD ini tidak perlu mengatur proses scanning pada layar.
Gambar 2.19 Modul LCD Keterangan pin pada Modul LCD : 1.GND2.VCC
3.VEE/VLCD 4.RS (register select).
5.R/W (read/write) 6.E (Enable)
7.D0
8.D1
9.D2
10.D3
11.D4
12.D5
13.D6
14.D7
15.Anoda,LEDbacklight
16.Katoda, LEDbacklight
Modul LCD ini memiliki dua jenis anatarmuka yaitu antarmuka empat bit dan antarmuka delapan bit, bit DL adalah bit yang menangani pemilihan jenis antarmuka yang akan digunakan. Dengan teknik antarmuka empat bit maka dapat mengurangi pemakain port masukan dan keluaran pada perangkat elektronika.
Proses yang terjadi pada antarmuka empat bit yaitu dengan cara pengiriman 4- bit atas terlebih dahulu dan dilanjutkan dengan 4-bit bawah dimana untuk setiap prosesnya selalu diiringi dengan sebuah pulsa di pin E.
Tabel 2.6 Perintah M1632 Perintah D7 D6 D5 D4 D3 D2 D1 D0Hapus layar 0 0 0 0 0 0 0 1 Posisi awal 0 0 0 0 0 0 1 X Set mode 0 0 0 0 0 1 I/D S Display ON/OFF X100
1 D C B Geser kursor
1 S/C R/L
X X Set fungsi 0 0 1 DL N F X X Set alamat CDRAM
1 ACG ACG ACG ACG ACG ACG Set alamat DDRAM
1 ADD ADD ADD ADD ADD ADD ADD Keterangan tabel : X : diabaikan B : Blinking, 0 = Off, 1 = On I/D : Inc=1/Dec=0 C : Cursor, 0 = Off, 1 = On S : 0 display tdk geser D : Display, 0 = Off, 1 = On Pin RS berfungsi untuk memilih register yang akan di program. Bit RS bernilai satu maka register yang dipilih adalah register data, dan jika bernilai nol maka register yang dipilih adalah register control, sehingga M1632 siap diinisialisasi.
2.8. Sensor Suhu (LM35) [11]
LM35 (gambar 2.20) adalah sensor suhu yang presisi dengan fitur sebagai berikut:
1. Beroperasi pada ° Celsius
2. Skala kenaikan Linear +10.0 mV/°C 3. ketepatan 0.5°C (pada 25°C) 4. Bekerja pada −55° sampai +150°C
5. Bekerja mulai tegangan 4 sampai 30 volts 6.
Penggunaan arus yang kurang dari 60 μA
7. Pemanasan diri yang rendah pada udara bebas yaitu 0.08°C 8.
Keluaran impedansi yang rendah 0.1 W untuk beban 1 mA Seperti dengan banyak rangkain daya rendah yang lain, LM35 tidak dapat mengolah pada kapasitor beban yang besar, untuk menanggulangi hal ini maka pada kaki keluaran dari LM35 dipasang rangkaian yang disebut Dumper R-C, seperti yang diperlihatkan pada gambar 2.21.
2.9. Dioda zener [12]
Dioda zener adalah dioda silicon yang dirancang untuk bekerja optimal pada daerah breakdown . Disebut dioda pengatur tegangan karena dapat mempertahankan tegangan output tetap konstan meskipun arus yang melaluinya berubah. Karakteristik zener dapat dilihat pada gambar 2.22.
Gambar 2.22 Karakteristik zener2.10. Respon Transien – Orde Dua [13]
Respon transien adalah respon sistem yang berlangsung dari keadaan awal sampai keadaan akhir. Dalam beberapa kasus praktis, karakteristik sistem kontrol yang diinginkan dinyatakan dalam bentuk besaran waktu. Sistem yang mempunyai elemen penyimpan energi tidak dapat merespon secara seketika dan akan menunjukkan respon transien jika dikenai masukan masukan atau gangguan.
Respon transien sistem kontrol praktis sering menunjukkan osilasi teredam sebelum mencapai keadaan tunak. Parameter respon transien sebagai berikut :
1. Waktu tunda (delay time), td : Waktu yang diperlukan respon untuk mencapai setengah harga akhir yang pertama kali.
2. Waktu naik (rise time), tr : waktu yang diperlukan respon untuk naik dari 10% samapi 90%, 5% sampai 95%, atau 0% sampai 100% dari harga
100%. Untuk sistem redaman lebih, biasanya digunakan waktu naik 10% - 90%.
3. Waktu puncak (peak time), tp : waktu yang diperlukan respon untuk pencapai puncak lewatan yang pertama kali.
4. Lewatan maksimum (maximum overshoot), Mp : harga puncak maksimum dari kurva respon yang diukur dari satu. Jika harga keadaan tunak respon tidak sama dengan satu, maka biasa digunakan persen lewatan maksimum. Parameter ini didefinisikan sebagai : c tp c
( ) ( ) − ∞
Persen _ lewa tan_ maksimum = × 100 % (2.9) c ∞
( )
Besarnya (persen) lewatan maksimum secara langsung menunjukkan kestabilan relativ sistem.
5. Waktu penetapan (settling time), ts : waktu yang diperlukan kurva respon untuk mencapai dan menetap dalam daerah di sekitar harga akhir yang diukur ditentukan dengan persentasi mutlak dari harga akhir ( biasanya 5% atau 2%). Waktu penetapan ini dikaitkan dengan konstanta waktu terbesar dari sistem kontrol. Kriteria persentasi kesalahan yang akan digunakan ditentukan dari sasaran disain sistem yang dinyatakan.
Parameter ini ditunjukkan secara grafis pada gambar 2.23.