LETTURA SDM120/220/230/630 MODBUS via wifi con ESP8266 (sonoff)

Discussioni relative all'uso di contatori SDM120 SDM220 modbus
Avatar utente
Flane
Messaggi: 2460
Iscritto il: 16/01/2016, 15:02

Re: LETTURA SDM120/220 MODBUS via wifi con ESP8266 (sonoff)

Messaggioda Flane » 29/03/2017, 13:59

Pacitzu, riesumo questa discussione in quanto io non riesco veramente a comunicare con il contatore via bus. :?

Potresti salvarmi la tua configurazione dell'esp ed inviarmela, in modo da poterla caricare e capire se il problema dipende da qualche mia errata configurazione?
Mi potresti anche dire che versione di socat utilizzi sul rasp?
Grazie ;)


pacitzu
Messaggi: 8
Iscritto il: 24/12/2016, 14:16

Re: LETTURA SDM120/220 MODBUS via wifi con ESP8266 (sonoff)

Messaggioda pacitzu » 29/03/2017, 14:57

Ciao,

sul mio esp8266 nodemcu V2 Amica c'è ESPEasy_R147_RC8. In allegato il file di configurazione da importare.

Per quanto riguarda socat:

Codice: Seleziona tutto

pi@raspberrypi:~ $ socat -V
socat by Gerhard Rieger - see http://www.dest-unreach.org
socat version 1.7.2.4+sigfix on Feb 17 2015 23:16:28
   running on Linux version #930 SMP Wed Nov 23 15:20:41 GMT 2016, release 4.4.3                                                                             4-v7+, machine armv7l
features:
  #define WITH_STDIO 1
  #define WITH_FDNUM 1
  #define WITH_FILE 1
  #define WITH_CREAT 1
  #define WITH_GOPEN 1
  #define WITH_TERMIOS 1
  #define WITH_PIPE 1
  #define WITH_UNIX 1
  #define WITH_ABSTRACT_UNIXSOCKET 1
  #define WITH_IP4 1
  #define WITH_IP6 1
  #define WITH_RAWIP 1
  #define WITH_GENERICSOCKET 1
  #define WITH_INTERFACE 1
  #define WITH_TCP 1
  #define WITH_UDP 1
  #define WITH_SCTP 1
  #define WITH_LISTEN 1
  #define WITH_SOCKS4 1
  #define WITH_SOCKS4A 1
  #define WITH_PROXY 1
  #define WITH_SYSTEM 1
  #define WITH_EXEC 1
  #undef WITH_READLINE
  #define WITH_TUN 1
  #define WITH_PTY 1
  #define WITH_OPENSSL 1
  #undef WITH_FIPS
  #define WITH_LIBWRAP 1
  #define WITH_SYCLS 1
  #define WITH_FILAN 1
  #define WITH_RETRY 1
  #define WITH_MSGLEVEL 0 /*debug*/
Allegati
Config_newdevice_U0_R147.zip
(382 Byte) Scaricato 303 volte

Avatar utente
Flane
Messaggi: 2460
Iscritto il: 16/01/2016, 15:02

Re: LETTURA SDM120/220 MODBUS via wifi con ESP8266 (sonoff)

Messaggioda Flane » 31/03/2017, 13:07

OK abbiamo la stessa versione di ESPEasy_R147_RC8 ed anche la stessa versione di socat.
L'unica differenza è che io uso un Sonoff con il firmware ESPeasy ma non credo che questo possa fare la differenza ed eventualmente la configurazione.

Vedo di provare il tuo file di configurazione e poi ho eventualmente anche una schedina esp8266 nodemcu V3 con cui provare.
Intanto grazie, se riesco stasera faccio qualche prova.

miki8989
Messaggi: 299
Iscritto il: 22/01/2016, 6:39

Re: LETTURA SDM120/220 MODBUS via wifi con ESP8266 (sonoff)

Messaggioda miki8989 » 01/05/2017, 19:31

flavio

hai deflaggato in Tools-Advanced enable serial port
se lo tieni flaggato non puoi utilizzare i GPIO 1 e 3

ciao

modigliani
Messaggi: 5
Iscritto il: 21/09/2017, 16:53

Re: LETTURA SDM120/220/230/630 MODBUS via wifi con ESP8266 (sonoff)

Messaggioda modigliani » 21/09/2017, 17:16

Buongiorno a tutti!
Riesumo questo post perchè sto iniziando ad usare il power-meter in oggetto.
Sto cercando di utilizzarlo tramite la SOLUZIONE 1 del primo post, ma non sono riuscito ancora a leggere nulla dalla porta seriale.
Ho visto che al post numero 7 si fa riferimento all'utilizzo "obbligatorio" del convertitore rs485 con autoflow. Tuttavia, nelle recenti release della libreria di Reaper7, è stato implementato l'utilizzo del pin di controllo del flusso (DE/RE).
Io al momento sto usando un modulo con il MAX485 senza controllo del flusso, collegato ad un Wemos D1 mini con lo sketch simple di reaper7, insieme alla libreria con l'ultimo aggiornamento disponibile. Tuttavia, come detto, leggo per tutti i valori il fatidico "NAN".
Qualcuno, con il mio stesso setup, ha avuto successo?
Devo modificare qualcosa nei delay della libreria per farlo funzionare?


modigliani
Messaggi: 5
Iscritto il: 21/09/2017, 16:53

Re: LETTURA SDM120/220/230/630 MODBUS via wifi con ESP8266 (sonoff)

Messaggioda modigliani » 23/09/2017, 10:53

Si. Prenderò la scheda con autoflow.
Il fatto è che in casa avevo solo quella "classica" con i pin DE/RE e non mi andava di attendere un bel po' per ricevere la scheda con autoflow!
Comunque, ho provato la soluzione 2 da te indicata nel primo post, utilizzando un Arduino Mega, per non incasinarmi con le seriali. Neanche quella mi da letture valide.
A quel punto ho ipotizzato un guasto del SDM120 o della schedina rs485. Ma dopo aver connesso l'Energy meter al PC Windows (con apposito adattatore USB) e verificato letture valide inviando richieste mediante QModMaster, mi convinco sempre più che il max485 in mio possesso sia proprio guasto!

terribiledavide
Messaggi: 73
Iscritto il: 22/02/2017, 20:25

Re: LETTURA SDM120/220/230/630 MODBUS via wifi con ESP8266 (sonoff)

Messaggioda terribiledavide » 02/11/2017, 14:36

Flane ha scritto:SOLUZIONE 1
Ecco un interessantissimo progetto con cui è possibile leggere i contatori modbus della serie EASTRON SDM 120, 220, 230, 630 ....
ESP WITH MODBUS PROTOCOL

La lettura può avvenire quindi da remoto via wifi, utilizzando un ESP8266 come il Wemos D1 mini, oppure perchè no il mitico sonoff modificato con firmware nodemcu e con caricato il software dell'autore dell'articolo scaricabile da github:
SDM_Energy_Meter
hardware_sdm220.jpg

Questo risolverebbe i problemi di cablaggi rendendo il sistema di monitoraggio veramente universale e flessibile ;)

Assolutamente da provare :D

SOLUZIONE 2
La libreria sopra permette la lettura di un singolo contatore con un ESP.
Ho trovato un'altra libreria che utilizza invece un vero protocollo modbus e che quindi con un solo ESP permette la lettura di più contatori:
MODBUS-ENERGY-MONITOR-ARDUINO

Faccio notare che nella cartella "dev version" è anche presente una versione per ESP e che fra l'altro come convertitore RS485-TTL utilizza il più comune MAX485 (con i pin di direzione flusso) invece che il convertitore utilizzato da reaper7 che ha il controllo automatico del flusso (che personalmente preferisco ;) )

Questo è il collegamento previsto dall'autore (l'immagine disponibile purtroppo non è di ottima qualità)
esp8266-sdm120c-Aledav.jpg


Anche questo è sicuramente da provare :D



ciao Flane,
dal momento che i test con Metern su raspberry sono andati a buon fine, fatta eccezione per il controllo temperatura nel pwm che permette al sistema di essere indipendente in tutto e per tutto durante il riscaldamento del boiler.
Ora mi sto avvicinando al sistema di controllo che ho visto in giro e che stai anche tu sviluppando con esp8266.

a giorni dovrebbe arrivarmi " CH340 NodeMcu V3 Lua WIFI" e vorrei implementare la lettura tramite sdm-120, e infine sviluppare il PWM anche per questo progetto, rendendo disponibili i dati di consumi e produzione su una piattaforma web.

Tutto questo perché il sistema Raspberry, nonostante tutto risulta essere un pò fragile nel tempo.
vorrei quindi mettere in piedi questo con esp8266 in modo da blindare tutto a livello di sicurezza e affidabilità.

Secondo te, dal momento che CH340 non è equipaggiato con un display Wemos D1, è possibile provvisoriamente utilizzare un display 16x2 mediante la libreria lcd.h ?

a breve spero di portare buone notizie.
p.s. spero comunque nel vostro supporto perchè le mie competenze non saranno comunque sufficenti a completare il progetto.

Franchelli
Messaggi: 2
Iscritto il: 28/02/2018, 11:44

Re: LETTURA SDM120/220/230/630 MODBUS via wifi con ESP8266 (sonoff)

Messaggioda Franchelli » 28/02/2018, 11:48

Salve,
è ormai molto tempo che cerco di leggere questo tipo di contatori ma senza nessun risultato... ho trovato questo post dove si parla di ciò. Vorrei sapere se qualcuno è riuscito a dialogare ed a ottenere dei valori corretti utilizzando un qualche Arduino ( magari un Mega dati che ha più porte seriali hardware)
Grazie se qualcuno vorrà aiutarmi con qualche indicazione o suggerimento.
Franco

modigliani
Messaggi: 5
Iscritto il: 21/09/2017, 16:53

Re: LETTURA SDM120/220/230/630 MODBUS via wifi con ESP8266 (sonoff)

Messaggioda modigliani » 28/02/2018, 16:48

Si Franchelli, io sono riuscito a leggere l'SDM120 utilizzando un Wemos D1 mini (per la cronaca un ESP8266 su board programmabile con IDE Arduino), una schedina RS485 con Autoflow (esattamente quella proposta da Flane) e la libreria di Reaper7.
Adesso leggo tutti i valori e li mando sullo smartphone tramite l'app Blynk.
Non ho provato con un Arduino Mega, ma suppongo possa funzionare. Nel mio caso la svolta è stata semplicemente nell'utilizzo del suddetto modulo con Autoflow. Con il modulo più comunemente diffuso (MAX 485), non ci sono riuscito.


Torna a “Contatori Modbus”

Chi c’è in linea

Visitano il forum: Nessuno e 3 ospiti