środa, 2 listopada 2016

Archiwum - Prosty Autorski regulator cyfrowy

Archiwum - Prosty Autorski regulator cyfrowy

W wezlach cieplowniczych konieczna jest glownie sezonowa zmiana parametrow regulatora cieplej wody uzytkowej  jako ze wraz ze zmiana temperatury czynników wymieniających ciepło a wiec wody sieciowej i CWU silnie zmieniaja sie parametry dynamiczne a glownie wzmocnienie wymiennikow ciepla. Bez zmiany parametrow przy wysokiej temperaturze wody sieciowej regulacja CWU ( Cieplej Wody Uzytkowej )  jest niespokojna - oscylacyjna i na granicy stabilnosci. Towarzyszy temu niepotrzebne i szkodliwe przedwczesne zuzycie serwomechanizmu i zaworu.
Uwaga ta jest takze w mniejszym stopniu adekwatna dla wymienikow ciepla do ogrzewania CO jako ze takze w sezonie grzewczym w pewnych granicach zmienia sie temperatura wody siecioowej.
Dotychczas przy stosowaniu regulatorow PI a rzadziej PID zmian tych dokonywano recznie i wezly de facto nie byly bezobslugowe. 

Sterownik ( jest to regulator wielopetlowy a przy pomocy binarnych I/O moze takze prowadzic sterowanie logiczne ) ma jako opcje modem telefoniczny pozwalajacy na zdalne odczyty i ewentulane zmiany jesli sa przez ustawione opcje dozwolone. Lokalnie bez modemu mozna dolaczyc komputer PC zlaczem RS232.
 Z doswiadczen autora i jego wspolpracownikow wynika ze prawidlowe ustawienie parametrow regulatora PI / PID bywa bardzo trudne i jest przyczyna kiepskiego funkcjonowania systemu automatyki. Pozostawienie instalatora i obslugi samopas z tym problemem jest nierozsadne i slaby efekt koncowy jest latwy do przewidzenia.
Zastosowano automatyczne strojenie metoda eksperymentu Astroma - Hagglunda i ZN a takze bardzo latwe nastawianie parametrow regulatorow.

Poswiecmy sprawie wyboru algorytmu regulatora i jego nastaw pare slow wyjasnienia. Niech bedzie dany obiekt inercyjny n-tego rzedu to znaczy skladajacy sie z kaskady n identycznych inercji. Dla n>2 mozna odpowiedz aproksymowac czasem opoznienia To i zastepcza stala czasowa Tz. Oczywiscie im wyzszy jest rzad obiektu n tym wiekszy jest stosunek To / Tz i obiekt jest coraz trudniejszy do regulacji.   
Trudnosc regulacji dla obiektu inercyjnego stopnia n wynosi z definicji H = ( n-1 ) / 10. Im trudniejszy obiekt tym wymagany bardziej zlozony algorytm regulatora i coraz gorsza jest jakosc regulacji.

Dla H<0.2 wystarczy regulator P lub PI jesli system ma byc astatyczny
Dla 0.2<H<0.3 stosujemy regulator PI lub PID
Dla H>0.3 konieczna jest regulacja kaskadowa a jesli nie mozna dac koniecznego dodatkowego sensora to stosowac nalezy regulator PID o malym wzmocnieniu wspomozony torem sprzezenia wprzod czyli feedforward.

Ponizej podane sa parametry petli ukladow regulacji cieplowniczej bez uwzglednienia czasu reakcji serwomechanizmu:
To - aproxymowane opoznienie obiektu w sec / Tz - aproksymowana zastepcza stala czasowa obiektu w sec  / H - trudnosc regulacji  / X - zakres proporcjonalnosci w stopniach Kelvina
1. Temperatura wody zasilajacej za zaworem trojdroznym
10-20 / 30-60 / 0.2-0.4 / 20-80
2. Temperatura CWU za zbiornikiem z podgrzewaczem rurowym zasilanym woda sieciowa
30-120 / 600-1800 / 0.05-0.2 / 20-50
3. Temperatura podgrzewanego powietrza za nagrzewnica z wentylatorem zasilana woda sieciowa poprzez trojdrozny zawor
10-40 / 30-120 / 0.15-0.4 / 20-50
4. Temperatura powietrza opuszczajacego pomieszczenie nagrzewane regulowana nagrzewnica ( jak wyzej ) powietrza
60-300 / 600-3600 / 0.1-0.3 / 15-25
5. Temperatura pomieszczenia z regulowanym grzejnikiem
300-900 / 3600-9000 / 0.02-0.2 / 20-30

Wnioski:
A. Jak widac juz prozaiczny zawor trojdrozny moze czasem sprawiac klopoty z jakoscia regulacji mimo iz petla regulacji bedzie szybka. Nagrzewnica powietrza tez moze stwarzac problemy. Z kolei regulowany grzejnik jest latwy ale wymagana stala czasowa calkowania moze byc poza osiagalnym zakresem. W takim razie mozna stosowac regulacje P a przy bardzo latwym obiekcie nawet dwupolozeniowa. 
B. Zakres proporcjonalnosci ustawiony na 30K prawie zawsze ( oczywiscie na poczatek ) bedzie dobry
C. Czasy Ti ( czas rozniczkowania Td zawsze wynosi 1/4 Ti , oczywiscie jesli uzyty jest algorytm PID a nie PI ) sa proporcjonalne do Tz i beda sie zmieniac w bardzo szerokim zakresie. To jest problem. Na poczatek mozna dac wartosci srednie dla rodzaju obiektu. 
D. Czas przestawiania krokowego serwomechanizmu, powinien byc raczej krotszy niz czas zastepczej stalej czasowej obiektu 

Z dostepnych informacji wynika ze w programach regulatorow przemyslowych stosowana jest 24 bitowa artmetyka zmiennoprzecinkowa ale do implementacji integratora regulatora PI jest uzywana dokladniejsza artmetyka 32 bitowa. W omawianym sterowniku zastosowano 16 bitowa artmetyke i  krokowy algorytm przyrostowy PI. Sam algorytm omowiono w innym miejscu. Daje on bardzo dobre rezultaty. Jest to dobre rozwiazanie z uwagi na niewielka szybkosc operacji procesora i male wymagania na uzyty RAM. Uzywanie artmetyki zmiennoprzecinkowej ( oprocz tego ze jej nie ma w zasiegu ) to na procesorze 8 bitowym przerost formy nad trescia.
Sporzadzono prosty program na komputer PC symulujacy krokowy algorytm przyrostowy i sygnalizujacy niedopuszczalne przepelnienia. Mozna sprawdzic w jakim zakresie sygnalow wejsciowych i nastaw algorytm dziala poprawnie oraz upewnic sie ze rezultaty w sterowniku beda poprawne.

Mozgiem regulatora jest pracujacy z zewnetrzna pamiecia Eprom 2764 mikrokontroller Intel 8051 ( Intel, Microcontroller Handbook 1983 , Chapter 6,7,8 a zwlaszcza rozne przyklady funkcji z Chapter 9 "MCS 51 Application Example" i nowszy Intel, Microcontroller Handbook 1985   ) taktowany rezonatorem 11.0592 Mhz. Taka bowiem czestotliwosc rezonatora pozwala uzyskac standardowa szybkosc lacza RS232 dla transmisji laczem szeregowym. Hardware do komunikacji zawiera osobny modul. Jest to prosty transceiver RS232 do komunikacji z komputerem PC lub telefoniczny modem. 
Katalog koncernu Philips na 1988 rok zawiera znakomity mikrokontroller 80C552 w obudowie PLCC68 bazujacy na mikrokontrollerze 80C51 i wyposazony w liczne peryferia takie jak interface I2C, 8 wejsciowy 10 bitowy przetwornik A/D, uklad PWM  i kolejne porty. Nieco gorszy jest mikrokontroller Siemensa 80515.  Niestety nie jest on obecnie mozliwy do nabycia. Procesor 80C654 zawiera tylko dodatkowy kontroler I2C i w opisywanym urzadzeniu mozna go stosowac bowiem odpowiednio przydzielono piny do zadania wspolpracy z RTCC poprzez interface I2C. Oprocz zegara czasu rzeczywistego, mozna dodatkowo zastosowac pamiec EEprom typu  PCF8582.  
 Latch 74HC373 sluzy standardowo do demultiplexowania mlodszego adresu magistrali Adres - Data. Pojemnosc wewnetrznej pamieci RAM mikrokontrollera jest wystarczajaca w tym zastosowaniu tylko dla jednego regulatora o pelnej zlozonosci. Moga pracowac dwa regulatory CO i CWU ale bez systemu automatycznego eksperymentu i nastrojenia.

Na bramkach Schmidta CD4093 wykonano Watchdog. Brak okresowego pobudzenia Watchdoga przez port procesora spowoduje uruchomienie generatora i resetowanie mikrokontrollera z czestotliwoscia >10Hz  az do skutku. Systemy czasu rzeczywistego musza byc wyposazone w Watchdoga na wypadek utraty sciezki logicznej programu i zawieszenia sie go. Aktywacja watchodga winna jednoczesnie blokowac wyjscia sterownika. Funkcje ta mozna dodac w opisywanym urzadzeniu choc zastosowano juz srodki bezpieczenstwa przed zniszczeniem wykonawczych kluczy mocy. Osobnym tematem jest wznowienie pracy po akcji watchodga. Watchodg mozna takze wykonac na jednym komparatorze z ukladu LM393 i elementach dyskretnych.
 Zegarem czasu rzeczywistego RTC z pamiecia o zawartosci podtrzymywanej przez baterie  jest uklad PCF8573 ( stosowany jest w wysokiej jakosci urzadzeniach Grundig Schematy takich urzadzen sa cennym zrodlem rozwiazan i inspiracji  ) lub nowszy PCF8583. Prad ladowania baterii wybiera sie wartoscia rezystora. Powinien byc on bardzo maly.
Poniewaz ilosc wolnych portow mikrokontrollera jest zbyt mala zastosowano jako 8 bitowy port uklad 74LS377. Ciekawostka zastosowania tego ukladu  jest zbednosc Glue Logic dekodera adresu.
Elementami wyjsciowymi mocy sa "wysokonapieciowe" triacki BT138-800 sterowane optocouplerami poprzez antykoincydencyjny uklad wykonany na bramkach z elementami RCD do realizacji funkcji czasowych na okres blokowania wyjsc. Bramki eliminuja mozliwosc jednoczesnego wyzwolenia triackow i ich potencjalnego uszkodzenia na skutek zwarcia kondensatora pracy silnika.

Mankamentem uzycia mikrokontrollera '8051   jest koniecznosc opracowania programu w asemblerze co laczy sie z duzym nakladem sil i srodkow. Niestety w chwili obecnej brak jest dostepnego kompilatora jezyka C dla tego mikrokontrollera.

W kontrolerze zastosowano dokladny osmiowejsciowy przetwornik A/D z podwojnym calkowaniem. System jest ratiometryczny i z tego wzgledu moze byc bardzo , bardzo dokladny. Zastosowano stosunkowo duzy, impulsowy prad pomiarowy jako ze kazdy sensor dostaje prad pomiarowy tylko przez 1/16 czasu pelnego cyklu  Do jednego z wejsc mozna dolaczyc na stale rezystor 107 Ohm symulujacy sensor PT100 o temperaturze 20C co moze sluzyc do programowej eliminacji offsetu. Uzycie kolejnego wejscia i rezystora symulujacego temperature ca 100C umozliwia autokalibracje wspolczynnikow Gain i Offset. W omawianym zastosowaniu nie ma takiej potrzeby. Czesc wejsc mozna wykorzystac tylko do pomiaru napiec obsadzajac miejsca na dzielnik rezystorowy i nie montujac rezystora 100Ohm przez ktory plynie do danego kanalu prad ze zrodla pradowego via multiplexer 4051.
Poniewaz czas wykonania instrukcji mnozenia przez mikrokontroller rodziny MCS51 jest czterokrotnie dluzszy niz innych instrukcji to wprowadza to nieokreslonosc - blad w czasie obslugi przerwania czyli blad pomiaru. Srednia wartosc tego bledu jest jednak bardzo mala. 
Ogromna zaleta ukladu jest to ze system nie wprowadza roznych bledow Gain i Offset dla poszczegolnych kanalow do daje tak irytujace uzytkownikow rozne wskazania takiej samej mierzonej wartosci z roznych kanalach senorow temperatury. W systemie jest tylko wspolny Offset i wspolny dla wszystkich Gain. Nie ma zadnych potencjometrow. Ich autokalibracja ( kosztem mniejszej ilosci wejsc) jest tu zbednym luksusem i wodotryskiem jako ze nie ma takiej potrzeby.  
 Czesc analogowa wykonana jest na wzmacniaczach operacyjnych i komparatorach oraz tranzystorach pracujacych jako klucze. Czesc cyfrowa stanowi licznik w mikrokontrollerze. Zintegrowany licznik jest oszczednoscia na tle stosowania ukladow CTC. Szkoda ze nie sa dostepne tylko scalone czesci analogowe calkujacych przetwornikow A/D chocby takie jakie sa stosowane w przetwornikach rodziny ICL7107  firmy Intersil. Przy wyborze wzmacniaczy operacyjnych nalezy szczegolna zwracac uwage na zakres wejsciowych napiec Common. Niezle i tanie uklady LM324 sa bardzo podatne na zaklocenia RF na wyjsciu jako ze uklad ma we wtorniku wyjsciowym bardzo duza strefe nieczulosci.
Zaleta przetwornika calkujacego jest duze tlumienie zaklocen mierzonego sygnalu ( czasem zbedne jest stosowanie kosztownych przewodow ekranowanych) oraz generalnie bardzo wysokie dokladnosci jakie uzyskuje sie ta metoda. Rozbudowa idei  podwojnego calkowania znana z przetwornikow A/D Intersil czy przyrzadow pomiarowych Hewlet Packard umozliwia osiagniecie 6 cyfrowej rozdzielczosci !
Zastosowany system moze stanowic jadro rozmaitych przyrzadow pomiarowych.
Muliplexerem CD4051 podawane jest bezposrednio do przetwornika napiecie z sensora (jednego z osmiu w danym cyklu pomiarowym) PT100. Drugi multiplexer podaje temu sensorowi prad pomiarowy ze zrodla pradowego. Niewielka rozbudowa ukladu pozwoli zastosowac polacznie troj i czteroprzewodowe sensorow PT100.

Uklady '4051 podobnie jaki inne uklady z rodziny CMOS 4000 toleruja tylko niewielki 10-20mA prad wejsciowy a przekroczenie jego skutkuje aktywacja pasozytniczej struktury czterowarstwowej NPNP i efektem Latch-Up co skutkuje zniszczeniem ukladu na skutek zwarcia zasilania systemu przez zatrzasnieta mikro strukture pasozytniczego  tyrystora. Zastosowano wiec pare diod zabezpieczajacych na wejsciu controlera ograniczajacych napiecie. Z racji uzycia miedzy  diodami zabezpieczajacymi a ukladami 4051 rezystorow 100 Ohm prad wplywajacy do wejsc '4051 jest ograniczony. Im wieksza wartosc tych  rezystorow tym mniejszy jest niebezpieczny prad wplywajacy do wejsc. Dodatkowo podano napiecie VCC obwodem RC co wyklucza zatrzasniecie sie Latch-Up. Wielkosc rezystorow zabezpieczajacych  ogranicza wielkosc pradu pomiarowego zrodla pradowego jako ze powstaje na nich szkodliwy  spadek napiecia. Alternatywnie w stosunku do zrodla pradowego pokazanego na schemacie mozna stosowac uklad zrodla pradowego Howlanda na wzmacniaczu operacyjnym.
Kondensatory 1nF na wejsciach eliminuja zaklocenia radiowe EMC. 
Uklady CD4051 zasilane tylko napieciem +5V maja zbyt duze rezystancje wlaczonym kluczy i stosowanie napiecia zasilania 12V jest konieczne. Po zastosowaniu ukladow nowoczesniejszych  74HC4051 mozna stosowac tylko jedno napiecie +5V co upraszcza i potania system czyniac go jednoczesnie bardziej niezawodnym.
Zabezpieczenie wejsc jest bardzo dobre czego dowodza wyniki przeprowadzonych testow.  Na dwoch tranzystorach i diodzie zenera wykonano extra rownolegly ogranicznik - stabilizator 5V ktory przez chwile moze zaabsorbowac zaklocajacy wejsciowy  prad do 20A, a wiec bardzo duzy. Poniewaz GND systemu jest Float to prad awaryny plynacy do wejsc pojawia sie dopiero przy podwojnym uszkodzeniu. Tak wielki prad powoduje przepalenie wejsciowych rezystorow bezpiecznikowych 0.33 Ohma  chroniac reszte systemu.
Normalnie zaklocenia duzej energi emitowane sa przez instalacje mocy oraz przez wyladowania atmosferyczne.  Zastosowane do ochrony triackow przewymiarowane warystory S14K420 moga zaabsorbowac jeden (w calym swoim zyciu) potezny impuls o energi az 90 J. Transile serii 1.5KE absorbuja  energie 1.5J  czyli 1500W przez 1ms ale moga absorbowac nieskonczonosc impulsow w swoim zyciu. . Popularne diody zenera absorbuja impulsy w obszarze milidzulowym. Tranzystory bipolarne maja zdolnosc pracy przy wymuszonym napieciu maksymalnym Uceo absorbujac do kilkudziesieciu mJ (to juz tranzystory mocy) Na tym tle uklady scalone sa bardzo delikatne.     

Do wspolpracy z wyswietlaczem LCD 2*16 znakow firmy Denso ( bardzo uzyteczna Application Note koncernu Intel ) zastosowano interface 4-bitowy z uwagi na konieczna oszczednosc w gospodarowaniu pinami - portami mikrokontrollera. Tranzystor zastosowany jako sensor temperatury daje pozadane uzaleznienie temperaturowe napiecia kontrastu wyswietlacza LCD  i najlepszy kontrast w szerokim zakresie temperatur. Przy pracy w stalej temperaturze uklad jest zbedny. Alternatywnie mozna zastosowac wyswietlacze siedmiosegmentowe LED choc wymaga to duzej przebudowy ukladu i wymaga silnego zasilacza. Mozna system przekonstruowac tak aby mozna bylo PCB obsadzac alternatywnie. 
Aby przy blednym dzialaniu mikrokontrollera i programu nie doszlo do zniszczenia wyjsciowych triakow na skutek ich jednoczesnego wlaczenia  (zaszlo by wtedy zwarcie kondensatora silnika dwufazowego przez obwody z triakami) zastosowano uklady antykoincydencyjne i czasowe wykonane na bramkach EXOR oraz elementach RCD.
Pozostale podsystemy nie maja istotnych innowacji i sa samoobjasniajace sie, wiec ich opis jest zbedny.
Opis modemu z wybieraniem numeru a zwlaszcza jego interface do lini telefonicznej jest calkowicie poza tematem niniejszego opracowania.

Oczywiscie testowanie sterownika - regulatora prowadzimy na modelu obiektu a nie od razu na wezle cieplowniczym czy innym realnym obiekcie. Sprawdzamy czy zachowanie jest zgodne z oczekiwaniami. Warto zauwazyc ze w regulatorze krokowym strefa nieczulosci
znakomicie filtruje zaklocenia.

2 komentarze: