introduzione
I DomBus sono moduli progettati per impianti industriali e domotici disponibili con 2 diversi protocolli:
- Il protocollo DomBus , supportato dal controller domotico Domoticz , è un protocollo affidabile che consente di gestire dozzine di moduli e ottenere lo stato dai moduli non appena cambiano. Include anche i cosiddetti comandi DCMD che, analogamente al KNX, vengono trasmessi tra i moduli DomBus nello stesso bus per attivare le uscite in caso di eventi (interruttore o pulsante premuto, valore di temperatura, valore di potenza, ....) senza bisogno per l'intervento o la centralina domotica, soluzione utile per ottenere un impianto domotico che funzioni anche in caso di guasto alla centralina domotica . Il plug-in Creasol DomBus deve essere installato in Domoticz, utilizzando il Python Plugin Manager o scaricando il software da GitHub (vedere la sezione seguente).
- Il protocollo Modbus RTU , ampiamente utilizzato nei sistemi di automazione industriale e domotica, è supportato da quasi tutti i controller domotici come Home Assistant , OpenHAB , IObroker , Node-RED , ...
Modbus è un protocollo master-slave che permette di attivare e disattivare un singolo relè, tutti i relè o un gruppo di relè con un unico comando. Inoltre, è possibile specificare, per ogni relè, il tempo di ON da 31.5ms a 1500 giorni, in modo che il relè si spenga automaticamente dopo il tempo selezionato.
La versione Modbus RTU può essere utilizzata dal sistema Node-RED per realizzare flussi tra cui uscite relè, ingressi digitali e analogici, sensori di temperatura, umidità, energia, stazione di ricarica per veicoli elettrici e altro ancora.
Configurazione
Innanzitutto, la palette modbus dovrebbe essere abilitata: se non è già abilitata, digitare il comando
npm install node-red-contrib-modbus
quindi riavvia Node-RED.
Il flusso precedente mostra come utilizzare il modulo a 8 relè DomBus31 con Node-RED: trascinare Modbus-Write nel flusso e configurarlo come mostrato nell'immagine.
Per avere informazioni complete sui moduli DomBus, consultare https://www.creasol.it/domotics
Di seguito alcune informazioni sul modulo 8 relè DomBus31
Funzionalità Modbus RTU del modulo DomBus31
Le seguenti specifiche si riferiscono alla versione Modbus: DomBus31 è disponibile con 2 firmware, protocollo DomBus e protocollo Modbus, quindi in questo caso va scelto quest'ultimo firmware.
Indirizzo slave predefinito: 49 (0x31)
ind | Nome | Valori | Descrizione |
0 | RL1 | 0=OFF, 65280=ON, 1-65279=ON per il tempo specificato | Uscita relè SPST, contatto NO, capacità di uscita 5A 250Vac o 30Vdc. Il contatto del relè è protetto da varistore |
1 | RL2 | 0=OFF, 65280=ON, 1-65279=ON per il tempo specificato | Uscita relè SPST, contatto NO, capacità di uscita 5A 250Vac o 30Vdc. Il contatto del relè è protetto da varistore |
2 | RL3 | 0=OFF, 65280=ON, 1-65279=ON per il tempo specificato | Uscita relè SPST, contatto NO, capacità di uscita 5A 250Vac o 30Vdc. Il contatto del relè è protetto da varistore |
3 | RL4 | 0=OFF, 65280=ON, 1-65279=ON per il tempo specificato | Uscita relè SPST, contatto NO, capacità di uscita 5A 250Vac o 30Vdc. Il contatto del relè è protetto da varistore |
4 | RL5 | 0=OFF, 65280=ON, 1-65279=ON per il tempo specificato | Uscita relè SPST, contatto NO, capacità di uscita 5A 250Vac o 30Vdc. Il contatto del relè è protetto da varistore |
5 | RL6 | 0=OFF, 65280=ON, 1-65279=ON per il tempo specificato | Uscita relè SPST, contatto NO, capacità di uscita 5A 250Vac o 30Vdc. Il contatto del relè è protetto da varistore |
6 | RL7 | 0=OFF, 65280=ON, 1-65279=ON per il tempo specificato | Uscita relè SPDT, contatti NO + NC, capacità di uscita 10A 250Vac o 250Vdc. Il contatto del relè è protetto da varistore |
7 | RL8 | 0=OFF, 65280=ON, 1-65279=ON per il tempo specificato | Uscita relè SPDT, contatti NO + NC, capacità di uscita 10A 250Vac o 250Vdc. Il contatto del relè è protetto da varistore |
255 | Tutti i relè | 0=OFF, 65280=ON, 1-65279=ON per il tempo specificato | Questo indirizzo è utilizzato per accendere o spegnere tutti i relè con un unico breve comando |
8192 | Indirizzo secondario | 1-250 | Permette di modificare l'indirizzo slave del modulo, quindi è possibile aggiungere nuovi moduli DomBusXX 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 il numero di revisione. Ad esempio "02" significa che la revisione è "02XX" dove XX è definito dal parametro 8199 |
8199 | Revisione, minore | Sola lettura | Ottieni numero di revisione, 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 1=31.25ms, 1920=60s => valore=tempo_in_millisecondi/32
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 |
49 | 06 | 8192 | 1 | [31][06][20][00][00][01][46][3A] | Modificare l'indirizzo dello slave da 49 (0x31) 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. Si prega di notare che nessuna risposta verrà inviata a questo comando. |
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 |
Altri moduli DomBus funzionanti con Node-RED
Produciamo diversi moduli con protocollo Modbus, lavorando con NodeRED:
- DomBusTH : piccola scheda inseribile in un coperchio cieco, con sensori di temperatura + umidità, led RGW, sensore touch (simulante un interruttore a pulsante), 6 I/O configurabili
- DomBus12 : piccolo modulo con 9 I/O configurabili (ingressi analogici/digitali, contatori, sonde di temperatura NTC, uscite open-drain da collegare al modulo relè esterno DomRelay2 , uscite tapparelle, cicalino, lampeggiatore, ....)
- DomBus23 : modulo con 2 relè, uscita mosfet (dimmer led), ingresso 230V AC, 2 ingressi optoisolati, 2 I/O, 2 uscite analogiche 0-10V, ...
- DomBus31 : Modulo 8 relè
- DomBus32 : 3 relè + 3 ingressi 230Vac + 5 moduli I/O
- DomBus33 : Modulo 3 luci (utilizzabile per domotizzare un impianto luci esistente tramite relè passo-passo)
- DomBus36 : Modulo 12 relè
- DomBus37 : Modulo 12 I/O + 3 ingressi AC + 3 uscite relè predisposto per impianti antintrusione
- DomBusEVSE : modulo EVSE che può essere utilizzato per costruire una smart wallbox per la ricarica di veicoli elettrici
Modulo acquistabile su https://store.creasol.it/domotics