# Collegamenti Base

## Introduzione

Il seguente documento permette di comprendere le modalità di collegamento e configurazione degli input ed output più comuni.

Il modello di scheda che verrà preso in esame è *Uniboard* (codice CHIUNIB MASTER) prodotto da Chiarini Automazioni srl.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/u6uEqPA1mzYh2pnMoaXO/board_io.png)

In generale non ci sono limiti ai dispositivi collegabili, ma nella guida verranno elencati quelli di più comune installazione.

La scheda è dotata di due entità computazionali che la rendono affidabile, ma soprattutto le permettono di garantire l'esecuzione di alcune delle funzioni principali anche in seguito al guasto o a problemi sulla *SOM*, che rappresenta il vero cervello della scheda e le permette di essere "intelligente".

Essendo ogni scheda dotata di una SOM e di una presa Ethernet, a differenza di molti sistemi offerti dalla concorrenza, non è richiesta l'installazione di alcun *Gateway* per permettere l'accesso da Remoto.

Gli output ed input sono fisicamente collegati al microcontrollore (indicato con *MCU* nella figura che segue) che comunica con la *SOM* attraverso un *BUS seriale*.

Rispetto alla domotica tradizionale l'accensione/spegnimento di una luce da pulsante (nel caso in cui input ed output siano collegati alla medesima scheda) non dipende da alcun *BUS*, ma viene interamente gestita dal microcontrollore, quindi guasti sul *BUS* non ne compromettono il funzionamento.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/ppNLB92IiWtdRST0ac8g/mcu_som.png)

## Chiarini Uniboard SOM-9R

![](https://www.smartface.it/android/smartface_tech/it/res/uniboard.png)

**Tensione di alimentazione:** tra 11 e 13.8V.

**Ingombro:** 9 moduli DIN.

### Morsetti `A`-`I`

La scheda presenta 9 uscite Relè (da **`A`** a **`I`**), di cui le prime 7 (da **`A`** a **`G`**) all’occorrenza possono essere tradotte in uscite analogiche 0-10V (vedi in alto a sinistra nello schema).

Ad ogni relè è associato un led di stato e un selettore per forzarne l’attivazione.

È inoltre possibile impostare i morsetti da **`A`** ad **`I`** come ingressi digitali.

> **Nota importante:** i morsetti indicati con le lettere da **`A`** ad **`I`** rappresentano il medesimo pin del microcontrollore (sono *morsetti multifunzione*), pertanto se si decide ad esempio di cablare il morsetto **`A`** come uscita relè, non sarà possibile sfruttarlo come ingresso digitale (Digital IN) o uscita analogica (Analog OUT).

I selettori da **`R1`** a **`R9`** servono per forzare manualmente le uscite relè, utili in caso di guasto o durante la prima fase di installazione, quando la scheda non è ancora stata configurata dall'applicazione.

### Morsetti `I1`-`I9` e `DI`

I morsetti da **`I1`** a **`I9`** sono configurabili sia come ingressi analogici che digitali (la configurazione va fatta dall’applicazione dedicata).

È possibile collegare sensori di temperatura, umidità, di luce, allarme, e in generale qualsiasi sensore che fornisca un segnale elettrico; per i sensori non direttamente supportati è prevista la possibilità di definire, dall’applicazione, la formula matematica che descrive la curva (nel caso in cui non venga fornita il sensore restituirà un valore tra 0 e 1023, che corrisponde all’intervallo 0-5V).

Tali morsetti supportano anche semplici ingressi del tipo ON/OFF (pulsanti, micro, ecc.).

Il morsetto **`DI`** è invece un ingresso esclusivamente digitale.

La scheda dispone di un’uscita 5V, utile ad esempio per sonde che richiedono tale tensione in ingresso.

### Morsetti speciali

I morsetti **`QC`** e **`QD`** permettono il collegamento di periferiche che sfruttano il *bus I2C*, ma non sono al momento supportati e non vanno quindi usati.

I morsetti **`L`** e **`R`** rappresentano le uscite audio per il collegamento di diffusori; al momento il software non integra la riproduzione sonora, ma è possibile un'integrazione su richiesta.

### Interfaccia di comunicazione

Con **`ETH`** è indicata la porta Ethernet che permette alla scheda di essere collegata ad una rete e di comunicare con altre schede o dispositivi che supportano il protocollo IP.&#x20;

Per poter effettuare la configurazione della scheda dall’app dedicata è necessario collegarla ad una rete, ed è consigliato isolare la rete del Sistema Domotico da quella dedicata ad altri servizi.

![](https://www.smartface.it/android/smartface_tech/it/res/router_boards_tablet.png)

### Riferimento Negativo

La scheda lavora con riferimento a negativo, quindi gli input vanno sempre collegati al **`-`**.

> Questa scelta favorisce l'assenza di disturbi ed evita di portare tensione sugli ingressi.

L'esempio sottostante mostra il collegamento di un pulsante; come si evince dall'immagine il pulsante va collegato all'ingresso della scheda (**`I1`** nell'esempio) e al **`-`**.

![](https://www.smartface.it/android/smartface_tech/it/res/uniboard_light.png)

### Dip Switch

Esistono due file di *dip switch* sotto il coperchio della scheda:

1. **RELAY:** questi *dip* permettono di attivare i relè dei morsetti **`A`**-**`I`**; vanno usati solo i *dip* dal numero 1 al 9 e in posizione *ON*attivano il relè corrispondente (il numero 10 non va usato e va lasciato su *OFF*).
2. **10K:** questi *dip* permettono di attivare la resistenza da *10KOhm* dei morsetti **`I1`**-**`I9`**; vanno usati solo i *dip* dal numero 1 al 9 e in posizione *ON* attivano la resistenza, mentre il 10 è fondamentale che sia lasciato su *OFF*, altrimenti la scheda non si avvia.

![](https://www.smartface.it/android/smartface_tech/it/res/uniboard_no_cover.png)

Per accedere ai *dip* è necessario:

1. Rimuovere il coperchio trasparente;
2. Rimuovere il modulo con i selettori **`R1`**-**`R9`** e il pulsante **`RESET`** facendo leva con un cacciavite;
3. Scorrere la mascherina con il logo sollevando l'estremità destra.

{% embed url="<https://youtu.be/eg1VMmo5Wq4>" %}

Per l'assemblaggio dovete:

1. Reinserire la mascherina dall'alto, premendo finché non risulta ben incastrata;
2. Collegare il modulo con i selettori **`R1`**-**`R9`** e il pulsante **`RESET`**;&#x20;
3. Riagganciare il coperchio trasparente.

## Funzioni base interfaccia

In questa sezione elencheremo alcuni dei pulsanti e icone di cui è bene conoscere la funzione e il significato.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/Z68I7YCKeOXATmaTySpm/main_board_buttons.png)

Il pulsante **blu** con il dischetto permette di salvare la configurazione della scheda; una volta confermato il salvataggio, il led verde della scheda comincerà a lampeggiare con maggiore frequenza, e tornerà a lampeggiare normalmente una volta terminato tale processo. Quando, in questa guida, si richiederà di salvare la configurazione della scheda, andrà premuto questo pulsante.

Il pulsante **rosso** permette di riavviare la scheda.

Il pulsante **giallo** è rivolto alla ricerca di aggiornamenti.

Il tasto alla destra del nome presenta l'icona di un **cestino** nel caso in cui abbiate già configurato degli elementi, permettendovi di eliminarli tutti con un singolo *tap*. Nel caso in cui non ci sia alcun elemento configurato il pulsante (che avrà l'icona di un **razzo**) vi permetterà di accelerare la configurazione, sfruttando dei modelli predefiniti (vedi immagine sotto).

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/w05McvM3iVK7ECqiWAEm/quick_setup.png)

## Collegamenti frequenti

In questa sezione andremo ad elencare alcuni dei collegamenti più frequenti, mostrando sia la modalità di cablaggio che i passaggi per procedere con la configurazione dall'app.

Alcuni tipologie di input e output richiedono di attivare/disattivare i *dip RELAY* o i *dip 10K*. Tali *dip swicth* si trovano sotto il coperchio della scheda, rimovibile aiutandosi con un cacciavite. La prima fila di *dip* a partire da sinistra si riferisce all'abilitazione dei relè (disattivi di default), la seconda fila permette invece di attivare la resistenza da 10KOhm (attivi di default, ad esclusione del *10*). Il decimo *dip* di entrambe le file non va usato e deve rimanere su *OFF* affinché la scheda si avvii correttamente.

![](https://www.smartface.it/android/smartface_tech/it/res/uniboard_no_cover.png)

### Luce e Pulsante

Di seguito un esempio di collegamento di un pulsante e di una luce (il collegamento vale per qualsiasi output che richieda un relé).

![](https://www.smartface.it/android/smartface_tech/it/res/uniboard_light.png)

> Affinché la lampadina funzioni è necessario abilitare il relè; i *dip switch* per l'abilitazione dei relè sono sotto il coperchio di plastica che presenta il logo.

Una volta rimosso il coperchio è possibile abilitare il relé impostando il *dip switch* della fila *RELAY* su *ON*; il relè 1 corrisponde al *dip*1 e così via.

Il pulsante richiede invece che il *dip* della fila *10K* sia attivo (di default sono tutti su *ON*); tale impostazione permette di attivare la resistenza di 10KOhm necessaria ad input digitali (es. pulsanti) e molti sensori (es. temperatura e crepuscolare).

Una volta terminato il cablaggio e abilitati i *dip* è ora di procedere con la configurazione dall'app dedicata:

1. Accedere al Sistema (creato in precedenza) o selezionare *Cerca schede nella rete locale*.
2. Cliccare sulla scheda desiderata (cliccate su *Individua Scheda* se non sapete di quale si tratta).
3. Cliccare sul morsetto che desiderate configurare (nell'esempio abbiamo scelto il relè **`A`**).
4. Scegliere *Luce*.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/48YPHJa1n94Gs0QXYH3C/set_output.png)

Procediamo quindi definendo un nome e premiamo il tasto con la spunta per confermare.

Ci sono alcune impostazioni extra e tra queste menzioniamo:

* *Non interagibile da interfaccia*: permette di rendere l'output non interagibile dall'app utente, utile quando configurate carichi di cui volete mostrare lo stato, ma che l'utente non può attivare (es. elettrovalvole, comandi finestre, valvole irrigazione, ecc.).
* *Impostazioni Timer*: qui potete definire il tempo massimo di attivazione dell'output, dopo il quale viene automaticamente spento; utile per luci di passaggio e comando aperture (cancello, porta, cancelletto, ecc.).

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/0DvXyW77LZ2RsrhPHBqJ/set_output_2.png)

Ora premete il pulsante con l'icona di un dischetto, quindi sul tasto *Conferma* per salvare la configurazione; il led verde della scheda lampeggerà più rapidamente e tornerà a lampeggiare normalmente una volta completato il salvataggio.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/WinjAZdf35e6YZnH5c19/save_config.png)

Cliccate quindi su *Lista Elementi* per accedere alla pagina con tutti gli elementi configurati sulla scheda. Lì troverete la luce appena configurata. Cliccate sul pulsante alla destra del nome (dovrebbe diventare verde come in figura) e dopo un piccolo istante il relè dovrebbe attivarsi (sulla scheda il led rosso corrispondente dovrebbe risultare acceso); premete nuovamente per spegnere.&#x20;

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/FLJfob9cuhgijvFsBvoS/set_output_3.png)

Procediamo ora con la configurazione del pulsante; premere sul morsetto che avete scelto (nell'esempio è **`I1`**) e scegliere *Input*.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/J8JetV8ORmLFaG9CtVYD/set_input.png)

Quindi scorrere la pagina fino a *Output collegati* e spuntare l'output configurato in precedenza; in automatico al pulsante verrà dato un nome di default (che potete cambiare). È possibile selezionare quanti output si desiderano, ma sono proposti solo quelli configurati sulla scheda. Un input può comandare output remoti (collegati ad altre schede), ma in quel caso non è possibile la dimmerazione continua per output analogici (è permessa l'accensione/spegnimento o il set di un valore preciso di luminosità); quindi se desiderate una gestione completa di luci dotate di dimmer, output ed input devono essere collegati alla stessa scheda.

> Nel caso in cui l'input debba gestire un output remoto (collegato ad un'altra scheda) dovete scorrere la pagina sino a *Logica Input* e definire cosa volete che succeda quando l'input è ad *ON* e ad *OFF*; lì potete definire una lista di operazioni di vario genere (es. spegnere tutte le luci del sistema e attivare l'allarme).

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/7MJwhfx4PzslwmYq3wVP/set_input_2.png)

L'input presenta molte altre opzioni tra cui citiamo:

* *Campanello*: questa funzione permette all'input di avviare la suoneria dei dispositivi (in genere tablet a muro) configurati come *Dispositivi Locali* nell'app utente.
* *Imposta Notifica*: qui potete configurare l'invio di un messaggio in base allo stato dell'input.

Una volta salvata la configurazione dell'input e quella della scheda, ritornate alla pagina con la lista degli elementi. Come vedete dalla figura in basso l'input mostra ben evidenziato lo stato corrente; provate quindi a premere il pulsante, lo stato dovrebbe cambiare, così come quello dell'output collegato.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/kbHEBmyY8ZfWa29ktqca/set_input_3.png)

#### Dimmer

Nel caso in cui si voglia collegare un output analogico (es. striscia led dimmerabile) il collegamento va effettuato come segue.

![](https://www.smartface.it/android/smartface_tech/it/res/uniboard_dimmer.png)

Il *dip*, che nell'esempio precedente avevamo impostato su *ON*, andrà invece lasciato su *OFF*.

> È molto importante che il dip sia nella posizione giusta, altrimenti si rischia di danneggiare il relè.

Lato app va semplicemente scelta la tipologia *Output Analogico*; una volta confermata la configurazione il morsetto configurato si colorerà di arancione, mentre quello del relè corrispondente sarà disattivo.

> Ricordiamo che i morsetti da **`A`** a **`G`** possono essere configurati sia come output analogici che digitali (relè), ma una modalità esclude l'altra.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/YLIJoK9ppXVnHCoZWTEQ/set_dimmer.png)

Salvate la configurazione, quindi nella pagina *Lista Elementi* troverete il nuovo output; lo *slider* permette di impostare il valore percentuale del dimmer. L'eventuale pulsante collegato si comporterà come ci si aspetta, ovvero permetterà di regolare il valore tenendolo premuto.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/rooQpx1Xl3SrSDZjdG3U/set_dimmer_2.png)

### Sensori

In questa sezione verrà mostrato il collegamento di alcuni dei sensori più comuni e spiegheremo come configurarli dall'app.

In generale non ci sono grandi vincoli sulla tipologia di sensori che potete collegare, in quanto è sufficiente che siano analogici e che, nel caso in cui richiedano alimentazione, funzionino a 5V.

Supportiamo direttamente alcune tipologie di sensore, ma permettiamo di definire una formula e l'unità di misura, così da poter collegare anche dispositivi non integrati ufficialmente.

Di seguito le unità di misura di default per le tipologie di sensore principali.

| Tipo di Sensore      | Unità di Misura                     |
| -------------------- | ----------------------------------- |
| Temperatura          | °C                                  |
| Umidità              | %                                   |
| Sensore di luce      | %                                   |
| Sensore di movimento | *Valore espresso in count* (0-1023) |

Se non si desidera usare unità di misura differenti, il campo *Unità di Misura* può essere lasciato vuoto.

> Se si ha bisogno della temperatura in *Fahrenheit* è sufficiente indicare *°F* come unità di misura (la conversione viene calcolata automaticamente).

Nel caso in cui i valori restituiti da un sensore non risultino precisi, rispetto ad una sonda di riferimento, potete definire un valore di taratura (sia negativo che positivo); tale valore può essere usato solo nel caso in cui l'errore sia più o meno costante al variare del valore misurato.

#### Sensore di Temperatura

Di seguito lo schema di collegamento di un sensore di temperatura *NTC 10KOhm*.

![](https://www.smartface.it/android/smartface_tech/it/res/uniboard_temperature.png)

Come nel caso del pulsante, anche per questo tipo di sonda di temperatura è necessario impostare il *dip 10K* corrispondente su *ON*.&#x20;

> Ci sono sonde di temperature più complesse che restituiscono già un valore in tensione, in quel caso non è necessario attivare il *dip 10K*.

Nel caso si scelga di adottare una sonda *NTC 10KOhm* la configurazione risulta molto semplice. È sufficiente cliccare sul morsetto corrispondente (nel nostro caso **`I2`**), scegliere *Sensore* e quindi selezionare *Sensore di Temperatura* come tipologia.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/PQdWoXNWw3SHXCTBhHZU/set_sensor.png)

È possibile usare qualsiasi tipo di termistore, o sonda di temperatura 0-5V, ma in quel caso va definita la formula che permette di calcolarne il valore.

> Se si collega un termistore di diversa resistenza (es. *NTC 100KOhm*) il *dip 10K* va impostato su *OFF* e va collegata una resistenza da 100KOhm. Va inoltre definita la formula, in quanto il sensore di temperatura di default (e per cui è automaticamente definita la formula) è l'*NTC 10KOhm*.

Nel caso in cui si desideri salvare i dati del sensore è necessario attivare l'opzione dedicata. Dall'app utente sarà poi possibile visualizzare grafici giornalieri, settimanali, mensili e annuali; inoltre, i dati sono esportabili in formato *tsv* e quindi importabili in *Microsoft Excel* o software analoghi. Sul cloud viene salvato un dato contenente il valor medio, il minimo e il massimo di ogni fascia oraria (la media viene calcolata raccogliendo un valore ogni minuto); vengono registrati un massimo di 10 mila dati per sensore (raggiunto il limite il dato più vecchio viene eliminato per lasciar posto a quello più recente), nel caso si desiderasse uno storico più ampio è necessario contattarci.

In genere i sensori di temperatura vengono collegati per permettere la gestione di riscaldamento/raffrescamento, per fare ciò è necessario configurare un *Termostato*.

> Il termostato va sempre configurato sulla scheda a cui è stato collegato il sensore.

L'app permette di creare un termostato (e di modificarlo) direttamente dalla pagina di configurazione del sensore; scorrendo totalmente la pagina troverete il tasto *Crea Termostato* (o *Modifica Termostato* nel caso in cui ne abbiate già creato uno).

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/B4ejf0iv9hKkEvIZoS3h/set_thermostat.png)

Nel sistema un termostato viene inteso come una *Gestione Soglia*, ovvero un elemento in grado di gestire output ed operazioni di vario genere sulla base del controllo di una soglia, e della modalità di funzionamento scelta. Quindi in generale ad un oggetto *Gestione Soglia* può essere associato qualsiasi tipo di sensore.

Nel caso di un termostato la soglia viene definita sulla base del set di temperatura, e le modalità di funzionamento principali sono *Caldo* e *Freddo* (ma ce ne sono altre).

#### Sensore di Umidità

Di seguito lo schema di collegamento di un sensore di umidità che integra un *Honeywell HIH-4030*. A differenza del sensore di temperatura non dobbiamo attivare il *dip 10K*, ma abbiamo da effettuare tre collegamenti:

1. Ingresso (es. **`I1`**)
2. Negativo
3. Alimentazione 5V

![](https://www.smartface.it/android/smartface_tech/it/res/uniboard_humidity.png)

Ci sono varie tipologie di sensori di umidità, ma consigliamo di scegliere sensori che presentano una curva approssimativamente lineare e con poca dipendenza dalla temperatura. Se optate per un sensore che integra un *Honeywell HIH-4030* non avete bisogno di definire alcuna formula.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/t1OnAVca08Bg5E98PNvB/set_humidity.png)

Per configurare un umidostato i passaggi sono analoghi a quelli svolti per il termostato

#### Sensore di Luce

Se si tratta di una fotoresistenza da 10KOhm il collegamento è analogo a quello del sensore di temperatura, quindi va attivato il *dip 10K* corrispondente; se il valore di resistenza è differente va collegata una resistenza adeguata e il *dip 10K* va tenuto disattivato.

È possibile sfruttare il sensore di luce per configurare un Crepuscolare, seguendo i medesimi passaggi descritti per il Termostato; il Crepuscolare permette ad esempio di gestire l'accensione/spegnimento delle luci in base alla luminosità ambientale rilevata.

L'intensità di luce viene espressa come valore percentuale; il valore espresso in *count* (0-1023) è massimo se c'è completamente buio.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/Dh8zjXQfbu3olv6R8H9W/set_light_sensor.png)

#### Sensore Personalizzato

Come sottolineato all'inizio del capitolo non ci sono vincoli al tipo di sensore che potete collegare, se non il fatto che sia analogico e che, nel caso in cui richieda di essere alimentato, funzioni a 5V.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/WMvttUq9I6ZQn66Y2zLB/set_custom_sensor.png)

Per ottenere un valore adeguato potete definire una formula e la relativa unità di misura (vedi [*Definire una Formula*](#definire-una-formula)).

Anche un sensore personalizzato può essere legato ad una *Gestione Soglia*.

#### Gestione Soglia

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/LHE7ur2wXBBhTNGCNxZn/set_thermostat_2.png)

Un oggetto *Gestione Soglia* va in genere legato ad un sensore (ma non necessariamente) e permette di attivare/disattivare output (ma anche cicli, scenari, ecc.) sulla base di un valore di set (ovvero la nostra soglia) e della modalità di funzionamento scelta.

Ci sono tre modalità principali, che assumono dei nomi differenti in base alla tipologia del sensore scelto, ma in generale sono così definite:

1. **Sotto-Soglia:** quando si attiva questa modalità l'output (nel caso del termostato è quello di *Riscaldamento*) verrà attivato quando il sensore misura un valore al di sotto di quello di set, e verrà disattivato nel caso contrario.
2. **Sopra-Soglia:** quando si attiva questa modalità l'output (nel caso del termostato è quello di *Raffreddamento*) verrà attivato quando il sensore misura un valore al di sopra di quello di set, e verrà disattivato nel caso contrario.
3. **Entrambi:** in questa modalità sono attive entrambe le gestioni spiegate in precedenza.

> Alla *Gestione Soglia* è possibile legare sensori di qualsiasi tipo e come output possono essere comandati luci, carichi, finestre, cicli e scenari (questi ultimi due possono includere a loro volta operazioni di vario genere, per comprendere le infinite possibilità consigliamo di sperimentare).

Nel caso specifico di Termostato e Umidostato gli output che vengono attivati/disattivati dalla *Gestione Soglia* contribuiscono in genere ad aumentare/diminuire il valore misurato dal sensore, ma non deve essere necessariamente così.&#x20;

Il Crepuscolare, ad esempio, permette l'attivazione di luci quando il sensore di luce rileva buio; in questo caso l'accensione degli output non deve aumentare il livello di luce misurato dal sensore, altrimenti questi si spegnerebbero immediatamente. Il sensore va infatti collocato lontano dalle luci comandate, in quanto deve rilevare solo la luce naturale.

> Possono essere scelti più output, quindi un *Crepuscolare* può accendere/spegnere più luci contemporaneamente.

Cliccando sul pulsante *Impostazioni avanzate* è possibile personalizzare ulteriormente la *Gestione Soglia*, ed in particolare potete definire:

* **Attivo all'avvio della scheda:** qui potete scegliere se desiderate che sia attivo di default nel caso di riavvio della scheda.
* **Valore minimo/massimo di set:** utile per limitare l'utente a scegliere valori consoni al tipo di sensore e di collocazione (es. nella stanza di un hotel è bene non permettere set troppo alti/bassi).
* **Valore Delta di Set:** disponibile dalla versione `23.07.04`, permette di impostare uno scostamento rispetto al set, in modo che la gestione soglia non si fermi al raggiungimento del set, ma solo una volta superato il `set +/- delta` (a seconda della modalità). Se ad esempio la gestione soglia corrisponde ad un termostato, e abbiamo delta pari a 0.5, un set di 20 gradi e modalità caldo, il termostato si fermerà superati i 20.5 gradi (ovvero `20°C + 0.5°C`).
* **Differenziale:** il software sceglie per voi il valore più opportuno in base al tipo di sensore scelto, ma potete cambiarlo a vostro piacimento. Il differenziale permette di evitare continui cambi di stato negli output quando il sensore misura un valore in prossimità del set; nel caso ad esempio di un termostato, con un differenziale pari a 0.5°C, il carico di riscaldamento si disattiva raggiunto un valore superiore al set (es. 20°C) e si riattiva ad una temperatura pari al set meno il differenziale (quindi a 19.5°C, ovvero `20°C - 0.5°C`).
* **Valore set di default:** valore di set in caso di riavvio della scheda.
* **Valore di sicurezza:** utile nel caso del termostato, questo valore è il set per la modalità antigelo.
* **Tipologia di Gestione Soglia:** scegliete *continuo* se desiderate che gli output collegati vengano mantenuti nello stato previsto durante il funzionamento (consigliamo questa opzione per termostato e umidostato), mentre optate per *impulsivo* se preferite che gli output vengano comandati solo al superamento/raggiungimento della soglia (consigliato per crepuscolare se desiderate che le luci siano comandabili anche manualmente). L'opzione *analogico* permette di comandare output analogici o con set percentuali (come luci dimmerabili, valvole proporzionali, finestre e aperture in genere); in questo caso potete definire una formula che permette di impostare l'output ad una percentuale che dipende dal valore misurato dal sensore `{value}` e da quello di set `{set}`, ad esempio `20 * ({set} - {value})`.
* **Modalità disponibili:** qui potete scegliere le modalità che volete rendere disponibili all'utente, ovviamente anche sulla base della gestione che avete scelto (quindi suggeriamo di non scegliere ad esempio *Sopra-Soglia*, se il vostro termostato gestisce solo il riscaldamento).
* **Modalità predefinita:** qui potete scegliere la modalità di default in caso di riavvio della scheda.

#### Definire una Formula

Se si scelgono altre tipologie di sonda (da quelle ufficialmente supportate), è necessario definire la formula che permette di ottenere il valore corretto (in genere viene fornita dal produttore).

Nel caso in cui la formula richiami il valore di tensione (0-5V) è sufficiente scrivere `{volt}` (vanno incluse anche le parentesi graffe), nel caso si debba utilizzare il *count* (è un parametro che esprime la tensione 0-5V con un valore da 0 a 1023) va usata la variabile `{count}`.

Esempio di formula: `(5 - {volt}) * 10`

Qui una lista delle funzioni matematiche più comuni:

* **Somma:** si usa il simbolo `+`.
* **Differenza:** si usa il simbolo `-`.
* **Prodotto:** si usa il simbolo `*`.
* **Rapporto:** si usa il simbolo `/`.
* **Logaritmo:** per calcolare il logaritmo in base `e` di `x` si usa `math.log(x)`, nel caso di logaritmo in base `y` di `x` si usa `math.log(x, y)`.
* **Potenza:** per calcolare il valore di `e` elevato alla `x` si usa `math.exp(x)`, nel caso di `x` elevato alla `y` si deve usare `math.pow(x, y)`.

È possibile richiamare nella formula il valore di altri sensori (ma non solo); in questo caso ogni parametro va definito incluso nelle parentesi graffe, ad esempio se vogliamo calcolare la media tra due temperature: `({T1} + {T2}) / 2`

Una volta definita la formula vanno definiti i parametri, cliccando sul tasto **Parametri Formula**.

L'app vi permette di salvare le formule, così da per poterle riutilizzare (vedi immagine in basso).

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/us59MddvJjfcQE8hex9d/set_formula.png)

Quindi se dovete configurare altri sensori di quel tipo potete premere il pulsante *Scegli Formula* e scegliere una di quelle salvate.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/r322VqqjsJnzulbue3rV/set_formula_2.png)

### Aperture (es. Finestre)

Per apertura si intende qualsiasi dispositivo che:

* può essere aperto e chiuso;
* può essere impostato ad una percentuale di apertura precisa;
* è dotato di finecorsa per bloccare in sicurezza la movimentazione.

Un cancello o una basculante, dotati in genere di una scheda di controllo, non vanno configurati come aperture, ma è possibile comandarne l'apertura/chiusura e lo stop sfruttando gli ingressi dedicati.

> Nel caso in cui l'apertura sia comandata da pulsanti/input fisici è importante che questi vengano cablati sulla medesima scheda e che l'apertura sia configurata su di essa, così da evitare possibili ritardi. Suggeriamo inoltre che gli output vengano collegati alla stessa scheda su cui si trovano gli input.

![](https://www.smartface.it/android/smartface_tech/it/res/uniboard_window.png)

> Prima di configurare un'apertura è consigliato configurare gli input e gli output.

Per configurare un'apertura cliccare sulla scheda a cui verranno collegati gli output e gli eventuali pulsanti, andare sulla pagina *Lista Elementi* e cliccare sul pulsante in basso a destra con i tre puntini, quindi cliccare su *Aggiungi* **+**.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/G7UPcO3gsHg9REL9v9Es/set_advanced_item.png)

Tapparelle e Imposte motorizzate possono essere facilmente integrate nel sistema, evitando l'uso di costose schede di controllo, abbiamo infatti previsto due tipi di gestione che si adattano bene a questi due casi:

* **Tapparella:** presenta un output per l'apertura ed uno per la chiusura; il cablaggio e la configurazione dei pulsanti è opzionale.
* **Imposte:** rispetto alla tapparella va definito un output di apertura/chiusura per ciascuna imposta; anche in questo caso i pulsanti sono opzionali.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/v2oFXih3mCPrbj3Rvl7q/set_window.png)

Per poter impostare con una discreta precisione la percentuale di apertura è necessario definire tre tempi (in secondi):

1. Tempo di *apertura*
2. Tempo di *chiusura*
3. Tempo di *sicurezza*

Il tempo di sicurezza permette di prolungare il tempo di apertura/chiusura totale senza influire sul valore percentuale indicato nell'interfaccia, così da assicurarsi ulteriormente che l'apertura sia completamente aperta/chiusa; in genere è sufficiente impostare 2/3 secondi.

Nel caso in cui si scelgano le *Imposte* vanno definiti altri due tempi per ciascuna imposta:

1. Ritardo di *apertura*
2. Ritardo di *chiusura*

Le imposte richiedono che, durante l'apertura/chiusura, una delle due si muova per prima; i due ritardi permettono quindi di evitare che le imposte si incrocino.

### Serrature

Le classiche serrature elettriche di porte e cancelletti vanno collegate alle uscite relè della scheda (quindi il *dip RELAY* corrispondente va attivato), ricordandosi di definire un timer (in genere è sufficiente 1 secondo, ma spesso anche 0.5 secondi).

Il timer evita che l'output rimanga attivo per un tempo superiore a quello indicato.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/aPGNAvUhzTUZqa0xKy8S/set_door.png)

Per permettere un'interazione più intuitiva consigliamo di configurare delle *Scorciatoie* dedicate e di assegnare un'icona adeguata nelle impostazioni dell'interfaccia.

### Input ON/OFF

Esistono molteplici tipologie di input digitali, ma in generale per tutti vale lo schema di collegamento del pulsante (mostrato in precedenza) e che prevede un collegamento a due fili, il comune negativo (che va collegato ad uno dei morsetti con il simbolo **`-`**) e l'output dell'ingresso, che va collegato ad uno dei morsetti abilitati alla lettura:

* morsetti da **`I1`** a **`I9`** (che sono input sia analogici che digitali);
* morsetto **`DI`** che è esclusivamente un input digitale;
* morsetti da **`A`** a **`I`**, nel caso in cui questi si vogliano configurare come input digitali; ricordiamo che questi sono morsetti multifunzione (vedi capitolo dedicato).

> Per i morsetti da **`I1`** a **`I9`** è richiesta l'attivazione del *dip 10K*. Per gli altri input non è necessaria, in quanto la resistenza 10KOhm è già integrata.

### Sistema di Allarme

Il sistema da noi sviluppato non richiede centraline d'allarme, in quanto la scheda è da sola in grado di offrire le medesime funzioni. Potete quindi collegare i sensori di allarme (di movimento, perimetrali, di contatto, ecc.) e la sirena direttamente alle schede.

Non ci sono vincoli sui collegamenti, i sensori possono essere cablati su schede differenti, e per legarli allo stesso sistema di allarme dovete semplicemente definire i *Settori*.

Di seguito gli step per una corretta e rapida configurazione:

1. Cablare e configurare il *Carico di Allarme* (la sirena in genere);
2. Cablare e configurare i *Sensori di Allarme*;
3. Accertatevi (dall'app di configurazione) di aver legato i sensori al carico (e viceversa);
4. Configurare i *Settori*;
5. Configurare le *Password*.

#### Carico di Allarme

In genere, come carico di allarme, si collega una sirena in NC (normalmente chiuso), ma potete collegare l'output che desiderate (una luce ad esempio).

Per configurare un carico di allarme cliccate sul morsetto desiderato e scegliete *Carico di Allarme*.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/CoewKgHQ0yabQEQrhPx8/set_alarm_load.png)

Per motivi di sicurezza l'output è in genere *normalmente chiuso*, ma nel caso vogliate configurare un output *NO*, disattivate l'opzione dedicata.

Trattandosi in genere di una sirena, che deve suonare in caso di allarme o manomissione, è possibile definire il *Ciclo di Allarme*, definendo il tempo per cui è attiva (in cui suona), la durata della pausa, e il numero di cicli da effettuare.

Affinché il carico funzioni è necessario legarlo ai sensori di allarme collegati al sistema, e ciò è possibile nella sezione *Sensori di Allarme Connessi*. In genere tale impostazione avviene in automatico, ma è buona pratica verificare la corretta impostazione una volta configurati tutti i sensori di allarme.

#### Sensore di Allarme

Nel caso in cui i sensori di allarme siano analogici il collegamento va effettuato come nello schema seguente.

![](https://www.smartface.it/android/smartface_tech/it/res/uniboard_alarm_sensor.png)

Al fine di rilevare gli stati di *allarme* e di *manomissione* (o *tamper*) è necessario collegare due resistenze (noi supportiamo direttamente la coppia *21KOhm-5KOhm*). È possibile usare resistenze diverse, ma in quel caso è necessario effettuare un'operazione di taratura e indicare i nuovi valori nel software di configurazione.

Anche per il sensore di allarme va attivato il *dip 10K*.

Per configurare un sensore di allarme è necessario cliccare sul morsetto scelto (nell'esempio abbiamo scelto **`I3`**) e scegliere *Sensore di Allarme*.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/S0eTbOt3Pq28uQsF4y3T/set_alarm_sensor.png)

Se avete cablato un sensore analogico, usando le resistenze suggerite, non dovete fare molto, in quanto la maggior parte delle impostazioni vengono gestite in automatico. Se si tratta del sensore che fa da tamper alla sirena, dovete attivare l'impostazione specifica.

Nel sistema d'allarme concepito da noi ogni sensore è come fosse un sistema a sé, capace autonomamente di avvisare l'utente se viene rilevato un malintenzionato o una manomissione; ogni sensore, se attivo, invia una notifica se rileva allarme o tamper, e fa suonare la sirena (che in generale abbiamo definito carico di allarme) se questa è stata configurata e legata al sensore. Non sono quindi necessarie centraline di allarme e dispositivi ulteriori.

Se è presente una sirena, affinché questa suoni, è necessario legarla al sensore. Scorrendo fino alla voce *Carico di Allarme connesso* è possibile, cliccando su *Imposta Carico*, definire la sirena. Tale operazione avviene in genere automaticamente, ma se riscontrate problemi verificate che tale impostazione sia corretta.

Per tutti i sensori è possibile definire il *Tempo di Attivazione* e quello di *Disattivazione*, che permettono di ritardare l'avviso di allarme o manomissione (per permette ad esempio la disattivazione dell'allarme dal tablet all'ingresso). In quel frangente di tempo i sensori sono comunque attivi, ma viene ritardato l'invio delle notifiche e il suono della sirena, nel caso in cui il sistema di allarme rimanga attivo dopo quel tempo.

> Una volta cablati e configurati tutti i sensori di allarme, vi consigliamo di verificare, sulla pagina di configurazione del carico di allarme, che tutti i sensori siano correttamente connessi ad esso. Fatto ciò, salvate la configurazione della scheda su cui si trova il carico di allarme.

#### Settori

La configurazione dei settori di allarme è necessaria per permettere l'interazione con i sensori e i carichi di allarme dall'app utente; non influisce sul funzionamento, ma solo sull'interfaccia e sull'accesso ai dispositivi. Per procedere alla creazione di un settore cliccare su *Settori* nella scheda dedicata alla configurazione del Sistema di Allarme, quindi cliccare sul tasto **+** per aggiungerne uno nuovo.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/QdPdCwEXBH4xZdGvLAe2/set_alarm_sectors.png)

Ad ogni settore potete associare i sensori e i carichi di allarme che desiderate. In presenza di pochi sensori vi consigliamo di creare un solo settore; in genere il carico di allarme è unico per impianto, associatelo quindi al settore principale. Premete *Salva*per confermare la configurazione.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/zAo1uSoxszK5wg57Dqhs/set_alarm_sectors_2.png)

#### Password

L'accesso ai settori dall'app utente non è possibile senza la configurazione delle password. Cliccate sul tasto *Password* nella scheda dedicata alla configurazione del Sistema di Allarme, quindi sul tasto **+**.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/P11YH5LV29EJR9unBZp4/set_alarm_passwords.png)

Spesso si desidera definire molteplici password, soprattutto se si vuole limitare l'accesso ad alcuni settori, quindi potete definire un nome una descrizione per aiutarvi a comprendere la sua natura. Cliccando su *Configura i Settori* potete definire quali settori verranno visualizzati all'inserimento della password.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/qfUwBcGyJbC4Q4vF5hLe/set_alarm_passwords_2.png)

Per gestire l'allarme dall'app utente è necessario premere sul pulsante con l'icona di un lucchetto.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/LlzSiFwkFQNOnV57QGTQ/set_security_system.png)

Digitare la password e premere su *Impostazioni Avanzate* per visualizzare i settori. Per una rapida attivazione/disattivazione di tutti i sensori contenuti nei settori di allarme (accessibili con quella password), scegliere *Attiva tutti* o *Disattiva tutti* e premere il pulsante *Conferma*.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/9VCbOhDdmgdK0MhbkHUT/set_security_system_2.png)

### Sistema di Irrigazione

In generale un Sistema di Irrigazione prevede l'installazione di elettrovalvole apposite; il collegamento di quest'ultime alla scheda avviene come per qualsiasi output e richiede l'attivazione del *dip RELAY* dedicato. Nel caso ci fossero dubbi fate riferimento alla guida relativa alla configurazione di una luce.

Per la configurazione delle elettrovalvole dall'app, procedete come voleste configurare un output generico (consigliamo di attivare l'opzione *Non interagibile da interfaccia*, per evitare che l'utente possa interagire da app, attivando/disattivando l'elettrovalvola "manualmente"). Una volta configurate e cablate tutte le elettrovalvole, dovete procedere con la configurazione di un *Ciclo*. Per farlo accedete alla pagina *Lista Elementi* della scheda su cui desiderate configurarlo, premete il pulsante con i tre puntini in basso a destra, quindi il tasto *Aggiungi* (consigliamo di configurarlo sulla scheda a cui avete collegato la maggior parte delle elettrovalvole).

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/G7UPcO3gsHg9REL9v9Es/set_advanced_item.png)

I Cicli sono oggetti avanzati che permettono di eseguire una serie di operazioni seguendo una sequenza di fasi. Per ciascuna fase è possibile definire:

* Durata
* Operazioni quando la fase viene avviata
* Operazioni quando la fase viene messa in pausa
* Operazioni quando la fase viene messa in stop

Una fase può essere configurata senza operazioni, utile se si desidera inserire una pausa all'interno del ciclo. Il ciclo può essere *infinito*, e quindi continuerà ad eseguire in *loop* la sequenza di fasi finché non verrà messo in stop o in pausa; nel caso in cui si definisca un numero preciso di ripetizioni, il ciclo ripeterà la sequenza di fasi per quel numero di volte.

È inoltre possibile definire una lista di operazioni da eseguire al termine del ciclo.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/tIHaPykBijRrH1dhTAAq/set_irrigation_cycle.png)

Nel caso specifico del Sistema di Irrigazione ogni fase può corrispondere all'attivazione di una delle elettrovalvole installate, o di un gruppo di esse. Prendiamo il caso più frequente di una elettrovalvola per ciascuna zona del giardino, e immaginiamo di avere 2 zone e di voler irrigare una zona alla volta, il nostro ciclo sarà così definito:

* *Ripetizioni:* 1.
* *Operazioni al termine:* 2 operazioni che forzano la disattivazione di ciascuna elettrovalvola.
* *Fasi:* 2 fasi, una per ciascuna zona.

Ogni fase sarà così definita:

* *Nome:* nome della zona (es. Viale Ingresso).
* *Operazioni all'avvio:* attivazione dell'elettrovalvola della zona che state configurando.
* *Operazioni se in pausa:* disattivazione elettrovalvola.
* *Operazioni se in stop:* disattivazione elettrovalvola.
* *Durata:* quella che ritenete opportuna (es. 600 secondi); l'utente potrà comunque modificarla da app, ma il valore che imposterete dall'app di configurazione sarà quello di default.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/Dbc56va96QUTyrUY0iWu/set_irrigation_cycle_phase.png)

Una volta definito il ciclo potete creare il Sistema di Irrigazione, che presenta le seguenti proprietà:

* *Ciclo:* qui dovete definire il ciclo che avete creato in precedenza.
* *Pluviometro:* questa opzione è facoltativa e permette di associare un Sensore di Pioggia al Sistema di Irrigazione, così da limitare il funzionamento nel caso in cui ci siano state delle precipitazioni.

![](https://content.gitbook.com/content/sm93EM8M0pjUxT9rdTuN/blobs/3w8Lv0P5ZKfggCjVhtSx/set_irrigation_system.png)
