Integrační protokol (AMX, Lutron, Crestron, Control4, Clipsal)

TapHome systém se dokáže integrovat s dalšími systémy prostřednictvím jednoduchého ASCII integračního protokolu. To umožňuje ostatním systémům získávat informace a ovládat TapHome zařízení.

Systém TapHome se dokáže integrovat s dalšími systémy prostřednictvím jednoduchého ASCII integračního protokolu. To umožňuje ostatním systémům získávat informace a ovládat zařízení TapHome.

Podporované komunikační vrstvy

  • RS485
  • TCP/IP
  • UDP/IP

Popis protokolu

Protokol podporuje následující příkazy:

HELP, LIST, GET, SET, ACTION, HEADER, AUTOSEND

Každý příkaz musí být ukončen znaky CRLF (0x0D 0x0A, \r\n).

Příkaz HELP

Příkaz HELP zobrazí základní informace o podporovaných příkazech.

HEADER [ON/OFF] přepne hlavičkové informace na zapnuto nebo vypnuto.

LIST zobrazí všechna vystavená zařízení.

GET [ID] získá stav zařízení se zadaným ID.

SET [ID ST VAL1 .. VALN] nastaví zařízení se zadaným ID na stav ST a hodnoty VAL1 až VALN.

ACTION [ID NUM VAL] provede na zařízení s ID akci číslo NUM s hodnotou VAL.

PUSHALL [ON/OFF] zapne/vypne odesílání změn všech zařízení.

Příkaz HEADER

Příkaz HEADER přepíná mezi dvěma možnými výstupy dat. Pokud je hlavička ON, jsou odesílány popisné informace spolu s daty. V případě, že je hlavička OFF, jsou odesílána pouze data.

HEADER bez parametrů odešle informaci o aktuálním stavu hlavičky.

HEADER ON zapne hlavičkové informace.

HEADER OFF vypne hlavičkové informace.

Příkaz LIST

Příkaz LIST zobrazí všechna vystavená zařízení.

Zobrazeny jsou následující informace:

ID zařízení je číselné ID zařízení.

Typ zařízení je textový popis typu zařízení (Blind, Switch, …).

Název zařízení, jak je nastaven v systému TapHome.

Stav zařízení jako textová informace.

Ukázkový výstup příkazu LIST:

1
2
3
4
5
6
7
8
ID:137,Type:Blind,Name:Virtual blind,Status:OK
ID:51,Type:Switch,Name:Ex Switch,Status:OK
ID:2,Type:MultiValueSwitch,Name:Heating & Cooling,Status:OK
ID:205,Type:PushButton,Name:Push button,Status:OK
ID:242,Type:Dimmer,Name:Analog output,Status:OK
ID:68,Type:Thermostat,Name:Thermostat 1,Status:UnknownError
ID:145,Type:Variable,Name:KNXVariable,Status:OK
ID:143,Type:Variable,Name:Sun azimuth,Status:OK

Příkaz GET

Příkaz GET vyžaduje jeden parametr – ID zařízení. Vrací stav zařízení a hodnoty jako čísla.

Příklad výstupu příkazu GET 137:

1
ID:137,DeviceStatus:0,BlindsLevel:41,BlindsSlope:41

Příklad, když je hlavička vypnuta:

1
137,0,41,41

Příkaz SET

Příkaz SET vyžaduje alespoň tři parametry. Nejprve ID zařízení, poté nový stav zařízení a následně alespoň jednu hodnotu k nastavení. U zařízení s více než jednou hodnotou musí následovat všechny hodnoty – například žaluzie vyžadují jak novou úroveň, tak nový úhel.

Příklad výstupu příkazu SET 137 0 35 80 s hlavičkou a bez hlavičky:

1
2
ID:137,DeviceStatus:0,BlindsLevel:35,BlindsSlope:80
137,0,35,80

Příkaz ACTION

Příkaz ACTION provede akci na zařízení s daným ID s odeslanou hodnotou. Akce jsou definovány pouze pro žaluzie. Pro žaluzie existují tři čísla akcí:

0 … zastavení žaluzie

1 … úprava úrovně z aktuální polohy o +/- hodnotu

2 … úprava úhlu lamel z aktuální polohy o +/- hodnotu

Příklad výstupu příkazu ACTION 137 1 -20:

1
ID:137,AdjustBlindsLevel:-20

Příkaz PUSHALL

Příkaz PUSHALL umožní odesílání změn pro všechna zařízení. Informace jsou odesílány ve stejném formátu jako odpověď na příkaz GET. Poznámka: při použití na RS485 lince může dojít k možné kolizi na sběrnici, která může vést k neshodě dat. Proto doporučujeme používat tento příkaz pouze na plně duplexních linkách, jako je RS232 nebo RS422. Je možné jej zapnout i na RS485 lince v systémech, kde nebudou použity příkazy SET nebo ACTION – to znamená pouze v monitorovacích systémech. V RS485 linkách, kde jsou vyžadovány příkazy SET a ACTION, doporučujeme místo automatického monitorování použít periodické dotazování prostřednictvím příkazu GET.

Režim adresy

Když je nastavena jedinečná ID rozhraní, je pak možné používat všechny příkazy v režimu adresy. V tomto režimu předchází adresa samotnému příkazu. Adresní hlavička je sekvence !InterfaceID: kde InterfaceID je nastaveno v konfiguraci rozhraní. Každý odpovědní řádek je pak také doplněn stejnou hlavičkou. Odpoví pouze rozhraní se správnou adresou – nesprávné adresování nelze z odpovědí rozpoznat.

Příklad požadavku v režimu adresy s příkazem !2:LIST:

1
klad_adresa;

Konfigurace

Pro vystavení zařízení v integračním protokolu nejdříve přejděte na Zobrazit zařízení a vyberte Add new interface. Z nabízených rozhraní vyberte jedno z Integration protocol RS485, Integration protocol TCP nebo Integration protocol UDP:

IntegrationsProtocols

Po přidání rozhraní podle typu vyplňte ostatní parametry. Zadejte jedinečné Interface ID pro každé rozhraní, pokud chcete používat režim adresy.

Vyberte terminál pro komunikaci a vyplňte komunikační parametry pro RS485. Nastavte všechny parametry sériové linky podle požadavků připojeného klienta.

InterfaceParameters

Nastavte TCP port slave rozhraní:

TCPSettings

Nastavte UDP port slave rozhraní:

UDPSettings

Poté použijte Přidat zařízení pro přidání vašich zařízení do vystavených zařízení:

AddDevice

Zvolte zařízení ze seznamu nabízených zařízení. Všimněte si, že již přidaná zařízení jsou vyšrafována.

Po přidání zařízení se zobrazí v seznamu zařízení pro rozhraní integračního protokolu:

DevicesList

Klikněte na zařízení pro zobrazení informací o něm, změnu automaticky generovaného ID zařízení nebo smazání zařízení z vystavených zařízení.

DeviceInfo

Podporovaná zařízení

Následující zařízení jsou nyní podporována pro vystavení v integračním protokolu:

Termostat, Spínač, Vícehodnotový spínač, Tlačítko, Reed kontakt, Stmívač / Analogový výstup, Proměnná, Žaluzie, RGB světlo.

Typ zařízení Zápisové příkazy Čtecí příkazy
Termostat SET <DEVICE_ID> <ERROR> <TTT.T>

Např. “SET 1 0 24.5”
Nastaví termostat s ID=1 na bezchybný stav, cílovou teplotu 24,5 ºC.
GET <DEVICE_ID>
Odezva: Cílová teplota | Teplota | Vlhkost

Např. “GET 1”
Spínač SET <DEVICE_ID> <ERROR> <0/1>

Např. “SET 1 0 1”
Zapne spínač s ID=1. Žádný chybový stav.
GET <DEVICE_ID>
Odezva: Stav spínače (0 nebo 1)
Vícehodnotový spínač SET <DEVICE_ID> <ERROR> <MM>

Např. “SET 1 0 3”
Nastaví vícehodnotový spínač s ID=1 na hodnotu 3. Žádný chybový stav.
GET <DEVICE_ID>
Odezva: Hodnota
Tlačítko SET <DEVICE_ID> <ERROR> <BUTTON_PRESSED>

Např. “SET 1 0 1”
Simuluje krátké stisknutí tlačítka s ID=1. Žádný chybový stav.
GET <DEVICE_ID>
Odezva: BUTTON_PRESSED (1 .. 4)
Reed kontakt není k dispozici GET <DEVICE_ID>
Odezva: Stav (0 nebo 1)
Stmívač / analogový výstup SET <DEVICE_ID> <ERROR> <DDD.D>

Např. “SET 1 0 55.5”
Nastaví stmívač s ID=1 na hodnotu 55,5 %. Žádný chybový stav.
GET <DEVICE_ID>
Odezva: Hodnota analogového výstupu (DDD.D)
Proměnná SET <DEVICE_ID> <ERROR> <VVV.V>

Např. “SET 1 0 1234.5”
Nastaví proměnnou s ID=1 na hodnotu 1234,5. Žádný chybový stav.
GET <DEVICE_ID>
Odezva: Hodnota proměnné (VVV.V)
RGB světlo SET <DEVICE_ID> <ERROR> <HHH> <SSS> <BBB>

Např. “SET 1 0 180 100 50”
Nastaví RGB světlo s ID=1 na azurovou barvu, plnou saturaci a 50% jasu. Žádný chybový stav.
GET <DEVICE_ID>
Odezva: Odstín | Sytost | Jas
Žaluzie SET <DEVICE_ID> <ERROR> <LLL> <AAA>

LLL … Úroveň žaluzie
AAA … Úhel lamel

Např. “SET 1 0 100 50”
Nastaví žaluzii s ID=1 na úroveň 100 % s úhlem lamel 50 %.

ACTION <DEVICE_ID> 1 <+/->LLL>

Např. “ACTION 1 1 -10”
Posune žaluzii o 10 % nahoru.

ACTION <DEVICE_ID> 2 <+/->AAA>

Např. “ACTION 1 2 +25”
Nastaví úhel lamel o +25 % (směr dolů).

ACTION <DEVICE_ID> 0
Zastaví žaluzie.
GET <DEVICE_ID>
Odezva: Úroveň | Úhel
Skupina žaluzií Stejné jako Žaluzie, bez podpory akce 0 (Zastavit).
Posuvník, Skupina posuvníků není podporováno není podporováno
Alarm, elektroměr, Skupina posuvníků, Senzor jasu, Impulsní počítadlo není podporováno není podporováno

DEVICE_ID

Postupně přiřazováno každému zařízení v seznamu vystavených zařízení. Lze jej ručně změnit na libovolnou hodnotu.

ERROR

0 … OK

1 … Baterie nízká

2 … Baterie kritická

3 … Poškozeno

4 … Chyba komunikace

5 … Neznámá chyba

6 … Chyba autorizace

7 … Chyba konfigurace

BUTTON PRESSED

1 … Krátké stisknutí

2 … Dlouhé stisknutí

3 … Dvojité stisknutí

4 … Trojité stisknutí

Ladění RS485 komunikace

Pro RS485 připojení je možné připojit USB–RS485 adaptér k vašemu PC. Požadavky a odpovědi budou viditelné v konzolové aplikaci.

Standardní USB–na–RS485 převodník

http://sk.farnell.com/ftdi/usb-rs485-we-1800-bt/cable-usb-rs485-serial-converter/dp/1740357

Poznámka: tento převodník není galvanicky izolován, takže byste měli propojit GND převodníku s GND Core.

Terminálový software pro Windows

HTerm: http://www.der-hammer.info/terminal/

Jak nastavit HTerm terminál

HTerm Configuration
  1. Nastavte správné konfigurační vlastnosti odpovídající nastavení v rozhraní TapHome Integration Protocol. (Poznámka: výchozí rychlost je 9600 baud)
  2. Nastavte New line na znak LF.
  3. Nastavte Send on Enter: CR-LF.
  4. Zadejte příkaz (např. “HELP”).
  5. Přečtěte odpověď.

Poznámka: Pokud chcete vidět změny zařízení TapHome v konzoli, použijte příkaz PUSHALL ON.

Ladění TCP komunikace

Pro ladění TCP komunikace je možné použít terminál Putty (https://putty.org/). Použijte prosím následující nastavení pro TCP spojení:

Putty Settings

Nejprve nastavte typ spojení na Raw, poté vyplňte IP adresu Core a port nastavený v rozhraní vystaveného TCP integračního protokolu.