• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Regulator PID wilgotność
#1
Information 
Witam wszystkich na forum chciałbym zrobić regulator do sterowania wilgotnością. Silnik który otwiera klapę przez co spada wilgotność, jest to silnik krokowy sterowany sygnałem 0-10 V. Chciałbym zapytać jak zrealizować takie regulator w sieci znalazłem taki fragment kodu, chciałbym zapytać czy jest on poprawny oczywiście Kp Ti i Td dobiorę sobie sam. Wartość wo oraz w mam obliczone. Posiadam arduino Uno i żeby sygnał sterujący pojawił się na pinie analogowym. Wiem że arduino ma wyjście 0-5 V ale sprawę załatwią wzmacniacze operacyjne

Kod:
int dt = 20; //co ile pobiera się próbkę
int ep; //uchyb poprzedni
int en; //uchyb następny
int U; //sygnał sterujący
int C; //część całkująca
int Kp; //wzmocnienie
int Ti; //stała całkowania
int Td; //stała różniczkowania
...
void loop()
{
 en = wo-w; // wartość uchybu poznajemy za pomocą równania wo-wartość zadana, w-wartość danej chwili
 C += ((ep + en)/2)*dt;
 U = Kp*(en + (1/Ti)*C/1000 + Td*(en - ep)*1000/dt)
 ep = en;
}
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości