. .
4.8. ábra: Példa egy IL nyelven írt funkcióblokkra
A fenti funkcióblokk a következő módon hívható meg IL (4.9. ábra), ST (4.10. ábra) és FBD (4.11. ábra) nyelveken:
4.9. ábra: Példa funkcióblokk-hívásra IL nyelven
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
10/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0
4.10. ábra: Példa funkcióblokk-hívásra ST nyelven
4.11. ábra: Példa funkcióblokk-hívásra FBD nyelven
4.4.3 Program A programok olyan, globálisan értelmezett meghívható egységek, melyek megőrzik a változóik értékét a következő futásig. Egy programnak nem léteznek példányai, bármely POU-ból meghívva ugyanazok a változó-értékek láthatóak. Függvényből nem hívható meg program, de programból hívható bármely POU típus.
4.12. ábra: Példa egy IL nyelven írt programra
A 4.12. ábrán látható egy rövid program, mely minden híváskor hozzáad egyet PAR értékéhez. A program a következőképpen hívható meg: IL nyelven:
ST nyelven:
FBD nyelven:
4.4.4 A PLC_PRG program A PLC_PRG egy olyan program, melynek létrehozását az easy Soft CoDeSys / XSoft egy új projekt készítésekor automatikusan felajánlja. Ezt az alapbeállítást nem szabad megváltoztatni, mert egytaszkos konfiguráció esetén ez lesz a főprogram. A PLC_PRG egy ciklus során egyszer fut le, és c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
11/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0 ebből kell meghívni a végrehajtandó alprogramokat, POU-kat. (Többtaszkos konfiguráció esetén más a helyzet, ott nem alkalmazható a PLC_PRG – ld. bővebben az 5. pont alatt.)
4.4.5 Akció (Action) Akció definiálható programhoz vagy funkcióblokkhoz. Lényege, hogy más programozási nyelvben lehet megírni, de ugyanazokat az adatokat, illetve be-, kimeneti és lokális változókat használja, mint az eredeti program. Az akciónak nevet kell adni, és a következőképpen lehet rá hivatkozni: <programnév>.
a) c) d) b) e)
4.13. ábra: Példa FB-hez tartozó akcióra és az akció hívására
A 4.13.a) ábrán egy fel/le számlálót megvalósító funkcióblokk látható. A „Reset” nevű akció (b) ábra) meghívása nullázza a számlálót. Az akció hívása IL, ST és FBD nyelven a c), d) és e) ábrákon látható, a deklarációs részük megegyezik. (A példa csak az akció hívását mutatja, a számláló indításához a „Counter” FB-t is meg kell hívni.)
4.5 Könyvtárak kezelése (Library Manager) A projekthez számos könyvtár rendelhető, melyekben lévő POU-k, adattípusok és globális változók felhasználhatóak a projekt elkészítéséhez, hasonlóan, mint a programozó által definiált elemek. A „standard.lib” és a „util.lib” könyvtárak mindig rendelkezésre állnak, ezek részei az easy Soft CoDeSys / XSoft-nak. Ezekben megtalálhatóak az IEC61131-3 szerinti szabványos POU-k (időzítők, számlálók, szabályozók, matematikai funkciók, stb.), de hasonló könyvtárak alkalmazhatóak a PLC-vel való kommunikációhoz is. (A standard.lib és a util.lib könyvtárak tartalmáról részletes leírás található a h1437g.pdf /angolul/ vagy a h1437d.pdf /németül/ easy Soft CoDeSys / XSoft – dokumentáció „D” függelékében: „The CoDeSys Libraries”.)
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
12/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0 A „Window -> Library Manager” menüponttal hívható elő a könyvtárkezelő ablak. Könyvtárat csatolni a projekthez ezután az „Insert -> Additional Library” választásával lehet. Ekkor meg kell nyitni a keresett könyvtárat, amelyből a kívánt elemek felhasználhatóak a projektben.
4.13. ábra: Library Manager
Ha egy elkészült és leellenőrzött, hibátlan projekt elemeit később fel szeretné használni egy másik projektben, akkor elmentheti a projektet *.lib fájlként a „File -> Save as” alatt, a megfelelő fájltípus kiválasztásával (pl. „Internal library (*.lib)” ).
4.14. ábra: A projekt elmenthető *.lib kiterjesztéssel
Ezen kívül lehetőség van a projekt kiválasztott elemeinek exportálására, így például egyes POU-kat egyszerűen felhasználhatóvá lehet tenni más projekt számára. A „Project -> Export” pont segítségével kiválaszthatóak az exportálni kívánt elemek, melyek egy *.exp kiterjesztésű fájlba lesznek letárolva. Importálásuk a „Project -> Import” ponttal lehetséges.
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
13/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0
5
Taszk konfiguráció
Taszkok konfigurálásával lehetőség nyílik a projekt különböző részei között prioritási sorrend felállítására, illetve különböző feladatok feltételektől függő végrehajtására. A taszk konfigurációs felület a „Resources” lapon a „Task configuration”-ra kattintva érhető el (XC100-at kivéve). Az „Insert -> Append Task”-ra vagy az „Insert -> Insert Task”-ra kattintás után definiálhatóak a különböző ciklusidővel végrehajtandó ciklikus- és az eseményvezérelt taszkok, melyek mind egyedi prioritással rendelkeznek („Priority” mezőben állítható be). A kisebb szám jelenti a magasabb prioritási szintet, az ilyen taszk megszakíthatja az alacsonyabb prioritású futását. Ciklikusan futó taszk („cyclic” bejelölve) ciklusideje az „Interval” mezőben adható meg. Eseményvezérelt taszk esetén („triggered by event” van bejelölve) az indítást kiváltó eseményt globálisan kell megadni (pl. egy változó felfutó élére történik az indítás). A feltétel az „Event” mezőbe írható be, vagy a […] gombra kattintva listából választható ki. De rendszereseményekhez (start, stop, interrupt, stb.) is köthetőek programhívások: „System events” taszk. A watchdog funkció aktiválása esetén („Activate watchdog”), ha a taszk a megadott időn belül nem fejezi be a futását, az XControl HALT állapotba kerül.
5.1. ábra: Taszk konfiguráció
A taszk létrehozása után a taszkhoz hozzárendelhetőek a programhívások: ehhez válassza az „Insert -> Append Program Call” vagy az „Insert -> Insert Program Call” menüpontot, majd a Program Call mezőbe írja be a program nevét (a […] gombra kattintva listából választhat a projektben szereplő programok közül). Figyelem! A taszk konfiguráció kötelezően helyettesíti a standard PLC_PRG nevű főprogramot. Tehát vagy a PLC_PRG vagy a taszk konfiguráció érvényes, azaz együtt a kettő nem létezhet egy projekten belül! c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
14/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0
6
Tesztelés, hibakeresés és üzembe helyezés
Az easy Soft CoDeSys / XSoft-ban számos funkció segíti a programok tesztelését, ezen kívül beépített szimulátorral is rendelkezik, mely segítségével PLC csatlakoztatása nélkül is futtathatóak a megírt programok.
6.1 Általános online funkciók Első lépésként a forrásnyelvi programot le kell fordítani gépi kódra. Ezt a „Project -> Build” (F11) vagy a „Project -> Rebuild all” utasítással lehet megtenni (előbbi esetben csak a változtatások lesznek lefordítva, utóbbi esetben a teljes projekt). De ha a programot rögtön tesztelni is szeretné, érdemes az „Online -> Login” utasítást választani, mely magában foglalja a fordítást is. Ehhez azonban el kell dönteni, hogy szimulálni szeretné-e a programot („Online -> Simulation Mode” legyen bejelölve), vagy pedig a célhardverre letölteni. Utóbbihoz a PLC konfigurációt el kell végezni (ld. a 6.5 pont alatt) és a kommunikációs paramétereket be kell állítani („Online -> Communication Parameters”). A fordítás során keletkezett figyelmeztetések, hibaüzenetek az üzenetablakban követhetőek nyomon. A hibaüzenetre való dupla kattintással lehet a programban a hiba helyére ugrani. Az F4 megnyomásával a kurzor a lista következő hibaüzenetére ugrik. Ha nem kapott hibaüzenetet, akkor a projektet sikerült lefordítani és áttölteni a kiválasztott hardverre vagy az easy Soft CoDeSys / XSoft szimulációjába.
üzenetablak
6.1. ábra: A program online módban
Látható, hogy online módban az ablak felső (deklarációs) részében, valamint a középső részben, a programtörzs mellett megjelentek a változók aktuális értékei. Ezután a program tényleges futtatása az „Online -> Run” (F5) paranccsal indítható.
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
15/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0
6.1.1 Monitorozás, változók értékének módosítása A változók aktuális értékei nemcsak nyomonkövethetőek, hanem a változóra való dupla kattintással módosíthatóak is: BOOL típusú változóra kattintva az értéke a negáltjára változik, más változók esetén pedig egy párbeszédablak jelenik meg, melyben megadható az új érték. Ekkor megjelenik a változó új értéke (jobbra) a régi mellett (pl.: a=0 <:=34>). Ezután az „Online -> Write Values” (Ctrl+F7) paranccsal egy programfutási ciklus erejéig a folyamatba letölthetőek a beállított új értékek.
Érték beállítás dupla kattintással a változóra
„Run” ikon
6.2. ábra: Monitorozás, változó értékének módosítása
Vigyázat! Az F7 használata („Online -> Force Values”) az adott változó állandósult beállítását okozza (forszírozás), ezért ez a funkció alapvetően csak szimulációs módban ajánlott. A forszírozás kikapcsolása az „Online -> Release Force” (Shift+F7) paranccsal lehetséges. Az „Online -> Reset” parancs a kezdeti (inicializált) értékekre állítja vissza a változókat.
6.1.2 Töréspont beszúrása, lépésenkénti programvégrehajtás A sort jelölő szürke számra való egyszerű kattintás (vagy az „Online -> Toggle Breakpoint” (F9) választása a kurzor aktuális pozíciója szerinti sorban) töréspontot helyez el a programban, azaz az XControl megállítja a program végrehajtását, ha az adott sorhoz ér. Ez a funkció használható, ha a végrehajtás során adott pontban ellenőrizni kívánja a változók aktuális állapotát. A program indítható lépésenként („Online -> Step in” (F8) vagy „Step over”(F10) ) vagy egyedi ciklusonként („Online -> Single Cycle”). Lépésenkénti végrehajtásnál, ha az adott utasítás egy POU meghívását jelenti, akkor a „Step in” végrehajtja az elágazást és megáll, míg a „Step over” nemcsak a hívást, hanem a teljes POU-t is végrehajtja ebben a lépésben. Vigyázat! A töréspontok szintén megállítják a programfutást az XControl-on belül is, nemcsak a szimulációs módban! Az összes változó befagyasztja az aktuális állapotát, sőt a fizikai kimeneteket is, amely adott esetben veszélyhelyzetet jelenthet mind a gépre, mind az emberi egészségre. Az „Online -> Display Flow Control” funkció bekapcsolása esetén minden, az előző PLC ciklusban végrehajtott programsor megjelölésre kerül (a sort jelölő szám zöldre vált). Ezen kívül további értékmezők jelennek meg, melyek segítik az információáramlás nyomon követését: IL nyelvű programban minden sor elején megjelenik az akkumulátor értéke, FBD és LD hálózatokban pedig az összeköttetéseken aktuálisan továbbított érték válik láthatóvá. c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
16/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0 Az „Online -> Sourcecode download” utasítás segítségével letölthető a PLC-be a forrásnyelvi program (nem tévesztendő össze a lefordított, gépi kódú programmal). Ezt a funkciót mindenképpen érdemes igénybe venni, ha olyan projektről van szó, amelynél valószínűsíthető, hogy helyszíni programmódosításra sor fog kerülni a jövőben (a projektek többsége ilyen). A funkcióval kapcsolatos beállítások a „Project -> Options -> Source download” pont alatt érhetőek el. Az „Online -> Create boot project” menüpont segítségével olyan projektet lehet létrehozni a PLC-n, amely újraindításkor automatikusan betöltődik. Az online módban futó programok végrehajtását az „Online -> Stop” utasítással lehet megszakítani, offline módba visszatérni pedig az „Online -> Logout” paranccsal lehet.
6.2 Watch and Recipe Manager (Változó monitor és receptúra kezelés) A változók figyelésének egy másik módját biztosítja a „Watch- and Recipe Manager” (mely a „Resources” lapon érhető el). A megjelenő ablak bal oldalán a változólisták nevei, jobb oldalán az adott listában lévő változók láthatóak. Új változólistát az „Insert -> New Watch List” paranccsal hozhat létre, majd a beviteli segéd ablak (F2) használatával egyszerűen összegyűjtheti azokat a változókat a projekt különböző részeiből, melyeket egyszerre szeretne követni. Online módban a nyomkövetés az „Extras -> Monitoring active” bekapcsolásával aktiválható. Ezután a 6.1.1-es fejezetben leírtakhoz hasonlóan történhet a változók monitorozása, illetve értékük módosítása. A különböző listák egyedi nevek alatt elmenthetőek („Extras -> Save Watch List”), és a későbbiek során egyszerűen visszatölthetőek („Extras -> Load Watch List”).
Változók a projekt különböző részeiből
6.3. ábra: Watch and Recipe Manager
Vigyázat! Az F7 használata az adott változó állandósult beállítását okozza (forszírozás)!
6.3 Sampling Trace (Mintavételes felvétel) A „Sampling Trace” lehetőséget nyújt arra, hogy a változók kiválasztott készletét nyomon kövesse és értéküket adott mintavételezés mellett egy gyűrűs tárolóba letárolja. Ez a funkció jól használható véletlenszerű hibaesemények keresésekor és egyszerűsítheti a dokumentálási feladatokat is. A hozzá tartozó kezelőablak a „Resources -> Sampling Trace” alól hívható elő (amennyiben a „Target Settings” pontnál a „General” lapon be van jelölve a „Trace” lehetőség.). c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
17/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0 Ezután a konfiguráláshoz válassza az „Extras -> Trace Configuration” menüpontot, ahol egyszerűen megadhatóak a mintavételezés jellemzői és a változók (ld. 6.4. ábra). A puffertöltés leállításának feltételei: - trigger változó neve - trigger pozíciója (a felvett minták hány %-a legyen a trigger előtt) - trigger szint - fel/lefutó él figyelés - minták száma Mintavételezési idő (ha 0, akkor minden ciklusban történik felvétel) A felvételre kiválasztott változók
6.4. ábra: Trace Configuration párbeszédablak
A Sampling Trace elindítása az „Extras -> Start Trace” paranccsal lehetséges (és ne felejtse el kiadni a „Login” és a „Run” parancsokat a program futtatásához), a feladat elvégzése után pedig az „Extras -> Save trace values” pont segítségével fájlba menthetőek a változó értékek és a konfigurációs beállítások.
6.5. ábra: Sampling Trace (mintavételes felvétel)
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
18/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0
6.4 Log (Napló) A Log funkció az online szakaszok alatt végrehajtott műveletek időrendi sorrendben történő rögzítését teszi lehetővé. Erre a célra egy <projektnév>.log formátumú fájlt hoz létre, melyből később külső log fájlba menthetőek a szükséges információk („Log -> Save” menüpont). A funkció a „Window -> Log” paranccsal vagy a „Resources” lapon a „Log” kiválasztásával hívható elő. Ahhoz, hogy a regisztrálás elkezdődhessen, előbb aktiválni kell. Ehhez a „Project -> Options -> Log” lapon jelölje be az „Activate logging” mezőt. Itt más jellemzők is megadhatóak, például a maximálisan eltárolható online szakaszok száma („Online sessions”): ha a regisztrálás során ezt a számot túllépjük, az új adatok mindig a legrégebbieket írják felül. Ezután indítható az online szakasz („Online -> Login”).
A kijelölt művelet részletei 6.6. ábra: Log (naplózási) funkció
6.5 Alarm konfiguráció Az easy Soft CoDeSys / XSoft-ba integrált alarm-rendszer segítségével észlelhetők, tárolhatók és megjeleníthetőek a folyamatváltozók kritikus állapotai. A konfiguráláshoz válassza ki a „Resources” lapon az „Alarm Configuration” pontot. Itt lehetőség van alarm osztályok („Alarm classes”) és alarm csoportok („Alarm groups”) definiálására. Alarm osztályok definiálásánál egyes alarm-kritériumok paraméterei adhatóak meg, míg az alarm csoportok definiálásával a riasztási események strukturálása oldható meg. Az alarm események megjelenítésére a vizualizációs szerkesztőben az „Alarm table” elem használatával van lehetőség. Az így létrehozott táblázatban az alarm események figyelemmel kísérhetők és nyugtázhatók.
6.5.1 Alarm osztályok (Alarm classes) Az alarm osztályok segítségével konkrét alarm kritériumokat lehet definiálni. Kiválasztható a nyugtázás módja, beállítható automatikus intézkedés riasztás esetére, valamint az alarm táblázatban megjelenítendő színek, illetve kép is megadható. Ezek az alarm osztályok az alarm konfigurációban c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
19/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0 globálisan értelmezettek, a csoportok létrehozásánál elérhetőek. A beállítások elvégzéséhez válassza ki az „Alarm classes” pontot a konfigurációs fán. Ekkor a jobb oldalon megjelenő ablakban az „Add” gombbal lehet új kritériumot felvenni a listába. Minden elemhez (a megfelelő mezőre való kattintással) megadható egy név, megjegyzés, valamint a nyugtázás módja. Ez utóbbinál a következő lehetőségek közül lehet választani: NO_ACK (nem igényel nyugtázást a felhasználó részéről), ACK_INTO (bejövő alarm feltételt kell nyugtáznia a felhasználónak), ACK_OUTOF (lezajlott alarm feltételt kell nyugtázni) vagy ACK_ALL („into” és „outof” feltételt is nyugtázni kell). Ezután különböző eseményeket lehet az alarmokhoz rendelni: mentés, nyomtatás, üzenetküldés, változó értékének módosítása, vagy egy végrehajtható fájl elindítása. Az „Assigned actions” mezőbe áthelyezett események lesznek hozzárendelve az adott alarmhoz. Minden eseményhez definiálni kell, hogy milyen típusú alarm esetén legyen végrehajtva. Ehhez az „Events for action” lehetőségek közül lehet választani: INTO (fellépő, és még fennálló alarm), ACK (nyugtázott alarm), OUTOF (már lezajlott alarm esemény). Végül, a „Colors/Bitmaps for class
6.7. ábra: Alarm osztályok (classes) definiálása
6.5.2 Alarm csoportok (Alarm groups) Az alarmok hierarchikus struktúrájú csoportokba rendezhetőek. Az egy csoportban lévő alarmok több közös paraméterrel rendelkeznek: deaktiváló változójuk, valamint a mentési beállításaik is azonosak. Minden alarmot hozzá kell rendelni egy csoporthoz, adott esetben egy csoport egyetlen alarmot is tartalmazhat. Új csoportot vagy csoport-könyvtárat az „Insert -> Append Subelement” vagy az „Insert Element” menüpont alatt az „Alarm group…”-ra vagy a „Folder…”-re kattintva lehet beszúrni, majd az elemre kattintva a jobb oldalon megjelenő ablakban állíthatóak be a hozzá tartozó paraméterek. c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
20/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0 A csoportra vonatkozó rövid leírás a „Description” mezőbe írható, míg az alarmokat deaktiváló változó a „Deactivation variable” mezőben adható meg. Ennek a bool típusú változónak a felfutó élére a csoport összes változója deaktiválódik, lefutó élére pedig újra aktívvá válik. A csoporthoz az „Add” gombbal lehet új elemet hozzáadni. Ekkor a listában az alarm következő tulajdonságait lehet megadni: „Expression” (erre a kifejezésre vagy változóra vonatkozik az alarm); „Type” (az alarm típusa listából választható ki); „Class” (itt a már definiált alarm osztályok közül lehet választani); „Priority” (0 és 152 közötti prioritás választható, ahol 0 jelenti a legmagasabb prioritási szintet); „Message” (alarm esetén megjelenő szöveg, amit ilyenkor külön nyugtázni kell); „Deactivation” (az itt megadott változó felfutó éle esetén deaktiválja az alarmot – de ezt a fenti „Deactivation variable” mezőben megadott változó felülírja).
6.8. ábra: Alarm csoportok (groups) definiálása
Az alarm csoporthoz tartozó mentési beállítások az „Alarm saving” fülre kattintva érhetőek el. Minden alarm csoporthoz definiálható egy fájl, amelybe az alarm események eltárolásra kerülnek. Ez viszont csak azoknál az alarm osztályoknál valósul meg, amelyekhez hozzá van rendelve a „Save” esemény. (!)
6.9. ábra: Alarm-mentési beállítások
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
21/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0
6.6 Target settings (célhardver-beállítások) A célhardverrel kapcsolatos beállítások a „Resources” lapon a „Target settings” pont kiválasztásával érhetőek el. (Új projekt létrehozásakor ugyanez a felület jelenik meg.) A „Configuration” mezőben listából kell kiválasztani azt a központi egységet, amelyre a projektet el szeretné készíteni. Amennyiben a keresett hardver nem szerepel a listában, az azt jelenti, hogy a hozzá tartozó „Target Support Package”, tehát az adott hardver információit tartalmazó fájlok nincsenek telepítve. Ennek telepítéséhez használja az InstallTarget alkalmazást, a „3.1.1 Új célhardver (target) hozzáadása” című fejezetben leírtaknak megfelelően.
6.10. ábra: Target Settings ablak
A hardver kiválasztása után a fülekre való kattintással beállíthatóak az eszköz jellemzői: platformbeállítások („Target Platform”), memóriával kapcsolatos jellemzők („Memory Layout”), általános („General”), hálózati („Network functionality”) és megjelenítési („Visualisation”) beállítások. A célhardver jellemzőinek beállításáról (hardvertípusonként) részletes leírás található a h1437g.pdf /angolul/ vagy a h1437d.pdf /németül/ easy Soft CoDeSys / XSoft – dokumentáció „H” függelékében: „Target Settings in Detail”.
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
22/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0
6.7 PLC konfiguráció A PLC konfigurációban a programozó leírja az automatizálási rendszer hardver elemeit, beleértve a támogatott terepi buszrendszerekbe bekötött decentralizált komponenseket is. Ehhez válassza a „Resources” lapon a „PLC Configuration” pontot. Ezután lépésről lépésre konfigurálhatja a hardver felépítés összes elemét, ideértve a lokális I/O-kat, a CANopen és a Profibus DP hálózatokra csatolt decentrális I/O-kat, az összes kommunikációs paramétert, az Ethernettel együtt. A konfigurátor az I/O modulokhoz a fizikai címeket az easy Soft CoDeSys / XSoft-ba történő beszúrás sorrendjében rendeli hozzá. Új elemet az „Insert -> Append Subelement” vagy az „Insert Element” menüpont alatti listából kiválasztva lehet beszúrni, majd az elemre kattintva a jobb oldalon megjelenő ablakban állíthatóak be a hozzá tartozó paraméterek.
6.11. ábra: A hardver felépítés konfigurálása
6.7.1 PLC konfiguráció az IOassistant használatával Az automatizálási rendszer konfigurálását elvégezhetjük az IOassistant alkalmazás segítségével is, ahol például a konfiguráció grafikus megjelenítésére is lehetőség van. Amennyiben telepítve van az IOassistant szoftver, akkor az az easy Soft-ból egyszerűen elérhető. Az easy Soft-ban először adjunk hozzá a PLC-hez egy CanMastert („Insert -> Append Subelement -> CanMatser…”), majd az alá válasszunk egy Gateway-t (ismét az „Append Subelement” utasítással). Ekkor a 6.12. ábrán látható állapot áll elő, ahonnan megnyitható az IOassistant. c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
23/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0
IOassistant megnyitása
6.12. ábra: Az IOassistant megnyitása easy Soft-ból
Ezután az IOassistant-ben hasonló módon történik a modulok hozzáadása („Edit -> Add Module…”) és a paraméterek beállítása, végül pedig a „File -> Close” utasítással lehet visszatérni az easy Soft-ba, ahol láthatóak lesznek a végrehajtott változtatások.
6.13. ábra: az IOassistant alkalmazás
Ahhoz viszont, hogy az XSoft-ban is felhasználható legyen az IOassistant-ben összeállított konfiguráció, azt „.eds” formátumban kell elmenteni („Station -> Create EDS file…”) a „C:\Program Files\Moeller Software\XSoft V233\XSoft V2.3.3\Library\PLCConf” könyvtárba, ezután pedig az XSoft-ban ugyanúgy kiválasztható lesz a hozzáadható elemek listájából, mint a többi hardver-elem. (Ebben az esetben a Start menü -> Programok -> Moeller Software -> IOassistant -> IOassistant ponttal indítható el az IOassistant, mert az XSoft-ból nem érhető el közvetlenül.) c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
24/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0
7
Vizualizáció
Először is tesztelési és kommunikációs célokra, de a gépek és rendszerek megjelenítésére is kiválóan alkalmas az easy Soft CoDeSys / XSoft-ba beépített vizualizációs alkalmazás.
Vizualizációra kapcsolás
7.1. ábra: A vizualizációs szerkesztő
A vizualizációs szerkesztőt a „Visualizations” lapról érhetjük el. Új vizualizációt a „Project -> Object ->Add” menüponttal lehet létrehozni. Ezután különböző megjelenítési objektumok közül választhatunk a kép összeállításához. Természetesen külső fájlból is be lehet illeszteni más szerkesztőben elkészült képet, illetve grafikát vagy fényképet. Az elemek ezután egyszerűen elhelyezhetőek, pozícionálhatóak a már ismert szerkesztő szoftverekhez hasonlóan.
7.2. ábra: Az objektum tulajdonságainak beállítása
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
25/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0 Az objektumra való dupla kattintással állíthatóak be a tulajdonságok. Definiálható felirat, grafika, változó hozzárendelés a kiválasztott objektumhoz, és további jellemzők is megadhatóak. Nyomógomb definiálásakor lényegesek az „Input” kategória beállításai. Itt deklarálhatja a nyomógombhoz hozzárendelt változó viselkedését vagy bármely más műveletet, melyet a gombra való kattintással kezdeményez. „Toggle variable” jelentése: amint a gombra kattint, a társított bool változó állapotát váltja át állandósult módon, hasonlóan a kapcsolókhoz. „Tap variable” esetén a gomb nyomógombszerűen működik, azaz csak addig ad jelet, amíg a gombot működteti.
7.3. ábra: Az „Input” kategória beállításai
A változó hozzárendelés legegyszerűbben a beviteli segéddel (F2) valósítható meg. Segítségével kiválasztható egy, a projektben már definiált változó, ezen kívül gondoskodik a helyes megnevezésről és a korrekt útvonal betartásáról is. A megjelenítő elemek konfigurálásánál alapvetően három tulajdonságnak van speciális jelentősége. Először az elemre való dupla kattintással a „Variables” kategóriának. Itt beállítható, hogy az elem hogyan reagáljon a társított bool változó állapotának vagy a kifejezés eredményének megváltozására.
7.4. ábra: A „Variables” kategória beállításai
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
26/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0 Amennyiben a „Variables -> Change color” mezőben megadott változó értéke FALSE, akkor a „Colors -> Color” kategóriában megadott színnel jeleníti meg az objektumot. Ha a változó állapota TRUE, az „Alarm color” alatt megadott színbeállítás fog érvényesülni. A „Variables -> Invisible” (láthatatlan) mezőben megadott változó állapotától függően pedig az objektum megjelenik (FALSE) vagy eltűnik (TRUE).
7.5. ábra: A „Colors” kategória beállításai
Ha pedig egy változó értékét akarjuk kiíratni, a „Variables -> Textdisplay” sorban kell megadni a változó nevét, és a „Text” pont alatt a „Content” mezőben pedig a feliratot, valamint egy „%s” formátumú utalást a változóra. Ha végül újra futtatja a programot az „Online -> Login” és „Online -> Run” parancsokkal a vezérlőn vagy a szimulációban, akkor tesztelheti és megjelenítheti a program műveleteit egyszerű egérkattintásokkal. Így megfigyelheti a program változóinak állapotait közvetlenül a vizualizációval egybekötve is.
7.6. ábra: Online módban a vizualizáció és a változók állapota
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
27/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0
8
Egy egyszerű példa
A következőkben egy egyszerű gyakorlópéldát mutatunk be, mely segítségével megismerhetőek az easy Soft CoDeSys / XSoft alapfunkciói: projekt létrehozása, változók deklarálása, funkcióblokk hívás és példánydeklarálás (IL és CFC nyelven), könyvtár-hozzárendelés a projekthez, vizualizáció készítés és tesztelés. A példa egy toilet-vezérlés, ahol a következő feladatokat kell megoldani: a kapcsoló felkapcsolása esetén a lámpa azonnal gyulladjon meg, a ventilátor viszont csak 3s múlva induljon el. A kapcsoló lekapcsolásakor a világítás is azonnal kapcsoljon le, a ventilátor pedig 5s múlva álljon le. Ha ezt sikerült megoldani, akkor helyezzünk el egy számlálót, mely az olyan látogatásokat regisztrálja, melyeknél a ventilátor is elindult. Ezután készítsünk vizualizációt, mely segítségével a működés nyomon követhető. A programot CFC nyelven is érdemes elkészíteni, így sokkal átláthatóbb a működése, mint IL nyelven. 1. lépés Hozzunk létre egy projektet a „File -> New”-ra kattintva. Mivel most csak szimulációt készítünk, válasszuk a „None” pontot a központi egység kiválasztásánál. A főprogram nyelve pedig legyen IL. Most elmenthetjük a projektet („File -> Save”).
8.1. ábra: A programozási nyelv kiválasztása
2. lépés Rendeljük hozzá a projekthez a Standard.lib könyvtárat, mivel a késleltetők és a számláló miatt szükségünk lesz rá. A „Window -> Library Manager” menüponttal hívható elő a könyvtárkezelő ablak. Könyvtárat csatolni a projekthez ezután az „Insert -> Additional Library” választásával lehet. Ekkor meg kell nyitni a keresett könyvtárat, amelyből a kívánt elemek felhasználhatóak a programírás során.
8.2. ábra: Library Manager
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
28/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0 3. lépés Készítsük el a programot. A változókon kívül a standard könyvtárból meghívandó funkcióblokkok példányait is deklarálni kell. A program írása közben, ha a szerkesztő még nem ismert névvel vagy azonosítóval találkozik, akkor egy változó deklaráló ablak jelenik meg, rákérdezve a változó paramétereire. Ez a változó definiáló ablak a Shift+F2 billentyűk lenyomásával bármikor előhívható.
8.3. ábra: Változó deklarálására szolgáló előugró ablak
A programban vegyük észre, hogy a TON (bekapcsolás késleltető) kimenete a TOF (kikapcsolás késleltető) bemenetére csatlakozik.
8.4. ábra: A megírt program
A program működése ezután egyszerűen tesztelhető. Válassza az „Online -> Login”, majd az „Online -> Run” parancsot. A változóra való dupla kattintással módosítható a változók értéke (a BOOL típusú változó ilyenkor a negáltjára vált). Ekkor megjelenik az új érték (jobbra) a régi mellett, majd az „Online -> Write Values” (Ctrl+F7) paranccsal egy programfutási ciklus erejéig letölthető a beállított új érték.
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
29/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0 4. lépés Készítsünk vizualizációt a programhoz. A vizualizációs szerkesztőt a „Visualizations” lapról érhetjük el. Új vizualizációt a „Project -> Object ->Add” menüponttal lehet létrehozni. Ezután különböző megjelenítési objektumok közül választhatunk a kép összeállításához. Az elemek egyszerűen elhelyezhetőek, pozícionálhatóak a munkaterületen. Az objektumra való dupla kattintással állíthatóak be a tulajdonságok. Itt adható meg a felirat és a változó hozzárendelés is a kiválasztott objektumhoz. A kapcsoló definiálásakor lényegesek az „Input” kategória beállításai. Itt deklarálható a hozzárendelt változó viselkedése. A „Toggle variable” jelenti a kapcsoló típusú működést (a kapcsolóra kattintáskor, a társított bool változó állapotát váltja át állandósult módon).
8.5. ábra: Az „Input” kategória beállításai
A változó hozzárendelés legegyszerűbben a beviteli segéddel (F2) valósítható meg. Segítségével kiválasztható egy, a projektben már definiált változó, ezen kívül gondoskodik a helyes megnevezésről és a korrekt útvonal betartásáról is.
8.6. ábra: Változó hozzárendelés a beviteli segéddel
A megjelenítő elemek konfigurálásánál a „Variables” kategóriának van fontos szerepe. Itt beállítható, hogy az elem hogyan reagáljon a társított bool változó állapotának megváltozására. Amennyiben a „Change color” mezőben megadott változó értéke FALSE, akkor a „Colors -> Color” kategóriában megadott színnel jeleníti meg az objektumot. Ha a változó állapota TRUE, az „Alarm color” alatt megadott színbeállítás fog érvényesülni. c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
30/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0 Amikor a látogatások számát akarjuk kiíratni, a „Variables -> Textdisplay” sorban kell megadni a változó nevét, és a „Text” pont alatt a „Content” mezőben pedig a feliratot, valamint egy „%s” formátumú utalást a változóra.
érték kiíratása
8.7. ábra: Változó értékének kiíratása a képernyőre
Ha elkészült a vizualizáció, a program működése a „Login”, és a „Run” parancsok kiadása után a vizualizációval egybekötve tesztelhető.
8.8. ábra: Példa a vizualizáció megvalósítására
5. lépés Készítsük el a programot CFC nyelven is, így sokkal átláthatóbb a működése.
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
31/33
Easy Soft CoDeSys / XSoft bevezető ismertetés v1.0 A CFC szerkesztőben új elemet (dobozt, ki- és bemenetet, stb.) beszúrni az „Insert” menüből vagy a munkaterületre jobb egérgombbal való kattintásra előugró menüből lehet. Az elemek összekötése egyszerű egérhúzással történik.
8.9. ábra: A példa program CFC nyelven
Ha most online módba kapcsolunk, és futtatjuk a programot, akkor látható, hogy jól nyomon követhetőek a belső állapotok: kék szín jelzi a TRUE, míg fekete a FALSE állapotokat mind a változóknál, mind pedig az összekötő vezetékeken.
8.10. ábra: A program online módban
c:\posta\fordítások\soft\codesys_bevezeto_v1.0.doc
32/33