Motor stepper adalah motor yang dikendalikan dengan input digital menghasilkan step-step yang digunakan untuk mengontrol sudut dari motor. Motor stepper memiliki torsi yang besar sehingga kuat dan presisi. Untuk mengontrol motor stepper diperlukan driver, karena motor stepper membutuhkan tegangan dan arus yang cukup besar. Pada contoh digunakan power dari Arduino yaitu 5V cukup aman karena program menggunakan kecepatan motor stepper yang rendah, namun sebaiknya gunakan power eksternal dari baterai atau adaptor untuk motor stepper agar dapat berjalan lebih baik dan tidak beresiko merusak Arduino. 1. Kebutuhan
2. Skematik Gambar 1. keterangan pin dan komponen pada modul motor driver. konektor motor stepper dapat langsung digunakan, jumper digunakan untuk menghidupkan dan mematikan motor. Dc power dihubungkan ke power dari baterai atau adaptor dengan tegangan antara 5-12V. Gambar 2. skematik isi motor stepper dan konigurasi urutan input digital untuk menggerakkan motor stepper Gambar 3. pemasangan motor stepper ke driver, dan pemasangan driver ke Arduino, pin 6, 5, 4, dan 3 digunakan sebagai pengontrol driver motor. 3. Program #include <AccelStepper.h> //library motor stepper #define HALFSTEP 8 // definisi jumlah step // definisi pin Arduino pada driver motor #define motorPin1 6 // IN1 pada ULN2003 driver 1 #define motorPin2 5 // IN2 pada ULN2003 driver 1 #define motorPin3 4 // IN3 pada ULN2003 driver 1 #define motorPin4 3 // IN4 pada ULN2003 driver 1 // inisiasi urutan pin IN1-IN3-IN2-IN4 untuk library AccelStepper dengan motor 28BYJ-48 AccelStepper stepper1(HALFSTEP, motorPin1, motorPin3, motorPin2, motorPin4); void setup() stepper1.setMaxSpeed(1000.0); //setting kecepatan maksimal motor stepper1.setAcceleration(100.0); //setting akselerasi stepper1.setSpeed(200); //setting kecepatan stepper1.moveTo(3000); //setting untuk bergerak 3 putaran penuh } void loop() //bila sampai posisi(3000) rubah ke posisi kealikan(berbalik arah) if (stepper1.distanceToGo() == 0) stepper1.moveTo(-stepper1.currentPosition()); Serial.println(stepper1.currentPosition()); } stepper1.run(); // perintah menjalankan motor stepper } This Paper A short summary of this paper 36 Full PDFs related to this paper
Perkenalan saya dengan Matlab pertama kali adalah lewat bidang sistem kontrol/kendali. Waktu itu saya diminta dosen pembimbing untuk mensimulasikan sistem suspensi ketika ada beberapa respon masukan (impulse, step, dan sinusoidal) mengenainya. Kembali saya membuka buku catatan mata kuliah getaran dan teknik pengaturan. Untuk mensimulasikan sesuatu kita harus mampu membuat model matematis dari sistem yang akan kita simulasikan. Model matematis itu kemudian disimulasikan di Matlab untuk melihat respon dan kinerja dari model tersebut. Asalkan sudah dalam bentuk model matematis, Matlab mampu mensimulasikan tanpa memandang domain ilmu dari model tersebut, apakah kimia, elektro, ekonomi, biologi, dan lain-lain. Misalnya kasus motor listrik (atau bisa juga generator). Gambar di atas adalah motor DC yang saya ambil dari situs kampus UPI ini semoga masih ada. Fungsi alih sendiri (dalam istilah Inggris transfer function) dari arti katanya fungsi yang mengalihkan dari satu masukan ke keluaran tertentu. Jika masukannya tegangan dan keluarannya tegangan yang lebih besar, bisasanya disebut penguat, tetapi ada juga masukannya putaran, misal potensiometer, keluarannya arus/tegangan dan sering diistilahkan dengan transducer. Ada juga istilah lainnya yakni sensor, yang merubah masukan tertentu seperti suhu, level ketinggian air, dan lain-lain menjadi tegangan atau arus yang masuk ke dalam perangkat elektronika. Untuk kasus motor DC di atas jika dilihat, masukannya adalah tegangan dari baterai arus searah dan keluaranya adalah puntiran di motor em. Variabel s adalah variabel Laplace. Apa itu? Yah .. mau nggak mau belajar dulu dasar-dasar sistem kontrol. Karena nanti setelah ada variabel laplace ada lagi variabel z kalau sudah masuk ke sistem digital yang melibatkan metode cuplik/sampling. Untuk orang elektro tidak ada masalah dengan besaran-besaran di atas beserta satuannya yang pasti. Situs dari malang ini lebih lengkap dengan besaran dan satuan juga teknik simulasinya. Jika J= 10, D=5, km=2, dan Rα=0.5 maka diperoleh fungsi alih sebesar, pembilang=2/(0.5*5)=0.8 dan penyebut=s(s*(10/5)+1)=s(2s+1). Buka Matlab dan masuk ke command window. Masukan instruksi ini: Lalu muncul plot setelah instruksi masukan impulse diterima fungsi alih, demikian pula setelah masukan tangga (step) diberikan. Ntah bener atau salah, mohon koreksinya. Tapi setahu saya, motor DC itu harus diberi beban karena tanpa beban dia akan bertambah kencang bahkan bisa merusak motor itu sendiri.
Sambungan dari postingan dua tahun yang lalu (https://rahmadya.com/2012/04/12/konversi-scope-ke-figure-pada-matlab/). Berikut ini akan saya coba merubah scope yang tampilannya tidak bagus untuk dicetak menjadi figure yang lebih nyaman, terutama dari sisi penggunaan tinta printer. Maklum background scope yang hitam membuat tinta printer cepat habis. Selain itu figure sangat mudah untuk dimanipulasi seperti menambahkan garis panah yang menjelaskan suatu lengkung kurva, dan sebagainya. Gambar di atas adalah salah satu contoh yang akan kita buat figure-nya. Jika dijalankan dan menekan dobel scope bernama Grafik2 (panah ungu) Anda akan melihat grafik berikut ini (contoh kasus perbandingan beberapa model lewat mekanisme multiplexing): Tampak grafik yang mirip tampilan alat ukur listrik. Sebenarnya ketika kita menjalankan model, Matlab dapat merekam hasilnya jika kita melakukan inisiasi pada scope. Pada gambar di atas coba Anda klik icon parameters. Tekan tab “Data history“. Centang “Save data to workspace” agar setiap model di-running akan menyimpan hasilnya dari variabel “keluaran“, dengan format “Array“. Jika Anda tidak percaya, setelah di running, Lihat Matlab, Anda akan menemukan satu variabel baru yang muncul di workspace (jendela ini secara default terletak di pojok kanan, kalo belum diutak-atik). Sebenarnya tugas sudah selesai, karena Matlab sudah menyediakan matrix keluaran yang berisi data yang merepresentasikan grafik pada scope. Coba saja anda ketik pada command window> keluaran. Tampak enam kolom yang merepresentasikan garis pada scope. Yang mana saja? Tentu saja yang membuat model yang tahu. Perbandingan dari gabungan beberapa kontroler memang sulit membedakan, tapi jika kita sudah tahu jenis keluaran di satu kontroler, untuk perbandingan pasti tahu dong. Tapi kalau dilihat sepintas, kolom pertama itu time (waktu), kolom kedua itu pasti yang berwarna kuning (karena konstant 25). Coba kita buat grafik antara kolom satu dengan kolom dua terlebih dahulu: >plot(keluaran(:,1),keluaran(:,2)) Apaan tuh? Jangan bingung. Jika kita akan membuat plot sumbu horizontal, x, dengan sumbu vertikal, y, maka formatnya adalah plot(x,y). Tapi di sini sumbu horizontal-nya keluaran(:,1), maksudnya adalah seluruh baris kolom ke-1. Begitu juga keluaran(:,2) artinya seluruh baris kolom kedua. Hasilnya adalah sebagai berikut. Lanjutkan dengan membuat plot dari kolom kesatu dengan ketiga, keempat, dan seterusnya hingga keenam. Eiit.. jangan lupa mengetik hold, agar gambar sebelumnya tidak terhapus. >hold >plot(keluaran(:,1),keluaran(:,3) >plot(keluaran(:,1),keluaran(:,4) Terus hingga muncul hasil sebagai berikut. (Note: Tidak perlu diketik semua, cukup tekan panah atas di keyboard dan edit angka terakhirnya). Kok ada tulisannya .. Ah itu gampang, tinggal insert – Text Arrows aja dan arahkan ke kurva yang akan anda rinci, termasuk x-label dan y-labelnya.
Tugas Pengaturan Buat diagram blok dengan simulink, dimana fungsi alih terbuka-nya adalah NPM adalah dua digit nomor NPM terakhir Anda. Misal dua NPM terakhir anda 11, maka: Jalankan dan kirimkan grafik keluarannya untuk sistem tertutup satuan. ke: untuk nilai tugas. Hitung berapa ERROR, overshoot, dan Settling Time-nya.
Pengenalan Pengaturan/30.04.2013/Teknik komputer Terkadang dibutuhkan grafik yang membandingkan beberapa jenis sistem kendali dalam satu SCOPE. Untuk itu diperlukan Multiplexer (MUX) yang memadukan dua atau lebih keluaran dalam satu SCOPE. Untuk latihan buat contoh Sistem Kendali sebagai berikut. Multiplexer diperoleh dengan mudah lewat SEARCH di Simulink Library Browser. Secara Default, MUX menyediakan dua masukan. Ganti “Number of Input” dengan tiga karena kita akan merancang tiga masukan. Jalankan Model Simulink yang baru saja dibuat. Ketika SCOPE dilihat (dengan cara dobel klik) akan tampak respon perbandingan seperti berikut ini. Terkadang kita diminta menampilkan grafik bukan dalam bentuk SCOPE karena kurang nyaman dicetak akibat background yang berwarna gelap. Oleh karena itu kita harus menampilkannya dalam format PLOT yang dapat diedit. Untuk itu pada gambar di atas, tekan Parameters. Pada Tab Data History, check list tombol Save Data to Workspace, dengan format Array. Maksudnya adalah ketika Simulasi berjalan, SCOPE akan menyimpan informasi grafik Workspace. Nama variabel (ScopeData) dapat kita ganti sesuai keinginan. Berikutnya kita akan membuat PLOT lewat Command Window. Sebelumnya tekan tombol OK terlebih dahulu pada gambar di atas. Jalankan SIMULASI kemudian masuk ke Command Window. Perhatikan, pada Workspace terdapat variabel baru hasil tangkapan SCOPE dengan nama ScopeData. Buat kode berikut ini:
Perintah hold bermaksud agar gambar yang lalu tidak dihapus dan tetap dipertahankan ada di figure. Instruksi GRID agar dihasilkan garis bantu pada grafik.
Sekarang kebanyakan perangkat elektronika sudah berbau digital. Termasuk juga sistem kendali. Salah satu komponen terpenting adalah konverter dari analog ke digital dan sebaliknya dari digital ke analog. Untuk materi UAS, kita akan mulai membahas Sistem Kendali Digital dengan seluk beluknya yang rumit jika dianalisa tanpa bantuan komputer. Banyak yang bertanya, block function apa yang berfungsi merubah sinyal analog menjadi digital. Jawabannya sederhana, fungsi Zero Order Hold (ZOH). Buka SIMULINK dan buat diagram sebagai berikut. Gambar di atas ZOH berisi rangkaian cuplik dan sampling terhadap sinyal sinus analog yang akan dirubah menjadi digital. Running sistem di atas, Anda akan melihat hasil perbandingannya antara sinyal asli analog (warna merah muda) dengan yang digitalnya (kuning). Perhatikan bagaimana prinsip ZOH melakukan sampling di awal (bukan di tengah). Untuk lengkapnya baca buku yang membahas Digital Control System. Oiya, gunakan MUX untuk menggabungkan dua keluaran menjadi satu SCOPE. Kalo sulit mencarinya, gunakan SEARCH pada SIMULINK Library.
Peng. Pengaturan II. 17.12.2012. Teknik Komputer Ketika kita berbicara sistem kendali digital, beberapa pakar digital yang biasanya berkecimpung dalam bidang Digital Signal Processing (DSP) cenderung menulis fungsi transfer: (1)Dengan persamaan: Perhatikan pula, notasi g yang sering digunakan pada sistem kendali kontinue diganti dengan h. Buka Matlab dan buat persamaan (1) dengan kode: Perhatikan, matlab akan otomatis merubah ke variabel diskrit z karena adanya time sampling sebesar 0.1 di akhir kode. Untuk membentuk menjadi persamaan standar (2), gunakan kode berikut: Dengan menambahkan ‘variable’,’z^-1′ di akhir kode. Namun ada sedikit permasalahan untuk kasus fungsi alih sederhana, misalnya h=1/(z+1) karena jika digunakan kode berikut untuk mendapatkan fungsi dengan variabel standar z^-1 diperoleh: Padahal, prinsip dasarnya adalah mengalikan pembilang dan penyebut dengan pangkat z terbesar yaitu z. Seharusnya pembilangnya berharga 1/z atau z^-1, bukan 1. Oleh karena itu kita harus memodifikasi sedikit persamaan di atas menjadi: Dengan menambah 0 dibagian pembilangnya agar diperolah hasil yang tepat. Penambahan 0 ini juga tidak berpengaruh terhadap fungsi asalnya. Di sini versi yang digunakan adalah Matlab 2008, mungkin berbeda untuk Matlab 2012.
Pengenalan Pengaturan II, 3.12.2012, Lab of Hardware Berikut ini tugas kelompok yang harus dikerjakan hari ini. Tugasnya adalah merancang model di simulink, dan cari nilai P,I, dan D pada kontroler PID agar dipenuhi syarat: Kelompok I Kelompok II Kelompok III Kelompok IV Kirim ke: dengan melampirkan file .mdl dan capture SCOPE.
Proporsional Integrator dan Diferensiator (PID) merupakan kontroler yang fungsinya memperbaiki kinerja sistem kendali. Baik buruknya sistem kendali, tergantung dari spesifikasi yang dituntut oleh sistem tersebut. Sistem yang cepat, belum tentu baik jika melebihi batas kesalahan yang ada. Sebagai contoh berikut ini sistem dengan fungsi alih digital, h=0.09516/(z-0.9048) memiliki error 0.5. Gunakan PID untuk memperbaiki kinerja sistem dengan syarat: 1) error < 0.1, 2)persentase overshott < 10%, dan respon time < 5 detik. Gunakan simulink MATLAB: Atur nilai P, I, D dan konstanta waktu D agar diperoleh hasil spesifikasi di atas. Jika diambil besar P, I, D, t berturut-turut 1.5, 3, 1.2 dan 2, diperoleh hasil sebagi berikut: Karena overshootnya 20 %, maka sistem tidak memenuhi syarat. Misal kita setting kembali P,I,D dan t berturut-turut 1, 2.5, 3, dan 2 diperoleh hasil sebagai berikut: Sistem memiliki respon sekitar 7 detik, dan karena permintaan harus di bawah 5 detik, walaupun error dan % overshoot memenuhi syarat, tetap tidak bisa diaplikasikan. Berikutnya coba dengan P, I, D dan t berturut-turut Sistem memiliki respon 5 detik (sesuai syarat) dan overshoot (1.1-1)*100 = 10 % sehingga sedikit memenuhi syarat. Coba ramu lagi PID agar diperoleh hasil optimal.
Buka Simulink untuk memandingkan grafik keluaran antara sistem kendali kontinyu dan dijital. Untuk membandingkan kita gunakan fungsi alih yang sama. Pilih ‘Continuous‘ dan ‘Diskrit‘ untuk membuat fungsi alihnya. Untuk mendapatkan ‘Mux‘ gunakan ‘searching” pada simulink. Untuk mencari fungsi alih diskritnya, gunakan command window pada Matlab dan fungsi ‘c2d‘ untuk memperoleh ‘Discrete Transfer Fcn‘. Hasilnya dapat dilihat pada Scope: Ada sedikit perbedaan pada respon, tetapi akurasinya tetap sama (Lihat Display: 0.89). Ketertinggalan diakibatkan oleh ‘Time Sampling‘ yang kecil. Waktu cuplik yang terlalu akurat mengakibatkan beban saat konversi dari D/A dan A/D. Coba naikan waktu cuplik jadi satu detik, hasilnya: Hasilnya lebih akurat tetapi akibatnya grafik kurang presisi.
Lab Hardware UNISMA, Tek Komputer, 10 Oktober 2012. Berbeda dengan pengenalan pengaturan I semester yang lalu, pengenalan pengaturan II membahas sistem diskrit dimana sistem kendali yang digunakan berbasis komputer/dijital. Keberadaan sistem yang dijital kian hari kian bertambah, apalagi sistem dijital lebih mudah dikontrol dibanding sistem kontinyu. Peralatan yang dahulu mahal, saat ini menjadi lebih murah karena perkembangan teknologi perangkat keras yang cepat. Untuk praktek seperti biasa kita menggunakan bahasa pemrograman matlab untuk melihat respon sistem yang kita rancang atau analisa. Perbedaan mencolok antara sistem kontinyu dengan sistem dijital adalah pada penerapan teorema cuplik dan sampling. Teorema ini mutlak ada karena sistim dijital berkarakteristik diskrit. Secara matematis akibat dari diskritisasi adalah berubahnya linearitas variabel laplace. Oleh karena itu untuk melinearkannya (adanya variabel exponen) diperlukan transformasi –z. Berikut ini contoh kasus dimana kita akan membuat sistem dijital dari sistem analog dengan fungsi alih: G=tf(1,[1 2 5]). Buat code di command window untuk melihat responnya terhadap masukan tangga satuan. Jika dilihat pada jendela grafik akan tampak sistem yang tadinya continyu menjadi seperti tangga karena adanya sampling time sebesar 0.1 detik. Metode sampling ada banyak (lihat diktat), tetapi kebanyakan yang diterapkan adalah Zero Order Hold (ZOH) seperti ditunjukkan pada kode di atas. Grafik dapat dilihat pada gambar di bawah ini. Berikutnya kita berlatih menggunakan simulink yang lebih mudah dan lebih jelas dilihat karena menggunakan diagram blok. Untuk masuk, klik simbol simulink pada Matlab anda . Buat diagram di bawah ini, caranya seperti pada kuliah pengenalan pengaturan yang lalu, hanya saja di sini kita tidak menggunakan Continuous melainkan descrete. Pilih Descrete Transfer Function.Descrete transfer function yang dimasukkan pada isian parameter diambil dari hasil konversi dari kontinyu ke diskrit pada command window sebelumnya. Hasilnya kita coba lihat bentuk sistem tertutup dari sistem sebelumnya yang terbuka, hasilnya dapat dilihat dengan mengklik ganda scope setelah menekan tombol running .
Di antara berbagai jenis kontroler, Kontroler Logika Fuzzy (KLF) merupakan jenis kontroler terbaru dan memiliki kelebihan dari sisi kepraktisan dibanding dengan Proporsional Integral dan Differensial (PID) yang telah lama digunakan. Untuk mempraktekan KLF, buka Matlab.
Pertemuan kali ini membahas kriteria kestabilan Nyquist. Tiga kemungkinan kestabilan sistem berdasarkan diagram nyquist, antara lain:
Contoh: Tentukan fungsi di bawah ini, stabil atau tidak, dengan diagram nyquist, jelaskan. Transfer function: 2 ————- s^2 + 3 s + 5 Buka matlab, buat fungsi alih: g=tf(2,[1 3 5]). Jalankan >>nyquist(g), maka akan muncul grafik berikut ini:
Diagram di atas masuk kategori (1), tidak ada pengelilingan di titik -1+j0. Stabil jika tidak ada pole di sebelah kanan J. Untuk mengetahui pole sistem tersebut ketik >> pole(g). ans = -1.5000 + 1.6583i -1.5000 – 1.6583i Seluruh Pole terletak di sebelah kiri J (lihat -1,5, negatif, berarti di sebelah kiri j pada bidang S). Latihan: Tentukan kestabilan sistem di bawah ini dengan diagram Nyquist. >> g=tf(1,[1 2 3 15]) Transfer function: 1 ———————- s^3 + 2 s^2 + 3 s + 15 Diagram Nyquist-nya >>nyquist(g) Karena tidak ada pengelilingan di titik -1+j0, maka masuk kategori (1). Tinggal mencari pole-nya apakah ada yang di sebelah kanan? >> pole(g) ans = -2.8212 0.4106 + 2.2690i 0.4106 – 2.2690i Ternyata ada dua pole di sebelah kanan j (positif), maka sistem tidak stabil. Coba buktikan untuk masukan step. >> gclose=g/(1+g) Transfer function: s^3 + 2 s^2 + 3 s + 15 ————————————————— s^6 + 4 s^5 + 10 s^4 + 43 s^3 + 71 s^2 + 93 s + 240 >> step(gclose) Tampak gambar di atas membesar terus tak hingga yang menandakan sistem tidak stabil. Kesimpulan: Untuk menjawab pertanyaan, lakukan langkah berikut:
Bagi rekan-rekan penggemar simulink Matlab pasti mengalami kesulitan saat melaporkan hasil simulasi lewat Scope yang kurang baik dari sisi tampilan. Jika langsung dicetak, maka akan menghabiskan banyak tinta karena grafiknya putih di atas hitam. Dulu saya sering menggunakan cara melalui invert color, tetapi tentu saja hasilnya kurang bagus. Apalagi sumbu axis dan ordinat serta judul grafik tidak bisa ditambah. Nah, setelah lama melanglang buana di simulink, akhirnya saya memperoleh cara untuk memindahkan hasil Scope ke figure. Pertimbangannya adalah figure lebih baik dan dapat diberi indikator axis, ordinat dan judul grafiknya. Sebagai bahan contoh, perhatikan model di bawah ini. Sebelum dirunning, dobel klik Scope untuk memindahkan hasil running ke workspace Matlab. Setelah dobel klik pada scope, Anda akan melihat settingan yang harus diisi. Untuk memindahkan hasil scope ke workspace dobel klik icon Parameter dan pilih tab “data history”. Centang “save data to workspace” sehingga dapat mengisi nama variabel dan format datanya. Beri nama variabel misalnya “output” dan formatnya “array”. Awas, nama variabel pada Matlab “Case sensitive”. Setelah itu running model yang telah Anda buat. Perhatikan, sepertinya tidak ada yang terjadi pada workspace. Ternyata saat Anda beralih ke Command Window, maka workspace menyimpan hasil running ke dalam suatu variabel bernama output. Coba ketik “who” di command window. Jika muncul variabel “output” maka settingan Anda berhasil, sebaliknya, jika tidak muncul, ulangi langkah di atas. Jangan lupa di klik “OK”. Perhatikan scope di atas, tampak background hitam kurang nyaman jika dicetak. Beralihlah ke command window, variabel output berisi matriks sumbu axis dan ordinat. Untuk menampilkan grafiknya ketik instruksi-instruksi di bawah ini. Saat Plot(x,y) diketik, Matlab akan menampilkan figure berupa grafik respon yang lebih baik dari Scope dari sisi tampilannya. Grid, xlabel, ylabel dan title bermaksud menambah informasi tambahan di Figure. Selamat Mencoba !! Cao ..
Untuk sistem yang Multi Input Multi Output (MIMO) biasanya sistem menggunakan persamaan dalam ruang keadaan (State Space Equation). MIMO menggunakan bentuk matriks yang sedikit rumit. Untuk mempercepat konversi di sini kita memerlukan bantuak komputer dengan perangkat lunak Matlab. A. Konversi dari Fungsi Alih ke Ruang Keadaan Di sini misalnya kita memiliki fungsi alih g=(100/(s2 + 2s + 10)). Untuk melakukan konversi ke persamaan Ruang keadaan gunakan instruksi pada command window Matlab:
Perhatikan teknik memasukkan instruksi di atas. Tiap fungsi alih menghasilkan empat matriks A, B, C dan D. B. Konversi dari Ruang Keadaan Menjadi Fungsi Alih Sebaliknya, Matlab juga menyediakan teknik mengkonversi Ruang Keadaan menjadi fungsi alih. Maka dihasilkan fungsi alih dengan pembilang 100 dan penyebut s2 +2s + 10, sama dengan contoh fungsi alih di bagian A di awal tulisan. C. Membuat Persamaan Ruang Keadaan dengan Simulink Buka simulink, lalu gambar diagram blok berikut ini menggunakan blok persamaan ruang keadaan (perhatikan simbolnya). Dobel klik State-Space. Isi dengan isian di bawah ini: Klik Simulation > Starrt. Akan dihasilkan pada scope respon dari sistem tersebut. Jika dijalankan maka dihasilkan grafik di bawah ini (dengan mendobel klik scope). Sebagai perbandingan, coba gambar di lembar yang sama untuk dua sistem kendali dengan dua format berbeda, yang satu ruang keadaan satunya lagi fungsi alih. Hasilnya adalah grafik yang sama, karena memang sesungguhnya dua sistem itu sama. Selamat mencoba …
Rahmadya Trias H., ST, MKom.
Karena merubah Plant sangat tidak layak, maka perancang Sistem Kendali biasanya menambahkan suatu kontroler untuk memperbaiki kinerja system. Kontroler ada tiga bagian, yaitu: Proporsional, Integrator dan Diferensiator. Buka Matlab, masuk ke simulink, klik New. Rancanga sistem kendali lingkar tertutup, dengan G(s)=1/(s+4). Jika tanpa kontroler menghasilkan output sebagai berikut. Klik Simulation > Start. Dobel klik pada Scope, dan klik pada gambar Tampak bahwa ada error sebesar 0,8. Perhatikan display. Oleh karena itu kita diminta menambah kontroler guna mengurangi kesalahan tunak itu. Sedangkan kecepatan (Respon Time) dua detik. Coba tambahkan kontroler proporsional. Coba tambahkan proporsional Gain 10 x. Tampak ada perbaikan kesalahan tunak dari 0,8 menjadi 0,29. Sedangkan kecepatan membaik (dari 2 detik menjadi 1,2 detik. Berikutnya kita coba Integrator, misalnya tambahkan integrator 1/s sebagai kontroler. Tampak adanya perbaikan yang sempurna dari kesalahan tunak (mendekati nol). Hanya saja ada masalah pada kecepatan system. Perhatikan gambar outputnya, walaupun kesalahan membaik tetapi kecepatannya turun drastis, dari 2 detik menjadi hamper 10 detik. Untuk system tertentu sangat tidak menguntungkan (biasanya system servo membutuhkan kecepatan system). Tetapi jika digabung, proporsional + integrator, maka ada perbaikan dari kecepatan dari 10 detik menjadi hampir 3 detik dan kesalahan membaik (mendekati nol). Hanya saja muncul gejala baru yang dikenal dengan istilah “Overshoot”, sebesar 10%. Terkadang Overshoot bisa berbahaya jika terlampau tinggi. Misal listrik, jika terlalu sering overshoot, akan merusak komponen. Berikutnya gabungan antara Proporsional (P), Integrator (I) dengan Diferensiator (D), atau dikenal dengan istilah PID. Pada prinsipnya diferensiator bermanfaat untuk mempercepat system, tetapi dampaknya ada riak (derau) pada system. Mungkin sangat mengganggu untuk system tertentu. Pada Matlab, PID dapat kita rancang dengan toolbox PID. Pada simulink, search “PID” makan akan diperoleh toolbox tersebut. Letakan pada posisi kontroler, atur ukuran P, I dan D sesuai dengan kebutuhan system yang optimal. Selamat mencoba. |