PID z Noty Atmela

Witajcie,

Wziąłem sobie źródełka w C algorytmu PID z noty avr221 Atmela ale zamiast w procesorku to odpaliłem to testowo w C# w celu pobawienia się. Napisałem sobie programik, który mi wyświetla wszystkie zmienne i mogę sobie zadawać wszystko.

Niby działa ale mam lamerskie pytanie, nie śmiejcie się :-)

z głównej funkcji PID dostaję int16_t i faktycznie pojawiają się tam wartości od -32768 do +32767. Tylko co to do diabła oznacza? Jak T zadana zrówna się z Tzmierzoną to ta wartość się zatrzymuje i już dalej nie liczy :-( Pomińmy ustawianie Kp, Ki, Kd, bo na to przyjdzie czas później.

Jak mam teraz przejść na sterowanie grzałką w przedziale 0 do 100% np generując PWM czy załączając przekaźnik na ileś % czasu skoro mam dziwnie wyglądający int16_t?

Pozdrawiam, Lam3r

Reply to
Lam3r
Loading thread data ...

PID jest algorytmem ciaglym regulacji i nei nadaje sie do sterowania grrzalka. Do sterowania grzalka stosuje sie regulatowy dwupolozeniowe, ktore mozna usprawnic tak aby aproksymowaly regulator PI (nie pamietam czy moga PID)

Tutaj mozesz znalezc jak

formatting link
Z grubsza, wprowadza sie dodatkowa petle sprzezenai zwrotnego wokol przekaznika ktora to petla linearyzuje pzrekaznik

A.L.

Reply to
A.L.

Użytkownik "Lam3r" snipped-for-privacy@Lam3r.pl napisał :

. [...]

To są możliwości sprzętu/oprogramowania. Wartości nieskończone istnieją tylko w teorii. Tutaj, w świecie rzeczywistym napięcie, wielkość bufora, itd. - wszystko ma granice. No może wszystko poza ludzką głupotą. Liczba [16 bitowa ze znakiem], to zakres odpowiedzi Twojego algorytmu.

Bo nie masz dynamicznej odpowiedzi z obiektu regulacji. Wiesz wogóle jak działa Twój algorytm?

I tu jest pies pogrzebany. Zabawę z PIDem zawsze polecam rozpocząć od wyłączenia calkowania i rozniczkowania. Na poczatek jechac na samym czlonie proporcjonalnym, by zrozumieć jak to działa.

Przeskaluj go. Zaprzeganie PIDa do regulacji temperatury jest lekko na wyrost. Do takich spraw wystarcza regulator dwustanowy z odpowiednią histerezą. Jeżeli chodzi o cele edukacyjne, to nikt nikomu niczego nie broni. Jednak z Twoich eksperymentow wniosek może być taki, że do płynnego manipulowania mocą grzałki wystarczy sam człon P.

pzdr

Reply to
ARO

Bo tak to ma dzialac - jak temperatura jest wlasciwa, to znaczy ze wartosc wyjsciowa jest dobra :-)

Eee tam nie nadaje. Nadaje, tylko trzeba miec mozliwosc sterowania moca w sposob ciagly. Czy to zasilacz/przelacznik PWM, czy tyrystorowy sterowany fazowo (w sumie tez PWM), czy silniczek krecacy autostransformatorem, czy jakis wzmacniacz magnetyczny - zalezy jaka grzalka :-)

Musisz to sprzac z ukladem wykonawczym, w taki sposob ze np wartosc 0 powoduje odlaczenie zasilania, 10000 zasilanie pelna moca, a 5000 zasilanie polowa mocy itp. Czy wartosci skrajne maja byc 0 i 10000, -32000 i +32000 czy np -200 i +200 - temat na dluzsza dyskusje.

Albo zrobic jak ponizej:

Na studiach jakos sprytnie zapetlalismy standardowy regulator PID i przekaznik, ze wychodzil z tego PWM.

Chcesz go dobic ? Kolega sie przyznaje ze Lamer, a Ty mu wyzsza automatyke serwujesz :-)

J.

Reply to
J.F.

Zgodnie z teorią -200 powinno chłodzić z mocą powiedzmy 200, 0 - nie robić nic, a +200 grzać z mocą 200. W praktyce pewnie i tak będzie można dobrać parametry PID żeby działąło dobrze.

Reply to
Mirek

Dlaczego? Odpowiednio nastrojony powinien dobrze reagować na zmiany temperatury zewnętrznej, na otwarcie okna - szybko wyrównuje do zadanej i nie przegrzewa.

Reply to
Mirek

Zawsze mozan wlozyc gacie przez glowe. tylko to nie najleo\pszy sposob

A.L.

Reply to
A.L.

lekcje.

pzdr

--
ARQ
Reply to
ARO

W dniu 2014-01-26 22:41, ARO pisze:

--
pozdrawiam 
MD
Reply to
Mario

--
pozdrawiam 
MD
Reply to
Mario

Właśnie edukuję się z PID i chcę sobie coś zbudować na czym będę robił eksperymenty. Dalej nie rozumiem jak mam to przeliczyć na wypełnienie. Grzałeczkę chcę dla zabawy, bo szybko zestawiłem stanowisko. Mogę użyć lutownicy nawet. A jak często mam wykonywać taki algorytm? Dla grzania to ile razy na sekundę czy lepiej raz na sekundę czy jak ? Mogę zrobić nawet sterowanie fazowe ssr-em ale potrzebyję "wypełnienie" od 0 do 100 okresów. A może od zera do

50 okresów, a może do 1000 okresów ?
Reply to
Lam3r

W dniu 26.01.2014 o 23:14 Lam3r snipped-for-privacy@lam3r.pl pisze:

Ale to masz zbyt małą bezwładność, grzałkę daj do garka z wodą i wsadź tam też czujnik temp np ds18s20 lub podobny, podłaczasz go pod rs-a są schematy w sieci i czytasz po 1-wire temp.

Jak grzałka to możesz zamiast pwm-a stosować półokresy do sterowania, czyli sterujesz najlepiej przez tranzystor tym ssr-em grzałką. Ustalasz okres pracy, liczba z pid-a wtedy będzie czasem właczenia a pozostały czas okresu jest wyłączona.

Reply to
janusz_k

Dam sobie radę z tym. Sam układ ma małe znaczenie w tej chwili. Czy z NTC czy PTC czy DS18 to bez znaczenia teraz.Mnie o teorię chodzi :-)

Ale jaki czas ? Na wyjściu PID mam int16_t, która się zmienia dziwnie. Czasem doliczy do maximum, a czasem ledwo setkę i co z ujemnymi liczbami? Jak to przeskalować na 0..100% ?

Reply to
Lam3r

Zadna. Prop[onuje pzremyslec moja analogie ktora napisalem pare linijek wyzej: gacie TEZ mozna zalozyc pzrez glowe. Tylko trudniej.

Zeby zastosowac ciagly PID doregulacji gzralki nalezy sobie zbudowac urzadzenie ktore ozreksztalci sygnal cyfrowy na napiecie 0 - 220 V i tyle amper ile grzalka potzrebuje. Potem jeszcze drobiazg.

No i po co skoro mozan zastosowac pzrekaznik ktory bedzie grzalek wlaczal i wylaczal? A procesor bedzie to tak robil zeby miec prawo regulacji PID.

A,L,

Reply to
A.L.

nie widziales przypadkiem niestabilnego PIDa?...

A.L.

Reply to
A.L.

W dniu 2014-01-27 00:29, A.L. pisze:

Wystarczy sterowanie grupowe. Triaki nie są drogie. A co z ogrzewaniem gazowym? Modulacja płomienia to też zakładanie majtek przez głowę?

Reply to
Mario

W dniu 2014-01-27 00:30, A.L. pisze:

Zakładam, że jak się uruchamia PIDa to dobiera się jego parametry. I pracuje stabilnie. Natomiast proporcjonalny nie ma szans pracować nie kolebiąc się wokół nastawionej wartości.

Reply to
Mario

Nieprawda

A.L.

Reply to
A.L.

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.