Rabu, 17 November 2010

Kontrol PI

Kontrol PI        

         Suatu pengontrol proporsional yang memberikan aksi kontrol proporsional dengan error akan mengakibatkan efek pada pengurangan rise time dan menimbulkan kesalahan keadaan tunak (offset). Suatu pengontrol integral yang memberikan aksi kontrol sebanding dengan jumlah kesalahan akan mengakibatkan efek yang baik dalam mengurangi kesalahan keadaan tunak tetapi dapat mengakibatkan respon transien yang memburuk. Pengetahuan tentang efek yang diakibatkan oleh masing-masing pengontrol tersebut yang nantinya akan digunakan dalam penentuan nilai-nilai penguatan proporsional (Kp) dan integral (Ki). Tabel basis pengetahuan hubungan antara penguatan dan efeknya pada pengontrol PI diperlihatkan pada Tabel 1 dibawah ini.

Tabel 1 Efek dari pengontrol P dan I.

Penguatan Rise time Overshoot Setling time offset
Kp menurun meningkat perubahan kecil terjadi
Ki menurun meningkat meningkat menghilangkan

Gabungan aksi kontrol proporsional dan aksi kontrol integral membentuk aksi kontrol proporsional plus integral ( controller PI ). Gabungan aksi ini mempunyai keunggulan dibandingkan dengan masing-masing penyusunnya. Keunggulan utamanya adalah diperolehnya keuntungan dari masing-masing aksi kontrol dan kekurangan aksi kontrol yang satu dapat diatasi. Dengan kata lain elemen-elemen controller P dan I secara keseluruhan bertujuan untuk mempercepat reaksi sebuah sistem dan menghilangkan offset.
Dalam waktu kontinyu, sinyal keluaran pengendali PI dapat dirumuskan sebagai berikut.


dengan
Co = sinyal keluaran pengendali PI.
Kp = konstanta proporsional.

Ti = waktu integral.
Ki = konstanta integral.
e(t) = sinyal kesalahan.
e(t) = referensi – keluaran plant).

Diagram blok pengendali PI dapat dilihat pada Gambar 1.


Gambar 1 Diagram blok pengendali PI.

Pengolahan parameter-parameter PI menjadi konstanta-konstanta pengendalian secara diskrit sesuai dengan penjelasan perhitungan berikut. Berdasarkan persamaan 2.1 dengan menggunakan Transformasi Laplace, didapatkan persamaan PI dalam kawasan S sebagai berikut.

Persamaan ini diubah kembali ke kawasan waktu, sehingga menjadi :
Untuk mengubah persamaan diatas ke dalam bentuk diskrit, digunakan persamaan backward difference, di mana :
Sehingga persamaannya menjadi:

Persamaan ini  menunjukkan persamaan pengendali PI dalam bentuk diskrit. Dari persamaan ini dapat diketahui bahwa pengendali PI menggunakan konstanta-konstanta pengendalian sebagai berikut :

dengan

          Penalaan pada pengontrol PI adalah penentuan besaran penguatan-penguatan P dan I sehingga diperoleh karakteristik sistem yang baik. Ada beberapa cara penalaan kontroler PI diantaranya yaitu metode relay feedback Ziegler-Nichols, manual (hand-tuning/trial-error), metode analitik dengan optimasi, penempatan pole (pole placement), atau swatala (auto tuning).

Artikel terkait:
- Pengendali Proporsionl
-  Pengendali Integral
 


Share/Bookmark

Jumat, 12 November 2010

Elektronika Dasar

Elektronika Dasar
Elektronika merupakan cabang ilmu yang mempelajari kelistrikan arus lemah yang dioperasikan dengan cara mengontrol aliran electron atau partikel bermuatan listrik di dalam ruang hampa atau gas dan aliran electron serta lubang didalam semikonduktor. Ilmu yang mempelajari alat-alat seperti ini merupakan cabang dari ilmu fisika, sementara bentuk desain dan pembuatan sirkuit elektroniknya adalah bagian dari teknik elektro, teknik komputer, dan ilmu/teknik Instrumentasi dan elektronika. Sedang peralatan elektronik (electronic devices) merupakan alat-alat yang menggunakan dasar kerja elektronika.
Kode Huruf, Kode Angka dan Kode Warna

Untuk menuliskan angka yang besar-besar misalnya jutaan, puluhan juta dan juga menuliskan angka yang sangat kecil seperseribu, sepersepuluh juta dan sebagainya akan makan tempat. Terutama penulisan di atas komponen yang kecil-kecil. Besaran-besaran tersebut sangat sulit untuk dibaca. Untuk mempersingkat, maka orang mengunakan istilah­-istilah yang ringkas dan sekalian kode­kodenya yang berupa huruf.
GIGA (G) = 1.000.000.000
MEGA (M) = 1.000.000
KILO (K) = 1.000
MILLI (m) = 0,001
MIKRO (μ) = 0,000 001
NANO (n) = 0,000 000 001
PIKO (p) = 0,000 000 000 001

Dengan kode­-kode huruf itu kita dapat menuliskan angka-­angka panjang menjadi ringkas dan praktis untuk dituliskan di atas komponen terutama yang kecil­kecil, misalnya 1.000.000.000 Cycle cukup ditulis 1Mc, 0,000 000 000 001 Farrad cukup ditlis dengan 1pF dan sebagainya.
Untuk angka­-angka pecahan dalam teknik radio biasa digunakan pecahan desimal, ialah dengan tanda baca koma, misalnya satu setengah dituliskan sebagai 1,5 dan sebagainya. Dalam teknik radio tanda baca koma tersebut diganti dengan huruf singkatan besarannya, misalnya 1,5 kilo ditulis 1K5, 5,6 kilo dituliskan 5K6 dan sebagainya. Cara tersebut menguntungkan terutama untuk penulisan pada komponen yang demensinya kecil sehingga tanda baca koma sukar dilihat dan juga dapat dengan mudah terhapus.
Disamping kode huruf, untuk mempersingkat penulisan, dalam teknik radio dikenal juga kode­kode angka. Kode angka ini digunakan untuk menggantikan sejumlah angka nol, misalnya untuk menyingkat angka 1.200.000 dituliskan sebagai 125. Angka yang terakhir, ialah angka lima menggantikan sejumlah angka nol yang ada di belakang angka 12. Cara penulisan semacam ini akan dipergunakan pada kode warna.
Yang diuraikan di atas adalah penggunaan kode angka 3 digit. Kode angka dapat juga dituliskan dengan 4 digit, misalnya menuliskan angka 124.000 dapat ditulis dengan 4 digit, menjadi 1243. Sistem 4 digit ini banyak digunakan pada resistor dengan toleransi 1%. Penulisan tidak dilakukan dengan angka tetapi dengan kode­kode warna.
Angka dapat duwujudkan dalam bentuk kode warna, kode ini dapat berbentuk gelang warna ataupun berupa bundaran yang berjajar. Adapun kode warna itu adalah sebagai berikut ini.
0 = Hitam
1 = Cokelat
2 = Merah
3 = Orange
4 = Kuning
5 = Hijau
6 = Biru
7 = Ungu
8 = Abu­-abu
9 = Putih
Penggunaan kode warna ini sangat menguntungkan terutama untuk komponen yang kecil­-kecil karena dengan gelang­-gelang warna, angka menjadi mudah terlihat dan tidak mudah terhapus.



Share/Bookmark

Koneksi SQL Server di Delphi

Pada Kesempatan kali ini saya mencoba berbagi pengetahuan bagaimana caranya menghubungkan database SQL Server 5.1 di Delphi. Pertama kali yang akan kita buat adalah Datasource database melalui menu ODBC yaitu kita masuk ke Control Panel -> Administrative Tools dan pilih ODBC sehingga akan tampil menu seperti di bawah ini:

Langkah selanjutnya Pilih tombol Add dan pilih provider yang kita gunakan. Karena kita menggunakan SQL Server 5.1 dan Connector yang kita gunakan MySql Connector versi 5.1 maka pilihlah MySql ODBC 5.1 Driver seperti tampak pada gambar di bawah ini:


Selanjutnya pilih Finish dan masukkan Paramater yang berhungan dengan database yang kita buat seperti tampak pada gambar di bawah ini:

Dari sini tinggal giliran kita masuk ke Delphinya dan komponen yang kita butuhkan diantaranya ADOConnection, beberapa Textbox, Label dan button, aturlah seperti gambar dibawah ini

Sorce code sederhananya bisa dilihat seperti di bawah ini:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB, DBXpress, SqlExpr, DBTables, Grids, Mask;

type
TForm1 = class(TForm)
txtserver: TEdit;
txtusr: TEdit;
txtpsw: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Button1: TButton;
Button2: TButton;
txtdb: TEdit;
Label4: TLabel;
ADOConnection1: TADOConnection;
txtport: TEdit;
Label5: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
//tutup koneksi saat ini
if adoconnection1.Connected then
begin
adoconnection1.Close;
adoconnection1.ConnectionString := '';
end;
//test koneksi
adoconnection1.ConnectionString := 'DSN=db;DESCRIPTION=db'+
';SERVER=' + txtserver.Text +
';UID='+ txtusr.Text +
';PWD='+ txtpsw.Text +
';DATABASE='+ txtdb.Text +
';PORT='+ txtport.Text ;
screen.Cursor := crhourglass;
try adoconnection1.Open ;
//koneksi berhasil
screen.Cursor := crdefault;
messagedlg('Koneksi Berhasil !' , mtinformation, [mbok],0);
except
on E:exception do
begin
//koneksi gagal
screen.Cursor := crdefault;
adoconnection1.Close;
messagedlg('koneksi gagal ! ', mtinformation, [mbok],0);
end;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
form1.Close ;
end;

end.

Nah... sampai disini aku mau mencoba menampilkan isi dari tabel dari databases sql yang aku bikin. Aqu tinggal menambahkan beberapa komponen saja. Komponen yang di perlukan:
1. Datasource dari pallete DataAccess
2. AdoQuery dari pallete ADO
3. DbGrid dari menu DataControls
4. Button
5. Edit

Atur Form seperti gambar di bawah ini:


Nah untuk listing program lengkapnya sepert dibawah ini;

unit Unit2;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ADODB, DB, Grids, DBGrids, StdCtrls, Buttons, ExtCtrls;

type
TForm2 = class(TForm)
BitBtn1: TBitBtn;
Edit1: TEdit;
DBGrid1: TDBGrid;
procedure FormCreate(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form2: TForm2;

implementation
uses Unit1;

{$R *.dfm}

procedure TForm2.FormCreate(Sender: TObject);
begin
form1.Hide ;
DataSource1.DataSet := adoquery1;
dbgrid1.DataSource := DataSource1;
end;

procedure TForm2.BitBtn1Click(Sender: TObject);
begin
try
with ADOQuery1 do begin
connection := form1.ADOConnection1;
Active:= true;
close;
SQL.Clear;
sql.Add(edit1.Text);
Open;
end;

except
application.MessageBox ('Sql Command anda salah',' Error');
end;

end;

end.

Artikel Terkait :
- Koneksi Query SQL Delphi dengan Zeoz Lib
- Lazzarus Platform delphi yang gratisan

Share/Bookmark

Minggu, 18 Juli 2010

Koneksi database SQL ke VB NET

Rekan-rekan semua pada kesempatan kali ini saya sedang mencoba belajar menghubungkan database SQL dengan VB NET. Percobaan ini sekarang saya menggunakan MySQL 5.0 sebagai wadah databasenya.

Langkah yang pertama tentunya kita buat dulu databasenya beserta tabel yang akan kita gunakan, OK kita masih memakai consule, buka terlebih dahulu cmd prompt lalu masuk dulu ke server sql.

ketikkan
> mysql -p -uroot --port 3307;

Pemilihan nomer Port disini tergantung port yang temen-temen gunakan pada server sql di komputer masing-masing. kebetulan saya menggunakan port 3307. langkah selanjutnya buat database dengan mengetikkan perintah di bawah ini.

> create databases master_produk;

> use master_produk;

langkah selanjutnya buat tabelnya dengan perintah seperti di bawah ini, untuk lebih jelasnya silahkan lihat manual book tutorial MySQL:

> CREATE TABLE `master_produk`.`produk` (
`RECID` char(1) default NULL,
`DIVISI` char(1) default NULL,
`DEPART` char(2) default NULL,
`KATEGORI` char(2) default NULL,
`CAT_COD` char(5) default NULL,
`PRDCD` varchar(8) NOT NULL default '',
`PLUMD` varchar(8) default NULL,
`KDMERK` char(4) default NULL,
`MERK` varchar(15) default NULL,
`NAMA` varchar(30) default NULL,
`FLAVOUR` varchar(15) default NULL,
`KEMASAN` char(3) default NULL,
`SIZE` varchar(10) default NULL,
`SINGKATAN` varchar(30) default NULL,
`BKP` enum('N','Y') default 'N',
`SUB_BKP` char(1) default NULL,
`BBS_PPN` char(1) default NULL,
`DESC2` varchar(50) default '',
`FRAC` decimal(4,0) default '0',
`PSNDULU` char(1) default NULL,
`UNIT` varchar(4) default NULL,
`ACOST` decimal(15,6) default '0.000000',
`LCOST` decimal(15,6) default '0.000000',
`RCOST` decimal(15,6) default '0.000000',
`ACOST_1` decimal(15,6) default '0.000000',
`RCOST_1` decimal(15,6) default '0.000000',
`MARKUP` decimal(14,6) default '0.000000',
`PRICE` decimal(14,6) default '0.000000',
`PRDGRP` char(7) default NULL,
`CTGR` char(2) default NULL,
`KONS` char(1) default NULL,
`SUPCO` char(5) default NULL,
`PTAG` char(1) default NULL,
`TGL_TAMBAH` date default NULL,
`REORDER` decimal(7,0) default '0',
`KEL_ORD` char(1) default NULL,
`LENGTH` decimal(7,2) default '0.00',
`WIDTH` decimal(7,2) default '0.00',
`HEIGHT` decimal(7,2) default '0.00',
`K_LENGTH` decimal(7,2) default '0.00',
`K_WIDTH` decimal(7,2) default '0.00',
`K_HEIGHT` decimal(7,2) default '0.00',
`BERAT_SAT` decimal(7,0) default '0',
`BERAT_KRT` decimal(7,0) default '0',
`EXP_MONTH` decimal(5,0) default '0',
`BARCSTS` char(2) default NULL,
`KET` varchar(30) default NULL,
`TGL_HJB` date default NULL,
`TP_BELI` char(1) default NULL,
`RCG` decimal(6,0) default '0',
`BRG_AKTIF` enum('N','Y') default 'N',
`EXPRICE` decimal(11,3) default '0.000',
`PLUTABUNG` varchar(7) default NULL,
`OPENPRICE` char(1) default NULL,
`QTYTABUNG` decimal(6,0) default '0',
`NonSO` char(1) default NULL,
`NONRET` char(1) default NULL,
`ADDID` varchar(45) default NULL,
`ADDTIME` datetime default NULL,
`UPDID` varchar(45) default NULL,
`UPDTIME` datetime default NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;


Setelah tabel sudah terbentuk langkah selanjutnya kita masuk ke Programming visual Basic Net. Pertama buat Form dengan komponen DataGridview dan MysqlConnenction.


Listing program sederhananya adalah sebagai berikut:

Imports mysql.data.mysqlclient
Public Class frmjabatan
Dim dv As DataView

Private Sub frmjabatan_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
loaddata()
End Sub Private Sub loaddata()
Dim oconn As New mysqlconnection
Dim strsql As String
strsql = "Database=master_produk;server=localhost;user id=root;password=xxx;port=3307"
oconn = New MySqlConnection(strsql)
strsql = "select * from produk"

Dim ocmd As New MySqlCommand

ocmd = New MySqlCommand(strsql, oconn)

Dim ds As DataSet
ds = New DataSet

Dim dt As DataTable
dt = ds.Tables.Add("produk")

Dim da As MySqlDataAdapter
da = New MySqlDataAdapter(ocmd)

da.Fill(ds, "produk")

dv = New DataView
dv.Table = dt

DataGridView1.DataSource = dv

End Sub
End Class


Hasil Eksekusinya tampak seperti di bawah ini:



Share/Bookmark

Senin, 12 Juli 2010

Modul Proportional Integrator Differensiator

Modul PID atau Proportional Integrator Differensiator merupakan salah satu kontrol konvensional yang sampai sekarang masih tetap dipakai pada proses otomatisasi di industri karena kehandalannya. PID merupakan merupakan kontroler untuk menentukan presisi suatu sistem instrumentasi dengan karakteristik adanya umpan balik pada sistem tesebut. Komponen kontrol PID ini terdiri dari tiga jenis yaitu Proportional, Integratif dan Derivatif. Ketiganya dapat dipakai bersamaan maupun sendiri-sendiri tergantung dari respon yang kita inginkan terhadap suatu plant. sistem ini juga merupakan sistem kontrol loop tertutup yang cukup sederhana dan kompatibel dengan sistem kontrol lainnya sehingga dapat dikombinasikan dengan sistem kontrol lain seperti Fuzzy control, Adaptif control dan Robust control.

Fungsi alih H(s) pada sistem kontrol PID merupakan besaran yang nilainya tergantung pada nilai konstanta dari sistem P, I dan D
Sistem kontrol PID terdiri dari tiga buah cara pengaturan yaitu kontrol P (Proportional), D (Derivative) dan I (Integral), dengan masing-masing memiliki kelebihan dan kekurangan.Dalam perancangan sistem kontrol PID yang perlu dilakukan adalah mengatur parameter P, I atau D agar tanggapan sinyal keluaran sistem terhadap masukan tertentu sebagaimana yang diiginkan.

Untuk merancang sistem kontrol PID, kebanyakan dilakukan dengan metoda coba-coba atau (trial & error). Hal ini disebabkan karena parameter Kp, Ki dan Kd tidak independent. Untuk mendapatkan aksi kontrol yang baik diperlukan langkah coba-coba dengan kombinasi antara P, I dan D sampai ditemukan nilai Kp, Ki dan Kd seperti yang diiginkan.

Metode Pembelajaran Konvensional

Langkah awal dalam pembelajaran perancangan sistem kontrol yaitu menjelaskan bagaimana membuat diagram blok sistem. Diagram blok digunakan sebagai bahan analisis yaitu dengan memberikan aksi pengontrolan yang berbeda. Tanggapan sistem dapat dilihat setelah sistem diberikan sinyal masukan yang berbeda. Kombinasi antara sinyal masukan dan aksi pengontrolan ini akan menghasilkan tanggapan yang berbeda-beda. (Ogata, Katsuhiko, 1997) menjelaskan langkah-lamhkah yang harus dilakukan dalam perancangan sistem kontrol sebagai berikut:

(1) Memahami cara kerja system,
(2) Mencari model sistem dinamik dalam persamaan differensial,
(3) Mendapatkan fungsi alih sistem dengan Transformasi Laplace,
(4) Memberikan aksi pengontrolan dengan menentukan konstanta Kp, Ki dan Kd,
(5) Menggabungkan fungsi alih yang sudah didapatkan dengan jenis aksi pengontrolan,
(6) Menguji sistem dengan sinyal masukan fungsi langkah, fungsi undak dan impuls ke dalam fungsi alih yang baru,
(7) Melakukan Transformasi Laplace balik untuk mendapatkan fungsi dalam kawasan waktu,
(8) Menggambar tanggapan sistem dalam kawasan waktu

Dalam pembelajaran konvensional untuk melihat tanggapan suatu sistem dengan berbagai macam kombinasi sinyal masukan dan aksi pengontrolan merupakan hal yang sulit, diperlukan kesabaran dan ketelitian untuk mendapatkan hasil penggambaran yang baik dan hasilnya pun seringkali kurang akurat. Hal ini menjadikan mahasiswa merasa bahwa materi perancangan sistem control sangat sulit yang berdampak pada keengganan untuk mempelajari lebih jauh tentang materi sistem kontrol.

Metode Pembelajaran Dengan Simulasi Komputer

Hadirnya software komputer sangat membantu perhitungan dan proses analisis tanggapan sistem terhadap sinyal masukan dan aksi pengontrolan. Berbeda dengan perhitungan manual yang rumit dan lama, perhitungan dengan bantuan software komputer jauh lebih mudah dan cepat dan hasilnya tepat. Matlab merupakan salah satu software yang dikembangkan dalam bidang pengaturan yang dilengkapi Control Toolbox. Toolbox ini dilengkapi dengan berbagai macam fungsi pendukung yang dipergunakan dalam analisis sistem kontrol. Beberapa fungsi pendukung yang sering dipergunakan untuk menganalisis suatu sistem adalah : feedback, step, rlocus, series, dll. Untuk menganalisis suatu sistem, software hanya memerlukan masukan berupa fungsi alih yang ditulis dalam Transformasi Laplace (kawasan frekuensi) atau matriks ruang keadaan. Sebagai contoh, suatu sistem kontrol memiliki fungsi alih sebagai berikut :Gambar 2. Sistem rangkaian listrik RLC

Model matematik sistem dinamik dapat dituliskan dengan menggunakan Hukum Kirchoff Arus dan Tegangan sehingga menjadi :
Fungsi alih dari model dinamik sistem di atas dapat dilakukan dengan melakukan transformasi Laplace sehingga di dapat persamaan sbb:
Dari fungsi alih inilah akan dicari tanggapan sistem terhadap sinyal masukan yang beragam. Tanggapan sistem yang baik dari suatu sistem kontrol mempunyai criteria: Waktu naik cepat, Minimasi overshoot dan minimasi kesalahan keadaan tunak.
Adapun langkah-langah yang harus dilakukan untuk analisis dengan Matlab adalah menentukan nilai R, L dan C (misal R = 100 ohm, L = 1.25 mH dan C = 6250 uF) memasukkan koefisien pembilang (Ps) dan penyebut (Qs) dari fungsi alih, dan memilih jenis masukan yang akan dimasukkan ke sistem (fungsi langkah, undak, impuls atau lainnya).
Contoh penulisan Command Editor di Matlab


Tanggapan sistem terbuka diperlihatkan pada Gambar 3.
Gambar 3. Tanggapan sistem terhadap masukan fungsi langkah

tinggi sebesar 0,88 hal ini dapat dilihat pada tanggapan sistem menuju ke nilai amplitudo 0,12. Dari Gambar3 dapat juga diketahui bahwa sistem memiliki waktu naik yang lama (1,5 detik). Untuk menghasilkan sistem kontrol yang baik, diperlukan sistem loop tertutup.

Pembelajaran Aksi Kontrol Proporsional

Karakteristik aksi pengontrolan Proporsional adalah mengurangi waktu naik, menambah overshoot, dan mengurangi kesalahan keadaan tunak. Fungsi alih sistem dengan menambahkan aksi pengontrolan P menjadi :
Misal, diambil konstanta Kp = 80, maka :

Kp = 80;
Ps = [Kp];
Qs = [1 5 8+Kp];
t = 0 : 0.01 : 2;
step(Ps, Qs)
title(‘Tanggapan Sistem Loop Tertutup Proporsional’)

Gambar 4. Tanggapan sistem terhadap aksi kontrol proporsional

Penambahan aksi kontrol P mempunyai pengaruh mengurangi waktu naik dan kesalahan keadaan tunak, tetapi konsekuensinya overshoot naik cukup besar. Kenaikan overshoot ini sebanding dengan kenaikan nilai parameter Kp. Waktu turun juga menunjukkan kecenderungan yang membesar.

Pembelajaran Aksi Kontrol Proportional Derivative

Fungsi alih sistem dengan aksi pengontrolan PD menjadi :

Misal, Kp = 80 dan Kd = 6, maka :
Kp = 80;
Kd = 6;
Ps = [Kd Kp];
Qs = [1 5+Kd 8+Kp];
t = 0 : 0.01 : 2;
step(Ps, Qs)
title(‘Tanggapan Sistem Loop Tertutup PD’)

Tanggapan sistem ini diperlihatkan seperti Gambar 5.
Gambar 5. Tanggapan sistem terhadap aksi kontrol Proporsional Derivative

Pada grafik di atas terlihat bahwa penggunaan control Proporsional Derivative (PD) dapat mengurangi overshoot dan waktu turun, tetapi kesalahan keadaan tunak tidak mengalami perubahan yang berarti.

Pembelajaran Aksi Kontrol Proportional-Integral

Fungsi alih sistem dengan penambahan aksi pengontrolan PI menjadi :
Integral Controller memiliki karakteristik mengurangi waktu naik, menambah overshoot dan waktu turun, serta menghilangkan kesalahan keadaan tunak.
Misal, Kp = 9 dan Ki = 16, maka tanggapan sistem dapat diperoleh dengan cara menuliskan sintaks berikut dalam editor Matlab :

Kp = 9;
Ki = 16;
Ps = [Kp Ki];
Qs = [1 5 8+Kp Ki];
t = 0 : 0.01 : 2;
step(Ps,Qs)

Aksi kontrol P dan I memiliki karakteristik yang sama dalam waktu naik dan overshoot. Oleh karena itu, nilai Kp harus dikurangi untuk menghindari overshoot yang berlebihan.

Gambar 6. Tanggapan sistem terhadap aksi kontrol Proporsional Integral

Dari grafik gambar 6 di atas terlihat bahwa waktu naik sistem menurun, dengan overshoot yang kecil, serta kesalahan keadaan tunak dapat diminimalkan. Tanggapan sistem memberikan hasil yang lebih baik daripada aksi control sebelumnya tetapi masih mempunyai waktu naik yang lambat.

Pembelajaran Aksi Kontrol Proportional-Integral-Derivative

Aksi kontrol PID merupakan gabungan dari aksi P, I dan D dan fungsi alih sistem menjadi :
Kp = 85;
Ki = 90;
Kd = 20;
Ps = [Kd Kp Ki];
Qs = [1 5+Kd 8+Kp Ki];
t = 0 : 0.01 : 2;
step(Ps,Qs)
title(‘Tanggapan Sistem Loop Tertutup PID’)


Gambar 7. Tanggapan sistem terhadap aksi kontrol PID

Dengan aksi kontrol P, I dan D, terlihat bahwa kriteria sistem yang diinginkan hampir mendekati, terlihat dari grafik tanggapan sistem tidak memiliki overshoot, waktu naik yang cepat, dan kesalahan keadaan tunaknya sangat kecil mendekati nol. Grafik tanggapan sistem terhadap sinyal masukan fungsi langkah, tergantung pada nilai parameter Kp, Kd dan Ki.

Share/Bookmark

Proses sampling/pencuplikan

Sebenarnya saya ga tahu Proses Sampling atau pencuplikan ini apa sih... Aku dapat mata kuliahnya namun aku ga tahu sama sekali, sehingga aku coba cari tahu ah ya biasa lewat mbah google...

Proses Sampling ini ternyata mengubah representasi sinyal yang tadinya berupa sinyal kontinyu menjadi sinyal diskrit, dapat juga diibaratkan sebagai sebuah sakelar on/off yang membuka dan menutup setipa periode tertentu (T).

Sinyal Sampling ideal (r*(t)) dapat kita nyatakan dalam bentuk perkalian sinyal input r(t) dan sinyal impuls (P(t))

Share/Bookmark

Sabtu, 05 Juni 2010

Belajar VB Net

Praktek yang pertama saya mencoba bikin aplikasi standar dulu ah. Maklum masih pemula dalam hal programming. Kali ini saya akan belajar bahasa Pemrograman VB. Net. Pertama bikin form seperti dibawah in:


Beberapa komponen yang dibutuhkan diantaranya adalah:
- Textbox1
- Timer1
- StatusStrip1 (- ToolStripStatusLabel1, ToolStripStatusLabel2)

Listing Programnya adalah sebagai berikut :

Public Class Form1
Dim waktu As Date
Dim tanggal As String
Dim pass As String
Dim PASS1 As String
Dim password As String

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
waktu = Format(Now(), "HH:mm:ss")
tanggal = Format(Now(), "ddd, dd-MM-yyyy")
ToolStripStatusLabel1.Text = tanggal
ToolStripStatusLabel2.Text = waktu
pass = Format(Now(), "mm")
PASS1 = Format(Now(), "ddMM")
password = PASS1 + pass
TextBox1.Focus()
End Sub

Private Sub TextBox1_KeyPress_1(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
If e.KeyChar = Chr(13) Then
Me.TextBox1.Focus()
If TextBox1.Text = password Then
MsgBox("Password Yang Anda Masukkan Benar")
TextBox1.Clear()
TextBox1.Focus()
Else
MsgBox("Password Yang Anda Masukkan Salah")
TextBox1.Clear()
TextBox1.Focus()
End If
End If
End Sub
End Class

Minggu, 30 Mei 2010

Belajar Programming T-Sql Consule

Sudah Lama sekai nich aqu tidak lagi menggerakan jari - jari tanganku di atas Keyboard komputer lamaku.....

Ah untuk saat ini aku lagi belajar Database MySql dan sengaja kutuangkan di dalam Blogku, agar sewaktu-waktu aku bisa membukanya kapanpun dan mungkin temen-temen bisa belajar bersama bagaimana bermain dengan Database Programming T-Sql.

Pertama yang dibutuhkan untuk bisa bermain dengan Programming T-Sql tentunya Sql Server. Tapi disini aku pakai software Appserv aja,,,,, Karena apa? ya karena aku tahunya baru itu aja dulu. Nah setelah Appserv berhasil diinstall di komputer kita. Kita langsung aja menuju ke TKP yaitu pakai Command Promptnya Windows. Karena kita belajar pakai consule dulu... Setelah Terinstal pastikan Service Sql pada service Administrative tools dalam kondisi start, caranya masuk dulu ke Control Panel dan pilih Administrative Tools.


Perintah yang pertama kita tulis untuk masuk ke sever Sql kita caranya lumayan mudah, perintahnya adalah sebagai berikut.

D:\>mysql -p -uroot -h localhost
Enter password: ******

Tulis
an yang berwarna merah adalah perintah yang kita ketikkan. Karena kita masuk menggunakan administrator root maka perintahnya menggunakan -uroot dan -h localhost karena kita belajar di komputer pribadi yang tidak terhubung dengan suatu jaringan. Password diatas yaitu password root sesuai dengan yang kita isikan pada saat kita pertama kali menginstall Appserv.

Karena kondisi Komputer kita masih kosong, langkah yang pertama tentunya kita buat database terlebih dahulu. Nah perintahnya adalah ini:

kita ketikkan perintah ini untuk melihat database yang ada:

mysql> show databases;

Cara membuat databasenya adalah sebagai berikut:


mysql> create database pegawai;

Nah Setelah kita membuat database yang kita inginkan, kita cek dulu lagi dengan perintah

mysql> show databases;

Ingat setiap selesai menulis sintak jangan lupa diakhri dengan tanda (;). Langkah selanjutanya kita pilih dulu database yang kita buat tadi dan setelah itu kita tinggal buat tabel-tabel yang dibutuhkan:

mysql> use pegawai;

mysql> create table identitas2(NIP varchar(5), nama varchar(25), kota varchar(15), tgl date , jenis_kel char(1));

mysql> desc identitas2;

mysql>insert into identitas2 values('0001','Andi','Semarang','2010-05-05','L');

mysql>insert into identitas2 values ('0002','Agus','Semarang','2010-05-04','L'), ('0003','Ani','Semarang','2010-05-05','P');

mysql> alter table identitas2 add alamat varchar(5) after nama;

mysql> alter table identitas2 change tgl tanggal date;

mysql> alter table identitas2 change tgl tanggal date;

mysql> alter table identitas2 modify kota char(10);

mysql> alter table identitas2 change jenis_kel sex char(1);

mysql> alter table identitas2 modify sex enum('P','L','l','p');


Share/Bookmark

Twitter Delicious Facebook Digg Stumbleupon Favorites More