Anda di halaman 1dari 98

PROYEK AKHIR

Rancang Bangun Rangkaian Boost Converter Terkontrol Berbasis PI-Fuzzy Logic Controller Untuk Menyuplai Motor DC Pada Mobil Listrik (Subjudul : Software)

Grandis Prima Havilandi NRP.7309.030.012

DosenPembimbing: Renny Rakhmawati, ST, MT NIP: 19721024.199903.2.001 Ainur Rofiq Nansur, ST, MT NIP: 19640713.198903.1.005

PROGRAM STUDI D3 TEKNIK ELEKTRO INDUSTRI DEPARTEMEN TEKNIK ELEKTRO POLITEKNIK ELEKTRONIKA NEGERI SURABAYA INSTITUT TEKNOLOGI SEPULUH NOPEMBER SURABAYA 2012 11

PROYEK AKHIR

Rancang Bangun Rangkaian Boost Converter Terkontrol Berbasis PIFuzzy Logic Controller Untuk Menyuplai Motor DC Pada Mobil Listrik (Subjudul : Software)

Grandis Prima Havilandi NRP.7309.030.012

DosenPembimbing: Renny Rakhmawati, ST, MT NIP: 19721024.199903.2.001 Ainur Rofiq Nansur, ST, MT NIP: 19640713.198903.1.005

PROGRAM STUDI D3 TEKNIK ELEKTRO INDUSTRI DEPARTEMEN TEKNIK ELEKTRO POLITEKNIK ELEKTRONIKA NEGERI SURABAYA INSTITUT TEKNOLOGISEPULUH NOPEMBER SURABAYA 2012 ii

Rancang Bangun Rangkaian Boost Converter Terkontrol Berbasis PI-Fuzzy Logic Conroller Untuk Menyuplai Motor DC Pada Mobil Listrik (Subjudul : Software)
Oleh: Grandis Prima Havilandi NRP. 7309030012 Proyek Akhir ini Diajukan Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Ahli Madya di Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya

Disetujui oleh: Tim Penguji Proyek Akhir Dosen Pembimbing

1. Indhana Sudiharto, ST, MT


NIP. 19660227.199403.1.001

1. Renny Rakhmawati, ST, MT NIP. 19721024.199903.2.001

2. Arman Jaya, ST, MT


NIP. 19660208.198903.1.002

2. Ainur Rofiq Nansur, ST, MT NIP. 19640713.198903.1.005

3. Rusiana, ST, MT
NIP. 19570126.199003.2.001

Mengetahui: Ketua Program Studi D3 Teknik Elektro Industri

Novie Ayub Windarko,ST,MT,Ph.D NIP. 19751114.200003.1.001

iii

iv

ABSTRAK
Mobil listrik adalah termasuk salah satu aplikasi dari disiplin ilmu electric drives, yang dapat didefinisikan sebagai konversi energi listrik ke energi mekanik. Dalam penelitian ini, penggerak dari mobil listrik yang digunakan adalah motor DC, karena motor DC itu lebih mudah untuk diatur kecepatannya dari pada motor AC. Jenis konverter daya yang digunakan dalam aplikasi penggerak mobil listrik ini adalah Boost Converter berbasis PI Fuzzy, karena mampu menghasilkan efisiensi tinggi, rangkaian sederhana, tanpa transformer dan tingkat ripple yang rendah pada arus masukan. Rancang bangun rangkaian boost converter berbasis PI fuzzy logic controller ini difungsikan untuk menaikkan tegangan secara terkontrol untuk menyuplai kecepatan motor DC pada mobil listrik saat beban berubah-ubah. Kontrol PI fuzzy digunakan untuk mengatur tegangan output boost melalui pengontrolan sudut penyulutan rangkaian switching nya sehingga kecepatan motor DC akan konstan pada referensi tegangan output yang diinginkan. Kata kunci: Electric drives, boost converter, PI Fuzzy Logic Controller.

ABSTRACT
The electric car is one of the application of electric drives of disciplines, which can be defined as the conversion of electrical energy into mechanical energy. In this study, driver of electric car uses the DC motor, because it is easier to set the speed than the AC motor. Types of power converters used in electric car propulsion applications is Boost Converter-based PI fuzzy logic controller, being able to produce high efficiency, simple circuit, with no transformer and low levels of ripple on the input current. Boost converter circuit design based PI fuzzy logic controller is enabled to raise the voltage which is controlled to supply the DC motor speed on electric cars at the variable load. PI fuzzy controller is used to adjust the voltage output of the boost which is control the ignition angle of the switching circuit, so that dc motor speed will be constant according to the output voltage reference. Keywords: Electric drives, boost converter, PI Fuzzy Logic Controller.

ii

KATA PENGANTAR

Segala puji dan syukur penulis panjatkan kehadirat Allah SWT yang telah memberikan rahmat dan ridho-Nya sehingga penulis dapat menyelesaikan buku proyek akhir yang berjudul Rancang Bangun Rangkaian Boost Converter Terkontrol Berbasis PI - Fuzzy Logic Controller Untuk Menyuplai Motor dc Pada Mobil Listrik (Subjudul : Software) . Buku ini disusun sebagai gambaran proyek akhir yang akan kami kerjakan. Buku ini berisi tentang alasan pemilihan judul dan proses menstabilkan putaran mobil listrik pada beban yang berubahubah dengan cara menstabilkan tegangan output boost converter. Selama pembuatan buku ini kami telah banyak memperoleh bimbingan dan arahan. Oleh karena itu kami mengucapkan banyak terima kasih kepada : 1. Renny Rakhmawati, ST, MT selaku dosen pembimbing 1 Tugas Akhir. 2. Ainur Rofiq Nansur, ST, MT selaku dosen pembimbing 2 Tugas Akhir. 3. Teman-teman, serta semua pihak yang tidak dapat kami sebutkan satu per-satu. Dengan menyadari keterbatasan ilmu kami, tentu buku ini masih jauh dari sempurna. Untuk itu kami selaku penulis dengan senang hati menerima kritik dan saran yang bersifat membangun dari para pembaca buku ini.

Surabaya, Juni 2012

Penyusun

iii

UCAPAN TERIMA KASIH


Pada kesempatan yang berbahagia ini, penulis menyampaikan rasa terima kasih kepada: 1. Allah SWT, karena dengan ridho dan karunia Nya saya telah menyelesaikan projek akhir ini. 2. Nabi Muhammad SAW, Beliau yang selalu menjadi motivasi dan panutan dihidupku. 3. Kedua orang tua, Bapak dan Ibu yang selalu tanpa kenal lelah mendukung saya dari segala hal. 4. Kedua dosen pembimbing, Ibu Renny Rakhmawati, ST, MT dan Bapak Ainur Rofiq, ST, MT atas segala perhatian dan bimbingan yang telah diberikan sehingga Proyek Akhir ini dapat terselesaikan. 5. Para alim ulama yang menjadi panutan saya di zaman sekarang. 6. Semua Guru dan Dosen yang telah memberikan saya ilmu baik formal maupun non formal. 7. Semua teman teman saya yang selalu menginspirasi saya lewat keseriusan dan candanya. 8. Seluruh keluarga D3 ELIN 09, yang banyak berjasa buat hidup saya. 9. Seluruh warga PENS ITS meliputi karyawan, warga jurusan lain, staff, satpam dan Pak OB yang selalu memberikan fasilitas istimewa belajar saya. 10. Seluruh pihak yang tidak dapat kami sebutkan satupersatu atas bantuan yang telah diberikan selama ini. Penulis berharap semoga bantuan dan keikhlasan penyelesaian Proyek Akhir ini mendapat barokah dari Allah SWT.

iv

DAFTAR ISI
Halaman HALAMAN JUDUL ...................................................................... i LEMBAR PENGESAHAN ........................................................... ii ABSTRAK ...................................................................................... iii KATA PENGANTAR ................................................................... v UCAPAN TERIMA KASIH ......................................................... vi DAFTAR ISI .................................................................................. vii DAFTAR GAMBAR ..................................................................... ix DAFTAR TABEL .......................................................................... xii BAB I PENDAHULUAN 1.1. Latar Belakang ........................................................... 1 1.2. Tujuan ........................................................................ 2 1.3. Metodologi ................................................................. 2 1.4. Perumusan Masalah ................................................... 4 1.5. Batasan Masalah ......................................................... 5 1.6. Sistematika Pembahasan ............................................ 5 1.7. Tinjauan Pustaka ........................................................ 6 BAB II TEORI PENUNJANG 2.1. Motor DC ................................................................... 2.1.1. Motor DC Shunt ............................................... 2.1.2. Rangkaian PWM .............................................. 2.2. Kontrol PI ................................................................... 2.2.1. Kontroler Proporsional (P) ............................... 2.2.2. Kontroller Integral (I) ....................................... 2.3. Kontrol Fuzzy ............................................................. 2.3.1. Fuzzyfikasi ....................................................... 2.3.2. Kumpulan Aturan Fuzzy .................................. 2.3.3. Fungsi Keanggotaan Membershipfuntion ........ 2.3.4. Fungsi Implikasi Fuzzy .................................... 2.3.5. Defuzzyfikasi ................................................... 2.3.6. Pemodelan control Logika Fuzzy ..................... 2.4. Karakteristik Beban Non - Linier ............................... 2.5. Mikrokontroller .......................................................... 2.5.1. Mikrokontroller AVRAT Mega 16 .................. 2.5.2. Arsitektur AVRAT Mega 16 ............................

9 11 12 13 13 14 15 16 16 17 18 19 19 20 24 24 25

2.5.3. Konfigurasi AVRAT Mega 16 ......................... 2.5.4. Struktur Memori ............................................... 2.5.5. Port Sebagai Input / Output Digital .................. 2.5.6. Port Sebagai Analog Digital Converter (ADC) . 2.5.7. Timer / Counter ................................................ BAB III PERENCANAAN DAN PEMBUATAN PERANGKAT Lunak 3.1. Konfigurasi Sistem ..................................................... 3.2. Sistem Open Loop ...................................................... 3.3. Sistem Close Loop Dengan Kontrol Tipe PI .............. 3.4. Sistem Close Loop Dengan Kontrol Tipe Fuzzy ........ 3.5. Pembuatan Algoritma PI Fuzzy ................................. 3.5.1. Perencanaan Program Fuzzy ........................... 3.5.2. Fungsi keanggotaan ......................................... 3.5.3. Rule Base ........................................................ 3.5.4. Membership Funtion ....................................... 3.5.5. Flowchart ........................................................ BAB IV PENGUJIAN DAN ANALISA 4.1. Pengujian Sistem Minimum Mikrokontroller ............ 4.2. Pengujian ADC .......................................................... 4.3 Pengujian Rangkaian dan Sambungan ....................... 4.4 Pengujian Sensor tegangan ........................................ 4.5 Pengujian Sensor kecepatan ....................................... 4.6 Pengujian Respon Kontrol PI - Fuzzy ........................ 4.7 Kesesuaian Antara Perencanaan dan Hasil ................

27 30 31 32 34

39 41 44 46 47 47 50 51 52 54

57 58 61 62 64 65 66

BAB V PENUTUP 5.1. Kesimpulan ................................................................ 67 5.2. Saran-saran ................................................................. 67 DAFTAR PUSTAKA .................................................................... 68 LAMPIRAN ................................................................................... 69

vi

DAFTAR GAMBAR Gambar 1.1. 2.1. 2.2. 2.3. 2.4. 2.5. 2.6. 2.7. 2.8. 2.9. 2.10. 2.11. 2.12. 2.13. 2.14. 2.15. 3.1. 3.2. 3.3. 3.4. 3.5. 3.6. 3.7. 3.8. 3.9. 3.10. 3.11. 3.12. Halaman Blok Diagram Kontrol ....................................................... 3 Kaidah Motor DC .............................................................. 11 Rangkaian Motor DC Shunt .............................................. 12 Output Dari PWM ............................................................. 13 Kurva PI Kontroller ........................................................... 15 Struktur Dasar Dari Kontrol PI - Fuzzy ............................. 16 Fungsi Keanggotaan Trigular Function ............................. 17 Fungsi Keanggotaan Trapezoidal Function ....................... 18 Chip ATMEGA 16 Buatan ATMEL ................................. 25 Blok Diagram Arsitektur ATMEGA 16 ............................ 27 Pin pin AVR ATMEGA 16 ............................................ 28 Peta Memori Flash ............................................................. 30 Peta Memori SRAM .......................................................... 31 Blok Diagram Timer Counter ............................................ 35 Timing Diagram Timer / Counter, Tanpa Prescaling .......................................................................... 37 Timing Diagram Timer / Counter, Dengan Prescalling ......................................................................... 37 Blok Diagram Kontrol ....................................................... 39 Blok Diagram Sistem Secara Open Loop .......................... 42 Rangkaian Simulasi Open Loop Pada Saat Beban Bawah .................................................................... 42 Hasil Gelombang Output Saat Batas Bawah Beban 56 kg ...................................................................... 43 Rangkaian Simulasi Open Loop Pada Saat Beban Atas .................................................................................. 43 Hasil Gelombang Output Saat Batas Atas Beban80kg .. 44 Blok Diagram Sistem Dengan Kontrol tipe PI.................. 44 Blok Diagram Sistem Secara Close Loop Dengan Kontrol PI ............................... ............................ 46 Boost Converter Dengan Kontrol PI Fuzzy ....................... 46 Gelombang Output Boost Converter Dengan Kontrol PI Fuzzy ............................................................... 47 Flowchart Logika Fuzzy .................................................... 48 Blok Diagram Kontroller ................................................... 48 vii

3.13. 3.14. 3.15. 3.16. 3.17. 3.18. 3.19. 3.20. 4.1. 4.2. 4.3. 4.4. 4.5. 4.6. 4.7.

Flowchart Proses Penentuan Crisp Input (Kuantitas) dan Penentuan Crisp Output ............................ Flowchart proses fuzzyfikasi ............................................. Rule Base Fuzzy ................................................................ Membershipfunction Error ................................................ Membershipfunction Derror .............................................. MembershipFuntion Output .............................................. Flowchart Utama Sistem ................................................... Flowchart Sistem ............................................................... Pengujian Minimum Sistem ATMEGA 16 ....................... Fluk 41B ............................................................................ Rangkaian Sensor Tegangan ............................................. Sensor Rotary Encoder Pada AS Roda Dan Driver ... ............................................................................ Pembacaan Sensor Kecepatan Pada LCD Saat Tanpa Beban ..................................................................... Respon Kontrol Yang Terekam Pada Hyperterminal Pada Codevision ........................................ Alat Secara Keseluruhan ...................................................

49 50 52 53 54 54 54 55 58 61 62 64 64 65 66

viii

DAFTAR TABEL
Tabel 2.1. 2.2. 3.1. 3.2. 4.1. 4.2. 4.3. Halaman Rule Base Kontroller Logika Fuzzy ................................. 17 Beberapa Tipe Fungsi Implikasi Fuzzy ............................ 19 Hasil Simulasi Open Loop ................................................ 44 Rule Base Fuzzy ............................................................... 51 Data Pengujian ADC Internal Mikrokontroller ................ 60 Data Pecobaan Sensor Tegangan ...................................... 63 Pembacaan Putaran Berdasarkan Perubahan Beban. ......... 64

ix

BAB I PENDAHULUAN
1.1 Latar Belakang Mobil listrik adalah kendaraan penumpang untuk pribadi, yang beroperasi pada jalan raya, dan untuk kenyamanan umumnya menggunakan roda empat dan yang digerakkan secara elektrik. Mobil listrik termasuk salah satu bagian dari disiplin ilmu pengemudian elektrik (electric drives), yang dapat didefinisikan sebagai konversi energi listrik ke energi mekanik, serta cara-cara pengaturannya. Komponen utama mobil listrik adalah motor listrik sebagai penggerak, baterei sebagai sumber energi, sistem control sebagai pusat kendali, dan konverter daya sebagai peralatan elektrik atau rangkaian elektrik yang mengubah kebutuhan variabel sumber energi dengan kebutuhan variabel mobil listrik melalui switching devices. Motor arus searah (motor dc) adalah salah satu jenis motor yang telah ada selama lebih dari seabad. Munculnya motor DC membawa perubahan besar pada dunia mesin listrik yang sebelumnya telah ada motor AC karena motor dc mempunyai keunggulan dalam kemudahan untuk mengatur dan mengontrol kecepatan dibandingkan motor ac (motor bolak-balik yang bekerja memerlukan suplay tegangan bolak balik ). Motor dc dapat berfungsi sebagai motor apabila didalam motor listrik tersebut terjadi proses konversi dari energi listrik menjadi energi mekanik. Motor dc itu sendiri memerlukan suplai tegangan yang searah pada kumparan jangkar dan kumparan medan untuk diubah menjadi energi mekanik. Pada motor dc kumparan medan disebut stator (bagian yang tidak berputar) dan kumparan jangkar disebut rotor (bagian yang berputar). Keuntungan utama motor DC adalah sebagai pengendali kecepatan, yang tidak mempengaruhi kualitas pasokan daya. Motor ini dapat dikendalikan dengan mengatur: a) Tegangan dynamo-meningkatkan tegangan dinamo akan meningkatkan kecepatan. b) Arus medan menurunkan arus medan akan meningkatkan kecepatan.

Prinsip kerja motor dc adalah daerah kumparan medan yang yang dialiri arus listrik akan menghasilkan medan magnet yang melingkupi kumparan jangkar dengan arah tertentu. Konversi dari energi listrik menjadi energi mekanik (motor) maupun sebaliknya berlangsung melalui medan magnet, dengan demikian medan magnet disini selain berfungsi sebagai tempat untuk menyimpan energi, sekaligus berfungsi sebagai tempat berlangsungnya proses perubahan energi. Dengan mengacu pada hukum kekekalan energi. Proses energi listrik = energi mekanik + energi panas + energi didalam medan magnet. Topologi konverter daya yang cocok dalam aplikasi penggerak mobil listrik ini adalah Boost Converter terkontrol karena mampu menghasilkan efisiensi tinggi, rangkaian sederhana, tanpa transformer dan tingkat ripple yang rendah pada arus masukan. Boost converter terkontrol ini difungsikan untuk menaikkan tegangan dan mencatu dengan tegangan yang konstan. Konverter ini didesain terkontrol karena sebagai pengaturan kecepatannya dengan megatur frekuensi sudut penyulutan pada proses switching nya. 1.2 Tujuan Mendesain dan membuat konverter terkontrol untuk mengatur kecepatan motor dc dengan menaikkan tegangan input sebagai penggerak mobil listrik, sehingga tercipta konverter untuk mobil listrik yang aplikatif, handal, fleksibel dan effisien untuk pengembangan mobil listrik. 1.3 Metodologi Untuk pembuatan Proyek Akhir ini dilakukan prosedur atau langkah-langkah pengerjaan yang dapat diuraikan sebagai berikut: 1.3.1 Studi Literatur 1) Mempelajari teori dasar yang berhubungan dengan topik yang dibahas dalam tugas akhir ini dan berusaha mempelajari permasalahan yang dihadapi. 2) Pengambilan dan pengumpulan data serta dasar teori yang digunakan sebagai acuan dalam penyelesaian proyek akhir

antara lain motor dc, boost converter, kontrol PI, Kontrol fuzzy dan teori lainya yang terkait dalam penyelesaian proyek akhir ini. 1.3.2 Perencanaan Sistem

Setelah mempelajari literatur yang tersedia maka bisa dimulai dengan mengetahui prinsip kerja dari motor dc yang akan digunakan sebagai proyek akhir ini. Pada proyek akhir ini akan mengatur kecepatan motor dc. 1.3.2.a Fuzzy Logic Controller Pada kontroler ini masukan diambil dari sinyal speed error (selisih antara putaran as referensi dan putaran as umpan balik yang dihasilkan oleh tacho meter) dan perubahan sinyal speed error (selisih sinyal error sebelumnya dengan sinyal error sekarang) sebagai masukan. Masukan akan masuk ke kontrol fuzzy yang kemudian mengatur gain dari Kp, sedangkan gain Ki dibuat tetap. Keluaran dari kontrol ini akan mengatur sinyal trigger pada PWM. PWM akan diatur duty cycle nya sampai putaran as sesuai dengan putaran as referensi. PWM ini memberikan sinyal pulsa ke boost converter. Berikut ini gambar 1.1 blok diagram secara keseluruhan.

Gambar 1.1. Blok Diagram Kontrol

1.3.2.b Batterai (Accu) Pada proyek akhir ini dipilih baterai dengan spesifikasi tegangan 12V/36Ah yang diseri. Hal ini dikarenakan untuk menaikkan tegangan dengan perbandingan terlalu besar yaitu 1:3 namun mampu dioperasikan dalam sistem hingga sekitar 1 jam. Namun sebenarnya dalam perancangan secara teoritis dibutuhkan baterai dengan kapasitas 60Ah. Perhitungan kapasitas ini didasarkan pada kebutuhan dari waktu pengoperasian atau pemakaian dalam sistem. Desain perhitungan pemakaian aki Efisiensi Boost converter = 80 % Efisiensi = Pout Boost converter/Pin Boost converter Pin Boost converter = Pout Boost converter/Efisiensi. Dari perhitungan diatas kita dapat mengetahui Arus masukan Boost converter yang nilainya sama dengan arus yang dikeluarkan aki: Pin Boost converter = Vin . In Iin = Pin Boost converter/Vin Jika Asumsi lama pemakaian dari mobil listrik sekitar 3 jam, maka kapasitas aki dapat dihitung dengan persamaan. Ta = Iin x Lama pemakaian (jam) 1.4 Perumusan Masalah Pada proyek akhir ini untuk mengetahui fungsi dari perbedaan antara teori pengendali dengan praktek yang berada di lapangan, yang diinginkan untuk mengatur kecepatan motor dc yang konstan meskipun ada beban yang sifatnya berubahubah. Adapun permasalahan yang akan dibahas pada proyek akhir ini adalah : 1. Pengonrolan sudut penyulutan pada PWM melalui PI Fuzzy logic Controller dan mendesain induktor pada rangkaian boost converter.

2. 3.

Apakah beban berubah mempengaruhi output boost converter. Pengontrolan pada penyulutan tegangan output boost converter, yang mengacu pada set point tegangan yang telah ditentukan.

1.5 Batasan Masalah Pada proyek akhir ini membahas tentang bagaimana cara mengatur kecepatan pada motor dc. Dengan cara memberikan input tegangan pada motor dc yang diatur melalui Boost Converter terkontrol. Sehingga kami membuat driver dan kontrol motor dc yang mencakup kontrol PI - Fuzzy juga sebagai pengatur pulsa ke motor. 1. Mobil listrik dibatasi penggunaanya dalam medan lurus saja, tidak menanjak dan turun. 2. Set point dari kecepatan mobil listrik juga dibatasi maksimal kecepatan diset saat tegangan output boost 48 V. 3. Membership Function dari kontrol fuzzy dibatasi maksimal 5. 4. Mobil tidak bisa berjalan mundur. 5. Set point sudah ditentukan, tidak bisa diubah. 6. Sistem control menggunakan PI-Fuzzy 7. Penggerak menggunakan sebuah motor dc untuk menggerakkan roda belakang 8. Penumpang dibatasi satu orang saja.

1.6 Sistematika Pembahasan Sistematika pembahasan direncanakan sebagai berikut: BAB I. PENDAHULUAN Bab ini membahas pendahuluan yang terdiri dari latar belakang, tujuan, metodologi, batasan dan perumusan masalah, sistematika pembahasan Proyek Akhir dan tinjauan pustaka. penyusunan Proyek Akhir ini

BAB II . TEORI PENUNJANG Bab ini membahas teori-teori yang menunjang dan berkaitan dengan penyelesaian Proyek Akhir, antara lain teori tentang PI-Fuzzy, dan Boost Converter . BAB III. PERENCANAAN DAN PEMBUATAN Bab ini membahas tahap perencanaan dan proses pembuatan perangkat keras Proyek Akhir. BAB IV. PENGUJIAN DAN ANALISA Bab ini membahas secara keseluruhan dari sistem dan dilakukan pengujian serta analisa pada setiap percobaan perangkat keras. Mengintegrasikan seluruh sistem dan pengujian, kemudian berdasarkan data hasil pengujian dan dilakukan analisa terhadap keseluruhan sistem. BAB V. KESIMPULAN DAN SARAN Bab ini membahas kesimpulan dari pembahasan, perencanaan, pengujian dan analisa berdasarkan data hasil pengujian sistem. Untuk meningkatkan hasil akhir yang lebih baik diberikan saran-saran terhadap hasil pembuatan Proyek Akhir. 1.7 Tinjauan Pustaka Pada referensi yang berjudul Desain penyearah 1 fase dengan power factor mendekati unity dan memiliki THD minimum menggunakan kontrol PID-fuzzy pada boost converter, Setyo Suka Wahyu, PENS-ITS, TA 2011. Didalam referensi tersebut terdapat beberapa kekurangan antara lain kontrol pada motor menggunakan kontrol derivative. Dari referensi tersebut bertujuan untuk menelaah dan menghasilkan respon plan sistem kendali melalui proses perencanaan rangkaian boost converter terkontrol sehingga keluaran

yang dihasilkan sesuai dengan apa yang diharapkan, yaitu dapat mengendalikan output pada beban yang berubah-ubah. sehingga kami disini mencoba dengan mendesain rangkaian boost converter terkontrol berbasis fuzzy pada beban motor dc, dimana kontrol ini berfungsi untuk mengatur tegangan input pada motor dc dengan mengontrol sudut penyulutan rangkaian switching nya, kontrol derivative tidak cocok digunakan untuk mengontrol motor karena energi yang digunakan cukup besar, kontrol fuzzy memilki respon yang mendekati set poin, output bisa lebih dari satu dan lebih smooth. Refrensi yang kedua yaitu berjudul Rancang Bangun Becak listrik tenaga Hybrid dengan menggunakan kontrol PI-Fuzzy, Handoko, PENS-ITS, TA 2011. Pada refrensi kedua ini, sangat berkaitan erat dengan judul yang kami buat, yaitu bertujuan merancang kontrol PI-Fuzzy untuk mengatur kecepatan putar motor dc. Kontrol putaran motor dc pada judul ini digunakan untuk mengontrol output tegangan boost yang akan digunakan untuk mencharge battery, selain itu digunakan juga untuk menyulut driver yang akan mengatur putaran motor dc. Dengan adanya refrensi kedua ini sangat membantu kami dalam mengerjakan proyek akhir dikarenakan memiliki tujuan yang hamper sama.

Halaman ini sengaja dikosongkan

BAB II TEORI PENUNJANG


Analisa dan perhitungan sangat penting dilakukan sebelum merencanakan suatu sistem. Sehingga diperlukan teori penunjang sebagai pendukung kebenaran dari analisa yang dilakukan. Teori dasar pada proyek akhir ini diambil dari mata perkuliahan Power Quality dan Elektronika Daya. Teori dan analisa penunjang yang lain diambil dari mata kuliah yang masih berkaitan dengan rangkaian Elektronika Daya antara lain : Pengaturaan Otomatis, Dasar Pengendali Cerdas,Mikrokontroller, Interface, Bahasa Pemrograman, Rangkaian Listrik, Mesin Listrik dan Rangkaian Elektronika, serta buku buku literatur ( ada pada halaman Daftar Pustaka ). Setiap pembahasan pembahasan pada sub bab saling berkaitan dengan teori dan analisa yang pernah diberikan pada perkuliahan yang pernah didapatkan. 2.1 Motor DC Motor arus searah (motor dc) adalah salah satu jenis motor yang telah ada selama lebih dari seabad. Keberadaan motor dc telah membawa perubahan besar sejak dikenalkan motor induksi yang nama lain dari motor listrik arus bolak balik (ac) karena motor dc mempunyai keunggulan dalam kemudahan untuk mengatur dan mengontrol kecepatan dibandingkan motor ac (motor bolak-balik yang bekerja memerlukan suplay tegangan bolak balik ). Motor dc dapat berfungsi sebagai motor apabila didalam motor listrik tersebut terjadi proses konversi dari energi listrik menjadi energi mekanik. Motor dc itu sendiri memerlukan suplai tegangan yang searah pada kumparan jangkar dan kumparan medan untuk diubah menjadi energi mekanik. Pada motor dc kumparan medan disebut stator (bagian yang tidak berputar) dan kumparan jangkar disebut rotor (bagian yang berputar). Keuntungan utama motor DC adalah sebagai pengendali kecepatan, yang tidak mempengaruhi kualitas pasokan daya. Motor ini dapat dikendalikan dengan mengatur:

10

a) Tegangan dynamo - meningkatkan tegangan dinamo akan meningkatkan kecepatan b) Arus medan - menurunkan arus medan akan meningkatkan kecepatan. Prinsip kerja motor dc adalah daerah kumparan medan yang yang dialiri arus listrik akan menghasilkan medan magnet yang melingkupi kumparan jangkar dengan arah tertentu. Konversi dari energi listrik menjadi energi mekanik (motor) maupun sebaliknya berlangsung melalui medan magnet, dengan demikian medan magnet disini selain berfungsi sebagai tempat untuk menyimpan energi, sekaligus berfungsi sebagai tempat berlangsungnya proses perubahan energi. Dengan mengacu pada hukum kekekalan energi : Proses energi listrik = energi mekanik + energi panas + energi didalam medan magnet. Maka dalam medan magnet akan dihasilkan kumparan medan dengan kerapatan fluks sebesar B dengan arus adalah I serta panjang konduktor sama dengan L maka diperoleh gaya sebesar F, dengan persamaan sebagai berikut : F = B I L dengan : F= B= I = L= Gaya magnet pada sebuah arus (Newton) Medan magnet (Tesla) Arus yang mengalir (Ampere) Panjang konduktor (meter) (2.1)

Hubungan antara kecepatan, flux medan dan tegangan dinamo ditunjukkan dalam persamaan berikut: Gaya elektromagnetik: E = KN Torque: T = KIa (2.2)

Dimana: E =gaya elektromagnetik (volt) = flux medan yang berbanding lurus dengan arus medan N = kecepatan dalam RPM (putaran per menit) T = torque electromagnetik Ia = arus dinamo

11

K = konstanta persamaan Arah dari gaya ini ditentukan oleh aturan kaidah tangan kiri, adapun kaidah tangan kiri tersebut dapat dilihat pada pada gambar 2.1 dibawah ini :

Gambar 2.1. Kaidah Motor DC Ibu jari sebagai arah gaya (F), telunjuk jari sebagai fluks (B), dan jari tengah sebagai arus (I). Saat gaya (F) tersebut dibandingkan, konduktor akan bergerak didalam kumparan medan magnet dan menimbulkan gaya gerak listrik yang merupakan reaksi lawan terhadap tegangan sumber. Agar proses perubahan energi mekanik tersebut dapat berlangsung secara sempurna, maka tegangan sumber harus lebih besar dari pada tegangan gerak yang disebabkan reaksi lawan. Dengan memberi arus pada kumparan jangkar yang dilindungi oleh medan maka menimbulkan perputaran pada motor. 2.1.1 Motor DC Shunt Pada motor shunt, gulungan medan (medan shunt) disambungkan secara paralel dengan gulungan dinamo. Oleh karena itu total arus dalam jalur merupakan penjumlahan arus medan dan arus dinamo. Berikut tentang kecepatan motor shunt : Kecepatan pada prakteknya konstan tidak tergantung pada beban (hingga torque tertentu setelah kecepatannya berkurang) dan oleh karena itu cocok untuk penggunaan komersial dengan beban awal yang rendah, seperti peralatan mesin. Kecepatan dapat dikendalikan dengan cara memasang tahanan dalam susunan seri dengan dinamo (kecepatan berkurang)

12

atau dengan memasang tahanan pada arus medan (kecepatan bertambah). Dapat dilihat pada gambar 2.2 dibawah ini :

Gambar 2.2 Rangkaian Motor DC Shunt

2.1.2 Rangkaian PWM PWM atau Pulse width Modulation adalah salah satu teknik pemodulasian sinyal dimana besar duty cycle pulsa dapat diubah-ubah. PWM biasa digunakan untuk aplikasi-aplikasi analog yang menggunakan kontrol digital atau microcontroller, hal ini dikarenakan mikrokontroler tidak mampu menghasilkan tegangan analog secara langsung. Terdapat beberapa teknik untuk membangkitkan sinyal PWM, namun secara garis besar terbagi dalam 2 cara, yaitu pembangkitan sinyal dengan rangkaian analog dan dengan kontrol digital atau dengan mikrokontroler. Secara analog, pembangkitan sinyal PWM yang paling sederhana adalah dengan cara membandingkan sebuah sinyal segi tiga atau gigi gergaji dengan tegangan referensi seperti yang terlihat pada Gambar dibawah. Gelombang segitiga atau gigi gergaji sebagai frekuensi pembawa yang juga merupakan frekuensi sinyal output PWM. Sedangkan tegangan referensi adalah tegangan yang menentukan besarnya duty cycle dari output sinyal PWM. Cara kerja dari komparator analog ini adalah membandingkan gelombang tegangan gigi gergaji dengan tegangan referensi seperti yang terlihat pada Gambar dibawah ini. Saat nilai tegangan referensi

13

lebih besar dari tegangan ramp (gigi gergaji) maka output komparator akan bernilai high atau saturasi mendekati Vcc. Namun saat tegangan referensi bernilai lebih kecil dari tegangan ramp, maka output komparator akan bernilai low atau cut off. Dengan memanfaatkan prinsip kerja dari komparator inilah, untuk mengubah duty cycle dari sinyal output cukup dengan mengubah-ubah besar tegangan referensi. Berikut ini hasil output dari PWM dapat dilihat pada gambar 2.3 dibawah ini

Gambar 2.3. Output Dari PWM 2.2 Kontrol PI PI (dari singkatan bahasa ProportionalIntegral controller) merupakan kontroler untuk menentukan presisi suatu sistem instrumentasi dengan karakteristik adanya umpan balik pada sistem tesebut. Komponen kontrol PI ini terdiri dari dua jenis yaitu Proportional dan Integratif. Keduanya dapat dipakai bersamaan maupun sendiri-sendiri tergantung dari respon yang kita inginkan terhadap suatu plant. 2.2.1 Kontroler Proporsional (P) Pengaruh pada sistem : 1. 2. 3. Menambah atau mengurangi kestabilan. Dapat memperbaiki respon transien khususnya : rise time, settling time Mengurangi (bukan menghilangkan) Error steady state.

14

4.

Mengurangi settling time.

Nb: untuk menghilangkan Ess, dibutuhkan KP besar, yang akan membuat sistem lebih tidak stabil a) Persamaan matematis : u(t) = KP . e(t) dimana KP : konstanta proporsional dalam Laplace U(s)/E(s) = KP b) Dikenal juga sebagai : gain/penguatan 2.2.2 Kontroler Integral (I) Pengaruh pada sistem : 1. 2. 3. 4. Menghilangkan Error Steady State Respon lebih lambat (dibandingkan dengan P) Dapat Menambah Ketidakstabilan (karena menambah orde pada sistem). Menaikkan settling time, sehingga mendekati 0 error steady state. Persamaan matematis : (2.3)

(2.4)

u (t ) K i e(t )dt
0

(2.5)

dimana Ki : konstanta integral dalam Laplace

U ( s) K i E ( s) s

(2.6)

15

Perubahan sinyal kontrol sebanding dengan perubahan error. Semakin besar error, semakin cepat sinyal kontrol bertambah/berubah. Lebih jelasnya maka lihat gambar berikut. Kontroler Proporsional memberi pengaruh langsung (sebanding) pada error. Semakin besar error, semakin besar sinyal kendali yang dihasilkan kontroler. Pada gambar 2.4 dibawah ini adalah kurva PI controller

Gambar 2.4. Kurva PI Controller Prosedur praktis 1. Berikan input step pada sistem 2. Dapatkan kurva respons berbentuk S 3. Tentukan nilai L dan T 4. Masukkan ke tabel berikut untuk mendapatkan nilai Kp, dan Ki Kontrol PI : Kp = 0.9 x Ki = 0.27 x

2.3 Kontrol Fuzzy Kontrol logika fuzzy merupakan salah satu bentuk kontrol cerdas (intelligent control). Penggunaan control logika fuzzy dapat menyelesaikan permasalahan pada system yang memiliki perilaku komplek. Struktur dasar dari Kontrol Logika Fuzzy dapat dilihat pada gambar 2.5 dibawah ini:

16

Data Base

Fuzzifik asi

Fuzzy rule Base

Defuzzifi kasi

Gambar 2.5. Struktur Dasar Dari Kontrol PI Fuzzy 2.3.1 Fuzzyfikasi Pada proses fuzzifikasi terjadi konversi variabel crisp kedalam variable fuzzy melalui teknik fungsi keanggotaan, dimana error dan delta error dipetakan kedalam rentang kerja semesta pembicaraan melalui persamaan berikut: Qe(k) = G1*e(k) Qe(k) = G2*e(k) (2.7) (2.8)

Pada unit fuzzifikasi ini terjadi proses transformasi dengan cara pemetaan ruang masukan dengan bantuan faktor penskala. Perbedaaan kecepatan (error) diskala dengan gain G1, sedangkan perbedaan perubahan kecepatan (delta error) diskala dengan gain G2. 2.3.2 Kumpulan aturan Fuzzy Kumpulan aturan fuzzy terdiri dari beberapa aturan fuzzy yang dikelompokkan kedalam basis aturan yang merupakan dasar dari pengambilan keputusan (inference process) untuk mendapatkan aksi keluaran sinyal kontrol dari suatu kondisi masukan. Proses pengambilan keputusan menghasilkan sinyal keluaran yang masih dalam bentuk bilangan fuzzy, yaitu derajat keanggotaan dari sinyal kontrol. Basis aturan dari kontroller logika fuzzy dapat dilihat pada tabel 2.1.

17

Tabel 2.1. Rule base kontroller logika fuzzy

2.3.3 Fungsi Keanggotaan (Membership Function) Fungsi keanggotaan Fuzzy merupakan fungsi untuk menyatakan tingkat keanggotaan fuzzy yang nilainya antara nol dan satu. Ada beberapa bentuk fungsi keanggotaan fuzzy, diantaranya adalah: segitiga (Triangular Function), trapezium (Trapezoid Function), sigmoid, gauss dan lain-lain. Bentuk fungsi keanggotaan yang dipakai pada paper ini yang digunakan adalah bentuk segitiga dan trapezium. Definisi Triangular function secara matematika dapat dilihat pada gambar 2.6 dibawah ini :

Gambar 2.6. Fungsi keanggotaan Triangular function

18

Definisi Trapezoidal function secara matematika dapat dilihat pada gambar 2.7 dibawah ini:

Gambar 2.7. Fungsi keanggotaan Trapezoidal function 2.3.4 Fungsi Implikasi Fuzzy Pada umumnya aturan-aturan fuzzy dinyatakan dalam bentuk logika IF-THEN yang merupakan dasar relasi fuzzy (R). Relasi fuzzy dalam basis pengetahuan fuzzy didefinisikan sebagaifungsi implikasi fuzzy. Beberapa fungsi implikasi fuzzy terdapat pada tabel 2.2 dibawah ini.

19

Tabel 2.2. Beberapa tipe fungsi implikasi fuzzy

2.3.5 Defuzzifikasi Defuzzifikasi merupakan proses dimana suatu nilai fuzzy output dari fuzzy rule diambil dan dimasukkan kedalam suatu fungsi keanggotaan keluaran untuk mendapatkan hasil akhir yang disebut crisp output. Metoda defuzzifikasi yang umum digunakan adalah Centre of Gravity (COG) defuzzification , didefinisikan sebagai berikut: (2.9) dengan y = nilai keluaran (output) cj = nilai tengah da ri keluaran fungsi keanggotaan ke-j Uuj(u) = keluaran fungsi anggota Uj = fuzzy set R = jumlah aturan (rule) 2.3.6 Pemodelan Kontrol Logika Fuzzy Pada paper ini dikembangkan control motor dc mengunakan Logika Fuzzy yang dibentuk kedalam 2 kontroler: a) Fuzzy Speed Controller yang digunakan untuk mengontrol kecepatan motor . b) Fuzzy Current Limitter yang digunakan untuk membatasi arus jangkar pada motor.

20

2.4 Karakteristik Beban Non-linier 2.4.1 Perencanaan Mobil Listrik 2.4.1.a Kecepatan Kecepatan mobil listrik yang kami buat diharapkan mencapai kecepatan maksimum pada jalan lurus + 20 km/jam dengan memperhitungkan gaya gesekan antara roda dengan jalan, dan gaya aerodinamika. 2.4.1.b Massa Massa total mobil beserta driver adalah 200 kg dengan rincian massa driver (pengendara) 70kg, rangka mobil 70 kg, 3 buah accu 39 kg (tiap aki sekitar 13 kg) , 1 buah motor brushed dc 15 kg, rangkaian driver 6 kg. 2.4.1.c Konsep Desain Spesifikasi desain mobil listrik: Panjang mobil - Panjang keseluruhan (body) : 185 cm - Panjang antar roda (depan belakang) : 95 cm Lebar mobil - Body : 95 cm - Antar roda (kanan kiri) : 77 cm Tinggi mobil - Tanah ke chasis : 12,5 cm - Tinggi body keseluruhan (termasuk rollbar) :113 cm - Mesin : Motor Brushed DC 48V/700W - Sistem Pengereman : Mekanik - Ukuran velg : 14 inchi - Bodi : Besi + plastik

21

2.4.2 Teori Pendukung Rancangan Mekanik Mobil Listrik Pada mobil saat melaju mempunyai tiga buah macam gaya. Gaya ini sangat berpengaruh pada pendisaianan mobil apakah mobil akan sesuai dengan yang kita inginkan. Tiga buah macam gaya tersebut adalah sebagai berikut: 2.4.2.a Gaya gesekan pada roda Gaya ini sangat dipengaruhi oleh koefisien gesek antara ban dengan lintasan serta kemiringan/tanjakan pada lintasan. Persamaan untuk gaya gesek ini adalah sebagai berikut: Untuk kemiringan lintasan sama dengan 0 derajat F = m.g.Cg.cos 0 = m.g.Cg Untuk kemiringan lintasan sebesar F1 = m.g.Cg.cos Dimana : F = gaya gesek yang bekerja pada mobil (N) m = massa total mobil ( termasuk driver ) (kg) g = percepatan gravitasi bumi (9,81 m/s2) (m/s2) Cg = koefisien gesek 2.4.2.b Gaya berat pada mobil Gaya ini bekerja pada saat mobil berada di kemiringan tertentu. Besarnya kemiringan sangat mempengaruhi besarnya gaya ini. Dengan m merupakan massa total mobil , g percepatan gravitasi bumi (9,81 m/s2), dan merupakan besarnya sudut kemiringan lintasan, maka besarnya gaya dapat ditentukan dengan persamaan berikut : F2 = m.g.sin (2.12) (2.10)

(2.11)

22

2.4.2.b.1 Gaya gesekan udara ( gaya aerodinamika ) Gaya ini adalah gaya yang bekerja pada saat mobil melaju dan sangat dipengaruhi oleh kecepatan angin. Besarnya gaya ini dapat ditentukan sebagai berikut : F3 = CB A V2 (2.13) Sehingga besarnya gaya total mobil saat melaju adalah : Ftotal = F1+F2+F3 2.4.2.c Torsi Motor DC Tenaga mekanis yang dibangkitkan oleh jangkar yang berputar pada kecepatan m rad/s adalah m dengan adalah torsi (elektromagnetik). Torsi ini ditimbulkan pada saat arus jangkar adalah ia pada tegangan (induksi) jangkar e, tenaga jangkar adalah e ia. Jadi m = e ia , menjadi : =Fxs (2.15) = B.ia.l.s m.g.Cg.s Keterangan : = torsi (Nm) F = Gaya (Newton) s = Jarak (Meter) m = massa total mobil ( termasuk driver ) (kg) g = percepatan gravitasi bumi (9,81 m/s2) (m/s2) Cg = koefisien gesek pada brushed / komutator dan bearing B = Kerapatan fluks (Wb/ m2 ) L = Panjang konduktor (m) Sehingga dari rumus diatas, didapatkan daya yang dibutuhkan oleh motor untuk menggerakkan mobil listrik dengan beban yang telah ditentukan. Pout = Eb x ia (2.16) (2.14)

23

Eb =

= C.

Keterangan : Pout = Daya pada motor (Watt) Eb = Tegangan jangkar motor (Volt) ia = arus jangkar (A) Z = Jumlah lilitan konduktor P = Jumlah kutub N = Putaran motor (rpm) a = P (untuk Lap Winding) atau a = 2 (untuk Wave Winding) Hubungan antara torsi dengan daya adalah : Pout = T x = T.2. Nr Jika kita gabungkan 2 persamaan di atas maka akan diperoleh : Pout = T.2. Nr T= T= Substitusi persamaan 5 & 7 m.g.Cg.s = m Keterangan : T = Torsi (Nm) (2.19) (2.18) (2.17)

24

Berdasarkan teori diatas, maka di dapatkan : 1. Chasis mobil menggunakan bahan pipa besi dan besi siku dengan prosentase 85%, digunakan pada bagian rangka utama. Plastik dengan prosentase 15%, digunakan sebagai bahan body bagian depan dan samping mobil. 2. Untuk penggerak dari mobil listrik menggunakan 1 Motor brushed DC 48 Volt, 700 Watt yang dipasang ke roda belakang. 3. Sistem Rem menggunakan pengereman secara mekanik menggunakan disc brake sepeda motor jenis bebek, dipasang pada bagian As roda belakang mobil bagian kanan dan kiri. 2.5 MIKROKONTROLER Semakin cepatnya perkembangan teknologi di zaman sekarang ini, khususnya dunia mikroelektronika, banyak kita temui penggunaan mikrokontroler pada berbagai peralatan. Mikrokontroler dapat kita gunakan untuk berbagai aplikasi misalnya pengendalian, otomasi industri, akuisiisi data dan sebagainya mulai dari sistem yang sederhana hingga sistem yang kompleks. Mikrokontroler ini sering digunakan karena memiliki beberapa keuntungan, diantaranya harga murah, dapat diprogram berulang kali, serta dapat kita program sesuai dengan keinginan. Salah satu mikrokontroler yang sedang berkembang adalah mikrokontroler AVR (Alf and Vegards Risc processor) dari Atmel yang digunakan pada proyek akhir ini. 2.5.1 Mikrokontroler AVRAT Mega 16 AVR merupakan seri mikrokontroler CMOS 8-bit hasil pabrikan Atmel, berbasis arsitektur RISC (Reduced Instruction Set Computer) yang ditingkatkan.Pada mikrokontroler Hampir semua instruksi dieksekusi dalam waktu satu siklus clock. AVRAT Mega 16 mempunyai 32 register general-purpose, timer/counter fleksibel dengan mode compare, interrupt internal dan eksternal, serial UART, programmable Watchdog Timer, dan mode power saving. Selain itu AVR juga Mempunyai ADC dan PWM internal.AVR juga mempunyai In-System Programmable

25

Flash on-chip, yaitu memori program yang dapat diprogram ulang didalam sistem menggunakan hubungan serial SPI.1, Berikut ini pada gambar 2.8 contoh chip AMEGA 16.

Gambar 2.8 Chip ATMEGA 16 buatan ATMEL 2.5.2 Arsitektur Mikrokontroler AVR AT Mega 16 Untuk lebih jelas tentang arsitektur dari AT Mega 16 ditunjukan pada gambar 2.10 AT Mega 16 mempunyai throughput mendekati 1 MIPS per MHz membuat disainer sistem untuk mengoptimasi komsumsi daya versus kecepatan proses. Beberapa keistimewaan dari AVR AT Mega 16 antara lain: 1. Advanced RISC Architecture a. 130 Powerful Instructions Most Single Clock Cycle Execution b. 32 x 8 General Purpose Fully Static Operation c. Up to 16 MIPS Throughput at 16 MHz d. On-chip 2-cycle Multiplier 2. Nonvolatile Program and Data Memories a. 8K Bytes of In-System Self-Programmable Flash b. Optional Boot Code Section with Independent Lock Bits c. 512 Bytes EEPROM d. 512 Bytes Internal SRAM e. Programming Lock for Software Security

26

3. Peripheral Features a. Two 8-bit Timer/Counters with Separate Prescalers and Compare Mode b. Two 8-bit Timer/Counters with Separate Prescalers and Compare Modes. c. One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and Capture Mode d. Real Time Counter with Separate Oscillator e. Four PWM Channels f. 8-channel, 10-bit ADC g. Byte-oriented Two-wire Serial Interface h. Programmable Serial USART 4. Special Microkontroler Features a. Power-on Reset and Programmable Brown-out Detection b. Internal Calibrated RC Oscillator c. External and Internal Interrupt Sources d. Six Sleep Modes: Idle, ADC Noise Reduction, Powersave, Power-down, Standby and Extended Standby. 5. I/O and Package a. 32 Programmable I/O Lines b. 40-pin PDIP, 44-lead TQFP, 44-lead PLCC, and 44pad MLF 6. Operating Voltages a. 2.7 - 5.5V for AT Mega 16L b. 4.5 - 5.5V for AT Mega 16 Pada gambar 2.9 dibawah ini adalah blok diagram arsitektur ATMEGA 16.

27

Gambar 2.9 Blok Diagram Arsitektur ATMEGA 16 2.5.3 Konfigurasi Pin AVR AT Mega 16 Pin-pin yang terdapat pada Mikrokontroler AVR AT Mega 16 dengan jenis kemasan 40-pin DIP (dual in-line package) dapat dilihat pada gambar 2.5 Kemasan pin tersebut terdiri dari 4 Port yaitu Port A, Port B, Port C,Port D. Masing-masing Port terdiri dari 8 buah pin. Selain itu terdapat pula pin RESET, VCC, 2 buah GND, AVCC, XTAL1, XTAL2 dan AREF.2

28

Gambar 2.10 PIN pin AVR ATMEGA 16 Keterangan dan penjelasan dari pin-pin AVR AT Mega 16 pada gambar 2.10 diatas adalah sebagai berikut : 1. VCC : Suplai tegangan digital 2. GND : Ground 3. Port A : Port A berfungsi sebagai masukan analog ke A/D (Analog /Digitalconverter) Port A juga dapat difungsikan sebagai 8-bit bi-directional port I/O, hal ini dapat dilakukan jika A/D konverter tidak digunakan. Pin-pin pada port ini dilengkapi dengan resistor-resistor internal pull-up. Ketika port A digunakan sebagai input, pull-up eksternal yang rendah akan menjadi sumber arus jika resistorresistor pull-up diaktifkan. Pin-pin pada port A adalah tri-state ketika kondisi reset menjadi aktif sekalipun clock tidak aktif. 4. Port B : Port B adalah port I/O 8-bit bi-directional dengan resistor-resistor internalpull-up. Bufferoutputport B mempunyai karaketristik drive yang simetris dengan kemampuan sink dan source yang tinggi. Sebagai input, port B akan mempunyai pull jika resistorresistor pull-up diaktifkan. Pin-pin pada port B merupakan jenis tri-state, yaitu ketika kondisi reset

29

AVR ATMEGA 16 menjadi aktif sekalipun clock tidak diaktifkan. 5. Port C : Port C adalah port I/O 8-bit bi-directional yang dilengkapi dengan resistor-resistor internal pull-up. Buffer output port C mempunyai karaketristik drive yang simetris dengan kemampuan keduanya sink dan source yang tinggi. Sebagai input, port C yang mempunyai pull-upeksternal yang rendah akan menjadi sumber arus jika resistor-resistor pull-up diaktifkan. Pin-pin pada port C adalah tristate, yaitu ketika kondisi reset menjadi aktif seklipun clock tidak aktif. Jika antarmuka JTAG enable, resistor-resistor pull-up pada pin-pin PC5(TDI), PC3(TMS), PC2(TCK) akan diktifkan sekalipun terjadi reset. 6. Port D : Port D adalah port I/O 8-bit bi-directional dengan resistor-resistor internalpull-up. Buffer output pada port D mempunyai karaketristik drive yang simetris dengan kemampuan sink dan source yang tinggi. Sebagai input, port D mempunyai pull-up eksternal yang rendah, dan akan menjadi sumber arus jika resistor-resistor pull-up diaktifkan. Pin-pin pada port D adalah tri-state, yaitu ketika kondisi reset menjadi aktif sekalipun clock tidak aktif. 7. Reset : Sebuah low level pulsa yang lebih lama daripada lebar pulsa minimum pada pin ini akan menghasilkan reset meskipun clock tidak berjalan. 8. XTAL1 : Inputinverting penguat Oscilator dan input intenal clock operasi rangkaian. 9. XTAL2 : Output dari penguat invertingOscilator. 10. AVCC : Pin suplai tegangan untuk PortA dan A/D converter Sebaiknya eksternalnya dihubungkan ke VCC meskipun ADC tidak digunakan. Jika ADC digunakan seharusnya dihubungkan ke VCC melalui low pass filter. 11. AREF : Pin referensi analog untuk A/D konverter.

30

2.5.4 Struktur Memori Untuk memaksimalkan performa dan paralelisme dari sistem mikrokontroler, AVR menggunakan arsitektur Harvard (dengan memori dan bus terpisah untuk program dan data). Instruksi pada memori program dieksekusi dengan singlepipelininglevel. Ketika sebuah instruksi sedang dikerjakan, instruksi berikutnya diambil dari memori program. AT Mega 16 memiliki 16K byte flash memori dengan lebar 1 atau 32 bit. Kapasitas memori tersebut terbagi manjadi dua bagian, yaitu bagian bootprogram dan bagian aplikasi program. Berikut ini gambar 2.11 sebuah peta memori flash.

Gambar 2.11 Peta memori Flash Pada AT Mega 16 memiliki 32 register, 64 register I/O dan 1024 data internal SRAM yang dapat mengakses semua mode-mode pengalamatan. Pada gambar 2.12 dibawah ini sebuah peta memori SRAM.

31

Gambar 2.12 Peta memori SRAM 2.5.5 Port Sebagai Input/Output Digital AT Mega 16 mempunyai empat buah port yang bernama Port A, Port B, Port C, dan Port D. Keempat port tersebut merupakan jenis bi-directional dengan pilihan internal pull-up. Tiap port mempunyai tiga buah register bit, yaitu DDxn, PORTxn dan PINxn. Huruf xmewakili nama huruf dari port sedangkan huruf n mewakili nomor bit. Bit DDxn terdapat pada I/O address DDRx, bit PORTxn terdapat pada I/Oaddress PORTx dan bit PINxn terdapat pada I/O address PINx. Bit DDxn dalam register DDRx (DataDirectionRegister) menentukan arah pin. Bila DDxn diset 1 maka Px berfungsi sebagai pinoutput. Bila DDxn diset 0 maka Px berfungsi sebagai pininput. Bila PORTxn diset 1 pada saat pin terkonfigurasi sebagai pin masukan, dengan demikian maka resistor pull-up akan diaktifkan. Untuk mematikan resistor pull-up, PORTxn harus diset 0 atau pin dikonfigurasi sebagai pin luaran. Pin port adalah tri-state setelah kondisi reset. Bila PORTxn diset 1 pada saat pin terkonfigurasi sebagai pinoutput maka pinport akan berlogika 1. Dan bila PORTxn diset 0 pada saat pin terkonfigurasi sebagai pinoutput maka pinport akan berlogika 0. Saat mengubah kondisi port dari kondisi tri-state (DDxn=0, PORTxn=0) ke kondisi outputhigh (DDxn=1, PORTxn=1) maka harus ada kondisi peralihan apakah

32

itu kondisi pull-upenabled (DDxn=0, PORTxn=1)atau kondisi outputlow (DDxn=1, PORTxn=0). Pada umumnya kondisi pullupenabled dapat diterima sepenuhnya. Jika hal ini bukan suatu masalah, maka bit PUD pada register SFIOR dapat diset 1 untuk mematikan semua pull-up dalam semua port. Peralihan dari kondisi input dengan pull-up ke kondisi output low juga menimbulkan masalah yang sama. Kita harus menggunakan kondisi tri-state (DDxn=0, PORTxn=0) atau kondisi output high (DDxn=1, PORTxn=0) sebagai kondisi transisi. 2.5.6 Port Sebagai Analog Digital Converter (ADC) AT Mega 16 memiliki kelebihan berupa 10 bit internal ADC. ADC ini terhubung paada 8 channel multiplexer analog yang melewatkan 8 jenis masukan dari pin-pin pada port A. Piranti ini juga dilengkapi 16 kombinasi masukan tegangan differensial. Dua dari masukan differensial (ADC 1, ADC 0 dan ADC 2, ADC 3) juga dilengkapi dengan programmable gain stage. Pin-pin ADC ini juga memiliki rangkaian sample dan hold, yang membuat nilai masukan menjadi konstan hingga berakhir konversi. Waktu yang diperlukan ADC untuk menyelesaikan konversi adalah 60 260 uS. ADC internal dapat diaktifkan dengan cara mengatur ADC enable bit, ADEN didalam ADCSRA. Tegangan referensi dan pemilihan input channel tidak akan berjalan sampai ADEN telahdiset. Hasil berupa 10 bit data disimpan didalam registerregisterkhusus, yaitu ADC Data Registers (ADCH dan ADCL). Ketika konversi telah selesai maka ADC dapat meng-interupt diri sendiri. Saat ADC berada dalam posisi antara membaca register ADCH dan ADCL, maka interupsi akan aktif meskipun data yang telah dihasilkan hilang. Hal-hal yang berhubungan dengan internal ADC pada AT Mega 16 sebagai berikut :

33

1. Channel Masukan ADC Single Conversion Mode. Pada saat menggunakan mode Single Conversion Mode, harus selalu dipastikan telah memilih salah satu channel sebagai masukan. Untuk memindahkan channel masukan harus menunggu hingga ADC selesai melakukan konversi. Free Running Mode: Sama seperti pada Single Conversion Mode, namun karena masukan ADC telah dimulai secara otomatis, maka hasil konversi ini merupakan cerminan dari hasil konversi yanglalu pada channel tersebut. Ketika memindah ke channel penguatan differensial, hasil dari konversi pertama memiliki akurasi yang buruk, sehingga disarankan untuk tidak menggunakan hasil konversi yang pertama. 2. Tegangan Referensi Tegangan Referensi dari ADC (VREF) menunjukkan range konversi dari ADC. VREF dapat dipilih mulai dari AVCC, internal 2.56 V referensi, atau melalui pin AREF. AVCC terhubung dengan ADC melalui switch pasif, sementara internal 2.56 V dihasilkan dari internalbandgap (VBG) penguat internal dan pin AREF langsung terhubung ke ADC. Ketika menggunakan tegangan referensi eksternal (AREF) maka tidak diperbolehkan untuk menggunakan tegangan referensi internal. 3. Akurasi ADC n-bitsingle-endedADC mengkonversi tegangan secara linier antara GND dan VREF dalam tingkat 2n (LSB). Kode terendah dibaca sebagai 0 dan kode tertinggi dibaca 2n 1. 4. Offset Penyimpangan dari perpindahan pertama (0x000 ke 0x001) dibandingkan dengan perpindahan ideal (pada 0.5 LSB). Nilai adalah 0 LSB.

34

5. Gain Error Setelah menaikkan nilai offset, gainerror ada sebagai penyimpangan pada saat perpindahan terakhir (0x3FE ke0x3FF) dibandingkan dengan perpindahan yang ideal (pada 1.5LSB dibawah maksimum). Dengan nilai ideal 0 LSB.

6. Integral Non-Linearity (INL) Setelah Offset dan Gainerror, INL adalah penyimpangan maksimum dari perpindahan aktual dibandingkan dengan perpindahan ideal untuk semua kode. Dengan nilai idealnya adalah 0 LSB. 7. Differential Non-Linearity(DNL) Penyimpangan maksimum pada lebar perpindahan aktual (jarak antara dua batas perpindahan) terhadap lebar perpindahan ideal (1 LSB). Nilai idealnya adalah 0 LSB. 8. Hasil Konversi ADC Setelah konversi selesai (ADIF dalam posisi high), hasil dari konversi ini dapat ditemukan di ADC Result Registers (ADCH, ADCL).Untuk Single-Ended Conversion, menghasilkan: (2.20) Dimana : Vin= tegangan pada pin masukan Vref = tegangan referensi yang dipilih 2.5.7 Timer/Counter Timer/couter adalah tujuan umum single channel, module 8 bit timer/counter. Beberapa fasilitas chanel dari timer/counter antara lain: a. Counterchannel tunggal b. Pengosongan data timer sesuai dengan data pembanding

35

c. Bebas glitch, tahap yang tepat Pulse Width Modulator (PWM). d. Pembangkit frekuensi e. Eventcounterexternal

Gambar 2.13 Blok diagram timer counter Gambar 2.13 diatas sebuah diagram blok timer/counter 8 bit ditunjukan pada gambar di bawah ini. Untuk penempatan pin I/O telah di jelaskan pada bagian I/O di atas. CPU dapat diakses register I/O, termasuk dalam pin-pin I/O dan bit I/O. Device khusus registerI/O dan lokasi bit terdaftar pada deskripsi timer/counter 8 bit. Mikrokontroler AVR AT Mega 16 memiliki tiga buah Timer/Counter, yaituTimer 0 (8 bit), Timer 1 (16 bit) dan Timer 2 (8 bit). Timer/Counter 1 dapat menghitung sampai dengan 65536, Timer/Counter 0 atau 2 hanya sampai dengan 256. Diagram Waktu Timer/Counter Timer/counter sinkron clock timer (clkT0) oleh karena itu ditunjukan sebagai sinyal enableclock pada gambar 2.14 berikut. Gambar ini termasuk informasi ketika flaginterrupt dalam kondisi set. Pada Data timing digunakan sebagai dasar dari operasi timer/counter.

36

Gambar 2.14 Timing diagram timer/counter, tanpa prescaling Sesuai dengan gambar 2.15 dibawah timing diagram timer/counter dengan prescaling maksudnya adalah counter akan menambahkan data counter (TCNTn) ketika terjadi pulsa clock telah mencapai 8 kali pulsa dan sinyal clock pembagi aktif clock dan ketika telah mencapai nilai maksimal maka nilai TCNTn akan kembali ke nol. Dan kondisi flagtimer akan aktif ketika TCNTn maksimal.

Gambar 2.15 Timing diagram timer/counter, dengan prescaling

37

Gambar 2.16 Timing diagram timer/counter, menyeting OCFO, dengan prescaller (fclk_I/O/8) Pada gambar 2.16 diatas etika nilai ORCn sama dengan nilai TCNTn maka pulsa flagtimer akan aktif. TCNTn akan bertambah nilainya ketika pulsa clock telah mencapai 8 pulsa. Dan Pada gambar 2.17 dibawah kondisi akan berbalik (komplemen) kondisi ketika nilai TCNTn kembali kenilai 0 (overflow).

Gambar 2.17 Timing diagram timer/counter, menyating OCFO, pengosongan data timer sesuai dengan data pembanding, dengan prescailer (fclk_I/O/8)

38

Halaman ini sengaja dikosongkan

39

BAB III PERANCANAAN DAN PEMBUATAN PERANGKAT LUNAK


3.1 Konfigurasi Sistem Dalam membangun sistem rancang bangun Rancang Bangun Rangkaian Boost Converter Terkontrol Berbasis PI-Fuzzy Logic Controller Untuk Menyuplai Motor DC Pada Mobil Listrik dibutuhkan beberapa pendukung seperti yang terlihat pada gambar 3.1.

Set Point 48

FL C

ACCU

PI

Trigger

Boost Konv erter

Motor

DC Shunt

Gear

Box

Mobil Listrik

Sensor Tegangan

Gambar 3.1 Blok Diagram Kontrol Pada kontroler ini masukan diambil dari sinyal speed error (selisih antara putaran as referensi dan putaran as umpan balik yang dihasilkan oleh tacho meter) dan perubahan sinyal speed error (selisih sinyal error sebelumnya dengan sinyal error sekarang) sebagai masukan. Masukan akan masuk ke kontrol fuzzy yang kemudian mengatur gain dari Kp, sedangkan gain Ki dibuat tetap. Keluaran dari kontrol ini akan mengatur sinyal trigger pada PWM. PWM akan diatur duty cycle nya sampai putaran as sesuai dengan putaran as referensi. PWM ini memberikan sinyal pulsa ke bosst converter.

40

3.1.1 Boost Converter Pada sistem ini, boost converter digunakan untuk menaikkan tegangan dari baterai (accumulator) yang bernilai 36V ke 48V yang digunakan untuk menyuplai motor. 3.1.2 Sensor Tegangan Sensor tegangan dibangun dengan menggunakan resistor yang bertujuan sebagai pembagi tegangan, karena tegangan yang diukur besarnya lebih dari 5V. 3.1.3 Battery Pada proyek akhir ini battery digunakan sebagai sumber energi utama untuk menyuplai mobil listrik battery ini dipilih dengan spesifikasi tegangan 12V/36Ah yang diseri sebanyak 3 buah sehingga tegangan menjadi 36V. Pada proyek akhir ini dipilih baterai dengan spesifikasi tegangan 12V/36Ah yang diseri. Hal ini dikarenakan untuk menaikkan tegangan dengan perbandingan terlalu besar yaitu 1:3 namun mampu dioperasikan dalam sistem hingga sekitar 1 jam. Perhitungan kapasitas ini didasarkan pada kebutuhan dari waktu pengoperasian atau pemakaian dalam sistem. Desain perhitungan pemakaian aki: Dari perhitungan diatas kita dapat mengetahui Arus masukan Boost converter yang nilainya sama dengan arus pada Induktor: Iin = IL (Avg) Data yang diketahui : Vin = 36 V Vout = 48 V Io = 10 A Pout = 480 Watt R= = = 4,8

Fs = 40 KHz ;

41

IL(Avg) =

= 13,33 A

Jadi, Iin = IL(Avg) = 13,33 A Jika Asumsi lama pemakaian dari mobil listrik sekitar 3 jam, maka kapasitas aki dapat dihitung dengan persamaan. Ta = Iin x Lama pemakaian (jam) Lama pemakaian = Ta/Iin = 36/13,33 = 2,7 Jam Keterangan : Ta = Lama pemakaian arus baterei (dalam Ah) 3.1.4 Rangkaian Totempole Rangkaian Totempole digunakan sebagai kopling antara microcontroller dengan konverter DC-DC karena microcontroller tidak mampu mengendalikan konverter secara langsung. 3.1.5 Microcontroller ATmega 16 Microcontroller adalah otak dari kerja keseluruhan sistem.Pada proyek akhir ini digunakan microcontroller jenis Atmega16 yang memiliki 4 Port yang masing masing 8 bit. Pada sistemini microcontroller memproduksi sinyal PWM untuk switchingkonverter-konverter serta membaca tegangan yang dihasilkanuntuk dijaga nilainya. 3.2 Sistem Open Loop Perencanaan sistem secara open loop bertujuan untuk mendapatkan nilai karekteristik dari plant yang dikontrol. Parameter yang diambil dari perancangan sistem secara open loop ini adalah sebagai berikut :

42

a. Nilai Set point (Volt) b. Nilai Present Value (Volt) c. Nilai Time Settling (s) d. Nilai Konstanta K e. Grafik output response Blok diagram perencanaan sistem secara open loop ditunjukkan pada Gambar 3.2. Sedangkan Gambar 3.3 menunjukan Gambar perancangan sistem dengan disertai hardware.

Input

Plant

Output

Chopper-Fed DC Motor Drive (Continuous)

Gambar 3.2 Blok diagram system secara open loop


Speed Controller
wm

Current Controller
Iref g

Iref wref

Ref. Speed (rad/s)

<Speed wm (rad/s)>

Speed Berikut ini simulasi open loop padaReference saat beban 56kg :
Ia

<Armature current ia (A)>

selection

Speed Step

Filter Torque (N.m) Scope


Va Ia <Speed wm (rad/s)> v + -

618.03

Vd Torque Step

Torque selection
m k

DC Machine 300 W / 48 V TL
A+ F+ m

Ls a dc
AF-

Diode
D g

Continuous pow ergui

Vdc 36 V

Mosfet
Pulse Generator
S

? More Info

Read the Model Properties for initialization details

Gambar 3.3 Rangkaian Simulasi Open Loop Pada Saat Beban Bawah Diketahui pada gambar 3.3 diatas adalah percobaan dengan beban 56 Kg, 1 Kg = 9,81 N.m, Jadi Torsi = 549,46 N.m. Pada gambar 3.4 dibawah ini adalah hasil outputnya

43

Sehingga outputnya

Chopper-Fed DC Motor Drive (Continuous)

Gambar 3.4 Speed Controller 6 Hasil Gelombang Output Saat Batas Bawah Beban 56 kg.
wm

Current Controller
Iref g

Iref wref

Ref. Speed (rad/s)

<Speed wm (rad/s)>

Reference Speed Berikut ini simulasi open loop pada saat beban 80 : Speed Step
Ia

<Armature current ia (A)>

selection

Filter Torque (N.m) Scope


Va Ia <Speed wm (rad/s)> v + -

784.8

Vd Torque Step

Torque selection
m k

DC Machine 300 W / 48 V TL
A+ F+ m

Ls a dc
AF-

Diode
D g

Continuous pow ergui

Vdc 36 V

Mosfet
Pulse Generator
S

? More Info

Read the Model Properties for initialization details

Gambar 3.5 Rangkaian Simulasi Open Loop Pada Saat Beban Atas Diketahui pada gambar 3.5 diatas adalah percobaan dengan beban 80 Kg, 1 Kg = 9,81 N.m, Jadi Torsi = 784.8 N.m. Pada gambar 3.6 dibawah ini adalah hasil outputnya.

44

Hasil Outputnya

Gambar 3.6 Hasil Gelombang Output Saat Batas Atas Beban 80 kg. Pada table 3.1 dibawah ini didapatkan hasil simulasinya : Tabel 3.1 Hasil simulasi open loop No. Berat Orang Vout (Kg) Boost (V) 1. 56 44.1 2. 67 43.841 3. 70 43.7 4. 74 43.388 5. 80 43 3.3 Sistem Close Loop dengan Kontrol Tipe PI Tujuan dari pemasangan kontrol PI pada sistem adalah agar settling time lebih cepat sehingga posisi steady state lebih cepat terpenuhi dan menjaga agar selalu pada posisi steady state, (%ess=0). Blok diagram sistem dengan kontrol PI ditunjukkan pada Gambar 3.7.

Gambar 3.7 Blok diagram sistem dengan kontrol tipe PI

45

Dari blok diagram diatas didapatkan close loop transfer function, yamg disajikan pada persamaan 3.1. (3.1)

Jika i dipilih (tuning) sama dengan t , maka didapatkan persamaan 3.2. (3.2)

Parameter yang diambil dari perancangan sistem secara close loop dengan kontrol PI ini adalah sebagai berikut : 1. Nilai Setpoint (Volt) 2. Nilai Present Value (Volt) 3. Nilai Time Settling (s) 4. Nilai Konstanta K 5. Grafik output response Blok diagram perencanaan sistem close loop dengan kontrol PI ditunjukkan pada gambar 3.8. Sedangkan gambar 3.9 menunjukan Gambar perancangan sistem dengan disertai hardware.

Gambar 3.8 Blok diagram sistem secara close loop dengan kontrol PI

46

3.4 Sistem Close Loop dengan Kontrol Tipe PI Fuzzy Sama seperti kontrol PI, tujuan dari pemasangan kontrol pada sistem adalah agar settling time lebih cepat sehingga posisi steady state lebih cepat terpenuhi dan menjaga agar selalu pada posisi steady state, (%ess=0). Hanya saja digunakan Fuzzy Logic Kontroller untuk proses tuning dari Kp dan Ki. Blok diagram sistem dengan kontrol PI Fuzzy ditunjukkan pada Gambar 3.5

Gambar 3.9 Boost Converter Dengan Kontrol PI Fuzzy

Gambar 3.10 Gelombang Output Boost Converter Dengan Kontrol PI Fuzzy

47

Pada gambar 3.10 hasil output diatas, masih kurang sesuai dengan set point 48, tetapi respon diatas menunjukkan kalu fuzzy responnya smooth dan berkat i di set 0.01 maka respon kembali ke set poinnya lebih cepat. 3.5 Pembuatan Algoritma PI Fuzzy Perancangan perangkat lunak fuzzy Logic Controller secara rinci terdiri dari proses desain fuzzy inference system yang meliputi beberapa hal sebagai berikut: 3.5.1 Perencanaan Program Fuzzy Dalam proses perancangan perangkat lunak (software) program fuzzy logic controller memerlukan program development yang digunakan untuk membangun parameterparameter yang dibutuhkan dalam proses penulisan program fuzzy. Berikut ini gambar 3.11 adalah flowchart proses pengendali logika fuzzy secara lengkap beserta blok diagram kontroler secara lengkap

Gambar 3.11 Flowchart logika fuzzy

48

Gambar 3.12 Blok diagram kontroler Pada gambar 3.12 Langkah pertama dalam proses pembuatan system logika fuzzy di awali dengan penentuan dan pembuatan crisp input dan crisp output. Langkah pertama dalam proses logika fuzzy mengandung transformasi domain yang dinamakan fuzzyfikasi. Masukan crisp ini berupa besaran numerik yang nantinya akan diubah menjadi besaran linguistic pada proses fuzzyfikasi. Sebagai contoh, masukan crisp 100 derajat akan ditransformasikan dalam variable linguistik berupa low. Untuk mengubah bentuk masukan crisp menjadi besaran linguistic sebagai masukan fuzzy, fungsi keanggotaan pertama kali harus ditentukan untuk setiap masukan. Sekali fungsi keanggotaan ditentukan, nilai tersebut akan diproses menggunakan fuzzyfikasi secara realtime. Setelah itu nilai tersebut akan dibandingkan dengan informasi fungsi keanggotaan yang tersimpan untuk menghasilkan nilai masukan fuzzy. Berikut ini adalah flowchart proses penentuan Crisp Input dan Crisp output secara umum, dapat dilihat pada gambar 3.13 dibawah ini.

49

A
Sensor Kecepatan

A
Gambar 3.13 Flowchart proses penentuan crisp input (kuantitas) dan penentuan crispoutput Pada proyek akhir ini menggunakan dua input dan satu output. Input yang digunakan adalah error (error = setting point preset value) dan delta error (delta error = Error (Error-1) 3.5.2 Fungsi Keanggotaan Fungsi keanggotaan (membership function) digunakan untuk menyatakan fungsi secara keseluruhan dari sistem yang akan dibangun dalam proyek akhir ini. Untuk menyatakan derajat keanggotaan (membership function) bagi masing -masing variable adalah error, delta error, output. Berikut ini adalah flowchart proses Fuzzyfikasi secara umum, dapat dilihat pada gambar 3.14

50

Gambar 3.14 Flowchart proses Fuzzyfikasi Pada sistem ini terdapat tiga buah label membership function error dan lima label membership function delta error, yaitu: NB=negative besar, ZE=zero error, PB=positive besar. Label antara error dan delta error adalah sama. 3.5.3 Rule Base Rule base adalah sekelompok aturan fuzzy dalam berhubungan dengan keadaan sinyal masukan dan sinyal keluaran. Rule base merupakan dasar dari pengambilan keputusan atau inference proses untuk mendapatkan aksi keluaran sinyal kontrol dari suatu kondisi masukan yaitu error dan delta error dengan.berdasarkan rule-rule yang telah ditetapkan. Pendefinisian Rule Base tergantung dari sinyal kontrol. Pendefinisian rule -rule

51

tergantung dari kebutuhan dan sesuaikan dengan data yang telah didefinisikan pada table kuantitasi. Jumlah kelompok Rule Base yang dibuat sesuai dengan sinyal keluarannya. Jika sinyal keluarannya dikehendaki hanya terdapat satu macam, maka ini berarti ada dua k elompok Rule Base, demikian seterusnya. Contoh : diketahui sebuah sistem kontrol umum dengan dua input umpan balik yaitu error e(t) dan delta error dE(t). Sebagai outputnya adalah sinyal control u (t). Dari permasalahan diatas, diketeahui bahwa outputnya hanya satu macam yaitu berupa u(t). Oleh karena itu dalam kasus ini hanya terdapat satu macam kelompok Rule Base yaitu kelompok Rule Base untuk sinyal u(t). Lihat Tabel 3.2 Tabel 3.2 Rule base fuzzy

52

Gambar 3.15 Rule Base Fuzzy 3.5.4 Membership function Fungsi keanggotaan (membership function) menyatakan fungsi secara keseluruhan untuk menyatakan derajat keanggotaan (membership function) bagi masing -masing variabel fungsi keanggotaan pada umumnya berbentuk segitiga. Pada gambar 3.16 dibawah ini adalah membership function error

53

Gambar 3.16 Membership Function Error

Gambar 3.17 Membership Function derror Pada gambar 3.17 diatas adalah sebuah membership function dari delta error. Dimana rangenya dibatasi dari 36 sampai 48 Volt.

54

Dibawah ini adalah gambar 3.18 dimana dari membership function error dan delta error maka dihasilkan membership funtion output.

Gambar 3.18 Membership Function Output 3.5.5 Flowchart System

Gambar 3.19 Flowchart Utama Sistem

55

Pada gambar 3.19 flowchart diatas saat tegangan input pada boost converter melebihi tegangan referensi maka nilai duty cycle akan naik sedangkan saat input boost converter dibawah tegangan referensi maka nilai duty cycle akan turun.

Gambar 3.20 Flowchart System

56

Pada gambar 3.20 diatas untuk kontrol tegangan output boost konverter, pertama adalah memasukkan nilai set point, sensor tegangan tegangan output boost pada saat awal. Nilai hasil pembacaan sensor tegangan menjadi input control fuzzy yaitu berupa error dan delta error. Error diperoleh dari set point present value, sedangkan delta error diperoleh dari error sekarang error sebelumnya. Nilai error dan delta error kemudian diproses untuk mendapatkan nilai kontrol proportional. Nilai I diperoleh dari Ki*integral. Nilai integral sendiri diperoleh dari error dikalikan dengan time sampling. Hasil dari kontrol PI kemudian digunakan untuk mengatur dutycycle dari PWM yang digunakan untuk mengatur tegangan keluaran dari boost konverter.

57

BAB IV PENGUJIAN DAN ANALISA


Pada bab ini akan dibahas mengenai pengujian sistem alat, pengujian sistem program beserta integerasi antara sistem alat dan sistem program yang telah direncanakan, di buat dan di analisa. Tujuan dari pengujian dan analisa ini adalah untuk mengetahui keberhasilan dari keseluruhan alat dan program yang telah dirancang. Pengujian dilakukan pada masing-masing bagian terlebih dahulu, kemudian masing-masing bagian tersebut di uji secara integerasi keseluruhan. Setelah proses pengujian dan pengambilan data, langkah selanjutnya adalah menganalisa hasil pengujian tersebut. Acuan yang diguakan dalam proses analisa adalah data yang didapat pada saat proses perencanaan dan juga data-data hasil analisa secara teori. Proses selanjutnya adalah memberikan kesimpulan dari masing-masing analisa yang telah dilakukan sebelumnya. 4.1 Pengujian Sistem Minimum Mikrokontroller Pengujian dilakukan untuk mengetahui sistem minimum bekerja dengan baik, maka diadakan pengujian pada jalur-jalur port yang dimiliki oleh mikrokontroler AT Mega 16. Prosedur pengujian : 1. Mempersiapkan voltmeter untuk mengukur level tegangan keluaran tiap port dari mikrokontroler.

2. Membuka program yang akan dites, kemudian mengcompilenya. 3. Mendownload program ke dalam mikrokontroler AT Mega 16 dengan menggunakan ISP downloader.

Listing program menyalakan semua port (set tiap port sebagai luaran). PORTA=PORTB=PORTC=PORTD=0xFF. Pada gambar 4.1 hasil yang diperoleh adalah semua port akan mengeluarkan tegangan sebesar 5 volt, sehingga bisa dipastikan sistem minimum dapat bekerja degan baik.

58

Gambar 4.1. Pengujian Minimum Sistem AT-MEGA 16

4.2 Pengujian ADC Pengujian analog ke digital converter(ADC) internal mikrokontroler ini bertujuan untuk mengetahui kinerja dari ADC dalam mengkonversi tegangan analog ke tegangan digital.ADC yang digunakan adalah 8 bit internal ADC pada channel 0 (PORTA.0). tegangan referensi (Vreff) yang digunakan adalah pada Pin Areff dimana tegangan sama dengan tegangan sumber dari mikrokontroler, yaitu sebesar 5 volt. Setting ADC menggunakan clock sebesar 500.000 Khz dengan menggunakan automatic scant Input. Pengujian ini dilakukan dengan cara memberikan masukan pada ADC internal mikrokontroler ATmega16 pada channel nol berupa tegangan analog dengan nilai maksimal sama dengan Vreff yaitu sebesar 5 Volt DC. Tegangan analog berasal dari keluaran sensor tekanan menggunakan rangkaian potensiometer yang berfungsi untuk mengatur level tegangan analog yang masuk ke Port ADC channel 0. Untuk mengetahui nilai konversi yang terbaca oleh mikrokontroler digunakan LCD sebagai display. Dalam proses perhitungan pembacaan konversi tegangan analog ke tegangan digital secara teori dapat dilakukan dengan menggunakan persamaan 4.2. sebelum menghitung nilai rata-rata 1 Heksadesimal dapat dihitung menggunakan persamaan 4.1 dibawah ini.

59

(4.1) (4.2) Dimana : VADC Vin Vreff 28 = Tegangan terstruktur yang masuk ke mikrokontroller = Tegangan analog yang masuk ke Pin ADC = Tegangan referensi sebesar 5 volt = Setting ADC yang digunakan, yaitu sebanyak 8 bit

Untuk membandingkan hasil pembacaan teori dengan pembacaan praktek menggunakan persamaan 4.3 dibawah ini. (4.3) Berikut ini adalah contoh perhitungan ADC secara teori, dengan tegangan VREFF = 5 Volt dan dengan tegangan Vin yang berubah-ubah. a) Perhitungan dengan tegangan Input Vin sebesar 1 volt adalah sebagai berikut: (4.4) b) Dengan perhitungan diatas, setelah dibandingkan dengan hasil pengujian maka didapatkan prosentase error sebagai berikut: (4.5) c) Perhitungan dengan tegangan Input Vin sebesar 2.5 volt adalah sebagai berikut: (4.6)

60

Dengan perhitungan diatas, setelah dibandingkan dengan hasil pengujian maka didapatkan prosentase error sebagai berikut: (4.7) d) e) Perhitungan dengan tegangan Input Vin sebesar 4.5 volt adaah sebagai berikut: (4.8) Dengan perhitungan diatas, setelah dibandingkan dengan hasil pengujian maka didapatkan prosentase error sebagai berikut : (4.9) Data hasil pengujian ADC dapat dilihat pada tabel 4.1 berikut ini: Tabel 4.1 Data pengujian ADC internal mikrokontroler

61

Data perhitungan konversi tegangan analog ke digital beserta prosentase error-nya secara lengkap dapat dilihat pada tabel 4.1. Proses ketelitian pembacaan ADC pada mikrokontroler ATmega16 ini mempunyai perubahan prosentase error antara 0% sampai dengan 6% dalam setiap perubahan rata-rata heksadesimal yang masuk ke ADC mikrokontroler ATmega16.

4.3 Pengujian rangkaian dan sambungan Pengujian dilakukan mulai dari pengecekan terhadap setiap rangkaian dan sambungan yang telah dibuat apakah sudah sesuai dengan gambar rangkaian yang dimaksud atau belum. Pemasangan kabel, penyolderan dan komponen yang lainnya juga perlu di cek ulang apakah sudah terpasang dengan tepat. Pada pengujian proyek akhir ini pengujian dilakukan dengan menggunakan alat ukur power harmonic analyzer seperti yang terlihat pada Gambar 4.2, untuk mengetahui bentuk gelombang, spectrum dan nilai dari arus, tegangan, daya dan parameter-parameter yang lain.

Gambar 4.2 Fluk 41B 4.4 Pengujian Sensor Tegangan Sensor tegangan dibangun dengan prinsip pembagi tegangan dari tegangan panel surya maksimal 48 Volt hingga 36 Volt. Tegangan 48 Volt DC kemudian melalui rangkaian pembagi tegangan karena tegangan besarnya lebih dari 5 Volt. Tegangan 5 Volt inilah yang kemudian digunakan sebagai referensi pembacaan oleh mikrokontroler melalui ADC. Berikut Gambar 4.3 adalah sensor tegangan yang dipakai pada proyek akhir.

62

Gambar 4.3. Rangkaian Sensor Tegangan

Tabel 4.2 Data percobaan sensor tegangan : Vout Sensor Vout Error NO Vin Tegangan Teori (%) 1 2 3 4 5 6 7 8 9 10 36 37 38 39 40 41 42 43 44 45 2.79 2.8 2.81 2.82 2.88 3.13 3.19 3.21 3.174 3.455 2.81 2.89 2.97 3.05 3.12 3.2 3.28 3.36 3.44 3.51 0.71 3.11 5.38 7.54 7.69 2.18 2.74 4.46 0.07 1.56

63

11 12 13

46 47 48

3.52 3.63 3.707

3.59 3.67 3.75

1.94 1.08 1.14

Pada Tabel 4.2 di atas adalah hasil pengukuran dari sensor tegangan. Pengukuran dilakukan dengan mengubah tegangan input . Dari data yang diperoleh dapat dilihat bahwa tegangan output hasil pengukuran dan hasil perhitungan teori yang hanya memiliki selisih yang kecil. Hal ini dapat dilihat pada kolom persen error. Error yang terjadi tidak terlalu besar hanya sekitar 1,1%. 4.5 Pengujian Sensor Kecepatan Pada pengujian sensor kecepatan, digunakan motor dc 48V yang dipasangi sensor rotary yang telah di buat sebelumnya dapat dilihat pada gambar 4.4.

Gambar 4.4 Sensor rotary encoder pada as roda dan driver Kecepatan diregulasi dengan merubah tegangan input pada motor. Dari pengujian, di dapatkan data seperti pada tabel 4.3. Tabel 4.3 Pembacaan putaran berdasarkan perubahan beban No. Berat Orang (Kg) RPM 1. 0 99 2. 56 75 3. 67 67 4. 70 64

64

5. 6.

74 80

60 56

Gambar 4.5 pembacaan sensor kecepatan pada LCD :

Gambar 4.5 Pembacaan sensor kecepatan pada LCD saat tanpa beban 4.6 Pengujian Respon Kontrol PI Fuzzy Pada pengujian ini dilakukan pengujian respon kontrol PIFuzzy yang digunakan untuk mengontrol kecepatan putaran motor DC pada output boost konstan. Diharapkan dengan menggunakan kontrol ini dapat mempertahankan kecepatan putaran motor dc saat terjadi perubahan beban. Pada pengambilan data tegangan ouput boost converter diset pada tegangan 48 V, yang diatur langsung pada program seperti berikut : float s=0.3; float k=0.6; float l=0.9; float m =1.12; float h=1.15; float TimeSampling=0.5; float sp=48 ; float P; Gambar 4.6 dibawah adalah respon kontrol yang terekam pada hyperterminal pada codevision :

65

Gambar 4.6 Respon kontrol yang terekam pada hyperterminal pada codevision Pada saat mobil listrik diberi beban, respon kontrol terdapat error yang cukup besar dibandingkan saat mobil listrik tanpa beban.

4.7 Kesesuaian Antara Perencanaan dan Hasil Setelah dilakukan perencanaan pembuatan kontol PI - Fuzzy untuk mengontrol output boost converter yang digunakan menyuplai motor dc melalui perhitungan secara teori maka untuk selanjutnya dilakukan simulasi dengan software Matlab. Dari simulasi bisa didapat hasil yang hampir sesuai dengan yang di harapkan yaitu memiliki error <20%, hal ini disebabkan datasheet pada motor pada simulasi berbeda dengan datasheet motor pada real. Setelah melakukan perencanaan dan simulasi kemudian dilakukan pembuatan alat. Dari hasil pengujian alat yang dibuat, hasilnya sudah mendekati hasil yang di harapkan yaitu dapat menaikkan tegangan dc-dc converter dengan beban yang berubahubah menjadi tegangan yang diharapkan konstan, dikarenakan kualitas dari komponen yang dipakai dan untuk pemanfaatan belum bisa sesuai dengan yang diharapakan. Dalam perencanaan output tegangan boost converter harus pada 48V konstan, tetapi pada alat ini output tegangan boost converter mendekati 48V, hal ini kemungkinan disebabkan losses yang terjadi pada integrasi seluruh rangkaian. Berikut pada gambar 4.7 dibawah ini gambar keseluruhan alat

66

Berikut gambar alat secara keseluruhan :

Gambar 4.7 Alat secara keseluruhan

67

BAB V PENUTUP

5.1 Kesimpulan Setelah dilakukan proses perencanaan, pembuatan dan pengujian alat serta dengan membandingkan dengan teori teori penunjang, maka dapat disimpulkan beberapa hal mengenai hasil dari proyek akhir ini, yaitu : 1. Simulasi memperoleh hasil yang hampir sesuai dengan yang di harapkan yaitu memiliki error <20%, hal ini disebabkan datasheet pada motor pada simulasi berbeda dengan datasheet motor pada real. 2. Range duty cycle yang telah diperoleh pada uji hardware akan menjadi range duty cycle PWM mikrokontroller. 3. Pengaturan PWM mikro berbasis PI - fuzzy logic controller dapat mengendalikan kestabilan keluaran dari rangkaian yang disebabkan oleh pembebanan yang berubah-ubah pada saat rangkaian bekerja. 4. Dari data yang didapat, dapat dilihat bahwa penggunaan PI - fuzzy logic controller dapat mengendalikan keluaran dari rangkaian boost agar lebih cepat, smooth dan stabil.

5.2 Saran-saran Selama pengerjaan proyek akhir ini tentu tidak lepas dari berbagai macam kekurangan dan kelemahan, baik itu pada sistem atau peralatan yang dibuat. Untuk itu demi kesempurnaan alat yang kami buat, disarankan : 1. Pada saat pembuatan kontrol PI fuzzy logic controller, maka yang kita lakukan adalah menentukan nilai Kp dan Ki nya terlebih dahulu. Penetuan ini dilakukan dengan melihat respon open loop terlebih dahulu. 2. Penentuan batasan membership function dan rule base dari fuzzy logic controller harus teliti karena sangat berpengaruh terhadap respon output tegangan boost yang dikontrol.

DAFTAR PUSTAKA
[1] Handy Wicaksono, Analisa Performansi dan Robustness Beberapa Metode Tuning Kontroler PID pada Motor DC,Jurnal Teknik Elektro Vol. 4, No. 2, September 2004: 7078. [2] Rancang bangun rangkaian boost converter converter dan inverter 3 fasa sebagai penggerak mobil listrik berbasis mikrokontroler, Anintiya Maharani, PENS ITS, TA 2010. [3] Kendali kecepatan motor dc shunt dengan fuzzy logic controller dan fuzzy curent limiter, Pahrudin Hasibuan, Muhammad Ashari, Soebagio, ITS, 2007. [4] Rancang bangun modul dc dc converter dengan pengendali PI, Dina Mursyida, PENS ITS, TA 2010. [5] Effendi, Moh. Zaenal, Design of inductor, power point materi kuliah, Surabaya: PENSITS, 2007. [6] Rashid M.H., Power Electronics: Circuits, Devices and Applications, Prentice Hall, 1988. Fernuniversitt Gesamthochschule Hagen; in Germany. [7] Desain penyearah 1 fase dengan power factor mendekati unity dan memiliki thd minimum menggunakan kontrol pid-fuzzy pada boost converter, Setyo Suka Wahyu, PENS-ITS, TA 2011.

DAFTAR RIWAYAT HIDUP

Nama Tempat tanggal lahir Alamat Telepon / HP Email Hobi Cita-cita Motto

: Grandis Prima Havilandi : Sibolga, 07 April 1991 : Desa Mindi RT01/RW01, Sidoarjo, Jawa Timur : 0811913231159 : grandisprima@gmail.com : Olahraga, travelling, main game : Ingin Membahagiakan Orang Tua : Jangan Memaksakan Sesuatu Yang Tidak Kita Senangi Riwayat Pendidikan : SDN Santeong 084084 Sibolga tahun 1997-2003 SLTPN 1 Sibolga tahun 2003-2006 SMAN 3 Bhayangkari Sidoarjo tahun 2006-2009 Teknik Elektro Industri tahun 2009-sekarang Pens-ITS

Program /***************************************************** This program was produced by the CodeWizardAVR V1.25.8 Professional Automatic Program Generator Copyright 1998-2007 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com Project : Version : Date : 7/7/2011 Author : F4CG Company : F4CG Comments:

Chip type : ATmega16 Program type : Application Clock frequency : 11.059200 MHz Memory model : Small External SRAM size : 0 Data Stack size : 256 *****************************************************/ #include <mega16.h> #include <lcd.h> #include <delay.h> #include <math.h> #include <stdio.h> #include <stdlib.h> // Alphanumeric LCD Module functions #asm .equ __lcd_port=0x18 ;PORTB #endasm #include <lcd.h> #include <delay.h>

#define ADC_VREF_TYPE 0x60 // Read the 8 most significant bits // of the AD conversion result unsigned char read_adc(unsigned char adc_input) { ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Delay needed for the stabilization of the ADC input voltage delay_us(10); // Start the AD conversion ADCSRA|=0x40; // Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0); ADCSRA|=0x10; return ADCH; } char lcd_buffer[33]; //inisialisasi float DAC,error,derror; float aa,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12,r13,r14,fuzzy_out; float r15,r16,r17,r18,r19,r20,r21,r22,r23,r24,r25; //float NB,NS,Z,PS,PB; float I; float Integral = 0; float lasterror = 0; float P_I,j,r,PWM; float error1,error2,error3,error4,error5; float derror1,derror2,derror3,derror4,derror5; float pv,a; //inisialisasi titik membership function error //float NBe=-48, float NBe1=-72;float NBe2=-48;float NBe3=-24; //float NSe=-24 float NSe1=-48; float NSe2=-24;float NSe3=0; //float Ze=0, float Ze1=-24;float Ze2=0;float Ze3=24;

//float PSe=24, float PSe1=0;float PSe2=24;float PSe3=48; //float PBe=48, float PBe1=24;float PBe2=48;float PBe3=72; //inisialisasi titik membership function derror //float NBde=36, float NBde1=33;float NBde2=36;float NBde3=39; //float NSde=39 float NSde1=36; float NSde2=39;float NSde3=42; //float Zde=42, float Zde1=39;float Zde2=42;float Zde3=45; //float PSde=45, float PSde1=42;float PSde2=45;float PSde3=48; //float PBde=48, float PBde1=45;float PBde2=48;float PBde3=51;

float TimeSampling=0.5; float sp=48 ; float P; void main(void) { PORTA=0x00; DDRA=0x00; PORTB=0x00; DDRB=0x08; PORTC=0x00; DDRC=0x00; PORTD=0x00; DDRD=0xFF;

ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0x84; // LCD module initialization lcd_init(16);

while (1) { a=read_adc(0); delay_ms(100); pv=a*1.9125; error=sp-pv; derror=error-lasterror; Integral += error*TimeSampling; lasterror=error; //***************************fuzzyfikasi error;************************ if (error<=NBe1) { error1=1; } else if (error>NBe2 && error<NBe3) { error1=((-96-error)/-24); } else if (error>=NBe3) { error1=0; } if (error==NSe1) { error2=1; } else if (error>NSe1 && error<NSe2) { error2=((error+48)/24); } else if (error>NSe2 && error<NSe3) { error2=((-error-24)/24); }

else if (error<=NSe1 || error>=NSe3) { error2=0; } if (error==Ze2) { error3=1; } else if (error>Ze1 && error<Ze2) { error3=((error+24)/24); } else if (error>Ze2 && error<Ze3) { error3=((-error+24)/24); } else if (error<=Ze1 || error>=Ze3) { error3=0; } if (error==PSe2) { error4=1; } else if (error>PSe1 && error<PSe2) { error4=(error/24); } else if (error>PSe2 && error<PSe3) { error4=(-error/24); } else if (error<=PSe1 || error>=PSe3) { error4=0; }

if (error<=PBe1) { error5=0; } else if(error>PBe1 && error<PBe2) { error5=((error-24)/24); } else if (error>=PBe3) { error5=1; } // **********************************fuzzyfikasi derror;******************************** if (derror<=NBde1) { derror1=1; } else if(derror>NBde2 && derror<NBde3) { derror1=((-96-derror)/-24); } else if (derror>=NBde3) { derror1=0; } if (derror==NSde1) { derror2=1; } else if (derror>NSde1 && derror<NSde2) { derror2=((derror+48)/24); } else if (derror>NSde2 && derror<NSde3) { derror2=((-derror-24)/24);

} else if (derror<=NSde1 || derror>=NSde3) { derror2=0; } if (derror==Zde2) { derror3=1; } else if (derror>Zde1 && derror<Zde2) { derror3=((derror+24)/24); } else if (derror>Zde2 && derror<Zde3) { derror3=((-derror+24)/24); } else if (derror<=Zde1 || derror>=Zde3) { derror3=0; } if (derror==PSde2) { derror4=1; } else if (derror>PSde1 && derror<PSde2) { derror4=(derror/24); } else if (derror>PSde2 && derror<PSde3) { derror4=(-derror/24); } else if (derror<=PSde1 || derror>=PSde3) { derror4=0; }

if (derror<=PBde1) { derror5=0; } else if(derror>PBde1 && derror<PBde2) { derror5=((derror+24)/24); } else if (derror>=PBde3) { derror5=1; } // *****************************************Rule base*************************** r1 = min(error1,derror1); r2 = min(error1,derror2); r3 = min(error1,derror3); r4 = min(error1,derror4); r5 = min(error1,derror5); // // // // // // // // // // // // // // // // if (error1>derror1) { r1=derror1; } else { r1=error1; } if (error1>derror2) { r2=derror2; } else { r2=error1;

// // // // // // // // // // // // // // // // // // // // // // // // // // // //

} if (error1>derror3) { r3=derror3; } else { r3=error1; } if (error1>derror4) { r4=derror4; } else { r4=error1; } if (error1>derror5) { r5=derror5; } else { r5=error1; } r6 = min(error2,derror1); r7 = min(error2,derror2); r8 = min(error2,derror3); r9 = min(error2,derror4); r10 = min(error2,derror5);

// // // //

if (error2>derror1) { r6=derror1; }

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // //

else { r6=error2; } if (error2>derror2) { r7=derror2; } else { r7=error2; } if (error2>derror3) { r8=derror3; } else { r8=error2; } if (error2>derror4) { r9=derror4; } else { r9=error2; } if (error2>derror5) { r10=derror5; } else { r10=error2;

//

} r11 = min(error3,derror1); r12 = min(error3,derror2); r13 = min(error3,derror3); r14 = min(error3,derror4); r15 = min(error3,derror5);

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // //

if (error2>derror1) { r11=derror1; } else { r11=error3; } if (error2>derror2) { r12=derror2; } else { r12=error3; } if (error2>derror3) { r13=derror3; } else { r13=error3; } if (error2>derror4) { r14=derror4; }

// // // // // // // // // // // // //

else { r14=error3; } if (error2>derror5) { r15=derror5; } else { r15=error3; }

r16 = min(error4,derror1); r17 = min(error4,derror2); r18 = min(error4,derror3); r19 = min(error4,derror4); r20 = min(error4,derror5); // if (error2>derror1) // { // r16=derror1; // } // else // { // r16=error4; // } // // if (error2>derror2) // { // r17=derror2; // } // else // { // r17=error4; // } // // if (error2>derror3)

// // // // // // // // // // // // // // // // // // // // // // // // //

{ r18=derror3; } else { r18=error4; } if (error2>derror4) { r19=derror4; } else { r19=error4; } if (error2>derror5) { r20=derror5; } else { r20=error4; } r21 = min(error5,derror1); r22 = min(error5,derror2); r23 = min(error5,derror3); r24 = min(error5,derror4); r25 = min(error5,derror5);

// // // // // // //

if (error2>derror1) { r21=derror1; } else { r21=error5;

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // //

} if (error2>derror2) { r22=derror2; } else { r22=error5; } if (error2>derror3) { r23=derror3; } else { r23=error5; } if (error2>derror4) { r24=derror4; } else { r24=error5; } if (error2>derror5) { r25=derror5; } else { r25=error5; }

//**********************************defuzzyfikasi********* ************************ j=(r1*s)+(r2*s)+(r3*s)+(r4*k)+(r5*l)+(r6*s)+(r7*k)+(r8*l)+(r9*l)+( r10*m)+(r11*s)+(r12*k)+(r13*l)+(r14*m)+(r15*h)+(r16*k)+(r17*l) +(r18*l)+(r19*m)+(r20*h)+(r21*l)+(r22*m)+(r23*h)+(r24*h)+(r25* h); aa=( r1 + r2 + r3 + r4 + r5 + r6 + r7 + r8 + r9 + r10 + r11 + r12 + r13 + r14 + r15 + r16 + r17 + r18 + r19 + r20 + r21 + r22 + r23 + r24 + r25 ); fuzzy_out = fabs(j/1); if(fuzzy_out>255) { fuzzy_out = 255; PWM = 255; } else if(fuzzy_out>0) { PWM = (unsigned char)fuzzy_out; } else { fuzzy_out = 0; PWM = 0; } a = Speed ;//(unsigned char)Error; putchar (a/100 + 48); putchar ((a%100)/10 + 48); putchar (a%10 + 48); putchar (13);

counter2=0; } if (counter==PWM) xSpeed=1;

PORTD=255-DAC; lcd_clear(); lcd_gotoxy(0,0); sprintf(lcd_buffer,"%0.01f",pv); lcd_puts(lcd_buffer); lcd_gotoxy(0,1);

sprintf(lcd_buffer,"%0.01f",aa); lcd_puts(lcd_buffer); lcd_gotoxy(8,0); sprintf(lcd_buffer,"%0.01f",fuzzy_out); lcd_puts(lcd_buffer); delay_ms(100); }; }