Betöltés…
WAGO Hungária

WAGO-PLC programozása CoDeSys V3.5-ben

Elsőként CoDeSys 3.5-ben programozható WAGO vezérlő a 751-9301-es, de az összes PFC200 (G2) 750-821x-es vezérlő is és további vezérlők lesznek még programozhatók ebben a környezetben (további információ: support.hu@wago.com e-mail címen).

A 751-9301 kompakt vezérlőről néhány műszaki paramétert az alábbi táblázat tartalmazza.

751-es Sorozat
Kompakt Vezérlő 751-9301 (CC100)

 

Jellemzők  
Tápellátás +24V DC
Processzor Cortex A7 / 650 MHz
Belső memória RAM: 512 MB

Flash: 4096 MB

Retain: 128 kB

Külső memória µSD
Szerviz-interfész USB-C
Hőmérséklet -25 .. +60°C
Tanúsítványok CE, UKCA

UL (OrdLoc) 2022-02

 

2. Csatlakozások

IO-Mix

8xDI…24V, 2,8 mA

4xDO…24V 0,5 A

2xAI…(0…10V)

2xAO…(0..10V)

2xPT1000/NI1000 + Nyersérték

RS-485

Galvanikusan leválasztott

Csatlakozók

2xRJ45 Ethernet

Szerviz csatlakozó

USB-C (Device-Mode)

 

3. Tápegység

Alapvetően a WAGO I/O-SYSTEM három galvanikusan leválasztott feszültségtartománnyal rendelkezik:

– Rendszer

– Külső perifériák

 

4. Szoftver

CODESYS V3.5 + Csomagok

Eszközök és könyvtárak csomagban való telepítése

Eszközök és könyvtárak csomagban telepíthetők és integrálhatók a CODESYS környezetbe.

Beállítás a Központi felületen

Például:

  • idő
  • IP cím
  • SD kártya
  • VPN konfiguráció
  • OPC UA
  • tűzfal

A visu felület elérhető a linken keresztül:

https://ip-Adress/webvisu/webvisu.htm

 

5. Diagnosztikák

Diagnosztikai célból 12 Tricolor LED (piros, zöld, narancssárga) van elhelyezve a PFC-k előlapjára. A LE  D-ek ki- és bekapcsolhatók (folyamatosan világítanak, különböző frekvencián villognak). Az ábrán látható LED-ek egy kiterjesztett házú PFC 200-hoz tartoznak, és a maximális terepi busz konfigurációt képviselik. A BF, DIA és CAN LED-eket további U(ser)-LED-ekre cserélik, ha a terepi buszok nem támogatottak. Az U(ser)-LED-eket a felhasználó szabadon konfigurálhatja.

 

6. PLC Ciklus

A PLC ciklus ideje a CPU-tól és a program hosszától függ.

A PLC az IPO modell szerint működik (bemenet – folyamat – kimenet). Egy ciklus a bemenetek beolvasásával kezdődik. Egy ciklus elején a vezérlő eltárolja a bemenetek értékeit a bemenetek folyamatképében, ezért ez egy pillanatfelvétel a bemenetek állapotáról a ciklus elején. Ezután megkezdődik a program feldolgozása. A vezérlő hozzáfér a bemenetek folyamatképéhez, és kiolvassa a tárolt adatokat. A feldolgozás után a kimenetek állapotinformációi a kimenetek folyamatképében találhatók. A kimenetekre vonatkozó összes információ egyidejűleg kerül kiírásra a PLC ciklus végén.

 

7. Konfigurálás programozás helyett

Szoftver könyvtárak:

A WAGO-nál számos használatra kész szoftvermodul található. Ezen blokkok mindegyike már tartalmazza a kívánt funkció logikáját. A blokk értékeit a bemeneteken keresztül adhatja meg. A blokk kimenetein hozza létre az aktuátorokat vagy a kimeneti változókat, hogy tovább dolgozhasson a blokk értékeivel.

Ezeket a gyűjteményeket szoftverkönyvtárnak nevezik, és számos különféle funkciót tartalmaznak témakörök szerint rendezve.

A WAGO könyvtárakat kiegészítő csomagként telepíthetők és integrálhatóak a CoDeSys 3.5-höz.

IEC 61131-3

IEC 61131-3 adat típusok

Az adattípusok (adatformátumok) szabványosítása szükséges a folyamatadatok egységes megjelenítéséhez a különböző gyártók rendszerhatárain keresztül. Az IEC 61131-3 a PLC-rendszerek speciális követelményeivel foglalkozik. A leggyakrabban használt elemi adattípusok a BOOL, BYTE, WORD, INT, DWORD, REAL, IDŐ. Az adattípusok a táblázatban félkövérrel vannak jelölve (lásd az ábrát

 

 

7.1 Program Szervezési Egység (POU)

 

Az IEC 61131 szabványban három programszervezési egység van szabványosítva. A blokkok segítségével strukturálhatja projektjét. Emiatt a blokkokat programszervezési egységeknek (POU) nevezik.

A POU-knak három típusa van: Funkció (FUN), Funkció Blokk (FB) és Program (PROG), amelyek ebben a sorrendben növekvő funkcionalitással rendelkeznek. A FUN-ok főként abban különböznek az FB-ktől, hogy mindig ugyanazt az eredményt (függvényértékként) adják vissza ugyanazon bemeneti értékekre, vagyis nem lehet “memóriájuk”. Ezzel szemben az FB-k mindegyike a saját adatkészletén dolgozik, azaz “emlékezhetnek” az állapotinformációkra (példányképzés). A programok (PROG) alkotják a PLC felhasználói program „fejét”, és lehetőségük van elérni a PLC perifériákat, vagy elérhetővé tenni azokat a többi POU számára.

 

7.2 Program struktúra

 

 

7.2.1Program Szervezési Egység „Program “

A program

A PLC program legfontosabb része az IEC szerint a PROG nevű program. A kulcsszó a “PROGRAM”. Ez a mondattípus a főprogramot (PLC_PRG) reprezentálja, amely a DIN 19239 szerint OB1 volt. A funkciók, funkcióblokkok és alprogramok a PROG mondatban kerülnek meghívásra. A blokk elején meghatározásra kerül a bemenetek/kimenetek hozzárendelése és a globális adatok, melyekhez a program többi része hozzáfér.

Egy program

– egy vagy több értéket ad vissza a végrehajtás során

– világszerte ismert az egész projekt során

– pufferelhet értékeket

– lesz a fő program “PLC_PRG” néven

A további hivatkozások a főprogramból indíthatók.

 

7.2.2 Program Szervezési Egység „Funkció Blokk “

A funkcióblokk:

Az FB a funkcióblokk rövidítése. A „FUNCTION_BLOCK” megnevezés kulcsszóként használatos.

A függvényekkel ellentétben a funkcióblokkok több kimenetet és tranzitparamétert is átvihetnek. Az adatpéldány kivételével a paramétereket nem kell “összekapcsolni” híváskor.

A funkciómodullal bemeneti (INPUT), kimeneti (OUTPUT) és bemeneti / kimeneti (IN- / OUTPUT) jelek és értékek továbbíthatók. Egy memória van hozzárendelve az FB-hez, a példányhoz, amely ennek megfelelően van meghatározva a blokk elején.

Egy FB meghívásakor adatpéldányt kell hozzá rendelni. Az adatpéldány adattípusa mindig megegyezik az FB nevével/funkciójával.

Egy funkcióblokk

– egy olyan modul, amely egy vagy több értéket ad vissza a végrehajtás során.

– vagy IEC-FB, gyártó-FB vagy felhasználói FB

– pufferelhet értékeket

 

7.2.3 Program Szervezési Egység „Funkció “

 

A funkció:

A függvény rövidítése FUN, a kulcsszó pedig “FUNCTION”.

A funkció paraméterezhető blokként programozható a szabványos funkciók megvalósítása érdekében.

Az IEC 61131 szabványnak megfelelően meghatározták, hogy a funkcióhoz tetszőleges számú bemeneti érték rendelhető. Azonban csak egy függvényérték kerül visszaadásra. Ez azt jelenti, hogy a blokk az IL utasításhoz hasonló módon használható, ennek megfelelően kimeneti érték nem rendelhető hozzá. Egy függvényben nem lehet függvényblokkot meghívni.

Egy funkció

– Egy paraméterezhető blokk “memória” nélkül, azaz mindig ugyanazt az eredményt adja ugyanazokkal a bemeneti paraméterekkel.

– Eredményét adja vissza az akkumulátorban, azaz mindig csak egy adatelemet ad vissza eredményként.

– Nem tárol változó értékeket

 

7.2.4 Változók

A bal oldali ábra a helyi változókat mutatja. Ezek az adott blokk deklarációs részében vannak meghatározva. A PLC_PRG változók definíciója itt látható.

A jobb oldali ábra a globális változókat mutatja, a „globális változók” alatt. Az ezen a területen deklarált változók nincsenek hozzárendelve egyetlen blokkhoz sem, és minden blokk írhatja és olvashatja.

A Változó deklarációs ablak megnyílik, amint olyan változót kell használni, amelyet a fordító nem ismer (pl. új változók).

Az osztály, név és típus mezők kötelező mezőket jelentenek, és mindig észszerűen kell kitölteni.

Az osztály mezőben a fenti kiválasztási lehetőségeket láthatja.

– VAR: Ideiglenesen használt adat, amely csak az adott blokk feldolgozására érvényes.

– VAR_INPUT: A modulba átvitt adatok használatához.

– VAR_OUTPUT: A blokkban generált és más programrészekbe történő kimeneti adatok kiadására.

– VAR_IN_OUT: A blokkba átvitt, ott módosított, majd más programrészekre kiírt adatokkal való használatra.

– VAR_GLOBAL: A globális változók lehetnek mind olyan változók, állandók vagy maradandó változók, amelyeket az egész projektben ismerni kell.

Értelmes változónevet kell rendelnie névként, hogy később gyorsabban megtalálja a változót.

Írja be a megfelelő adattípust a típus mezőbe.

 

A változó deklarációs ablakának második része az opcionális mezőket mutatja. Itt adhatja meg a változók listáját, a kezdeti értékeket, a címeket, a megjegyzéseket, valamint a konstans, a megtartás és az állandó jelzőket.

A „változólista” mező segítségével a globális változót egy adott listára helyezheti át.

Azok a kezdeti értékek, amelyek értékei nincsenek megadva, automatikusan 0 vagy FALSE.

A mezőcímben közvetlen címzéssel közvetlenül elérheti a memóriaterületeket.

A maradandó változók a szokásos programfutási időn túl is megtarthatják értéküket. Ide tartoznak a permanens változók és a perzisztens változók.

Ha a perzisztens változóknak meg kell őrizniük korábbi értékeiket egy ellenőrizetlen vezérlési hiba után is, akkor ezeket is VAR_RETAIN-ként kell deklarálni. A perzisztens változók megtartására szolgáló alkalmazási példa egy üzemóra-számláló, amely áramszünet után folytatja a számlálást.

A következő táblázat bemutatja, hogyan viselkednek a permanens és/vagy perzisztens változók különböző működési állapotokban:

(x = érték megmarad; – = érték újra inicializálva)

 

Az azonosítónál, azaz a változók nevénél figyelembe kell venni, hogy nem tartalmazhat szóközt, nem deklarálható kétszer, és nem lehet azonos a kulcsszavakkal. Ezenkívül a név nem kezdődhet számmal, és nem tartalmazhat kötőjelet.

A változók nem különböztetik meg a kis- és nagybetűket, azaz a VAR1, Var1 és var1 nem különböző változók.

 

Az azonosítóknál jelentősek az aláhúzásjelek, pl. Az “A_BCD” és az “AB_CD” különböző azonosítóként értelmezhető. Több egymást követő aláhúzás nem megengedett. Az azonosító hossza és a szignifikáns tartomány a gyakorlatban nincs korlátozva (max. 255 karakter).

Magyar jelölés:

 

Könyvtári moduljaink a bemutatott stíluskalauz-javaslaton alapulnak. Az alkalmazott módszert magyar jelölésnek nevezik. A változó adattípusát névelőtag jelzi, ez különösen hasznos a bemeneti, kimeneti és globális változók esetében.

A jobb oldali lista egy példát mutat be arra, hogy a WAGO jelenleg hogyan használja a magyar jelölést a könyvtári blokkoknál. Ez azonban nem rögzített alapértelmezett, hanem csak javaslat.

Ha bevezetsz egy magyar jelölést, akkor az egész csapatnak meg kell egyeznie a szabványban.