GETPB, GETPI, GETPR – Bloky pro vzdálené získání parametru
Symboly blokůPotřebná licence: STANDARD
Popis funkce
Bloky GETPR, GETPI a GETPB slouží pro vzdálené získávání parametrů ostatních
bloků v projektu . Bloky mají identickou funkci, liší se pouze v typu parametru, který
získávají. Blok GETPR je pro reálné číslo, GETPI pro celé číslo a GETPB pro
Booleovskou hodnotu. Kvůli dodržení konvence v pojmenovávání proměnných 1.3 se
výstupy jednotlivých bloků nazývají podle typu získávaného parametru:
- y – reálný výstup bloku GETPR,
- k – celočíselný výstup GETPI,
- Y – Boolean výstup pro GETPB.
Bloky mohou pracovat ve dvou režimech, které se přepínají parametrem GETF. Pro je hodnota výstupu y (nebo k, Y) nastavena na hodnotu vzdáleného parametru při startu a dále pak při každé změně sledovaného vzdáleného parametru. Jestliže parametr je on, pak bloky pracují v režimu jednorázového čtení vzdáleného parametru, který se přečte vždy, když nastane náběžná hrana (offon) na vstupu GET.
Jméno vzdáleného parametru určuje textový parametr sc (string connection), který se zadává ve tvaru <cesta_k_bloku:jmeno_parametru>. Rovněž je možné přistupovat k jednotlivým prvkům parametrů typu pole (např. parametr tout bloku ATMT). Toho se dosáhne pomocí hranatých závorek a čísla prvku, např. tedy .ATMT:touts[2], číslování je od 0, uvedený propojovací řetězec tedy odkazuje na třetí prvek pole.
Cesta k bloku, jehož parametr má být čten, může obsahovat hierarchické úrovně oddělené tečkami následovanými názvem bloku. Cesta může být relativní nebo absolutní:
- Relativní::
- Začíná znakem ’.’, tedy v úrovni, do které je umístěn blok GETPR (nebo GETPI, GETPB). Příklady cest: ".GAIN:k", ".Motor1.Poloha:ycn".
- Začíná znaky ’..’, tedy v úrovni nad blokem GETPR (nebo GETPI, GETPB). Příklady cest: "..GAIN:k", "..Motor1.Poloha:ycn".
- Relativní k tasku: Začíná v základní úrovni tasku, do které je umístěn daný blok GETPR (nebo GETPI, GETPB). V tomto případě text začíná znakem ’%’. Příklady hodnot cest: "%GAIN:k", "%Motor1.Poloha:ycn".
- Absolutní: Úplná posloupnost hierarchických úrovní až k požadovanému bloku. V případě, že má být čten parametr z bloku umístěného v úloze ovladače (pro konfiguraci viz. blok IOTASK), je v první úrovni hierarchie uveden znak ’&’ následovaný názvem ovladače. Příklady hodnot absolutních cest: "uloha1.vstupy.lin1:u2", "&EfaDrv.mereni.DER1:n".
Pořadí a názvy jednotlivých hierarchických úrovní jsou zobrazeny ve stromové struktuře v sekci Diagnostics programu REXYGEN Studio.
Varování: Pokud se čte hodnota z jiné úlohy, je pro zajištění konzistence hodnoty nutné použít tzv. semafor a počkat na dokončení úlohy, ze které se hodnota čte. Po celou dobu čekání na dokončení je úloha s blokem GETPx pozastavena! Z praktického hlediska to znamená, že blok GETPx se musí umístit do úlohy, která trvá dlouho a číst hodnotu z úlohy, která trvá krátce. Pokud je to opačně, dochází k čekání rychlé úlohy na pomalejší úlohu a rychlejší úloha se tím zpozdí. V této situaci je vhodné použít blok SETPx v déletrvající úloze.
Poznámka 1: Pokud se použije více bloků GETPx pro čtení dat v jiném tasku, není zajištěno, že se všechny hodnoty přečtou v jedné periodě druhé úlohy. Je pouze zajištěno, že dříve provedený blok GETPx přečte hodnotu ze stejné nebo dřívější periody druhého tasku než později provedený blok SETPx. Pořadí spouštění je vidět v diagnostice programu REXYGEN Studio. Pokud je důležité přečíst všechny hodnoty ve stejné periodě, musí se přenášet pomocí bloků Inport a Outport nebo z hodnot vytvořit pole a číst je najednou blokem GETPA.
Poznámka 2: Pro vzdálené čtení hodnoty lze použít i bloky GETPX a INCONN.
Tento blok propaguje kvalitu signálu. Více informací je uvedeno v sekci 1.4.
Vstup
GET | Vstup pro jednorázové přečtení parametru | Bool |
Parametr
sc | Jméno vzdáleného parametru | String |
GETF | Načtení parametru pouze po vyžádání | Bool |
|
|
|
Výstup
y | Hodnota parametru | Double (F64) |
E | Příznak chyby | Bool |
|
|
|
[Předchozí] [Na začátek] [Výše] [Další]
2024 © REX Controls s.r.o., www.rexygen.com