PID (Proportional-Integral-Derivative)

+ Yorum Gönder
Elektronik ve Elektronik Bölümü Bölümünden PID (Proportional-Integral-Derivative) ile ilgili Kısaca Bilgi
  1. 1
    Mattet
    Usta Üye
    Reklam

    PID (Proportional-Integral-Derivative)

    Reklam



    PID (Proportional-Integral-Derivative)

    Forum Alev



    PID (Proportional-Integral-Derivative) günümüzde çok kullanılan bir kontrol yöntemidir. Endüstrideki uygulamaların %75’inde uygulanmıştır. Çok geniş bir uygulama alanının olmasına rağmen PID uygulamaları için standart bir tanımlama yoktur. Karl Astrom'a göre PID algoritması aşağıdaki gibidir:

    Burada u(t) kontrol değişkeni, e(t) toplama noktası, y(t) çıkıştan ölçülen değerle aynıdır. K, Ti, Td PID parametreleridir. Yukarıdaki formülü biraz daha basite indirgersek:

    P: Oransal

    I: İntegral

    D:Türevsel



    PID AYARI

    Sistemin istenilen şekilde çalışabilmesi için PID parametrelerinin ayarlanması gerekmektedir. Bunun için çeşitli yöntemler uygulanmaktadır: Elle ayarlama veya parametrelerin hesaplanması (Ziegler-Nichols metodu).
    Ziegler-Nichols metodu 2 şekildedir:
    1-Sistemin açık çevrim step cevabında aşağıdaki değerler hesaplanır.



    2- PID kontrolörün I,D katsayıları 0 yapılır. P sistem osilasyona gidene kadar yavaş yavaş arttırılır. Sistemin osilasyona gittiği andaki P değerine Ku, osilasyon frakansına Pu dersek

    PID Örnekler

    PID kontrol her alanda kullanılması nedeniyle bir çok örnekleri vardır. Burada sistemin kendisine uygulama yerine simulasyon örneklerini bulabilirsiniz.
    Örnek:

    Matematiksel modeli aşağıdaki gibi olan bir sistem için Matlab ile simulasyonunun yapılması

    Burada PID parametreleri değiştirilerek simulasyonu çalıştırırsak sistem davranışını Scope ile aşağıdaki gibi görebiliriz.


    Uygun PID parametrelerini bulmak için sisteme Ziegler Nichols yöntemini uygulayalım. Bunun için PID'nin I ve D parametrelerini 0 yapılarak P katsayısı sistem osilasyon yapana kadar yavaş yavaş artırılır. Şekildeki sistem için bu P=8 de gerçekleşmektedir. Osilasyon anındaki kazanca Ku osilasyon zaman aralığına Pu diyelim. Burada Ku 3.2 Pu ise yaklaşık 4 birim zamandır. Ziegler-Nichols yönteminden PID parametrelerini yeniden hesaplarsak aşağıdaki değerler elde edilir:



    P= Ku /1.7= 1.92 I= 2 / Pu = 0.5 D= Pu / 8 = 0.5

    PID


    Burada oransal (P), integral (I) ve türevsel (D) denetleyicilerin her birinin karakteristiklerini ve istenilen tepkiyi bulmakta nasıl kullanıldıklarını inceleyeceğiz. İşlemlerimizde aşağıdaki geri beslemeli sistemi tercih edeceğiz.





    Plant: kontrol edilecek sistem


    Denetleyici; Plant için uyarı sağlar; sistem davranışı denetlemek için tasarlanmıştır.


    Üç Terimli Denetleyici

    PID denetleyicinin transfer fonksiyonu aşağıdaki gibidir:


    • <LI class=MsoNormal>Kp = Oransal kazanç <LI class=MsoNormal>Ki = İntegral kazancı
    • Kd = Türevsel kazanç
    Yukarıdaki şemadaki kapalı döngülü sistem kullanılmış PID denetleyicinin nasıl çalıştığını inceleyelim. Değişken (e) izleme hatasını, istenilen giriş değeri (R) ile gerçek çıkış değeri (Y) arasındaki farkı gösterir. Bu (e) hata sinyali PID denetleyiciye gönderir ve denetleyici bu hata sinyalinin hem türevini hem de integralini hesaplar. Sadece denetleyiciden geçen (u) sinyali, oransal kazanç (KP) ile hata değeri, integral kazancı (Ki) ile hatanın integrali, türevsel kazanç (Kd) ile hatanın türevi çarpımlarının toplamına eşittir.

    Bu (u) sinyali denetlenen sisteme gönderilir ve yeni çıkış (y) elde edilmiş olur. Bu (y) çıkış sinyali algılayıcıya geri gönderilerek yeni hata sinyali (e) bulunur. Denetleyici yeni hata sinyaline aynı işlemleri uygular ve bu işlem böyle devam eder.

    P, I ve Denetleyicilerin karakteristikleri:




    Oransal denetleyicilerin (Kp), yükselme zamanını azaltmada etkisi vardır ve azaltır, ama asla tamamen yok etmez (kararlı hal hatası). İntegral denetleyicinin (Ki) karalı hal hatasının çıkarılmasında etkisi vardır ancak bu geçici tepkinin daha kötü olmasına sebep olabilir. Türevsel denetleyicinin (Kd) sistemin kararlılığının artmasında etkisi vardır, aşmayı azaltır ve geçici tepkiyi düzeltir. Kapalı döngülü bir sistemde, her bir denetleyicinin etkisi Kp, Kd ve Ki aşağıdaki tabloda özet olarak gösterilmiştir.

    [/IMG]
    Unutmamalı ki bu düzeltmeler tam olarak geçerli değildir. Çünkü Kp, Ki ve Kd birbirlerine bağımlıdırlar. Yani değişkenlerden birinin değişimi diğer ikisinin etkisini değiştirebilir. Bu yüzden tablo Ki, Kp ve Kd değerlerinin belirlenmesinde sadece bir referanstır.
    Örnek:

    Basit bir kütle, yay ve tampondan oluşan bir problemimiz olduğunu varsayalım..

    Bu sistemin model denklemi;
    Mx + bx + kx = F
    Yukarıdaki denklemin laplace dönüşümünü alırsak;
    Ms2X(s) + bsX(s) + kX(s) = F(s)

    olur.
    • <LI class=MsoNormal>M = 1kg <LI class=MsoNormal>b = 10 N.s/m <LI class=MsoNormal>k = 20 N/m
    • F(s) = 1
    olarak alıp değerleri yerine koyduğumuzda transfer fonksiyonu aşağıdaki gibi olur.

    Bu problemin amacı Kp, Ki ve Kd’nin her birinin hızlı yükselme zamanı, minimum aşma ve hatasız kararlı hal elde etmedeki faydalarını görmektir.
    • <LI class=MsoNormal>Hızlı yükselme zamanı <LI class=MsoNormal>Minimum aşma
    • Kararlı hal elde etme
    Açık Döngü Adım Tepkisi

    İlk önce açık döngü adım tepkisini Matlab komutları ile ifade edelim.
    num=1;den=[1 10 20];step(num,den)Bu m-kütük’ün Matlab komutlarıyla çalıştırılmasıyla aşağıdaki grafik elde edilir.


    Denetlenen sisteme ait transfer fonksiyonunun DC kazancı 1/20’dir, bu yüzden birim basamak girişi uygulandığında çıkış değeri en yüksek 0,05 olur. Bu kararlı hal hatasının 0,95’i ile uyuşur, yani 1 büyüktür. Ayrıca, yükselme zamanı yaklaşık 1 saniye ve yerleşme zamanı yaklaşık 1,5 saniyedir.
    Oransal kontrol

    Tablo-1-de oransal denetleyicinin (Kp)yükselme zamanını düşürdüğünü, aşmayı arttırdığını ve kararlı hal hatasını azalttığını görmüştük. Yukarıdaki sistemin oransal denetleyicili kapalı döngü transfer fonksiyonu aşağıdaki gibidir.

    Oransal kazancı (Kp) 300’e eşit kabul edelim ve kütüğü şu şekilde değiştirelim.
    Kp=300; num=[Kp]; den=[1 10 aaaaKp]; t=0:0.01:2; step(num,den,t)Bu kütüğün Matlab komutlarıyla çalıştırılması halinde aşağıdaki grafik elde edilir

    NOT: cloopolarak adlandırılan Matlab fonksiyonuyla kapalı döngü transfer fonksiyonu, açık döngü transfer fonksiyonundan direkt olarak elde edilir. Cloop komutunun kullanılmasıyla yukarıdakiyle özdeş bir grafik elde edilir
    num=1;den=[1 10 20];Kp=300; [numCL,denCL]=cloop(Kp*num,den);t=0:0.01:2;step(numCL, denCL,t)
    Yukarıdaki grafik bize oransal denetleyicinin yükselme zamanını ve kararlı hal hatasını düşürdüğünü, aşmayı arttırdığını ve yerleşme zamanını az bir miktarda düşürdüğünü göstermektedir.




    Oransal-Türevsel Kontrol

    Şimdi PD kontrolü inceleyelim. Tablo-1’e göre türevsel denetleyici (KD), yerleşme zamanını ve aşmayı azaltır. PD kontrollü bir sistemin kapalı döngü transfer fonksiyonu aşağıdaki gibidir.

    Kp’yi 300 ve KD’yi 10 alalım ve m_kütüğü aşağıdaki gibi değiştirelim.
    Kp=300;Kd=10;num=[Kd Kp];den=[1 10+Kd aaaaKp]; t=0:0.01:2;step(num,den,t)
    Yukarıdaki grafiğe göre türevsel denetleyici aşma ve yerleşme zamanını azaltır, yükselme zamanını ve kararlı hal hatasını çok az etkiler.




    Oransal-İntegral Denetleyici



    PID denetleyiciye girmeden önce PI denetleyiciyi inceleyelim. tablo-1’e göre integral denetleyici (Ki) yükselme zamanını azaltır,aşma ve yerleşme zamanını arttırır, kararlı hal hatasını yok eder. PI kontrollü bir sistemin kapalı döngü transfer fonksiyonu aşağıdaki gibidir.


    Kp’yi 30 ve Ki’yi 70 kabul edelim. M_kütükü şu şekilde değiştirelim.
    Kp=30;
    Ki=70;num=[Kp Ki];
    den=[1 10 aaaaKp Ki];
    t=0:0.01:2;
    step(num,den,t)
    Bu m_kütük Matlab komutlarıyla çalıştırıldığında aşağıdaki grafik elde edilir.

    Hem oransal kazanç (Kp) hem de integral denetleyici yükselme zamanını azalttığı, aşmayı arttırdığı için çift etki oluşur. Bu etki integral denetleyicinin kararlı hal hatasını yok ettiğini gösterir.
    Oransal-İntegral-Türevsel Denetleyici


    Şimdi PID kontrolünü inceleyelim. PID kontrollü bir sistemin kapalı döngü transfer fonksiyonu aşağıdaki gibidir.


    Birkaç denemeden sonra istenilen tepkiyi elde etmek için kazançları Kp=350 Ki=300 KD=50 alalım. Bu durumda m_kütük aşağıdaki gibi olur.
    Kp=350;Ki=300;Kd=50; num=[Kd Kp Ki];den=[1 10+Kd aaaaKp Ki]; t=0:0.01:2;step(num,den,t)
    Genel PID denetleyici tasarımı için ipuçları:




    PID denetleyici tasarımında istenilen tepkiyi elde etmek için aşağıdaki adımlar izlenir:

    1.Açık döngü tepkisi bulunur ve ihtiyaçlar belirlenir.
    2.Yükselme zamanını düzeltmek için oransal denetleyici eklenir.
    3.Aşmayı düzeltmek için türevsel denetleyici eklenir.
    4.Kararlı hal hatasını yok etmek için integral denetleyici eklenir.
    5.İstenilen tepki elde edilene kadar Kp, Ki ve KD ayarlanır. Hangi denetleyicinin hangi karakteristiği kontrol ettiğini tablo-1’den yararlanılarak bulabiliriz.
    Denetleyici tasarımında mümkün olduğu kadar basit tasarıma gidilmelidir. Eğer PI denetleyici ile istenilen tepki sağlanıyorsa, sisteme türevsel denetleyici eklenip sistem karmaşıklaştırılmamalıdır.
    Örnek: PID tasarım metodu ile DC motor hız kontrolü
    -Oransal kontrol

    -PID kontrol
    -Kazançların ayarı





    * rotor eylemsizlik momenti (J) = 0.01 kg.m^2/s^2



    * mekanik sistemin sönüm oranı (b) = 0.1 Nms
    * elektromotor kuvvet sabiti (K=Ke=Kt) = 0.01 Nm/Amp
    * rezistans (R) = 1 ohm
    * indüktans (L) = 0.5 H
    * giriş (V): kaynak voltajı
    * çıkış(theta): mil durumu
    * rotor ve milin sert olmadığı kabul edilir



    Bu problemde, DC motorun dinamik eşitliği ve açık döngü transfer fonksiyonu aşağıdaki gibidir.

    ve sistem şeması şöyledir:

    1 rad/sn basamak girişli tasarım kriterleri:
    • <LI class=MsoNormal>2 saniyeden az yerleşme zamanı <LI class=MsoNormal>%5’den az aşma
    • %1’den az kararlı hal hatası
    Şimdi bir PID denetleyici tasarlayalım ve sisteme dahil edelim. İlk önce yeni bir m_kütük oluşturalım.
    J=0.01;b=0.1;K=0.01;R=1;L=0.5;num=K;den=[(J*L) ((J*R)+(L*b)) ((b*R)+K^2)];PID kontrolü transfer fonksiyonu aşağıdaki gibidir:


    Oransal kontrol

    İlk önce kazancı 100 olan oransal denetleyici kullanarak inceleyelim. M_kütüğümüzün sonuna aşağıdaki komut dizisini ekleyelim.
    Kp=100;numa=Kp*num;dena=den; kapalı döngülü transfer fonksiyonunu çözmek için, cloopkomutu kullanılır. Bunu kütüğe aşağıdaki gibi ekleyelim
    [numac,denac]=cloop(numa,dena); numac ve denac kapalı döngü transfer fonksiyonu numaratör ve denumaratörüdür.
    Şimdi adım tepkisini nasıl göreceğimize bakalım ve bunu aşağıdaki gibi kütüğün sonuna ekleyelim.
    t=0:0.01:5;step(numac,denac,t)title('Step response with Proportion Control') aşağıdaki grafik elde edilir.

    PID kontrol


    Yukarıdaki grafikten kararlı hal hatasının ve aşmanın çok büyük olduğu görülür. İntegral halinin eklenmesinin kararlı hal hatasını yok ettiğini ve türev halinin aşmayı azalttığını daha önce görmüştük. Küçük Ki ve KD’ye sahip PID denetleyiciyi inceleyelim. kütüğümüzü aşağıdaki gibi değiştirelim. Bu kütük çalıştırıldığında aşağıda verilen grafik elde edilir.




    J=0.01;b=0.1;K=0.01;R=1;L=0.5;num=K;den=[(J*L) ((J*R)+(L*b)) ((b*R)+K^2)]; Kp=100;Ki=1;Kd=1;numc=[Kd, Kp, Ki];denc=[1 0];numa=conv(num,numc);dena=conv(den,denc);[numac,denac]=cloop(numa,dena);step(numac,denac)title('PID Control with small Ki and Kd')
    Kazanç ayarı

    Yükselme zamanını çok uzun yapalım.Yükselme zamanını azaltmak için Ki’yi arttıralım.Kütükte Ki’yi 200 olarak değiştirelim. Bu durumda aşağıdaki grafik elde edilir.

    Şimdi etkinin öncesinden daha hızlı ama büyük olduğunu görüyoruz. Ki kötü bir geçici tepkiye sahip olur (büyük aşma). Aşmayı düşürmek için KD’yi arttıralım. kütükte KD’yi 10 olarak değiştirelim. Bu durumda aşağıdaki grafik elde edilir.

    Böylece, Kp=100,Ki=200, KD=10 alınarak PID denetleyicili tasarım için gereklilikler karşılanmış olur




  2. Alev
    Özel Üye

    PID (Proportional-Integral-Derivative) Makalesine henüz yorum yazılmamış. ilk yorumu siz yapın


Sponsor Bağlantılar
+ Yorum Gönder
5 üzerinden | Toplam : 0 kişi