Hlavní menu:

Kontakt

Papouch s.r.o.
Strašnická 3164/1a
102 00 PRAHA 10

Telefony:

+420 267 314 267
+420 267 314 268

Fax:

+420 267 314 269

papouch@papouch.com

ICQ:

433640762

 
V našem e-shopu můžete platit také kartami MasterCard®, Maestro®, VISA® a VISA Electron®.

Jak na to? > Návody > HTTP GET v I/O modulech Quido - jak na to? >

HTTP GET v I/O modulech Quido - jak na to?

Příklad odesílání aktuálního stavu z Quida. Quido pošle GET na server a v odpovědi může být příkaz pro změnu stavů. I/O moduly Quido jsou určené pro vzdálené ovládání a dohled technologií. Mají vstupy pro kontakty a napětí a na výstupech výkonná relé. Přes HTTP GET je možné snadno Quida ovládat. A stav vstupů a výstupů umí Quida HTTP GETem posílat na vzdálený server. V tomto článku se dozvíte, jak je použití HTTP GETů jednoduché.

HTTP GET v Quidech slouží pro dvě základní funkce:

  • Ovládání Quida: GETem lze snadno jednotlivě i hromadně ovládat výstupy a nulovat počítadla na vstupech.
  • Odesílání stavu: Periodicky nebo při jakékoli změně se GETem odešle aktuální stav vstupů (i počítadel), výstupů a teploměru.

Ovládání Quida

Základním použitím příkazu HTTP GET v Quidech je přímé ovládání výstupů a nulování počítadel. Je to prakticky nejjednodužší způsob jak Quido ovládat z Vašeho systému.

Příklad ovládání Quida HTTP GETem.

Následujícími příkazy lze snadno ovládat výstupy a čítače na Quidu. Pro příjem GETů je určený skript set.xml v Quidu. Přístup k tomuto skriptu je zabezpečen jménem a heslem uživatele.

Sepnutí výstupu

Příklad: set.xml?type=s&id=1
Tento příkaz sepne výstup s číslem v parametru id (v tomto příkladu jde o výstup OUT1).

Rozepnutí výstupu

Příklad: set.xml?type=r&id=5

Invertovat výstup

Příklad: set.xml?type=i&id=12
Tento příkaz invertuje stav výstupu s číslem v parametru id.

Spuštění pulzu na výstupu

Příklad: set.xml?type=p&id=2

Odečet od čítače

Příklad: set.xml?type=c&id=3&cnt=274
Pomocí tohoto příkazu lze odečíst od aktuálního stavu čítače zadané číslo. Číslo čítače je v parametru id. Odečítaná hodnota je v parametru cnt.

Nulování všech čítačů

Příklad: set.xml?type=C
Tímto lze odečíst aktuální hodnotu od všech čítačů najednou.

Sepnutí všech výstupů

Příklad: set.xml?type=S
Takto lze sepnout najednou všechny výstupy (pokud jsou v manuálním režimu).

Rozepnutí všech výstupů

Příklad: set.xml?type=R
Takto lze rozepnout najednou všechny výstupy (pokud jsou v manuálním režimu).

Hromadné nastavení více výstupů najednou

Příklad: set.xml?type=A&sts=00110x01
Takto lze nastavit stav více výstupů současně. (Výše uvedený příklad je pro Quido ETH 8/8, takže počet znaků je 8.) První znak v pořadí představuje výstup OUT1. Je očekávaný některý z těchto tří znaků: 0 (rozepnout výstup), 1 (sepnout výstup) nebo x (nechat výstup beze zmeny)

Odpověď na ovládací HTTP GET

Odpověď na nastavení je ve formátu XML. Příklad odpovědi je zde:

<root>
   <result status="1" outs="6" val="0" pic="7"/>
</root>

Význam jednotlivých parametrů v XML je následující:

  • Tag result je vždy jen jeden.
  • Atribut status obsahuje číslo 1 (příkaz byl proveden) nebo 0 (příkaz nebyl proveden).
  • Atribut outs obsahuje číslo, které představuje stav všech výstupů. Číslo je dekadické, po převedení na binární vyjádření lze zjistit stav jednotlivých výstupů. Příklad: Číslo 6 u Quida ETH 8/8 znamená, že je sepnutý výstup 2 a 3. (Číslo 6 dekadicky se rovná 00000110 binárně a jedničky představují sepnuté výstupy.)
  • Atribut val obsahuje číslo 0 (výstup je rozepnutý) nebo 1 (výstup je sepnutý). (Tento atribut je platný jen pokud šlo o příkaz pro jeden konkrétní výstup.)

Odesílání aktuálního stavu

Druhou možností využití příkazu HTTP GET v Quidech je odesílání aktuálního stavu I/O modulu. Quido pošle GET na server a v odpovědi může být ve formátu XML příkaz pro změnu stavů.

Příklad odesílání aktuálního stavu z Quida. Quido pošle GET na server a v odpovědi může být příkaz pro změnu stavů.

Kdy se informace odesílá?

Quido odesílá HTTP GET v těchto případech:

  • Okamžitě při zaznamenané změně na vstupu.
  • Okamžitě při zaznamenané změně na výstupu.
  • Pokud teplota z připojeného teploměru opustí stanovené meze.
  • Periodicky. (Je možné nastavit periodu v řádu vteřin až jedné hodiny.)

Co se posílá?

V GETu se odesílají vždy všechny tyto informace:

  • Aktuální stav vstupů (pro každý vstup reprezentovaný jako číslo 0 nebo 1).
  • Aktuální stav výstupů (pro každý výstup reprezentovaný jako číslo 0 nebo 1).
  • Aktuální stav počítadel změn na vstupech.
  • Právě naměřená teplota z teploměru (pokud je připojen).
  • Jedinečný identifikátor Quida (MAC adresa).
  • Název Quida nastavený uživatelem.

Jak HTTP GET vypadá?

Příklad HTTP GETu odeslaného Quidem ETH 8/8 (tento I/O modul má 8 vstupů, 8 výstupů a jeden teploměr):

script.php?mac=00-20-4A-B4-8D-F7&name=Office&ins=01101010&outs=00100010&tempS=0&tempV=21.8&cnt2=235&cnt6=126

Význam jednotlivých parametrů HTTP GETu je následující:

  • mac: MAC adresa Quida.
  • name: Jméno Quida nastavené uživatelem
  • ins: Aktuální stav vstupů. 0 nebo 1 podle aktuálního stavu. První znak v pořadí je první vstup.
  • outs: Aktuální stav výstupů.
  • tempS: Popisuje status naměřené teploty. Může nabývat následujících hodnot: 0-hodnota je platná a představuje aktuálně naměřenou hodnotu; 1-čeká se na první odměr; 2-naměřená hodnota překročila uživatelsky nastavenou horní mez; 3-naměřená hodnota poklesla pod uživatelsky nastavenou dolní mez; 4-hodnota není platná – chyba měření nebo chyba senzoru (znamená poškozený senzor nebo kabel
  • tempV: Naměřená teplota jako desetinné číslo bez jednotek.
  • cntX: Počet impulzů zaznamenaný počítadlem na vstupu X.

Ovládání Quida odpovědí na HTTP GET

Proč? Když je Quido ve vnitřní síti a Váš server někde v Internetu, nemusí být zas tak snadné dopravit příkazy pro ovládání Quida z Internetu do vnitřní sítě. Musí se za tím účelem nastavit tunel (tzv. roura) z Internetu do vnitřní sítě, což může být bezpečnostní problém. Řešením je možnost ovládat Quido pomocí odpovědí na HTTP GET.

Quido stačí nastavit tak, aby informace o svém aktuálním stavu odesílalo HTTP GETem periodicky (například po 15ti sec). Váš server pak může na přijatou informaci odpovědět jednoduchým textem ve formátu XML a nastavit tak stav výstupů nebo nulovat počítadla na vstupech.

Konkrétní příklad? Tady je: Quido odeslalo výše uvedený HTTP GET na Váš server. Ten zprávu okamžitě vyhodnotil a jako odpověď poslal tento stručný text ve standarním formátu XML:

<root>
	<set outs="0x10x010" cnt2="235" cnt6="12" />
</root>

V nodu set jsou jednotlivé parametry, kterými lze nastavit stav výstupů, případně změnit stav čítačů. (Kompletní informace jsou uvedeny v manuálu ke Quidu.)

  • outs: Řetězec s požadovaným stavem jednotlivých výstupů. V parametru musí být řetězec délky přesně odpovídající počtu výstupů. Každému výstupu odpovídá jeden znak. První zleva je první výstup. Na jednotlivých pozicích můžou být tyto znaky:
    • 0: Rozepnout výstup.
    • 1: Sepnout výstup.
    • x: Ponechat výstup beze změny.
  • cntX: Těmito parametry (místo X samozřejmě uveďte číslo výstupu) lze odečíst od aktuálního stavu počítadla v Quidu. Zadané číslo se v Quidu odečte od aktuálního stavu počítadla.

 

Víte, že kompletní informace o aktuálním stavu Quida lze také číst v oblíbeném formátu XML?
Podívejte se na článek XML v Quidech...

Obrázky



Soubory:

Máte k této stránce dotaz nebo připomínku? Napište nám:


Pokud máte jakýkoli dotaz, návrh nebo připomínku, budeme rádi, když nám napíšete pomocí následujícího formuláře. Můžete nás samozřejmě kontaktovat i telefonicky nebo e-mailem jak je uvedeno v kontaktech.




ERROR