Picproje Elektronik Sitesi

DERLEYİCİLER => PIC C => Konuyu başlatan: mekatronica - 08 Nisan 2012, 01:47:13

Başlık: PID Kontrol CCS Kodları
Gönderen: mekatronica - 08 Nisan 2012, 01:47:13
Merhaba PID kontrol ve PWM kullanan bir motor sürücüsü tasarlayacağım fakat PID konusunda çok bilgim yok bu konuda yardım edebilirmisiniz?
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: pax - 08 Nisan 2012, 09:28:40
http://www.pololu.com/docs/0J21/7.c (http://www.pololu.com/docs/0J21/7.c)     burayı incelersen yararlı olur .
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: necati - 08 Nisan 2012, 09:44:16
http://www.engin.umich.edu/group/ctm/examples/cruise/ccPID.html (http://www.engin.umich.edu/group/ctm/examples/cruise/ccPID.html)
http://www.4shared.com/rar/R2L_WEmy/Contro_PID.html (http://www.4shared.com/rar/R2L_WEmy/Contro_PID.html)
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: mekatronica - 08 Nisan 2012, 10:33:28
Çok teşekkür ederim fakat anlamadığım nokta daha farklı her iki motor için ayrı ayrı pid yapmamız gerekmiyor mu?
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: pax - 08 Nisan 2012, 23:10:56
yapılabilir. sonuçta pid algoritmasını 1 motor için yazabilirseniz diğer motor için de ayrı bir algoritma hazırlayabilirsiniz. motor sürücüsünü ne için kullanacağınıza bağlı. çünkü motor sürücüsüne PID sonucunda elde ettiğiniz doğrulama verisini PWM olarak gönderirsiniz. iki motorun PWM i farklı değer de hesaplanabileceği gibi aynı değer de olabilir. yapacağınız işe göre durum değişir.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: mhmtklhci - 08 Nisan 2012, 23:19:27
arkadaşlar bu konularda yeniyimde PID kontrolu nedir ?
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: EmaNet - 08 Nisan 2012, 23:22:42
PID Kontrol işini görecektir.

http://www.koumekatronik.com/media/kunena/attachments/775/HAFTA13.pdf (http://www.koumekatronik.com/media/kunena/attachments/775/HAFTA13.pdf)
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: mekatronica - 09 Nisan 2012, 09:19:24
.
Alıntı yapılan: EmaNet - 08 Nisan 2012, 23:22:42
PID Kontrol işini görecektir.

http://www.koumekatronik.com/media/kunena/attachments/775/HAFTA13.pdf (http://www.koumekatronik.com/media/kunena/attachments/775/HAFTA13.pdf)

EmaNet çok teşekkür ederim aradığım bütün sorulara cevap oldu herşey için çok teşekkürler
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: EmaNet - 09 Nisan 2012, 18:25:47
Önemli değil. Problemi çözdüğüne çok sevindim.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: datasheet - 06 Şubat 2013, 01:29:21
Alıntı yapılan: EmaNet - 08 Nisan 2012, 23:22:42
PID Kontrol işini görecektir.

http://www.koumekatronik.com/media/kunena/attachments/775/HAFTA13.pdf (http://www.koumekatronik.com/media/kunena/attachments/775/HAFTA13.pdf)

şu pdf e bakamadım sayfa silinmiş ,arkadaşlar örnek bir kod eklermisiniz ?
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: pisayisi - 06 Şubat 2013, 16:02:24
Misra c tabanlı bir pid algoritması


#include"pid.h"
//²ÉÓÃÔöÁ¿Ê½¼ÆËã,²ÉÑùÖÜÆÚΪTʱ¼ä,Êä³öÔò²ÉÓÃλÖÃʽµÄÊä³öĞÎʽ,
//¢Ù:Y=P*E+I*(E+E1+E2)+D*((E-2*E1+E2));  //ĞŞÕıÖµ=±ÈÀı·Å´ó+»ı·Ö·Å´ó+΢·Ö·Å´ó
//¢Ú:Y = P + I + D;
//P = kp * e(n);
//I = Ki *( e(n) + e(n-1) + e(n-2) );
//D = Kd * ( e(n)-e(n-1) );
//¼´:y=P*E+I*(E+E1+E2)+D*(E-E1);

double PID_ADJ(PID *S, double x, double y)//Óõķ½·¨¢Ú
{
double Out = 0;

S->Err2 = S->Err1;
S->Err1 = S->Err;
S->Err = S->SetPoint - y;

Out = x + S->P * S->Err + S->I * (S->Err + S->Err1 + S->Err2) + S->D * (S->Err - 2 * S->Err1 + S->Err2);
return (Out);
}

void PID_Init(PID *S, double Piont, double P, double I, double D)
{
S->SetPoint = Piont; //Ä¿±êÖµ
S->P = P; //±ÈÁĞϵÊı
S->I = I; //΢·Ö
S->D = D; //»ı·Ö
S->Err = 0.0;  //µ±Ç°Îó²î
S->Err1 = 0.0; //ÉÏ´ÎÎó²î
S->Err2 = 0.0;//ÉÏÉÏ´ÎÎó²î
}




#ifndef _PID_H_
#define _PID_H_

#include"sys.h"

typedef struct PID
{
double SetPoint;  //É趨Ŀ±ê

double P;//±ÈÀı³£Êı
double I; //»ı·Ö³£Êı
double D;//΢·Ö³£Êı

double Err;
double Err1; //Error[-1]
double Err2; //Error[-2]
}PID;

void PID_Init(PID *S, double Piont, double P, double I, double D);
double PID_ADJ(PID *S, double x, double y);


#endif


Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: Okan AKÇA - 06 Şubat 2013, 17:31:47
Bu günlerde bende pid üzerine motor kontrol ünitesi tasarlamaktayım  bütün işleri kendi yazdıgım  kodlarla pid  olarak çalıştırıyorum.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: Murat Mert - 06 Şubat 2013, 17:39:07
Alıntı yapılan: cyclone - 06 Şubat 2013, 17:31:47
Bu günlerde bende pid üzerine motor kontrol ünitesi tasarlamaktayım  bütün işleri kendi yazdıgım  kodlarla pid  olarak çalıştırıyorum.

ne tür motorlar kullanıyorsunuz?
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: Okan AKÇA - 06 Şubat 2013, 17:43:58
fırcalı dc motor kullanıyoruz hocam 80w 3350 devir 30nm tork
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: Mucit23 - 06 Şubat 2013, 17:57:50
Hocam Pid ile ilgili bende bir çalışma yapacam. Bu katsayılar benim kafamı karıştırıyor. Bende ufak 12V ufak bir motorun devrini sabitlemeye çalışacağım. Pid işlemi sonucunda elimde 0-1000 arası bir değer olmalı. Devir ise 500 ile 3000 arasında değişebilir.

Çıkışın bu aralıkta olmasını nasıl belirliyoruz?
Katsayılar nasıl nasıl belirleniyor ?

Cevaplarsanız sevinirim.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: Okan AKÇA - 06 Şubat 2013, 18:05:25
seri sargılı dc motor sonsuza gitmemesi  icin yük olması şart degilse sabitleyemessiniz sabitlemek icin  motorun devirini ölceceksiniz ona göre pwm degerini arttırıp azaltacaksınız arada cok kod yazmanıza gerek yok deviri olcün devir düşükse pwm arttırın  devire ulaşıncaya kadar   ulaştıktan sonra tolerans verin olsun bitsin yüksek ise eger pwm azaltın  olay bundan ibaret aslında cok basit ilk bende pid denince korkardım artık cocuk oyuncagı
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: Mucit23 - 06 Şubat 2013, 20:22:05
Hocam zaten motorun devrini ölçüyorum. Sürekli elimin altında devir bilgisi. Biraz bu işin püf noktalarına ihtiyacım var.

Dediğim gibi bu katsayı neye göre belirleyeceğimi bilmiyorum açıkçası
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: Okan AKÇA - 06 Şubat 2013, 20:31:54
benim yaptıgım sistemde yol bilgisi oldugu icin katsayısını yola göre buluyorum senin yaptıgın sistemde her hangi bir kat sayıya gerek yok pwm arttıracaksın  istedigin degere kadar
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: esesibo26 - 19 Mart 2013, 10:54:23
Arkadaşlar ben de bir dc motorun konum kontrolünü yapmam gerekiyor. İlk olarak elimde 10 K lık bir sensör var. Rüzgar yön sensörü. 10 K 360 Derece. Bu sensörden alınan bilgilere göre rüzgara doğru kanatları çevireceğim. Bana encoder okuyabilen bir pic mi lazım. Ve ben pid hesaplamalarını yapıp nasıl bu konumlamayı yapabilirm program ile. Yardımlarınızı bekliyorum.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: skara1214 - 12 Ağustos 2014, 14:52:59
Alıntı yapılan: cyclone - 06 Şubat 2013, 17:31:47
Bu günlerde bende pid üzerine motor kontrol ünitesi tasarlamaktayım  bütün işleri kendi yazdıgım  kodlarla pid  olarak çalıştırıyorum.
hocam trapezoidal move yaparken hızlanma, yavaşlanma  ve maximum hız ayarlaması yaparken Ana pid döngüsü dışında bunlarıda ayarlayan ayrı bir  pid döngüsünü  mü yazıyorsunuz yoksa ana pid döngüsü içinde bunlarıda ayarlıyormusunuz?
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: trinity - 12 Ağustos 2014, 16:21:25
PID konusu birde PID kontrol devresi yapayımda geçeyim denilecek kolay bir konu değil, PID üzerinde uzmanlaşma istiyor.

Ben bir fırın kontrolu için PID yapmak istedim, katsayıları tespit etmekte zorlandım. Oto tune denilen otomatik katsayı bulma yönteminede girsem herhalde proje aylar sürerdi, bende oransal kontrolle istediğim değerlere yaklaştım ve projeyi bitirdim.

Sonradan elime bir markanın PID kontrol cihazı geçti içini açıp inceledim adamlar 2 pcb koymuşlar birinde 16bit işlemciden girmişler 24bit adc, flash tan çıkmışlar, diğerinde smps besleme ve sürücü yapmışlar. Fiyatınıda ucuza satıyorlar, piyasayı öldürmüşler.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: skara1214 - 12 Ağustos 2014, 17:03:42
Alıntı yapılan: trinity - 12 Ağustos 2014, 16:21:25
Sonradan elime bir markanın PID kontrol cihazı geçti içini açıp inceledim adamlar 2 pcb koymuşlar birinde 16bit işlemciden girmişler 24bit adc, flash tan çıkmışlar, diğerinde smps besleme ve sürücü yapmışlar. Fiyatınıda ucuza satıyorlar, piyasayı öldürmüşler.
Hangi firma bende inceleyeyim
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: trinity - 12 Ağustos 2014, 17:34:52
Markası Hanyoung tu, kaliteli bir Kore markası özellikle dokunmatık renkli ekran PID cihazları gerçekten başarılı. Adamlar ucuza mal etmek için entegrelerinide kendileri yapmışlar ama kataloglarını bulamadım. içinde microchip in 93 serisi flashlarını kullanmışlar bir tek onu bulabilmiştim.

Burada PID paylaşımı yapmayan arkadaşlar rahat olsunlar, zaten koreliler çinliler çoktan piyasayı süpürmüşler.






Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: z - 12 Ağustos 2014, 20:36:57
PID denetleyiciyi neden gözünüzde büyütüyorsunuz?

C ile yazıyorsanız 10 bilemedin 20 satırlık kod parçası.

Forumda da pek çok kere örnek kodlar yayınlandı.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: mozkan87 - 12 Ağustos 2014, 20:40:42
Alıntı yapılan: skara1214 - 12 Ağustos 2014, 17:03:42
Hangi firma bende inceleyeyim

Genelde çoğu firma için yapı bu şekilde. Ya yüksek çözünürlüklü adc ye sahip bir mikroişlemci(analog devicesın bu tip ürünleri var) oluyor yada harici ADC entegresi, ayrıca analog çıkışı olanlar DAC'ta bulunuyor. Bu tip cihazlar genelde MODBUS iletişim barındırmakta. Tabi her sistemin bunları barındırması gerekmez sıcaklık için NTC PTC tarzı birşey kullanıyorsanız ve ısıtmak için PWM kullanıyorsanız 8 bitlik bir işlemciyle çok rahat yapabilirsiniz. Timer kesmesini kurarsınız her kesmede yeni değeri okur gerekli hesaplamaları yapıp PWM üretirsiniz ve işi halledersiniz.

Eğer yapacağınız sistemin tepkisinin çok hızlı olaması gerekmiyorsa PID işi biraz kolaylaşıyor, katsayıları deneme yanılma ile sistemin tepkisine bakarak kestirilebiliyor. http://en.wikipedia.org/wiki/PID_controller (http://en.wikipedia.org/wiki/PID_controller) Linteki grafikleri incelerseniz sistemin davranışına göre katsayıları kestirebilirsiniz. İlk başlangıçta katsayıları çok küçük tutarsanız sisteme zarar verme ihtimaliniz düşer. P,I,D değerlerini anlık olarak takip ediniz.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: skara1214 - 12 Ağustos 2014, 21:48:25
Alıntı yapılan: trinity - 12 Ağustos 2014, 17:34:52
Markası Hanyoung tu
türkiyede nerede satılıyor bu?
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: trinity - 12 Ağustos 2014, 21:57:26
Hanyoung ın Türkiye bayisi var, ordan temin edebilirsiniz. Endüstriyel uygulamalarda öyle basit integral, türevli 16f628 li PID devreleri yeterli olmuyor, bunlarla ancak amatör işler yapabilir.

işletmenin dev gibi bir fırını var ve 1 derece ofset kayma istiyor, ısınma ve soğumalarda da belli bir grafiği tutturmak zorundasınız., fırının içinde bir ısı yayılım hızı, soğuma katsayıları var. Böyle bir uygulama kısa bir programla yapılamıyor, cihazın koşulları kendi kendine öğrenmesi gerekiyor.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: quarko - 12 Ağustos 2014, 22:06:33
Alıntı yapılan: z - 12 Ağustos 2014, 20:36:57
PID denetleyiciyi neden gözünüzde büyütüyorsunuz?

C ile yazıyorsanız 10 bilemedin 20 satırlık kod parçası.

Forumda da pek çok kere örnek kodlar yayınlandı.

Mesele PID kontrolü gerçekleştirmek değilki, mesele sistemin P, I, D katsayılarını tespit etmek... Teoriye aşırı girilirse, bu iş içinden çıkılmaz bir hale gelebiliyor maalesef.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: trinity - 12 Ağustos 2014, 22:16:00
Endistüriyel uygulamalarda zaten katsayılar sabit olmuyor, çünkü fırına devamlı farkı miktarda ve özellikte malzeme konuyor, bu da fırının ısı yayılımını değiştiriyor.

Gelişmiş PID cihazlarıda pattern özelliği var, farklı koşullar için farklı ısıma ve soğuma katsayıları haritalandırılıyor.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: z - 13 Ağustos 2014, 00:41:38
O zaman "Burada PID paylaşımı yapmayan arkadaşlar rahat olsunlar, zaten koreliler çinliler çoktan piyasayı süpürmüşler." benzeri imalı laflar etmeyeceğiz

Diyeceğiz ki  "Ben adaptif kontrol sistemi yapmaya çalışıyorum" yardımcı olurmusunuz.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: Erhan YILMAZ - 13 Ağustos 2014, 02:22:42
http://guabiruba.sc.gov.br/EmbeddedProgram/Microcontroller%20based%20applied%20digital%20control%202006.pdf (http://guabiruba.sc.gov.br/EmbeddedProgram/Microcontroller%20based%20applied%20digital%20control%202006.pdf) Burada ki kitapta temel kontrol teorisi konularının pic mikrodenetleyiciler ile uygulamaları var. Çok güzel bir kitap tavsiye ederim PID dahil bir çok konuya aydınlık getirecektir. Hatta bu kitabı Türkçe'ye çevirebilir miyiz diye içimden geçirdim şu anda. Teoriden pratiğe geçiş için çok güzel bir kitap.
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: trinity - 13 Ağustos 2014, 07:59:23
Alıntı yapılan: z - 13 Ağustos 2014, 00:41:38
O zaman "Burada PID paylaşımı yapmayan arkadaşlar rahat olsunlar, zaten koreliler çinliler çoktan piyasayı süpürmüşler." benzeri imalı laflar etmeyeceğiz

Bu kadar arkadaştan kimse üzerine alınmadı siz neden bu kadar alınıp tepki gösterdiniz?
Başlık: Ynt: PID Kontrol CCS Kodları
Gönderen: Halilsaglam - 20 Nisan 2015, 14:38:42
Merhabalar bana PFC için PID kontrol lazım bana yardım edebilirmisiniz