Komplex, nagyméretű projektek I&C-tervezési szempontjai – 7.
Folyamatirányító eszközök és szolgáltatásaik – 2.
Befejezzük korábban megkezdett témánkat, amelyben azt tárgyaljuk, hogy az irányítástechnikai rendszereket szállító cégek hardvereszközeikkel és alkalmazói programgeneráló programjaikkal milyen szolgáltatásokat nyújtanak egy konkrét projekt megvalósításához.
Lefutóvezérlés blokkok
A lefutóvezérléssel olyan technológiai feladatokat lehet megoldani, amelyekben bizonyos technológiai állapotokat meghatározott hajtások indításának, nyitásának, zárásának adott sorrendben való végrehajtásával lehet elérni. Az irányítástechnikai lefutóvezérlés a digitális technikában megismert szekvenciális vezérlések egy speciális válfajának tekinthető. Építőelemei többé-kevésbé egységesek és kialakultak. Az IEC 61131 szabvány is tartalmaz javaslatokat a lefutóvezérlésre. A lefutóvezérlés a tervezőrendszerekben programcsomagként csatolórendszer-változókkal, eljárásokkal, grafikus bemenettel használható. A futó rendszerben az operátorállomásba standard grafikus megjelenítőkezelő építhető be. Általánosságban egy irányítástechnikai lefutóvezérlés háromfajta blokkot tartalmaz:
Az Init-blokk (fejblokk) az első, automatikus üzemben az indítás előtt ez aktív. Ezt a Transition- és a Step-blokkokból álló láncolatok követik, az utolsó blokknak azonban Transition-blokknak kell lenni, mert innen a program feladatának elvégzése után az Init-blokkra ugrik vissza.
Az ábrán látható lefutóvezérlés blokk az IEC 61131 szabvány specifikációjának felel meg. Az egyszerű, egyágas lefutnorm nevű lefutóvezérlés indul nevű init blokkja kezeli az „enable”, a „reset”, a „man” és az „aut” jeleket. SFC-hez az ablakban rendelhetők változók a programból érkező parancsok számára az „engedélyezve”, a „kézi”, az „automatika” és az „alapállapot” állapotokba történő kapcsolásra. Ezek az utasítások a standard kezelőablakból is kiadhatók. Az ablak Output variable részébe beírhatók azok a változók, amelyek az aktuális üzemállapotról programból lekérdezhetők:
-
enable: lefutóvezérlés engedélyezve van,
-
operation mode: lefutnaut 1=automatikus üzemmód, 0=kézi üzemmód,
-
TMO időtúllépés státusa: lefurnstat 1=időhiba, nem futott le időn belül a vezérlés.
Az Init-blokk után a Transition- (továbblépést vizsgáló) -blokk helyezkedik el (tr0001), amelybe beírható a továbblépési feltétel. Ha a továbblépési feltétel teljesült, akkor a „lep1”nevű stepmodul lesz aktív. Ez pl. a szelepnek vagy a motornak indulásra vagy nyitásra ad ki parancsot. Ha teljesült a továbblépés feltétele, amely a tr0102-jelű Transition-blokkba irható be, akkor a „lep1” passzív lesz, a „lep2” pedig aktivizálódik, amely kiadja a lépéshez tartozó technológiai parancsot. A lépésblokkokban várakozási idő is definiálható, ha a technológia az ehhez a lépéshez tartozó technológiai állapotban pl. minimum 20 s várakozást igényel. Jelen példánkban a „tr0400”-jelű Transition-blokk teljesülése esetén a 04-jelű lépésről a 00-s „init”-lépésre ugrik, és vár az esetleges újabb indítóparancsra.
Egyszerű, egyágas lefutóvezérlés
Felhasználói (user) blokkok készítése
Gyakran előfordul, hogy a megoldandó feladatban többször találhatók ismétlődő, alkalmazásspecifikus feladatok, amelyekre nincs kész, előregyártott szoftverblokk. Ilyenkor célszerű megírni a funkciót felhasználói (user) blokk formájában. Minden szoftver funkcióblokk, ennek következtében a felhasználói blokk is, az alábbi részekből áll:
-
az adatbázisszegmens definíciója, amely a szoftverobjektum be- és kimenőjeleit, belső változóit definiálja. A konkrét objektumhoz egy adott azonosítójú (KKS) adatbázisszegmens készül, az itt szereplő jelekkel dolgozik a kódrész.
-
kódrész, amelyet az adott adatbázisszegmens hív meg, és a szegmens jelein futó algoritmussal az adott funkciót valósítja meg.
-
a képernyőkezelő-felület (face plate) definíciója, amelyet szintén az adott adatbázisszegmens azonosít.
Folytatjuk!
Szerző: Dr. Nagy Dezső