Otomasyon, kontrol ve robotik sistemleri üzerinde çalışanlar mutlaka PID kontrol ile ilgili uygulamalar görmüşlerdir. Birçok kişi bu uygulamaları görmüş olsada, çözmekte ve kavramakta zorluk çekerler. Bende bu yazımda PID hakkında bahsedeceğim.
PID aslında bir kontrol geri bildirim mekanizmasıdır. Bir PID denetleyici ölçülü bir süreç içinde değişen ve istenilen ayar noktası ile arasındaki farkı olarak bir “hata” değerini hesaplar. Kontrol giriş ayarı yapılarak bu hata en aza indirilmesi sağlanır.
PID (Proportional,Integral,Derivative) diye tanımlanır. Türkçesi (Oransal,İntegral,Türevsel) denetleyicidir.
e; hata işareti,
u; Etkiyen işaret,
Model; Kontrol edilen bir sistem,
Denetleyici; Modelin uyarılmasını sağlar, bütün sistem davranışını denetlemek için tasarlanmıştır.
ÇALIŞMA PRENSİBİ
Değişken(e), izleme hatasını temsil eder, istenen değer(R) ile gerçek çıkış(Y) arasındaki farktır. Hata sinyali(e) PID denetleyiciye gönderilir PID denetleyici bu hatanın hem integralini hemde türevini hesaplar. Şimdi kontrolörden çıkan (u) etkiyen işareti, hatanın büyüklüğünün (Kp) oransal kazancı katı artı, hatanın türevinin (Kd) katı artı hatanın integralinin (Kı) katına eşittir.
Bu (u) işareti modele gönderilir ve yeni çıkış (Y) işareti elde edilir. Bu yeni çıkış işareti(Y) algılayıcıya tekrar geri gönderilir, böylece yeni hata sinyali(e) bulunur. Denetleyici yeni hata işaretini alır, integral ve türev değerlerini hesaplar. Bu işlem böyle sürer gider.
PID denetleyicinin sürekli zaman transfer fonksiyonu aşağıdaki gibidir.
Ayrık zaman transfer fonksiyonu;
PID kontol’de öncelikle hata tanımlaması yapılmalıdır. Hata ise referans değere olan uzaklık olarak tanımlanabilir.
Ref = İstenilen değer
Gelen = Şu an ki konum
Hata = Ref - Gelen
Oransal (Proportional) Terim
Oransal terim sistemden gelen hatayı bir kat sayı ile çarparak hatayı küçültmeyi hedefler. Bozucu etkileride mevcuttur.Örneğin hata istenilen değerlere yaklaştığında çıkışta oslilosyon görülme ihtimali yüksektir.Buda yüksek seçmememiz gerektiği anlaşılır.
P = Kp * Hata
İntegral (Integral) Terimi
İntegral hatanın alanını bulmak anlamına gelmektedir. Her bir dt çevriminde hata ki katsayısıyla çarpılarak toplanır. İntegralin çok yükselmesini önlemek için sınırlandırmak gereklidir. Sürekli toplandığı için integral çok artarsa tekrar azalmasını beklemek zaman alır. Bu yüzden integrali sınırlamak sistemin çabuk toparlamasını sağlayacaktır.
dt = pid fonksiyonuna her girdiğindeki geçen zaman.
I = I + (Ki * Hata * dt)
Türev (Derivative) Terimi
Türev sistemdeki iki örnek arasındaki zamanı hesaplar.Eğer hatada bir değişim olmadıysa türev sıfır olur.
EHata = Bir önceki hatanın değeri (eski hata)
HD = Hata – EHata
D = (Kd * HD)/dt
PID Algoritması
Kp , Ki ve Kd katsayılarından oluşur. Bu katsayılar deneme yanılma yöntemiyle bulunur. Yapacağınız sistemde optimum katsayıları bulmak için değerde değişiliklik yapıp sistemi gözlemlemeniz gerekmektedir. Genelde robotlarda bu değerler bir potansiyometre kullanılarak değiştirilir.
Hata = Ref - Gelen
HD = Hata - EHata
P = Kp * Hata
I = I + (Ki * Hata * dt)
D = (Kd * HD)/dt
PID = P + I + D
EHata = Hata
NOT: Gerekli olmadığı takdirde oransal, integral ve türevsel kontrolün üçünün aynı anda uygulanmasına gerek yoktur. Kontrolcünün mümkün olduğunca basit tutulmasında da fayda vardır.
P,I ve D Denetleyicilerinin Karakteristikleri
- Bir oransal denetleyici(Kp),yükselme zamanını azaltmada etkili olur ama,kalıcı durum hatasını hiçbir zaman ortadan kaldıramaz.
- Bir integral denetleyici(Ki),kalıcı dutum hatasını ortadan kaldırmada etkili olur ama geçici cevabı daha kötü yapabilir.
- Bir türevsel denetleyici(Kd),sistem kararlılığının artmasında,aşmanın azalmasında ve geçici cevabın düzelmesinde etkili olur.
- Her bir denetleyicinin (Kp,Kd,Ki) kapalı döngülü bir sisteme etkisi, aşağıdaki tabloda özetlenmiştir.
- Kp,Ki,Kd birbirlerine bağımlı olduğu için bu bağıntılar tam kesin doğru olmayabilir. Birindeki değişme diğer ikisini etkileyebilir. Bu sebepten dolayı yanda verilen tablo sadece Ki,Kp,Kd değerlerini belirlerken bir tahmin referansı olarak kullanılmalıdır.
Aşağıda konunun daha iyi anlaşılması için PID katsayılarının değişimine göre sistemin nasıl cevap verdiği ile alakalı gif resmi vardır.