K přesunu proměnných v PLC Simatic slouží základní instrukce, a sice tyhle na obrázku. Zatímco MOVE patří mezi notoricky známé a používané, u ostatních to již tak neplatí. My si ukážeme jak na všechny, kromě jejich negací, které jsou stejné jen s opačnou funkcí, respektive směrem.
Pro srozumitelnost ukázky si vytvoříme dva datové bloky. Jeden DB15 jako pole integer proměnných s předdefinovanou startovací hodnotou 1 .. 21 podle pořadí. To abychom nemuseli řešit "CO" budeme přesouvat a zbyla nám síla na řešení "KAM a JAK".
Druhý pak DB16, což bude cílový blok pro přesun proměnných z DB15 do DB16. Ten již bude mít startovací hodnoty nulové.
Do každého programovacího segmentu vložíme jednu instrukci, ale přes bitovou podmínku Move1 .. Move4, kterou si instrukci vlastně "zapneme". Bude se vykonávat cyklicky, tedy neustále v každém cyklu programu.
První instrukce MOVE je jasná, máme ji jen jako rozcvičku. Ta nám po "zapnutí" přenese obsah nultého [0] (prvního) wordu v DB15 do nultého [0] (prvního) wordu v DB16.
Druhá FILL_BLK je již něco jiného. Po zapnutí přenese hodnotu z DB15 prvního wordu [1] do čtyřech wordů počínaje DB16.DBW[1]. Že do čtyřech udává hodnota COUNT. Zkuste si to několikrát s různými parametry. Například pokud do IN napíšeme přímo nulu a do COUNTER počet wordů datového bloku v OUT, vynuluje nám instrukce celý datový blok.
Třetí FieldRead je taky zajímavá. Vezme hodnotu z datového bloku na vstupu MEMBER, jehož číslo wordu 2 je na vstupu INDEX a přenese ji do DB16 wordu [5]. Tady si vyzkoušejte i opačnou operaci FieldWrite.
Čtvrtá instrukce MOVE_BLK zase vezme od datového bloku DB15 wordu [7] čtyři wordy a přenese je do DB16 wordu [7] a dalších tří.
Pro detailní objasnění mrkněte do helpu, každá instrukce je tam popsána, ale není nad to ji vidět a vyzkoušet prakticky.
Ve VAT tabulce proměnných TIA Portal máme vše připraveno na čtyři pokusy, tedy spuštění našich čtyř instrukcí.
Klikněte na obrázek pro zvětšení
K nastavení proměnné, tedy ovládacího bitu stačí pravé tlačítko myši. :)
Hezky jedna po druhé se nám hodnoty z DB15 dostaly do DB 16 přesně podle různých popsaných instrukcí.
Klikněte na obrázek pro zvětšení
Podívejte se na videoukázku jak to funguje:
https://www.youtube.com/watch?v=w5PnAqnX7Xo&feature=youtube
Závěr:
Tohle byly instrukce cyklické, na rozdíl od složitějších acyklických, jejichž průběh trvá i několik cyklů PLC programu. Zase jsou jednoduché, a jakmile se je naučíte používat, jistě najdou použití v každém PLC programu.
Jaroslav Blažek
Doplňující odkazy k článku:
TIA Portal pro Simatic S7-1200/1500, více tady.