Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Sterowanie klimatyzacja - algorytmy w PLC

msk85 21 Aug 2013 08:18 27038 70
Nazwa.pl
  • #61
    msk85
    Level 12  
    Dziękuję za podpowiedź. Tak, przesadziłem z zakresem. Myślałem o kanale powietrznym., a opisałem jako pomiar ciśnienia w hali. Nadciśnienie w hali pewnie nie przekroczy 500Pa. Przynajmniej w kotłach energetycznych mogłem uzyskać ciśnienie w zakresie -200Pa do 200Pa.

    Wstępnie mam w głowie regulator oparty na zwykłym PID'zie. Coś w stylu dodawanie (lub odejmowania) korekt od tego co wpisał operator.

    PID od ciśnienia w hali będzie miał możliwość wpływu na prędkość nawiewu powiedzmy w zakresie 20% prędkości wentylatora (wartość do ustalenia doświadczalnie). Czyli prędkość nawiewu nigdy nie zejdzie do zera. PID będzie dawał korekty prędkość w zależności od tego czy jest zbyt duże nadciśnienie w hali, czy zbyt małe. Gdy nadciśnienie jest za duże (w zależności od wartości zadanej) to prędkość zostanie zmniejszona o max 20%. Gdy nadciśnienie jest za małe to do prędkości wpisanej (i ograniczonej widełkami) przez operatora zostanie dodana wartość korekty od PID'a (max 20%). 100% prędkości wentylatora to 50Hz na silniku. Wyciągi będą pracować ze stałą wydajnością też ustaloną doświadczalnie - przypuszczam, że pójdą na 100%. Ważne jest, aby tłuste powietrze znad maszyn piekących (tam są zamontowane wszystkie wyciągi) na pewno trafiło poza halę. Nie opisałem wszystkiego. Nie powiedziałem tego, że centrala nawiewna (35000m3/h - największa) pracuje jako zasłona powietrzna dla maszyn piekących. Pozostałe centrale nawiewają po prostu powietrze na hale punktowo - około 10 rur rozmieszczonych po całej hali. Przez to myślę, że największa centrala nawiewna będzie pracować z doświadczalnie dobraną prędkością. Regulacja będzie na dwóch małych centralach (każda o wydajności 16000m3/h), które tłoczą powietrze do wspólnego kanału - to ten centrale rozprowadzają powietrze punktowo po całej hali.

    Druga identyczna korekta byłaby od wartości nadciśnienia w kanale (tutaj zakres do 2kPa). Potraktuję tą część regulatora jako drugi etap i będę go implementował gdy zgodzą się na poniesienie kosztów dodatkowych czujników.

    Silniki na centralach wentylacyjnych możne bez problemów podkręcać na obrotach? Powiedzmy do 60 - 70Hz? Są z nimi jakieś problemy wtedy? Wiem, że na dużych częstotliwościach o wiele łatwiej przeciążyć silnik niż, gdy idzie na częstotliwości znamionowej.

    Wydaje mi się, ze rozpoznałem większość urządzeń wentylacyjnych na hali. Zrobię prosty schemat instalacji wentylacji i przedstawię kolegom.

    Dziękuję serdecznie za Waszą pomoc :).
  • Nazwa.pl
  • #62
    pm.001
    Electrician specialist
    Witam
    msk85 wrote:
    Druga identyczna korekta byłaby od wartości nadciśnienia w kanale (tutaj zakres do 2kPa)

    Proszę zweryfikować spręż dyspozycyjny centrali bo wartość 2kPa nie jest całkiem typowa (możliwe specjalnie dobrane parametry centrali)
    msk85 wrote:
    Silniki na centralach wentylacyjnych możne bez problemów podkręcać na obrotach? Powiedzmy do 60 - 70Hz? Są z nimi jakieś problemy wtedy?

    Tutaj też odsyłam do kart doboru centrali. Bywa że producenci z definicji zakładają pracę nawet na poziomie 50*1,73Hz ale raczej dla małych wydajności - te większe jeżeli już to nieznacznie przekraczają 50Hz
    pozdrawiam
    pm001
  • Nazwa.pl
  • #63
    msk85
    Level 12  
    Witam drogich Kolegów

    Znów miałem dłuższą nieobecność w temacie. Małe usprawiedliwienie mam, robiłem wszystkie proste rzeczy związane z budową aplikacji (grafiki, przesyłanie sygnałów & etc). Znalazłem w ciekawej książce (Bernard Zawada, Układy sterowania w systemach wentylacji i klimatyzacji). Scan załączam poniżej. Dodałem też uproszczony rysunek budowy układu regulacji z PID'em.

    Bardzo proszę o pomoc w interpretacji budowy sekwencyjnego układu regulacji. Nie jestem pewny, czy właściwie zrozumiałem ideę sterowania. Bardzo proszę poprawcie mnie jeśli się mylę. Z PID'a wychodzi sygnał sterujący 0..100%. PID zmienia ten sygnał w zależności od temperatury w pomieszczeniu. Jeśli zadam w pomieszczeniu 20C, a aktualna temperatura w pomieszczeniu będzie 10C, to PID będzie zwiększał wartość sygnału aż do 100%? Dobrze to rozumiem? W przypadku gdy temperatura w pomieszczeniu będzie 25C, to PID będzie zmniejszał swoje wyjścia aż do wartości 0%.

    Teraz w zależności wartości sygnału regulacji (wyjście PID'a) będę załączał poszczególne urządzenia grzewcze? Tutaj postępuję zgodnie z wykresem na rysunku 4.6 b)? Czyli wymiennik glikolowy pracuje dla wartości sygnału sterującego od 0 do 40% sygnału sterującego, powyżej 40% rozpocznie się przymykanie wymiennika glikolowego. Przynajmniej w ten sposób to zrozumiałem.

    https://obrazki.elektroda.pl/4376595400_1395066332.jpg
    https://obrazki.elektroda.pl/5933663200_1395066381.jpg
  • #64
    Chris_W

    Level 39  
    Jak masz w tej chwili rozwiązany sygnał chłodzenia? Jako wartość ujemną?
    Tutaj masz spakowane (przeskalowane) z zakresu -100%...+100% na 0%...+100%.
    Wg tego wykresu wartość wysterowania nie powodująca zmian (0%) odpowiada wartości 65% (albo 60%, 70%). I od takiej powinieneś rozpoczynać i zmierzać albo w górę do grzania, albo w dół do chłodzenia (jeśli chcesz się trzymać tego wykresu).
    Innym często spotykanym schematem jest taki:
    (specjalnie poprzesuwałem zakresy żeby wykres się trochę "rozjechał", zakresy są w pełni przesuwalne, zwykle to jakieś parametry)
    Sterowanie klimatyzacja - algorytmy w PLC


    Edit: Na tym rysunku z książki jednak jest odwrotnie - grzanie jest w lewo, chłodzenie w prawo - ale idea jest ta sama.
  • #65
    msk85
    Level 12  
    Dziękuję za odpowiedź. Najważniejsze dla mnie jest, że to PID generuje sygnał regulacji. W zależności od niego załączam poszczególne urządzenia (chłodzenie / wymiennik glikolowy / grzanie elektryczne). Może rzeczywiście zrobię punkty załączania jako parametry nastawiane z panelu operatorskiego, aby później lepiej ustabilizować regulację.

    Chłodzenie jest sterowane niestety dwustawnie (załącz / wyłącz). Działa w oparciu o chiller, z którego nawet nie mam sygnału awarii. Mam tylko sygnał start. Chiller jest spory, ale i tak zdecydowanie za mały jak na potrzeby całej hali. Zrobię jakąś małą histerezę. Odpowiadając na pytanie: dopiero zaczynam budować sterowanie grzaniem / chłodzeniem. Załączenie chłodzenia będzie powyżej pewnej wartości sygnału regulacji. Może przyjmę Twoją koncepcję z wartościami ujemnymi, bo jest to intuicyjne.

    Samo wysterowanie zaworu (np. od chłodzenia) robicie liniowo? Chodzi mi o sytuację:
    ch2 = -50%
    ch1 = 5%

    Stopień otwarcia pomiędzy punktem ch2 (-50%), a ch1 (5%) to liniowa zależność od sygnału regulacji? Z wykresów wynika, że tak i jest to bardzo logiczne :). Proszę wybaczyć za moje pytania wprost, ale wolę upewnić się nawet w kwestiach oczywistych :) :).

    W moim przypadku mam do dyspozycji dwie nagrzewnice elektryczne (każda o mocy 100kW). Najpierw zbuduję moduł sterujący samą pracą nagrzewnic. Dla tego bloczku będę zadawał po prostu moc (0..100% mocy nagrzewnicy). Chcę to zrobić jak najbardziej uniwersalnie, bo wiem, że kiedyś na pewno ta wentylacja będzie rozbudowana. Nagrzewnice będą sterowane czasem wypełnienia, nie wiem jeszcze jaki czas impulsowania przyjmę. Pierwszy raz mam do czynienia z takimi nagrzewnicami. Dodatkowo sama nagrzewnica jest podzielona na 3 sekcje grzewcze, ale z tym myślę, że sobie poradzę w najprostszy ze sposobów - 0..33% pracuje jedna sekcja, 33..66% pracują dwie sekcje, 66...100% pracują trzy sekcje grzewcze. Gdzieś tam mam do dyspozycji stare programy od wysterowania grzałek, pewnie będę się na nich wzorował. Chcę też, aby w przypadku uszkodzenia czujnika temperatury operatorzy mieli możliwość uruchomienia urządzeń, dlatego zrobię tryb ręczny: operator zadaje moc grzałek: np. na 50% i ciepło dmucha z kanałów.
  • #66
    Chris_W

    Level 39  
    Chłodzenie jest liniowe bo upraszcza rozumienie - może być też takie w praktyce, jeśli jest system wody lodowej i sterujemy analogowo zaworem (podobnie jak nagrzewnicą). Taki wariant masz również na swoim rysunku z książki.
    Zależność sygnału chłodzenia na liniowa (choć nie wiem o jakiej liniowości piszesz - to jest sygnał z Twojego PIDa dla procesu chłodzenia). Warto sobie podzielić cały algorytm na tryby pracy (np. grzanie, chłodzenie) i informować o trybie pracy za pomocą kontrolek. Czasami w trybie chłodzenia jest też realizowany odzysk chłodu (jeśli temp. wewnątrz jest niższa niż na zewnątrz) - właściwie w Twoim przypadku to chyba musi być ten odzysk w myśl najnowszych przepisów, musiałbyś się upewnić w "warunkach technicznych... "(dotyczy chyba wydajność powyżej 2000m3/h). Wtedy cykl chłodzenia musisz podzielić również na "udziały" i przypisać powiedzmy 0% do -50% odzysk chłodu, a potem niech startuje chiller.
    Sterowanie grzałkami możesz zrobić jako 2 załączane on/ff, ale trzecia regulowana liniowo (przez regulator tyrystorowy, lub zawór prądowy) to najoptymalniejsze rozwiązanie bo dwie służą do zgrubnego grzania, a trzecia "doregulowuje" do zadanego poziomu. Chyba Conel ma gotowe sterowniki takich grzałek.

    Na twoim miejscu szukałbym praktycznych realizacji rozwiązań - na stronie Carela
    http://www.carel.pl/dokumentacje.php?grupa=1&podgrupa=2&przypisanie=aplikacje
    masz bogaty zestaw aplikacji pod ich sterownik - są tam dokładnie opisane metody sterowania i regulacji w różnych procesach związanych z wentylacją/klimatyzacją. Tam w sterowniku jest tylko algorytm P lub PI - więc jest taka, a nie inna metodyka regulacji - ale edukacyjny walor ma na pewno.

    Edit: No i prawdopodobnie tam sobie uświadomisz po co ja to robię "na piechotę" skoro już wszystko istnieje... można wybrać "gotowca" zaprogramowanego pod określoną sytuację (albo go dokonfigurować na miejscu), a potem tylko okablować i uruchomić. Pozdrawiam ;)
  • #67
    msk85
    Level 12  
    Układ grzania - chłodzenia składa się z:
    - centrali nawiewnej N2, zaraz za nią jest chiller (on - off)
    - centrali nawiewnej N6, powietrze do niej dostarczane jest za pomocą N2
    - centrali wywiewnej W6 - usuwa brudne powietrze technologiczne z hali,

    Sterowanie klimatyzacja - algorytmy w PLC
    Sterowanie klimatyzacja - algorytmy w PLC

    Sterowanie klimatyzacja - algorytmy w PLC
    Sterowanie klimatyzacja - algorytmy w PLC



    Sterowanie:
    - 5 sterowników PLC + panel operatorski,
    - grzałki załączane są z układów tyrystorowych - rozkaz załączenia z PLC



    Kolory nie są zgodne z rzeczywistością - VNC je zmienia, ale to akurat tutaj nie jest istotne. Cała instalacja wentylacji już istnieje i "jakoś" działa. Moim zadaniem jest modernizacja. Na razie tworzę bazę pod dalsze zmiany. Piszę od nowa oprogramowanie dla tego systemu.
    Wydaje mi się, że odzysk zimnego powietrza z hali nie będzie występował. Centrale wyciągowe usuwają powietrze ciepłe z maszyn i urządzeń (w porywach ma 40C). Będę się temu przyglądał, ale wstępnie mogę powiedzieć, że nie zdarza się sytuacja taka, że temperatura zewnętrza jest wyższa niż temparatura usuwanego powietrza z hali produkcyjnej. Dlatego odzysk chłodu pominę, przynajmniej na razie.




    Chyba niewłaściwie rozumiem ideę sterowania, dlatego bardzo proszę o wyjaśnienie. Proszę spojrzeć na zmodyfikowany poniższy rysunek. Ta kwestia jest dla mnie najważniejsza. PID ( a tak naprawdę dość wolny regulator PI) wystawia mi sygnał w zależności od temperatury w hali i temperatury zadanej od -100% do 100%. Mam jeden regulator PID? To właśnie sygnał z niego (Yreg) steruje sekwencyjnie wszystkimi urządzeniami wchodzącymi w skład systemu grzania - chłodzenia?


    Sterowanie klimatyzacja - algorytmy w PLC


    Idea jest dla mnie niejasna. Czy istnieje liniowa zależność pomiędzy sygnałem Yreg a stopniem otwarcia zaworu glikolu? Poniżej uproszczona sytuacja, wziąłem pod uwagę tylko zawór glikolu i nic więcej. Dla pozostałych elementów zakładam podobnie. W ten sposób zrozumiałem ideę sterowania sekwencyjnego systemem wentylacji. Bardzo proszę mnie poprawić w każdym miejscu, gdzie się mylę.
    Yreg= -100%...0%..................zawór glikolu zamkięty
    Yreg= 0%... 50%....................zawór glikolu liniowo uzależniony od sygnału Yreg (jak w tabelce poniżej)
    Yreg= 50%...100%..................zawór glikolu cały czas otwarty


    Sterowanie klimatyzacja - algorytmy w PLC
  • #68
    Chris_W

    Level 39  
    msk85 wrote:

    Chyba niewłaściwie rozumiem ideę sterowania, dlatego bardzo proszę o wyjaśnienie. Proszę spojrzeć na zmodyfikowany poniższy rysunek. Ta kwestia jest dla mnie najważniejsza. PID ( a tak naprawdę dość wolny regulator PI) wystawia mi sygnał w zależności od temperatury w hali i temperatury zadanej od -100% do 100%. Mam jeden regulator PID? To właśnie sygnał z niego (Yreg) steruje sekwencyjnie wszystkimi urządzeniami wchodzącymi w skład systemu grzania - chłodzenia?

    Zrównaj w g1 i w2 - tak jest najczęściej realizowane (np. często jest ostrzeżenie że g1 nie może być mniejsze od w2) samą ideę tych parametrów możesz sobie zostawić bo konfiguracja jest wtedy bardziej "elastyczna". Dociągnij też chłodzenie do końca ch2=100% orz grzanie do końca g2=100% - nie ma żadnej potrzeby żeby liniowość kończyła się wcześniej (regulator i tak naliczy zmianę, jak będzie ona potrzebna to nawet do 100%).

    Zawór glikolu to jak rozumiem twój odzysk ciepła?
    Traktuj jako zwykłe wyjście grzewcze. Zimą jak na wejściu masz ujemne temperatury to ten odzysk jak najbardziej będzie przydatny i "podbije" o kilka stopni temperaturę powietrza, resztę wykona nagrzewnica. Jeśli stopni grzania (ale też i chłodzenia) będzie więcej, to dodajesz analogiczną "pochylnie" na wykresie i cały zakres dzielisz wtedy na więcej części. Za pomocą tych parametrów możesz sobie regulować priorytety i udziały każdego stopnia (bez modyfikacji oprogramowania - za pomocą parametrów) np. jeśli wolisz żeby nagrzewnica pracowała w całym zakresie Yreg to "zawężasz" zakres odzysku do zera w1=w2=0, i g1 rozpoczynasz od zera. Analogicznie jak chcesz zmienić priorytety możesz w1 i w2 przesunąć w prawą stronę a g1 i g2 w lewą, wtedy grzanie rozpocznie się od nagrzewnicy g1=0%, przy g2 dojdzie do 100%, a przy w1 rozpocznie się grzanie drugim stopniem i zakończy na w2.
    Quote:

    Idea jest dla mnie niejasna. Czy istnieje liniowa zależność pomiędzy sygnałem Yreg a stopniem otwarcia zaworu glikolu? Poniżej uproszczona sytuacja, wziąłem pod uwagę tylko zawór glikolu i nic więcej. Dla pozostałych elementów zakładam podobnie. W ten sposób zrozumiałem ideę sterowania sekwencyjnego systemem wentylacji.

    Może powiem tak - to nie jest dokładne odwzorowanie Yreg - w tym zakresie występuje pewna proporcjonalność względem Yreg.
    Jeśli na wyjściu sterownika operujesz napięciami 0-10V to za pionową oś przyjmij napięciowy "sygnał" na elementy wykonawcze - w zakresie 0-10V, a wszystko stanie się jasne.
  • #69
    msk85
    Level 12  
    Na razie pominąłem chłodzenie. Muszę najpierw dobrze zrozumieć problem, aby nie zapędzić się kozi róg programistyczny. Nie chcę napisać setek linii kodu, które później będę musiał skasować. Wolę najpierw Was, doświadczonych się podpytać niż zmarnować mnóstwo czasu.

    Oczywiście wszystkie wartości na wykresach sygnału Yreg są czysto przykładowe, aby łatwiej zrozumieć problem. Zawór glikolowy to wymiennik, uprościłem tutaj sytuację, na razie pompę glikolu pominąłem. W kwestii jasności, całą obsługę wentylacji piszę "ręcznie". Tzn. mam gotowe funkcję typu PID, liczniki, warunki logiczne. Jest to typowy język skryptowy podobny do C. Dlatego mogę robić w oprogramowaniem co tylko mi się podoba. Mam też panel operatorski, na którym wyświetlam wszystkie dane. Nie mogę stosować gotowych rozwiązań, ponieważ cały system już istnieje i "jakoś" sobie działa. Moim zadaniem jest poprawa systemu, aby działał dobrze. No i tutaj pojawia się dla mnie kłopot, ponieważ moje doświadczenie w systemach wentylacji cały czas buduję :).


    Podejscie I
    Występuje tylko jeden regulator PID (tak naprawdę PI). To on wystawia sygnał Yreg

    Sterowanie klimatyzacja - algorytmy w PLC

    Podejscie II
    Jest kilka regulatorów PID
    PIDw -> pid sterujący zaworem wymiennika glikolowego. Regulator steruje zaworem tylko wtedy, gdy nadrzędny regulator PIDyreg mu na to pozwoli ( w granicach Yreg od 10% do 40%)
    PIDg -> pid sterujący nagrzewnica elektryczna. Regulator steruje mocą nagrzewnicy tylko wtedy, gdy nadrzędny regulator PIDyreg mu na to pozwoli ( w granicach Yreg od 50% do 80%)
    PIDyreg -> pid wystawiający sygnal regulacji Yreg, tak naprawdę PIDyreg uruchamia poszczególne urządzenia i sprawia, że załączają się sekwencyjnie

    Sterowanie klimatyzacja - algorytmy w PLC




    Jeszcze raz wszystkim Wam dziękuję za zaangażowanie. Będę Wam winny niejedno piwo za nieocenioną pomoc. Mam nadzieję, że materiały, które tutaj zostaną na wieki przydadzą się młodszym kolegom, którzy w przyszłości także będą stawiać pierwsze kroki z automatyką dla wentylacji
  • #70
    Chris_W

    Level 39  
    W obydwu wariantach będziesz musiał użyć dodatkowych regulatorów PID - w pierwszym wariancie masz główny regulator kontrolujący temperaturę pomieszczenia, ale nie masz nic co reguluje temperaturę nawiewu - główny PID może ją obniżyć lub podnieść do maksimum jakie będzie dostępne (np. mroźne powietrze -10*C będzie wdmuchiwane do pomieszczenia). Musisz użyć dodatkowych regulatorów PID - dodających swoją "korektę" do wartości wyjściowej.
    Jeśli temperatura w kanale spadnie poniżej Tmin, lub wzrośnie powyżej Tmax (parametry), to zaczyna działać PID ograniczajacy, który podnosi lub obniża wartość wysterowania tak aby temperatura w kanale mieściła się w zakresie Tmin-Tmax.
    Np. Jeśli system chce chłodzić zimą - to nie wysteruje grzania, a w efekcie tego temperatura w kanale (nawiew) będzie spadać, jak spadnie poniżej Tmin, to uruchomi się PID ograniczajacy zwiększający sygnał grzania.
    Najprościej dodać dwa regulatory PID ograniczające (dolny i górny) kontrolujące temperaturę w kanale nawiewnym i mające nastawy odpowiednio Tmin i Tmax. Ich sygnały będą dodawane do Yw lub Yg w przypadku dolnego i odejmowane od Yw lub Yg w przypadku górnego. Powinny być dośc szybkie i z większym wzmocnieniem niż główny PIDyreg.
    W drugim wariancie funkcjonalność dolnego i górnego ograniczenia temperatury jest niejako wbudowana w zasadę kaskadowej pracy regulatorów.
    Polega to w skrócie na tym że pierwszy PIDyreg kontroluje temperaturę pomieszczenia i wystawia odpowiednio do tego sygnał - ten sygnał jest "przycinany i podciągany" tak aby mieścił się w zakresie Tmin i Tmax - jesli sygnał Yreg jest mniejszy niż Tmin to jest "podciągany" do wartości Tmin jeśli przekracza Tmax to jest "przycinany" do Tmax, wartość pomiędzy Tmin i Tmax jest przekazywana bezpośrednio bez zmian. Po takim zabiegu procenty Yreg zmieniają się na temperaturę są używane bezpośrednio jako nastawy dla drugiego regulatora PID. Drugi regulator będzie próbował uzyskac temperaturę w kanale jaką zadaje mu pierwszy regulator - oczywiście operuje w zakresie Tmin i Tmax.
    Np. Jeśli system chce chłodzić zimą - to nie wysteruje grzania, Yreg=0%, ale drugi PID będzie miał nastawę Tmin, i nie pozwoli aby temperatura spadła poniżej tej wartości, ten regulator również powinien być szybszy i mieć większe wzmocnienie niż główny PID.
  • #71
    msk85
    Level 12  
    dziękuje za cenne uwagi, to wszystko uwzględnię w sterowaniu. Może wersja podstawowa nie będzie miała kaskady na PIDach do sterowania temperaturą w pomieszczeniu, ale docelowa wersja na pewno będzie wyposażona w takie sterowanie.