Modbus SMA

Discussioni relative agli inverter SMA con bluetooth (SBFspot protocol http://sbfspot.codeplex.com/ )
AlbertG
Messaggi: 7
Iscritto il: 16/04/2020, 15:21

Modbus SMA

Messaggioda AlbertG » 20/04/2020, 11:46

Buongiorno a tutti,
premetto che è la prima volta che partecipo ad un forum, e mi scuso se ho sbagliato a postare qui il mio intervento.
Innanzitutto grazie a Flane per il grandissimo lavoro che ha iniziato e sta portando avanti, senza la WIKI 123solar&MeterN avrei avuto grosse difficoltà, non esiste guida migliore per installare i due!
Inoltre il forum è veramente utile e ricco di informazioni, complimenti a tutti!

Veniamo a noi, grazie allo stop forzato Covid ho dedicato un po' di + tempo al progetto monitoraggio elettrico di casa.

Uso 123Solar (v 1.8.4.1) e meterN (v 1.2.3) su Raspberry pi 3B+ con Buster che uso essenzialmente per connettermi a internet dalla TV.
Ho un SMA Sunny Boy 3.0 AV-40, monitoro la prod con SBFspot, per i consumi uso un SDM120-MODBUS con annessi e connessi (poolerconsumi, sdm120c…).
Ho creato un meter che mi calcola il margine di P[W] immessa e se ho margine comando uno Shelly per accendere il clima (raffrescamento/riscaldamento) pilotando il tasto on/off di un telecomando del Daikin.

Il sistema lavora bene, a parte il monitoraggio della produzione con 123soalr.
SBFspot casualmente e spesso mi da problemi di login all'inverter (non mi sembra di esser il solo) e crea dei buchi di lettura piuttosto fastidiosi, picchi in metern, e perdita di comando del clima.
Ero ormai intenzionato ad acquistare un secondo SDM; poi ho deciso di dedicare dei pomeriggi ha implementare un protocollo per 123solar che sfruttasse il più affidabile, o almeno spero, modbus del SunnyBoy; inoltre usando la wifi evito di cablare un sdm, e risparmio anche i soldi del misuratore ;)

Dopo un po’ di lavoro gli scripts riescono a passare i dati letti dal modbus TCP del SunnyBoy a 123solar, manca del lavoro di fino: sono configurati per il mio setup, (mio ip, mie directory,...) non gestisco opzioni, errori, ma da una settimana il sistema sta in piedi e funziona anche in caso di spegnimenti improvvisi…
(dal inizio lockdown ho la rete che va spesso e volentieri oltre la soglia dei 253V e l’inverte si stacca, ma questa è ‘un’altra storia!!)

In sostanza in /var/www/123solar/scripts/protocols ho creato degli scripts SunnyMB (e relativi *_startup, *_checks) che lanciano uno script in python (pymodbus) leggo i registri del SunnyBoy li formatto in un array utile a 123solar.
Premetto che non sono bravissimo a programmare, e sono arrivato al risultato usando gli strumenti che conoscevo, magari il tutto può esser ottimizzato, ma visto che ho imparato molto da questo forum anche da semplici idee postate, mi fa piacere condividere il mio passo incerto.

Se siete interessati vi posto i file.
Ciao
AG


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

Re: Modbus SMA

Messaggioda Flane » 21/04/2020, 18:46

Ottimo lavoro.

Se possibile condividi i tuoi scripts in modo che se ci sarà qualcuno a cui servono ed in grado magari anche di migliorarli li può trovare.
Grazie

AlbertG
Messaggi: 7
Iscritto il: 16/04/2020, 15:21

Re: Modbus SMA

Messaggioda AlbertG » 22/04/2020, 9:24

Ciao,

vi allego i 4 files che permettono di prelevare via modbus TCP dal SunnyBoy i valori per 123solar.

1. modbus_call.py: va salvato nella cartella comapps e fatto il solito link in /usr/local/bin e dati i diritti corretti; gli argomenti da passargli sono solo il registro che si vuole leggere o l'opzione 123solar se si vuole generare un output per 123Solar. Per comodità mia IP, porta e device ID dello slave, non sono argomenti ma si devono modificare editando il file. Nei commenti i punti critici.

2. SunnyMB.php, SunnyMB_startup.php, SunnyMB_checks.php: i tre files vanno salvati in /var/www/123solar/scripts/protocols dati i diritti giusti e poi in 123Solar scegliere in "Inverter configuration" il protocollo SunnyMB e dovrebbe funzionare (spero) :)
_Startup non fa nulla...devo ancora passare in rassegna i registri che potrebbero tornare utili
_Checks ho caricato solo ciò che mi interessava
SunnyMB per chi usa SBFspot ora la P istantanea è corretta e così il rendimento ( che almeno a me delle volte risultava >1), si possono leggere le temperature dell'inverter e dissipatore.

Usando lo stesso script modbus_call.py in Metern si possono creare i sensori che si vogliono: cos fi, eta, temp...

Ciao
AG

PS: Per abilitare il server modbus tcp sul sunny boy bisogna loggarsi come installatore.Buona regola leggere e NON SCRIVERE!
Allegati
SunnyMB_r1.zip
(3.02 KiB) Scaricato 151 volte
Ultima modifica di AlbertG il 22/04/2020, 14:56, modificato 1 volta in totale.

AlbertG
Messaggi: 7
Iscritto il: 16/04/2020, 15:21

Re: Modbus SMA

Messaggioda AlbertG » 22/04/2020, 13:40

Dimenticavo...raggiunto il valore di 65536=2^16 il registro 30529 (Wh) riparte da zero...sto lavorando per usare il registro 30531(kWh) per tener conto delle migliaia e il registro 30529 (Wh) per le centinaia decine e unità.
Appena ho qualcosa posto l'aggiornamento.
Ciao
AG

AlbertG
Messaggi: 7
Iscritto il: 16/04/2020, 15:21

Re: Modbus SMA

Messaggioda AlbertG » 22/04/2020, 14:54

Ho aggiornato i file nel post iniziale SunnyMB_r1.zip
Sistemato i Wh totali che si azzeravano...scusate ma me ne sono accorto solo ora che ho superato i 65.536Wh..
Ciao
AG

rinoronie
Messaggi: 184
Iscritto il: 08/03/2018, 0:27

Re: Modbus SMA

Messaggioda rinoronie » 30/04/2020, 0:41

Io ho un Sunny Boy 6000TL-21 con scheda SMA Webconnect, è connesso in rete carica i dati sul portale SMA
Posso anche io leggere i dati tramite rete? attualmente sto usando il bluetooth con SBFspot
ho provato un telnet sulla porta 502, ma non risponde...

AlbertG
Messaggi: 7
Iscritto il: 16/04/2020, 15:21

Re: Modbus SMA

Messaggioda AlbertG » 30/04/2020, 9:31

Ciao, non conosco tutti i modelli di SMA, ma:

1. Da questo link: https://www.sma-sunny.com/it/suggerimento-per-lassistenza-quali-inverter-sma-supportano-modbus-2/
puoi verificare quali inverter supportano la comunicazione modbus, (mi pare che il 6000TL-21 non sia citato).

2. Qui: https://www.sma-italia.com/prodotti/sistemi-di-monitoraggio/modbus-protocol-interface.html
nel menu "download" in "lingua internazionale" nella sezione "conoscenza di base" trovi le liste dei registri che possono variare da modello a modello, (in caso aggiorna il file modbus_call.py).

3. Mentre qui: https://www.sma-sunny.com/en/how-to-test-the-connection-to-your-sma-inverter/
i suggerimenti di SMA per testare la comunicazione; il server TCP e la porta prima devono essere abilitati da interfaccia webconnect (di default è disabilitato).

ciao
AG

rinoronie
Messaggi: 184
Iscritto il: 08/03/2018, 0:27

Re: Modbus SMA

Messaggioda rinoronie » 30/04/2020, 9:32

Innanzitutto grazie,
ma come accedo all'interfaccia di webconnect? la mia non ha una pagina web a cui risponde

AlbertG
Messaggi: 7
Iscritto il: 16/04/2020, 15:21

Re: Modbus SMA

Messaggioda AlbertG » 30/04/2020, 9:44

Hai verificato se il 6000TL-21 ha l'opzione modbus?
Al sito n°2, da un veloce check non lo vedo tra i modelli di cui hanno rilasciato la lista degli indirizzi, quindi mi sa che non c'e possibilità di usare il modbus con questo modello.
Ripeto non conosco tutti i modelli SMA, e nemmeno sono un installatore, magari fai una richiesta a SMA nella sezione "Contatta SMA".
Ciao
AG

rinoronie
Messaggi: 184
Iscritto il: 08/03/2018, 0:27

Re: Modbus SMA

Messaggioda rinoronie » 30/04/2020, 10:08

ma avendo la webconnect, non dovrei visualizzare la sua webconsole?


Torna a “Inverter SMA Bluetooth”

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite