====== Komunikační atributy ====== #;; Patron Neuron Gate Unipi 1.1 Axon Extension #;; Každý komunikační kanál, nebo skupina disponuje atributy, zobrazované jako zelené řádky v rámci definice zařízení/kanálu. Atributy jsou určeny pro sledování/kontrolu komunikace, popř. pro její ovlivnění. ===== Základní informace ===== Komunikační atributy (commerror, timestamp) jsou velmi užitečné pro **sledování výpadků komunikace** způsobené rušením, poškozením kabeláže, či chybou samotného komunikovaného zařízení. Lze s jejich pomocí automaticky, snadno a rychle detekovat problém a adekvátně na něj reagovat, např. samoopravným mechanismem, nebo vyhlášením chybového stavu a zastavením běžného chodu programu. Dále je možné atributy (commblock, forcecomm) použít pro další úroveň **optimalizace komunikace**, nebo speciální použití, např. **opakovaný zápis hodnoty** pro vynulování čítačového vstupu (CNT). ==== Komunikační kanál ==== Disponuje třemi atributy: | ^ Význam ^ Datový typ ^ ^ [[#commerror|commerror]] | chyba při poslední komunikaci | BOOL | ^ priorityrefresh | aktuálně nemá žádné použití | BOOL | ^ [[#timestamp|timestamp]] | čas poslední úspěšné komunikace | DATE_AND_TIME (DT) | {{ .:comm-attributes:attributes_01_channel_attributes.png?direct |}} ==== Komunikační skupina ==== Disponuje až čtyřmi atributy: | ^ Význam ^ Datový typ ^ Použití | ^ [[#commblock|commblock]] | zakázání komunikace | BOOL | u všech skupin | ^ [[#commerror|commerror]] | chyba při poslední komunikaci | BOOL | u všech skupin | ^ [[#forcecomm|forcecomm]] | manuální spuštění zápisu | BOOL | pouze skupiny woch | ^ [[#timestamp|timestamp]] | čas poslední úspěšné komunikace | DATE_AND_TIME (DT) | u všech skupin | {{ .:comm-attributes:attributes_02_group_attributes.png?direct |}} ===== Podrobný popis atributů ===== ==== commblock ==== Commblock je atribut umožňující přeskočit komunikaci skupiny. Pokud je hodnota atributu ''TRUE'', je komunikace celé skupiny přeskočena. Tento atribut je datového typu BOOL a umožňuje **čtení i zápis** hodnoty. ==== commerror ==== Commerror je atribut signalizující chybu komunikace. Je-li hodnota atributu ''TRUE'', nastala chyba komunikace (skupiny, nebo celého kanálu). Tento atribut je datového typu BOOL a je určen **pouze pro čtení**. ---- Ukázka funkce atributu commerror Pro tuto ukázku je commerror komunikačního kanálu připojen na uživatelskou LED X1 (na PLC). Jelikož je komunikace bez chyb, LED je zhasnutá - stav ''FALSE'': {{ en:sw:01-mervis:comm-attributes:attributes_04_commerror_main.png?direct |}} Chybu komunikace kanálu mezi PLC a rozšiřujícím modulem xS11 lze nasimulovat vytažením konektoru komunikační linky RS-485. Tento stav je navozen na následujícím snímku, kdy se uživatelská LED X1 na PLC rozsvítí - stav ''TRUE'', čímž signalizuje chybu komunikace. Mervis IDE v režimu ladění zobrazí proměnné nekomunikujícího zařízení s rudým podbarvením, tím je indikována chyba komunikace: {{ en:sw:01-mervis:comm-attributes:attributes_05_commerror_main_error.png?direct |}} ==== forcecomm ==== Forcecomm je atribut umožňující vynucení komunikace skupiny (dotazu). Je možné ho použít pouze u skupin pro zápis s parametrem **WOCh** (Write Only on Change - zápis pouze při změně). Tento atribut je datového typu BOOL a umožňuje **čtení i zápis** hodnoty. * Commblock ma přednost před forcecomm t.j. při náběžné hraně na forcecomm i commblock je komunikace přeskočena. * Forcecomm zajistí spuštění mechanismu zápisu i v případě, že nedošlo ke změně hodnoty proměnné. * Forcecomm nejsou v některých definicích zařízení knihovny obsaženy, protože byly vytvořeny před implementací forcecomm. Aby bylo možné atribut forcecomm použít, je nutné: * kliknout na zařízení pravým tlačítkem myši a zvolit "Vytvořit specifické", čímž je umožněna editace zařízení z knihovny * otevřít toto zařízení dvojklikem * kliknout mezi skupiny a datové body pravým tlačítkem myši a přidat novou komunikační skupinu * zkopírovat vlastnosti původní skupiny * označit datové body původní skupiny a v jejich vlastnostech změnit skupinu, ke které jsou přiřazeny * smazat původní skupinu a nastavit nové skupině název dle původní ==== timestamp ==== Udává čas poslední komunikace (dotazu). Atribut je datového typu DATE_AND_TIME (DT) a je určen **pouze pro čtení**. {{ .:comm-attributes:attributes_08_timestamp.png?direct |}} ===== Jak pro atributy vygenerovat proměnné ===== K vygenerování proměnných pro atributy v plném módu je třeba otevřít zařízení, nebo komunikační kanál (na snímku níže kanál ModbusRTU), kliknout na příslušný atribut, v jeho vlastnostech v pravém sloupci nastavit "Povolit Autogen" na ''TRUE'' a vybrat "Cílový projekt". Lze také zadat vlastní název proměnné do "Generované jméno proměnné". {{ .:comm-attributes:attributes_09_autogen_variable.png?direct |}} Více informací je dostupných v článku [[cs:sw:01-mervis:autogen-hidden#prace_s_autogenem|Práce s autogenem]].