25 Agustus 2015 Buku TA C. Imanuell

111
PERANCANGAN SIMULASI DROOP SPEED CONTROL UNTUK OPERASI LOAD SHARING PADA SISTEM PEMBANGKIT LISTRIK TUGAS AKHIR Diajukan untuk memenuhi syarat mendapatkan gelar Sarjana Teknik Disusun oleh: Cristian Imanuell 2011-042-007 PROGRAM STUDI TEKNIK ELEKTRO

description

How to make Droop Speed Control Prime movers simulation that can be parallel operation with Isochronous Speed Control.

Transcript of 25 Agustus 2015 Buku TA C. Imanuell

Page 1: 25 Agustus 2015 Buku TA C. Imanuell

PERANCANGAN SIMULASI DROOP SPEED CONTROL UNTUK OPERASI LOAD SHARING PADA

SISTEM PEMBANGKIT LISTRIK

TUGAS AKHIR

Diajukan untuk memenuhi syaratmendapatkan gelar Sarjana Teknik

Disusun oleh:Cristian Imanuell

2011-042-007

PROGRAM STUDI TEKNIK ELEKTROFAKULTAS TEKNIK

UNIVERSITAS KATOLIK INDONESIA ATMA JAYAJAKARTA

2015

Page 2: 25 Agustus 2015 Buku TA C. Imanuell

ii

Page 3: 25 Agustus 2015 Buku TA C. Imanuell

ABSTRAK

Kesulitan memperoleh sumber energi listrik yang dapat diandalkan masih terjadi di industri. Perubahan pada beban berdampak pada kecepatan turbin yang berfungsi sebagai prime mover. Jika beban bertambah maka kecepatan turbin menurun sehingga untuk mengatur kecepatan turbin tetap di dalam performance parameter speed, yaitu sekitar 2500 – 3000 rpm diperlukan pengaturan kecepatan putar prime mover. Pada penelitian ini dirancang simulasi sistem pengatur kecepatan prime mover dengan mode droop untuk operasi load sharing menggunakan mikrokontroler sebagai pengatur kecepatan. Berdasarkan hasil pengujian yang telah dilakukan, sistem dapat memberikan daya dan jika salah satu generator mati, tidak akan terjadi black out.

Kata kunci: mikrokontroler, prime mover, speed control, load sharing, droop

iii

Page 4: 25 Agustus 2015 Buku TA C. Imanuell

KATA PENGANTAR

Puji dan syukur kepada Tuhan Yang Maha Esa atas berkat dan rahmat-Nya

sehingga penulis dapat menyelesaikan Tugas Akhir ini dengan baik dan lancar.

Tugas akhir ini disusun untuk memenuhi salah satu persyaratan dalam

menyelesaikan program studi untuk mendapat gelar Sarjana Teknik pada Program

Studi Teknik Elektro, Fakultas Teknik, Universitas Katolik Indonesia Atma Jaya.

Penyelesaian Tugas Akhir ini tidak lepas dari bimbingan, bantuan dan

dorongan dari berbagai pihak. Oleh karena itu, penulis ingin menyampaikan ucapan

terimakasih kepada:

1. Ibu Ir. Melisa Mulyadi, M.T., sebagai Dosen Pembimbing yang telah

memberikan bimbingan, bantuan, dukungan dan dorongan semangat selama

penulis menyusun Tugas Akhir ini.

2. Bapak Dr. Aloysius Adya Pramudita, S.T., M.T., sebagai Ketua Program Studi

Teknik Elektro, Fakultas Teknik, Universitas Katolik Indonesia Atma Jaya.

3. Bapak Dr. Lukas, ST, MAI, CISA, sebagai dosen pembimbing akademik yang

telah membantu dalam proses akademik selama perkuliahan.

4. Ayah dan Ibu yang selalu memberikan nasehat, dukungan, doa dan semangat

tak henti-hentinya kepada penulis.

5. Novandy, Cindy Yuanita, Daniel Budiman, William Santoso, Satrio, Felicia

Alvina, Nico Jonathan, Hendy, Santzo, Erwin, Pangeran, Tobias, Andrew

iv

Page 5: 25 Agustus 2015 Buku TA C. Imanuell

Pranata, Wina Florencia dan teman-teman Workshop Elektro lainnya yang

telah membantu penulis dalam menyelesaikan Tugas Akhir ini.

6. Bonifasius Kevin Ramada, Robin Tiolie, Jeremy Chondro, Samuel Christian

dan teman-teman Teknik Elektro yang tidak dapat disebutkan satu persatu yang

telah memberikan semangat pada masa perkuliahan.

7. Seluruh dosen Program Studi Teknik Elektro, Fakultas Teknik, Universitas

Katolik Indonesia Atma Jaya yang telah mengajar dan mendidik penulis selama

masa perkuliahan.

8. Seluruh anggota Teater Gerak yang telah mendukung dan memberi semangat

dalam menyelesaikan Tugas Akhir.

9. Semua sahabat dan pihak yang tidak dapat disebutkan satu persatu namanya

atas bantuan baik secara langsung maupun tidak langsung dalam

menyelesaikan Tugas Akhir ini.

Penulis menyadari bahwa tugas akhir ini masih jauh dari sempurna. Oleh

karena itu, penulis dengan rendah hati menerima kritik dan saran dari pembaca.

Jakarta, 10 Agustus 2015

Penulis

v

Page 6: 25 Agustus 2015 Buku TA C. Imanuell

DAFTAR ISI

ABSTRAK iv

KATA PENGANTAR v

DAFTAR ISI vii

DAFTAR GAMBAR x

DAFTAR TABEL xii

BAB 1 PENDAHULUAN 1

1.1 Latar Belakang 1

1.2 Tujuan 2

1.3 Pembatasan Masalah 2

1.4 Sistematika Penulisan 2

BAB 2 TEORI DASAR 4

2.1 Prime Mover 4

2.2 Generator 5

2.3 Droop dan Isochronous Speed Control 7

2.4 Pengaturan Frekuensi dan Daya Aktif 9

2.5 Sensor kecepatan 11

2.6 Mikrokontroler ATMega16 12

2.7 Load Sharing dan Sinkronisasi Generator 15

vi

Page 7: 25 Agustus 2015 Buku TA C. Imanuell

2.8 Driver Motor 17

2.9 Mechanical Power Transmission 18

BAB 3 PERANCANGAN SISTEM 19

3.1 Konsep Perancangan 19

3.2 Perancangan Perangkat Keras 23

3.2.1 Perancangan rangkaian mikrokontroler ATMega16 23

3.2.2 Perancangan rangkaian Liquid Crystal Display (LCD) 24

3.2.3 Perancangan rangkaian keypad matrix 25

3.2.4 Perancangan rangkaian sensor kecepatan 25

3.2.5 Perancangan rangkaian driver motor 26

3.2.6 Perancangan rangkaian Volt Ampere meter 28

3.2.7 Perancangan rangkaian electrical load 29

3.2.8 Perancangan rangkaian mikrokontroler synchronizing switch 29

3.2.9 Perancangan rangkaian circuit breaker 30

3.2.10 Perancangan rangkaian voltage regulator 31

3.3 Perancangan Perangkat Lunak 31

BAB 4 PENGUJIAN SISTEM 35

4.1 Pengujian Perangkat Keras 35

4.1.1 Pengujian rangkaian LCD 35

4.1.2 Pengujian rangkaian sensor infra merah 36

vii

Page 8: 25 Agustus 2015 Buku TA C. Imanuell

4.2 Pengujian Keseluruhan Sistem 37

4.2.1 Pengujian load sharing saat generator droop bekerja terlebih

dahulu 40

4.2.2 Pengujian load sharing saat generator isochronous bekerja

terlebih dahulu 42

BAB 5 SIMPULAN 45

DAFTAR PUSTAKA 46

LAMPIRAN A LISTING PROGRAM MIKROKONTROLER A-1

LAMPIRAN B LISTING PROGRAM SYNCHRONIZING SWITCH B-1

LAMPIRAN C RANGKAIAN KESELURUHAN C-1

LAMPIRAN D DATA SHEET D-1

viii

Page 9: 25 Agustus 2015 Buku TA C. Imanuell

DAFTAR GAMBAR

Gambar 2. 1 Cara kerja turbin uap sederhana 5

Gambar 2. 2 Bagian – bagian generator DC 6

Gambar 2. 3 Cara kerja generator DC 6

Gambar 2. 4 Diagram blok generator set 7

Gambar 2. 5 Karateristik mode droop 8

Gambar 2. 6 Karateristik mode isochronous 9

Gambar 2. 7 Cara kerja sensor optocoupler 11

Gambar 2. 8 Konfigurasi kaki mikrokontroler ATMega16 13

Gambar 2. 9 Prinsip kerja motor DC 17

Gambar 2.10 Komponen transmisi sincromesh 18

Gambar 3. 1 Diagram blok sistem 19

Gambar 3. 2 Diagram blok droop speed control 21

Gambar 3. 3 Proses pengaturan dengan generator secara paralel 22

Gambar 3. 4 Rangkaian dan konfigurasi mikrokontroler ATMega16 24

Gambar 3. 5 Rangkaian LCD 24

Gambar 3. 6 Rangkaian keypad matrix 25

Gambar 3. 7 Rangkaian sensor inframerah 26

Gambar 3. 8 Rangkaian driver motor 27

Gambar 3. 9 Rangkaian volt meter 28

Gambar 3.10Rangkaian ampere meter 28

Gambar 3.11 Rangkaian beban 29

ix

Page 10: 25 Agustus 2015 Buku TA C. Imanuell

Gambar 3.12 Rangkaian circuit breaker 30

Gambar 3.13 Rangkaian regulator 30

Gambar 3.14 Diagram alir mikrokontroler synchronizing switch 31

Gambar 3.15 Diagram alir mikrokontroler droop speed control 32

Gambar 3.16Diagram alir mikrokontroler timer droop speed control 33

Gambar 4. 1 Hasil pengujian rangkaian LCD 36

Gambar 4. 2 Metode pengujian rangkaian sensor infra merah 36

Gambar 4. 3 Hasil pengujian sensor kecepatan 36

Gambar 4. 4 Tampilan awal droop speed control 37

Gambar 4. 5 Menu memasukan nilai RPM set point 38

Gambar 4. 6 Grafik tanggapan kecepatan generator droop terhadap beban 39

Gambar 4. 7 Grafik Tanggapan kedua kecepatan generator terhadap beban saat

di paralel droop speed control terlebih dahulu secara perhitungan 41

Gambar 4. 8 Grafik Tanggapan kedua kecepatan generator terhadap beban saat

di paralel droop speed control terlebih dahulu secara pengukuran 41

Gambar 4. 9 Grafik Tanggapan kedua kecepatan generator terhadap beban saat

di paralel isochronous speed control terlebih dahulu secara

perhitungan 43

Gambar 4.10Grafik Tanggapan kedua kecepatan generator terhadap beban saat

di paralel isochronous speed control terlebih dahulu secara

pengukuran 44

x

Page 11: 25 Agustus 2015 Buku TA C. Imanuell

DAFTAR TABEL

Tabel 2.1 Fungsi khusus port B 14

Tabel 2.2 Fungsi khusus port C 14

Tabel 2.3 Fungsi khusus port D 15

Tabel 4.1 Tanggapan kecepatan generator droop speed control terhadap beban 39

Tabel 4.2 Data tanggapan kedua generator saat bekerja secara paralel droop

speed control terlebih dahulu 40

Tabel 4.3 Data tanggapan kedua generator saat bekerja secara paralel

isochronous speed control terlebih dahulu 43

xi

Page 12: 25 Agustus 2015 Buku TA C. Imanuell

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Kebutuhan listrik untuk melakukan suatu proses produksi sangat besar

sehingga biasanya pabrik–pabrik di Indonesia mempunyai pembangkit listrik sendiri.

Pengaktifan suatu pembangkit listrik memerlukan pengaturan kecepatan pada prime

mover. Bila pengaturan kecepatan prime mover dilakukan secara manual

membutuhkan waktu kurang lebih 70 jam seperti yang dilakukan perusahaan

Petrokimia. Penggunaan daya dalam suatu pabrik tidak selalu konstan. Jika beban

bertambah maka dibutuhkan suplai energi cadangan agar proses produksi tetap

berjalan. Penambahan beban juga mengakibatkan kecepatan prime mover menurun.

Untuk mempertahankan kecepatan prime mover maka suplai bahan bakar harus

ditambah dengan membuka valve untuk bahan bakar. Seberapa besar valve dibuka

perlu diperhatikan karena bukaan valve yang terlalu besar menyebabkan overspeed.

Adjustment valve yang tepat dibutuhkan untuk mengatur kecepatan turbin tetap di

dalam performance parameter speed, yaitu sekitar 2500 – 3000 rpm.Setiap

permasalahan yang terjadi pada pembangkit listrik dapat menyebabkan black out

sehingga pabrik mengalami kerugian yang sangat besar.

Untuk menyelesaikan masalah pada pembangkit listrik, maka dirancanglah

pengaturan kecepatan prime mover dengan mode droop dan mode isochronous.

Kedua macam speed control ini diaplikasikan dalam operasi load sharing untuk

mengatasi beban yang berlebih dan dibuat dalam bentuk simulasi. Penelitian ini

1

Page 13: 25 Agustus 2015 Buku TA C. Imanuell

2

dikerjakan oleh dua orang peneliti. Pada tugas akhir ini dibahas lebih lanjut

mengenai droop speed control sedangkan pembahasan isochronous speed control

dikerjakan oleh peneliti kedua.

1.2 Tujuan

Tujuan dari penelitian ini adalah merancang simulasi droop speed control

dalam operasi load sharing pada pembangkit listrik.

1.3 Pembatasan Masalah

Permasalahan yang ada pada penelitian ini dibatasi pada hal-hal berikut:

1. Generator DC 24 volt disimulasikan sebagai pembangkit listrik.

2. Motor DC disimulasikan sebagai prime mover.

1.4 Sistematika Penulisan

Penyusunan sistematika ini dimaksudkan untuk mempermudah penyampaian

informasi berdasarkan aturan dan urutan dari penelitian yang dilakukan. Adapun

sistematika penulisan tugas akhir ini adalah sebagai berikut:

1. Pendahuluan, berisi latar belakang, tujuan, pembatasan masalah, dan

sistematika pembahasan tugas akhir.

2. Teori Dasar, berisi teori dasar prime mover, generator, speed control,

penjelasan komponen-komponen digunakan dalam pembuatan tugas akhir

ini.

3. Perancangan Sistem yang membahas tentang konsep perancangan, baik

perancangan perangkat keras maupun perancangan perangkat lunak.

Page 14: 25 Agustus 2015 Buku TA C. Imanuell

3

4. Pengujian Sistem yang membahas tentang penerapan hasil rancangan,

pengujian dari sistem yang telah dibuat dan analisis hasil pengujian.

5. Simpulan dan Saran yang didapat dari hasil pengujian yang telah

dilakukan.

Buku tugas akhir ini dilengkapi pula dengan daftar pustaka dan lampiran

berupa listing program keseluruhan dan datasheet dari komponen yang digunakan.

Page 15: 25 Agustus 2015 Buku TA C. Imanuell

BAB 2

TEORI DASAR

Pada bab ini dibahas mengenai teori dan komponen utama yang

mendukung perancangan dan pembuatan tugas akhir ini.

2.5 Prime Mover

Prime mover atau penggerak mula merupakan mesin yang berfungsi

menghasilkan energi mekanis untuk memutar rotor generator. Contoh prime mover

antara lain turbin dan motor pembakaran dalam. Pada mesin pembakaran dalam

seperti mesin diesel terjadi eksitasi sendiri, karena proses kerjanya berdasarkan

pencampuran udara murni yang dikompresikan di dalam silinder hingga mencapai

tekanan ± 30 atm. Mesin diesel termasuk mesin dengan pembakaran dalam atau

disebut dengan motor bakar jika ditinjau dari cara memperoleh energi termalnya

(energi panas). Untuk membangkitkan listrik, sebuah mesin diesel dihubungkan

dengan generator dalam satu poros (poros dari mesin diesel dikopel dengan poros

generator). Turbin biasanya menggunakan tenaga mekanik yang dihasilkan dari alam

seperti udara, panas, atau aliran air [2].

Cara kerja turbin uap seperti pada Gambar 2.1 terdiri dari empat proses:

1. Proses pengaliran air menuju ke pemanas.

2. Proses pemanasan air menjadi uap bertekanan.

4

Page 16: 25 Agustus 2015 Buku TA C. Imanuell

5

3. Proses pengaliran uap bertekanan ke turbin. Pada proses ini, alat seperti

speed control dan sistem proteksi overspeed digunakan untuk mengontrol uap

yang masuk ke turbin.

4. Proses kondensasi yaitu uap air yang bertekanan menjadi uap air tidak

bertekanan dan didinginkan kembali menjadi air.

Gambar 2.1 Cara kerja turbin uap sederhana

Motor DC digunakan sebagai prime mover untuk memutar generator pada

simulasi ini. Turbin atau motor diesel yang biasa digunakan sebagai prime mover

pada umumnya.

2.6 Generator

Generator adalah suatu sistem yang menghasilkan tenaga listrik dari

masukan tenaga mekanik. Secara umum generator arus searah/DC tidak berbeda

dengan motor DC kecuali pada arah aliran daya. Berdasarkan cara memberikan fluks

pada kumparan medannya, generator DC dapat dikelompokkan menjadi dua, yaitu:

generator berpenguatan bebas dan generator berpenguatan sendiri. Generator DC

terdiri dua bagian, yaitu: stator, bagian mesin yang diam dan rotor, bagian mesin

Page 17: 25 Agustus 2015 Buku TA C. Imanuell

6

yang berputar seperti yang ditunjukkan Gambar 2.2. Bagian stator terdiri dari rangka

motor, belitan stator, sikat arang, bearing dan terminal box sedangkan bagian rotor

terdiri dari komutator, belitan rotor, kipas rotor dan poros rotor.

Pada umumnya generator DC dibuat dengan menggunakan magnet permanen

dengan 4-kutub rotor, regulator tegangan, proteksi terhadap beban lebih, starter

eksitasi, penyearah, bearing dan rumah generator atau casis, serta bagian rotor.

Generator arus searah atau generator DC berfungsi mengubah tenaga

mekanis menjadi tenaga listrik arus searah. Jika rotor diputar dalam pengaruh medan

magnet, maka akan terjadi perpotongan medan magnet oleh lilitan kawat pada rotor.

Hal ini akan menimbulkan tegangan induksi. Rotor dari generator DC akan

menghasilkan tegangan induksi bolak-balik. Sikat-sikat tersebut adalah terminal

keluaran generator. Cara kerja generator DC dapat dilihat pada Gambar 2.3.

Gambar 2. 2 Bagian - bagian generator DC

Page 18: 25 Agustus 2015 Buku TA C. Imanuell

7

Gambar 2. 3 Cara kerja generator DC

Sebuah komutator berfungsi sebagai penyearah tegangan AC. Generator DC

mempunyai sifat bahwa frekuensi listrik yang dihasilkannya sama dengan putaran

mekanis generator tersebut. Hubungan antara medan magnet pada mesin dengan

frekuensi listrik pada stator dapat dilihat pada Persamaan 2.1.

(2.1)

Keterangan:

f = frekuensi listrik (Hz)

ns = kecepatan putar medan magnet atau kecepatan putar rotor (rpm)

p = jumlah kutub

Generator DC digunakan sebagai pembangkit listrik pada simulasi ini

dikarenakan pada penelitian ini ingin melihat penurunan kecepatan putar generator

saat diberi beban, pada umunya digunakan generator sinkron.

2.7 Droop dan Isochronous Speed Control

Dalam pembangkit tenaga listrik, droop speed control adalah mode kontrol

kecepatan prime mover untuk mengatur generator sinkron saat terhubung ke jaringan

Page 19: 25 Agustus 2015 Buku TA C. Imanuell

8

listrik. Mode ini memungkinkan generator sinkron untuk berjalan secara paralel,

sehingga beban yang dibagi antara beberapa generator sebanding dengan power

rating masing-masing generator. Diagram blok generator set ditunjukan pada

Gambar 2.4.

Gambar 2. 4 Diagram blok generator set

Mode droop dipilih karena lebih stabil dan beban yang dapat diterima oleh

droop bersifat fix load artinya beban yang diberikan kepada generator droop tidak

dapat berubah-ubah dari yang sudah ditentukan oleh pengguna. Frekuensi dari

generator akan berubah jika beban yang diberikan tidak sesuai dengan yang

ditentukan. Presentase dari droop dapat dihitung dengan menggunakan Persamaan

2.2.

(2.2)

Sebuah generator beban ketika tidak ada beban, frekuensinya berbeda

dengan kondisi berbeban. Frekuensi generator semakin berkurang saat beban

bertambah. Pada mode droop, frekuensi generator diatur agar ketika generator diberi

beban penuh, frekuensinya berkurang menjadi 50 Hz [12]. Dengan demikian jika

diperlukan bantuan generator lain dapat segera dihubung paralel karena frekuensi

sudah sama dengan frekuensi generator pada umumnya. Karakteristik mode droop

X 100%

Page 20: 25 Agustus 2015 Buku TA C. Imanuell

9

dapat dilihat pada Gambar 2.5. Pada tugas akhir ini, jika dipilih mode droop 5 %

maka frekuensi generator mula-mula sebesar 52,5 Hz.

Gambar 2.5 Karakteristik mode droop

Isochronous speed control adalah sistem pengatur kecepatan yang secara

aktif menghitung kecepatan pada generator dan memastikan kecepatan sistem stabil

walaupun pembebanan terjadi. Pada saat kecepatan generator menurun yang

diakibatkan pembebanan, maka speed control akan memberikan sinyal agar

kecepatan prime mover dipercepat. Putaran yang terdapat pada penggerak utama

diatur dengan presisi dalam menanggapi perubahan beban yang cenderung

menyebabkan perubahan frekuensi (kecepatan). Setiap kenaikan beban akan

cenderung menyebabkan frekuensi berkurang, tetapi prime mover akan

mempertahankan frekuensi kembali ke setpoint awal. Bila terjadi penurunan beban

yang menyebabkan frekuensi meningkat maka putaran dengan cepat dikurangi. Oleh

karena itu isochronous speed control bertujuan untuk mempertahankan frekuensi

kembali ke setpoint awal agar tidak terjadi blackout ataupun overspeed.

Karaketeristik mode isochronous dapat dilihat pada Gambar 2.6.

Page 21: 25 Agustus 2015 Buku TA C. Imanuell

10

Gambar 2.6 Karaketristik mode isochronous

2.8 Pengaturan Frekuensi dan Daya Aktif

Daya mempunyai hubungan erat dengan nilai frekuensi sistem.

Penyediaan daya harus disesuaikan dengan kebutuhan daya beban, penyesuaian ini

dilakukan dengan mengatur kopel penggerak generator, sehingga tidak ada

pemborosan penggunaan daya. Pada umumnya dalam sistem tenaga listrik digunakan

generator sinkron tiga fasa untuk pembangkit tenaga listrik yang utama. Oleh karena

itu, pengaturan frekuensi sistem tergantung pada karakteristik generator sinkron[7].

Hubungan antara kopel mekanik penggerak generator dengan perputaran generator

menurut Hukum Newton dapat dilihat pada persamaan (2.3).

(2.3)

Dimana :

Tpm = Torka penggerak prime mover (Nm)

Tg = Torka penggerak generator yang membebani prime mover (Nm)

H = Momen inersia dari prime mover (kg m2)

⍵ = Kecepatan sudut perputaran prime mover (rad/s)

Hubungan antara ⍵ dengan frekuensi ( f ) ditunjukkan pada Persamaan 2.4.

⍵=2 πf (2.4)

Page 22: 25 Agustus 2015 Buku TA C. Imanuell

11

Sesuai dengan persamaan (2.2) maka dapat dinyatakan bahwa frekuensi akan

turun jika daya yang dibangkitkan tidak mencukupi kebutuhan beban dan sebaliknya

frekuensi akan naik jika kelebihan daya dalam sistem. Secara mekanis dapat

ditunjukkan dengan Persamaan 2.5 dan Persamaan 2.6.

Besar Torka beban bergantung pada besar arus yang mengalir pada beban,

besar fluks, dan konstanta mesin. Besar torka beban dapat dihitung dengan

persamaan 2.7.

T g=k .θ . I B (2.7)

Keterangan :

T g = Torka penggerak generator yang membebani prime mover (Nm)

k = konstanta mesin

IB = arus yang mengalir melalui beban (ampere)

θ = fluks (weber)

Beban bertambah akan mengakibatkan arus beban semakin besar yang akan

mengakibatkan torka beban semakin besar. Torka beban semakin besar akan

mengurangi kecepatan putar generator, akibatnya frekuensi juga berkurang. Daya

aktif adalah daya yang diberikan oleh generator ke beban. Besar daya aktif

tergantung dari kecepatan putar generator.

2.9 Sensor kecepatan

(2.5)

(2.6)

Page 23: 25 Agustus 2015 Buku TA C. Imanuell

12

Optocoupler adalah suatu sensor cahaya yang terdiri dari 2 bagian

yaitu transmitter dan receiver. Rangkaian transmitter  dibuat dari sebuah light

emitting diode (LED) inframerah sedangkan pada rangkaian receiver digunakan

photodiode. Pada saat cahaya dari LED terhalang oleh gear maka photodiode tidak

aktif sehingga akan dihasilkan tegangan keluaran berlogika 1 tetapi bila sinar infra

merah tidak terhalang maka tegangan keluaran rangkaian receiver berlogika 0..

Sinyal yang dihasilkan oleh sensor ini akan dikonversi menjadi kecepatan dengan

bantuan mikronkontroler yang dapat dinyatakan dalam Persamaan 2.6. Sensor

optopcoupler dapat dilihat pada Gambar 2.7.

RPM60

Gerigi Jumlah

detik 1 dalam Pulsa Jumlah MotorKecepatan

(2.6)

Gambar 2.7 Sensor optocoupler

2.10 Mikrokontroler ATMega16

ATMega16 merupakan seri mikrokontroler CMOS 8-bit buatan Atmel,

berbasis arsitektur reduced instruction set computer (RISC). Hampir semua

instruksi dieksekusi dalam satu siklus clock [1]. ATMega16 mempunyai 32

register general-purpose, timer/counter fleksibel dengan mode compare,

interrupt internal dan eksternal, serial UART, programmable watchdog

timer, mode power saving, ADC dan PWM internal. ATMega16 juga

Page 24: 25 Agustus 2015 Buku TA C. Imanuell

13

mempunyai in-system programmable flash on-chip yang mengijinkan

memori program untuk diprogram ulang dalam sistem menggunakan hubungan

serial peripheral interface (SPI).

Secara garis besar mikrokontroler ATMega16 terdiri dari :

1. Arsitektur RISC dengan throughput mencapai 16 MIPS pada frekuensi

16MHz.

2. Memiliki kapasitas flash memori 16Kbyte, EEPROM 512 Byte, dan SRAM

1Kbyte.

3. Saluran port I/O 32 buah, yaitu port A, port B, port C, dan Ba port ndar D.

4. CPU yang terdiri dari 32 buah register.

5. User interupsi internal dan eksternal.

6. Port antarmuka SPI dan port USART sebagai komunikasi serial.

7. Fitur Peripheral

a. Dua buah 8-bit timer/counter dengan prescaler terpisah dan mode

compare.

b. Satu buah 16-bit timer/counter dengan prescaler terpisah, mode

compare, dan mode capture.

c. Real time counter dengan osilator tersendiri.

d. Empat kanal PWM dan Antarmuka komparator analog.

e. Delapan kanal, 10 bit ADC.

f. Byte-oriented two-wire serial interface.

g. Watchdog timer dengan osilator internal.

Page 25: 25 Agustus 2015 Buku TA C. Imanuell

14

Konfigurasi kaki ATMega16 dengan kemasan 40 kaki dual inline package

dapat (DIP) dilihat pada Gambar 2.8 dengan penjelasan fungsi dari masing-masing

kaki ATMega16 sebagai berikut : 

1. VCC merupakan kaki yang berfungsi sebagai masukan catu daya.

2. GND merupakan kaki ground.

3. Port A (PA-PA7) merupakan port input/output dua arah dan pin masukan

ADC.

4. Port B (PB0-PB7) merupakan port input/output dua arah dan fungsi khusus,

seperti dapat dilihat pada Tabel 2.1.

Gambar 2.8 Konfigurasi kaki mikrokontroler ATMega16

Tabel 2.1 Fungsi khusus port B

PIN Fungsi khusus

PB7 SCK (SPI Bus Serial Clock)

PB6 MISO (SPI Bus Master Input/Slave Output)

PB5 MOSI (SPI Bus Master Output/Slave Input)

Page 26: 25 Agustus 2015 Buku TA C. Imanuell

15

PB4 SS (SPI Slave Select Input)

PB3AIN1 (Analog Comparator Positive Input)OC0 (Timer/Counter0 Output Compare Match Output)

PB2AIN0(Analog Comparative Positive Input)INT2 (External Interrupt 2 Input)

PB1 TI (Timer/Counter)

PB0T0 T1 (Timer/Counter External Counter Input)XCK (USART External Clock Input/Output)

5. Port C (PC0-PC7) merupakan pin input/output dua arah dan pin fungsi

khusus, seperti dapat dilihat pada Tabel 2.2.

Tabel 2.2 Fungsi khusus port CPIN Fungsi khusus

PC7 TOSC2 (Timer Oscillator Pin2)

PC6 TOSC1 (Timer Oscillator Pin1)

PC5 TDI (JTAG Test Data In)

PC4 TDO (JTAG Test Data Out)

PC3 TMS (JTAG Test Mode Select)

PC2 TCK (JTAG Test Clock)

PC1 SDA (Two-wire Serial Bus Data Input/Output Line)

PC0 SCL (Two-wire Serial Bus Clock Line)

6. Port D (PD0-PD7) merupakan port input/output dua arah dan port fungsi

khusus, seperti dapat dilihat pada Tabel 2.3.

Tabel 2.3 Fungsi khusus port DPIN Fungsi Khusus

PD7 OC2 (Timer/Counter2 Output Compare Match Output)

PD6 ICP (Timer/Counter1 Output Capture Pin)

PD5 OC1A (Timer/Counter1 Output Compare A Match Output)

PD4 OC1B (Timer/Counter1 Output Compare B Match Output)

PD3 INT1 (External Interrupt 1 Input)

Page 27: 25 Agustus 2015 Buku TA C. Imanuell

16

PD2 INT0 (External Interrupt 0 Input)

PD1 TXD (USART Output Pin)

PD0 RXD (USART Input Pin)

7. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler.

8. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal.

9. AVCC merupakan pin masukan tegangan untuk ADC.

10. AREF merupakan pin masukan tegangan referensi ADC.

2.11 Load Sharing dan Sinkronisasi Generator

Generator dapat diparalel dengan cara mengalirkan listrik ke beban dimulai

dengan mengaktifkan terlebih dahulu satu generator kemudian secara perlahan-lahan

beban dinaikkan sampai dengan kemampuan generator tersebut, selanjutnya aktifkan

lagi generator kedua. Kerja generator kedua paralel dengan generator pertama agar

dapat menanggung beban yang lebih besar lagi.

Load sharing adalah suatu cara pembagian beban secara merata yang

diterima oleh generator saat melakukan kerja paralel. Load sharing dapat dilakukan

setelah generator terhubung paralel. Berikut ini merupakan beberapa syarat yang

harus dipenuhi agar generator dapat melakukan kerja paralel:

1. Urutan fasa harus sama.

Urutan fasa harus sama clockwise (RST) atau counter clockwise (TRS).

2. Jumlah fasa dan sudut fasa harus sama.

Generator yang disusun paralel harus mempunyai sudut fasa yang berhimpit

sama atau 0 derajat.

Page 28: 25 Agustus 2015 Buku TA C. Imanuell

17

3. Tegangan fasa harus sama.

Dengan adanya tegangan kerja yang sama diharapkan pada saat diparalel

dalam keadaan tanpa beban power factor nya sama dengan 1.

4. Frekuensi antar generator dan jala-jala (PLN) harus sama.

Frekuensi yang menjadi standar yaitu 50 Hz.

Jika semua syarat kerja paralel terpenuhi maka generator yang diparalel

sudah sinkron. Pada saat generator dijalankan ada kemungkinan beberapa parameter

berubah, oleh sebab itu penggunaan sinkronoskop sangat diperlukan.

Saat 2 generator diparalel dengan pengaturan kecepatan mode Droop dan

mode Isochronous, maka frekuensi droop akan mengikuti frekuensi dari

Isochronous. Generator droop akan mengambil beban maksimal yang sudah diatur,

sedangkan generator isochronous akan berubah-ubah sesuai dengan i dengan

perubahan beban yang terjadi.

Ukuran keandalan dan kualitas listrik secara umum ditentukan oleh beberapa

parameter salah satunya adalah frekuensi. Frekuensi adalah 

jumlah siklus arus bolak-balik per detik. Beberapa negara termasuk Indonesia

menggunakan frekuensi listrik standar, sebesar 50 Hz dengan toleransi 0,6 Hz.

2.12 Driver Motor

Driver motor merupakan suatu rangkaian khusus yang memiliki fungsi untuk

mengatur arah ataupun kecepatan pada motor DC. Rangkaian driver motor

diperlukan karena pada umumnya suatu motor DC membutuhkan arus lebih dari 250

mA dan keluaran dari mikrokontroler ATMEGA 16 tidak bisa memberikan arus

lebih dari nilai tersebut. Rangkaian driver motor yang umum digunakan yaitu

Page 29: 25 Agustus 2015 Buku TA C. Imanuell

18

H-Bridge. Berbentuk seperti huruf H yang memiliki perbedaan fungsi di setiap

sisinya. Prinsip sederhana dari pergerakan rangkaian driver motor DC dapat dilihat

pada Gambar 2.9.

Motor akan bergerak searah jarum jam apabila transistor T1 dan T4 aktif

sementara transistor kiri bawah dan kanan atas tidak aktif. Pada kondisi ini kutub

positif pada motor DC mendapatkan tegangan sumber dan kutub negatifnya

terhubung dengan ground sehingga ada perbedaan potensial yang menyebabkan

motor berputar. Untuk pergerakan berlawanan jarum jam, kebalikan dari seluruh

kondisi pada keadaan searah jarum jam.

Pulse Width Modulation (PWM) digunakan sebagai simulasi bahan bakar

pada pembangkit listrik umumnya. PWM dapat mengatur kecepatan pada motor DC

dengan mengatur duty cycle.

2.13 Mechanical Power Transmission

Mechanical Power Transmission atau transmisi energi mekanik adalah

komponen mesin yang berfungsi untuk mengubah kecepatan dan tenaga putar dari

prime mover ke generator, sehingga generator dapat menghasilkan keluaran

tegangan. Sincromesh berarti menyamakan. Salah satu proses transmisi yang

digunakan pada penelitian ini adalah transmisi tipe sincromesh. Transmisi jenis ini

Gambar 2.9 Prinsip kerja driver motor DC

Page 30: 25 Agustus 2015 Buku TA C. Imanuell

19

dapat menyamakan kecepatan putar pulley prime mover dengan pulley generator.

Kelebihan transmisi sincromesh adalah kecepatan putar dari kedua pulley akan sama

besar. Komponen dari transmisi sinchromesh dapat dilihat pada Gambar 2.10.

Gambar 2.10 Komponen transmisi sincromesh

Page 31: 25 Agustus 2015 Buku TA C. Imanuell

20

BAB 3

PERANCANGAN SISTEM

Bab ini menjelaskan proses perancangan dan realisasi sistem. Bab ini terdiri

dari konsep perancangan, perancangan perangkat keras dan perancangan perangkat

lunak.

3.1 Konsep Perancangan

Sistem pembangkit listrik sederhana ini terdiri dari tiga buah modul yaitu :

modul 1 berupa modul droop speed control, modul 2 berupa modul isochronous

speed control, dan modul 3 berupa modul synchronizing switch. Diagram blok sistem

pembangkit listrik sederhana dapat dilihat pada Gambar 3.1.

Gambar 3. 1 Diagram blok sistem

Page 32: 25 Agustus 2015 Buku TA C. Imanuell

21

Pada diagram blok, kedua breaker berfungsi untuk menghubungkan output

dari generator dan beban. Switch pada breaker akan dikendalikan oleh synchronizing

switch. Pada saat pembangkit listrik disambungkan ke beban, putaran masing-masing

generator akan berkurang dan torsi beban akan bertambah sehingga menyebabkan

torsi generator lebih kecil dibandingkan dengan torsi beban. Sistem droop speed

control menggunakan mikrokontroler ATMega 16 sebagai unit pengatur kecepatan

yang menerima data dari sensor kecepatan yang diletakkan pada prime mover.

Mikrokontroler akan mengubah pulsa-pulsa listrik keluaran dari setiap sensor

kecepatan menjadi nilai kecepatan. Setelah itu, nilai kecepatan dihitung untuk

menjadi frekuensi dan dikirim ke mikrokontroler yang ada di modul synchronizing

switch. Nilai kecepatan disesuaikan dengan nilai kecepatan yang dimasukan pertama

kali oleh pengguna. Jika kecepatan yang diukur lebih kecil daripada kecepatan yang

diinginkan oleh pengguna, maka speed control akan menaikan nilai pulse width

modulation (PWM) sehingga kecepatan prime mover meningkat, sebaliknya jika

kecepatan yang diukur lebih besar daripada kecepatan yang diinginkan oleh

pengguna, maka speed control akan menurunkan nilai PWM sehingga kecepatan

prime mover menurun. Output dari generator akan dihubungkan dengan voltage

regulator yang disambung ke breaker. Selanjutnya breaker dihubungkan dengan

beban jika frekuensi dan output tegangan sudah sesuai dengan yang diminta oleh

pengguna. Gambar generator paralel dapat dilihat pada Gambar 3.2.

Page 33: 25 Agustus 2015 Buku TA C. Imanuell

22

Gambar 3. 2 Proses penghubungan dua generator secara paralel

Mikrokontroler droop speed control membaca masukan dari sensor kecepatan

kemudian diubah menjadi nilai frekuensi. Didalam mikrokontroler dilakukan

perbandingan antara kecepatan yang dideteksi sensor kecepatan dengan kecepatan

awal sistem yang dimasukkan pengguna. Kecepatan kerja speed control droop diatur

5 % lebih tinggi daripada kecepatan kerja sistem. Jika kecepatan yang dideteksi

lebih kecil daripada kecepatan kerja sistem, maka speed control akan menaikan nilai

PWM sehingga kecepatan prime mover meningkat, sebaliknya jika kecepatan yang

dideteksi lebih besar daripada kecepatan kerja sistem, maka speed control akan

menurunkan nilai PWM sehingga kecepatan prime mover menurun. Mikrontroler

mengirimkan sinyal PWM yang diinginkan ke driver motor DC. Mikrokontroler

droop speed control mengirimkan frekuensi ke mikrokontroler synchronizing switch

sehingga synchronizing switch dapat membandingkan frekuensi generator droop dan

generator isochronous. Pada mode stand alone, jika generator droop speed control

sudah berputar mencapai kecepatan awal tanpa beban maka synchronizing switch

akan mengirimkan sinyal kepada circuit breaker untuk menghubungkan generator

Page 34: 25 Agustus 2015 Buku TA C. Imanuell

23

dengan beban. Jika kecepatan kerja generator droop berkurang sampai di bawah

kecepatan set point, maka synchronizing switchmembuka switch circuit breaker

sehingga generator droop dilepas dari beban. Saat generator droop sudah bekerja dan

generator isochronous sudah mulai berjalan maka mikrokontroler synchronizing

switch akan membandingkan kedua frekuensi speed controller, jika frekuensi sudah

sama maka isochronous speed control akan mengirimkan data ke synchronizing

switch untuk melakukan sikronisasi dengan generator droop speed control. Bila

kedua speed control sudah memenuhi syarat, maka synchronizing switch akan

menutup breaker sehingga arus listrik dapat mengalir ke beban. Sinkronisasi

generator akan berlangsung pada synchronizing switch. Synchronizing switch akan

menerima data yang berasal dari droop speed control dan isochronous speed control.

Gambar 3.3 Diagram blok droop speed control

Pada diagram blok Gambar 3.3 terdapat satu buah sensor kecepatan yang

merupakan masukan pada mikrokontroler dan keluarannya dihubungkan ke Liquid

Crystal Display (LCD) untuk menampilkan nilai kecepatan dan frekuensi dari motor.

Sebagai pengganti prime mover digunakan motor DC. Melalui keypad matrix

dimasukkan nilai kecepatan awal yang menjadi kecepatan kerja sistem ke

Page 35: 25 Agustus 2015 Buku TA C. Imanuell

24

mikrokontroler. Selain itu kepada mikrokontroler juga dimasukkan nilai droop yang

diinginkan.

3.2 Perancangan Perangkat Keras

2.2.1 Perancangan rangkaian mikrokontroler ATMega16

Rangkaian mikrokontroler berfungsi sebagai pemroses data dari masukan

sensor kecepatan dan keypad matrix. Data dari sensor kecepatan akan dihitung

menggunakan Persamaan 2.6, lalu digunakan untuk menentukan besar Pulse Width

Modulation yang akan diberikan kepada driver motor untuk mempercepat dan

memperlambat kecepatan prime mover. Rangkaian mikrokontroler dapat dilihat pada

Gambar 3.4. Penggunaan beberapa port mikrokontroler sebagai berikut :

1. Port A dihubungkan ke LCD

2. Port B dihubungkan ke keypad matrix

3. Port C dihubungkan ke Mikrokontroler synchronizing switch

4. Kaki PD.0 dihubungkan dengan sensor kecepatan

5. Kaki PD.1 dihubungkan ke emergency stop

6. Kaki PD.5 dihubungkan ke PWM driver motor

7. Kaki PD.6 dan PD.7 dihubungkan ke masukan driver motor

Page 36: 25 Agustus 2015 Buku TA C. Imanuell

25

Gambar 3. 4 Rangkaian dan konfigurasi mikrokontroler ATMega16

2.2.2 Perancangan rangkaian Liquid Crystal Display (LCD)

LCD digunakan sebagai tampilan untuk memasukan nilai dari kecepatan set

point, droop set point, kecepatan kerja, nilai RPM dan frekuensi dari setiap sensor.

LCD diletakan di port PA.0-PA.7. Rangkaian LCD dapat dilihat pada Gambar 3.5.

Gambar 3.5 Rangkaian LCD

Page 37: 25 Agustus 2015 Buku TA C. Imanuell

26

2.2.3 Perancangan rangkaian keypad matrix

Keypad matrix berfungsi untuk memasukan kecepatan set point, droop set

point. Selain memasukan nilai, keypad matrix juga berguna untuk menjalankan dan

menghentikan proses. Keypad matrix dihubungkan ke kaki PB.0-PB.7. Rangkaian

keypad matrix dapat dilihat pada Gambar 3.6. Tombol # digunakan jika ingin

mengkoreksi data yang sudah dimasukkan sedangkan tombol * menyatakan proses

pemasukan data sudah selesai.

Gambar 3. 6 Rangkaian keypad matrix

2.2.4 Perancangan rangkaian sensor kecepatan

Sensor kecepatan mengunakan photodiode sebagai penerima dan sebagai

pemancar digunakan LED infra merah. Jika sinar infra merah yang dipancarkan

terhalang oleh suatu benda makaphotodiode memiliki resistansi yang besar sehingga

menghasilkan logika 1. Sebaliknya jika sinar infra merah yang dipancarkan tidak

terhalang oleh suatu benda maka photodiode memiliki resistansi yang kecil dan

menghasilkan logika 0. Sensor kecepatan dihubungkan pada kakiPD.0. Gambar

rangkaian sensor kecepatan dapat dilihat pada Gambar 3.7.

Page 38: 25 Agustus 2015 Buku TA C. Imanuell

27

Gambar 3.7 Rangkaian sensor inframerah

2.2.5 Perancangan rangkaian driver motor

Rangkaian driver motor DC menggunakan H-bridge yang cara kerjanya dapat

dijelaskan sebagai berikut :

Apabila ingin menggerakan motor DC secara clock wise maka kaki A diberi logika

“1” dan kaki B diberi logika “0” sehingga Q1 aktif dan sumber tegangan untuk motor

DC mengalir melalui Q1 melewati motor DC dan menuju ground melalui Q3.

Kemudian untuk menggerakan motor DC secara counter clock wise maka kaki A

diberi logika “0” dan kaki B diberi logika “1” sehingga transistor yang aktif adalah

Q2 dan Q4. Kecepatan motor DC dapat diubah dengan mengatur nilai duty cycle pulsa

yang berlogika 1 yang dimasukkan ke kaki A atau kaki B.

Page 39: 25 Agustus 2015 Buku TA C. Imanuell

28

Gambar 3. 8 Rangkaian driver motor

Proses driver motor DC menggunakan rangkaian dirver motor DC H-bridge

diatas dimulai pada saat pin A atau pin B diberikan logika “1” atau “0”. Apabila

ingin menggerakan motor DC secara searah jarum jam maka kaki A diberi logika “1”

dan jalur kaki B diberi logika “0” sehingga Q1 aktif dan sumber tegangan untuk

motor DC mengalir melalui Q1 melewati motor DC dan menuju ground melalui Q3.

Kemudian untuk menggerakan motor DC secara berlawanan dengan arah jarum jam

maka kaki A diberi logika “0” dan kaki B diberi logika “1” sehingga transistor yang

aktif adalah Q2 dan Q4 sehingga motor DC mendapat sumber tegangan dari Q2

melewati motor DC menuju ground melalui Q4. Untuk dapat mengatur kecepatan

Page 40: 25 Agustus 2015 Buku TA C. Imanuell

29

motor DC maka logika “1” pada kaki A atau kaki B diberi pulsa Pulse Width

Modulation (PWM) yang dapat diatur nilai duty cycle-nya.

2.2.6 Perancangan rangkaian Volt Ampere meter

Rangkaian volt ampere meter berfungsi untuk mengukur tegangan dan arus

yang dihasilkan oleh generator. Volt ampere meter akan diletakkan pada output dari

generator. Rangkaian ini membutuhkan tegangan 5 V untuk bekerja yang diambil

dari tegangan mikrokontroler ATmega16. Kami menggunakan modul YB27VA

dengan kemampuan mengukur tegangan 0-30 volt dan 0-10 ampere. Gambar volt

meter dapat dilihat pada Gambar 3.9. Gambar ampere meter dapat dilihat pada

Gambar 3.10.

Gambar 3.9 Rangkaian volt meter

Page 41: 25 Agustus 2015 Buku TA C. Imanuell

30

Gambar 3.10 Rangkaian ampere meter

2.2.7 Perancangan rangkaian electrical load

Rangkaian electrical load berfungsi sebagai beban yang akan menarik daya

dari output generator. Electrical load ini akan terdiri dari switch dan motor sebagai

beban. Rangkaian electrical load dapat dilihat pada Gambar 3.11.

Gambar 3.11 Rangkaian beban

2.2.8 Perancangan rangkaian mikrokontroler synchronizing switch

Mikrokontroler synchronizing switch berfungsi sebagai pengatur untuk

menghubungkan dua generator secara paralel. Mikrokontroler synchronizing switch

Page 42: 25 Agustus 2015 Buku TA C. Imanuell

31

memeriksa nilai frekuensi dari generator mode droop dan generator mode

isochronous. Jika nilai frekuensi kedua generator sama besar yaitu 50 Hz, maka

synchronizing switch akan menyambungkan kedua generator tersebut ke beban

melalui circuit breaker tetapi bila frekuensi salah satu generator tidak sama dengan

50 Hz maka hanya satu generator yang dapat disambung ke beban. Terlebih lagi jika

frekuensi kedua generator kurang dari 50 Hz maka kedua generator tidak dapat

disambung ke beban. Pada rangkaian synchronizing switch terdapat emergency stop

yang berfungsi melepas hubungan kedua generator ke beban dan menghentikan

prime mover. Emergency stop digunakan saat penggunaingin menghentikan sistem.

Diagram blok synchronizing switch dapat dilihat pada Gambar 3.12.

Gambar 3.12 Diagram blok synchronizing switch

2.2.9 Perancangan rangkaian circuit breaker

Rangkaian circuit breaker ini berisi relay yang digunakan sebagai

switchpenghubung antara generator dengan rangkaian beban jika mendapat masukan

Page 43: 25 Agustus 2015 Buku TA C. Imanuell

32

dari rangkaian synchronizing switch. Rangkaian circuit breaker dapat dilihat pada

Gambar 3.13.

Gambar 3.13 Rangkaian circuit breaker

2.2.10 Perancangan rangkaian regulator tegangan

Rangkaian regulator berfungsi untuk menstabilkan output yang akan masuk

ke beban sehingga nilainya tetap. Rangkaian regulator ini menggunakan IC LM 337.

Rangkaian regulator tegangan dapat dilihat pada Gambar 3.13.

Gambar 3.14 Rangkaian regulator tegangan

3.3 Perancangan Perangkat Lunak

2.3.1 Perancangan perangkat lunak mikrokontroler

Page 44: 25 Agustus 2015 Buku TA C. Imanuell

33

Pembuatan perangkat lunak sistem pada mikrokontroler menggunakan IDE

Codevision AVR versi 2.05.0. Pada perancangan ini terdapat dua mikrokontroler

yang berlaku sebagai droop speed control dan sebagai synchronizing switch.

Diagram alir synchronizing switch ditunjukan oleh Gambar 3.14 sedangkan diagram

alir droop speed control ditunjukan olah Gambar 3.15.

Mikrokontroler droop speed control menjalankan dua proses yaitu proses

normal dan proses counter. Proses counter berfungsi untuk menghitung kecepatan

putar dan frekuensi sehingga diperbaharui setiap satu detik dan menampilkan pada

LCD. Diagram alir counter dapat dilihat pada Gambar 3.16.

Page 45: 25 Agustus 2015 Buku TA C. Imanuell

34

Gambar 3.15 Diagram alir mikrokontroler synchronizing switch

Page 46: 25 Agustus 2015 Buku TA C. Imanuell

35

Gambar 3.16 Diagram alir mikrokontroler droop speed control

T

T

T

T

Y

Y

Y

Page 47: 25 Agustus 2015 Buku TA C. Imanuell

36

Gambar 3.17 Diagram alir timer mikrokontroler droop speed control

Page 48: 25 Agustus 2015 Buku TA C. Imanuell

37

BAB 4

PENGUJIAN SISTEM

Bab ini membahas mengenai pengujian dari sistem yang telah dirancang.

Pengujian dilakukan pada perangkat keras, perangkat lunak, serta keseluruhan

sistem.

4.4 Pengujian Perangkat Keras

2.4.1 Pengujian rangkaian LCD

Pengujian LCD dilakukan dengan menghubungkan kaki-kaki pada LCD ke

kaki-kaki pada mikrokontroler ATMega16, yaitu dari port PC.0-PC.7. Pengujian

dilakukan dengan menggunakan program yang telah diisikan ke mikrokontroler,

sehingga LCD dapat menampilkan karakter sesuai dengan program yang diinginkan.

Program uji yang digunakan adalah sebagai berikut :

lcd_clear(); lcd_gotoxy(0,0); lcd_puts("Imanuell"); lcd_gotoxy(0,1); lcd_puts("2011042007");

setelah rangkaian mikrokontroler dan rangkaian LCD sudah dihubungkan,

maka hasil tampilan dari LCD adalah “Imanuell” dan “2011042007” seperti pada

Gambar 4.1. Tampilan tersebut menunjukan bahwa LCD dapat berkerja dengan baik.

Page 49: 25 Agustus 2015 Buku TA C. Imanuell

38

Gambar 4.1 Hasil pengujian rangkaian LCD

2.4.2 Pengujian rangkaian sensor inframerah

Pengujian rangkaian sensor menggunakan metode yang dapat dilihat pada Gambar

4.2.

Gambar 4.2 Metode pengujian rangkaian sensor inframerah

Hasil dari pengujia dari metode tersebut dapat dilihat pada Gambar 4.3.

Page 50: 25 Agustus 2015 Buku TA C. Imanuell

39

Gambar 4.3 Hasil pengujian sensor kecepatan

4.5 Pengujian Keseluruhan Sistem

Semua sensor dan rangkaian yang telah diuji dirangkai menjadi satu dengan

mikrokontroler sebagai pemproses data, setelah itu dilakukan pengujian keseluruhan

sistem meliputi pengujian pembacaan input keypad matrix, konversi dari input sensor

menjadi RPM, mikrokontroler pengatur utama dan trip circuit breaker. Setelah

semua pengujian dilakukan, diketahui bahwa keseluruhan sistem berjalan sesuai

dengan perancangan.

Sistem aktif pada saat pertama kali, LCD akan menampilkan jenis speed

control. Tampilan LCD saat dinyalakan dapat dilihat pada Gambar 4.4.

Gambar 4.4 Tampilan awal droop speed control

Setelah itu ditampilkan menu kembali untuk memasukan nilai kecepatan yang

diinginkan pengguna. Pengguna dapat memasukan 3 digit angka melalui keypad

matriks. Jika terjadi kesalahan dalam memasukan angka maka dapat menekan tombol

# sehingga LCD akan dibersihkan kembali seperti awal. Penekanan tombol *

menandakan proses pemasukan data sudah selesai. Tampilan menu memasukan nilai

Page 51: 25 Agustus 2015 Buku TA C. Imanuell

40

kecepatan yang dituliskan dengan RPM pada layar LCD dapat dilihat pada Gambar

4.5.

Gambar 4.5 Menu memasukan nilai RPM set point

Langkah selanjutnya adalah memasukkan nilai persentase droop. Jika

pemasukan data telah selesai, maka mikrokontroler akan menjalankan motor sesuai

dengan kecepatan yang ditentukan. Kecepatan putaran generator akan ditentukan

oleh kecepatan motor yang memutarnya Dalam hal ini untuk mode droop diatur

kecepatan putar generator yang nilainya dihitung menggunakan persamaan 4.1.

(4.1)

Kecepatan motor terus dipantau oleh sensor kecepatan dan dikirimkan kembali

ke mikrokontroler. Ketika generator dihubung ke beban maka kecepatan generator

akan berkurang. Frekuensi generator droop berkurang juga pada saat kecepatan

menurun. Penurunan kecepatan generator dapat dilihat pada Tabel 4.1. Grafik

penurunan kecepatan generator terhadap beban resistif bersifat linier dan dapat

dilihat pada Gambar 4.6.

Page 52: 25 Agustus 2015 Buku TA C. Imanuell

41

Tabel 4.1 Tanggapan kecepatan generator droop speed control terhadap beban

0 10 20 30 40 50 60 70 80 90 1000.00

5.00

10.00

15.00

20.00

25.00

30.00

35.00

40.00 36.1732.00

28.6725.67

21.5017.83 16.50

14.33 13.1710.83

7.83

Pengujian generator secara stand alone

Beban (%)

Frek

uens

i (Hz

)

Gambar 4.6 Grafik tanggapan kecepatan generator droop terhadap beban

Pada saat beban diberikan maka kecepatan generator mode droop menurun.

Pada saat kecepatan mendekati nilai kecepatan yang dimasukkan pengguna, maka

modul droop speed control akan mengirimkan sinyal ke mikrokontroler pengatur

utama untuk mempersiapkan load sharing dengan modul isochronous speed control.

Load sharing dapat dilakukan jika frekuensi generator mode droop sama dengan

frekuensi generator isochronous.

Pengujian load sharing dilakukan sebagai berikut :

Page 53: 25 Agustus 2015 Buku TA C. Imanuell

42

1. Saat generator droop bekerja terlebih dahulu kemudian generator

isochronous

2. Saat generator isochronous bekerja terlebih dahulu kemudian generator

droop

2.5.1 Pengujian load sharing saat generator droop bekerja terlebih dahulu

Data kecepatan generator droop dan isochronous ketika load sharing terjadi

dapat dilihat pada Tabel 4.2. Grafik perhitungan kecepatan putar generator droop dan

isochronous speed control dapat dilihat pada Gambar 4.7. Grafik pengukuran

kecepatan putar generator droop dan isochronous speed control dapat dilihat pada

Gambar 4.8.

Tabel 4.2 Data tanggapan kedua generator saat bekerja secara paralel droop speed

control terlebih dahulu

Page 54: 25 Agustus 2015 Buku TA C. Imanuell

43

Gambar 4.7 Grafik Tanggapan kedua kecepatan generator terhadap beban saat di

paralel droop speed control terlebih dahulu secara perhitungan

Gambar 4.8 Grafik Tanggapan kedua kecepatan generator terhadap beban saat di

paralel droop speed control terlebih dahulu secara pengukuran

Page 55: 25 Agustus 2015 Buku TA C. Imanuell

44

Kecepatan generator droop pada saat awal akan turun terus sesuai dengan

grafik persentase droop pada grafik karakteristik droop pada Gambar 4.7 Kecepatan

generator droop bertahan di 1260 rpm karena semua beban akan ditanggung oleh

isochronous speed control. Load sharing antara droop speed control dan

isochronous speed control dapat terlihat dari hasil frekuensi yang dipertahankan di

1260 rpm.

Pada saat frekuensi salah satu generator turun dari frekuensi setpoint maka

mikrokontroler pengatur utama akan memutuskan tegangan ke circuit breaker.

Circuit breaker akan kembali diberikan tegangan oleh mikrokontroler pengatur

utama saat kedua generator sudah mempunyai frekuensi yang sama.

2.5.2 Pengujian load sharing saat generator isochronous bekerja terlebih

dahulu

Generator isochronous akan menanggung beban terlebih dahulu. Setelah itu

generator droop akan diparalel dengan generator isochronous sehingga kecepatan

generator droop akan mengikuti kecepatan generator isochronous. Lalu kedua

generator akan dihubungkan ke beban. Data hasil paralel generator dapat dilihat pada

Tabel 4.3 dan grafik kecepatan generator isochronous saat paralel secara perhitungan

dapat dilihat pada Gambar 4.9. Grafik pengukuran kecepatan putar generator droop

dan isochronous speed control dapat dilihat pada Gambar 4.10.

Page 56: 25 Agustus 2015 Buku TA C. Imanuell

45

Tabel 4.3 Tabel tanggapan kedua generator saat bekerja secara paralel isochronous

speed control terlebih dahulu

Gambar 4.9 Grafik Tanggapan kedua kecepatan generator terhadap beban saat di

paralel isochronous speed control terlebih dahulu secara perhitungan

Page 57: 25 Agustus 2015 Buku TA C. Imanuell

46

Gambar 4.10 Grafik Tanggapan kedua kecepatan generator terhadap beban saat di

paralel isochronous speed control terlebih dahulu secara pengukuran

Page 58: 25 Agustus 2015 Buku TA C. Imanuell

47

BAB 5

SIMPULAN

Berdasarkan hasil pengujian, maka dapat ditarik simpulan sebagai berikut :

1. Sistem droop speed control berjalan sesuai perancangan.

2. Droop speed control dapat membatasi dan menyesuaikan jumlah putaran

pada motor sesuai dengan kecepatan yang ditentukan pada saat diberikan

penambahan beban pada generator.

3. Droop speed control dapat melakukan load sharing dengan isochronous

speed control.

Page 59: 25 Agustus 2015 Buku TA C. Imanuell

DAFTAR PUSTAKA

[1] Andrianto, H. 2008.Pemrograman Mikrokontroler AVR ATMega16

menggunakanbahasa C. Bandung: Penerbit Informatika.

[2] Bloch, H. P. 1996.A Practical Guide to Steam Turbine Technology. New

York: McGraw Hill Professional.

[3] Chapman, S. J. 2005. Electric Machinery Fundamentals. New York: McGraw

Hill.

[4] Fitzgerald, A, E. Kingsley, C. Umas, S, D. 2013. Electrical Machinery Sixth

Edition. Singapore: McGraw Hill.

[5] Junaidi. 2012. Minimum Sistem ATMega16, (Online),

(http://staff.unila.ac.id/junaidi/2012/12/23/minimum-sistem-atmega16/,

diakses tanggal 11 September 2014).

[6] Http://id.wikipedia.org/wiki/Turbin_uap. 2014. Turbin Uap, (Online),

(http://id.wikipedia.org/wiki/Turbin_uap, diakses 26 September 2014).

[7] Hubert, C, I. 2002. Electric Machines: Theory, Operation, Applications,

Adjustment, and Control. New york: Prentice Hall.

[8] Husain, Z. 1984. Steam Turbines : Theory and Design. New York: McGraw-

Hill.

48

Page 60: 25 Agustus 2015 Buku TA C. Imanuell

49

[9] Saputra, J.2014. Woodward Turbine & Compressor Control. Makalah

disajikan pada seminar Woodward , PM Control Systems, Jakarta, 11-12 Juni.

[10] Shlyakhin, P. 2005. Steam Turbines : Theory and Design. Honolulu:

University press of the Pacific.

[11] Solichin, A. 2003. Pemrograman Bahasa C dengan Turbo C, (Online),

(http://achmatim.net/2009/12/10/buku-gratis-pemrograman-bahasa-c-dengan-

turbo-c/ , diakses 16 Oktober 2014).

[12] Wardana, L. 2006. Belajar Sendiri Mikrokontroler AVR Seri ATMega16,

Simulasi Hardware dan Aplikasi. Yogyakarta: Andi.

Page 61: 25 Agustus 2015 Buku TA C. Imanuell

LAMPIRAN A

LISTING PROGRAM MIKROKONTROLER

A-1

Page 62: 25 Agustus 2015 Buku TA C. Imanuell

A-2

/*******************************************************This program was created by theCodeWizardAVR V3.12 AdvancedAutomatic Program Generator© Copyright 1998-2014 Pavel Haiduc, HP InfoTech s.r.l.http://www.hpinfotech.com

Project : DROOP SCVersion : Date : 7/1/2015Author : Cristian ImanuellCompany : 2011042007Comments:

Chip type : ATmega16Program type : ApplicationAVR Core Clock frequency: 12.000000 MHzMemory model : SmallExternal RAM size : 0Data Stack size : 256*******************************************************/

#include <mega16.h>#include <delay.h>#include <stdlib.h>#include <alcd.h>#include <stdio.h>

#define PengaturUtama PORTC#define sensor PIND.0#define ebreak PIND.1#define pwma OCR1A#define motor PIND.7// Declare your global variables here

char buff[17];char key;int km;int d=0,e=0,f=0;int b=0,rpmsp=0,freksp=0,rpmkm[4]={0,0,0,0};int c=0,dsp=0,dkm[4]={0,0,0,0};int timerrpm;long int hitung,pulsa,a,rpm;int rpmawal,frekawal;long int frek;

Page 63: 25 Agustus 2015 Buku TA C. Imanuell

A-3

void pengubah(){ rpm=pulsa*60/6; frek=rpm/60; }

// External Interrupt 0 service routineinterrupt [EXT_INT0] void ext_int0_isr(void){// Place your code here

}// Timer 0 overflow interrupt service routineinterrupt [TIM0_OVF] void timer0_ovf_isr(void){// Reinitialize Timer 0 valueTCNT0=0x44;// Place your code here if(sensor == 1) { hitung=1; } if(sensor == 0) { if(hitung==1) { pulsa++; hitung=0; } }a++; if(a==1000) { pengubah(); pulsa=0; if(timerrpm==1) { lcd_gotoxy(0,0); lcd_putsf("rpm: "); sprintf(buff,"%d",rpm); lcd_puts(buff); lcd_gotoxy(0,1);

Page 64: 25 Agustus 2015 Buku TA C. Imanuell

A-4

lcd_putsf("frek: "); sprintf(buff,"%d",frek); lcd_puts(buff); } a=0; }}

unsigned char keypad() {

PORTB=0b11111110; if(PINB.4==0) return('A'); if(PINB.5==0) return('5'); if(PINB.6==0) return('8'); if(PINB.7==0) return('0');

PORTB=0b11111101; if(PINB.4==0) return('2'); if(PINB.5==0) return('4'); if(PINB.6==0) return('7'); if(PINB.7==0) return('*'); PORTB=0b11111011; if(PINB.4==0) return('1'); if(PINB.5==0) return('6'); if(PINB.6==0) return('9'); if(PINB.7==0) return('#'); PORTB=0b11110111; if(PINB.4==0) return('3'); if(PINB.5==0) return('B'); if(PINB.6==0) return('C'); if(PINB.7==0) return('D'); }

void cek_input(void) { km=100; delay_ms(100); key=keypad(); switch(key) { case '0': km=0;

Page 65: 25 Agustus 2015 Buku TA C. Imanuell

A-5

break; case '1': km=1; break; case '2': km=2; break;

case '3': km=3; break; case '4': km=4; break; case '5': km=5; break; case '6': km=6; break; case '7': km=7; break; case '8': km=8; break; case '9': km=9; break; case 'A': km=10; break; case 'B': km=11; break; case 'C':

Page 66: 25 Agustus 2015 Buku TA C. Imanuell

A-6

km=12; break;

case 'D': km=13; break; case '*': km=14; break; case '#': km=15; break; } }

void menurpm(){ d=0; while(km!=14) { lcd_gotoxy(0,0); lcd_putsf("rpm setpoint: "); cek_input(); delay_ms(100); if(km<10 && km>-1) { rpmkm[b]=km; b++; } if(km==15) { b=0; lcd_gotoxy(0,0); lcd_clear(); } if(km<16) { lcd_gotoxy(d,1); sprintf(buff,"%d",rpmkm[b-1]); lcd_puts(buff); d++;

Page 67: 25 Agustus 2015 Buku TA C. Imanuell

A-7

} } rpmsp=rpmkm[0]*1000+rpmkm[1]*100+rpmkm[2]*10+rpmkm[3]; freksp=rpmsp/60; km=100; lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("rpm setpoint: "); lcd_gotoxy(0,1); sprintf(buff,"%d",rpmsp); lcd_puts(buff); delay_ms(1000);}

void menudroop(){ lcd_clear(); c=0; while(km!=14) { lcd_gotoxy(0,0); lcd_putsf("% droop : "); cek_input(); delay_ms(100); if(km<10 && km>-1) { dkm[c]=km; c++; } if(km==15) { c=0; lcd_gotoxy(0,0); lcd_clear(); } if(km<16) { lcd_gotoxy(e,1); sprintf(buff,"%d",rpmkm[c-1]); lcd_puts(buff); e++; }

Page 68: 25 Agustus 2015 Buku TA C. Imanuell

A-8

} dsp=dkm[0]; km=100; timerrpm=1; lcd_gotoxy(0,0); lcd_putsf("droop : "); lcd_gotoxy(0,1); sprintf(buff,"%d",dsp); lcd_puts(buff); delay_ms(1000); }

void hitungdroop(){ frekawal=freksp+freksp*dsp/100; rpmawal=frekawal*60; }

void jalan(){ pwma=100; while(frek!=frekawal) { if(frek<frekawal) pwma++; if(frek>frekawal) pwma--; delay_ms(500); } f=1;}

void main(void){// Declare your local variables here

// Input/Output Ports initialization// Port A initialization// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRA=(0<<DDA7) | (0<<DDA6) | (0<<DDA5) | (0<<DDA4) | (0<<DDA3) | (0<<DDA2) | (0<<DDA1) | (0<<DDA0);// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTA=(0<<PORTA7) | (0<<PORTA6) | (0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3) | (0<<PORTA2) | (0<<PORTA1) | (0<<PORTA0);

Page 69: 25 Agustus 2015 Buku TA C. Imanuell

A-9

// Port B initialization// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=Out Bit2=Out Bit1=Out Bit0=Out DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (1<<DDB3) | (1<<DDB2) | (1<<DDB1) | (1<<DDB0);// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=0 Bit2=0 Bit1=0 Bit0=0 PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0);

// Port C initialization// Function: Bit7=Out Bit6=Out Bit5=Out Bit4=Out Bit3=Out Bit2=Out Bit1=Out Bit0=Out DDRC=(1<<DDC7) | (1<<DDC6) | (1<<DDC5) | (1<<DDC4) | (1<<DDC3) | (1<<DDC2) | (1<<DDC1) | (1<<DDC0);// State: Bit7=0 Bit6=0 Bit5=0 Bit4=0 Bit3=0 Bit2=0 Bit1=0 Bit0=0 PORTC=(0<<PORTC7) | (0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);

// Port D initialization// Function: Bit7=Out Bit6=In Bit5=Out Bit4=Out Bit3=In Bit2=In Bit1=Out Bit0=In DDRD=(1<<DDD7) | (0<<DDD6) | (1<<DDD5) | (1<<DDD4) | (0<<DDD3) | (0<<DDD2) | (1<<DDD1) | (0<<DDD0);// State: Bit7=0 Bit6=T Bit5=0 Bit4=0 Bit3=T Bit2=T Bit1=0 Bit0=T PORTD=(0<<PORTD7) | (0<<PORTD6) | (0<<PORTD5) | (0<<PORTD4) | (0<<PORTD3) | (0<<PORTD2) | (0<<PORTD1) | (0<<PORTD0);

// Timer/Counter 0 initialization// Clock source: System Clock// Clock value: 11.719 kHz// Mode: Normal top=0xFF// OC0 output: Disconnected// Timer Period: 9.984 msTCCR0=(0<<WGM00) | (0<<COM01) | (0<<COM00) | (0<<WGM01) | (1<<CS02) | (0<<CS01) | (1<<CS00);TCNT0=0x8B;OCR0=0x00;

// Timer/Counter 1 initialization// Clock source: System Clock// Clock value: 12000.000 kHz// Mode: Fast PWM top=0x00FF// OC1A output: Non-Inverted PWM// OC1B output: Non-Inverted PWM// Noise Canceler: Off// Input Capture on Falling Edge

Page 70: 25 Agustus 2015 Buku TA C. Imanuell

A-10

// Timer Period: 0.021333 ms// Output Pulse(s):// OC1A Period: 0.021333 ms Width: 0 us// OC1B Period: 0.021333 ms Width: 0 us// Timer1 Overflow Interrupt: Off// Input Capture Interrupt: Off// Compare A Match Interrupt: Off// Compare B Match Interrupt: OffTCCR1A=(1<<COM1A1) | (0<<COM1A0) | (1<<COM1B1) | (0<<COM1B0) | (0<<WGM11) | (1<<WGM10);TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (1<<WGM12) | (0<<CS12) | (0<<CS11) | (1<<CS10);TCNT1H=0x00;TCNT1L=0x00;ICR1H=0x00;ICR1L=0x00;OCR1AH=0x00;OCR1AL=0x00;OCR1BH=0x00;OCR1BL=0x00;

// Timer/Counter 2 initialization// Clock source: System Clock// Clock value: Timer2 Stopped// Mode: Normal top=0xFF// OC2 output: DisconnectedASSR=0<<AS2;TCCR2=(0<<PWM2) | (0<<COM21) | (0<<COM20) | (0<<CTC2) | (0<<CS22) | (0<<CS21) | (0<<CS20);TCNT2=0x00;OCR2=0x00;

// Timer(s)/Counter(s) Interrupt(s) initializationTIMSK=(0<<OCIE2) | (0<<TOIE2) | (0<<TICIE1) | (0<<OCIE1A) | (0<<OCIE1B) | (0<<TOIE1) | (0<<OCIE0) | (1<<TOIE0);

// External Interrupt(s) initialization// INT0: On// INT0 Mode: Any change// INT1: Off// INT2: OffGICR|=(0<<INT1) | (1<<INT0) | (0<<INT2);MCUCR=(0<<ISC11) | (0<<ISC10) | (0<<ISC01) | (1<<ISC00);MCUCSR=(0<<ISC2);GIFR=(0<<INTF1) | (1<<INTF0) | (0<<INTF2);

// USART initialization

Page 71: 25 Agustus 2015 Buku TA C. Imanuell

A-11

// USART disabledUCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (0<<RXEN) | (0<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);

// Analog Comparator initialization// Analog Comparator: Off// The Analog Comparator's positive input is// connected to the AIN0 pin// The Analog Comparator's negative input is// connected to the AIN1 pinACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0);SFIOR=(0<<ACME);

// ADC initialization// ADC disabledADCSRA=(0<<ADEN) | (0<<ADSC) | (0<<ADATE) | (0<<ADIF) | (0<<ADIE) | (0<<ADPS2) | (0<<ADPS1) | (0<<ADPS0);

// SPI initialization// SPI disabledSPCR=(0<<SPIE) | (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) | (0<<CPHA) | (0<<SPR1) | (0<<SPR0);

// TWI initialization// TWI disabledTWCR=(0<<TWEA) | (0<<TWSTA) | (0<<TWSTO) | (0<<TWEN) | (0<<TWIE);

// Alphanumeric LCD initialization// Connections are specified in the// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:// RS - PORTA Bit 0// RD - PORTA Bit 1// EN - PORTA Bit 2// D4 - PORTA Bit 4// D5 - PORTA Bit 5// D6 - PORTA Bit 6// D7 - PORTA Bit 7// Characters/line: 16lcd_init(16);

// Global enable interrupts#asm("sei")

while (1) { // Place your code here

Page 72: 25 Agustus 2015 Buku TA C. Imanuell

A-12

lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("DROOP SPEED CONTROL"); delay_ms(1000); lcd_clear(); menurpm(); menudroop(); hitungdroop(); lcd_clear(); timerrpm=1; pwma=0; motor=0; while(timerrpm==1) { jalan(); while(f==1) { motor=0; PengaturUtama=rpm/60; if(frek==freksp) { PORTD.4=1; delay_ms(500); } if(frek<freksp) { pwma=0; } } } }}

Page 73: 25 Agustus 2015 Buku TA C. Imanuell

A-13

Page 74: 25 Agustus 2015 Buku TA C. Imanuell

LAMPIRAN B

LISTING PROGRAM SYNCHRONIZING SWITCH

B-1

Page 75: 25 Agustus 2015 Buku TA C. Imanuell

B-2

/*******************************************************This program was created by theCodeWizardAVR V3.12 AdvancedAutomatic Program Generator© Copyright 1998-2014 Pavel Haiduc, HP InfoTech s.r.l.http://www.hpinfotech.com

Project : Version : Date : 7/4/2015Author : Company : Comments:

Chip type : ATmega16Program type : ApplicationAVR Core Clock frequency: 12.000000 MHzMemory model : SmallExternal RAM size : 0Data Stack size : 256*******************************************************/

#include <mega16.h>

// Declare your global variables hereint a,b,sa,sb,sc;// External Interrupt 0 service routineinterrupt [EXT_INT0] void ext_int0_isr(void){// Place your code here PORTC.0 = 0; PORTC.1 = 0;}

void standalone(){ if(PINA!=0 || PINB !=0) { if(PINA!=0) { a=1; } if(PINB!=0) { b=1;

Page 76: 25 Agustus 2015 Buku TA C. Imanuell

B-3

} while(a==1) { PORTC.0=1; if(PINA==0) { PORTC.0=0; } } while(b==1) { PORTC.1=1; if(PINB==0) { PORTC.1=0; } } }

}

void piso(){ if(PINB!=0) { b=1; } while(b==1) { PORTC.1=1; if(PIND.1==1) { PORTC.0=1; } if(PINB==0) { PORTC.1=0; } }

Page 77: 25 Agustus 2015 Buku TA C. Imanuell

B-4

}

void pdroop(){ if(PINA!=0) { a=1; } while(a==1) { PORTC.0=1; if(PIND.0==1) { PORTC.1=1; } if(PINA==0) { PORTC.0=0; } }

}

void main(void){// Declare your local variables here

// Input/Output Ports initialization// Port A initialization// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRA=(0<<DDA7) | (0<<DDA6) | (0<<DDA5) | (0<<DDA4) | (0<<DDA3) | (0<<DDA2) | (0<<DDA1) | (0<<DDA0);// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTA=(0<<PORTA7) | (0<<PORTA6) | (0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3) | (0<<PORTA2) | (0<<PORTA1) | (0<<PORTA0);

Page 78: 25 Agustus 2015 Buku TA C. Imanuell

B-5

// Port B initialization// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (0<<DDB3) | (0<<DDB2) | (0<<DDB1) | (0<<DDB0);// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0);

// Port C initialization// Function: Bit7=Out Bit6=Out Bit5=Out Bit4=Out Bit3=Out Bit2=Out Bit1=Out Bit0=Out DDRC=(1<<DDC7) | (1<<DDC6) | (1<<DDC5) | (1<<DDC4) | (1<<DDC3) | (1<<DDC2) | (1<<DDC1) | (1<<DDC0);// State: Bit7=0 Bit6=0 Bit5=0 Bit4=0 Bit3=0 Bit2=0 Bit1=0 Bit0=0 PORTC=(0<<PORTC7) | (0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);

// Port D initialization// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRD=(0<<DDD7) | (0<<DDD6) | (0<<DDD5) | (0<<DDD4) | (0<<DDD3) | (0<<DDD2) | (0<<DDD1) | (0<<DDD0);// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTD=(0<<PORTD7) | (0<<PORTD6) | (0<<PORTD5) | (0<<PORTD4) | (0<<PORTD3) | (0<<PORTD2) | (0<<PORTD1) | (0<<PORTD0);

// Timer/Counter 0 initialization// Clock source: System Clock// Clock value: Timer 0 Stopped// Mode: Normal top=0xFF// OC0 output: DisconnectedTCCR0=(0<<WGM00) | (0<<COM01) | (0<<COM00) | (0<<WGM01) | (0<<CS02) | (0<<CS01) | (0<<CS00);TCNT0=0x00;OCR0=0x00;

// Timer/Counter 1 initialization// Clock source: System Clock// Clock value: Timer1 Stopped// Mode: Normal top=0xFFFF// OC1A output: Disconnected// OC1B output: Disconnected// Noise Canceler: Off// Input Capture on Falling Edge// Timer1 Overflow Interrupt: Off// Input Capture Interrupt: Off// Compare A Match Interrupt: Off

Page 79: 25 Agustus 2015 Buku TA C. Imanuell

B-6

// Compare B Match Interrupt: OffTCCR1A=(0<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (0<<WGM11) | (0<<WGM10);TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (0<<CS12) | (0<<CS11) | (0<<CS10);TCNT1H=0x00;TCNT1L=0x00;ICR1H=0x00;ICR1L=0x00;OCR1AH=0x00;OCR1AL=0x00;OCR1BH=0x00;OCR1BL=0x00;

// Timer/Counter 2 initialization// Clock source: System Clock// Clock value: Timer2 Stopped// Mode: Normal top=0xFF// OC2 output: DisconnectedASSR=0<<AS2;TCCR2=(0<<PWM2) | (0<<COM21) | (0<<COM20) | (0<<CTC2) | (0<<CS22) | (0<<CS21) | (0<<CS20);TCNT2=0x00;OCR2=0x00;

// Timer(s)/Counter(s) Interrupt(s) initializationTIMSK=(0<<OCIE2) | (0<<TOIE2) | (0<<TICIE1) | (0<<OCIE1A) | (0<<OCIE1B) | (0<<TOIE1) | (0<<OCIE0) | (0<<TOIE0);

// External Interrupt(s) initialization// INT0: On// INT0 Mode: Any change// INT1: Off// INT2: OffGICR|=(0<<INT1) | (1<<INT0) | (0<<INT2);MCUCR=(0<<ISC11) | (0<<ISC10) | (0<<ISC01) | (1<<ISC00);MCUCSR=(0<<ISC2);GIFR=(0<<INTF1) | (1<<INTF0) | (0<<INTF2);

// USART initialization// USART disabledUCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (0<<RXEN) | (0<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);

// Analog Comparator initialization// Analog Comparator: Off// The Analog Comparator's positive input is

Page 80: 25 Agustus 2015 Buku TA C. Imanuell

B-7

// connected to the AIN0 pin// The Analog Comparator's negative input is// connected to the AIN1 pinACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0);SFIOR=(0<<ACME);

// ADC initialization// ADC disabledADCSRA=(0<<ADEN) | (0<<ADSC) | (0<<ADATE) | (0<<ADIF) | (0<<ADIE) | (0<<ADPS2) | (0<<ADPS1) | (0<<ADPS0);

// SPI initialization// SPI disabledSPCR=(0<<SPIE) | (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) | (0<<CPHA) | (0<<SPR1) | (0<<SPR0);

// TWI initialization// TWI disabledTWCR=(0<<TWEA) | (0<<TWSTA) | (0<<TWSTO) | (0<<TWEN) | (0<<TWIE);

// Global enable interrupts#asm("sei")

while (1) { if(PIND.7==1) sa=1; if(PIND.6==1) sb=1; if(PIND.5==1) sc=1; while(sa==1) {

Page 81: 25 Agustus 2015 Buku TA C. Imanuell

B-8

pdroop(); } while(sb==1) { piso(); } while(sc==1) { standalone(); } }}

Page 82: 25 Agustus 2015 Buku TA C. Imanuell

B-9

LAMPIRAN C

RANGKAIAN KESELURUHAN

Page 83: 25 Agustus 2015 Buku TA C. Imanuell

B-10

Page 84: 25 Agustus 2015 Buku TA C. Imanuell

B-11