|
||
|
||||||||||||||||||
SIEMENS STEP 7 programozási segédlet
A STEP 7 egy komplex programkörnyezet a SIEMENS SIMATIC eszközcsalád konfigurálásához, valamint programozásához. Főbb részei:
SIMATIC Manager - Központi felhasználói felület, amelyről elérhető bármely használni kívánt funkció.
Hardware Configuration - a használni kívánt eszközök konfigurálására szolgál.
Network Connections - a hálózatba kapcsolt eszközök topológiájának definiálásáta szolgál
Symbol editor - a pogramozásnál használt változók dfiniálására szolgál.
5., Programming - a logikai kapcsolatok és funkciók programmal történő megadására szolgál.
LAD - Létra diagramm (Ladder Logic)
STL - Utasítássoros (Statement List)
FBD - Funkcióblokk (Function Block Diagram)
1.ábra
Az alap STEP 7 programcsomaghoz további a programozást, felhasználást tovább segítő csomagokat kínál a Siemens, (természetesen borsos áron).
S7 PLCSIM - PLC szimuláló software
S7 GRAPH - További grafikus lehetőségek
S7 CFC EDITOR - Grafikus funkcióblokkos programozás (Continuous Function Chart)
S7 SFC EDITOR - Lefutó vezérlések támogatása (Secvential Function Chart)
1.1 SIMATIC Manager
A SIMATIC Manager indítása a Windows Desktop felületén található ikonnal történik. A Program elindításával lehetőségünk nyílik egy új Projekt létrehozására, valamint létező Projektek megnyitására. ( FILE →New, FILE →Open)
Új Project megnyitása es 848b19i etén meg kell adni a Project nevét, valamint a létrehozni kívánt Projectkönyvtár helyét.
A következő lépésben a használni kívánt eszköz projekthez való hozzáadása következik. Ezt az INSERT → STATION → 2 SIMATIC 300 Station menüpontokon keresztül, vagy a projectünk könyvtárikonjára jobb egérgombbal klikkelve az INSERT NEW OJECT→ SIMATIC 300 Station tehetjük meg. (1. ábra)
1.ábra
Következő lépésben a kíván teljes hardware konfigurálása következik.
HARDWARE CONFIGURATION
A HW Config indítása a projekt ablakban a SIMATIC 300-as állomásra kattintva az osztott ablak jobb oldalán található Hardware ikonra való dupla kattintással történik. (2. ábra)
A megfelelő konfigurációs paraméterek beállításához szükséges a SIMATIC termékcsalád alapszintű ismerete. Esetünkben, a laborban két különböző SIMATIC 300 CPU található. A CPU és a kártyák egy hordozósínre vannak rögzítve, amit a HW configban szintén definiálni kell. Az eszközök kiválasztása egy a Hardware Catalog nevű listából történik. Amennyiben ez nem látható a HW Configban, a 3. ábrán piros körrel megjelölt ikonra való rákattintással lehet aktiválni.
3. ábra
A konfigurálást a Hardware Catalog → SIMATIC 300 → RACK 300 → Rial lerakásával kezdjük (Drag and Drop), majd a Hardware Catalog → SIMATIC 300 → CPU 300 → . a megfelelő CPU kiválasztásával folytassuk. A pontos CPU típus kiválasztásában segítséget nyújt a CPU fedőlapjáról leolvasható pontos típusszám (pl. 6ES7-315-2AF02-0AB0). Amennyiben szükséges, az I/O modulok konfigurálásával folytassuk a munkát. Hardware Catalog → SIMATIC 300 → SM 300 → .
A modulok pozíciója is információt hordoz, ezért ügyeljünk arra, hogy a CPU-t a 2. Rackslot-ba húzzuk, az egyéb I/O modulokat pedig a hardware elrendezésnek megfelelő sorrendben, indokolatlan üres helyek kihagyása nélkül helyezzük el.
PROFIBUS csatolóval rendelkező CPU esetén az elhelyezést követően alkalmunk van a PROFIBUS hálózat azonnali beállítására. (4. ábra)
4. ábra
PROFIBUS hálózat hozzáadásához kattintsunk a New gombra, a megjelenő ablakban a Network Settings fülre kattintva beállíthatjuk a BUS típusát, átviteli sávszélességet. Ne állítsuk a BUS sebességét 1.5 Mbps-re, mert ezt a laborban található eszköz nem képes kezelni. 187.5 Kbps átviteli sebesség a mérési feladatok elvégzésére kielégítő paramétereket ad. A CPU PROFIBUS címének megadásánál arra ügyeljünk, hogy ne legyen ütközés a buszra kapcsolt egyéb eszközökkel. Minden eszköz eltérő címmel kell, hogy rendelkezzen.
A HW Config ablak alsó felében láthatók a modulok és a rájuk legjellemzőbb paraméterek. Az M. (MPI address), valamint a bemenetek és kimenetek címei. Ezen címek segítségével tudunk később az adott I/O csatornákra hivatkozni.
Amennyiben a PROFIBUS-t nem kívánjuk használni, a megfelelő I/O valamint CPU modul beállítások letölthetők a 3. ábra sárga körrel jelölt ikonjával vagy a PLC. → Download.
A PLC és a PC között egy RS232-MPI adapter szolgáltatja a kapcsolatot. Egyes esetekben a letöltésnél hibajelzést kapunk, ez a PLC és a PC eltérő MPI beállítása okozza. Ha ilyen hiba merülne föl, ellenőrizzük a SIMATIC Manager → Option → Set PG/PC Interface menüpont alatt a PC Adapter (MPI) → Properties → Transmission Rate értékének megegyezését a HW Config -ban a CPU-ra jobb egérgombbal kattintva az Object Properties → Interface → Properties alatt mutatott értékkel.
5. ábra
Egy esteleges Hardware beállítást mutat az 5. ábra. Ügyeljünk arra, hogy a letöltés alatt a PLC STOP vagy RUN-P módban legyen. A hibátlan letöltést követően a PLC-n lévő SF/DP és BF piros hibajelző LED-ek nem világíthatnak.
A PLC-t RUN-P módba kapcsolva, lehetőségünk van a bemenetek force-olására, a kimenetek monitorozására. Ez a megfigyelni kívánt kártyára jobb egérgombbal való kattintás után a Monitor/Modify menüpont kiválasztásával történik.
A Monitor/Modify ablakban a kívánt funkció check-box-át ki kell jelölni, valamint a Modify Value gomb lenyomásával aktiválhatjuk az előzőleg beírt force-olt kimeneti értéket. A monitorozás is ezen elvek alapján végezhető. ( a Monitor/Modify funkció csak RUN vagy RUN-P módban futó PLC esetén aktív.)
A laborban található egy Siemens 314C-2DP típusú CPU amely rendelkezik gyors számláló bemenetekkel, valamint az összes bemenet szabadon konfigurálható Interrupt forrásként is. Ezen funkciók, a használni kívánt modulra duplán kattintva érhetők el. Például, a bemeneteknél válaszható a késleltetési idő, valamint az Interrupt felfutó, vagy lefutó élre való aktiválása. (7. ábra) Ezen funkciók sok esetben jelentősen leegyszerűsítik az eszköz programozását. Az Interrupt lekezelésére a későbbiekben még visszatérek.
7.ábra
1.3 NetPro Network Configuration
A NetPro Program elindítása a SIMATIC Manager-ből valamint a HW Configból is lehetséges az itt jelzett ikon segítségével. (3. ábra lilán bekarikázott ikon.) Ez a program nagyon hasonlít a HW Config-hoz, azzal a különbséggel, hogy itt a hálózatokra kapcsolt elemeket, valamint a BUS (-ok) paramétereit tudjuk állítani. Az MPI BUS, mint már említetem, az a BUS, amin a PC kommunikál a PLC-vel. Erre a Bus-ra mindenképpen szükségünk van, mivel az első HW Config letöltése csak ezen keresztül történhet. A laborban található mindkét Siemens SIMATIC PLC rendelkezik ProfiBus csatolóval, így a Netpro ezt a két Bus-t jelöli egy megfelelő HW config elvégzése után. (8. ábra)
A kívánt eszközök kiválasztása a HW Confighoz hasonlóan a Catalog ablakból történik. Amennyiben a ProfiBus-ra szeretnénk eszközt csatlakozatni, előbb ki kell jelölni a SIMATIC 300-as állomás DP modulját. A NetPro indításakor előfordul, hogy a SIMATIC 300-as állomás nincs csatlakoztatva a Bus-(ok)hoz ezek bekötését a modulban található színes négyzetre kattintva a bal egérgombot lenyomva tartva a vonalat a Bus-ra húzva tehetjük meg. Minden, a ProfiBus-ra (esetleg az MPI Bus-ra) csatlakoztatott eszköz eltérő címmel kell, hogy rendelkezzen.
8.ábra
A beállítások elvégzése után a Save and Compile ikon segítségével fordíthatjuk be a változtatásokat, majd egy újabb HW Config letöltésével vihetjük át a PLC-be.
Ha a ProfiBUS-ra egységeket szeretnénk csatlakoztatni, első lépésben ki kell jelölnünk a ProfiBUS DP Mastert. Ez esetünkben a CPU, így a SIMATIC 300 CPU DP moduljára kattintva azt kijelöljük (a DP-vel jelölt téglalap a 8. ábrán látható módon kék színű), majd megkezdhetjük a BUS-ra a modulok feljuttatását. Amennyiben ezt a lépést elmulasztjuk, a következő hibaüzenetet kapjuk ( 1.hibaüzenet)
1. hibaüzenet
Ha a fent leírt lépéseket sikerrel elvégeztük, a PLC hibajelzés mentes, valamint minden a redszerhez csatlakoztatott eszköz monitorozható, elkezdhetjük az eszköz programozását.
Symbol Editor
A programozás megkezdése előtt érdemes általunk könnyen kezelhető szimbólumnevekhez rendelni a fizikai bemeneteket és kimeneteket, valamint a lefoglalt belső változókat, memóriaterületeket.
A Symbol Editor elérhető a Simatic Manager-ben a HW-configban definiált CPU (pl. 314C-2DP) alatt található S7 Program alkönyvtárban található Symbols ikonra való dupla kattintással (9. ábra).
9. ábra
A 10. ábrán látható a Symbol Editor program ablakstruktúrája. A Symbol oszlopba írhatjuk be az általunk adott tetszőleges nevet. Az Address oszlopban adhatók meg a direkt memóriacímek. A cím kitöltése után megfelelő adattípus megadása esetén a Data type mezőt a program automatikusan kitölti. A Comment mezőben tetszőleges hozzáfűznivalónkat adhatjuk meg a program későbbi áttekintésének elősegítése érdekében.
10. ábra
A memória byte kiosztású, így a bitekre való hivatkozás formája például M 0.0. Ez a 0. byte 0. bitjére mutat. A byte-okra való hivatkozásánál csak a byte számát kell megadni (pl. MB 1). Mivel a Word típusú változó 2 byte-os, így a hivatkozásnál ügyelni kell arra, hogy az egymást követő Word típusú változók címét kettesével kell növelni. Természetesen duplaszó használatánál 4 byte-nyi helyet kell kihagyni a definiált változók között. ( Egy adott memóriaterületre többféle adattípussal is hivatkozhatunk. Például: MB 0 és M 0.0 hivatkozások együttes használata esetén az MB 0 byte-ként történő használata mellett külön módosítható az MB 0 byte 0. bitje.)
Type and Description |
Size in Bits |
Format Options |
Range and Number Notation (lowest to highest value)_ |
Example |
BOOL(Bit) |
|
Boolean |
TRUE/FALSE |
TRUE |
BYTE |
|
Hexadecimal number |
B#16#0 to B#16#FF |
L B#16#10 |
WORD |
|
Binary number |
2#1111_1111_1111_1111 |
L 2#0001_0000_0000_0000 |
DWORD |
|
Binary number |
2#0 to |
2#1000_0001_0001_1000_ |
INT |
|
Decimal signed |
-32768 to 32767 |
L 1 |
DINT |
|
Decimal signed |
L#-2147483648 to L#2147483647 |
L L#1 |
REAL |
|
IEEE |
Upper limit: 3.402823e+38 |
L 1.234567e+13 |
S5TIME |
|
S7 time in |
S5T#0H_0M_0S_10MS to |
L S5T#0H_1M_0S_0MS |
CHAR |
|
ASCII characters |
'A','B' etc. |
L 'E' |
1. táblázat
A használható adattipusokat az 1. táblázat tartalmazza. Mielőtt a programból kilépnénk, ne mulasszuk el menteni a definiált szimbólumokat.
Organization blocks (OBs)
Az Organizációs blokkok (OBs) teremtik meg a kapcsolatot a CPU-n futó oerációs rendszer és a felhasználó által írt program között. Ezeket a blokkokat az operációs rendszer hívja meg ciklikus vagy külső megszakítások hatására. Szintén ezek a blokkok látják el a hibakezelést.
Type of Interrupt |
Organization Block |
Priority Class (Default) |
See also |
Main program scan |
OB1 |
|
Organization Block for Cyclic Program Processing (OB1) |
Time-of-day interrupts |
OB10 to OB17 |
|
Time-of-Day Interrupt Organization Blocks (OB10 to OB17) |
Time-delay interrupts |
OB20-OB23 |
|
Time-Delay Interrupt Organization Blocks (OB20 to OB23) |
Cyclic interrupts |
OB30-OB38 |
|
Cyclic Interrupt Organization Blocks (OB30 to OB38) |
Hardware interrupts |
OB40-OB47 |
|
Hardware Interrupt Organization Blocks (OB40 to OB47) |
Multicomputing interrupt |
OB60 Multicomputing |
|
Multicomputing - Synchronous Operation of Several CPUs |
Redundancy errors |
OB70 I/O Redundancy Error (only in H systems) |
|
"Error Handling Organization Blocks (OB70 to OB87 / OB121 to OB122)" |
Asynchronous errors |
OB80 Time Error |
25 |
Error Handling Organization Blocks (OB70 to OB87 / OB121 to OB122) |
Background cycle |
OB90 |
|
Background Organization Block (OB90) |
Startup |
OB100 Restart |
|
Startup Organization Blocks (OB100/OB101/OB102) |
Synchronous errors |
OB121 Programming Error |
Priority of the OB that caused the error |
Error Handling Organization Blocks (OB70 to OB87 / OB121 to OB122) |
2., táblázat
Az 1. táblázatban látható a különböző operációs blokkok felsorolása. A 3. oszlopban az adott blokkhoz tartozó prioritási érték láthatók. A magasabb prioritású blokk megszakítva az alacsonyabb prioritású, éppen futó blokk futását, hajtódik végre, majd a megszakított blokk is folytathatja feladatát.
Az OB1 az alap szinten leggyakrabban használt, legalacsonyabb prioritású organizációs blokk. A PLC bekapcsolása után, ha más blokk nincs, ciklikusan, időkorlát nélkül fut le.
Említést érdemel még az OB30-OB38-as csoport, amely meghatározott időnként ciklikusan fut le. A lefutási időket, valamint a prioritási értékeket a 2. táblázat tartalmazza.
Ciklikus megszakítású OB |
Időköz [ms] |
Prioritás |
OB30 |
|
|
OB31 |
|
|
OB32 |
|
|
OB33 |
|
|
OB34 |
|
|
OB35 |
|
|
OB36 |
|
|
OB37 |
|
|
OB38 |
|
|
3. táblázat
Amennyiben a blokk nem képes az időkorláton belül lefutni, a program hibát jelez (az OB85 fut le)
OB40-OB47 külső interrupt által okozott megszakítások futnak le. Külső interrupt forrás lehet a már a HW Confignál említett (7. ábra) digitális bemenet. Egy nagy frekvenciájú ( 100Hz-1kHz ), nem periódikus jel fogadása és például számlálása történhet mondjuk az OB40-be elhelyezett aritmetikai modullal.
11. ábra
A programozás megkezdése előtt érdemes tájékozódni a programozni kívánt CPU paramétereiről, mivel előfordulhat, hogy a CPU nem támogat egy adott OB-t. Például a S7 314C-2DP nem támogatja csupán az OB35-ös ciklikus megszakítást.
Programing
A HW config és a NetPro megfelelő beállítása, a szimbólumok definiálása, ezek a PLC-be való letöltése után ( és az esetleges hibajelenségek kiküszöbölése után ) megkezdhetjük a PLC programozását.
Az első lépés a XXXX fejezetben ismertetett Operációs Blokkokból a nekünk legmegfelelőbb kiválasztása és létrehozása. A Symatic Manager alapból generálja az OB1 blokkot. (12. ábra)
12. ábra
Amennyiben az OB 1-et kívánjuk használni, nem kell mást tennünk, mint duplán kattintani az S7 Program→Block→OB1 ikonra. Új blokk létrehozásához a Blocks alkönyvtárra jobb egérgombbal kattintva, az Insert New Object menüpontot kiválasztva az Organization Block listaelemet kell kiválasztani. (12. ábra)
A blokk első alkalommal történő megnyitásakor be kell állítanunk a használni kívánt programozói eszközt. Az alap STEP7 programcsomag a következő lehetőségeket kínálja:
LAD - Létra diagramm (Ladder Logic)
STL - Utasítássoros (Statement List)
FBD - Funkcióblokk (Function Block Diagramm)
A számunkra legkényelmesebb eszköz kiválasztása a 13. ábrán látható ablakban a Created in Language: legördülő menüből válaszható ki.
13. ábra
LAD - Létra diagramm (Ladder Logic)
A létra diagramm a klasszikus PLC programozási nyelv egy grafikus felület segítségével. (A relékkel felépített logikai hálózatokból ered) A komponenseket balról jobbra Drag and Drop módszerrel juttatjuk a létrehozni kívánt hálózatba a Program elements listából. (Amennyiben a lista nem látható a képernyőn, a View→Catalog menüpontban kapcsolhatjuk be.)
14. ábra
Amennyiben nem vagyunk tisztában egy adott blokk működésével, a ikonra, majd a blokkra kattintva részletes leírást kapunk az adott blokk működéséről. A leggyakrabban használt eszközök megtalálhatók ikon formájában a fejlécben is. (15.ábra)
15. ábra
A 15.ábrán 1. számmal jelölt ikon a Program elements ablakoz teszi láthatóvá, illetve tünteti el. A 2. ikonnal új hálózatot hozhatunk létre. A 3. és 4. ikon nyitó illetve záró kontaktust hoz létre a hálózatban (bemeneti változó), az 5. ikon tekercset (kimeneti változó). A 6. ikonra kattintva a megjelenő lista box-ból kiválsztható a használni kíván tetszőleges blokk, így nem szükséges a Program elements ablak használata. Az elágaztatni kívánt vezetőre kattintva, majd a 7. ikonra, az adott ponton a hálózat elágaztatható. A 8. ikon a hálózat lezárására, a 9. ikon pedig a hálózaton belüli összeköttetések létrehozására szolgál. A 10. ikon a már említett segítség (help) ikon.
Az újonnan elhelyezett alkatrészek fölött kezdetben piros kérdőjelek jelennek meg ( ) ezekre kattintva begépelhető a már definiált szimbólum neve, direkt hivatkozás ki/bementre, memóriacímre. Ha nem emlékszünk a szimbólumunk nevére, jobb egérgombbal a ki/bementre kattintva az Insert Symbol opciót választva egy listából választhatjuk ki szimbólumainkat.
16. ábra
A 16.ábrán egy egyszerű példát láthatunk. A blokk kimenetén vagy bemenetén tartva az egér mutatóját néhány másodperc után megjelenik az adott ki vagy bemenet adattípusa, ez hathatós segítséget nyújthat az esetleges adattípus konfliktusok elkerülésében. A 16 ábrán láthatunk direkt memóriacímre való hivatkozást, valamint a szimbólumtáblában már használt változó alkalmazásokat.
A változók helyes megadása érdekében javasolt az 1.táblázat alapos áttanulmányozása.
FBD - Funkcióblokk (Function Block Diagram)
Ez a programozási módszer nagyon hasonló a már ismertetett LAD-hez, eltérés csupán a megjelenítésben és a kezelésben van. Kialakításában az áramköri kapcsolási rajzokhoz hasonlít leginkább. A használt egységek blokkokként vannak megjelenítve, melyeknek kimenetét az áramköri tervezésekhez hasonlóan huzalozással köthetjük össze.
17.ábra
A 17. ábrán a már ismert programozói környezetet láthatjuk, altérés a fejlécben található ikonokban először szembetűnő.
18.ábra
Az 1. ikon a Program Elements ablakot kapcsolja, a 2. ikon pedig új hálózatot hoz létre. A 3. ikonnal ÉS (AND) logikai kapcsolatot alakíthatunk ki, a 4. ikonnal pedig VAGY (OR) logikai kapcsolatot. Az 5. ikonnal rendelhető hozzá egy kimeneti változó értéke egy memóriaterülethez, vagy fizikai kimenethez. Ezzel az ikonnal tudjuk például egy BOOL típusú változónkat egy PLC kimenethez hozzárendelni. (19. ábra)
19.ábra
A 6. ikonnal helyezhetünk el tetszőleges blokkot az előredefiniált típusokból. A blokk konkrét típusa lista-box-ból választható. A 7. ikon további bemenetek hozzárendelését végzi egy adott logikai kapuhoz. (Így tudunk például 4 bemenetű ÉS kaput létrehozni.) A 8. ikon az aktív bemenet negáltját képzi. A 9,10,11. ikon funkciója a LAD nál már ismertetett módon, az elágazások, belső kapcsolatok képzése, valamint a HELP gomb.
STL - Utasítássor (Statement List)
A gépi kódra leginkább hasonlító leíró nyelv.
20. ábra
Az STL használata esetén nem áll rendelkezésre az LAD-nál és az FBD-nél már megszokott lista, amelyből tetszőlegesen kiválaszthatjuk a használni kívánt modult. Az egyes logikai kapcsolatokat kulcsszavak, betűk segítségével érhetjük el. Mint a 20. ábrán is látható, az A - AND, O - OR, R - Reset, S - Set = - direkt hozzárendelés jele. Az egyes logikai kapcsolatok jeleiről a Help segítségével tájékozódhatunk.
ON LINE programozás
A program fejlesztésében jelentős segítséget nyújt az on-line monitorozási funkció. Ezen funkció használata esetén a programozó folyamatosan nyomon követheti a ki/bemenetek állapotát, belső változóinak értékét. A következőkben egy rövid programmal illusztrálnám a monitorozási funkció működését.
Példa 1.
Programomat az OB35-ös ciklikus megszakítási blokkban írom meg. Ez az Organizációs Blokk 100 msec-enként ciklikusan fut le. Egyetlen összeadó blokkot használok, amely mint a 21. ábrán látható, az MW1 Integger típusú változó inkrementálását végzi.
21.ábra
Tipp: Az EN bemenet szabadon hagyásával a blokk automatikusan engedélyezve van.
Az MW1 valós idejű megfigyelése a 22. ábrán látható piros körben található szemüveget jelképező ikonnal tehetjük meg.
22.ábra
A Monitor funkció eléréséhez a blokk kijelölése, valamint a PLC RUN módban való futása szükséges. A példánkban szereplő összeadó blokk ki és bemenetein láthatjuk a változónk aktuális értékét.
Variable Table
Amennyiben több változót szeretnénk egyszerre megfigyelni, esetleg változtatni, ezt a Variable Table segítségével tehetjük meg. A funkció eléréséhez az S7 Program→Block könyvtárban jobb egérgombbal kattintva, az Insert New Object menüpontot kiválasztva az Variable table listaelemet kell kiválasztani.
23.ábra
A 23. ábrán látható ablakban tetszőleges megfigyelni kívánt változók definiálhatók, tetszőleges sorrendben! Lehetőségünk van továbbá, a változók értékének megváltoztatására. A megfigyelési és változatási funkciók a 23.ábra ikonsorának hat jobboldali ikonjával, vagy a változóra jobb egérgombbal kattintva, a megfelelő listaelem kiválasztásával történik.
A változótábla elmenthető!, így a programozás során bármikor előhívható. Használata bonyolultabb feladatok megoldásánál mindenképpen ajánlott.
Találat: 4087