Creasol DomBus12 è un modulo compatto , 40x30x11mm, con 9 ingressi/uscite configurabili .
Può essere collegato al controllore Domoticz tramite bus seriale RS485 (4 fili, 2 per alimentazione 12/24V e 2 per dati a 115200bps).
Come altri dispositivi DomBus, DomBus12 è progettato per consumare poco, essere affidabile, completamente configurabile e facile da usare . Ogni porta è completamente configurabile, ad esempio come ingresso analogico o digitale, twinbutton (doppio pulsante), contatore, cicalino, NTC 10k, ... 2 porte possono essere utilizzate come uscita open-drain, per attivare 2 relè esterni o LED.
Caratteristiche
- 4 I/O configurabili , ciascuno impostabile come ingresso analogico/digitale, ingresso a doppio pulsante, contatore, uscita digitale (può essere collegato a una scheda relè esterna all'interno del driver del relè), sensore di distanza
- 2 I/O configurabili , ognuno impostabile come uscita open-drain (da collegare a relè esterno), uscita blind (da collegare a relè esterno), dimmer LED a bassa potenza, ingresso analogico/digitale/sensore di distanza : per impostare IO5 e/o IO6 come ingresso è necessario aprire il jumper ROx del PCB (utilizzando un taglierino) e cortocircuitare RIx (con una sfera di saldatura).
- 3 I/O configurabili , ognuno impostabile come ingressi analogici/digitali, contatori, uscite buzzer, uscite tapparelle (da collegare a scheda relè esterna), dimmer strip LED (da collegare a mosfet esterno)
- Alimentazione 7.5-35Vdc (regolata internamente da un circuito di alimentazione in modalità switching che riduce al minimo il consumo e la dissipazione di potenza)
- basso consumo energetico: 0,7 mA di corrente in stand-by a 12 V ( 10 mW )
- Bus RS485 115200 bps (lunghezza massima: 1 km)
Avvertenze
- Non collegare sorgenti o carichi ad alta tensione ai cavi del DomBus12 : questo dispositivo è progettato per funzionare con I/O a bassa tensione.
- Utilizzare per il bus un cavo schermato a 4 fili , utilizzando due linee per alimentare l'alimentazione (12 o 24Vdc) protetta da fusibile .
- Per ridurre il rumore e le riflessioni sul bus, abilitare la resistenza di terminazione (cortocircuitando il ponticello PCB Rbus) alle due estremità più lontane del bus .
Funzionalità delle porte DomBus12
Indirizzo predefinito: 0xff12
Porta# | Nome | Capacità | Configurazione predefinita | Descrizione |
1 | IO1 | IN_DIGITAL, IN_ANALOGICO, IN_TWINBUTTON, IN_COUNTER, OUT_DIGITAL,DISTANZA | IN_TWINBUTTON | Ingresso, con pullup opzionale (ponticello pcb). Utilizzabile anche per termistore NTC. Se collegato a un singolo interruttore a pulsante oa un sensore di allarme, il comune è GND (quando l'interruttore è acceso, deve cortocircuitare la porta a GND). |
2 | IO2 | IN_DIGITAL, IN_ANALOGICO, IN_TWINBUTTON, IN_COUNTER, OUT_DIGITAL,DISTANZA | IN_TWINBUTTON | Ingresso, con pullup opzionale (ponticello pcb). Utilizzabile anche per termistore NTC. Se collegato a un singolo interruttore a pulsante oa un sensore di allarme, il comune è GND (quando l'interruttore è acceso, deve cortocircuitare la porta a GND). |
3 | IO3 | IN_DIGITAL, IN_ANALOGICO, IN_TWINBUTTON, IN_COUNTER, OUT_DIGITAL,DISTANZA | IN_TWINBUTTON | Ingresso, con pullup opzionale (ponticello pcb). Utilizzabile anche per termistore NTC. Se collegato a un singolo interruttore a pulsante oa un sensore di allarme, il comune è GND (quando l'interruttore è acceso, deve cortocircuitare la porta a GND). |
4 | IO4 | IN_DIGITAL, IN_ANALOGICO, IN_TWINBUTTON, IN_COUNTER, OUT_DIGITAL,DISTANZA | IN_TWINBUTTON |
Ingresso, con pullup opzionale (ponticello pcb). Utilizzabile anche per termistore NTC. Se collegato a un singolo interruttore a pulsante oa un sensore di allarme, il comune è GND (quando l'interruttore è acceso, deve cortocircuitare la porta a GND). |
5 | IO5 | IN_DIGITAL, IN_ANALOG, OUT_DIGITAL, OUT_RELAY_LP, OUT_BLIND, OUT_DIMMER, DISTANZA | OUT_DIGITALE | Uscita open-drain, capacità 40V 100mA, adatta per essere collegata a una bobina di relè esterna, piccola striscia led, altri ingressi di dispositivi elettronici che sono attivi quando cortocircuitati a GND, ... Questo tipo di porta è in grado solo di abbassare l'uscita , a GND e hanno un varistore che protegge l'uscita dal superamento di 38-40 V. E' predisposto per essere collegato al modulo DomRelay2 (2 uscite relè) Con 2 ponticelli da circuito stampato è possibile bypassare i mosfet e utilizzare questa porta come normale ingresso/uscita. |
6 | IO6 | IN_DIGITAL, IN_ANALOG, OUT_DIGITAL, OUT_RELAY_LP, OUT_BLIND, OUT_DIMMER, DISTANZA | OUT_DIGITALE | Uscita open-drain, capacità 40V 100mA, adatta per essere collegata a una bobina di relè esterna, piccola striscia led, altri ingressi di dispositivi elettronici che sono attivi quando cortocircuitati a GND, ... Questo tipo di porta è in grado solo di abbassare l'uscita , a GND e hanno un varistore che protegge l'uscita dal superamento di 38-40 V. E' predisposto per essere collegato al modulo DomRelay2 (2 uscite relè) Con 2 ponticelli da circuito stampato è possibile bypassare i mosfet e utilizzare questa porta come normale ingresso/uscita. |
7 | IO7 | IN_DIGITAL, IN_ANALOGICO, IN_COUNTER, OUT_DIGITAL, OUT_BLIND, OUT_DIMMER, DISTANZA | IN_DIGITALE | Ingresso, con resistenza opzionale da 150 ohm che può essere abilitata tramite ponticello PCB per pilotare un cicalino esterno o una scheda relè all'interno del driver relè. Se collegato a un singolo interruttore a pulsante o sensore di allarme, il comune è GND (quando l'interruttore è acceso, deve cortocircuitare la porta a GND). Se configurata come DISTANCE, questa porta funge da segnale per gli ingressi trigger di ogni sensore di distanza collegato. |
8 | IO8 | IN_DIGITAL, IN_ANALOGICO, IN_COUNTER, OUT_DIGITAL, OUT_BLIND, OUT_DIMMER, OUT_BUZZER | IN_DIGITALE | Ingresso, con resistenza opzionale da 150 ohm che può essere abilitata tramite ponticello PCB per pilotare un cicalino esterno o una scheda relè all'interno del driver relè. Se collegato a un singolo interruttore a pulsante o sensore di allarme, il comune è GND (quando l'interruttore è acceso, deve cortocircuitare la porta a GND). |
9 | IO9 | IN_DIGITAL, IN_ANALOGICO, IN_COUNTER, OUT_DIGITAL, OUT_BLIND, OUT_DIMMER, OUT_BUZZER | IN_DIGITALE | Ingresso, con resistenza opzionale da 150 ohm che può essere abilitata tramite ponticello PCB per pilotare un cicalino esterno o una scheda relè all'interno del driver relè. Se collegato a un singolo interruttore a pulsante o sensore di allarme, il comune è GND (quando l'interruttore è acceso, deve cortocircuitare la porta a GND). |
(1): può essere utilizzata come uscita BLIND, per aprire una tapparella/tenda, ma solo la porta precedente può essere configurata in Domoticz come OUT_BLIND perché, se configurata come OUT_BLIND, il dispositivo DomBus configura automaticamente la porta successiva per pilotare un relè in apertura direzione.
Funzionalità DomBus12 Modbus RTU (per la versione Modbus)
All'accensione il modulo mostra sul led rosso l'attuale indirizzo slave Modbus (register address=8192) in formato decimale, sul led verde il baudrate seriale (reg. 8193), ed infine sul led rosso la parità seriale (reg. 8194 ).
Se un valore è zero, viene emesso un lampeggio lungo.
Ad esempio se reg(8192)=18, reg(8193)=0, reg(8194)=0, all'accensione verranno visualizzati i seguenti lampeggi del led:
1 lampeggio rosso, pausa, 8 lampeggi rossi (indirizzo slave= 0x12 = 18), pausa, 1 lampeggio lungo verde (reg(8193)=0 => baudrate=115200bps), pausa, 1 lampeggio lungo rosso (reg(8194)= 0 => parità=Nessuna).
Il dispositivo sarà operativo solo quando i parametri di indirizzo/baudrate/parità sono stati mostrati: allora il modulo accetterà comandi da Modbus RTU, e mostrerà periodicamente lo stato dell'uscita per tutte le porte, da 1 a max port: verde lampeggiante significa che lo stato della porta è Off, rosso flash significa che la porta è attiva.
Indirizzo slave predefinito: 18 (0x12)
ind | Nome | Valori | Descrizione |
0 | IO1 | 0=OFF (ingresso esternamente tirato/in corto a GND), 1=ON (ingresso esternamente disconnesso, con pullup interno a 3.3V). La logica può essere invertita con l'opzione INVERTED (da impostare su indirizzo 512+porta) | Ingresso digitale, con pullup interno. Configurabile come ingresso analogico, doppio pulsante, uscita digitale, sensore di distanza. |
1 | IO2 | 0=OFF (ingresso esternamente tirato/in corto a GND), 1=ON (ingresso esternamente disconnesso, con pullup interno a 3.3V). La logica può essere invertita con l'opzione INVERTED (da impostare su indirizzo 512+porta) | Ingresso digitale, con pullup interno. Configurabile come ingresso analogico, doppio pulsante, uscita digitale, sensore di distanza. |
2 | IO3 | 0=OFF (ingresso esternamente tirato/in corto a GND), 1=ON (ingresso esternamente disconnesso, con pullup interno a 3.3V). La logica può essere invertita con l'opzione INVERTED (da impostare su indirizzo 512+porta) | Ingresso digitale, con pullup interno. Configurabile come ingresso analogico, doppio pulsante, uscita digitale, sensore di distanza. |
3 | IO4 | 0=OFF (ingresso esternamente tirato/in corto a GND), 1=ON (ingresso esternamente disconnesso, con pullup interno a 3.3V). La logica può essere invertita con l'opzione INVERTED (da impostare su indirizzo 512+porta) | Ingresso digitale, con pullup interno. Configurabile come ingresso analogico, doppio pulsante, uscita digitale, sensore di distanza. |
4 | IO5 | 0=OFF (flottante), 1=ON (uscita collegata internamente a GND), 2-65279=ON per il tempo specificato (vedi sotto). | Uscita OpenDrain che assorbe corrente (verso GND): può essere collegata a una bobina di relè 5-24V o a una striscia led con corrente massima di 100mA. Configurabile come uscita DIMMER (0-100% con step 5%) o come ingresso. Vedere la tabella delle capacità delle porte DomBus sopra, sensore di distanza. |
5 | IO6 | 0=OFF (flottante), 1=ON (uscita collegata internamente a GND), 2-65279=ON per il tempo specificato (vedi sotto). | Uscita OpenDrain che assorbe corrente (verso GND): può essere collegata a una bobina di relè 5-24V o a una striscia led con corrente massima di 100mA. Configurabile come uscita DIMMER (0-100% con step 5%) o come ingresso. Vedere la tabella delle capacità delle porte DomBus sopra, sensore di distanza. |
6 | IO7 | 0=OFF (ingresso esternamente tirato/in corto a GND), 1=ON (ingresso esternamente disconnesso, con pullup interno a 3.3V). La logica può essere invertita con l'opzione INVERTED (da impostare su indirizzo 512+porta) | Ingresso digitale, con pullup interno. Può essere configurato come ingresso analogico, doppio pulsante, uscita digitale, flash, cicalino, sensore di distanza (uscita trigger per tutti i sensori di distanza). |
7 | IO8 | 0=OFF (ingresso esternamente tirato/in corto a GND), 1=ON (ingresso esternamente disconnesso, con pullup interno a 3.3V). La logica può essere invertita con l'opzione INVERTED (da impostare su indirizzo 512+porta) | Ingresso digitale, con pullup interno. Configurabile come ingresso analogico, doppio pulsante, uscita digitale, flash, buzzer. |
8 | IO9 | 0=OFF (ingresso esternamente tirato/in corto a GND), 1=ON (ingresso esternamente disconnesso, con pullup interno a 3.3V). La logica può essere invertita con l'opzione INVERTED (da impostare su indirizzo 512+porta) | Ingresso digitale, con pullup interno. Configurabile come ingresso analogico, doppio pulsante, uscita digitale, flash, buzzer. |
255 | Tutti i porti | maschera di bit: 1=> IO1, 2=>IO2, 3=>IO3 ... |
Questo indirizzo viene utilizzato per impostare ON o OFF (nessuna funzione timer) tutte le uscite utilizzando un comando breve, accumulando la maschera di bit per ogni uscita che dovrebbe essere ON: ad esempio |
256-267 | Configurazione porta | 1=OUT_DIGITAL, 2=OUT_RELAY_LP, ... |
Comando utilizzato per configurare la porta 1 (256), la porta 2 (257), ... come OUT_DIGITAL o OUT_RELAY_LP (relè a basso consumo) o altro valore (vedi tabella sotto) |
512-523 | Opzione porta | 0=NORMALE , 1=INVERTITA (uscita normalmente ON o ingresso ON quando la tensione della porta è 0V) | Imposta opzione porta. Se impostato su 1, l'uscita rimane attiva dopo l'avvio finché la porta non viene asserita (quindi i relè si disattivano). Per gli ingressi, impostando INVERTED il valore della porta è ON (1) quando la tensione di ingresso è 0V, OFF quando l'ingresso è lasciato aperto con pullhigh interno abilitato. |
8192 | Indirizzo secondario | 1-247 | Permette di modificare l'indirizzo slave del modulo, quindi è possibile aggiungere altri moduli allo stesso bus |
8193 | Bitrate seriale | 0=115200bps , 1=57600, 2=38400, 3=19200, 4=9600, 5=4800, 6=2400, 7=1200bps | Velocità seriale, predefinita 115200 bps 8,n,1 |
8194 | Parità seriale | 0=Nessuno , 1=Pari, 2=Dispari | Parità seriale, impostazione predefinita nessuna (115200 bps 8,n,1) |
8198 | Revisione, maggiore | Sola lettura | Ottieni la versione del firmware, il numero maggiore. Ad esempio "02" significa che la revisione è "02XX" dove XX è definito dal parametro 8199 |
8199 | Revisione, minore | Sola lettura | Ottieni la versione del firmware, numero minore. Ad esempio "h1" significa che la revisione è "XXh1" dove XX è definito dal parametro 8198 |
E' possibile attivare una o più uscite per un certo tempo (uscita monostabile/temporizzata) come indicato in tabella. Il parametro corrispondente al tempo necessario può essere calcolato utilizzando le seguenti regole:
Da 0 a 60s => risoluzione 31.25ms 2=62.5ms, 3=93.75ms, ... 1920=60s => valore=tempo_in_millisecondi/31.5
Da 1m a 1h con risoluzione 1s 1921=61s, 3540+1920=5460=1h => valore=(time_in_seconds-60)+1920
Da 1h a 1d con risoluzione 1m 5461=1h+1m, 1380+5460=6840=24h => valore=(time_in_minutes-60)+5460
Da 1g a 1500 giorni con risoluzione 1h 6841=25h, 6842=26h, e così via => value=(time_in_hours-24)+6840
Le seguenti tabelle mostrano alcuni esempi di comandi Modbus.
Indirizzo slave | Funz. Codice | Reg.Ind | Reg.Val | Telaio | Descrizione |
54 | 06 | 8192 | 1 | [36][06][20][00][00][01][xx][xx] | Cambia l'indirizzo dello slave da 54 (0x36) a 1 |
01 | 06 | 8193 | 4 | [01][06][20][01][00][04][D2][09] | Imposta la velocità seriale a 9600 bps |
01 | 06 | 8194 | 1 | [01][06][20][02][00][01][E2][0A] | Imposta la parità pari |
49 | 10 | 8192 | 1,4,1 | [31][10][20][00][00][03][06][00][01][00][04][00][01][B1][71] | Con un singolo comando, imposta l'indirizzo slave a 1, la velocità seriale a 9600 bps, parità pari. L'indirizzo originale dei moduli era 49 (0x31) in questo esempio. |
01 | 06 | 0 | 65280 | [01][06][00][00][FF][00][C8][3A] | Attiva l'uscita RL1 per sempre (65280=0xff00) |
01 | 06 | 1 | 960 | [01][06][00][01][03][C0][D8][AA] | Attiva RL2 per 960/32=30s |
01 | 06 | 255 | 0 | [01][06][00][FF][00][00][B9][FA] | Disabilita tutte le uscite (Reg.Addr=255) |
01 | 10 | 0 | 32,0,0,65280 | [31][10][00][00][00][04][08][00][20][00][00][00][00][FF][00][E6][5C ] | Imposta RL1 On per 1s (32), RL2 Off, RL3 Off, RL4 On - Possono essere impostati max 10 registri in un comando |
01 | 03 | 255 | 1 | [01][03][00][FF][00][01][B4][3A] | Legge un valore a 16 bit con lo stato delle porte. Ad esempio, se il valore restituito è 0xd1 (0b11010001), lo stato dell'output è: RL8=On, RL7=On, RL6=Off, RL5=On, RL4=Off, RL3=Off, RL2=Off, RL1=On |
01 | 03 | 8198 | 2 | [01][03][20][06][00][02][2F][CA] | Leggi 4 byte all'interno della versione del modulo. Ad esempio, se il valore restituito è <30><32><68><31> (in formato esadecimale), il valore ASCII corrispondente è "02h1" (Firmware 02h1) |
01 | 0F | 0 | 8,1,0xd1 | [01][0F][00][00][00][08][01][D1][3E][C9] | Impostare lo stato della bobina a 0xd1 (0b11010001), attivando RL8, RL7, RL5, RL1 e disabilitando altri relè |
01 | 01 | 0 | 8 | [01][01][00][00][00][08][3D][CC] | Legge lo stato della bobina. Se il valore restituito è 0xd1 (0b11010001), significa che RL8, RL7, RL5 e RL1 sono On |
Il protocollo Modbus può essere testato facilmente utilizzando un programma modbus, come mbpoll per Linux:
mbpoll -v -m rtu -0 -1 -a 1 -b 115200 -P nessuno -r 0 /dev/ttyUSB0 32 0 64 128 0 0 0 65280
per attivare RL1 per 1s, R3 per 2s, RL4 per 4s e RL8 per sempre.
mbpoll -v -m rtu -0 -1 -a 1 -b 115200 -P nessuno -r 255 -c 1 /dev/ttyUSB0
per leggere tutti gli stati delle porte.
Configurazione di IO5 e/o IO6 come ingresso
IO5 e IO6 di default sono configurate come uscite open-drain: per configurare tali porte come input (per collegare ad esempio uno switch esterno, un sensore a contatto magnetico o PIR, ...) è necessario effettuare una semplice modifica hardware, aprendo il ponticello PCB ROx corrispondente (usando un taglierino per tagliare la piccola traccia tra i pad del ponticello) e cortocircuitando il ponticello PCB RIx corrispondente (usando un saldatore con una piccola quantità di filo di saldatura per creare un cortocircuito).
Ad esempio, per impostare IO5 come ingresso, aprire RO5 utilizzando un cutter e creare un cortocircuito sui pad RI5. Quindi, quella porta può essere configurata via software come ingresso digitale o analogico scrivendo, nella descrizione di Domoticz, IN_DIGITAL o IN_ANALOG.
Utilizzo delle porte di ingresso per leggere tensioni CC esterne
Le tensioni applicate all'ingresso di un modulo DomBus devono essere comprese nell'intervallo 0-3,3 Vcc, quindi è necessario applicare una partizione resistiva esterna per misurare una tensione più elevata.
Ad esempio per monitorare una tensione a 12V si può utilizzare una partizione resistiva con 100k e 22k: in questo caso max tensione applicata = 3.3 / 22k * (100k + 22k) = 18.3V e la costante A utilizzata nel controllore domotico per ottenere la tensione reale è calcolata come 18,3/65535=0,00027924
Si noti che la tensione analogica può essere applicata solo alle porte del modulo senza la resistenza di pull-up da 10k: in DomBus12 IO7-IO9 possono essere utilizzati senza alcuna modifica, IO1-IO4 può essere utilizzato aprendo con una taglierina il corrispondente ponticello del PCB e IO5-IO6 può essere utilizzati configurando i loro ponticelli in modalità input (aprendo ROn e cortocircuitando RIn con il saldatore).
Fare attenzione a misurare le tensioni solo su dispositivi che condividono la stessa massa (GND) della rete DomBus!
Utilizzo delle porte di ingresso per leggere le temperature
I moduli DomBus hanno la capacità di leggere la temperatura utilizzando sensori NTC con resistenza 10k @25°C e coefficiente B=3950.
NTC va collegato agli ingressi che hanno già la resistenza interna di pullup da 10k, altrimenti va applicata una resistenza esterna da 10k. Collegare il sensore NTC tra ingresso e GND.
Impostando IN_ANALOG,FUNCTION=3950 la porta del modulo è configurata in modalità analogica e il driver DomBus convertirà il valore letto nel valore di temperatura in °C.
Sensori di distanza a ultrasuoni impermeabili
È possibile collegare a DomBus12 fino a 6 sensori di distanza a ultrasuoni, come JSN-SR04T : l'uscita eco deve essere collegata a una delle porte IO1, IO2, IO3, IO4, IO5, IO6 e l'ingresso trigger di tutti i sensori deve essere collegato a porta IO7.
Si prega di controllare la pagina specifica sull'utilizzo del sensore di distanza ad ultrasuoni con i moduli domotici DomBus .
Note applicative
Utilizzando DomBus12 per controllare due dispositivi 230V, utilizzando il modulo aggiuntivo DomRelay2 (con 2 relè)
Basta collegare le due uscite open-drain al modulo a 2 relè con qualsiasi tipo di cavo (ad esempio uno standard 4x0,22mm²).
Queste uscite possono essere configurate come OUT_DIGITAL o, meglio, come OUT_RELAY_LP: in questo caso l'assorbimento del relè sarà 1/3 o meno.
Collegamento di Eastron SDM230 a DomBus12 per misurare l'importazione e l'esportazione di energia/potenza su Domoticz, o DDS238-2 per misurare la potenza/energia importata
Molti contatori di energia, come Eastron SDM230, forniscono 2 uscite impulsive per il conteggio dell'energia importata ed esportata, 1 impulso ogni Wh (1000 impulsi per kWh). Maggiori info nella pagina Contatore Energia .
Utilizzando DomBus12, DomBus23, DomBusTH, DomBus32 o DomBus37 è molto facile leggere gli impulsi dai contatori di energia, calcolare la potenza istantanea e ottenere due dispositivi in Domoticz che mostrano l'utilizzo e la restituzione della potenza, l'utilizzo e la restituzione dell'energia totale e i grafici. Di seguito le istruzioni che fanno riferimento al contatore di energia Eastron SDM230: procedura analoga per qualsiasi altro contatore di energia con uscite impulsive, come il contatore di energia DDS238.
- collegare le uscite impulsive a qualsiasi I/O disponibile , ad esempio IO8 e IO9 per DomBus12 , IO1 e IO2 per DomBusTH o DomBus23 o DomBus32 o DomBus37 . La morsettiera comune dell'SDM230 deve essere collegata a GND (0V). Altri contatori di energia possono avere l'uscita S0+ che deve essere collegata al DomBus I/O e S0- a GND .
- configurare l'uscita Pulse1, su SDM230, come EXP kWh (consultare il manuale per sapere come fare); Pulse2 è preconfigurato come IMP kWh (misura l'energia importata dalla rete)
- configurare il dispositivo Domoticz collegato a Pulse2 : premere Modifica su quel dispositivo e sostituire nel campo Descrizione IN_DIGITAL o IN_TWINBUTTON (il valore predefinito) con IN_COUNTER,TYPENAME=kWh e salvare. Si prega di notare che kWh è CASE SENSITIVE!
A questo punto il dispositivo verrà automaticamente spostato nel pannello Utilità e configurato come misuratore di energia. Modificalo di nuovo, scrivi un nome (ad esempio PowerMeter_Import) e seleziona Tipo di utilizzo . - se pag
deve essere misurata l'energia prodotta, configurare il dispositivo Domoticz collegato a Pulse1 come prima: premere Modifica su quel dispositivo, sostituire nel campo Descrizione IN_DIGITAL o IN_TWINBUTTON con IN_COUNTER,TYPENAME=kWh e salvare.
A questo punto il dispositivo verrà automaticamente spostato nel pannello Utilità e configurato come misuratore di energia. Modificalo di nuovo, scrivi un nome (ad esempio PowerMeter_Export) e seleziona Tipo di reso . - Nel caso in cui vengano creati sia dispositivi di importazione che di esportazione, è necessario specificare su Dispositivo di importazione il numero di unità del dispositivo di esportazione e viceversa. Quindi, selezionare Setup -> Dispositivi e annotare il numero dell'Unità corrispondente a Importa (ad esempio 98), ed Esporta dispositivo (ad esempio 99), quindi andare nel pannello Utilità, modificare Importa dispositivo e aggiungere alla descrizione ,OPPOSITE=99 ( Unità del dispositivo di esportazione) e salvare; modifica Esporta dispositivo e aggiungi alla descrizione ,OPPOSITE=98 (Unità del dispositivo di importazione) e salvare. In questo modo, alla ricezione di un impulso sul dispositivo Import, l'accensione del dispositivo Export verrà immediatamente impostata a 0, e viceversa, alla ricezione di un impulso sul dispositivo Export, l'accensione del dispositivo Import verrà impostata a 0.
Nel caso in cui la potenza debba essere misurata in un'unica direzione (unidirezionale), è possibile utilizzare DDS238-2 (è più economico di SDM230!) e la sua uscita S0 (pulsata) deve essere collegata all'ingresso di un modulo DomBus. Poiché il DDS238-2 genera 2000 impulsi/kWh, il dispositivo DomBus va configurato scrivendo nel campo Descrizione IN_COUNTER,TYPENAME=kWh,DIVIDER=2000
Domoticz necessita fino a 5 minuti prima di aggiornare correttamente il contatore di energia.
Domoticz script script_device_power
Installando i file script_device_power.lua e config_power.lua forniti su GitHub nella directory scripts/lua di Domoticz, è possibile aggiungere a Domoticz le seguenti funzioni:
- rilevamento interruzione di corrente => accende i Led (e altri dispositivi) in caso di blackout (mancanza di corrente)
- visualizzazione della potenza in importazione ed esportazione , tramite led rosso/verde su DomBusTH (il led rosso lampeggia 1 volta se potenza in importazione <1kW, 2 volte se <2kW, ... il led verde lampeggia 1 volta se potenza in esportazione <1kW, 2 volte se potenza < 2 kW, ....)
- in caso di elevato consumo energetico, programmare la pompa di calore in modo che funzioni a un livello inferiore o scollegare i carichi per impedire la disconnessione dell'alimentazione . Nel caso in cui non ci siano carichi da staccare, inviare alert tramite led/buzzer/sirena, e inviare alert tramite Telegram
- abilitare automaticamente i carichi in caso di potenza extra da fonti rinnovabili , per aumentare l'autoconsumo: ad esempio attivare un riscaldatore elettrico se la temperatura è inferiore a un livello e la potenza disponibile è maggiore della potenza del riscaldatore
#from linux shell, type the following commands (copy and paste): lines starting with # are comments, and can be ignored
#become root
sudo su -
#enter domoticz directory /scripts/lua
cd ~pi/Domoticz/scripts/lua
if [ -d domoticz_lua_scripts ]; then
cd domoticz_lua_scripts
#update domoticz_lua_script local repository
git pull
cd ..
else
which git
if [ $? -ne 0 ]; then
#install git
apt install git
fi
#download domoticz_lua_scripts repository with all scripts
git clone https://github.com/CreasolTech/domoticz_lua_scripts.git
fi
cp -i domoticz_lua_scripts/script_device_power.lua domoticz_lua_scripts/config_power.lua .
if [ ! -r globalvariables.lua ]; then cp domoticz_lua_scripts/globalvariables.lua . ; fi
if [ ! -r globalfunctions.lua ]; then cp domoticz_lua_scripts/globalfunctions.lua . ; fi
#now edit config file
nano config_power.lu
e regola le informazioni nel file di configurazione in modo che corrispondano al tuo sistema domotico.
Collegamento di un contatore dell'acqua o del gas a Domoticz
I contatori acqua e gas hanno solitamente un'uscita optoisolata che genera un impulso ogni 0.NNN m³.
Collegando quell'uscita ad un ingresso I/O di DomBus12, o DomBus23 o DomBusTH, e uscita comune a GND, è possibile ottenere un contatore incrementale in Domoticz che misura acqua, gas e quant'altro: divisore contatore, offset contatore e unità di misura può essere specificato in Domoticz.
Il dispositivo I/O collegato al contatore va configurato in questo modo: cliccare su Modifica sul dispositivo domoticz, scrivere il nome appropriato (ad esempio Water_Meter), sostituire il tipo di dispositivo corrente (es. IN_DIGITAL) nel campo Descrizione con IN_COUNTER e salvare : il dispositivo verrà spostato nel pannello Utilità ed è pronto per il conteggio degli impulsi.
Utilizzo del modulo DomBus12 per controllare 2 carichi 230V utilizzando 2 pulsanti, 4 sensori a contatto magnetico e 1 PIR
Lo schema seguente mostra come utilizzare questo modulo domotico per controllare alcuni sensori di allarme (PIR, per rilevare i movimenti all'interno di una stanza, e 4 sensori a contatto magnetico applicati a finestre, porte e tapparelle, per rilevare lo stato aperto e la transizione), e anche comandare 2 carichi (luce e deumidificatore, ad esempio) utilizzando la scheda aggiuntiva DomRelay2 (all'interno di 2 relè) posta vicino ai carichi e collegata a DomBus12 tramite un cavetto a filo.
Sia DomBus12 che DomRelay2 sono moduli molto piccoli che possono stare ovunque.
I due pulsanti sono collegati tra loro da una resistenza da 4k7 e collegati ad un unico filo di ingresso: questa configurazione è denominata " twinbutton " e permette di utilizzare 2 pulsanti per ogni ingresso del modulo, ed è normalmente utilizzata dai pulsanti doppi con la funzione UP/DOWN ( applicata ad esempio alle tapparelle) o ON/OFF.
DomBus12, DomBus23, DomBus31 e DomBusTH hanno anche la possibilità di inviare il comando direttamente ad altri dispositivi della stessa famiglia (ed anche a se stesso), con i seguenti vantaggi:
- configurazione molto semplice (non è necessario configurare il controller); ad esempio è possibile configurare un pulsante per l'attivazione di un carico, scrivendo il comando sulla descrizione del dispositivo come mostrato di seguito
- sono supportati fino a 8 comandi per ogni ingresso/sensore
- questi comandi vengono ricevuti e gestiti dai moduli DomBus senza alcuna latenza introdotta dal controllore
- i comandi funzionano anche nel caso in cui il controller sia inattivo
Esempio: indirizzo modulo = 1201, con 2 pulsanti collegati alla porta 1 e configurato come IN_TWINBUTTON , con le seguenti funzioni:
Breve impulso sul pulsante DOWN per ottenere luce (collegato alla porta 6 del modulo 1201) ON per 120s: DCMD(Pulse)=1201.6:ON:120s
Impulso di 2 secondi sul pulsante GIÙ per attivare/disattivare la stessa luce senza alcun timer: DCMD(Pulse2)=1201.6:TOGGLE
Breve impulso sul pulsante UP per accendere il deumidificatore (collegato alla porta 5 del modulo 1201) ON per 2 ore: DCMD(Pulse)=1201.5:ON:2h
Impulso 1s per spegnere il deumidificatore: DCMD(Pulse1)=1201.5:OFF
Per configurare la porta 1 del modulo 1201 in questo modo è sufficiente editare il dispositivo porta 1 in Domoticz, e scrivere nella descrizione tutti i comandi sopra:
IN_TWINBUTTON,DCMD(Impulsi)=1201.6:ON:120s,DCMD(Impulsi2)=1201.6:TOGGLE,DCMD(Impulsi)=1201.5:ON:2h,DCMD(Impulsi1)=1201.5:OFF
Quindi la luce e il deumidificatore funzioneranno anche se Domoticz è offline.
DomBus12 collegato a uno o più sensori di temperatura, in serra
DomBus12, come gli altri moduli DomBus con ingressi analogici e resistenze di pullup da 10k, può essere collegato a termistori NTC per misurare la temperatura , utilizzando sensori di tipo NTC 10k 3950 molto comuni ed economici. Sono inoltre disponibili in versione sigillata/impermeabile , con cavo a 2 fili estensibile per 50-100m di distanza utilizzando un comune cavo di allarme 2x0.22mm² + schermatura; utilizzando un unico cavo 4x0.22mm²+schermato è possibile collegare 4 diversi sensori di temperatura.
Lo schema seguente mostra il modulo DomBus12 con 4 sensori di temperatura collegati su IO1-4, un modulo remoto doppio relè DomRelay2 collegato su IO5-6 e 2 pulsanti su IO8-9.
Il dispositivo I/O collegato al sensore di temperatura NTC deve essere configurato, in Domoticz, come IN_ANALOG,FUNCTION=3950 ed è inoltre possibile aggiungere un offset per compensare eventuali errori di temperatura, ad esempio IN_ANALOG,FUNCTION=3950,B=0.2 se il la temperatura reale è di 0,2°C superiore alla temperatura misurata.
Collegamento di DomBus12 a 9 termistori NTC
DomBus12 dispone di 4 ingressi configurabili come IN_DIGITAL,FUNCTION=3950 e collegati a termistori NTC, 10k @25°C con costante 3950: in questo modo è possibile misurare fino a 4 temperature di fluido o aria.
Nel caso si debbano collegare più sensori NTC è possibile effettuare una modifica hardware per avere fino a 9 sensori di temperatura NTC collegati:
- alla piazzola indicata dalla freccia rossa va saldato un filo per portare 3,3V all'esterno
- collegare un termistore NTC da 10k 3950 tra IOx e GND e un resistore da 10k tra IOx e il filo da 3,3 V, dove x=7-9
- se 7 termistori NTC non sono sufficienti, aprire i ponticelli PCB ROx, accorciare i ponticelli PCB RIx saldando una pallina di stagno e collegare un termistore NTC 10k 3950 tra IOx e GND e un resistore 10k tra IOx e filo 3,3V, dove x=5 -6