[Výše]
3.1 Připojení vstupů a výstupů do řídicího algoritmu
Vstupy a výstupy z ovladačů se připojují do souborů s příponou .mdl jednotlivých úloh. V hlavním souboru projektu jsou soubory úloh uvedeny pouze odkazem v blocích typu QTASK nebo TASK připojovaných na výstupy QTask, Level0,…, Level3 exekutivy. Pro připojení vstupů a výstupů z ovladače S7Drv do řídicího systému REX lze použít bloky, znázorněné na obrázku 3.2.
Blok typu From sloužící pro připojení jednoho vstupu má parametr GotoTag roven S7C__<IN>, blok typu Goto používaný pro připojení jednoho výstupu má tento parametr nastaven na S7C__<OUT>, kde <IN> a <OUT> jsou řetězce odkazující na object dictionary (viz dále). Všechny řetězce používané jako odkazy na data poskytovaná a přijímaná ovladačem S7Drv mají přímo na svém začátku prefix S7C povinně následovaný dvěma znaky _ (podtržítko).
Přesněji řečeno, daný vstupně výstupní blok je považován systémem REX za blok připojený k ovladači S7Drv, pokud jeho jméno (či, v případě bloků typu From a Goto, parametr Goto tag) začíná jménem bloku typu IODRV popisujícího daný ovladač. Na obr. 2.1 to byl právě blok S7C. Začátek jména vstupního nebo výstupního bloku je od zbytku jména vždy povinně oddělen dvěma znaky _ (podtržítko).
Kdyby byl např. blok S7C z obr. 2.1 přejmenován na XY, začínala by jména všech vstupně výstupních bloků připojených k ovladači S7Drv znaky XY__|. Z praktických důvodů je však doporučeno volit prefix mnemotechnicky blízký názvu ovladače.
Zbytek řetězce odkazujícího na vstupní nebo výstupní data je interpretován ovladačem a má strukturu používanou ve STEP7 a doporučenou normou IEC 61131-3, pouze je místo tečky použito podtržítko, tedy:
- <area><type><index>
- <area><index>
- <area><index>_<subindex>
- <area><type><index>_<subindex>
Ve výše uvedené notaci může <area> nabývat následujících hodnot:
- – paměťová proměnná
- – vstup
- – výstup
- – datový blok (4. varianta formátu)
- – časovač (2. varianta formátu)
- – čítač (2. varianta formátu)
Obdobně <type> může být:
- – byte (0…255)
- – word (0…65535)
- – dword (0…4294967295)
- – short (-32768…32767)
- – long (-2147483648…2147483647)
- – integer, viz typ long
- – float (-3.4E+38…3.4E+38)
A konečně <subindex> jsou čísla definující objekt v object dictionary, jehož hodnotu čteme/zapisujeme.
Je možné číst/zapisovat další pomocné signály k danému objektu. To se provede přidáním přípony do názvu. Možnosti jsou:
- – jiný způsob zápisu pro základní hodnotu signálu
- – povolení čtení
- – povolení zápisu
- – vynucení zápisu
- – udává počet sekund od přijetí poslední platné hodnoty
- – umožňuje změnit kód oblasti pro signál (jen pro pokročilé uživatele)
- – umožňuje změnit index pro signál (jen pro pokročilé uživatele)
- – umožňuje změnit číslo datového bloku pro signál (jen pro pokročilé uživatele)
Protože ovladač umožňuje pod jedním symbolickým jménem získávat několik vstupů či nastavovat několik výstupů, lze s výhodou používat bloky čtyřnásobných, osminásobných a šestnáctinásobných vstupů a výstupů (INQUAD, OUTQUAD, INOCT, OUTOCT a INHEXD, OUTHEXD), tak jak je znázorněno na obr. 3.2. Podrobný popis vícenásobných vstupů a výstupů lze nalézt v příručce [3]. V tomto případě je v názvu bloku odkaz na první požadovaný objekt a v následujících signálech jsou další objekty. Výhodou takového užití je zvýšení rychlosti a částečně i přehlednosti algoritmů. Podrobný popis vícenásobných vstupů a výstupů lze nalézt v příručce [3].
[Na začátek] [Výše]