Magnetic Levitation Control
Magnetic Levitation Control (MagLev) je specializovan´ y software pro ˇr´ızen´ı procesu magnetick´e levitace na zaˇr´ızen´ı Magnetic Levitation Model CE152 vytvoˇren´em ˇ ızen´ı je zaloˇzeno nepˇresn´eho popisu situace pospoleˇcnost´ı HUMUSOFT. R´ moc´ı jazykovˇe formulovan´ ych fuzzy IF-THEN pravidel. To umoˇznuje navrhovat ˇr´ızen´ı procesu bez znalosti pˇresn´eho matematick´eho modelu a fyzik´aln´ıch konstant zaˇr´ızen´ı, pouze na zakladˇe hrub´e znalosti principu magnetick´e levitace. Tento software vyuˇz´ıv´ a v´ ypoˇcetn´ıho j´adra softwaru LFLC 2000 a b´aze pravidel vytvoˇren´e v LFLC 2000. Vstupy jsou br´any s PCI karty MF624 dod´avan´e s zaˇr´ızen´ım Magnetic Levitation Model CE152.
1
Princip procesu magnetick´ e levitace
Hlavn´ı ˇc´ ast zaˇr´ızen´ı pro magnetickou levitaci Kdyˇz c´ıvkou s j´ adrem a) proch´az´ı proud vznik´a elektromagnetick´e pole. Toto elektromagnetick´e pole p˚ usob´ı na ocelovou kuliˇcku b) a pokud je jeho s´ıla vˇetˇs´ı neˇz s´ıla graviˇcaˇcn´ı je kuliˇcka zved´ana k j´adru c´ıvky. Jestliˇze je kuliˇcka v pohybu vstupuje do procesu kinetick´a energie kuliˇcky p˚ usob´ıc´ı ve smˇeru jak´ ym se kuliˇcka pohybuje. Tento proces je velmi nestabiln´ı protoˇze jakmile pˇres´ahnou s´ıly p˚ usob´ıc´ı smˇerem vzh˚ uru kuliˇcka se zaˇcnˇe pohybovat smˇerem k c´ıvce, t´ım se dost´ av´ a do silnˇejˇs´ıho elektromagnetick´eho pole a zrychluje tak smˇerem k c´ıvce. Obdobnˇe zrychluje kuliˇcka smˇerem dol˚ u pˇrev´aˇz´ı-li s´ıla gravitace. Poloha 1
ˇ ızen´ı procesu se prov´ad´ı pomoc´ı ovl´ad´an´ı kuliˇcky je sn´ım´ ana senzorem c). R´ napˇet´ı pˇriv´ adˇen´eho do obvodu.
2
Fuzzy IF-THEN pravidla s jazykov´ ymi promˇ enn´ ymi
Pˇr´ıklad fuzzy IF-THEN pravidla s jazykov´ ymi promˇenn´ ymi: Slovn´ı z´ apis pravidla: IF pozice kuliˇcky je bl´ızko nad AND rychlost je mal´ a dol˚ u THEN napˇet´ı zv´yˇs´ıme o velmi m´ alo Tot´eˇz pravidlo symbolicky v LFLC 2000: IF E je +sm AND dE je -sm THEN dU je +ve sm V´ yrazy ”pozice kuliˇcky”, ”rychlost” a ”napˇet´ı” jsou promˇenn´e zat´ımco ”bl´ızko nad”, ”mal´ a dol˚ u” a ”zv´ yˇs´ıme o velmi m´alo” jsou v´ yrazy v´agnˇe charakterizuj´ıc´ı v´ yznam promˇenn´ ych. Tento zp˚ usob z´ apisu umoˇznuje vytvoˇrit b´azi pravidel i uˇzivateli jenˇz nem´a ˇz´ adn´e znalosti o fuzzy mnoˇzin´ach.
3
Pr´ ace se softwarem MagLev
Prvn´ım krokem je volba b´aze pravidel. M˚ uˇzete pouˇz´ıt testovac´ı b´azi ”test ML.rb”, nebo si v softwaru LFLC 2000 vytvoˇrit vlastn´ı. K naˇcten´ı b´aze slouˇz´ı tlaˇc´ıtko d) Load .... N´ asleduje zvolen´ı ˇcasov´e prodlevy mezi jednotliv´ ymi akˇcn´ımi z´asahy g). Maxim´ aln´ı prodleva mezi akˇcn´ımi z´asahy pro kterou lze tento proces regulovat je 1ms. V pˇr´ıpadˇe pouˇzit´ı nov´e b´aze je tˇreba spr´avnˇe nastavit kontexty veliˇcin f ) (Co pro v´ as znamenaj´ı v´ yrazy ”velk´ y”, ”mal´ y” v pˇr´ıpadˇe jednotliv´ ych promˇenn´ ych). Napˇr´ıklad pokud odchylku pro odchylku od poˇzadovan´e pozice E zad´ame kontext 3 znamen´ a to, ˇze vˇsechny hodnoty E ≥ 0.94 ∗ 3 budou br´any jako ”velk´e kladn´e” (+bi) a pro chov´an´ı v´ ystupu se zvol´ı pravidlo jenˇz m´a E = +bi, hodnoty v rozmez´ı 0.94 ∗ 3 > E > 0.44 ∗ 3 jiˇz nejsou zcela velk´e (stupeˇ n pravdivosti toho, ˇze E je velk´e v tomto intervalu kles´a k nule), a proto se pravidlo E = +bi m˚ uˇze uplatnit jen menˇs´ı silou, pro E ≤ 0.44 ∗ 3 nemaj´ı pravidla s hodnotou E = +bi ˇz´ adn´ y efekt. Je to d´ ano t´ım jak je definov´an v´ yraz +bi v softwaru LFLC 2000 kde najdete i ostatn´ı standardn´ı v´ yrazy. 2
Definov´ an´ı v´yrazu +bi v softwaru LFLC 2000 Tyto kontexty se samozˇrejmˇe daj´ı nastavit pˇr´ımo pˇri vytv´aˇren´ı b´aze pravidel v LFLC 2000, ale ponech´ an´ı standartn´ıho kontextu [0, 1] respektive [−1, 1] pro n´aˇs pˇr´ıpad (Vˇsechny tˇri promˇenn´e mohou dosahovat jak kladn´ ych tak z´aporn´ ych hodnot) a urˇcen´ım kontextu aˇz pro konkr´etn´ı aplikaci, umoˇzn´ıme ˇsirˇs´ı vyuˇzit´ı jedn´e b´ aze pravidel. Pozor! Protoˇze n´ aˇs akˇcn´ı z´ asah je zmˇena hodnoty napˇet´ı a ne jeho nastaven´ı na urˇcitou u ´roveˇ n, kontext dU je z´avisl´ y na ˇcasov´e prodlevˇe mezi jednotliv´ ymi z´asahy. Proto akˇcn´ı z´ asahy kter´e uvid´ıte v tabulce procesu k) maj´ı velikost jako by kontext pro dU byl vyn´ asoben ˇcasovou prodlevou v milisekund´ach. Pro n´aˇs testovac´ı pˇr´ıpad to znamen´ a 1.7 ∗ 0.4 = 0.68. Dalˇs´ım krokem je zvolen´ı poˇzadovan´e pozice kuliˇcky h). Pozor v tomto pˇr´ıpadˇe je nemoˇzn´e proces regulovat pokud zvol´ıte pozici pˇr´ıliˇs bl´ızko c´ıvce! Testovac´ı b´ aze pravidel je nastavena pro Setpoint v okol´ı hodnoty 2. Nyn´ı jiˇz zb´ yv´ a jen spustit proces magnetick´e levitace. Kliknˇete na tlaˇc´ıtko Get Ready i), tlaˇc´ıtko se zmˇen´ı na Start poˇckejte aˇz se ocelov´a kuliˇcka ust´al´ı pod c´ıvkou a kliknˇete na nˇej znovu, tlaˇc´ıtko se zmˇen´ı na Stop a ocelov´a kuliˇcka zaˇcne levitovat v poˇzadovan´e pozici. Pokud nejste s pr˚ ubˇehem spokojeni stisknˇene tlaˇc´ıtko Stop a prohl´ednˇete si pr˚ ubˇeh kdy se kuliˇcka zachovala jinak neˇz podle vaˇsich pˇredstav a jak´ a pravidla se zde uplatnila toto pravidlo pak upravte po3
dle potˇreby a spusˇtte proces znovu. Zlepˇsen´ı regulace m˚ uˇzete tak´e dos´ahnout drobnou zmˇenou nˇekter´eho kontextu.
4
Popis okna softwaru MagLev
okno MagLev pˇred spuˇstˇen´ım regulace • d) Tlaˇc´ıtko Load ... slouˇz´ı k naˇcten´ı b´aze pravidel • e) Tlaˇc´ıtko Context otev´ır´a okno kontext˚ u f) • f ) Moˇznost zmˇeny nastaven´ı kontext˚ u pro jednotliv´e promˇenn´e • g) Prodleva mezi jednotliv´ ymi akˇcn´ımi z´asahy • h) Moˇznost nastaven´ı poˇzadovan´e pozice ocelov´e kuliˇcky • i) Tlaˇc´ıtko Get Ready/Start/Stop spouˇst´ı a zastavuje proces 4
• j) Tlaˇc´ıtko Save As ... slouˇz´ı k uloˇzen´ı aktu´aln´ıho nastaven´ı vˇcetnˇe pr˚ ubˇehu posledn´ıho procesu
okno MagLev po ukonˇcen´ı procesu • k) Tabulka hodnot namˇeˇren´ ych a vypoˇc´ıtan´ ych bˇehem ˇr´ızen´ı procesu. Set Point: poˇzadovan´ a pozice kuliˇcky; y: aktu´aln´ı pozice kuliˇcky; E : odchylka od poˇzadovan´e pozice; dE : rychlost kuliˇcky (rozd´ıl pr˚ umˇeru pozice kuliˇcky v pˇredchoz´ıch ˇsesti mˇeˇren´ıch a pr˚ umˇeru pˇredchoz´ıch dvou mˇeˇren´ı vˇcetnˇe aktu´ aln´ıho); current: proud v c´ıvce; dU : zmˇena akˇcn´ıho z´asahu (o kolik m´ ame zv´ yˇsit nebo sn´ıˇzit napˇet´ı); U (action): velikost pˇriv´adˇen´eho napˇet´ı, ˇr´ıd´ıc´ı veliˇcina; Rule: ˇc´ıslo uplatnˇen´eho pravidla z b´aze; Context Factor : pouze v pˇr´ıpadˇe kdy doch´ az´ı ke zmˇenˇe kontextu v pr˚ ubˇehu procesu • l) Adresa aktu´ alnˇe pouˇz´ıvan´e b´aze pravidel • m) Kˇrivka proudu (modr´ a) • n) Kˇrivka napˇet´ı (ˇcerven´ a) 5
• o) Poˇzadovan´ a pozice kuliˇcky (zelen´a) • p) Pozice kuliˇcky v jednotliv´ ych mˇeˇren´ıch, odliˇsn´e barvy pˇredstavuj´ı r˚ uzn´a uplatnˇen´ a pravidla • q) Ukazatel kter´emu m´ıstu v grafu odpov´ıd´a zv´ yraznˇen´ y ˇr´adek hodnot v tabulce k) • r) Pˇribl´ıˇzen´ı grafu
6