Elektroda.pl
Elektroda.pl
X
Asaj - Inteligentny DomAsaj - Inteligentny Dom
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

regulacja temperatury wygrzewania

13 Cze 2011 11:58 1852 7
  • Poziom 9  
    Witajcie!

    Mam taki problem i nie wiem jak go rozwiązać. Otóż mam piecyk elektryczny do którego zrobiłem sterownik z mikrokomputerem, program jest oczywiście mój. Do przetwornika ADC jest podłączony rezystancyjny czujnik temperatury KTY84.

    Przykładowo, jeżeli ustawię temperaturę 70st C, piecyk się nagrzewa, czujnik zasygnalizuje osiągniecie 70st, mikrokomputer wyłącza grzałki.
    Po wyłączeniu grzałek temperatura rośnie jeszcze do 90st C.

    Czy ktoś może mi powiedzieć jak sterować grzałką włącz/wyłącz aby zminimalizować wahanie temperatury wokół zadanego punktu? Jaki algorytm?

    Pozdrawiam
    Krzysztof
  • Asaj - Inteligentny DomAsaj - Inteligentny Dom
  • Poziom 30  
    Witam.
    Grzałka musiała by być włączana cyklicznie. Wypełnienie impulsów powinno być tym mniejsze im mniejsza jest różnica pomiędzy temperarurą zadaną i zmierzoną.
    Andrzej
  • Asaj - Inteligentny DomAsaj - Inteligentny Dom
  • Poziom 9  
    Dziękuję bardzo za odpowiedź.

    Nasuwa się pytanie, jaki czas przyjąć za 100% wypełnienia? Załóżmy, że temperaturę próbkuję co 1s - to 1s powinna być 100% czasu? Jeżeli tak, to grzałką mogę sterować tylko w 60 progach bo triak, który wybrałem załącza się w zerze.

    Temperaturę mierzę na wygrzewanej płytce, pomiędzy grzałkami a wygrzewaną płytką jest powietrze, czy taka metoda może się sprawdzić?

    Pozdrawiam
    Krzysztof
  • Poziom 19  
    Po to stosuje się regulatory PiD. Regulator uczy się obiektu i czasowo dogrzewa obiekt tak aby przyrost temperatury był utrzymany w tolerancji nastawionej.
  • Poziom 30  
    Myślę, że próbkowanie przy pomiarze temperatury to sprawa niezależna od sterowania grzałką. Jeśli różnica temperatur (nastawiona i zmierzona) jest duża, to można grzać nawet w sposób ciągły aby przyrost był duży (aby nagrzać szybko). Przy małej różnicy, jeśli włączysz grzałkę i ma ona dużą moc a bezwładność tego układu jest duża to temperatura wzrasta powyżej nastawionej nawet po wyłączeniu grzałki. Można włączać grzałkę na pewien czas np. 1s i robić przerwę np. 5s. Mamy wtedy zmniejszoną moc średnią grzałki i nagrzewa ona wolniej ale wtedy łatwiej opanować wzrost temperatury powyżej nastawionej. Czasy oczywiście są podane przypadkowe. Sterować można w ten sposób aby czas grzania + czas przerwy wynosił np. 10s i zmieniać stosunek czasu pracy do czasu przerwy, albo przyjąć stały czas grzania i zmieniać czas przerwy lub odwrotnie. Liczy się zasada regulacji stosunku. Wybierzesz to co łatwiejsze do zrealizowania w programie.
    Najlepiej aby na początku grzać w sposób ciągły (albo z wypełnieniem bliskim 100%) a w pobliżu temp. nastawionej z mniejszym wypełnieniem. Regulacja wypełnienia może nie zależeć w sposób ciągły od różnicy temp. a może być realizowana w np. kilku krokach (poziomach). Triak z włączeniem i wyłączeniem w zerze będzie pracował poprawnie. Włączasz całą grupę półokresów sinusoidy, a następnie przez pewien czas triak nie jest wysterowany.
    Andrzej
  • Poziom 15  
    polecam przejrzenie manuala do sterowników mitsubishi. nazywa sie to Analog Controll, bardzo fajnie tam jest napisane w jaki sposób to zrobić na drabince- a łatwo to przełożyć na uC. Proszę zajrzeć na dział z PID -sterowanie temperatury za pomocą PWM.
  • Poziom 9  
    Czyli metoda którą proponuję Andy127 jest zbieżna z działaniem PID.
    Z opisu pracy regulatora PID wynika, że muszę znaleźć nastawy P, I, D. Wybrałem metodę Ziegler-Nichols.
    W skrócie:

    - zakładam tolerancję temperatury +- 5st
    - szukam P przy I,D = 0 dla którego osiągam zadaną tolerancje np. +- 5% - czyli granicę stabilności mojego układu
    - wyliczam wg. tabeli P, I, D
    -weryfikuję

    Czy dobrze zrozumiałem metodę Ziegler-Nichols?
    Parametry I,D są odpowiedzialne za szybkość przyrostu i opadania?

    Pozdrawiam
    Krzysztof
  • Poziom 9  
    Witajcie
    Regulator PID świetnie się sprawdza.
    Na tronach Atmel’a można znaleźć przykładowy kod - Google: „Atmel ATMEGA PID”.
    W tym przykładzie kod regulatora proporcjonalnego jest błędny, można zmienić skalowanie na rzecz zmiennych np. typu float, które dla większych ARM nie stanowią problemu. Regulator PID włączam dopiero gdy temperatura różni się od zadanej o 30st C. Działa świetnie.

    Pozdrawiam
    Krzysztof