SETPA – Blok pro vzdálené nastavování vektorového parametru

Symbol blokuPotřebná licence: STANDARD
PIC

Popis funkce
Blok SETPA slouží ke vzdálenému nastavování vektorových parametrů ostatních bloků v modelu. Může pracovat ve dvou režimech, které se přepínají parametrem SETF. Pro SETF = off je hodnota vzdáleného parametru sc nastavena na hodnotu vstupního vektoru arrRef při startu a dále pak při každé změně vstupního signálu. Jestliže parametr SETF je on, pak blok pracuje v režimu jednorázového zápisu vzdáleného parametru, který se nastaví vždy, když nastane náběžná hrana (off on) na vstupu SET.

Poznámka 1: Pokud se zapisuje hodnota do jiné úlohy, je pro zajištění konzistence hodnoty nutné použít tzv. semafor a počkat na dokončení úlohy, do které se hodnota zapisuje. Po celou dobu čekání na dokončení je úloha s blokem SETPA pozastavena! Z praktického hlediska to znamená, že blok SETPA se musí umístit do úlohy, která trvá dlouho a zapisovat hodnotu do ú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 GETPA v déletrvající úloze.

Poznámka 2: Pokud se použije více bloků SETPA pro nastavení hodnot v jiném tasku, není zajištěno, že se všechny hodnoty nastaví v jedné periodě druhé úlohy. Je pouze zajištěno, že dříve provedený blok SETPA nastaví hodnotu ve stejné nebo dřívější periodě druhého tasku než později provedený blok SETPA. Pořadí spouštění je vidět v diagnostice programu REXYGEN Studio.

Poznámka 3: Vzdálené pole (parametr na který blok odkazuje) musí být primární pole (např. CNA:acn, RTOV:xVec, MX_MAT:ay). Není podpořeno použít jako vzdálené pole odkaz (např. CNA:vec, RTOV:yVec, SUBSYSTEM:Outport).

Jméno vzdáleného parametru určuje textový parametr sc (string connection), který se zadává ve tvaru <cesta_k_bloku:jmeno_parametru>. Cesta k bloku, jehož parametr má být získán, může obsahovat tečkami oddělené hierarchické úrovně, na jejichž konci je název bloku a může být:

  • Relativní – začíná v úrovni, do které je umístěn blok SETPA. V tomto případě text začíná znakem ’.’. Příklady hodnot relativních cest: ".CNDR:yp", ".Lights.ATMT:touts".
  • Relativní k tasku – začíná v základní úrovni tasku, do které je umístěn daný blok SETPA. V tomto případě text začíná znakem ’%’. Příklady hodnot cest: "%CNDR:yp", "%Lights.ATMT:touts".
  • 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.ATMT:touts", "&EfaDrv.mereni.CNDR:yp".

Pořadí a názvy jednotlivých hierarchických úrovní jsou zobrazeny ve stromové struktuře konfigurace v diagnostice programu REXYGEN Studio.

Vstupy

arrRef

Odkaz na pole (vektor nebo matice)

Reference

SET

Vstup pro jednorázový zápis parametru

Bool

Výstup

E

Příznak chyby

Bool

Parametry

sc

Jméno vzdáleného parametru

String

SETF

Nastavení parametru pouze na vyžádání

Bool

off ..

režim průběžného nastavování parametru

on ...

režim jednorázového nastavení parametru po náběžné hraně na vstupu SET

SETS

Nastavení velikosti pole. Použijte tento příznak pro úpravu velikosti pole při nastavování vektorového parametru.

Bool

2023 © REX Controls s.r.o., www.rexygen.com