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

Twitter Delicious Facebook Digg Stumbleupon Favorites More