Laboratórium 2 - 11. Mérés: Logikai vezérlők alkalmazástechnikája
Gondolatok a mérésről, tippek és tapasztalatok
- Az ellenőrző mérés szakaszban írtakat érdemes átnézni, mert a rendes méréshez is nagyon sok hasznos tipp van benne!
- Multiport Interface
- PROFIBUS
Beugró kérdések
- Ellenőrző kérdések kidolgozása - Szerkesszétek, bővítsétek!
- Beugró kérdések voltak:
- Főként az ellenőrző kérdések közül kérdeztek.
- Kérdezték bónuszban a szabályozási kör blokkvázlatát, azt amit szabtechből tanultunk.
Házi feladathoz segítség
- Kidolgozott házi feladat (2009)
- Kidolgozott házi feladat (2010)
- Kidolgozott házi feladat (2010)
- Figyelem! A fentebb lévő házikban súlyos elvi hibák vannak!
% Első lépésként meg kell adni a mérési adatokat a megadott [t, u, y] formátumban,
% ahol t = idö [sec], u = bemenőjel [V], y = kimenőjel [C fok]
% Példa - Nincs benne minden sor, csak pár adat. Értelemszerűen használni a saját adataidat.
adat=[
0 5.0000 29.9029
0.0100 5.0000 30.0833
0.0200 5.0000 29.8529
...
1.4300 5.0000 27.5608
1.4400 5.0000 27.8915
];
% Most tegyük egy kicsit emészthetőbb formátumba az adathalmazt:
t=adat(:,1);
u=adat(:,2);
y=adat(:,3);
figure(1)
plot(t,u);
hold on;
plot(t,y,'r');
title('u: kék, y: piros')
hold off;
ts=t(2)-t(1);
% 1. Feladat - Munkapont
y0=sum(y(1:10))/10;
ym=y0-y;
u0=sum(u(1:10))/10;
um=u0-u;
% 2. Feladat - Átviteli függvény, időállandó, erősítés
data=iddata(ym,um,ts);
model=ARX(data,[1,1,1]);
figure(2)
compare(data,model);
[numd,dend]=th2tf(model);
Wpz=tf(numd,dend,ts);
Wps=d2c(Wpz)
% Az időállandó kiszámolható az átviteli függvény alapján
%3. Feladat - Ugrásválasz, lsim
figure(3)
step(Wps,'r')
ySim = lsim(Wps,u-u0,t)+y0;
figure(4)
plot(t,[ySim, adat(:,3)]);
%4. Feladat
dev=adat(:,3)-ySim;
atlag=sum(dev)/length(dev)
szoras=sqrt(sum((dev-atlag).^2)/length(dev))
pause()
%clear all;
close all;
Gyakori probléma, hogy túlbonyolítjátok a dolgot.
A fenti házi ARX függvénnyel identifikál. Értitek, hogy mit csinál? Annak idején a magam részéről nem feltétlenül fogtam.
Mit jelent az identifikáció? A kapott rendszered egytárolós, azaz van a és a paraméter. Ezek meghatározása mérések alapján az identifikáció.
Nos, ezt lehet egyszerűbben is csinálni, mint az ARX. Ugyebár egytárolós tagról van szó, ennek mi az átviteli függvénye:
Ennek a végértéke (ha ábrázolod), akkor micsoda? Hát , ami egyben az egyik szükséges paraméter. Örülsz neki, leírod.
A kicsit bonyolultabb csak. Helyettesíts be a összefüggésbe -t!
Magyarán: ahol értéket vesz fel, ott . Kész az identifikáció.
Ellenőrző mérés
Wacha Gábor által írt tanácsok
Pár mondatban összefoglalnám, hogy mit érdemes tudnia azoknak, akiket a sors a 11. méréshez (PLC) vet.
Mint emlékeztek, a mérés a következő részekből állt:
- WinCC és Simatic Manager megismerése
- A szakasz tulajdonságainak alapszintű vizsgálata (fűtés, túlvezérlés, hűtés, munkapont, kivezérelhetőség)
- A szakasz identifikálása
- Szabályozó tervezése
- PLC programozás
Mik is azok a tippek-trükkök-tudnivalók, amik megkönnyítik az életed?
1. WinCC sajátosságok
- Az "Adatmentés start" gomb megnyomására a háttérben jelenik meg a fájlválasztó ablak
- Ha nem a csúszkával akarod kiválasztani a kézi beavatkozójelet, akkor az érték beírása után ENTER-t kell nyomni
- Érdemes használni a vonalzó funkciót
2. A szakasz tulajdonságainak vizsgálata
A mérés során megfigyelhetted, hogy a fűtés - érthető okokból - sokkal gyorsabb, mint a hűtés. Képzeld el azt a helyzetet, hogy a kapott munkapontod 2 V fűtés, 85 % hűtés, és így a tranzisztor 45 C°-ra állna be.
Te valamit mértél az előbb, ezért a tranzisztorod 65 C°-on van. Szeretnél minél gyorsabban beállni a munkapontra. Viszont a hűlés döglassú, fogy az időd. Mit csinálj?
Fogod magad, a fűtést leveszed nullára, a hűtést felnyomod maximumra. Így amilyen gyorsan csak lehet kihűl a rendszered. Amint alámentél a munkaponti hőmérsékletnek, fogod, beállítod a megfelelő fűtést és hűtést, és sokkal gyorsabban beállt a rendszer, mintha vártad volna, hogy lassan kihűljön.
Ez csak egy tipp, nem kell alkalmaznod.
Hasonló dolog a kivezérelhetőség vizsgálatához: Föltolod a fűtést maximumra, megvárod, amíg eléri a hőmérséklet a kb. 70 C°-ot (ugye 80 C°-nál vezérelődik túl), és aztán kezded el próbálgatni a kivezérelhetőség felső határát.
Itt jegyezném meg, hogy nagyobb hűtés mellett (95-100%) már nem minden mérőhelyen lehet túlvezérelni a hőmérsékletet, ne ess pánikba, ezt írd le a jegyzőkönyvbe.
3. Identifikálás
No, ettől szoktatok rettegni - Joggal. Mert ki emlékszik erre a hülye ARX-re, meg a Matlab függvények paraméterezésére? Senki!
De nem is várjuk el az ARX-et. A wikire még anno feltöltöttem a "gyors-egyszerű-kényelmes" identifikálási módszert.
Mire figyeljetek:
- Munkapont szerepe (idő és kezdeti hőmérséklet)
- Bemeneten levő ugrás mértéke (ha 2 V-os ugrást adsz, a rendszer válasza az ugrásválasz kétszerese!)
Amit érdemes tudni, és ez később elő is jöhet: Akik nálam voltak mérésen (főleg a félév vége felé), láthatták, hogy attól még, hogy mi a rendszert egytárolósként modelleztük, maga a rendszer nem az. Csak általában jól működik a modell. Hol tudjuk tetten érni, hogy a valóságunk nem egyezik a modellel? Például a szabályozásnál.
4. Szabályozás
Akik nálam voltak, azok a PI szabályozó korlátozással opciót kapták a mérésen. Mire kellett figyelni:
- Időállandó beállítása (a kiválasztógomb melletti gombra kellett nyomni, és a megjelenő felületen beírni az értéket, ENTER-t nyomni, majd BEZÁR. Nem MENTÉS meg BETÖLTÉS. Azokat nem használtuk)
- Körerősítés hangolása. Ugyebár - akik nálam voltak, azok láthatták is - elvben az egytárolós modellünket ha PI kompenzáltuk, akkor egytárolós tagot kapunk zárt hurokban is. Illetve a nyílt hurok tulajdonképpen egy integrátor lesz (próbáld ki papíron), aminek konstans a fázisa. Ebből következően elvben tetszőlegesen nagy erősítésünk lehetne.
- De itt érjük tetten, hogy nem egytárolós a tagunk, bár annak modelleztük: a zárt hurokban már lesz a rendszernek túllövése (pedig ugyebár egytárolós tagnak nem illik, hogy legyen). Szóval gyakorlatilag nem működik az, amit az elmélet mond, hogy tetszőleges körerősítésünk lehet, tehát kézzel kell hangolnunk. Az erősítés növelése a túllövés mértékét növeli, csökkentése csökkenti.
Amit el szoktatok rontani: Nem tudjátok, hogy azt, hogy a túllövés hány százalékos, azt mihez képest kell viszonyítani (egyébként az alapjel ugrás nagyságához). Illetve: itt már nem a kézi beavatkozójelet huzigáljátok, hanem az alapjelet. Továbbá nem világbajnok ötlet szobahőmérséklet alatti hőmérsékletet adni alapjelnek.
5. Programozás
Amit nem várunk el (legalábbis én biztosan nem, többi mérésvezető nevében inkább nem nyilatkozom): SCL szintaktika ismerete.
Mivel legyél NAGYJÁBÓL (nem bemagolni!) képben:
- LED-ek és a folyamat szereplőinek a nevei (mint változók, pl: Process.Y). A netes segédlet 10-es és 21-es oldalát ajánlom. (Nem az SCL-t, hanem a mérési útmutatót).
- A beavatkozójelnek (Process.U) tessék értéket adni. Ha szabályozol, akkor számítasz valamit, ha a hőmérséklet függvényében kell LED-eket gyújtogatni, akkor meg a kézi beavatkozójelet adod neki (Process.U_MAN).
- Ne feledd, az értékadást a := operátor jelenti.
Alaptanácsok
- Tudatosan, értelemmel csináld, amit csinálsz, akkor nem fogsz hasra esni. Ha tudod, mi miért van, sokkal könnyebb.
- Ha úgy nagyjából tudod, hogy milyen értékekre számíts, fogod tudni, ha elrontottad a mérést. Itt jegyzem meg, hogy a félév első 3-4 hetében még más értékeket mérhettetek identifikáláskor erősítésnek, mivel a szakaszunk más volt. Aztán elfüstölt pár darab, úgyhogy a tervezési hiba javítása után az erősítés fele akkora (kb 7 C°/V) lett. Ha nem az elvárt értékek jöttek ki, akkor se ess pánikba, ezt vedd a jegyzőkönyvbe. Ki tudja, lehet, hogy igazad van. Mérési eredményt nem hamisítunk. Persze gondold végig, jól csináltad-e a dolgokat.
- Akik hozzám jönnek mérni, azok tudják le otthon az aggodalmaskodást meg a félést, nem szoktam embert enni. Viszont nagyobb poén úgy mérned, hogy nem vagy ideges. És kisebb eséllyel rontod el.
Jó készülődést, kérdezzetek bátran, ha valami felmerül (főként ezzel a méréssel kapcsolatban).
Wacha Gábor