bab ii

Upload: nibras-fitrah-yayienda

Post on 20-Jul-2015

147 views

Category:

Documents


9 download

TRANSCRIPT

BAB II DASAR TEORI 2.1 LABVIEW (Laboratory Virtual Instrument Engineering Workbench) LABVIEW merupakan salah satu dari sekian banyak sarana pemrograman komputer. Seperti halnya sarana pemrograman lainnya LABVIEW dikembangkan untuk perancangan dan rekayasa data sehingga dapat menampilkan dan memproses segala macam fungsi untuk melakukan pemanipulasian terhadap fungsi yang diinginkan. LABVIEW memiliki dua ruang kerja, pada masing-masing ruang kerja memiliki antarmuka grafik tersendiri. Setiap simbol grafik ini mewakili banyak kata/perintah yang digunakan dalam bahasa teks. Dengan demikian waktu yang diperlukan dalam perancangan program yang dilakukan oleh seorang pemrogram akan menjadi lebih efisien. Salah satu keunggulan dari LABVIEW adalah aliran pemrograman yang dapat diamati proses kerjanya, sehingga jika terjadi kesalahan dalam penggolahan data dapat diketahui dengan mengamati proses tersebut. LABVIEW merupakan software pemograman yang diproduksi oleh National Instruments dengan konsep yang berbeda. Seperti bahasa pemograman lainnya yaitu C++, matlab atau Visual basic, LABVIEW juga mempunyai fungsi dan peranan yang sama, perbedaannya bahwa LABVIEW menggunakan bahasa pemrograman berbasis grafis atau block diagram sementara bahasa pemrograman lainnya menggunakan basis teks. Program LABVIEW dikenal dengan sebutan VI atau Virtual Instruments karena penampilan dan operasinya dapat meniru sebuah instrument. Pada LABVIEW, user pertama-tama membuat user interface atau front panel dengan menggunakan kontrol dan indikator, yang dimaksud dengan kontrol adalah knobs, push buttons, dials dan peralatan input lainnya sedangkan yang dimaksud dengan indikator adalah graphs, LEDs dan peralatan display lainnya. 3

4 Secara umum program ini dirancang khusus untuk membuat gambaran/simulasi kerja suatu instrumen industri, komunikasi data, akuisisi data, sistem kendali, perancangan dan perhitungan matematika. Setelah menyusun user interface, lalu user menyusun $lock diagram yang berisi kode-kode VI untuk mengontrol front panel. Software LABVIEW terdiri dari tiga komponen utama, yaitu front panel, block diagram, dan Control dan Functions Pallete. Front panel adalah bagian window yang berlatar belakang abu-abu serta mengandung kontrol dan indikator. front panel digunakan untuk membangun sebuah VI, menjalankan program dan mendebug program. Tampilan dari front panel dapat di lihat pada gambar 2.1. Block diagram adalah bagian window yang berlatar belakang putih berisi source code yang dibuat dan berfungsi sebagai instruksi untuk front panel. Tampilan dari blok diagram dapat lihat pada gambar 2.2.

Gambar 2.1 Tampilan front panel[5]

5

Gambar 2.2 Tampilan block diagram[5] Control dan Functions Pallete digunakan untuk membangun sebuah VI. Control Pallete merupakan tempat beberapa control dan indikator pada front panel, control pallete hanya tersedia di front panel, untuk menampilkan control pallete dapat dilakukan dengan mengkilk windows >> show control pallete atau klik kanan pada front panel. Contoh control pallete ditunjukkan pada Gambar 2.3.

Gambar 2.3 Tampilan control pallete[5] Functions Pallete digunakan untuk membangun sebuah block diagram, functions pallete hanya tersedia pada block diagram, untuk menampilkannya dapat dilakukan dengan

6 mengklik windows >> show control pallete atau klik kanan pada lembar kerja blok diagram. Contoh dari functions pallete ditunjukkan pada Gambar 2.4.

Gambar 2.4 Tampilan Function Pallete[5] Dalam membuat suatu aplikasi VI, harus diperhatikan tipe data tiap simbol agar dataflow dapat berjalan tanpa kesalahan. Tipe data dari sebuah simbol dapat diketahui dari warna node atau warna kabel (wire) ketika dihubungkan ke simbol lainnya. Tabel 2.1 Tipe data dari pemrograman LABVIEW[5] Tipe Data Warna Node/Wire Keterangan Floating point Oranye Float, double, precision Integer Biru Byte, word, long, unsigned Time stamp Cokelat tua Indikasi waktu Boolean Hijau muda True, false String Merah muda Teks Dynamic data Biru tua Sinyal dinamis Waveform Oranye tebal, hijau Gelombang kontinyu, muda tebal gelombang digital Path Hijau tua Direktori Array, cluster Tergantung elemen Kumpulan data

7 Tabel 2.2 Fungsi Struktur[5] Gambar Fungsi Keterangan While Loop, akan mengulangi semua objek didalamnya Sampai suatu kondisi logika tertentu. Nilai logika tergantung pada perilaku selanjutnya. Pengulangan dapat dilakukan dengan klik terminal yang bersyarat dan memilih berhenti jika benar atau lanjut jika benar dari shortcut menu. Case Structur memiliki satu atau lebih subdiagram atau kasus, hanya satu kasus saja yang dikerjakan saat struktur ini dieksekusi. Nilai yang terhubungkan dengan terminal pemilih akan menentukan kasus mana yang akan dikerjakan, nilai tersebut dapat bertipe Boolean, string, integer atau enumerate. Sequence melakukan proses aplikasi secara berurutan. Subdiagram yang dimasukkan dalam sequence dikerjakan secara berurutan sesuai dengan penggunaan nomer urutan. Foor Loop secara otomatis akan menyimpan beberapa keluaran kedalam suatu larik.For loop memiliki dua parameter yaitu termination count (cacah perhentian-N, berada di sudut kiri atas) yang merupakan cacah total berapa kali kalang For dikerjakan sebelum berhenti dan cacah iterasi (i di sudut kiri bawah).

8 Tabel 2.3 Fungsi Numerik[5] Gambar Fungsi Keterangan Add untuk menjumlah masukan x dan y Substract untuk menghitung x - y Multiply digunakan untuk mengalikan masukan x dan y. Increment digunakan untuk menambah nilai 1 untuk masukan. Quotient & Remainder untuk menghitung hasil pembagian dan sisanya antara x dan y. Divide untuk membagi masukan x dan y. Sign untuk mengetahui tanda pada angka. Decrement digunakan untuk mengurangi 1 dari nilai masukan Absolute Value untuk mengembalikan harga mutlak dari masukan. Tabel 2.4 Fungsi Boolean[5] Gambar Fungsi Keterangan Number To Boolean Array digunakan untuk mengkonversi suatu bilangan menjadi larik Boolean. Boolean To (0,1) digunakan untuk mengkonversi nilai boolean True atau False menjadi 1 atau 0. And digunakan untuk melakukan operasi AND pada masukan x dan y. Not untuk menghitung logika masukan,

9 jika x FALSE maka fungsi dikembalikan TRUE, begitu juga sebaliknya. Or untuk menghitung logika OR dari masukan. Keduanya harus Boolean atau nilai numerik. Jika keduanya FALSE maka hasilnya FALSE Tabel 2.5 Fungsi String[5] Keterangan Array To Spreadsheet String digunakan untuk mengkonversi suatu larik dimensi pada string. Spreadsheet String To Array digunakan untuk mengkonversi spreadsheet suatu larik dari dimensi dan menyajikan dalam larik. Number Decimal To String digunakan untuk mengkonversi desimal menjadi string. Decimal String To Number digunakan untuk mengkonversi string menjadi bilangan. Concatenate String digunakan untuk menggabungkan masukan string dan 1D larik dari string ke dalam keluaran string tunggal. Search/Split String digunakan untuk membagi string tunggal menjadi 2 substring. Match Pattern digunakan mencari regular expression pada string offset pertama dan jika menemukan maka pisahkan string menjadi 3 substring.

Gambar Fungsi

10 Search and Replace Pattern fungsinya sama dengan match pattern tetapi juga menggantinya.

Tabel 2.6 Fungsi Larik[5] Gambar Fungsi Keterangan Index Array untuk mengembalikan unsur atau sublarik pada index tertentu. Delete From Array untuk menghapus suatu unsur atau sub-larik dari n-dim array dan hasil larik yang munculkan di array w/ subset dihapus Search 1D Array untuk mencari suatu unsur elemen larik 1D yang dimulai dari indeks start. Transpose 2D Array untuk menyusun kembali elemen larik 2D, misalnya larik 2D [i,j] menjadi larik[ j,i]. Array Size untuk menghitung banyaknya unsur-unsur pada setiap dimensi dari larik. Insert Into Array digunakan untuk memasukkan/menyisipkan suatu unsur atau subarray ke dalam n-dim array.

11 Tabel 2.7 Fungsi I/O[5] Gambar Fungsi Keterangan Out port digunakan untuk menulis bilangan integer pada alamat ditetapkan. In port digunakan untuk membaca bilangan integer dari suatu alamat spesifik.

suatu yang suatu yang

Tabel 2.8 Fungsi Perbandingan[5] Gambar Fungsi Keterangan Scala By Power Of 2 digunakan untuk membentuk perkalian x dengan 2 n Less? digunakan untuk memeriksa apakah x kurang dari y, jika benar maka akan memberikan ni lai TRUE dan sebaliknya FALSE. Select digunakan untuk memilih masukan t jika s bernilai benar dan memilih masukan f jika s bernilai salah. Equal digunakan untuk memeriksa apakah nilai x sama dengan y . Greater? Mengembalikan TRUE jika x lebih besar dari y. Less Or Equal? digunakan untuk mengembalikan TRUE jika x adalah kurang dari atau sama dengan y Greater Or Equal digunakan mengembalikan TRUE jika x lebih besar atau sama dengan y.

12 Not Equal? digunakan untuk mengembalikan nilai TRUE jika x tidak sama dengan y. Tabel 2.9 Fungsi waktu dan dialog[5] Gambar Fungsi Keterangan Wait digunakan untuk menunggu yang ditetapkan dalam satuan milidetik dan mengembalikan nilai dari milidetik pengatur waktu itu. Display Message to User untuk menampilkandialog pesan untuk pengguna. Simple Error Handler digunakan untuk menandai apakah ada suatu kesalahan yang terjadi. Jika suatu kesalahan terjadi, VI ini akan menunjukkan uraian kesalahannya dan muncul boks dialog.

Tabel 2.10 Fungsi Penanganan Berkas[5] Gambar Fungsi Keterangan Read File digunakan untuk membaca data dari berkas yang dibuka Close File digunakan untuk menutup suatu berkas yang sudah dibuka . Write File digunakan untuk menulis data pada saat membuka berkas.

Open/Create/Replace File.vi digunakan untuk membuka suatu berkas yang ada, membuat berkas baru atau menggantikan suatu berkas yang ada.

13 2.2 Metode Tuning Osilasi Metode ini didasarkan pada reaksi sistem loop tertutup. Plant disusun serial dengan kontroller PID. Semula parameter parameter integrator disetel tak berhingga dan parameter diferensial disetel nol (Ti = ~ ;Td = 0). Parameter proporsional kemudian dinaikkan bertahap. Mulai dari nol sampai mencapai harga yang mengakibatkan reaksi sistem berosilasi. Reaksi sistem harus berosilasi dengan magnitud tetap (Sustain oscillation). Gambar 2.16 menunjukkan rangkaian loop tertutup pada cara osilasi.

Gambar 2.5 Sistem Loop Tertutup dengan Alat Kontrol Proporsional[3] Nilai penguatan proportional pada saat sistem mencapai kondisi sustain oscillation disebut ultimate gain Ku. Periode dari sustained oscillation disebut ultimate period Tu. Gambar 2.10 menggambarkan kurva reaksi untaian tertutup ketika berosilasi.[3]

Gambar 2.6 Kurva respon sustain oscillation[3]

14 Tabel 2.11 Penalaan paramater PID dengan metode osilasi[3]

2.3 Kontrol PID Kontroler adalah komponen yang berfungsi meminimasi sinyal kesalahan. Keberadaan kontroler atau pengendali dalam sebuah sistem kontrol mempunyai kontribusi yang besar terhadap prilaku sistem. Pada prinsipnya hal itu disebabkan oleh model plant yang diasumsikan tidak dapat diubah, sehingga untuk mengubah karakteristik dan kinerja sistem secara keseluruhan seperti yang diinginkan, diperlukanlah suatu pengendali. Pengendali inilah yang modelnya dapat diubah, sehingga model sistem seluruhnya juga berubah sesuai yang dikehendaki. Selain itu, salah satu tugas komponen kontroler adalah mereduksi sinyal kesalahan, yaitu perbedaan antara sinyal setting dan sinyal actual yang dibandingkan melalui umpan balik. Kontroler akan senantiasa mengubah sinyal aksi selama sinyal error terjadi. Hal ini sesuai dengan tujuan sistem kontrol yakni untuk mendapatkan sinyal aktual yang senantiasa diinginkan sama dengan sinyal acuan yang disetting. Dengan demikian semakin cepat reaksi sistem mengikuti sinyal aktual dan semakin kecil kesalahan yang terjadi, semakin baiklah kinerja sistem kontrol yang diterapkan. Tipe kontroler yang paling populer ialah kontroler PID. Elemen-elemen kontroler P, I dan D masing - masing secara keseluruhan bertujuan untuk mempercepat reaksi sebuah sistem, menghilangkan offset dan menghasilkan perubahan awal yang

15 besar. Pengendali Proportional Integral Derivative (PID) merupakan salah satu pengendali yang bertujuan memperbaiki kinerja suatu sistem, termasuk sistem kendali putaran motor DC. Kecepatan respon dan error steady state merupakan parameter yang diukur untuk menilai kinerja suatu sistem kendali.[3] Sesuai dengan penamaannya, sistem kontrol PID merupakan gabungan metode pengaturan yang terdiri dari kendali Proportional, Integral, dan Derivative yang masing-masing memiliki kegunaan,seperti yang tertera pada tabel 2.1 berikut: Tabel 2.12 Kinerja kendali PID[4]

Masing-masing kendali dapat bekerja dan diimplementasikan baik secara terpisah maupun kombinasi secara bersamaan dengan tujuan saling melengkapi diantara masingmasing karakteristik kendali tersebut. Penjelasan untuk masingmasing kendali, berikut ini: Pada aksi kendali proporsional, keluaran sistem kendali akan berbanding lurus dengan masukan dan error, dan menghasilkan tanggapan yang cepat. Akan tetapi overshoot meningkat sehingga sistem cukup bermasalah terutama saat awal beroperasi. Untuk kendali integral, keluaran sistem berubah dengan cepat sesuai perubahan error, sehingga error steady state mendekati nol. Sedangkan aksi kendali derivative bekerja sesuai dengan laju perubahan error. Oleh karena itu, kendali ini berfungsi mereduksi laju perubahan error sehingga menjaga kestabilan sistem. Dalam perancangan sistem kontrol PID yang perlu dilakukan adalah mengatur parameter Kp, Ki dan Kd supaya tanggapan keluaran sistem sesuai yang diinginkan.

16 Langkah-langkah yang biasa dilakukan untuk mendesain kendali PID sehingga mendapatkan respon yang diinginkan, sebagai berikut: Mengamati respon sistem open loop untuk menentukan parameter kinerja yang akan diperbaiki, kemudian dianalisa kestabilan sistem dengan menggunakan metode Zieger Nichols, menambahkan kendali proporsional untuk memperbaiki rise time, menambahkan kendali derivative untuk mengurangi overshoot menambahkan kendali integral untuk mengurangi error steady state, yang terakhir, mengubah-ubah parameter Kp, Ki dan Kd sehingga diperoleh kinerja yang diinginkan. Fungsi tranfer kontroler PID dalam domain s dinyatakan dengan persamaan :[4] (1) di mana : Kp = penguatan proporsional Ki = penguatan integral Kd = penguatan derivatif Ti = waktu integral Td = waktu derivatif 2.4 Parameter Kontrol PID

Gambar 2.7 Respon Suatu Sistem

17 Parameter parameter yang terpengaruh karena adanya kontrol pada suatu sistem adalah Rise Time (Tr) Rise Time adalah waktu yang dibutuhkan untuk mencapai 90% dari suatu set point yang telah ditentukan Settling Time(Ts) Settilng time adalah waktu yang dibutuhkan untuk mencapai kestabilan dari suatu sistem Overshoot(Mp) Overshoot adalah respon tertinggin dari suatu sistem saat sistem diberi masukan Delay Time(Td) Delay Tume adalah waktu yang dibutuhkan untuk mencapai setengah perjalanan untuk mencapai sat poin Peak Time (Tp) Peak time adalah waktu yang dibutuhkan untuk mencapai overshoot Error Steady State(Ess) Error steady state adalah kkondisi sistem dimana sistem akan mulai stabil dan dalam kondisi tersebut akan terjadi perbeaan antara kondisi aktual dan kondisi ideal dari suatu sistem