Uživatelsky definované funkce (UDF) - co to je a jak to nastavit na 2N® SmartCOM?
Uživatelsky definované funkce (UDF) jsou souborem podmínek, jež jsou v 2N® SmartCOM terminálu definovány uživatelem a po jejichž splnění jsou provedeny nastavené akce. Po splnění podmínky je možné odesílat SMS zprávy, TCP zprávy nebo nastavovat polohu relé na daném terminálu. Na daném 2N® SmartCOM terminálu je možné nastavit až 10 různých podmínek.
Jednotlivé podmínky jsou neustále vyhodnocovány a v případě, že je daná podmínka splněna (Pravda = True) dojde k provedení nastavené akce. K dalšímu provedení dané akce je zapotřebí, aby podmínka prošla stavem Nepravda (False), popřípadě ještě musí v daném stavu setrvat po nastavenou dobu časovače. To zajistí, že se například SMS zprávy nebudou odesílat při každé iteraci.
Jak nastavit 2N® SmartCOM?
V prvním konfiguračním kroku je nutné se k 2N® SmartCOMu nejprve připojit. Jednak se můžete připojit přes sériové rozhraní RS-232 nebo přes veřejnou IP adresu SIM karty, která byla do terminálu vložena a nyní je registrována do sítě operátora. Následně se jednotlivé podmínky a akce nastavují v konfiguraci terminálu pomocí specifických AT příkazů. Každý AT příkaz musí obsahovat syntaxi podmínky (<parametr1>znaménko<parametr2>), dále následuje oddělovač ":", typ akce a akční parametry. Maximální délka AT příkazu je 80 znaků!
Typický AT příkaz potom může vypadat třeba následovně:
at^scudf="ADD","AIN1>=10:SMS P[+420777234567]m[alarm message] t[60]"
Při vytváření UDF lze využít následujících parametrů:
<paramX> | Description |
---|---|
AIN1 | analogový vstup č.1 |
AIN2 | analogový vstup č.2 |
DIN1 | digitální vstup č.1 |
DIN2 | digitální vstup č. 2 |
PUL1 | pulzní vstup č.1 |
PUL2 | pulzní vstup č.2 |
CONx | Referenční podmínka, kde x = <id> dané podmínky |
CNTx | Interní čítač, kde x = <id> čítače. (1 - 5) |
Constant | Číslo, se kterým se bude parametrX porovnávat |
NFG | Síťová chyba GSM |
Při porovnávání jednotlivých parametrů a vyhodnocování stavů lze využít následujících znaků (operátorů):
<operator> | Description |
---|---|
> | param1 je větší než param2 |
< | param1 je menší než param2 |
== | param1 je roven param2 |
>= | param1 je větší než nebo roven param2 |
<= | param1 je menší než nebo roven param2 |
&& | Konjunkce |
|| | Disjunkce |
! | Negace |
Poznámka: více informací o dostupných parametrech, stavech a syntaxi naleznete v konfiguračním manuálu pro 2N® SmartCOM – odkaz je níže:
Příklad konfigurace
Dříve než začnete nastavovat své vlastní uživatelsky definované funkce, tak můžete ověřit, zda již dříve nebyly nějaké UDF do terminálu přidánu. Pokud toto chcete udělat, musíte do terminálu zadat níže uvedený příkaz. Tento příkaz a odpověď na něj jsou také ukázány na níže uvedeném obrázku.
at^scudf?
Na výše zmíněném obrázku můžete také vidět další dva AT příkazy. První je použit pro odstranění již existující podmínky s konkrétním ID z paměti terminálu, druhý je použit pro kompletní vymazání paměti.
at^scudf=”remove”,1 ... vymaže podmínku s ID=1 (první řádek v tabulce)
at^scudf=”clear” ... vymaže kompletní paměť terminálu 2N® SmartCOM
Poznámka: důležitým a užitečným příkaze je také ten, který Vám vypíše parametry, které je možné při nastavování UDF použít – viz. následující obrázek.
at^scudf=?
Příklad #1:
Představte si, že máte 2N® SmartCOM terminál, který je napájen ze standardního zdroje napětí (5-50V). Vedle tohoto zdroje je v terminálu použit záložní zdroj (baterie), jakožto záložní zdroj napájení při výpadku primárního. Právě výpadek primárního zdroje tak může být detekován na vybraném vstupu (analogový vstup pro měření napětí v rozsahu 0 – 10V) a následně o tomto můžete být informováni SMS zprávou, kterou Vám 2N® SmartCOM odešle.
V tomto konkrétním příkladu monitorujeme analogový vstup 1 a jakmile hodnota na tomto vstupu bude nižší než 3 (záleží na kalibraci A/D převodníku – viz. další FAQ na níže uvedeném odkazu) a bude detekována po dobu alespoň 300sec, potom se odešle SMS zpráva na mobilní číslo +420777234567.
Vstupní obvody - 2N® SmartCom/2N® SmartCom PRO kalibrace
Příklad #2:
V tomto příkladu je popsána situace, kdy potřebujete být informování o opakující se události. Takovým příkladem může být překročení specifické hodnoty na druhém analogovém vstupu. Nastavme tuto hodnotu na 50. Samozřejmě lze nastavit různé hodnoty a záleží opět na nastavení A/D převodníku. Pokud bude aktuální hodnota na vstupu vyšší než námi určená hodnota, potom čítač CNT1 zvýší svou stávající hodnotu o 1. Bude-li nastavená konstanta 5x překročena, potom je opět odeslána SMS zpráva na zadané mobilní číslo. V příchozí zprávě také uvidíte, kolikrát celkově již byla daná konstanta překročena (celkový počet překročení je počítán v čítači CNT2). Na závěr musíte vynulovat čítač CNT1 do výchozího nastavení (tj. nastavit mu hodnotu 0, aby mohl načítat dalších 5 překročení konstanty 50). Všechny příkazy jsou uvedeny na obrázku níže.