W jaki sposób obliczyć człony regulatora PID na mikrokontrolerze? Polecane źródła?

potrzebna wiedza o regulatorach P I D - gdzie szukać?





Poprzedni Następny
Wiadomość
Spis treści
From: "RafałMa" <rafbroda_at_nospam_friko6.onet.pl>
Subject: potrzebna wiedza o regulatorach P I D - gdzie szukać?
Date: Tue, 11 Sep 2001 13:04:29 +0200


Muszę zbudować regulator z dostrajaniem parametrów na mikrokontrolerze ale
nie pamiętam jak się obliczało człony i nastawy (podstawy automatyki).
Gdzie to szukaś w sieci?
Może mi ktoś poleci dobrą książke?

Rafal.



Poprzedni Następny
Wiadomość
Spis treści
From: Janusz Raniszewski <rniski_at_nospam_man.koszalin.pl>
Subject: Re: potrzebna wiedza o regulatorach P I D - gdzie
Date: Tue, 11 Sep 2001 20:15:46 +0200


Muszę zbudować regulator z dostrajaniem parametrów na mikrokontrolerze ale
nie pamiętam jak się obliczało człony i nastawy (podstawy automatyki).
Gdzie to szukaś w sieci?
Może mi ktoś poleci dobrą książke?

Rafal.

Witam,
Troche informacji znajdziesz na hrrp://www.miriady.prv.pl
JanuszR


Poprzedni Następny
Wiadomość
Spis treści
From: "kpiotrek" <removeit_piokacz_at_nospam_proterians.net>
Subject: Re: potrzebna wiedza o regulatorach P I D - gdzie szukać?
Date: Wed, 12 Sep 2001 09:26:52 +0200



Użytkownik RafałMa <rafbroda_at_nospam_friko6.onet.pl> w wiadomości do grup
dyskusyjnych napisał:9nkr0e$hlk$1_at_nospam_news.tpi.pl...
Muszę zbudować regulator z dostrajaniem parametrów na mikrokontrolerze ale
nie pamiętam jak się obliczało człony i nastawy (podstawy automatyki).
Gdzie to szukaś w sieci?
Może mi ktoś poleci dobrą książke?

Rafal.

Tak mniej więcej to powinno wyglądać:

y[t] - wartość wyjściowa obiektu w chwili t
y[t-1] - wartość wyjściowa obiektu w chwili t-1
yz - wartość zadana - czyli to co ma być na wyjściu
ei - całka uchybu - pomocnicza zmienna globalna
dT - okres próbkowania

Nastawy:
k -wzmocnienie
Ti - stała czasowa całkowania
Td - stała czasowa różniczkowania

sterowanie = function PID(y[t],y[t-1],yz):real
begin
e=yz-y[t]
ei=ei+e*dT/Ti
rezult=k*e+ei+(y[t]-y[t-1])*Td/dT
end

Pozdrawiam

PK



Poprzedni Następny
Wiadomość
Spis treści
From: <mstanisz_at_nospam_poczta.onet.pl>
Subject: Re: potrzebna wiedza o regulatorach P I D - gdzie szukać?
Date: 12 Sep 2001 10:07:34 +0200


Tak mniej więcej to powinno wyglądać:
<ciach ważnie rzeczy>
sterowanie = function PID(y[t],y[t-1],yz):real
begin
   e=yz-y[t]
   ei=ei+e*dT/Ti
   rezult=k*e+ei+(y[t]-y[t-1])*Td/dT
end

To nie jest klasyczny PID - człon różniczkujący (ups: różnicowy) nie zależy od
uchybu, tylko od wyjścia :-) Ale generalnie jest nieźle. Przydałoby się jeszcze
wprowadzić czas zdwojenia i współczynnik różniczkowania. Np. tak:

rezult=Kp*e+Ki*ei+Kd*(y[t]-y[t-1])*Td/dT


Pozdrawiam

Marcin


--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl

Poprzedni Następny
Wiadomość
Spis treści
From: "kpiotrek" <removeit_piokacz_at_nospam_proterians.net>
Subject: Re: potrzebna wiedza o regulatorach P I D - gdzie szukać?
Date: Wed, 12 Sep 2001 10:27:20 +0200


rezult=k*e+ei+(y[t]-y[t-1])*Td/dT

To nie jest klasyczny PID - człon różniczkujący (ups: różnicowy) nie
zależy od
uchybu, tylko od wyjścia :-) Ale generalnie jest nieźle. Przydałoby się
jeszcze
wprowadzić czas zdwojenia i współczynnik różniczkowania. Np. tak:

rezult=Kp*e+Ki*ei+Kd*(y[t]-y[t-1])*Td/dT

Masz rację ale przy stałej wartości zadanej nie ma znaczenia czy liczymy
pochodną uchybu czy wielkości wyjściowej.

A w praktyce można jeszcze poradzić że należy wprowadzić sensowne
ograniczenie na wartość ei.

Pozdrawiam

PK




Poprzedni Następny
Wiadomość
Spis treści
From: <mstanisz_at_nospam_poczta.onet.pl>
Subject: Re: potrzebna wiedza o regulatorach P I D - gdzie szukać?
Date: 12 Sep 2001 10:43:52 +0200


A w praktyce można jeszcze poradzić że należy wprowadzić sensowne
ograniczenie na wartość ei.

W praktyce człon I nie jest potrzebny do regulacji temperatury - tylko opóźni
działanie układu :-) A inercja jest już w układzie - jeśli włączysz grzałkę czy
puścisz parę, to temperatura będzie rosła (do temperatury grzałki, ale mówimy o
układach liniowych).

Serdeczne

Marcin


--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl