Protocollo di integrazione (AMX, Lutron, Crestron, Control4, Clipsal)
Il sistema TapHome è in grado di integrarsi con altri sistemi attraverso un semplice protocollo di integrazione ASCII. Ciò consente ad altri sistemi di ottenere informazioni e controllare i dispositivi TapHome.
Livelli di comunicazione supportati
- RS485
- TCP/IP
- UDP/IP
Descrizione del protocollo
Il protocollo supporta i seguenti comandi: AIUTO, ELENCO, OTTIENI, IMPOSTA, AZIONE, INTESTAZIONE, AUTOSEND
Ogni comando deve essere terminato con caratteri CRLF (0x0D 0x0A, \r \n ).
Comando AIUTO
Il comando HELP <\r> <\n> visualizzerà le informazioni di base sui comandi supportati. HEADER [ON / OFF] attiva o disattiva le informazioni dell'intestazione. <\r> <\n>
ELENCO visualizza tutti i dispositivi esposti. <\r> <\n>
OTTIENI [ID] ottiene il dispositivo con valori ID. <\r> <\n>
SET [ID ST VAL1 .. VALN] imposta il dispositivo con lo stato ID ST e i valori VAL1 su VALN. <\r> <\n>
AZIONE [ID NUM VAL] Esegue sul dispositivo con ID numero azione NUM con valore VAL. <\r> <\n>
L'interruttore PUSHALL [ON / OFF] consente di attivare o disattivare tutti i dispositivi. <\r> <\n>
Comando HEADER
Il comando HEADER <\r> <\n> passa tra due possibili output di dati. Se l'intestazione è ON ci sono le informazioni di descrizione di invio insieme ai dati. Nel caso in cui l'intestazione sia disattivata, vengono inviati solo dati. HEADER senza parametri invia informazioni sullo stato attuale dell'interruttore. HEADER ON attiva le informazioni sull'intestazione. HEADER OFF disattiva le informazioni dell'intestazione.
ELENCO dei comandi
ELENCO comandi visualizza tutti i dispositivi esposti.
Vengono visualizzate le seguenti informazioni:
L'ID dispositivo è un ID dispositivo numerico.
Tipo di dispositivo è una descrizione testuale del tipo di dispositivo (Blind, Switch, ...).
Nome dispositivo impostato nel sistema TapHome.
Stato del dispositivo come informazioni di testo
ELENCO <\r> <\n> output dell'esempio di comando:
ID: 137, Tipo: Blind, Nome: Virtual blind, Stato: OK <\r> <\n>
ID: 51, Tipo: Switch, Nome: Ex Switch, Stato: OK <\r> <\n>
ID: 2, Tipo: MultiValueSwitch, Nome: Riscaldamento e raffreddamento, Stato: OK <\r> <\n>
ID: 205, Tipo: Pulsante, Nome: Pulsante, Stato: OK <\r> <\n>
ID: 242, Tipo: Dimmer, Nome: Uscita analogica, Stato: OK <\r> <\n>
ID: 68, tipo: termostato, nome: termostato 1, stato: sconosciuto errore <\r> <\n>
ID: 145, Tipo: variabile, nome: KNX variabile, stato: OK <\r> <\n>
ID: 143, Tipo: variabile, Nome: Sun azimuth, Stato: OK <\r> <\n>
Comando OTTIENI
Il comando GET richiede un parametro: ID dispositivo. Restituisce lo stato e i valori del dispositivo come numeri. Esempio di output del comando GET 137 <\r> <\n>
ID: 137, DeviceStatus: 0, BlindsLevel: 41, BlindsSlope: 41 <\r> <\n>
Esempio quando l'intestazione è disattivata:
137,0,41,41 <\r> <\n>
Comando SET
Il comando SET richiede almeno tre parametri. Innanzitutto è l'ID del dispositivo, quindi il nuovo stato del dispositivo da impostare e quindi almeno un valore da impostare. Per i dispositivi con più di un valore devono seguire tutti i valori - ad esempio cieco richiede l'invio di entrambi i parametri - nuovo livello e nuovo angolo.
Esempio di output del comando SET 137 0 35 80 <\r> <\n> con e quindi senza informazioni di intestazione:
ID: 137, DeviceStatus: 0, BlindsLevel: 35, BlindsSlope: 80 <\r> <\n>
137,0,35,80 <\r> <\n>
Comando AZIONE
L'azione di comando eseguirà l'azione sull'ID dispositivo con valore di invio. Le azioni sono definite solo per i bui. Esistono tre azioni per i bui:
0 stop cieco
1 regola il livello dalla posizione reale + -valore
2 regolare l'angolo cieco dalla posizione reale + -valore
Esempio di output del comando AZIONE 137 1-20 <\r> <\n> : ID: 137, AdjustBlindsLevel: -20 <\r> <\n>
Comando PUSHALL
Il comando PUSHALL consentirà l'invio di tutte le modifiche ai dispositivi. Le informazioni vengono inviate nello stesso formato della risposta al comando GET. Si noti che quando utilizzato sulla linea RS485 possono esserci possibili conflitti sul bus che si risolvono in una mancata corrispondenza dei dati. Quindi consigliamo di utilizzare questo comando solo nelle linee full duplex / come RS232 o RS422. È possibile accenderlo anche sulla linea RS485 nei sistemi in cui non verranno utilizzati i comandi SET o ACTION, ciò significa solo nei sistemi di monitoraggio. Nelle linee RS485 in cui sono richiesti i comandi SET e ACTION consigliamo di utilizzare il pool periodico tramite il comando GET anziché il monitoraggio automatico.
Modalità indirizzo
Quando è impostato un ID interfaccia univoco, è possibile utilizzare tutti i comandi in modalità indirizzo. In questa modalità l'intestazione dell'indirizzo procede al comando stesso. Le intestazioni degli indirizzi sono in sequenza! InterfaceID: dove InterfaceID è impostato nella configurazione dell'interfaccia. Ogni riga di risposta viene quindi eseguita anche con la stessa intestazione. Solo l'interfaccia con l'indirizzo corretto risponderà - l'indirizzamento errato non può essere riconosciuto dalla risposta.
Esempio di richiesta della modalità indirizzo con comando! 2: ELENCO <\r> :
klad_adresa;
Per esporre i dispositivi nel protocollo di integrazione, prima vai su Esponi dispositivi e scegli Aggiungi nuova interfaccia . Tra le interfacce offerte scegli tra Protocollo di integrazione RS485, Protocollo di integrazione TCP o Protocollo di integrazione UDP :
Dopo aver aggiunto l'interfaccia in base al tipo, riempire altri parametri. Impostare l'ID interfaccia univoco per ciascuna interfaccia se si desidera utilizzare la modalità indirizzo.
Scegliere il terminale per la comunicazione e riempire i parametri di comunicazione per RS485. Impostare tutti i parametri della linea seriale come richiesto dal client collegato.
Impostare la porta TCP dell'interfaccia slave:
Imposta la porta UDP dell'interfaccia slave:
Quindi utilizzare Aggiungi dispositivo per aggiungere i dispositivi nei dispositivi esposti:
Scegli il dispositivo dall'elenco dei dispositivi offerti. Si noti che i dispositivi già aggiunti sono ombreggiati.
Dopo aver aggiunto il dispositivo, questo viene visualizzato nell'elenco dei dispositivi per l'interfaccia del protocollo di integrazione:
Fare clic sul dispositivo per visualizzare informazioni al riguardo, modificare l'ID dispositivo generato automaticamente o eliminare il dispositivo dai dispositivi esposti.
Debugging RS485 communication
Per le connessioni RS485, è possibile collegare l'adattatore USB RS485 al PC. Le richieste e le risposte saranno visibili nell'applicazione console.
Convertitore standard da USB a RS485
http://sk.farnell.com/ftdi/usb-rs485-we-1800-bt/cable-usb-rs485-serial-converter/dp/1740357
Nota: questo convertitore non è galvanicamente isolato, quindi è necessario collegare GND del convertitore con GND di Core.
Software terminale per Windows
Come impostare il terminale HTerm
Nota: se si desidera visualizzare le modifiche dei dispositivi TapHome nella console, utilizzare il comando "PUSHALL ON".
Per il debug della comunicazione TCP è possibile utilizzare il terminale putty (https://putty.org/). Utilizzare le seguenti impostazioni per la connessione TCP:
Innanzitutto impostare il tipo di connessione su Raw, quindi inserire l'indirizzo IP del Core e della porta impostati nelle impostazioni del protocollo di integrazione TCP esposte.