A STEP 7 programozás alapjai

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "A STEP 7 programozás alapjai"

Átírás

1 SIMATIC A STEP 7 programozás alapjai (utasításlista) A legfontosabb alaputasítások ismertetése angol nyelvű STEP 7 szoftvert használóknak Ez a segédlet a SIMATIC S7-300, S7-400, C7, ET-200 IM CPU és az embedded, illetve PC-based (WinAC szoftver PLC) kontrollerek programozásához használható. Siemens Zrt. Ipari Szektor Industry Automation & Drive Technologies Copyright Siemens Zrt STEP 7 utasításlista (angol rövidítésekkel) 1

2 Az esetleges hibákért felelősséget nem vállalunk. Részletes gépkönyvek és további dokumentumok világnyelveken letölthetők az Internetről: Magyar nyelvű segédletek letöltési címe: Katalógusok letöltési címe: STEP 7 utasításlista (angol rövidítésekkel) 2

3 A Siemens SIMATIC S7-es készülékeit a STEP7 szoftverrel három megjelenítési módban lehet programozni: (utasításlista), LAD (áramútterv) és FUP (funkcióterv). (Vannak további programírási lehetőségek is: S7-SCL, S7-GRAPH, S7-HiGraph, CFC). Az áramútterv és a funkcióterv grafikus megjelenítési mód, ami adott esetben (főleg tisztán vezérlési műveleteknél) jelentősen megkönnyíti a programozást. Első alkalommal mi mégis az utasítások bemutatásával kezdjük, és ennek oka, hogy a PLC természetesen csak ezt a módot ismeri, pontos, tényleges működését ezzel lehet a legjobban magyarázni, és a legtömörebb programot is ebben a megjelenítésben lehet írni. A grafikus megjelenítés csak a fejlesztőprogramban létezik (a programozó készüléken), ami minden kész függvényt azonnal -re fordít, és a PLC-be az ebből létrehozott MC7-es gépi kód kerül. Ha azonban a programot grafikus megjelenítési módban írták, akkor a fordításkor olyan utasítások is bekerülnek a PLC-be, amelyek csakis a visszaolvasott program ismételt grafikus megjelenítése érdekében vannak ott. Mindez természetesen nem von le semmit a grafikus megjelenítés létjogosultságából, sőt a STEP5- höz képest a STEP7-et a grafikus megjeleníthetőség irányában ki is bővítették, ami majd e két grafikus mód ugyancsak kiadásra kerülő segédletében látható lesz. E bevezetés után néhány, talán nem magától értetődő alapfogalmat kell tisztázni, amelyek azok számára, akik először találkoznak a SIMATIC rendszerrel sokat fognak segíteni az utasítások megértésében. RLO (Result of the Logic Operation) logikai műveleti eredmény Az RLO fizikailag a processzor státuszregiszterének egyik bitje. A programban, főleg annak vezérlési részében kitüntetett szerepe van. Ha valami a programban bekapcsol, akkor az RLO miatt kapcsol be, ha nem kapcsol be, akkor az RLO miatt nem kapcsolt be. Igen fontos tudni, hogy milyen viszonyban vannak az egyes utasítások és az RLO. STEP 7 utasításlista (angol rövidítésekkel) 3

4 Eszerint van: RLO-t befolyásoló utasítás (A, AN, O, ON stb.) RLO-függő utasítás (=, S, R stb.) RLO-t határoló utasítás (=, S, R ha utána lekérdezés történik) RLO-független utasítás (L, T, stb) Gyakori félreértés pl.: A I 2.2 L MW2 Az L MW2 utasításra az A I2.2 semmiféle hatással nincs, mert az első utasítás ugyan befolyásolja a RLO-t, a második azonban fügetlen attól. Tehát a fenti programban az L MW2 minden ciklusban vérehajtódik az I 2.2 állapotától függetlenül. Lekérdezés (Abfrage) Az operációs rendszer számára az A, AN, O, ON stb. alaphelyzetben nem csupán egy ÉS, VAGY stb. művelet, hanem kérdés, amit az utasítás vérehajtásakor a rendszerproram tesz fel az utasításban lévő operandus (változó) állapotára vonatkozóan. Önmagában a fenti műveletek mindegyike egy un. lekérdezés. A lekérdezésnek természetesen eredménye is van, ami az RLO-bitben (státuszregiszter) tárolódik. Első lekérdezés Minden logikai lánc elején található az első lekérdezés. Az első lekérdezést a rendszerprogram akkor érzékeli (és jegyzi meg a státuszregiszterben), ha a fentemlített RLO-határoló művelet után lekérdezés történik. Pl. = Q12.1 (RLO-határoló művelet) O M24.2 (lekérdezés) STEP 7 utasításlista (angol rövidítésekkel) 4

5 Az első lekérdezésnél a rendszerproram nem figyel logikai utasítás fajtájára, csak a kérdés ponált ill. negált volta érdekes (a VAGY-művelet egy változóval logikailag nem lenne értelmezhető, ebben az esetben a VAGY nem is játszik szerepet). Az első lekérdezésnél az RLO-be átkerülő eredmény attól függ, hogy a kérdésre adott válasz milyen, ha igen, akkor az RLO 1, ha nem akkor 0. A logikai lánc második műveleténél már nem csak a lekérdezés ponált vagy negált volta érdekes, hanem a logikai művelet milyensége is, és ez a logikai művelet tulajdonképpen nem a két változó hanem az éppen vizsgált utasítás általa létrehozott RLO és az előző RLO között történik. Nem szabad elfelejteni, hogy az előző RLO az adott láncban eddig megoldott összes utasítás eredménye. Uta Operandus St Megjegyzés = Q12.1 RLO-határoló művele U M első lekérdezés - RLO az első lekérd eredménye U I RLO a két logikai művelet eredménye U I RLO a három logikai művelet eredm (végeredmény) = M8.3 0 A RLO (végeredm) hozzárendelése az státuszához Lényegében a műveleti lánc eredménye úgy alakul, mint az un. kalkulátorban a számítási eredmény, vagyis minden közbenső eredményhez hozzádódik a következő érték, és a lánc végén rendelkezésre áll a végeredmény. Egyetlen különbség, hogy az előbbi logikai lánc, míg ez utóbbi számtani. Természetesen nem szabad figyelmen kívül hagyni, hogy a fenti példa egyszerű lánc mindenféle zárójelek nélkül. A zárójelezés a helyzetet kicsit bonyolítja, amit azonban itt ismertetni nem lenne helyénvaló. Azok számára, akik a grafikus mejelenítést szeretik (az ehhez szükséges dokumentáció kiadása a későbbiekben tervbe van véve), ugyancsak fel kell hívni a figyelmet, hogy a fenti logikai lánc (Verknüpfung) tulajdonképpen egy hálózat (Netzwerk) vagy másképpen egy hálózat egy logikai lánc. STEP 7 utasításlista (angol rövidítésekkel) 5

6 Élfigyelés Az élfigyelés azt jelenti, hogy érzékelni akarják azt a pillanatot, amikor egy bitváltozó állapotát megváltoztatja (0 - > 1 vagy 1 -> 0). Ezt csak úgy lehet érzékelni, ha a program minden ciklusban összehasonlítja az előző és az aktuális jelállapotot. Ehhez meg kell mindig jegyezni az aktuális jelállapotot, hogy a következő ciklusban mint előzőt fel lehessen használni. Erre szolgál az FN vagy FP utasítás melletti segédváltozó, amelynek természetesen szabadnak változónak kell lenni, és minden ciklusban meg kell maradni (NEM lehet TEMP!!!) és semmi másra nem használható. Az él bekövetkezését nem ez a változó, hanem az ebben a sorban keletkező RLO jelzi. Akkumulátorok Az S7-es vezérlőkben a belső adatmozgatásban (L, T) ill. a számítások elvézésében az akkumulátorok (a processzor erre a feladatra kijelölt regiszterei) vesznek részt. Az S7-300 két darab 32-bites az S7-400 néy darab 32 bites akkumulátorral rendelkezik, a fenti funkciókat azonban mindkettő lényegében az első két akkumulátorral hajtja végre. Az alábbi szövegben a következő jelölések fordulnak evvel kapcsolatban elő:.h.l H - H H - L L - H L - L Bit: Számlálók, időműveletek Az utasításlistában található számláló és időműveletek un. S5-tipusú műveletek, amelyek ismertségük miatt kerültek az S7-es rendszerbe. Bizonyos korlátokkal rendelkeznek, amelyek ma már időnként (ritkán) szűknek bizonyulnak. Az S7-es rendszer természetesen rendelkezik ezeken túlmenő idő- és számláló funkciókkal, amelyek megfelelnek a mai igényeknek. Ezek azonban nem műveletek, hanem függvényhívások, így ebbe az ismertetésbe nem kerülhettek. STEP 7 utasításlista (angol rövidítésekkel) 6

7 1.1 A ÉS-művelet A <Bit> Operandus Adattipus Tárterület <Bit> BOOL I, Q, M, L, D, T, C Az A utasítás kérdést tesz fel a címzett bit logikai 1-es állapotára, és az eredményt ÉSkapcsolatba hozza a státuszregiszter RLO-bitjével. Az ÉS-művelettel közvetlenül logikai műveletet lehet végrehajtani a státuszszó bitjeivel. Ehhez a következő utasításokat kell használni.: ==0, <>0, >0, <0, >=0, <=0, OV, OS, AO, BR. írja: x x x 1 Példa -Program Relé-kapcsolás Áramvezető sín A I 1.0 I es jelállapot Záróérintkező A I 1.1 I es jelállapot Záróérintkező = Q 4.0 Q es jelállapot Tekercs A zárt érintkezőt jelzi STEP 7 utasításlista (angol rövidítésekkel) 7

8 1.2 AN ÉS-NEM-művelet AN <Bit> Operandus Adattipus Tárterület <Bit> BOOL I, Q, M, L, D, T, C Az AN utasítás kérdést tesz fel a címzett bit logikai 0 állapotára, és az eredményt ÉSkapcsolatba hozza a státuszregiszter RLO-bitjével. Az ÉS-művelettel közvetlenül logikai műveletet lehet végrehajtani a státuszszó bitjeivel. Ehhez a következő utasításokat kell használni.: ==0, <>0, >0, <0, >=0, <=0, OV, OS, UO, BR írja: x x x 1 Példa -Program Relé - kapcsolás A I 1.0 Áramvezető sín I jelállapot Záróérintkező AN I 1.1 I es jelállapot Nyitóérintkező = Q 4.0 Q jelállapot Tekercs STEP 7 utasításlista (angol rövidítésekkel) 8

9 1.3 O VAGY-művelet Formatum O <Bit> Operandus Adattipus Tárterület <Bit> BOOL I, Q, M, L, D, T, C Az O utasítás kérdést tesz fel a címzett bit logikai 1-es állapotára, és az eredményt VAGYkapcsolatba hozza a státuszregiszter RLO-bitjével. A VAGY-művelettel közvetlenül logikai műveletet lehet végrehajtani a státuszszó bitjeivel. Ehhez a következő utasításokat kell használni.: ==0, <>0, >0, <0, >=0, <=0, OV, OS, UO, BR írja: x x 1 Beispiel -Program Relais-kapcsolás O I 1.0 O I 1.1 = Q 4.0 Áramvezetősín I es jelállapot záróérintkező Q es jelállapot tekercs I ás jelállapot záróérintkező A zárt érintkezőt jelzi STEP 7 utasításlista (angol rövidítésekkel) 9

10 1.4 ON VAGY-NEM művelet ON <Bit> Operandus Adattipus Tárterület <Bit> BOOL I, Q, M, L, D, T, C Az ON utasítás kérdést tesz fel a címzett bit logikai 0 állapotára, és az eredményt VAGYkapcsolatba hozza a státuszregiszter RLO-bitjével. A VAGY-NEM -művelettel közvetlenül logikai műveletet lehet végrehajtani a státuszszó bitjeivel. Ehhez a következő utasításokat kell használni.: ==0, <>0, >0, <0, >=0, <=0, OV, OS, UO, BR írja: x x 1 Példa -Program Relé-kapcsolás Áramvezető sín O I 1.0 ON I 1.1 I jelállapot záróérintkező I es jelállapot nyitóérintkező Q 4.0 = Q 4.0 tekercs 1 - jelállapot STEP 7 utasításlista (angol rövidítésekkel) 10

11 1.5 X KIZÁRÓ-VAGY X <Bit> Operandus Adattipus Tárterület <Bit> BOOL I, Q, M, L, D, T, C Az X utasítás kérdést tesz fel a címzett bit logikai 1-es állapotára, és az eredményt KIZÁRÓ-VAGY-kapcsolatba hozza a státuszregiszter RLO-bitjével. A KIZÁRÓ-VAGY műveletet többször is használhatja egymás után. Ekkor a közös logikai műveleti eredmény (RLO) akkor 1, ha a lekérdezett operandusok páratlan mennyisége adja az 1-es logikai eredményt. A KIZÁRÓ-VAGY -művelettel közvetlenül logikai műveletet lehet végrehajtani a státuszszó bitjeivel. Ehhez a következő utasításokat kell használni.: ==0, <>0, >0, <0, >=0, <=0, OV, OS, UO, BR írja: x x 1 Példa -Program Relé-kapcsolás Áramvezető sín X I 1.0 I 1.0 kontaktus X I 1.1 I 1.1 kontaktus = Q 4.0 Q 4.0 tekercs STEP 7 utasításlista (angol rövidítésekkel) 11

12 1.6 XN KIZÁRÓ-VAGY-NEM XN <Bit> Operandus Adattipus Tártartomány <Bit> BOOL I, Q, M, L, D, T, C Az X utasítás kérdést tesz fel a címzett bit logikai 0 állapotára, és az eredményt KIZÁRÓ- VAGY-kapcsolatba hozza a státuszregiszter RLO-bitjével. A KIZÁRÓ-VAGY-NEM művelettel közvetlenül logikai műveletet lehet végrehajtani a státuszszó bitjeivel. Ehhez a következő utasításokat kell használni.: ==0, <>0, >0, <0, >=0, <=0, OV, OS, UO, BR írja: x x 1 Példa -Program Relékapcsolás Áramvezető sín X I 1.0 I 1.0 ás kontaktus XN I 1.1 I 1.1 es kontaktus = Q 4.0 Q 4.0 tekercs STEP 7 utasításlista (angol rövidítésekkel) 12

13 1.7 O ÉS a VAGY előtt O A VAGY-művelet (paraméter nélkül) ÉS-kapcsolatok VAGY-műveletét hajtja végre az ÉS a VAGY előtt szabály szerint. (az értelmezőprogram, zárójel nélkül is, előbb az ÉS-műveleteket hajtja végre, és azok eredményét hozza VAGY-kapcsolatba) írja: x 1 - x Példa -Program Relékapcsolás Áramvezető sín A I 0.0 A M 10.0 I 0.0 I 0.2 M 10.1 O A I 0.2 A M 0.3 M 10.0 M 0.3 O M 10.1 = Q 4.0 Q 4.0 tekercs STEP 7 utasításlista (angol rövidítésekkel) 13

14 1.8 A( ÉS elágazással A( Az A( (ÉS elágazással) művelet a RLO és OR biteket valamint a műveleti jelet tárolja a zárójel-veremtárban. A zárójel-veremtár maximum 7-es mélységgel rendelkezik (a zárójel egymásbaágyazási mélysége maximum 7 lehet). írja: Példa -Program Relékapcsolás A( O I 0.0 O M 10.0 ) A( O I 0.2 O M 10.3 ) Áramvezető sín I 0.0 I 0.2 M 10.0 M 10.3 A M 10.1 M 10.1 = Q 4.0 Q 4.0 tekercs STEP 7 utasításlista (angol rövidítésekkel) 14

15 1.9 = Hozzárendelés = <Bit> Operandus Adattipus Tártartomány <Bit> BOOL I, Q, M, L, D Az = <Bit> utasítás beírja a logikai műveleti eredményt (RLO) a megcímzett bitbe. Ha az eredmény 1, akkor a bit értéke is 1, ha 0 akkor a bit értéke 0. írja: x - 0 Példa -Program Relékapcsolás A I 1.0 = Q 4.0 Jelállapot - diagram Áramvezető sín I 1.0 I 1.0 Q Q 4.0 Spule STEP 7 utasításlista (angol rövidítésekkel) 15

16 1.10 FN Negatív (lefutó) él figyelése FN <Bit> Operandus Adattipus Tártartomány <Bit> BOOL I, Q, M, L, D Az FN utasítás utáni bit tárolja a RLO állapotát az előző ciklusból Az FN <Bit> utasítás segítségével egy változó lefutó élét lehet érzékelni, amikor azon a jelállapot 1 ről 0 ra vált. Ekkor az FN utasításnál a RLO egy ciklusra 1-es állapotot vesz fel. Minden programciklus alatt összehasonlításra kerül a figyelt változó állapota az előző ciklus állapotával. Így megállapítható, hogy a változón jelváltás történt-e. Az összehasonlításhoz az értelmező program az előző ciklus állapotát az un. élváltozóban, az FN utáni bitben tárolja. írja: x x 1 STEP 7 utasításlista (angol rövidítésekkel) 16

17 Impulzusdiagram RLO 1 Felfutó él Lefutó él 0 Idő Példa Ha a PLC az I1.0-ás bemeneten negatív (lefutó) élt érzékel, akkor az Q4.0 kimenetet egy ciklusra 1-be kapcsolja. -Program Impulzusdiagramm A I 1.0 FN M 1.0 = Q 4.0 I 1.0 M 1.0 Q ciklusok: I 1.0 M 1.0 Q 4.0 a figyelt változó élváltozó (segédváltozó) az élről működtetett bit STEP 7 utasításlista (angol rövidítésekkel) 17

18 1.11 FP Pozitív (felfutó) él figyelése FP <Bit> Operandus Adattipus Tártartomány <Bit> BOOL I, Q, M, L, D Az FP utasítás utáni bit tárolja a RLO állapotát az előző ciklusból. Az FP <Bit> utasítás segítségével egy változó felfutó élét lehet érzékelni, amikor azon a jelállapot 0 ról 1 re vált. Ekkor az FP utasításnál a RLO egy ciklusra 1-es állapotot vesz fel. Minden programciklus alatt összehasonlításra kerül a figyelt változó állapota az előző ciklus állapotával. Így megállapítható, hogy a változón jelváltás történt-e. Az összehasonlításhoz az értelmező program az előző ciklus állapotát az un. élváltozóban, az FP utáni bitben tárolja. írja: x x 1 STEP 7 utasításlista (angol rövidítésekkel) 18

19 Definíció RLO 1 Felfutó él Lefutó él 0 Idő Példa Ha a PLC az E1.0-ás bemeneten pozitív (felfutó) élt érzékel, akkor az A4.0 kimenetet egy ciklusra 1-be kapcsolja. -Program Jelállapotdiagramm A I 1.0 FP M 1.0 = Q 4.0 I 1.0 M 1.0 Q A ciklusok száma: STEP 7 utasításlista (angol rövidítésekkel) 19

20 1.12? I Egészszámú (integer) összehasonlítás (16 Bit) ==I, <>I, >I, <I, >=I, <=I Az összehasonlítási műveletek az AKKU2-L tartalmát hasonlítják össze az AKKU1-L tartalmával. A két akkumulátor tartalmát a rendszerprogram 16 bites egészszámként értékeli. Az összehasonlítás eredményét a RLO és a státuszszó megfelelő bitje jelzi. A RLO 1-es értéke azt jelenti, hogy az összehasonlítás által feltett kérdésre a válasz igen, a 0 RLO azt jelenti, hogy nem. Az A1 és A0 státuszbitek a kisebb mint, egyenlő vagy nagyobb mint viszonyokat jelzik. írja: - x x 0-0 x x 1 A RLO értékei Összehasonlítási RLO, ha RLO, ha RLO, ha műveletek AKKU 2 > AKKU 1 AKKU 2 = AKKU 1 AKKU 2 < AKKU 1 ==I <>I >I <I >=I <=I Példa Kommentár L MW10 //Az MW1 tartalmának töltése az AKKU1-be (16 Bit-egészszám). L IW24 //Az IW24 tartalmának töltése az AKKU1-be (16 Bit-egészszám). >I //Az AKKU2 és AKKU1 összehasonlítása = M 2.0 //RLO = 1, ha MW10 > IW24. STEP 7 utasításlista (angol rövidítésekkel) 20

21 1.13 BTI BCD szám átalakítása (16 bites) egészszámmá BTI A BTI-utasítás az AKKU1-L tartalmát háromjegyű binárisan kódolt decimális számként értékeli, és ezt átalakítja 16-bites egészszámmá (integer). Az eredmény az AKKU1-L-ben marad. Az AKKU1-H és AKKU2 nem változik. A BCD-szám az AKKU1-L-ben: a megengedett értéktartomány A 0-ás bit...11-es bit tartomány tartalmazza a számot, a 15-ös bit az előjelet (0 = pozitív, 1 = negatív). A 12-es.14-es biteket az átalakítás figyelmen kívül hagyja. Ha egy decimális számjegy (egy 4-bites tetrád BCD-megjelenítésben) a ös meg nem engedett tartományba kerül, az átalakító művelet hibát okoz, ami CPU-leállást okoz. Ezt a leállást az OB121-es hiba-ob segítségével lehet kezelni (mit tegyen a CPU hiba esetén). írja: Példa Kommentár L MW10 //A BCD-számot tölti az AKKU1-L-be. BTI //a BCD-számot átalakítja T MW20 //Transferiere das Ergebnis (Ganzzahl, 16 Bit) nach MW20. " + " " 9 " " 1 " " 5 " MW "+915" BCD BTI BCD átalakítása egészszámmá MW "+915" Egészszám STEP 7 utasításlista (angol rövidítésekkel) 21

22 1.14 ITB Egészszám (16 Bit) átalakítása BCD-számmá ITB Az ITB utasítás az AKKU1-L tartalmát 16-bites egészszámként (integer) értékeli ki, és ezt átalakítja háromjegyű binárisan kódolt decimális számmá (BCD) alakítja. Az eredmény az AKKU1-L-ben tárolódik. A es bitek adják a BCD-szám értékét. A ös bitek az előjelet jelenítik meg (0000 = pozitiv, 1111 = negativ). Az AKKU1-H és AKKU2 nem változik. A BCD-szám tartománya ". Ha a szám a megangedett tartományon kívül van, akkor a státuszszó OV és OS bitjei 1-re kerülnek. Stázuszszó írja: x x Példa Magyarázat L MW10 //Egészszám töltése az AKKU1-L-be. ITB //Egészszám átalakítása (16 Bit) BCD-számmá, tárolása az AKKU1-L-ben. T MW20 //Az eredmény átvitele az MW20-ba. MW "-413" egészszám ITB 16-bites egészszám átalakítása BCD-számmá MW "-413" BCD " - " " 4 " " 1 " " 3 " STEP 7 utasításlista (angol rövidítésekkel) 22

23 1.15 BTD BCD szám átalakítása (32 bites) egészszámmá BTD A BTD-utasítás az AKKU1 tartalmát hétjegyű binárisan kódolt decimális számként értékeli, és ezt átalakítja 32-bites egészszámmá (dupla-integer). Az eredmény az AKKU1-ben marad. Az AKKU2 nem változik. A BCD-szám az AKKU1-ben: a megengedett értéktartomány A es bit tartomány tartalmazza a számot, a 31-es bit az előjelet (0 = pozitív, 1 = negatív). A as biteket az átalakítás figyelmen kívül hagyja. Ha egy decimális számjegy (egy 4-bites tetrád BCD-megjelenítésben) a ös meg nem engedett tartományba kerül, az átalakító művelet hibát okoz, ami CPU-leállást okoz. Ezt a leállást az OB121-es hiba-ob segítségével lehet kezelni (mit tegyen a CPU hiba esetén). írja: Példa L BTD T Magyarázat MD10 //A BCD-szám betöltése az AKKU 1-be. // a BCD-számot átalakítja, és tárolja az AKKU1-ben. MD20 //Az eredményt átviszi az MD20-ba. " + " " 0 " " 1 " " 5 " " 7 " " 8 " " 2 " " 1 " BTD MD10 MD BCD átalakítása egészszámmá " " " " STEP 7 utasításlista (angol rövidítésekkel) 23

24 1.16 ITD 16-bites egészszám átalakítása 32-bites egészszámmá ITD Az ITD utasítás az AKKU1-L tartalmát 16-bites egészszámként értékeli ki, és alakítja 32- bites egészszámmá. Az eredményt az AKKU1-ben tárolja, az AKKU2 nem változik. írja: Példa Magyarázat L MW12 //Az egészszámot (16 Bit) az AKKU 1-L-be tölti. ITD //A 16-bites egészszámot 32-bites egésszszámmá alakítja és az eredményt az AKKU 1-ben tárolja. T MD20 //Az eredményt az MD20-ban tárolja. Példa: MW12 = "-10" (16-bites egészszám): Tartalom AKKU1-H AKKU1-L Bit Az ITD végrehajtása előtt XXXX XXXX XXXX XXXX Az ITD végrehajtása után (az X jelű bitek az átalakítás szempontjából lényegtelenek) STEP 7 utasításlista (angol rövidítésekkel) 24

25 1.17 DTB Egészszám (32 Bit) átalakítása BCD-számmá Format DTB A DTB utasítás az AKKU1 tartalmát 32-bites egészszámként (integer) értékeli ki, és ezt átalakítja hétjegyű binárisan kódolt decimális számmá (BCD). Az eredmény az AKKU1-ben tárolódik. A es bitek adják a BCD-szám értékét. A es bitek az előjelet jelenítik meg (0000 = pozitiv, 1111 = negativ). Az AKKU2 nem változik. A BCD-szám tartománya ". Ha a szám a megangedett tartományon kívül van, akkor a státuszszó OV és OS bitjei 1-re kerülnek. írja: x x Példa Magyarázat L MD10 // Az egészszámot (32 Bit) az AKKU 1-be tölti. DTB // Egészszám átalakítása (32 Bit) BCD-számmá, tárolása az AKKU1-ben. T MD20 // Az eredmény átvitele az MD20-ba. DTB MD10 MD "-701" egészszám 32-bites egészszám átalakítása BCD-re " - " " 0 " " 0 " " 0 " " 0 " " 7 " " 0 " " 1 " "-701" BCD STEP 7 utasításlista (angol rövidítésekkel) 25

26 1.18 DTR 32-bites egészszám átalakítása lebegőpontos számmá (32 Bit, IEEE-FP) DTR A DTR utasítás az AKKU 1 tartalmát 32-bites egészszámként értékeli, és átalakítja azt lebegőpontos számmá (32 Bit, IEEE-FP). Amennyiben szükséges, a művelet kerekíti az eredményt (egy 32-bites egészszám nagyobb pontossággal rendelkezik, mint a 32-bites IEEE-FP lebegőpontos szám). Az eredmény tárolódik az AKKU1-ben. írja: Példa Magyarázat L MD10 //Az egészszám betöltése az AKKU1-be DTR //Az egészszám átalakítása lebegőpontos számmá, és tárolása az AKKU1-ben T MD20 //Az eredmény átvitele az MD20-ban. DTR MD10 MD Az egészszám átalakítása lebegőpontos számmá "+500" egészszám Exponens, 8 Bits 1 Bit A mantissza előjele Mantissza, 23 Bits "+500" IEEE-FP STEP 7 utasításlista (angol rövidítésekkel) 26

27 1.19 INVI 16-bites egészszám 1-es komplemense INVI Az INVI utasítás az AKKU1-L tartalmának 1-es komplemensét képzi. Ennek során az eredeti tartalom minden bitjének értékét megfordítja, azaz a nullákat 1-essel, az 1-eseket nullákkal helyettesíti. Az átalakítás eredményét az AKKU1-L-ben tárolja. írja: Példa Magyarázat L IW8 //Az érték betöltése az AKKU1-L-be. INVI //Az egyeskomplemens képzése (16 Bit). T MW10 // Az eredmény átvitele az MW10-be. Tartalom AKKU1-L Bit Az INVI végrehajtása előtt Az INVI végrehajtása után STEP 7 utasításlista (angol rövidítésekkel) 27

28 1.20 INVD 32-bites egészszám 1-es komplemense INVD Az INVD utasítás az AKKU1 tartalmának 1-es komplemensét képzi. Ennek során az eredeti tartalom minden bitjének értékét megfordítja, azaz a nullákat 1-essel, az 1-eseket nullákkal helyettesíti. Az átalakítás eredményét az AKKU1 -ben tárolja. írja: Példa Magyarázat L ID8 //Az érték betöltése az AKKU1-be. INVD //Az egyeskomplemens képzése (32 Bit). T MD10 // Az eredmény átvitele az MD10-be. Tartalom AKKU1-H AKKU1-L Bit Az INVD végrehajtása előtt Az INVD végrehajtása után STEP 7 utasításlista (angol rövidítésekkel) 28

29 1.21 NEGI 16-bites egészszám 2-es komplemense NEGI A NEGI utasítás az AKKU1-L tartalmának 2-es komplemensét képzi. Ennek során az eredeti tartalom minden bitjének értékét megfordítja, azaz a nullákat 1-essel, az 1-eseket nullákkal helyettesíti, majd hozzáad 1-et. Az átalakítás eredményét az AKKU1-L-ben tárolja A 2-es komplemens képzése művelet a -1-gyel való szorzásnak felel meg. Az A1, A0, OS és OV státuszbiteket az operációs rendszer 1-be állítja. írja: - x x x x A státuszbitek képzése: A1 A0 OV OS eredmény = <= eredmény <= >= eredmény >= eredmény = Példa Magyarázat L IW8 // Az érték betöltése az AKKU1-L-be. NEGI //A ketteskomplemens képzése (16 Bit). T MW10 // Az eredmény átvitele az MW10-be. Tartalom AKKU1-L Bit A NEGI végrehajtása előtt A NEGI végrehajtása után STEP 7 utasításlista (angol rövidítésekkel) 29

30 1.22 NEGD 32-bites egészszám 2-es komplemense NEGD A NEGD utasítás az AKKU1 tartalmának 2-es komplemensét képzi. Ennek során az eredeti tartalom minden bitjének értékét megfordítja, azaz a nullákat 1-essel, az 1-eseket nullákkal helyettesíti, majd hozzáad 1-et. Az átalakítás eredményét az AKKU1-ben tárolja A 2-es komplemens képzése művelet a -1-gyel való szorzásnak felel meg. Az A1, A0, OS és OV státuszbiteket az operációs rendszer 1-be állítja. írja: - x x x x A státuszbitek képzése: A1 A0 OV OS Eredmény = <= Eredmény <= >= Eredmény >= Eredmény = Példa Magyarázat L ID8 // Az érték betöltése az AKKU1-be. NEGD //A ketteskomplemens képzése (32 Bit). T MD10 // Az eredmény átvitele az MD10-be. Tartalom AKKU1-H AKKU1-L Bit NEGD végrehajtása előtt NEGD végrehajtása után STEP 7 utasításlista (angol rövidítésekkel) 30

31 1.23 NEGR Lebegőpontos szám negálása NEGR A NEGR utasítás (32 Bit, IEEE-FP) negálja az AKKU-1-ben lévő lebegőpontos számot. A művelet megfordítja az AKKU-1 31-es bitjének (a mantissza előjele) állapotát. Az eredmény az AKKU1-ben található. írja: Példa Magyarázat L ID8 //Az érték betöltése az AKKU 1-be (példa ED8 = 1.5E+02). NEGR //a lebegőpontos szám negálása (32 Bit, IEEE-FP), és az eredmény tárolása az AKKU 1-ben. T MD10 // Az eredmény átvitele az MD10-be (Példa, eredmény = -1.5E+02). STEP 7 utasításlista (angol rövidítésekkel) 31

32 1.24 RND Lebegőpontos szám kerekítése egészszámmá RND Az RND utasítás az AKKU1 tartalmát lebegőpontos számként (32 Bit, IEEE-FP) értékeli ki, és átalakítja egészszámmá (32 bit). Átalakításkor az eredményt a következő egészszámra kerekíti. Ha a szám a megengedett tartományon túl van, akkor az op. rendszer az OV és OS státuszbiteket 1-be állítja. Ha hiba lép fel (NaN vagy olyan lebegőpontos szám, amelyet nem lehet 32-bites egészszámként megjeleníteni), akkor az op. Rendszer az utasítást nem hajtja végre, hanem túlcsordulást jelez. írja: x x Példa Magyarázat L MD10 //A lebegőpontos szám betöltése az AKKU1-be (32 Bit, IEEE-FP). RND //Átalakítja a lebegőpontos számot (32 Bit, IEEE-FP) egészszámmá (32 Bit) és kerekíti az eredményt, majd elhelyezi az AKKU1-ben. T MD20 //Az eredményt átviszi az MD20-ba. Értéke az átalakítás előtt Értéke az átalakítás után MD10 = "100.5" => RND => MD20 = "+100" MD10 = "-100.5" => RND => MD20 = "-100" STEP 7 utasításlista (angol rövidítésekkel) 32

33 1.25 TRUNC Lebegőpontos szám kerekítése levágással TRUNC TRUNC utasítás az AKKU1 tartalmát lebegőpontos számként (32 Bit, IEEE-FP) értékeli ki, és átalakítja egészszámmá (32 bit). Átalakításkor az eredmény az átalakított számból csak az egészszámú részt őrzi meg, a tört részt egyszerűen levágja. Ha a szám a megengedett tartományon túl van, akkor az op. rendszer az OV és OS státuszbiteket 1-be állítja. Az eredmény az AKKU1-be kerül. Ha hiba lép fel (NaN vagy olyan lebegőpontos szám, amelyet nem lehet 32-bites egészszámként megjeleníteni), akkor az op. Rendszer az utasítást nem hajtja végre, hanem túlcsordulást jelez. írja: x x Példa L TRUNC T Magyarázat MD10 // A lebegőpontos szám betöltése az AKKU1-be (32 Bit, IEEE-FP).. // Átalakítja a lebegőpontos számot (32 Bit, IEEE-FP) egészszámmá (32 Bit) és kerekíti az eredményt, majd elhelyezi az AKKU1-ben. MD20 // Az eredményt átviszi az MD20-ba. Érték az átalakítás előtt Érték az átalakítás után MD10 = "100.5" => TRUNC => MD20 = "+100" MD10 = "-100.5" => TRUNC => MD20 = "-100" STEP 7 utasításlista (angol rövidítésekkel) 33

34 1.26 RND+ Lebegőpontos szám átalakítása egészszámra felfelé kerekítéssel RND+ RND+ utasítás az AKKU1 tartalmát lebegőpontos számként (32 Bit, IEEE-FP) értékeli ki, és átalakítja egészszámmá (32 bit). Az eredményt kerekíti arra a legkisebb egészszámra, amely nagyobb vagy egyenlő az átalakított lebegőpontos számmal (IEEE-Rundungsmodus "Round to +infinity"). Ha a szám a megengedett tartományon túl van, akkor az op. rendszer az OV és OS státuszbiteket 1-be állítja. Az eredmény az AKKU1-be kerül. Ha hiba lép fel (NaN vagy olyan lebegőpontos szám, amelyet nem lehet 32-bites egészszámként megjeleníteni), akkor az op. Rendszer az utasítást nem hajtja végre, hanem túlcsordulást jelez. írja: x x Példa: Magyarázat L MD10 // A lebegőpontos szám betöltése az AKKU1-be (32 Bit, IEEE-FP). RND // Átalakítja a lebegőpontos számot (32 Bit, IEEE-FP) egészszámmá (32 Bit) és kerekíti az eredményt, majd elhelyezi az AKKU1-ben. T MD20 // Az eredményt átviszi az MD20-ba. Érték az átalakítás előtt Érték az átalakítás után MD10 = "100.5" => RND+ => MD20 = "+101" MD10 = "-100.5" => RND+ => MD20 = "-100" STEP 7 utasításlista (angol rövidítésekkel) 34

35 1.27 RND- Lebegőpontos szám átalakítása egészszámra lefelé kerekítéssel RND- RND- utasítás az AKKU1 tartalmát lebegőpontos számként (32 Bit, IEEE-FP) értékeli ki, és átalakítja egészszámmá (32 bit). Az eredményt kerekíti arra a legkisebb egészszámra, amely kisebb vagy egyenlő az átalakított lebegőpontos számmal (IEEE-Rundungsmodus "Round to -infinity"). Ha a szám a megengedett tartományon túl van, akkor az op. rendszer az OV és OS státuszbiteket 1-be állítja. Az eredmény az AKKU1-be kerül. Ha hiba lép fel (NaN vagy olyan lebegőpontos szám, amelyet nem lehet 32-bites egészszámként megjeleníteni), akkor az op. Rendszer az utasítást nem hajtja végre, hanem túlcsordulást jelez.. írja: x x Példa Magyarázat L MD10 // A lebegőpontos szám betöltése az AKKU1-be (32 Bit, IEEE-FP). RND // Átalakítja a lebegőpontos számot (32 Bit, IEEE-FP) egészszámmá (32 Bit) és kerekíti az eredményt, majd elhelyezi az AKKU1-ben. T MD20 // Az eredményt átviszi az MD20-ba. Érték az átalakítás előtt Érték az átalakítás után MD10 = "100.5" => RND- => MD20 = "+100" MD10 = "-100.5" => RND- => MD20 = "-101" STEP 7 utasításlista (angol rövidítésekkel) 35

36 1.28 FR A számláló újraengedélyezése FR <számláló> Operandus Adattipus Tártartomány <számláló> COUNTER Z Az FR <számláló> utasítás törli azt az élváltozót, amely a címzett számlálót előre ill. hátra számláltatja, amikor a logikai műveleti eredmény (RLO) 0-ról 1-re vált. A számláló engedélyezése nem szükséges, ha a normális számlálási funkció kerül végrehajtásra. Ez azt jelenti, hogy az előreszámláló (CU) vagy hátraszámláló (CD) ill. előbeállítási (S) bemeneten folyamatosan fennálló 1-es jel ellenére a számláló engedélyezése után a művelet ismét végrehajtásra kerül. írja: Példa Magyarázat A I 2.0 //Lekérdezi az I 2.0 cím állapotát. FR C3 //Újraengedélyezi a C3-as számlálót, ha a RLO "0"-ról "1"-re vált. STEP 7 utasításlista (angol rövidítésekkel) 36

37 1.29 L A számláló aktuális értékének betöltése az AKKU1-be egészszámként (bináris formátumban) L <számláló> Operandus Adattipus Tártartomány <számláló> COUNTER C Az L <számláló> utasítás az AKKU1-L-be tölti a címzett számláló aktuális számlálási értékét egészszámként, miután az AKKU1 tartalmát átmásolta az AKKU2-be. írja: Példa Magyarázat L C3 //A C3 számláló tartalmának töltése bináris formátumba az AKKU1-L-be A C3 számláló tartalma a tárban Számlálási érték (0 bis 999) bináris formátumban Az AKKU1-L tartalma a töltési utasítás után L C mind"0" STEP 7 utasításlista (angol rövidítésekkel) 37

38 1.30 LC A számláló aktuális értékének betöltése az AKKU1-be BCD-számként LC <számláló> Operandus Adattipus Tártartomány <számláló> COUNTER C Az LC <számláló> az AKKU1-L-be tölti a címzett számláló aktuális számlálási értékét BCD számként, miután az AKKU1 tartalmát átmásolta az AKKU2-be. írja: Magyarázat LC C3 // AKKU1-L-be tölti a címzett számláló aktuális értékét BCD számként A C3 számláló tartalma a tárban Számlálási érték (0 bis 999) bináris formátumban LC C3 Az AKKU1-L tartalma a töltési utasítás után százasok 10 1 tizesek 10 0 egyesek Számlálási érték BCD számként STEP 7 utasításlista (angol rövidítésekkel) 38

39 1.31 R Számláló törlése R <számláló> Operandus Adattipus Tártartomány <számláló> COUNTER C Az R <számláló> utasítás "0" át tölt a címzett számláló tárterületére, ha a RLO = 1. írja: Példa Magyarázat U I 2.3 //Lekérdezi az I 2.3-as bemenet állapotát R C3 //A C3-as számláló tárterületére 0-át tölt, ha a RLO = 1 (I2.3 = 1). STEP 7 utasításlista (angol rövidítésekkel) 39

40 1.32 S A számláló indulási (előbeállítási) értékének beírása S <számláló> Operandus Adattipus Tártartomány <számláló> COUNTER C Az S <számláló> utasítás betölti a az AKKU1-L tartalmát a címzett számláló tárterületére, ha a RLO 0-ról 1-re vált. Az AKKU1-ben a töltendő értéknek BCD számként kell rendelkezésre állni 0 és 999 között. írja: Példa Magyarázat U I 2.3 // Lekérdezi az I 2.3-as bemenet állapotát. L C#3 //betölti az AKKU1-L-be az indulási értéket. S C1 //a C1-es számlálót 3-ra állítja, ha a RLO 0-ról 1-re vált. STEP 7 utasításlista (angol rövidítésekkel) 40

41 1.33 CU Számlálás előre CU <számláló> Operandus Adattipus Tártartomány <számláló> COUNTER C A CU <számláló> utasítás megnöveli a címzett számláló értékét a tárterületen 1-gyel, ha a RLO 0-ról 1-re vált és az érték még nem érte el a 999-et. Ha az érték a tárterületen a 999 határértéket elérte, akkor a művelet már nem növeli továbbb a számláló értékét, és a túlcsordulási bit (OV) sem billen 1-be a státuszregiszterben. írja: Példa Magyarázat A I 2.1 // Lekérdezi az I 2.1-es bemenet állapotát. CU C3 //A C3 tartalmát 1-gyel megnöveli, ha a RLO 0-ról 1-re vált. STEP 7 utasításlista (angol rövidítésekkel) 41

42 1.34 CD Számlálás visszafele CD <számláló> Operandus Adattipus Tártartomány <számláló> COUNTER C A CD <számláló> utasítás csökkenti a címzett számláló értékét a tárterületen 1-gyel, ha a RLO 0-ról 1-re vált és az érték még nem érte el a 0-át. Ha az érték a tárterületen a 0 határértéket elérte, akkor a művelet már nem csökkenti továbbb a számláló értékét, mivel a számláló a negatív tartományban nem működik. írja: Példa Magyarázat A I 2.1 // Lekérdezi az I 2.1-es bemenet állapotát. CD C3 //A C3 tartalmát 1-gyel csökkenti, ha a RLO 0-ról 1-re vált. STEP 7 utasításlista (angol rövidítésekkel) 42

43 1.35 OPN Adatmodul (adatblokk) megnyitása OPN <adatmodul> Operandus Adatmodul tipusa Cím <adatmodul> DB, DI Az OPN <Adatmodul> utasítás globális (DB) vagy instant-adatmodult (DI) nyit meg. Egyidejüleg egy globális és egy instant adatmodul lehet nyitva. írja: Példa Magyarázat OPN DB10 //Megnyitja a DB10-es adatmodult globális adatmodulként. L DBW35 //A DBW35 címzésű adatszót tölti a megnyitott adatmodulból az AKKU1-L-be. T MW22 //Átviszi az AKKU1-L tartalmát az MW22-be. OPN DI20 // Megnyitja a DB20-as adatmodult instant adatmodulként. L DIB12 //Betölti a DIB12 bájtot a megnyitott instant adatmodulból az AKKU1-L-L-be. T DBB37 //Az AKKU1-L-L tartalmát átviszi a megnyitott gobális adatmodul DBB37 adatbájtjába. STEP 7 utasításlista (angol rövidítésekkel) 43

44 2 Ugrások 2.1 Az ugrásutasítások áttekintése Az ugrásutasítások lehetővé teszik a program futásának egy adott ponton való megszakítását, és egy másik ponton folytatását. Ha a LOOP utasítást használják, akkor egy programdarabot többször is végrehajthatnak ugyanabban a ciklusban, vagyis hurkot képezhetnek. Az ugrási művelet ill. a LOOP utasítás operandusa egy un. ugrási cimke. Az ugrási utasítás max. 4 karakterből állhat, amiből az első karakternek betünek kell lenni. A célnál elhelyezett cimke kettősponttal folytatódik, majd a végrehajtandó utasítás következik. Megjegyzés Figyelni kell arra, hogy az S7-300-CPU-k esetében ugrási műveletnél az ugrási célnak mindig a logikai lánc elején kell lenni (nem vonatkozik a tipusra). A cél nem lehet a logikai láncon belül. A következő utasításokkal lehet a program futását feltétlenül megszakítani: JU SPL Feltétel nélküli ugrás Többszörös elágazás A következő utasításokkal lehet a program végrehajtását egy feltételtől függően megszakítani. Az ugrás végrehajtása a RLO-től függ, amit az előző utasítás képzett. JC ugrik, ha RLO = 1 JCN ugrik, ha RLO = 0 JCB JCNB ugrik, ha RLO = 1 és a RLO-t elmenti a BR státuszbitbe ugrik, ha RLO = 0 és a RLO-t elmenti a BR státuszbitbe STEP 7 utasításlista (angol rövidítésekkel) 44

45 A következő utasítások a programvégrehajtást megszakítják a státuszszó megadott bitjeitől függően. SPBI ugrik, ha BR = 1 SPBIN ugrik, ha BR = 0 SPO ugrik, ha OV = 1 SPS ugrik, ha OS = 1 A következő utasítások a programvégrehajtást megszakítják a számítás eredményétől függően. SPZ ugrik ha az eredmény = 0 SPN ugrik ha az eredmény <> 0 SPP ugrik ha az eredmény > 0 SPM ugrik ha az eredmény < 0 SPPZ ugrik ha az eredmény >= 0 SPMZ ugrik ha az eredmény <= 0 SPU ugrik ha az eredmény érvénytelen STEP 7 utasításlista (angol rövidítésekkel) 45

46 2.2 JU Feltétel nélküli (abszolút) ugrás JU <ugrási cimke> Operandus <ugrási cimke> Megnevezés Az ugrási cél szimbólikus neve. A JU <ugrási cimke> utasítás függetlenül a RLO-től megszakítja a lineáris programvégrehajtást és a megadott célra ugrik, majd ott folytatja a programutasítások végrehajtását. Az ugrás célját cimkével kell megadni. Ugrani lehet előre ill. hátra, de a programmodul (programblokk) határain nem lehet átugrani (más programmodulba). Tehát a programutasításnak és az ugrási célnak ugyanabban a programmodulban kell lenni. A célnak egyértelműnek kell lenni, vagyis csak egyszer szabad előfordulni. Ezt a programszerkesztő természetesen ellenőrzi. A maximális ugrási távolság ill szó. Szem előtt kell tartani, hogy a programutasítások hossza különböző (egy, kettő vagy három szó). Írja: Példa Magyarázat A I 1.0 A I 1.2 JC DELE //ugrik, ha a RLO = 1, a DELE ugrási címre. L MB10 INC 1 T MB10 JU FORW //Feltétel nélüli ugrás a FORW cimkére. DELE: L 0 T MB10 FORW: A I 2.1 //A program az ugrás után itt folytatódik. STEP 7 utasításlista (angol rövidítésekkel) 46

47 2.3 JL Többszörös elágazás JL <ugrási címke> Operandus <ugrási címke> Megnevezés Az ugrási cél szimbólikus neve. Az SPL < ugrási címke > utasítás lehetővé teszi egy célból kiindulva több eset (case) közüli választás, másként kifejezve a tösszörös elágazás programozását. A választható célok rögtön az SPL utasítás után következnek, számuk max. 255, és befejeződnek azon a célon, ami az SPL utasítás mellett áll. Minden ugrási cél egy SPA utasításból áll. Az ugrási utasítás számát ( ) a program az AKKU1-L-L-ből veszi. Ameddig az akkumulátor tartalma kisebb mint az SPL utasítás és a mellette megadott ugrási címke közötti ugrási célok száma, az SPL művelet az SPA utasítások valamelyikére ugrik. Ha az AKKU1-L-L nulla, akkor a program az első SPA utasításra ugrik, ha 1, akkor a másodikra stb. Ha az ugrási cél száma az AKKU1-ben nagyobb mint a ténylegesen létező célok száma, akkor a program az utolsó SPA utasítás utáni utasításon folytatódik. Az SPL utasítás után a többszörös elágazást biztosító SPA utasítások között egyéb utasításnak nem szabad lenni. írja: STEP 7 utasításlista (angol rövidítésekkel) 47

48 Példa Magyarázat L MB0 //Az ugrási cél számának ( ) betöltése az AKKU1-L-L-be. JL LSTX //Ugrási cél, ha AKKU1-L-L > 3. JU SEG0 //Ugrási cél, ha AKKU1-L-L = 0. JU SEG1 //Ugrási cél, ha AKKU1-L-L = 1. JU COMM //Ugrási cél, ha AKKU1-L-L = 2. JU SEG3 //Ugrási cél, ha AKKU1-L-L = 3. LSTX: JU COMM SEG0: * //utasítás. * JU COMM SEG1: * //utasítás. * JU COMM SEG3: * //utasítás. * JU COMM COMM: * * STEP 7 utasításlista (angol rövidítésekkel) 48

49 2.4 JC Ugrik, ha RLO = 1 JC <ugrási cimke> Operandus <ugrási cimke> Megnevezés Az ugrási cél szimbólikus neve. Ha RLO = 1, akkor a JC <ugrási címke> utasítás megszakítja a lineáris programvégrehajtást és a megadott ugrási címkére ugrik. A program végrehajtása itt folytatódik. Az ugrás történhet előre is és hátrafelé, de a programmodulból (programblokkból) kiugrani nem lehet. Tehát az ugrási utasításnak és a címkének ugyanabban a programmodulban kell lenni. Az ugrási utasításnak egyértelmünek kell lenni, a címke tehát csak egyszer fordulhat elő egy adott programmodulban. A max. ugrási táv ill utasítás-szó lehet. A tényleges maximális utasítás, amit a program át tud ugrani, az utasítások kombinációjától függ (egy-, két- vagy háromszavas utasítás. Ha a RLO = 0, akkor az operációs rendszer nem hajtja végre az ugrást. A RLO-t 1-re állítja, és a program folytatódik a megszakítás helyétől. írja: Példa Magyarázat A I 1.0 A I 1.2 JC JOVR //Ugrik, ha RLO = 1, a JOVR címkére. L IW8 //Itt folytatódik a program ha az ugrás nem hajtódik végre. T MW22 JOVR: A I 2.1 //Ha az ugrás végrehajtódik, akkor a program itt folytatódik. STEP 7 utasításlista (angol rövidítésekkel) 49

50 2.5 JCN Ugrik ha RLO = 0 SPBN <ugrási címke> Operandus <ugrási címke> Megnevezés Az ugrási cél szimbólikus neve. Ha a RLO = 0, akkor a JCN <ugrási címke> utasítás megszakítja a lineáris programfutást és az ugrási címkénél folytatja. Az ugrás történhet előre is és hátrafele, de a programmodulból (programblokkból) kiugrani nem lehet. Tehát az ugrási utasításnak és a címkének ugyanabban a programmodulban kell lenni. Az ugrási utasításnak egyértelmünek kell lenni, a címke tehát csak egyszer fordulhat elő egy adott programmodulban. A max. ugrási táv ill utasítás-szó lehet. A tényleges maximális utasítás, amit a program át tud ugrani, az utasítások kombinációjától függ (egy-, két- vagy háromszavas utasítás). Ha a RLO = 1, akkor az operációs rendszer nem hajtja végre az ugrást. A RLO-t 1-re állítja, és a program folytatódik a megszakítás helyétől. írja: Példa Magyarázat A I 1.0 A I 1.2 JCN JOVR // Ugrik, ha RLO = 0, a JOVR címkére. L IW8 // Itt folytatódik a program ha az ugrás nem hajtódik végre.. T MW22 JOVR: A I 2.1 // Ha az ugrás végrehajtódik, akkor a program itt folytatódik. STEP 7 utasításlista (angol rövidítésekkel) 50

51 2.6 LOOP Hurok programozása LOOP <ugrási címke> Operandus <Ugrási címke> Megnevezés Az ugrási cél szimbólikus neve. A LOOP <ugrási címke> (az AKKU1-L tartalmának csökkentése, és ugrás, ha az AKKU1-L <> 0) utasítás egyszerűbbé teszi a hurkok programozását. A hurokszámláló előjel nélküli 16-bites egészszám, és az AKKU1-L-ben kell lennie, amikor a LOOP utasítás következik. A LOOP utasításnál a program visszaugrik a LOOP után megadott címkére. Az ugrás mindaddig folytatódik, ameddig az AKKU1-L nem lesz nulla. A programnak azt a részét, amelyet többször akarnak végrehajtani az ugrási címke és a LOOP utasítás közé kell írni. írja: Példa Magyarázat L L#1 //Állandó töltése az AKKU 1-be. T MD20 //Az AKKU 1 tartalmának átvitele az MD20-ba (inicializálás). L 5 //A hurokszám töltése az AKKU1-L-be NEXT: T MW10 //Ugrási cimke = a hurok kezdete / az AKKU1-L betöltése a hurokszámlálóba. L MD20 * D //Az MD20 tartalmának szorzása az MB10 tartalmával T MD20 //Az eredmény átvitele az MD20-ba. L MW10 //A hurokszámláló töltése az AKKU1-be. LOOP NEXT //Az AKKU 1 tartalmának csökkentése eggyel és ugrás a NEXT címkére, ha az AKKU1-L > 0. L MW24 //A hurok befejezése után a program itt folytatódik. L 200 >I STEP 7 utasításlista (angol rövidítésekkel) 51

52 2.7 +I Az AKKU 1 és 2 egészámként történő összeadása (16 Bit) +I A +I utasítás összeadja az AKKU1-L tartalmát az AKKU2-L tartalmával és az eredményt tárolja az AKKU1-L-ben. Az összeadás során az AKKU1-L és AKKU2-L tartalmát a program 16-bites egészszámként értékeli. A müvelet nem befolyásolja és nem veszi figyelembe a RLO-t. Az A1, A0, OS, és OV státuszbit az eredménytől függően változik. A két akkumulátorral rendelkező CPU-k esetében az AKKU2 tartalma változatlan marad. A négy akkumulátorral rendelkező CPU-k esetében az operációs rendszer az AKKU3 tartalmát az AKKU2-be, az AKKU 4 tartalmát az AKKU 3-ba másolja. Az AKKU 4 tartalma nem változik. írja: - x x x x A státuszbitek képzése A1 A0 OV OS Összeg = <= összeg < >= összeg > összeg = >= összeg > <= összeg < Példa Magyarázat L IW10 //az IW10-ben lévő érték az AKKU1-L-be kerül. L MW14 //Az MW14 tartalmának betöltése az AKKU1-L-be. Ekkor az AKKU-1 korábbi tartalma átmegy az AKKU2-L-be. +I //összeadja az AKKU2-L és a AKKU1-L tartalmát, az eredményt az AKKU1- L-ben tárolja T DB1.DBW25 //Az AKKU1-L tartalma átmásolódik a DB1 DBW25-es szavába. STEP 7 utasításlista (angol rövidítésekkel) 52

53 2.8 -I Az AKKU1 kivonása az AKKU2-ből (16 bit) -I A -I utasítás kivonja az AKKU1-L tartalmát az AKKU2-L tartalmából, és az eredményt az AKKU1-L-ben tárolja. A kivonás során az AKKU1-L és AKKU2-L tartalmát a program 16- bites egészszámként értékeli. A müvelet nem befolyásolja és nem veszi figyelembe a RLO-t. Az A1, A0, OS, és OV státuszbit az eredménytől függően változik. A két akkumulátorral rendelkező CPU-k esetében az AKKU2 tartalma változatlan marad. A négy akkumulátorral rendelkező CPU-k esetében az operációs rendszer az AKKU3 tartalmát az AKKU2-be, az AKKU 4 tartalmát az AKKU 3-ba másolja. Az AKKU 4 tartalma nem változik. írja: - x x x x A státuszbitek képzése A1 A0 OV OS különbség = <= különbség < >= különbség > >= különbség > <= különbség < Példa Magyarázat L IW10 // az IW10-ben lévő érték az AKKU1-L-be kerül. L MW14 // Az MW14 tartalmának betöltése az AKKU1-L-be. Ekkor az AKKU-1 korábbi tartalma átmegy az AKKU2-L-be -I //Az AKKU1-L kivonása az AKKU2-L-ből,az eredmény tárolása az AKKU1-Lben. T DB1.DBW25 // Az AKKU1-L tartalma átmásolódik a DB1 DBW25-es szavába. STEP 7 utasításlista (angol rövidítésekkel) 53

54 2.9 *I AKKU1 és AKKU2 szorzása egészszámként (16 Bit) *I A *I utasítás az AKKU2-L tartalmát szorozza össze az AKKU1-L tartalmával. A szorzás során az AKKU1-L és AKKU2-L tartalmát a program 16-bites egész-számként értékeli. Az eredmény az AKKU1-ben tárolódik. Ha az OV 1 = 1 és OS = 1, akkor az eredmény túllépi a 16-bites egészszám határát. A müvelet nem befolyásolja és nem veszi figyelembe a RLO-t. Az A1, A0, OS, és OV státuszbit az eredménytől függően változik. A két akkumulátorral rendelkező CPU-k esetében az AKKU2 tartalma változatlan marad. A négy akkumulátorral rendelkező CPU-k esetében az operációs rendszer az AKKU3 tartalmát az AKKU2-be, az AKKU 4 tartalmát az AKKU 3-ba másolja. Az AKKU 4 tartalma nem változik. írja: - x x x x A státuszbitek képzése A1 A0 OV OS szorzat = <= szorzat < >= szorzat > >= szorzat > <= szorzat < Példa Magyarázat L IW10 // az IW10-ben lévő érték az AKKU1-L-be kerül. L MW14 // Az MW14 tartalmának betöltése az AKKU1-L-be. Ekkor az AKKU-1 korábbi tartalma átmegy az AKKU2-L-be. *I //Az AKKU2-L szorzása azakku1-l-lel,az eredmény tárolása az AKKU 1- ben. T DB1.DBD25 // Az AKKU1 tartalma átmásolódik a DB1 DBD25-ös duplaszóba. STEP 7 utasításlista (angol rövidítésekkel) 54

55 2.10 /I Az AKKU2 osztása az AKKU1-gyel (16 Bit) /I A /I utasítás elosztja az AKKU2-L-t az AKKU1-L tartalmával. Az osztás során az AKKU1-L és AKKU2-L tartalmát a program 16-bites egész-számként értékeli. Az eredmény az AKKU1-ben tárolódik, és két egészszámból áll (16 Bit): a hányados és az osztás maradéka. A hányados az AKKU1-L-ben, a maradék pedig az AKKU1-H ban található. A müvelet nem befolyásolja és nem veszi figyelembe a RLO-t. Az A1, A0, OS, és OV státuszbit az eredménytől függően változik. A két akkumulátorral rendelkező CPU-k esetében az AKKU2 tartalma változatlan marad. A négy akkumulátorral rendelkező CPU-k esetében az operációs rendszer az AKKU3 tartalmát az AKKU2-be, az AKKU 4 tartalmát az AKKU 3-ba másolja. Az AKKU 4 tartalma nem változik. írja: - x x x x A státuszbitek képzése A1 A0 OV OS hányados = <= hányados < >= hányados > hányados = Osztás nullával Magyarázat L IW10 //Az IW10 értéke betöltődik az AKKU1-L-be. L MW14 //Betölti az MW14 tartalmát az AKKU1-L-be, és áttolja az előző tartalmat az AKKU2-L-be /I //Az AKKU2-L osztása az AKKU1-L tartalmával, az eredmény tárolása az AKKU1- ben: AKKU1-L: hányados, AKKU1-H: maradék T MD20 //Az AKKU 1 tartalma (eredmény) átmásolódik az MD20-ba. STEP 7 utasításlista (angol rövidítésekkel) 55

56 Egészszámú állandó hozzáadása (16, 32 Bit) + <egészszámú állandó> Operandus Adattipus < egészszámú állandó > állandó, (16 ill. 32 Bit) A + < egészszámú állandó > utasítás egészszámú állandót ad az AKKU1 tartalmához, és tárolja az AKKU1-ben. A művelet a státuszbitek befolyásolása nélkül kerül végrehajtásra. A + < egészszámú állandó, 16bit > utasítás egészszámú állandót ad az AKKU1-L tartalmához (tartomány ), és tárolja az AKKU1-L-ben. A + < egészszámú állandó, 32 bit > utasítás egészszámú állandót ad az AKKU1 tartalmához tartomány bis , és tárolja az AKKU1-ben. írja: Példa Magyarázat L IW10 // Az IW10 értéke betöltődik az AKKU1-L-be. L MW14 // Betölti az MW14 tartalmát az AKKU1-L-be, és áttolja az előző tartalmat az AKKU2-L-be. +I //összeadja az AKKU1-L és AKKU2-L tartalmát, az eredményt tárolja az AKKU1-L-ben //25-öt ad az AKKU1-L-hez, és tárolja az AKKU1-L-ben. T DB1.DBW25 // Az AKKU1 tartalma átmásolódik a DB1 DBD25-ös szóba.. Magyarázat L IW12 L IW //Összeadja az AKKU1-L-t és a 100-at, az eredményt tárolja az AKKU1-Lben. >I //Ha AKKU 2 > AKKU 1 ill. IW 12 > (IW ), SPB NEXT //akkor ugrás a NEXT címkére. STEP 7 utasításlista (angol rövidítésekkel) 56

57 2.12 L Töltés L <operandus> Operandus Adattipus Tárterület Címtartomány <Operandus> BYTE WORD DWORD I, Q, PI, M, L, D, Pointer, Parameter Az L <Operandus> utasítás betölti a címzett bájt, szó vagy duplaszó tartalmát az AKKU1- be. A töltés előtt a korábbi tartalom átkerül az AKKU2-be. írja: Példa Erläuterung L IB10 //az IB10 betöltése az AKKU1-L-L-be. L MB120 //az MB120 tartalmának betöltése az AKKU1-L-L-be. L LD252 //az LD252 lokális adat betöltése az AKKU 1-be. L P# I 8.7 //mutató (pointer) töltése az AKKU1-be L P# ANNA //betölti a megnevezett (ANNA) paraméterre mutató mutatót (pointer) az AKKU1-be (ez az utasítás betölti a megnevezett paraméter címeltolását. Ha a multiinstant-fb-ben az instant adatmodul tényleges címét akarják megkapni, akkor ehhez az értékhez hozzá kell adni az AR2 címzőregiszterben lévő értéket). STEP 7 utasításlista (angol rövidítésekkel) 57

58 Az AKKU1 tartalma Az AKKU1 tartalma AKKU1-H-H AKKU1-H-L AKKU1-L-H AKKU1-L-L A töltési művelet végrehajtása előtt XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX Az L MB10 (L <bájt>) utasítás végrehajtása után Az L MW10 (L <szó>) utasítás végrehajtása után Az L MD10 (L <duplaszó>) utasítás végrehajtása után Az L P# ANNA utasítás végrehajtása után (FB-ben) <MB10> <MB10> <MB11> <MB10> <MB11> <MB12> <MB13> <86> < Az ANNA bit-eltolása (offset) az FB-kezdet-hez képest>. Az L P# ANNA utasítás végrehajtása után (FC-ben) <az ANNA paraméternek átadandó adat tartományon átnyúló címe > X = "1" vagy "0" STEP 7 utasításlista (angol rövidítésekkel) 58

59 2.13 T Átvitel T <Operandus> Operandus Adattipus Tártartomány cím <Operandus> BYTE WORD DWORD I, Q, PQ, M, L, D A T <Operandus> utasítás az AKKU1 tartalmát viszi (másolja) át a paraméterben megadott címre. Az AKKU1-ből másolandó bájtmennyiség attól függ, hogy mekkora méret (bájtmennyiség) van megadva a célcímben. Az AKKU 1 az adatokat az átviteli folyamat után is tárolja. Ha az átvitel közvetlenül a kimenetre megy, akkor az átvitt érték a kimeneti folyamati tárképben is megjelenik. A müvelet nem befolyásolja és nem veszi figyelembe a RLO-t. írja: Példa Magyarázat T QB10 //az AKKU1-L-L tartalma kerül az QB10-be. T MW14 // az AKKU1-L-L tartalma kerül az MW14-be. T DBD2 // az AKKU1-L-L tartalma kerül a DBD2-be. STEP 7 utasításlista (angol rövidítésekkel) 59

60 3 Programvezérlés 3.1 A programvezérlési műveletek áttekintése Az S7-es PLC-ben a következő programvezérlési műveletek állnak rendelkezésre BE programmodul (blokk) vége BEC programmodul (blokk) vége, feltételes BEU programmodul (blokk) vége, abszolút CALL programmodul (blokk) hívása CC programmodul (blokk) hívása, feltételes UC programmodul (blokk) hívása, abszolút STEP 7 utasításlista (angol rövidítésekkel) 60

61 3.2 BE programmodul (blokk) vége BE A BE utasítás lezárja a program futását az adott programmodulban, és visszaugrik arra a modulra, amely ezt hívta. A program futását a hívási utasítás utáni első utasításon folytatja. A lezárt modul lokális adatterületét felszabadítja, és a hívó modul lokális adatterülete lesz aktuális. Ha volt adatmodul megnyítva a hívás pillanatában, az újra aktuálissá válik. A RLO az aktuális programmodulból átkerül a hívó modulba. A BE utasítás nem függ semmiféle feltételtől. Ha a program a BE utasítás átugorja, akkor a végrehajtás az adott modulban folytatódik. A BE utasítás hatása kis mértékben eltér az S5-ös rendszerben betöltött szerepétől: az S7- es rendszerben a BE hatása teljesen megegyezik a jelenlegi és korábbi BEU utasítás szerepével. írja: Példa Magyarázat A I 1.0 JC NEXT //a NEXT címkére ugrik, ha a RLO = 1 (I 1.0 = 1). L IW4 //itt folytatódik, ha az ugrás nem hajtódik végre. T IW10 A I 6.0 A I 6.1 S M 12.0 BE //modulvége. NEXT: NOP 0 // itt folytatódik, ha az ugrás végrehajtódik. STEP 7 utasításlista (angol rövidítésekkel) 61

62 3.3 BEC programmodul (blokk) vége, feltételes BEC Ha a RLO = 1, akkor a BEC utasítás befejezi a programvégrehajtást az adott programmodulban és visszaugrik arra a modulra, amely ezt hívta. A program futását a hívási utasítás utáni első utasításon folytatja. A lezárt modul lokális adatterületét felszabadítja, és a hívó modul lokális adatterülete lesz aktuális. Ha volt adatmodul megnyítva a hívás pillanatában, az újra aktuálissá válik. A RLO (= 1) a befejezett programmodulból átkerül a hívó modulba. Ha a RLO 0, akkor a BEC nem hajtódik végre, az operációs rendszer a RLO-t 1-re állítja, és a program a következő utasításon folytatódik. írja: x Példa Magyarázat A I 1.0 //Ha az I1.0 = 1, akkor a program befejeződik. BEC //Ha az I1.0 = 0, akkor a BEB nem hajtódik végre. L IW4 //és a program ennél az utasításnál folytatatódik). T MW10 STEP 7 utasításlista (angol rövidítésekkel) 62

63 3.4 BEU programmodul (blokk) vége, feltétel nélküli BEU A BEU utasítás lezárja a program futását az adott programmodulban, és visszaugrik arra a modulra, amely ezt hívta. A program futását a hívási utasítás utáni első utasításon folytatja. A lezárt modul lokális adatterületét felszabadítja, és a hívó modul lokális adatterülete lesz aktuális. Ha volt adatmodul megnyítva a hívás pillanatában, visszatéréskor az újra aktuálissá válik. A RLO az aktuális programmodulból átkerül a hívó modulba. A BE utasítás nem függ semmiféle feltételtől. Ha a program a BE utasítás átugorja, akkor a végrehajtás az adott modulban folytatódik.. írja: Példa Magyarázat A I 1.0 Ha az I1.0 = 1 JC NEXT //akkor a NEXT L IW4 //ha az I1.0 = 0, akkor a program itt folytatódik. T IW10 A I 6.0 A I 6.1 S M 12.0 BEU //Feltétel nélküli modulvége. NEXT: NOP 0 //ha az ugrás végrehajtódott, akkor itt folytatódik a progr. STEP 7 utasításlista (angol rövidítésekkel) 63

64 3.5 CALL Programmodul hívása CALL <a kódmodul neve> A CALL utasítás függvények (FC) funkciómodulok (FB) ill. a Siemens által szolgáltatott rendszerfüggvények (SFC, SFB) hívására szolgálnak. A CALL művelet azt az FC-t, SFC-t, FB-t vagy SFB-t hívja, amit az utasítás paraméterében megadtak. A hívás a RLO-tól ill. minden más feltételtől függetlenül történik. Ha FB-t vagy SFB-t hívnak, akkor a hívásban a függvényeket Instant-DB-vel kell ellátni. A hívás után a hívott függvény kerül végrehajtásra, majd folytatódik a hívó program feldolgozása. A hívott kódmodult meg lehet adni aszolút vagy szimbólikus címzéssel. Az SFB-/SFC-hívás után a regiszterek tartalmát az operációs rendszer visszaállítja. Példa: CALL FB1, DB1 ill. CALL FILLVAT1, RECIPE1 Kódmodul Modulfajta A hívás szintaxisa (abszolút cím) FC Függvény CALL FCn SFC Rendszerfüggvény CALL SFCn FB Fukciómodul (funkcióblokk) CALL FBn1,DBn2 SFB Rendszer-Funkciómodul CALL SFBn1,DBn2 Megjegyzés Ha az (utasításlista) szerkesztővel dolgozik, akkor a hívásoknak már meglévő FC-kre ill FB-kre kell hivatkozniuk, ill. A szimbólikus neveket előzőleg definiálni kell. STEP 7 utasításlista (angol rövidítésekkel) 64

65 Paraméterek átadása A hívó programmodul a hívott programmodullal a paramétereken keresztül adatokat tud cserélni. A paraméterlistát a programszerkesztőben híváskor elhelyezi a STEP7 fejlesztőprogram CALL utasítást beadásakor. Az FC-k vagy SFC-k hívásakor a paraméterekhez (formális paraméterekhez) aktuális paramétereket kell hozzárendelni. Az FB-k és SFB-k esetében nem kötelező minden paramétert abszolút címhez hozzárendelni, mert az alapértelmezés szerinti átadási hely az FB instant-db-je. Ha a paramétereknél (formális operandusoknál) nincs abszolút cím megadva, akkor az átadott adat az instant-db-ben található, és a program is innen veszi, vagy ide teszi. Az IN-paraméterek esetében állandók vagy abszolút ill. szimbólikus címeket lehet megadni, az OUT- ill. IN-OUT paramétereknél természetesen abszolút vagy szimbólikus címeket lehet meadni. Figyelemmel kell lenni arra, hogy minden cím ill. állandó esetében a program egyezteti az adattipusokat, és az eltérést elutasítja. A CALL utasítás a B-Stack-ben tárolja a visszatérési címet, a két megnyitott adatmodul címét valamint az MA-bitet. Ezen túlmenően létrehozza a hívandó programmodul TEMP (Lokal-Stack) adatterületét. írja: Példa: Paraméterek hozzárendelése az FC6 hívásánál CALL FC6 c Formális paraméter Aktuális paraméter NO OF TOOL := MW100 TIME OUT := MW110 FOUND := Q 0.1 ERROR := Q Példa: Az FB99 hívása a DB16-os adatmodullal (mint instant-db) CALL FB99,DB16 Formális paraméter MAX_RPM MIN_RPM MAX_POWER MAX_TEMP Aktuális paraméter := #RPM1_MAX := #RPM1 := #POWER1 := #TEMP1 STEP 7 utasításlista (angol rövidítésekkel) 65

66 3,Példa: Az FB99 hívása a DB2-es adatmodullal (mint instant-db) CALL FB99,DB2 Formális paraméter MAX_RPM MIN_RPM MAX_POWER MAX_TEMP Aktuális paraméter := #RPM2_MAX := #RPM2 := #POWER2 := #TEMP2 Megjegyzés Minden FB- ill. SFB-híváshoz meg kell adni egy un. Instant-DB-t a fenti példában látható módon. STEP 7 utasításlista (angol rövidítésekkel) 66

67 3.6 FB hívása CALL FB n1, DB n1 A művelet FB-k hívására szolgál. A hívott modul címét a CALL utasítás után kell írni, amely így a RLO-tól és minden egyéb feltételtől függetlenül megtörténik. A CALL utasítással hívott FB-k esetében az FB címe után egy DB-t is meg kell adni. Ezt a DB-t instant-db-nek nevezik. A hívás után a hívott függvény kerül végrehajtásra, majd folytatódik a hívó program feldolgozása. A hívott kódmodult meg lehet adni aszolút vagy szimbólikus címzéssel. A paraméterek átadása (un. Inkrementális üzemmódan *** ) A hívott programmodul a hívó programmodullal a formális paramétereken keresztül tud adatokat cserélni. Az IN, OUT vagy IN_OUT csoportba tartozó paramétereket a programszerkesztő automatikusan felírja a CALL után, ha egy paraméterezett programmodult a CALL utasítással meghívnak. A program írójának csak a formális paraméterekhez tartozó aktuális paramétereket kell megadni. A futás után minden paraméter megmarad az FB instant-db-jében. Ha az aktuális paraméter DB-változó, akkor annak teljes címét meg ell adni (pl. DB1.DBW2). Az IN-csoportba tartozó paraméterekhez állandókat ill. abszolút vagy szimbólikus címeket, az OUT ill. IN_OUT csoportba tartozó paraméterekhez abszolút vagy szimbólikus címeket lehet aktuális paraméterként megadni. Figyelemmel kell lenni arra, hogy minden címnek ill. állandónak olyan adattipussal kell rendelkezni, mint a formális paraméternek. A CALL utasítás a B-Stack-ben tárolja a visszatérési címet, a két megnyitott adatmodul címét valamint az MA-bitet. Ezen túlmenően létrehozza a hívandó programmodul TEMP (Lokal-Stack) adatterületét. írja: Példa: Az FB99 hívása a DB16-os adatmodullal (mint instant-db) CALL FB99,DB16 Formális paraméter MAX_RPM MIN_RPM MAX_POWER MAX_TEMP Aktuális paraméter := #RPM1_MAX := #RPM1 := #POWER1 := #TEMP1 STEP 7 utasításlista (angol rövidítésekkel) 67

68 3.7 FC hívása CALL FC n Megjegyzés Ha -szerkesztővel dolgoznak, akkor az n -adatnak már meglvő programmodulra kell vonatkozni. A szimbólikus neveet is előzőleg kell definiálni. A művelet FC-k hívására szolgál. A hívott modul címét a CALL utasítás után kell írni, amelynek hívása a RLO-tól és minden egyéb feltételtől függetlenül megtörténik. A hívás után a hívott programmodul kerül végrehajtásra, majd folytatódik a hívó program feldolgozása. A hívott kódmodult meg lehet adni aszolút vagy szimbólikus címzéssel. A paraméterek átadása (un. Inkrementális üzemmódan *** ) A hívott programmodul a hívó programmodullal a formális paramétereken keresztül tud adatokat cserélni. Az IN, OUT vagy IN_OUT csoportba tartozó paramétereket a programszerkesztő automatikusan felírja a CALL után, ha egy paraméterezett programmodult a CALL utasítással meghívnak. A program írójának csak a formális paraméterekhez tartozó aktuális paramétereket kell megadni. A futás után minden paraméter megmarad az FB instant-db-jében. Ha az aktuális paraméter DB-változó, akkor annak teljes címét meg ell adni (pl. DB1.DBW2). Az IN-csoportba tartozó paraméterekhez állandókat ill. abszolút vagy szimbólikus címeket, az OUT ill. IN_OUT csoportba tartozó paraméterekhez abszolút vagy szimbólikus címeket lehet aktuális paraméterként megadni. Figyelemmel kell lenni arra, hogy minden címnek ill. állandónak olyan adattipussal kell rendelkezni, mint a formális paraméternek. A CALL utasítás a B-Stack-ben tárolja a visszatérési címet, a két megnyitott adatmodul címét valamint az MA-bitet. Ezen túlmenően létrehozza a hívandó programmodul TEMP (Lokal-Stack) adatterületét. STEP 7 utasításlista (angol rövidítésekkel) 68

69 írja: Példa: az FC6 hívása, a paraméterek hozzárendelése CALL FC6 Formalparameter Aktualparameter NO OF TOOL := MW100 TIME OUT := MW110 FOUND := Q 0.1 ERROR := Q STEP 7 utasításlista (angol rövidítésekkel) 69

70 3.8 SFB hívása CALL SFB n1, DB n2 A művelet a Siemens által a CPU-ba beépített rendszer-fb-k (SFB) hivására szolgálnak. A hívott modul címét a CALL utasítás után kell írni, amelynek hívása a RLO-tól és minden egyéb feltételtől függetlenül megtörténik. A CALL utasítással hívott SFB-k esetében az SFB címe után egy DB-t is meg kell adni. Ezt a DB-t instant-db-nek nevezik.a hívás után a hívott programmodul kerül végrehajtásra, majd folytatódik a hívó program feldolgozása. A hívott kódmodult meg lehet adni aszolút vagy szimbólikus címzéssel. A paraméterek átadása (un. Inkrementális üzemmódan *** ) A hívott programmodul a hívó programmodullal a formális paramétereken keresztül tud adatokat cserélni. Az IN, OUT vagy IN_OUT csoportba tartozó paramétereket a programszerkesztő automatikusan felírja a CALL után, ha egy paraméterezett programmodult a CALL utasítással meghívnak. A program írójának csak a formális paraméterekhez tartozó aktuális paramétereket kell megadni. A futás után minden paraméter megmarad az FB instant-db-jében. Ha az aktuális paraméter DB-változó, akkor annak teljes címét meg ell adni (pl. DB1.DBW2). Az IN-csoportba tartozó paraméterekhez állandókat ill. abszolút vagy szimbólikus címeket, az OUT ill. IN_OUT csoportba tartozó paraméterekhez abszolút vagy szimbólikus címeket lehet aktuális paraméterként megadni. Figyelemmel kell lenni arra, hogy minden címnek ill. állandónak olyan adattipussal kell rendelkezni, mint a formális paraméternek. A CALL utasítás a B-Stack-ben tárolja a visszatérési címet, a két megnyitott adatmodul címét valamint az MA-bitet. Ezen túlmenően létrehozza a hívandó programmodul TEMP (Lokal-Stack) adatterületét.. írja: Példa CALL SFB4,DB4 Formalparameter Aktualparameter IN: I0.1 PT: T#20s Q: M0.0 ET: MW10 STEP 7 utasításlista (angol rövidítésekkel) 70

71 3.9 SFC hívása CALL SFC n Megjegyzés Ha -szerkesztővel dolgoznak, akkor az n -adatnak már meglvő programmodulra kell vonatkozni. A szimbólikus neveet is előzőleg kell definiálni. A művelet a Siemens által a CPU-ba beépített rendszer-fc-k (SFC) hivására szolgálnak. A hívott modul címét a CALL utasítás után kell írni, amelynek hívása a RLO-től és minden egyéb feltételtől függetlenül megtörténik. A hívás után a hívott programmodul kerül végrehajtásra, majd folytatódik a hívó program feldolgozása. A hívott kódmodult meg lehet adni aszolút vagy szimbólikus címzéssel. A paraméterek átadása (un. Inkrementális üzemmódan *** ) A hívott programmodul a hívó programmodullal a formális paramétereken keresztül tud adatokat cserélni. Az IN, OUT vagy IN_OUT csoportba tartozó paramétereket a programszerkesztő automatikusan felírja a CALL után, ha egy paraméterezett programmodult a CALL utasítással meghívnak. A program írójának csak a formális paraméterekhez tartozó aktuális paramétereket kell megadni. A futás után minden paraméter megmarad az FB instant-db-jében. Ha az aktuális paraméter DB-változó, akkor annak teljes címét meg ell adni (pl. DB1.DBW2). Az IN-csoportba tartozó paraméterekhez állandókat ill. abszolút vagy szimbólikus címeket, az OUT ill. IN_OUT csoportba tartozó paraméterekhez abszolút vagy szimbólikus címeket lehet aktuális paraméterként megadni. Figyelemmel kell lenni arra, hogy minden címnek ill. állandónak olyan adattipussal kell rendelkezni, mint a formális paraméternek. A CALL utasítás a B-Stack-ben tárolja a visszatérési címet, a két megnyitott adatmodul címét valamint az MA-bitet. Ezen túlmenően létrehozza a hívandó programmodul TEMP (Lokal-Stack) adatterületét. írja: Példa: Paraméter nélküli SFC hívása CALL SFC43 Magyarázat //az SFC43 hívása a ciklusfigyelési idő újraindítására (paraméter nélkül). STEP 7 utasításlista (angol rövidítésekkel) 71

72 3.10 CC Feltételes programmodul hívás CC <a kódmodul címe> A CC utasítás hívja a megadott című programmodult, ha a RLO = 1. A hívott modul paraméter nélküli FC vagy FB lehet. A CC utasítás hasonlít a CALL utasításhoz azzal a ülönbséggel, hogy ennél paraméterátadás nem lehetséges. A CC utasítás a B-Stack-ben tárolja a visszatérési címet, a két megnyitott adatmodul címét valamint az MA-bitet. Ezen túlmenően létrehozza a hívandó programmodul TEMP (Lokal-Stack) adatterületét. A hívott kódmodult meg lehet adni aszolút vagy szimbólikus címzéssel. írja: Példa Magyarázat A I 2.0 //Az I2.0 bemenet jelállapotának lekérdezése. CC FC6 //Hívja az FC6-ot ha az I 2.0 = 1. A M 3.0 //Ez az utasítás hajtódik végre, ha az I2.0=1 nél a hívott függvény (FC6) befejeződik, vagy ha az I 2.0 = 0 nél az FC6 nem hajtódik végre. Megjegyzés Ha a CC-vel vagy UC-vel hívott programmodul FB, akkor nem lehet és nem is kell a hívásban DB-t megadni. A CC- ill. UC hívás nem tud paraméterátadást végrehajtani. STEP 7 utasításlista (angol rövidítésekkel) 72

73 3.11 UC Feltétel nélküli programmodul hívás UC < a kódmodul címe > Az UC utasítás hívja a megadott című programmodult, függetlenül RLO -től. A hívott modul paraméter nélküli FC vagy FB ill. SFC, SFB lehet. Az UC utasítás hasonlít a CALL utasításhoz azzal a ülönbséggel, hogy ennél paraméterátadás nem lehetséges. A CC utasítás a B-Stack-ben tárolja a visszatérési címet, a két megnyitott adatmodul címét valamint az MA-bitet. Ezen túlmenően létrehozza a hívandó programmodul TEMP (Lokal- Stack) adatterületét. A hívott kódmodult meg lehet adni aszolút vagy szimbólikus címzéssel. írja: Példa Magyarázat UC FC6 //az FC6 hívása (paraméterek nélkül). 2.Példa Magyarázat UC SFC43 // az SFC43 hívása (paraméterek nélkül). Megjegyzés Ha a CC-vel vagy UC-vel hívott programmodul FB, akkor nem lehet és nem is kell a hívásban DB-t megadni. A CC- ill. UC hívás nem tud paraméterátadást végrehajtani. STEP 7 utasításlista (angol rövidítésekkel) 73

74 SLW A szó tartalmának eltolása balra (16 Bit) SLW SLW <bitszám> Operandus Adattipus <bitszám> Előjel nélküli egészszám Bitszám, amellyel a szót el kell tolni,; tartomány Az SLW utasítás az AKKU1-L tartalmát tolja bitenként balra. Azokba a bitekbe, amely az eltolás miatt megüresednek, nullák kerülnek. Az utoljára eltolt bit a státuszregiszter A1 bitjébe kerül. Az eltolandó bithelyek számát vagy az operandus (paraméter), vagy az AKKU2-L-L tartalmazza. SLW <bitszám>: az eltolandó bithelyek számát a <bitszám> Operandus tartalmazza. Megengedett a ös tartomány. Az A0, és OV státuszbiteket az operációs rendszer 0- ra állítja, ha a <bitszám> paraméter nullánál nagyobb. Ha a <bitszám> nulla, akkor a művelet megfelel egy NOP műveletnek. SLW: Az eltolandó bitek számát az AKKU2-L-L ben lévő érték adja meg. A megengedett értéktartomány Ha az eltolási szám nagyobb mint 16, akkor az eredmény mindig ugyanaz: AKKU1-L = 0, A1 = 0, A0 = 0, OV = 0. Ha 0 < eltolási szám <= 16, akkor az A0 és OV státuszbitek "0" ra állítódnak vissza. Ha az eltolási szám nulla, akkor a művelet megfelel egy NOP műveletnek. írja: - x x x STEP 7 utasításlista (angol rövidítésekkel) 74

75 Példák Tartalom AKKU1-H AKKU1-L Bit az SLW 5 végrehajtása előtt az SLW 5 végrehajtása után magyarázat L MW4 //az érték betöltése az AKKU 1-be. SLW 5 //a bitek eltolása az AKKU 1-ben öt hellyel balra. T MW8 //az eredmény átvitele az MW8-ba. magyarázat L 3 // +3 betöltése az AKKU 1-be. L MW20 //az MW20 tartalmának betöltése az AKKU1-be, egyidejüleg a korábbi érték áttolása az AKKU2-be SLW //az eltolási érték az AKKU2-L-L tartalma. Lásd az első utasítást SPP NEXT //Ugrik a NEXT cimkére, ha a legutoljára eltolt bit (A1) = 1. STEP 7 utasításlista (angol rövidítésekkel) 75

76 SRW A szó tartalmának eltolása jobbra (16 Bit) SRW SRW < bitszám > Operandus Adattipus Magyarázat < bitszám > egészszám, előjel nélkül Bitszám, amellyel a szót el kell tolni,; tartomány Az SRW utasítás az AKKU1-L tartalmát tolja bitenként jobbra. Azokba a bitekbe, amely az eltolás miatt megüresednek, nullák kerülnek. Az utoljára eltolt bit a státuszregiszter A1 bitjébe kerül. Az eltolandó bithelyek számát vagy az operandus (paraméter), vagy az AKKU2-L-L tartalmazza. SRW <bitszám>: az eltolandó bithelyek számát a <bitszám> Operandus tartalmazza. Megengedett a ös tartomány. Az A0, és OV státuszbiteket az operációs rendszer 0- ra állítja, ha a <bitszám> paraméter nullánál nagyobb. Ha a <bitszám> nulla, akkor a művelet megfelel egy NOP műveletnek. SRW: Az eltolandó bitek számát az AKKU2-L-L ben lévő érték adja meg. A megengedett értéktartomány Ha az eltolási szám nagyobb mint 16, akkor az eredmény mindig ugyanaz: AKKU1-L = 0, A1 = 0, A0 = 0, OV = 0. Ha 0 < eltolási szám <= 16, akkor az A0 és OV státuszbitek "0" ra állítódnak vissza. Ha az eltolási szám nulla, akkor a művelet megfelel egy NOP műveletnek írja: - x x x STEP 7 utasításlista (angol rövidítésekkel) 76

77 3.12 Időműveletek (Timer), bevezetés Tártartomány Az időműveletek végrehajtásához a PLC külön tárterülettel rendelkezik. Minden egyes időművelet számára egy szó van fenntartva ezen a tárterületen. Az időműveletek lehetséges mennyisége a CPU tipusától függ. Ezt és az ilyenjellegű adatokat a konfigurációs programon (HWKonfig) keresztül ki lehet olvasni az adott CPU-ból. Időérték Az időművelet tárterületén rendelkezésre álló szó es bitjei tartalmazzák az időértéket, amely bizonyos egységek mennyiségét adja meg. Az időművelet aktualizálása ezt az időértéket csökkenti mindig egy egységgel, és ez az időalapban megadott időközönként történik. A csökkentés mindaddig folytatódik, amíg az időérték nulla nem lesz. A következő módon lehet egy időértéket a tárba tölteni, ha az változó (IW,MW,DBW stb.): L w#16#txyz - t = időalap - xyz = az időérték BCD-formátumban A következő módon lehet egy időértéket a tárba tölteni, ha az állandó: L S5T#aH_bM_cS_dMS - H (óra), M (perc), S (másodperc), MS (ezredmásodperc); - Ebben az esetben az időalapot az operációs rendszer határozza meg, és az értéket lefele kerekíti. A maximális beadható idő 9990 másodperc, azaz 2H_46M_30S. STEP 7 utasításlista (angol rövidítésekkel) 77

78 Időalap Az idő megadásához a tárban lefoglalt szavak 12-es és 13-as bitjei tartalmazzák az időalapot. Az időalap azt az időközt rögzíti, amelyenként az időértéket egy egységgel csökkenteni kell. A legkisebb időalap 10 ms, a legnagyobb 10 másodperc. Időalap Az időalap bináris kódja 10 ms ms 01 1 s s 11 A megadott időtartamok nem léphetik túl a 2H_46M_30S értéket. Az értékeket adott esetben a fejlesztőprogram kerekíti. Az S5TIME adattipusnál érvényes határértékek a különböző időalapok esetében a következők. Felbontás Tartomány 0,01 mp 10MS... 9S_990MS 0,1 mp 100MS... 1M_39S_900MS 1 mp 1S... 16M_39S 10 mp 10S... 2H_46M_30S Bit-Konfiguráció az AKKU1-ben Amikor a program szerint egy időművelet indítása megtörténik, akkor az AKKU es bitjeiben BCD-formátumban megadott érték kerül időértékként felhasználásra. Az időalap a 12 és 13-as bitekben található. A következő ábra mutatja az AKKU1-L tartalmát, amikor időértékként a 127-et, időalapként pedig az 1 másodpercet adták meg xx Időalap 1 mp Időérték BCD-formátumban ( ) Ezeket a biteket az operációs rendszer nem veszi figyelembe, STEP 7 utasításlista (angol rövidítésekkel) 78

79 A megfelelő időművelet kiválasztása Az alábbi ismertetés az 5 lehetséges időműveletről segit Önnek, hogy a céljainak megfelelő időt ki tudja választani. I 0.0 Q 4.0 SI t Q 4.0 SE t Q 4.0 SD t Q 4.0 SS t Q 4.0 SF t Időművelet SI Impulzusképzés SE Meghosszabbított impulzus SD Bekapcsoláskésleltetés SS Tároló bekapcsoláskésleltetés SF Kikapcsoláskésleltetés Ismertetése Ha az indítójel az I0.0-án 1, akkor az Q4.0 kimenőjel bekapcsol a megadott t időtartamra A kimenet 1 -es jelszinten marad a programozott ideig függetlenül attól, hogy az indítójel mennyi ideig van jelen a bemeneten. A kimenőjel csak akkor 1, ha a beállított idő lefutott, és a bemeneten a jelszint még mindig 1. A kimenőjel akkor 1, ha a beállított idő lefutott, és függetlenül attól, hogy a bemenőjel meddig volt 1. A beállított idő mérése akkor történik, amikor a bemenőjel 1 -ről 0 -ra vált. A kimenőjel akkor 1, ha a bemenőjel 1 vagy fut az időmérés. STEP 7 utasításlista (angol rövidítésekkel) 79

80 3.13 FR Az időművelet engedélyezése FR <időművelet száma> Operandus Adattipus Tártartomány Leírás <időművelet száma> TIMER T Az időművelet száma; a tartomány a CPU-tól függ Az FR < időművelet száma > utasítás törli azt az élváltozót (az élfigyelés segédváltozóját) amely szerepet játszik a megcímzett időművelet elindításában, amikor a bemeneten a RLO 0-ról 1-re vált. Ha a RLO egy FR művelet előtt 0-ról 1-re vált, akkor a megcímzett időművelet újból indíthatóvá válik. Az idművelet engedélyezése (FR) az idő indígtásához em szükséges. A műveletet csak arra használják, hogy adott esetben egy futásban lévő időműveletet újraindíthassanak. Ez természetesen csak akkor lehetséges, ha az FR után az indítási műveletet újra végrehajtják. Ha az időt nem is indítják el, az AKKU1-L-ben valamilyen számnak BCD-formátumban kell állni. írja: STEP 7 utasításlista (angol rövidítésekkel) 80

81 Példa Magyarázat A I 2.0 FR T1 //(újra) engedélyezi a T1 időt. A I 2.1 L S5T#10s //betölti az idő értékét az AKKU_1-be. SI T1 //Elindítja a T1 időműveletet impulzusként. A I 2.2 R T1 //Megállítja a T1 időt. A T1 //Lekérdezi a T1 idő állapotát. = Q 4.0 L T1 //A T1 aktuális értékét bináris számként betölti az akkumulátorba. T MW10 RLO az engedélyező bemeneten I RLO az indítóbemeneten I 2.1 RLO a törlőbemeneten I 2.2 Az időművelet reakciója Lekérdezi az időművelet kimenetét Q 4.0 Betölti a futó időműveletet. L, LC t t t = a programozott időtartam (1) Ha az engedélyező bemeneten a RLO "0"-ról "1"-re vált az idő futása közben, akkor a megnevezett időművelet újraindul. A programozott idő az aktuális idő az újraindított időművelet számára is. Ha az engedélyező bemeneten a RLO "0"-ról "1"-re vált, az semmiféle hatással sincs. (2) Ha az engedélyező bemeneten a RLO "0"-ról "1"-re vált és az idő nem fut, mialatt az indítóbemeneten a RLO "1, akkor az idő a programozott hosszban impulzusként elindul. (3) Ha az engedélyező bemeneten a RLO "0"-ról "1"-re vált, mialatt az indítóbemeneten a RLO "0, akkor az semmiféle hatással sincs az időműveletre. STEP 7 utasításlista (angol rövidítésekkel) 81

82 3.14 L Az aktuális időérték betöltése az AKKU_1-be (egészszám) L <időművelet> Operandus Adattipus Tártartomány Leírás < időművelet > TIMER T Az időművelet száma; a tartomány a CPU-tól függ Az L < időművelet > utasítás betölti időalap nélkül az aktuális (végrehajtandó) időértéket a megcímzett időszóból egészszámként az AKKU1-L-be. Előzőleg az AKKU1 tartalma áttolódik az AKKU 2-be. Ha az időt nem is indítják el, az AKKU1-L-ben valamilyen számnak BCD-formátumban kell állni. írja: STEP 7 utasításlista (angol rövidítésekkel) 82

83 Beispiel Magyarázat L T1 // betölti időalap nélkül az aktuális (végrehajtandó) időértéket a megcímzett időszóból egészszámként az AKKU1-L-be. A T1-es időművelet időszava a tárban Időalap 00 = 10 ms 01 = 100 ms 10 = 1 s 11 = 10 s Időérték ( ) bináris kódban L T1 2 0 Az AKKU-1-L tartalma az utasítás után mind "0" Időérték ( ) bináris kódban Megjegyzés Az L<időművelet> az aktuális időértéket az időalap nélkül tölti az AKKU1-L-be bináris kódban. A betöltött időérték az eredetileg megadott időérték és a már eltelt idő különbsége. STEP 7 utasításlista (angol rövidítésekkel) 83

84 3.15 LC Az aktuális időérték betöltése az AKKU_1-be (BCD szám). LC <időművelet> Operandus Adattipus Tártartomány Leírás <időművelet> TIMER T Az időművelet száma; a tartomány a CPU-tól függ Az LC < időművelet > utasítás betölti időalappal együtt az aktuális (végrehajtandó) időértéket a megcímzett időszóból BCD-számként az AKKU1-L-be. Előzőleg az AKKU1 tartalma áttolódik az AKKU 2-be. Ha az időt nem is indítják el, az AKKU1-L-ben valamilyen számnak BCD-formátumban kell állni. írja: STEP 7 utasításlista (angol rövidítésekkel) 84

85 Beispiel Erläuterung LC T1 // betölti időalappal együtt az aktuális (végrehajtandó) időértéket a megcímzett időszóból BCD-számként az AKKU1-L-be. A T1-es időművelet időszava a tárban Időalap 00 = 10 ms 01 = 100 ms 10 = 1 s 11 = 10 s Időérték ( ) BCD kódban LC T1 2 0 Az AKKU-1-L tartalma az utasítás után (LC T1) Időalap 00 = 10 ms 01 = 100 ms 10 = 1 s 11 = 10 s 10 2 Százas 10 1 Tizes 10 0 Egyes Időérték BCD-formátumban STEP 7 utasításlista (angol rövidítésekkel) 85

86 3.16 R Az időművelet törlése R <időművelet> Operandus Adattipus Tártartomány Leírás <időművelet> TIMER T Az időművelet száma; a tartomány a CPU-tól függ Az R <időművelet> befejezi az aktuális időműveletet és törli a címben megadott időszó időértékét és időalapját, amikor az R bemeneten a RLO 0 -ról 1 -re vált. Ha az időt nem is indítják el, az AKKU1-L-ben valamilyen számnak BCD-formátumban kell állni. Írja: Példa Erläuterung A I 2.1 //Lekérdezi az I 2.1-es bemenet jelállapotát R T1 //Ha a RLO 0 -ról 1 -re vált, törli a T1-es időt. STEP 7 utasításlista (angol rövidítésekkel) 86

87 3.17 SI Impulzusképző időművelet SI <időművelet> Operandus Adattipus Tártartomány Leírás <időművelet> TIMER T Az időművelet száma; a tartomány a CPU-tól függ Az SI <időművelet> utasítás elindítja a megcímzett időműveletet, ha az utasítás előtt a RLO 0 -ról 1 -re vált. A programozott idő mindaddig fut, amig a RLO 1. Ha a RLO 0 lesz mielőtt az idő lefutott volna, akkor az idő visszaszámlálása megáll. A művelet végrehajtásakor az AKKU1-L-ben az időértéknek és az időalapnak BCD-formátumban jelen kell lenni. Ha az időt nem is indítják el, az AKKU1-L-ben valamilyen számnak BCD-formátumban kell állni. írja: STEP 7 utasításlista (angol rövidítésekkel) 87

88 Példa Magyarázat A I 2.0 FR T1 //Engedélyezi a T1 időművelet újraindítását. A I 2.1 L S5T#10s //Beállít 10 másodperces időt az AKKU 1 -ben. SI T1 //A T1 időművelet indítása impulzusképző funkcióval. A I 2.2 R T1 //Törli a T1 időműveletet. A T1 //Kérdés a T1 időművelet jelállapotára. = Q 4.0 L T1 //A T1 időművelet aktuális értékének betöltése az AKKU1-L-be bináris számként. T MW10 LC T1 // A T1 időművelet aktuális értékének betöltése az AKKU1-L-be BCD számként. T MW12 Engedélyezés Indítás I 2.0 I 2.1 Törlés I 2.2 Az idő Kimenet Q 4.0 t Az idő töltése: L, LC t = a programozott időtartam STEP 7 utasításlista (angol rövidítésekkel) 88

89 3.18 SE Meghosszabbított impulzusképző időművelet SE <időművelet> Operandus Adattipus Speicherbereich Beschreibung <időművelet> TIMER T Az időművelet száma; a tartomány a CPU-tól függ Az SE <időművelet> utasítás elindítja a megcímzett időműveletet, ha az utasítás előtt a RLO 0 -ról 1 -re vált. A programozott idő lefut akkor is, ha az utasítás előtt a RLO 0 -ra vált, mielőtt az idő letelt volna. Ha a programozott idő lefutása előtt az utasítás előtt a RLO ismét 0 -ról 1 -re vált, akkor az idő újraindul. Az utasítás végrehajtása előtt az AKKU1-Lnek tartalmaznia kell az időértéket és az időalapot BCD-formátumban. Ha az időt nem is indítják el, az AKKU1-L-ben valamilyen számnak BCD-formátumban kell állni. írja: STEP 7 utasításlista (angol rövidítésekkel) 89

90 Példa Magyarázat A I 2.0 FR T1 // Engedélyezi a T1 időművelet újraindítását. A I 2.1 L S5T#10s // Beállít 10 másodperces időt az AKKU 1 -ben. SE T1 // A T1 időművelet indítása meghosszabbított impulzusképző funkcióval. A I 2.2 R T1 //Törli a T1 időműveletet. A T1 //Kérdés a T1 időművelet jelállapotára. = Q 4.0 L T1 //A T1 időművelet aktuális értékének betöltése az AKKU1-L-be bináris számként. T MW10 LC T1 // A T1 időművelet aktuális értékének betöltése az AKKU1-L-be BCD számként. T MW12 Engedélyezés I 2.0 Indítás I 2.1 Törlés I 2.2 Az idő Kimenet Q 4.0 t Az idő töltése: L, LC t = a programozott időtartam STEP 7 utasításlista (angol rövidítésekkel) 90

91 3.19 SD Bekapcsoláskésleltető időművelet Format SD <időművelet> Operandus Adattipus Tárterület Leírás <időművelet> TIMER T Az időművelet száma; a tartomány a CPU-tól függ Az SD <időművelet> utasítás elindítja a megcímzett időműveletet, ha az utasítás előtt a RLO 0 -ról 1 -re vált. A programozott idő mindaddig fut, amig a RLO 1. Ha a RLO 0 lesz mielőtt az idő lefutott volna, akkor az idő visszaszámlálása megáll. A művelet végrehajtásakor az AKKU1-L-ben az időértéknek és az időalapnak BCD-formátumban jelen kell lenni. Ha az időt nem is indítják el, az AKKU1-L-ben valamilyen számnak BCD-formátumban kell állni. írja: STEP 7 utasításlista (angol rövidítésekkel) 91

92 Példa Erläuterung A I 2.0 FR T1 // Engedélyezi a T1 időművelet újraindítását. A I 2.1 L S5T#10s // Beállít 10 másodperces időt az AKKU 1 -ben. SD T1 // A T1 időművelet indítása meghosszabbított impulzusképző funkcióval. A I 2.2 R T1 //Törli a T1 időműveletet. A T1 //Kérdés a T1 időművelet jelállapotára. = Q 4.0 L T1 //A T1 időművelet aktuális értékének betöltése az AKKU1-L-be bináris számként. T MW10 LC T1 // A T1 időművelet aktuális értékének betöltése az AKKU1-L-be BCD számként. T MW12 Engedélyezés I 2.0 Indítás I 2.1 Törlés I 2.2 Az idő Kimenet Q 4.0 t t Az idő töltése: L, LC t = programozott időtartam STEP 7 utasításlista (angol rövidítésekkel) 92

93 3.20 SS Tároló bekapcsoláskésleltető időművelet SS <időművelet> Operandus Adattipus Tártartomány Leírás < időművelet > TIMER T Az időművelet száma; a tartomány a CPU-tól függ Az SS <időművelet> utasítás elindítja a megcímzett időműveletet, ha az utasítás előtt a RLO 0 -ról 1 -re vált. A programozott idő lefut akkor is, ha az utasítás előtt a RLO 0 -ra vált, mielőtt az idő letelt volna. Ha a programozott idő lefutása előtt az utasítás előtt a RLO ismét 0 -ról 1 -re vált, akkor az idő újraindul. Az utasítás végrehajtása előtt az AKKU1-Lnek tartalmaznia kell az időértéket és az időalapot BCD-formátumban. Ha az időt nem is indítják el, az AKKU1-L-ben valamilyen számnak BCD-formátumban kell állni. írja: STEP 7 utasításlista (angol rövidítésekkel) 93

94 Példa Magyarázat A I 2.0 FR T1 // Engedélyezi a T1 időművelet újraindítását. A I 2.1 L S5T#10s // Beállít 10 másodperces időt az AKKU 1 -ben. SS T1 // A T1 időművelet indítása meghosszabbított impulzusképző funkcióval. A I 2.2 R T1 //Törli a T1 időműveletet. A T1 //Kérdés a T1 időművelet jelállapotára. = Q 4.0 L T1 //A T1 időművelet aktuális értékének betöltése az AKKU1-L-be bináris számként. T MW10 LC T1 // A T1 időművelet aktuális értékének betöltése az AKKU1-L-be BCD számként. T MW12 I 2.0 Engedélyezés I 2.1 Indítás I 2.2 Törlés Az idő Kimenet Q 4.0 t Az idő töltése: L, LC t = programozott időtartam STEP 7 utasításlista (angol rövidítésekkel) 94

95 3.21 SF Kikapcsoláskésleltető időműveletformat SF <időművelet> Operandus Adattipus Tárterület Leírás <időművelet> TIMER T Az időművelet száma; a tartomány a CPU-tól függ Az SF <időművelet> utasítás elindítja a megcímzett időműveletet, ha az utasítás előtt a RLO 1 -ről 0 -ra vált. A programozott idő lefut, ha az utasítás előtt a RLO 0. Ha a programozott idő lefutása még nem fejeződött be, és az SF utasítás előtt a RLO ismét 0 - ról 1 -re vált, akkor az idő visszaszámlálása megáll. Az utasítás végrehajtása előtt az AKKU1-L-nek tartalmaznia kell az időértéket és az időalapot BCD-formátumban. Ha az időt nem is indítják el, az AKKU1-L-ben valamilyen számnak BCD-formátumban kell állni. írja: STEP 7 utasításlista (angol rövidítésekkel) 95

96 Példa Magyarázat A I 2.0 FR T1 // Engedélyezi a T1 időművelet újraindítását. A I 2.1 L S5T#10s // Beállít 10 másodperces időt az AKKU 1 -ben. SF T1 // A T1 időművelet indítása meghosszabbított impulzusképző funkcióval. A I 2.2 R T1 //Törli a T1 időműveletet. A T1 //Kérdés a T1 időművelet jelállapotára. = Q 4.0 L T1 //A T1 időművelet aktuális értékének betöltése az AKKU1-L-be bináris számként. T MW10 LC T1 // A T1 időművelet aktuális értékének betöltése az AKKU1-L-be BCD számként. T MW12 Engedélyezés Indítás Törlés I 2.0 I 2.1 I 2.2 Az idő t t Kimenet A 4.0 Az idő töltése: L, LC t = programozott időtartam STEP 7 utasításlista (angol rövidítésekkel) 96

97 3.22 DEC Az AKKU 1-L-L dekrementálása DEC <egészszám, 8 Bit> Operandus Adattipus Beschreibung <egészszám, 8 Bit> állandó (egészszám, 8 Bit) állandó, amit a program az AKKU1-L-L-ből kivon; tartomány A DEC <egészszám, 8 Bit> utasítás kivonja az egészszám paraméterben megadott értéket az AKKU1-L-L ből és az eredményt tárolja az AKKU1-L-L-ben. Az AKKU1-L-H, AKKU1-H und AKKU 2 nem változik. A művelet a státuszbitek figyelembe vétele ill. megváltoztatása nélkül hajtódik végre. Megjegyzés Ez az utasítás nem alkalmas aritmetikai műveletek végrehajtására (16 vagy 32 Bit), mivel az AKKU1 alacsonyabb helyiértékű szavának alacsonyabb helyiértékű bájtjából nem történik átvitel a magasabb helyiértékű bájtba. Használja inkább a I ill. D utasításokat. írja: Példa Magyarázat L MB250 //Az MB250 értékének betöltése az AKKU-1-be. DEC 1 //Az AKKU1-L-L dekrementálása 1-gyel,az eredményt tárolja az AKKU1-L-L-ben. T MB250 //Az AKKU1-L- L tartalmának (eredmény) visszahelyezése az MB250-be. STEP 7 utasításlista (angol rövidítésekkel) 97

98 3.23 NOP 0 nincs művelet NOP 0 A NOP 0 művelet nem hajt végre semmiféle tényleges műveletet, és nem befolyásolja a státuszbiteket. A műveleti kód bitmintát tartalmaz 16 nullával. A művelet csak a programozókészülék szempontjából lényeges, amikor a programot megeleníti. írja: NOP 1 nincs művelet NOP 1 A NOP 1 művelet nem hajt végre semmiféle tényleges műveletet, és nem befolyásolja a státuszbiteket. A műveleti kód bitmintát tartalmaz 16 eggyel. A művelet csak a programozókészülék szempontjából lényeges, amikor a programot megeleníti.. írja: STEP 7 utasításlista (angol rövidítésekkel) 98

SIMATIC. STEP 7 Magasabb szintű műveletek (STL)

SIMATIC. STEP 7 Magasabb szintű műveletek (STL) SIMATIC STEP 7 Magasabb szintű műveletek (STL) Magasabb szintű utasítások részleges ismertetése STL (utasításlista) programozás esetére (angol, vagy német rövidítésekkel). Ez a segédlet a SIMATIC S7-300,

Részletesebben

4. Fejezet : Az egész számok (integer) ábrázolása

4. Fejezet : Az egész számok (integer) ábrázolása 4. Fejezet : Az egész számok (integer) ábrázolása The Architecture of Computer Hardware and Systems Software: An Information Technology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003 Wilson

Részletesebben

Segédlet az Informatika alapjai I. című tárgy számrendszerek fejezetéhez

Segédlet az Informatika alapjai I. című tárgy számrendszerek fejezetéhez Segédlet az Informatika alapjai I. című tárgy számrendszerek fejezetéhez Sándor Tamás, [email protected] Takács Gergely, [email protected] Lektorálta: dr. Schuster György PhD, [email protected]

Részletesebben

5. Laborgyakorlat. Számláló funkciók, időzítő funkciók.

5. Laborgyakorlat. Számláló funkciók, időzítő funkciók. 5. Laborgyakorlat Számláló funkciók, időzítő funkciók. A gyakorlat célja A számlálók és időzítők használata gyakori a folyamatirányításban. Gondoljunk egy futószalag indításának a késleltetésére, megállításánál

Részletesebben

Fixpontos és lebegőpontos DSP Számrendszerek

Fixpontos és lebegőpontos DSP Számrendszerek Fixpontos és lebegőpontos DSP Számrendszerek Ha megnézünk egy DSP kinálatot, akkor észrevehetjük, hogy két nagy család van az ajánlatban, az ismert adattipus függvényében. Van fixpontos és lebegőpontos

Részletesebben

Digitális ki-bemenetek kezelése, bitszintű műveletek

Digitális ki-bemenetek kezelése, bitszintű műveletek 4. Laborgyakorlat Digitális ki-bemenetek kezelése, bitszintű műveletek A gyakorlat célja A gyakorlat során a digitális ki-bemenetek kezelését vizsgáljuk, ezek programozását létralogika és STL programozási

Részletesebben

SZÁMÉRTÉKEK (ÁT)KÓDOLÁSA

SZÁMÉRTÉKEK (ÁT)KÓDOLÁSA 1 ELSŐ GYAKORLAT SZÁMÉRTÉKEK (ÁT)KÓDOLÁSA A feladat elvégzése során a következőket fogjuk gyakorolni: Számrendszerek közti átváltás előjelesen és előjel nélkül. Bináris, decimális, hexadexcimális számrendszer.

Részletesebben

Bevezetés az informatikába gyakorló feladatok Utoljára módosítva:

Bevezetés az informatikába gyakorló feladatok Utoljára módosítva: Tartalom 1. Számrendszerek közti átváltás... 2 1.1. Megoldások... 4 2. Műveletek (+, -, bitműveletek)... 7 2.1. Megoldások... 8 3. Számítógépes adatábrázolás... 12 3.1. Megoldások... 14 A gyakorlósor lektorálatlan,

Részletesebben

Bevezetés az informatikába gyakorló feladatok Utoljára módosítva:

Bevezetés az informatikába gyakorló feladatok Utoljára módosítva: Tartalom 1. Számrendszerek közti átváltás... 2 1.1. Megoldások... 4 2. Műveletek (+, -, bitműveletek)... 7 2.1. Megoldások... 8 3. Számítógépes adatábrázolás... 10 3.1. Megoldások... 12 A gyakorlósor lektorálatlan,

Részletesebben

A STEP 7 programozás alapjai LAD (létradiagram)

A STEP 7 programozás alapjai LAD (létradiagram) SIMATIC A STEP 7 programozás alapjai LAD (létradiagram) A legfontosabb utasítások ismertetése angol, vagy német rövidítésekkel. Ez a segédlet a SIMATIC S7-300, S7-400, C7, ET-200 IM CPU és az embedded,

Részletesebben

5. Fejezet : Lebegőpontos számok. Lebegőpontos számok

5. Fejezet : Lebegőpontos számok. Lebegőpontos számok 5. Fejezet : Lebegőpontos The Architecture of Computer Hardware and Systems Software: An InformationTechnology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003 Wilson Wong, Bentley College Linda

Részletesebben

1. előadás. Lineáris algebra numerikus módszerei. Hibaszámítás Számábrázolás Kerekítés, levágás Klasszikus hibaanalízis Abszolút hiba Relatív hiba

1. előadás. Lineáris algebra numerikus módszerei. Hibaszámítás Számábrázolás Kerekítés, levágás Klasszikus hibaanalízis Abszolút hiba Relatív hiba Hibaforrások Hiba A feladatok megoldása során különféle hibaforrásokkal találkozunk: Modellhiba, amikor a valóságnak egy közelítését használjuk a feladat matematikai alakjának felírásához. (Pl. egy fizikai

Részletesebben

Dr. Oniga István DIGITÁLIS TECHNIKA 8

Dr. Oniga István DIGITÁLIS TECHNIKA 8 Dr. Oniga István DIGITÁLIS TECHNIA 8 Szekvenciális (sorrendi) hálózatok Szekvenciális hálózatok fogalma Tárolók RS tárolók tárolók T és D típusú tárolók Számlálók Szinkron számlálók Aszinkron számlálók

Részletesebben

Készítette: Oláh István mestertanár

Készítette: Oláh István mestertanár BME Automatizálási és Alkalmazott Informatikai Tanszék Villamos laboratórium 1. PLC-k programoza sa Mérési útmutató Készítette: Oláh István mestertanár ([email protected]) 2014. szeptember Bevezetés

Részletesebben

1. fogalom. Add meg az összeadásban szereplő számok elnevezéseit! Milyen tulajdonságai vannak az összeadásnak? Hogyan ellenőrizzük az összeadást?

1. fogalom. Add meg az összeadásban szereplő számok elnevezéseit! Milyen tulajdonságai vannak az összeadásnak? Hogyan ellenőrizzük az összeadást? 1. fogalom Add meg az összeadásban szereplő számok 73 + 19 = 92 összeadandók (tagok) összeg Összeadandók (tagok): amiket összeadunk. Összeg: az összeadás eredménye. Milyen tulajdonságai vannak az összeadásnak?

Részletesebben

Assembly programozás: 2. gyakorlat

Assembly programozás: 2. gyakorlat Assembly programozás: 2. gyakorlat Számrendszerek: Kettes (bináris) számrendszer: {0, 1} Nyolcas (oktális) számrendszer: {0,..., 7} Tízes (decimális) számrendszer: {0, 1, 2,..., 9} 16-os (hexadecimális

Részletesebben

Gyakorló feladatok. /2 Maradék /16 Maradék /8 Maradék

Gyakorló feladatok. /2 Maradék /16 Maradék /8 Maradék Gyakorló feladatok Számrendszerek: Feladat: Ábrázold kettes számrendszerbe a 639 10, 16-os számrendszerbe a 311 10, 8-as számrendszerbe a 483 10 számot! /2 Maradék /16 Maradék /8 Maradék 639 1 311 7 483

Részletesebben

Adatok ábrázolása, adattípusok

Adatok ábrázolása, adattípusok Adatok ábrázolása, adattípusok Összefoglalás Adatok ábrázolása, adattípusok Számítógépes rendszerek működés: információfeldolgozás IPO: input-process-output modell információ tárolása adatok formájában

Részletesebben

ÁTVÁLTÁSOK SZÁMRENDSZEREK KÖZÖTT, SZÁMÁBRÁZOLÁS, BOOLE-ALGEBRA

ÁTVÁLTÁSOK SZÁMRENDSZEREK KÖZÖTT, SZÁMÁBRÁZOLÁS, BOOLE-ALGEBRA 1. Tízes (decimális) számrendszerből: a. Kettes (bináris) számrendszerbe: Vegyük a 2634 10 -es számot, és váltsuk át bináris (kettes) számrendszerbe! A legegyszerűbb módszer: írjuk fel a számot, és húzzunk

Részletesebben

Assembly utasítások listája

Assembly utasítások listája Assembly utasítások listája Bevezetés: Ebben a segédanyagban a fontosabb assembly utasításokat szedtem össze. Az utasítások csoportosítva vannak. A fontos kategóriába azok az utasítások tartoznak, amiknek

Részletesebben

2. Fejezet : Számrendszerek

2. Fejezet : Számrendszerek 2. Fejezet : Számrendszerek The Architecture of Computer Hardware and Systems Software: An Information Technology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003 Wilson Wong, Bentley College

Részletesebben

Aritmetikai utasítások I.

Aritmetikai utasítások I. Aritmetikai utasítások I. Az értékadó és aritmetikai utasítások során a címzési módok különböző típusaira látunk példákat. A 8086/8088-as mikroprocesszor memóriája és regiszterei a little endian tárolást

Részletesebben

5. Fejezet : Lebegőpontos számok

5. Fejezet : Lebegőpontos számok 5. Fejezet : Lebegőpontos The Architecture of Computer Hardware and Systems Software: An Information Technology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003 Wilson Wong, Bentley College Linda

Részletesebben

DIGITÁLIS TECHNIKA 8 Dr Oniga. I stván István

DIGITÁLIS TECHNIKA 8 Dr Oniga. I stván István Dr. Oniga István DIGITÁLIS TECHNIA 8 Szekvenciális (sorrendi) hálózatok Szekvenciális hálózatok fogalma Tárolók RS tárolók tárolók T és D típusú tárolók Számlálók Szinkron számlálók Aszinkron számlálók

Részletesebben

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Számelmélet I.

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Számelmélet I. Számelmélet I. DEFINÍCIÓ: (Osztó, többszörös) Ha egy a szám felírható egy b szám és egy másik egész szám szorzataként, akkor a b számot az a osztójának, az a számot a b többszörösének nevezzük. Megjegyzés:

Részletesebben

3. gyakorlat. Kettes számrendszer: {0, 1} Tízes számrendszer: {0, 1, 2,..., 9} 16-os (hexadecimális számrendszer): {0, 1, 2,..., 9, A, B, C, D, E, F}

3. gyakorlat. Kettes számrendszer: {0, 1} Tízes számrendszer: {0, 1, 2,..., 9} 16-os (hexadecimális számrendszer): {0, 1, 2,..., 9, A, B, C, D, E, F} 3. gyakorlat Számrendszerek: Kettes számrendszer: {0, 1} Tízes számrendszer: {0, 1, 2,..., 9} 16-os (hexadecimális számrendszer): {0, 1, 2,..., 9, A, B, C, D, E, F} Alaki érték: 0, 1, 2,..., 9,... Helyi

Részletesebben

SZÁMRENDSZEREK KÉSZÍTETTE: JURÁNYINÉ BESENYEI GABRIELLA

SZÁMRENDSZEREK KÉSZÍTETTE: JURÁNYINÉ BESENYEI GABRIELLA SZÁMRENDSZEREK KÉSZÍTETTE: JURÁNYINÉ BESENYEI GABRIELLA BINÁRIS (kettes) ÉS HEXADECIMÁLIS (tizenhatos) SZÁMRENDSZEREK (HELYIÉRTÉK, ÁTVÁLTÁSOK, MŰVELETEK) A KETTES SZÁMRENDSZER A computerek világában a

Részletesebben

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD) Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD) Bevezetés A laborgyakorlatok alapvető célja a tárgy későbbi laborgyakorlataihoz szükséges ismeretek átadása, az azokban szereplő

Részletesebben

Programozás BMEKOKAA146. Dr. Bécsi Tamás 2. előadás

Programozás BMEKOKAA146. Dr. Bécsi Tamás 2. előadás Programozás BMEKOKAA146 Dr. Bécsi Tamás 2. előadás Szintaktikai alapok Alapvető típusok, ismétlés C# típus.net típus Méret (byte) Leírás byte System.Byte 1Előjel nélküli 8 bites egész szám (0..255) char

Részletesebben

The Architecture of Computer Hardware and Systems Software: An InformationTechnology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003

The Architecture of Computer Hardware and Systems Software: An InformationTechnology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003 . Fejezet : Számrendszerek The Architecture of Computer Hardware and Systems Software: An InformationTechnology Approach. kiadás, Irv Englander John Wiley and Sons Wilson Wong, Bentley College Linda Senne,

Részletesebben

Irányítástechnika 1. 9. Elıadás. PLC-k programozása

Irányítástechnika 1. 9. Elıadás. PLC-k programozása Irányítástechnika 1 9. Elıadás PLC-k programozása Irodalom - Helmich József: Irányítástechnika I, 2005 - Zalotay Péter: PLC tanfolyam - Jancskárné Anweiler Ildikó: PLC programozás az IEC 1131-3 szabvány

Részletesebben

2) Tervezzen Stibitz kód szerint működő, aszinkron decimális előre számlálót! A megvalósításához

2) Tervezzen Stibitz kód szerint működő, aszinkron decimális előre számlálót! A megvalósításához XIII. szekvenciális hálózatok tervezése ) Tervezzen digitális órához, aszinkron bináris előre számláló ciklus rövidítésével, 6-os számlálót! megvalósításához negatív élvezérelt T típusú tárolót és NN kaput

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák Fixpontos számok Pl.: előjeles kétjegyű decimális számok : Ábrázolási tartomány: [-99, +99]. Pontosság (két szomszédos szám különbsége): 1. Maximális hiba: (az ábrázolási tartományba eső) tetszőleges valós

Részletesebben

5-6. ea Created by mrjrm & Pogácsa, frissítette: Félix

5-6. ea Created by mrjrm & Pogácsa, frissítette: Félix 2. Adattípusonként különböző regisztertér Célja: az adatfeldolgozás gyorsítása - különös tekintettel a lebegőpontos adatábrázolásra. Szorzás esetén karakterisztika összeadódik, mantissza összeszorzódik.

Részletesebben

5. KOMBINÁCIÓS HÁLÓZATOK LEÍRÁSÁNAK SZABÁLYAI

5. KOMBINÁCIÓS HÁLÓZATOK LEÍRÁSÁNAK SZABÁLYAI 5. KOMBINÁCIÓS HÁLÓZATOK LEÍRÁSÁNAK SZABÁLYAI 1 Kombinációs hálózatok leírását végezhetjük mind adatfolyam-, mind viselkedési szinten. Az adatfolyam szintű leírásokhoz az assign kulcsszót használjuk, a

Részletesebben

Bevezetés az informatikába

Bevezetés az informatikába Bevezetés az informatikába 4. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.

Részletesebben

Amit a törtekről tudni kell Minimum követelményszint

Amit a törtekről tudni kell Minimum követelményszint Amit a törtekről tudni kell Minimum követelményszint Fontos megjegyzés: A szabályoknak nem a pontos matematikai meghatározását adtuk. Helyettük a gyakorlatban használható, egyszerű megfogalmazásokat írtunk.

Részletesebben

Matematikai alapok. Dr. Iványi Péter

Matematikai alapok. Dr. Iványi Péter Matematikai alapok Dr. Iványi Péter Számok A leggyakrabban használt adat típus Egész számok Valós számok Bináris számábrázolás Kettes számrendszer Bitek: és Byte: 8 bit 28 64 32 6 8 4 2 bináris decimális

Részletesebben

Dr. Oniga István DIGITÁLIS TECHNIKA 2

Dr. Oniga István DIGITÁLIS TECHNIKA 2 Dr. Oniga István DIGITÁLIS TECHNIKA 2 Számrendszerek A leggyakrabban használt számrendszerek: alapszám számjegyek Tízes (decimális) B = 10 0, 1, 8, 9 Kettes (bináris) B = 2 0, 1 Nyolcas (oktális) B = 8

Részletesebben

SZÁMÍTÓGÉPEK BELSŐ FELÉPÍTÉSE - 1

SZÁMÍTÓGÉPEK BELSŐ FELÉPÍTÉSE - 1 INFORMATIKAI RENDSZEREK ALAPJAI (INFORMATIKA I.) 1 NEUMANN ARCHITEKTÚRÁJÚ GÉPEK MŰKÖDÉSE SZÁMÍTÓGÉPEK BELSŐ FELÉPÍTÉSE - 1 Ebben a feladatban a következőket fogjuk áttekinteni: Neumann rendszerű számítógép

Részletesebben

Összeadás BCD számokkal

Összeadás BCD számokkal Összeadás BCD számokkal Ugyanúgy adjuk össze a BCD számokat is, mint a binárisakat, csak - fel kell ismernünk az érvénytelen tetrádokat és - ezeknél korrekciót kell végrehajtani. A, Az érvénytelen tetrádok

Részletesebben

A Gray-kód Bináris-kóddá alakításának leírása

A Gray-kód Bináris-kóddá alakításának leírása A Gray-kód Bináris-kóddá alakításának leírása /Mechatronikai Projekt II. házi feladat/ Bodogán János 2005. április 1. Néhány szó a kódoló átalakítókról Ezek az eszközök kiegészítő számlálók nélkül közvetlenül

Részletesebben

Aritmetikai és logikai műveletek. Adattömb kezelése.

Aritmetikai és logikai műveletek. Adattömb kezelése. 6. Laborgyakorlat Aritmetikai és logikai műveletek. Adattömb kezelése. A gyakorlat célja A gyakorlatban továbbfejlesztjük a PLC programozási ismereteinket, megismerkedünk az aritmetikai és logikai műveletekkel

Részletesebben

Elemi adat típusok. Méret (Bit)

Elemi adat típusok. Méret (Bit) Elemi adat típusok GLOFA PLC az alábbi adatok használatát teszi lehetővé. N o Jelölés Adat típus Méret (Bit) Tartomány 1 SINT 2 INT 3 DINT Rövid egész szám Short integer Egész szám Integer Dupla egész

Részletesebben

SzA19. Az elágazások vizsgálata

SzA19. Az elágazások vizsgálata SzA19. Az elágazások vizsgálata (Az elágazások csoportosítása, a feltételes utasítások használata, a műveletek eredményének vizsgálata az állapottér módszerrel és közvetlen adatvizsgálattal, az elágazási

Részletesebben

Analóg-digitális átalakítás. Rencz Márta/ Ress S. Elektronikus Eszközök Tanszék

Analóg-digitális átalakítás. Rencz Márta/ Ress S. Elektronikus Eszközök Tanszék Analóg-digitális átalakítás Rencz Márta/ Ress S. Elektronikus Eszközök Tanszék Mai témák Mintavételezés A/D átalakítók típusok D/A átalakítás 12/10/2007 2/17 A/D ill. D/A átalakítók A világ analóg, a jelfeldolgozás

Részletesebben

A számok kiírása is alapvetően karakterek kiírásán alapul, azonban figyelembe kell venni, hogy a számjegyeket, mint karaktereket kell kiírni.

A számok kiírása is alapvetően karakterek kiírásán alapul, azonban figyelembe kell venni, hogy a számjegyeket, mint karaktereket kell kiírni. Példák számok kiírására A számok kiírása is alapvetően karakterek kiírásán alapul, azonban figyelembe kell venni, hogy a számjegyeket, mint karaktereket kell kiírni. Decimális számok kiírása Az alábbi

Részletesebben

Bevezetés a számítástechnikába

Bevezetés a számítástechnikába Bevezetés a számítástechnikába Beadandó feladat, kódrendszerek Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék [email protected] 2010 október 12.

Részletesebben

Digitális rendszerek. Utasításarchitektúra szintje

Digitális rendszerek. Utasításarchitektúra szintje Digitális rendszerek Utasításarchitektúra szintje Utasításarchitektúra Jellemzők Mikroarchitektúra és az operációs rendszer közötti réteg Eredetileg ez jelent meg először Sokszor az assembly nyelvvel keverik

Részletesebben

A mikroprocesszor egy RISC felépítésű (LOAD/STORE), Neumann architektúrájú 32 bites soft processzor, amelyet FPGA val valósítunk meg.

A mikroprocesszor egy RISC felépítésű (LOAD/STORE), Neumann architektúrájú 32 bites soft processzor, amelyet FPGA val valósítunk meg. Mikroprocesszor A mikroprocesszor egy RISC felépítésű (LOAD/STORE), Neumann architektúrájú 32 bites soft processzor, amelyet FPGA val valósítunk meg. A mikroprocesszor részei A mikroprocesszor a szokásos

Részletesebben

találhatók. A memória-szervezési modell mondja meg azt, hogy miként

találhatók. A memória-szervezési modell mondja meg azt, hogy miként Memória címzési módok Egy program futása során (legyen szó a program vezérléséről vagy adatkezelésről) a program utasításai illetve egy utasítás argumentumai a memóriában találhatók. A memória-szervezési

Részletesebben

DIGITÁLIS TECHNIKA I BINÁRIS SZÁMRENDSZER BEVEZETŐ ÁTTEKINTÉS BINÁRIS SZÁMRENDSZER HELYÉRTÉK. Dr. Lovassy Rita Dr.

DIGITÁLIS TECHNIKA I BINÁRIS SZÁMRENDSZER BEVEZETŐ ÁTTEKINTÉS BINÁRIS SZÁMRENDSZER HELYÉRTÉK. Dr. Lovassy Rita Dr. 26..5. DIGITÁLIS TEHNIK I Dr. Lovassy Rita Dr. Pődör álint Óbudai Egyetem KVK Mikroelektronikai és Technológia Intézet INÁRIS SZÁMRENDSZER 5. ELŐDÁS 2 EVEZETŐ ÁTTEKINTÉS 6. előadás témája a digitális rendszerekben

Részletesebben

Digitális jelfeldolgozás

Digitális jelfeldolgozás Digitális jelfeldolgozás Kvantálás Magyar Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék [email protected] 2010. szeptember 15. Áttekintés

Részletesebben

Bevezetés az informatikába

Bevezetés az informatikába Bevezetés az informatikába 3. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.

Részletesebben

Digitális technika VIMIAA hét

Digitális technika VIMIAA hét BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA02 14. hét Fehér Béla BME MIT Digitális technika

Részletesebben

Harmadik gyakorlat. Számrendszerek

Harmadik gyakorlat. Számrendszerek Harmadik gyakorlat Számrendszerek Ismétlés Tízes (decimális) számrendszer: 2 372 =3 2 +7 +2 alakiérték valódi érték = aé hé helyiérték helyiértékek a tízes szám hatványai, a számjegyek így,,2,,8,9 Kettes

Részletesebben

Amit a törtekről tudni kell 5. osztály végéig Minimum követelményszint

Amit a törtekről tudni kell 5. osztály végéig Minimum követelményszint Amit a törtekről tudni kell. osztály végéig Minimum követelményszint Fontos megjegyzés: A szabályoknak nem a pontos matematikai meghatározását adtuk. Helyettük a gyakorlatban használható, egyszerű megfogalmazásokat

Részletesebben

Programozható Logikai Vezérlő

Programozható Logikai Vezérlő 4. előadás Tartalom: A feladata A felépítése, típusai, részegységei Programnyelvek Programozás (FST) FESTO -k bemutatása (FEC20-DC, ) FEC programozása FST bemutatása Automatizálástechnika I. előadás Farkas

Részletesebben

Kedves Diákok! A feladatok legtöbbször egy pontot érnek. Ahol ettől eltérés van, azt külön jelöljük.

Kedves Diákok! A feladatok legtöbbször egy pontot érnek. Ahol ettől eltérés van, azt külön jelöljük. Kedves Diákok! Szeretettel köszöntünk Benneteket abból az alkalomból, hogy a Ceglédi Közgazdasági és Informatikai Szakközépiskola informatika tehetséggondozásának első levelét olvassátok! A tehetséggondozással

Részletesebben

A 32 bites x86-os architektúra regiszterei

A 32 bites x86-os architektúra regiszterei Memória címzési módok Jelen nayagrészben az Intel x86-os architektúrára alapuló 32 bites processzorok programozását tekintjük. Egy program futása során (legyen szó a program vezérléséről vagy adatkezelésről)

Részletesebben

Szoftvertervezés és -fejlesztés I.

Szoftvertervezés és -fejlesztés I. Szoftvertervezés és -fejlesztés I. Operátorok Vezérlési szerkezetek Gyakorlás 1 Hallgatói Tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő anyag vázlatát képezik.

Részletesebben

Adattípusok és paramétertípusok

Adattípusok és paramétertípusok SIMATIC STEP 7 programozás Adattípusok és paramétertípusok Kivonatos ismertetés, angol nyelvű STEP 7 szoftvert használóknak Ez a segédlet a SIMATIC S7-300, S7-400, C7, ET-200 IM CPU és az embedded, illetve

Részletesebben

Műveletek lebegőpontos adatokkal

Műveletek lebegőpontos adatokkal Budapesti Műszaki Főiskola Regionális Oktatási és Innovációs Központ Székesfehérvár Műveletek lebegőpontos adatokkal Dr. Seebauer Márta főiskolai tanár [email protected] Műveletek az IEEE 754

Részletesebben

Mintavételes szabályozás mikrovezérlő segítségével

Mintavételes szabályozás mikrovezérlő segítségével Automatizálási Tanszék Mintavételes szabályozás mikrovezérlő segítségével Budai Tamás [email protected] http://maxwell.sze.hu/~budait Tartalom Mikrovezérlőkről röviden Programozási alapismeretek ismétlés

Részletesebben

Készítette: Nagy Tibor István

Készítette: Nagy Tibor István Készítette: Nagy Tibor István Operátorok Műveletek Egy (vagy több) műveleti jellel írhatók le A műveletet operandusaikkal végzik Operátorok fajtái operandusok száma szerint: egyoperandusú operátorok (pl.:

Részletesebben

Programozott soros szinkron adatátvitel

Programozott soros szinkron adatátvitel Programozott soros szinkron adatátvitel 1. Feladat Név:... Irjon programot, mely a P1.0 kimenet egy lefutó élének időpontjában a P1.1 kimeneten egy adatbitet ad ki. A bájt legalacsonyabb helyiértéke 1.

Részletesebben

Algoritmusok Tervezése. 4. Előadás Visual Basic 1. Dr. Bécsi Tamás

Algoritmusok Tervezése. 4. Előadás Visual Basic 1. Dr. Bécsi Tamás Algoritmusok Tervezése 4. Előadás Visual Basic 1. Dr. Bécsi Tamás Bevezetés A BASIC (Beginner s All-purpose Symbolic Instruction Code) programnyelvet oktatási célokra hozták létre 1964-ben. Az általános

Részletesebben

Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás 2. előadás

Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás 2. előadás Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606 Dr. Bécsi Tamás 2. előadás Console I/O bővebben Lásd mintaprogram 2015.09.21. Számítástechnika I. 2. Előadás 2 Számábrázolásról

Részletesebben

LEGO robotok. XII. rész

LEGO robotok. XII. rész LEGO robotok XII. rész III.1.22. Változók és konstansok A változó fogalma a matematikában egy értelmezési tartománnyal rendelkező, ebből bármilyen értéket felvehető objektum, melynek értéke logikailag

Részletesebben

Rekurzió. Dr. Iványi Péter

Rekurzió. Dr. Iványi Péter Rekurzió Dr. Iványi Péter 1 Függvényhívás void f3(int a3) { printf( %d,a3); } void f2(int a2) { f3(a2); a2 = (a2+1); } void f1() { int a1 = 1; int b1; b1 = f2(a1); } 2 Függvényhívás void f3(int a3) { printf(

Részletesebben

Informatika érettségi vizsga

Informatika érettségi vizsga Informatika 11/L/BJ Informatika érettségi vizsga ÍRÁSBELI GYAKORLATI VIZSGA (180 PERC - 120 PONT) SZÓBELI SZÓBELI VIZSGA (30 PERC FELKÉSZÜLÉS 10 PERC FELELET - 30 PONT) Szövegszerkesztés (40 pont) Prezentáció-készítés

Részletesebben

I+K technológiák. Számrendszerek, kódolás

I+K technológiák. Számrendszerek, kódolás I+K technológiák Számrendszerek, kódolás A tárgyak egymásra épülése Magas szintű programozás ( számítástechnika) Alacsony szintű programozás (jelfeldolgozás) I+K technológiák Gépi aritmetika Számítógép

Részletesebben

I. Egyenlet fogalma, algebrai megoldása

I. Egyenlet fogalma, algebrai megoldása 11 modul: EGYENLETEK, EGYENLŐTLENSÉGEK MEGOLDÁSA 6 I Egyenlet fogalma, algebrai megoldása Módszertani megjegyzés: Az egyenletek alaphalmazát, értelmezési tartományát később vezetjük be, a törtes egyenletekkel

Részletesebben

Assembly Utasítások, programok. Iványi Péter

Assembly Utasítások, programok. Iványi Péter Assembly Utasítások, programok Iványi Péter Assembly programozás Egyszerű logikán alapul Egy utasítás CSAK egy dolgot csinál Magas szintű nyelven: x = 5 * z + y; /* 3 darab művelet */ Assembly: Szorozzuk

Részletesebben

Raszteres elemzés végrehajtása QGIS GRASS moduljával 1.7 dr. Siki Zoltán

Raszteres elemzés végrehajtása QGIS GRASS moduljával 1.7 dr. Siki Zoltán Raszteres elemzés végrehajtása QGIS GRASS moduljával 1.7 dr. Siki Zoltán Egy mintapéldán keresztül mutatjuk be a GRASS raszteres elemzési műveleteit. Az elemzési mintafeladat során gumipitypang termesztésére

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák A mikroprogram Mic 1: 4.. ábra. 51x3 bites vezérlőtár a mikroprogramnak, MPC (MicroProgram Counter): mikroprogram utasításszámláló. MIR (MicroInstruction Register): mikroutasítás regiszter. Az adatút ciklus

Részletesebben

Bevezetés a programozásba I 3. gyakorlat. PLanG: Programozási tételek. Programozási tételek Algoritmusok

Bevezetés a programozásba I 3. gyakorlat. PLanG: Programozási tételek. Programozási tételek Algoritmusok Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Bevezetés a programozásba I 3. gyakorlat PLanG: 2011.09.27. Giachetta Roberto [email protected] http://people.inf.elte.hu/groberto Algoritmusok

Részletesebben

VEZÉRLŐEGYSÉGEK. Tartalom

VEZÉRLŐEGYSÉGEK. Tartalom VEZÉRLŐEGYSÉGEK Tartalom VEZÉRLŐEGYSÉGEK... 1 Vezérlőegységek fajtái és jellemzői... 2 A processzor elemei... 2 A vezérlés modellje... 2 A vezérlőegységek csoportosítása a tervezés módszere szerint...

Részletesebben

Matematikai alapok. Dr. Iványi Péter

Matematikai alapok. Dr. Iványi Péter Matematikai alapok Dr. Iványi Péter Számok A leggyakrabban használt adat típus Egész számok Valós számok Bináris számábrázolás Kettes számrendszer Bitek: 0 és 1 Byte: 8 bit 128 64 32 16 8 4 2 1 1 1 1 1

Részletesebben

Vezérlési szerkezetek

Vezérlési szerkezetek Vezérlési szerkezetek Szelekciós ok: if, else, switch If Segítségével valamely ok végrehajtását valamely feltétel teljesülése esetén végezzük el. Az if segítségével valamely tevékenység () végrehajtását

Részletesebben

BASH SCRIPT SHELL JEGYZETEK

BASH SCRIPT SHELL JEGYZETEK BASH SCRIPT SHELL JEGYZETEK 1 TARTALOM Paraméterek... 4 Változók... 4 Környezeti változók... 4 Szűrők... 4 grep... 4 sed... 5 cut... 5 head, tail... 5 Reguláris kifejezések... 6 *... 6 +... 6?... 6 {m,n}...

Részletesebben

LINEÁRIS PROGRAMOZÁSI FELADATOK MEGOLDÁSA SZIMPLEX MÓDSZERREL

LINEÁRIS PROGRAMOZÁSI FELADATOK MEGOLDÁSA SZIMPLEX MÓDSZERREL LINEÁRIS PROGRAMOZÁSI FELADATOK MEGOLDÁSA SZIMPLEX MÓDSZERREL x 1-2x 2 6 -x 1-3x 3 = -7 x 1 - x 2-3x 3-2 3x 1-2x 2-2x 3 4 4x 1-2x 2 + x 3 max Alapfogalmak: feltételrendszer (narancs színnel jelölve), célfüggvény

Részletesebben

Kifejezések. Kozsik Tamás. December 11, 2016

Kifejezések. Kozsik Tamás. December 11, 2016 Kifejezések Kozsik Tamás December 11, 2016 Kifejezés versus utasítás C/C++: kifejezés plusz pontosvessző: utasítás kiértékeli a kifejezést jellemzően: mellékhatása is van például: értékadás Ada: n = 5;

Részletesebben

az Excel for Windows programban

az Excel for Windows programban az Excel for Windows táblázatkezelőblázatkezel programban Mit nevezünk nk képletnek? A táblt blázatkezelő programok nagy előnye, hogy meggyorsítj tják és könnyebbé teszik a felhasználó számára a számítási

Részletesebben

Laborsegédlet 3. Labor

Laborsegédlet 3. Labor 1/6. oldal Logisztikai rendszerek irányítás és automatizálás technikája I. CX-Programmer: 3. Labor A CX Programmer az OMRON PLC-k programozó szoftvere. Új program megnyitásának lépései: FILE NEW Device

Részletesebben

Programozási segédlet

Programozási segédlet Programozási segédlet Programozási tételek Az alábbiakban leírtam néhány alap algoritmust, amit ismernie kell annak, aki programozásra adja a fejét. A lista korántsem teljes, ám ennyi elég kell legyen

Részletesebben

Balaton Marcell Balázs. Assembly jegyzet. Az Assembly egy alacsony szintű nyelv, mely a gépi kódú programozás egyszerűsítésére született.

Balaton Marcell Balázs. Assembly jegyzet. Az Assembly egy alacsony szintű nyelv, mely a gépi kódú programozás egyszerűsítésére született. Balaton Marcell Balázs Assembly jegyzet Az Assembly egy alacsony szintű nyelv, mely a gépi kódú programozás egyszerűsítésére született. 1. Regiszterek Regiszterek fajtái a. Szegmensregiszterek cs (code):

Részletesebben

4. hét: Ideális és valódi építőelemek. Steiner Henriette Egészségügyi mérnök

4. hét: Ideális és valódi építőelemek. Steiner Henriette Egészségügyi mérnök 4. hét: Ideális és valódi építőelemek Steiner Henriette Egészségügyi mérnök Digitális technika 2015/2016 Digitális technika 2015/2016 Bevezetés Az ideális és valódi építőelemek Digitális technika 2015/2016

Részletesebben

3 A C programozási nyelv szintaktikai egységei

3 A C programozási nyelv szintaktikai egységei 3 A C programozási nyelv szintaktikai egységei 3.1 Azonosítók Betűk és számjegyek sorozata, betűvel vagy _ (aláhúzás) karakterrel kell kezdődnie. A nagy- és kisbetűk különbözőek. Az azonosítók tetszőleges

Részletesebben

Kifejezések. Kozsik Tamás. December 11, 2016

Kifejezések. Kozsik Tamás. December 11, 2016 Kifejezések Kozsik Tamás December 11, 2016 Kifejezések Lexika Szintaktika Szemantika Lexika azonosítók (változó-, metódus-, típus- és csomagnevek) literálok operátorok, pl. + zárójelek: (), [], {},

Részletesebben

SZÁMÍTÁSOK A TÁBLÁZATBAN

SZÁMÍTÁSOK A TÁBLÁZATBAN SZÁMÍTÁSOK A TÁBLÁZATBAN Az Excelben az egyszerű adatok bevitelén kívül számításokat is végezhetünk. Ezeket a cellákba beírt képletek segítségével oldjuk meg. A képlet: olyan egyenlet, amely a munkalapon

Részletesebben

E7-DTSZ konfigurációs leírás

E7-DTSZ konfigurációs leírás Dokumentum azonosító: PP-13-20354 Budapest, 2014.március Verzió információ Verzió Dátum Változtatás Szerkesztő Előzetes 2011.11.24. Petri 2.0 2014.01.22. 2. ábra módosítása: Az E7-DTSZ alap konfiguráció

Részletesebben

PHP. Telepítése: Indítás/újraindítás/leállítás: Beállítások: A PHP nyelv

PHP. Telepítése: Indítás/újraindítás/leállítás: Beállítások: A PHP nyelv PHP A PHP rövidítés jelentése hivatalosan: PHP Hypertext Preprocessor. Ez egy kiszolgáló-oldali parancsnyelv, amit jellemzően HTML oldalakon használnak. A különbség a két nyelv között az, hogy a kiszolgáló

Részletesebben

Törtek. Rendelhetőek nagyon jó szemléltethető eszközök könyvesboltokban és internetek is, pl:

Törtek. Rendelhetőek nagyon jó szemléltethető eszközök könyvesboltokban és internetek is, pl: Törtek A törteknek kétféle értelmezése van: - Egy egészet valamennyi részre (nevező) osztunk, és abból kiválasztunk valahány darabot (számláló) - Valamennyi egészet (számláló), valahány részre osztunk

Részletesebben

A fordítóprogramok szerkezete. Kódoptimalizálás. A kódoptimalizálás célja. A szintézis menete valójában. Kódoptimalizálási lépések osztályozása

A fordítóprogramok szerkezete. Kódoptimalizálás. A kódoptimalizálás célja. A szintézis menete valójában. Kódoptimalizálási lépések osztályozása A fordítóprogramok szerkezete Forrásprogram Forrás-kezelő (source handler) Kódoptimalizálás Fordítóprogramok előadás (A,C,T szakirány) Lexikális elemző (scanner) Szintaktikus elemző (parser) Szemantikus

Részletesebben

Számokkal kapcsolatos feladatok.

Számokkal kapcsolatos feladatok. Számokkal kapcsolatos feladatok. 1. Egy tört számlálója -tel kisebb, mint a nevezője. Ha a tört számlálójához 17-et, a nevezőjéhez -t adunk, akkor a tört reciprokát kapjuk. Melyik ez a tört? A szám: 17

Részletesebben

Egész számok. pozitív egész számok: 1; 2; 3; 4;... negatív egész számok: 1; 2; 3; 4;...

Egész számok. pozitív egész számok: 1; 2; 3; 4;... negatív egész számok: 1; 2; 3; 4;... Egész számok természetes számok ( ) pozitív egész számok: 1; 2; 3; 4;... 0 negatív egész számok: 1; 2; 3; 4;... egész számok ( ) 1. Írd a következõ számokat a halmazábra megfelelõ helyére! 3; 7; +6 ; (

Részletesebben

2. Laborgyakorlat. Step7 programozási környezet bemutatása

2. Laborgyakorlat. Step7 programozási környezet bemutatása 2. Laborgyakorlat Step7 programozási környezet bemutatása A gyakorlat célja A Siemens valamint a Siemens alapokra épített PLC-k (pl. VIPA) programozására fejlesztették a Stpe7 programozási környezetet.

Részletesebben