DZT-6001 power meter

Si tratta di un misuratore di consumi per barra DIN molto compatto (1 modulo) e con interfaccia ModBus.
Peccato che definire scarna la documentazione sia farle un complimento!

Infatti dire "ModBus" lascia più o meno il tempo che trova: se non si sa cosa rappresentano i registri e come è codificata l'informazione, il protocollo non aiuta per nulla! Anche per questo sto cercando di fare in modo che il protocollo per la mia domotica sia il più possibile auto-documentante...

Fortunatamente ho potuto trovare un paio di riferimenti che mi hanno dato una grossa spintarella.

Il primo è stato un PDF (che includo anche tra gli allegati alla pagina... non si sa mai che sparisca...). Con qualche errore, ma abbastanza comprensibile.

Il secondo è stato il modulo per un altro sistema domotico, che copre meglio alcuni registri ma non dice nulla della gestione della password.

Comunque ho anche chiesto informazioni direttamente al produttore... Vedrò se/quando risponde.

Una cosa che mi ha fatto perdere molto tempo (anche se, a posteriori, è quasi ovvia): il modulo include una batteria, ma viene usata esclusivamente per tenere la memoria e permettere la visualizzazione sul display. Se l'ingresso non è collegato alla rete, l'interfaccia ModBus non risponde! Ciao ciao test in sicurezza!
Inoltre i morsetti di ingresso/uscita per la fase hanno solo una vite, non una piastra che prema il capocorda. Quindi è necessario usare un capocorda piuttosto schiacciato. In dotazione ci sono alcuni pezzi che non viene spiegato come usare:

  • due grossi capicorda in rame (forse proprio da mettere sotto le due viti?)
  • tre cilindretti forati forse in alluminio (non mi pare però che possano entrare nel connettore ModBus... forse vanno usati con la "bava da pesca"?)
  • un pezzetto di plastica (per chiudere l'accesso alla vite del filo di neutro)
  • tre pezzetti di "bava da pesca" (per "sigillare" l'accesso alle viti, forse da abbinare ai cilindretti di cui sopra)

Certo che da un prodotto tedesco (anche se economico) mi sarei aspettato documentazione molto migliore...

Edit: aggiungo un programma minimale che usa libmodbus per leggere ed interpretare (tirando ad indovinare, visto che il produttore ancora non ha risposto!) le informazioni fornite dai registri. In particolare l'indicazione della corrente passa da 0 a 1 con una lampadina da 40W, e passa da 1 a 3 aggiungendone un'altra, quindi per un totale di 80W.
A 220V (il DZT ne misura 221) significa una corrente rispettivamente di ~181mA e ~362mA, quindi il valore indica la corrente reale, troncata a un decimale (in entrambe le misure, se fosse stata correttamente arrotondata avrebbe indicato il valore successivo).
Rimane da chiarire come vengono usati i registri totalizzatori, poiché non mi torna molto la formula usata in Constellation.

Per compilare comm.c (dopo aver modificato l'indicazione del device, se necessario) va usato il comando:

gcc `pkg-config --cflags libmodbus` comm.c `pkg-config --libs libmodbus` -o comm

È ovviamente necessario aver installato libmodbus-dev (in Ubuntu).

Comunque direi che il prossimo passo sarà un'integrazione col mio protocollo, magari usando un modulino da inserire all'interno di DomoNode.

0
Il tuo voto: Nessuna
AllegatoDimensione
MODBUS Protocol DZT 6001.pdf51.63 KB
comm.c3.82 KB
Realizzato con Drupal, un sistema open source per la gestione dei contenuti