Picproje Elektronik Sitesi

ENDÜSTRiYEL OTOMASYON => Kontrol Teorisi - Matematiği => Konuyu başlatan: CoşkuN - 23 Ocak 2006, 20:55:25

Başlık: Kontrol Teorisi ve MATLAB
Gönderen: CoşkuN - 23 Ocak 2006, 20:55:25
Bu başlık altında da MATLAB'le kontrol teorisi uygulamalarını tartışabiliriz.Açılışı yapıyorum:

Tipik durum denklemi gösteriminde
A,B,C,D denklemlerimiz mevcut.Bu sistemi MATLAB'e tanıtabilmek için
ss komutunu kullanıyoruz:
A,B,C,D matrisleri önceden MATLAB'e girilmiş olduğunu varsayarak:
sistem=ss(A,B,C,D) komutunu vererek MATLAB'de sistem adında bir continous time model oluşturmuş olduk.
sistem_tr=tf(sistem) komutunu verdiğimizde durum denklemi gösterimini transfer fonksiyonu gösterimine dönüştürdük.
Bunu sıfır-kutup-kazanç biçiminde göstermek için
sistem_zpk=zpk(sistem) komutunu kullanıyoruz.

MATLAB'in marifetleri saymakla biter mi,bitmez...
Başlık: matlab
Gönderen: avignon - 26 Mart 2008, 20:27:03
iki blok biribirine seri,paralel ve geribesleme şeklinde bağlı iken transfer fonksiyonunun bulunması

[num1]=[0 2 1];              %      s+1
[den1]=[1 1 2];               %      s^2 +s+2
[num2]=[1 2];                 %      s+2
[den2]=[2 1 5];               %      2s^2 +s+5
[num3,den3]=series(num1,den1,num2,den2)        % Birbirine seri
[num3,den3]=parallel(num1,den1,num2,den2]       %Birbirine paralel
[num3,den3]=feedback(num1,den1,num2,den2]    %G2 bloğu geri besleme halindeyken

Başlık: Kontrol Teorisi ve MATLAB
Gönderen: avignon - 26 Mart 2008, 20:35:59
Transfer fonksiyonundan Durum denklemlerinin yazılması. Durum denklemlerini A,B,C,D  matrisleri şeklinde verir. Normalde kontrol sistemlerimde kullanımı bu şekildedir. Transfer Fonksiyonundan durum denklemlerine geçiş için bir çok çözüm var MATLAB'ta bunu çözdürürseniz bu çözümlerden bir tanesini alırsınız. fakat manuel olarak çözmeye kalkarsanızki bunu belli bir metodla yaparsınız mesela gözlenebilirlik formu veya kontroledilebilirlik formunu kullanarak farklı bir çözüm kümesi bulabilirsiniz. Biz şimdi transfer fonksiyonu belli olan bir sistemin durum denkleminin çömünü MATLAB ile yapacağız.



num=[0 1 2 0];
den=[1 4 7 32];
[A,B,C,D]=tf2ss(num,den)                 %Bu komuttan sonra Matris çözümlerini alt alta sıralar

Başlık: Matlab
Gönderen: avignon - 26 Mart 2008, 20:41:37
Durum denklemlerini bildiğiniz sistemin transfer fonksiyonunu aşağıdaki şekilde bulabiliriz. Burda A,B,C,D matrislerini tek tek girerek o sisteme uygun transfer fonksiyonunu bize verir.



A=[0 1 0;0 0 1;-2 -6 -45];
B=[0;18;-56];
C=[1 2 0];
D=[0];
[num,den]=ss2tf(A,B,C,D)    %BU komuttan sonra transfer fonksiyonun pay (num) ve payda (den) değerleri ekrana yansır.

Başlık: matlab
Gönderen: avignon - 26 Mart 2008, 20:52:04
State(durum) denklemlerini bildiğimiz bir sistemin step response grafiğini çizdirmek.



A=[-1 -1;6.5 0];
B=[1 1;1 0];
C=[1 0;0 1];
D=[0 0;0 0];
step(A,B,C,D)

Başlık: matlab
Gönderen: avignon - 26 Mart 2008, 21:01:46
transfer fonksiyonu bilinen bir sistemin transient(geçici) state için birim basamak tepkisinin grafiğinin çizlmesi. Burda çizilen grafikte mouse grafiğin üzerinde gezdirirsek istediğimiz yerdeki damping ratio(sönüm oranı) ve nature frequency(doğal frekans) değerini bulabiliriz. Ayrıca grafiğe bakarakta sistemdeki transient state şekline karar verebiliriz. Mesela az sönümlü, sönümsüz... gibi durumlaru tespit ederiz. Ayrıca setting time(yerleşme zamanı), peak time(maksimum değer için geçmesi gereken süre), overshoot(aşınım) gibi değerler tespit edilir.



num=[0 0 16];
den=[1 4 16];
step(num,den)

Başlık: matlab
Gönderen: avignon - 26 Mart 2008, 21:10:30
State denklemleri bilinen sistemin Unit-impulse response(birim darbe tepkisi) grafiğinin çizilmesi



A=[0 2;-1 -2];
B=[0,1];
C=[1 1];
D=[0];
impulse(A,B,C,D);
grid;                             %isteğe bağlıdır grafiğe ızgara koymak için
title('Birim-Darbe Tepkisi')    %Grafiğin üstüne () içindeki yazıyı yazar Genellikle grafiği adlandırmak için.