# KNX (standard)

KNX è il primo standard di building automation aperto, coperto da royalty ed indipendente dalla piattaforma, approvato come standard europeo (EN 50090 - EN 13321-1) e mondiale (ISO/IEC 14543). Lo standard è stato sviluppato da KNX Association sulla base dell'esperienza dei suoi predecessori BatiBUS, EIB ed EHS.
Esistono tre modalità di KNX:
* Automatic-Mode: riprende le specifiche di EHS;
* Easy-Mode: riprende le specifiche di BatiBUS;
* System-Mode: riprende le specifiche di EIB.
Uno dei punti di forza del sistema KNX è che qualsiasi prodotto etichettato con il marchio KNX non è una semplice dichiarazione del produttore, ma si basa su prove di conformità effettuate dai laboratori di KNX. Durante questi test, si verifica non solo che il dispositivo supporti il protocollo KNX, ma che i suoi dati utili siano codificati secondo i tipi di dati standardizzati KNX. Ciò permette di realizzare impianti funzionanti anche mediante la combinazione di dispositivi di produttori diversi. Le aziende membri dell'Associazione KNX hanno più di 7000 prodotti nei loro cataloghi. Questa vasta gamma di prodotti permette, per esempio, l'integrazione di alcune funzioni:
* controllo dell'illuminazione;
* gestione dell'impianto di riscaldamento/ventilazione;
* monitoraggi degli allarmi;
* gestione energia e elettricità/gas;
* gestione di impianti audio e video.
* controllo accessi e apparati integrabili
Inoltre è possibile accedere al sistema tramite rete LAN, reti telefoniche analogiche o cellulari per avere un controllo centrale o distribuito del sistema tramite PC, display touch-screen e smartphone.

## Mezzi trasmissivi

Lo standard KNX prevede diversi mezzi trasmissivi che possono essere utilizzati in combinazione con uno o più modi di configurazione in funzione della particolare applicazione:
* TP-0 (Twisted Pair, tipo 0): Mezzo trasmissivo basato su cavo a conduttori intrecciati con bitrate di 4800 bit/s, proveniente da BatiBUS. I prodotti certificati KNX TP-0 funzionano sulla stessa linea bus dei componenti certificati BatiBUS ma non scambiano informazioni con essi;
* TP-1 (Twisted Pair, tipo 1): Mezzo trasmissivo basato su cavo a conduttori intrecciati con bitrate di 9600 bit/s, proveniente da EIB. I prodotti certificati EIB e KNX TP-1 funzionano e comunicano fra di loro sulla stessa linea bus;
* PL-110 (Power Line, 110 kHz): Mezzo trasmissivo ad onda convogliata (power-line) con bitrate di 1200 bit/s, proveniente da EIB. I prodotti certificati EIB e KNX PL-110 funzionano e comunicano fra di loro sulla stessa rete di distribuzione dell'alimentazione elettrica;
* PL-132 (Power Line, 132 kHz): Mezzo trasmissivo ad onda convogliata (power-line) con bitrate di 2400 bit/s, proveniente da EHS dove viene tuttora utilizzato. I componenti certificati KNX PL-132 ed EHS 1.3ªfunzionano sulla stessa rete ma non comunicano fra loro senza un convertitore di protocollo dedicato;
* RF (Radio Frequency, 868 MHz): Mezzo trasmissivo in radiofrequenza con bitrate di 38.4 kBit/s, sviluppato direttamente all'interno della piattaforma standard KNX;
* Ethernet (KNXnet/IP): Mezzo trasmissivo diffuso che può essere utilizzato unitamente alle specifiche KNXnet/IP che permettono il tunneling di frame KNX incorporati in frame IP (Internet Protocol).

## Modello client-server

Konnex utilizza il modello client-server, dividendo le entità coinvolte in due principali categorie:
* AR (Application Resource): ovvero il dispositivo vero e proprio che mette a disposizione un servizio, il server;
* AC (Application Control): ovvero l'entità che effettua richieste di servizio, il client.
Un dispositivo può essere allo stesso tempo AC e AR, per esempio un televisore può fornire il servizio e richiedere alle luci della stanza di regolare la loro intensità.

## Applicazioni KNX

Un'applicazione KNX è formata da functional block (FB), ovvero unità di codice da eseguire abbastanza grandi da poter impegnare un'entità computazionale, e abbastanza piccole da non impegnarne più di una. Il codice nei FB opera sui data-point che non sono altro che variabili condivise fra le varie applicazioni. I data-point Konnex (DPT), sono delle variabili standardizzate utilizzate per la rappresentazione di varie funzioni di un sistema di building automation. L'importanza dei DPT sta nel fatto che tutti i produttori accettano di utilizzare quel particolare formato per la rappresentazione di quella variabile. Le variabili sono in questo modo standardizzate e questo consente a prodotti di produttori diversi di dialogare tra loro su un bus konnex senza problemi. Ad esempio il DPT5 ha dimensione 2 byte float e serve per rappresentare i valori di temperatura in virgola mobile.