Documentazione

lettura e controllo del Charging Manager cFos tramite Modbus

Oltre a HTTP e MQTT, il cFos Charging Manager fornisce anche un'API Modbus. Questa è modellata su SunSpec. È possibile specificare un parametro di porta TCP o COM e un ID Modbus in "Impostazioni indirizzo SunSpec" nella configurazione del Charging Manager. Ciò fa sì che il Charging Manager di cFos ascolti la porta TCP o la porta COM secondo i parametri specificati e l'ID Modbus e l'ID Modbus + 1. I valori, i parametri, i flag e le variabili generali del Charging Manager sono disponibili sotto l'ID Modbus. I dispositivi impostati nel Charging Manager (wallbox e contatori) possono essere interrogati in base all'ID + 1. Come funzioni Modbus si possono usare 3 e 4 per la lettura e 6 e 16 per la scrittura. Attenzione: su Raspberry, le porte TCP inferiori a 1024 sono riservate ai programmi con diritti di amministrazione. È quindi preferibile selezionare un numero di porta superiore, ad esempio 1502.

Le specifiche SunSpec Modbus stabiliscono che l'intervallo di indirizzi Modbus inizia con l'identificativo "SunS" e contiene i cosiddetti modelli SunSpec. Ogni modello ha un numero di identificazione del modello all'offset 0 e una specifica della lunghezza dei restanti registri appartenenti al modello all'offset 1. I valori del modello seguono poi dall'offset 2. Importante: si consiglia di scansionare l'intervallo di indirizzi SunSpec e di stimare sempre la lunghezza all'offset 1. Non si devono ipotizzare lunghezze fisse o registri fissi. Non date per scontate lunghezze fisse o indirizzi di registro fissi, perché è molto probabile che nel tempo vengano aggiunti altri valori ai modelli. Il modello 1 (comune) viene sempre presentato per primo, con i dettagli del produttore, i numeri di versione, ecc. Per informazioni dettagliate, scaricare le specifiche SunSpec Modbus dalla SunSpec Alliance. L'intervallo di indirizzi SunSpec per il cFos Charging Manager inizia con l'indirizzo 40000.

Il cFos Charging Manager visualizza inizialmente i seguenti valori come Modello 213 (contatore trifase, galleggiante) sotto l'ID Modbus dopo il modello Common:
Consumo di rete
Consumatori totali
Generatori totali
Eccedenza FV
Potenza wallbox utilizzata
Potenza wallbox disponibile
Potenza di guasto

Segue il modello "personalizzato" 60000 con i parametri di impostazione del cFos Charging Manager: attualmente seguono 8 valori float dopo il modello e la lunghezza: Corrente totale massima, riserva, sovraccarico, corrente wallbox totale massima in mA per fase, squilibrio di fase massimo (in mA), gestione del carico attiva (1 = attiva, 0 = inattiva), squilibrio incl. consumatori (1 = attiva, 0 = inattiva), gestione del carico attiva (1 = attiva, 0 = inattiva), gestione del carico inattiva (1 = attiva, 0 = inattiva), squilibrio del carico incl. consumatori (1 = attiva, 0 = inattiva). Carico (1 = attivo, 0 = inattivo), corrente totale massima in percentuale. Questi sono i parametri globali del Charging Manager che possono essere impostati anche nell'interfaccia utente. Le modifiche a questi valori vengono salvate (con un ritardo massimo di 150 secondi). La corrente totale in percentuale può essere utilizzata, ad esempio, per regolare dinamicamente la potenza di ricarica su richiesta del gestore di rete.

Segue il modello 60001 "personalizzato". 32 registri (16 bit) seguono il modello e la lunghezza. Questi possono contenere i valori 0 e 1 e leggere o scrivere fino a 32 flag del Charging Manager. Lo stato di questi flag può essere interrogato nelle formule da CM._flag1 a CM._flag32 e utilizzato per i calcoli.

Segue il modello "personalizzato" 60002, seguito dalle possibili variabili del Charging Manager dopo il modello e la lunghezza. Per ogni variabile sono disponibili 22 registri. I primi 20 registri sono una stringa Modbus per il nome della variabile (i nomi troppo lunghi vengono troncati). I 2 registri successivi contengono il valore float corrente della variabile. Se si scrive il valore float di una variabile del Gestore della carica, si cancella qualsiasi formula esistente e si imposta la variabile su un valore fisso.

Sotto Modbus ID + 1, i contatori e i wallbox impostati nel Charging Manager sono visualizzati come segue. I wallbox scambiano come SunSpec modello 113 esteso da 2 registri a 16 bit. L'offset 62 contiene lo stato del wallbox (1=attesa, 2=collegato, 3=carica, 4=carica con ventilazione, 5=errore) e l'offset 63 contiene l'ID del dispositivo. 1 = E1, 2 = E2, ecc. I contatori sono visualizzati con il modello 213 esteso da 2 registri a 16 bit. L'offset 126 contiene il ruolo del contatore (0=visualizzazione, 1=consumo, 2=generazione, 3=consumo della rete, 4=consumo dell'auto elettrica, 5=immagazzinamento casa, 6=immagazzinamento tutto), l'offset 127 contiene l'ID del dispositivo (-1 per M1, -2 per M2, ecc.). Se il contatore è un dispositivo di memorizzazione (ruolo 5 o 6), il modello 213 è seguito dal modello 124, che è esteso da un registro a 16 bit. L'offset 26 contiene nuovamente l'ID del dispositivo. Per visualizzare i dispositivi con ID Modbus + 1, è necessario attivare "Pubblica informazioni sul dispositivo tramite Modbus" nelle impostazioni del dispositivo.

Aufstellung Start-Addressen der Modelle:
Modbus ID:
Model: 1, Addr: 40002
Model: 213, Addr: 40070, Netzbezugszähler
Model: 213, Addr: 40196, Summe Verbraucher
Model: 213, Addr: 40322, Sume Erzeuger
Model: 213, Addr: 40448, PV Überschuss
Model: 213, Addr: 40574, Genutzte Wallboxleistung
Model: 213, Addr: 40700, Verfügbare Wallboxleistung
Model: 213, Addr: 40826, Fehler-Leistung
Model: 60000, Addr: 40952
Model: 60001, Addr: 40970
Model: 60002, Addr: 41004
Die konkreten Start-Addressen können bei späteren Versionen des cFos Charging Managers variieren, daher sollte der Register-Bereich, wie oben beschrieben, gescannt werden.
Modbus ID + 1:
Modelle und Startadressen hängen von den eingeblendeten Geräten ab.

Elenco dei valori per il modello 213:
Offset 0: 213
Offset 1: Lunghezza
Offset 2: Correnti totali L1-L3 (A)
Offset 4: Corrente L1 (A)
Offset 6: Corrente L2 (A)
Offset 8: Corrente L3 (A)
Offset 10: Tensione (V)
Offset 12: Tensione L1 (V) Offset 14: Tensione L2 (V) Offset 16: Tensione L3 (V) Offset 26: 50 Hz Offset 28: Potenza (W) Offset 28: Potenza (W) Offset 28: Potenza (W) Tensione L1 (V)
Offset 14: Tensione L2 (V)
Offset 16: Tensione L3 (V)
Offset 26: 50 Hz
Offset 28: Potenza (W)
Offset 30: Potenza L1 (W)
Offset 32: Potenza L2 (W)
Offset 34: Potenza L3 (W)
Offset 36: Potenza apparente (VA) Offset 36: Potenza apparente (VA)
Offset 38: Potenza apparente L1 (VA)
Offset 40: Potenza apparente L2 (VA)
Offset 42: Potenza apparente L3 (VA)
Offset 44: Potenza reattiva (VAr)
Offset 60: Esportazione, potenza attiva (Wh)
Offset 68: Importazione, potenza attiva (Wh) : Importazione, potenza attiva (Wh)
Offset 126: Ruolo (per Modbus ID + 1)
Offset 127: ID dispositivo (per Modbus ID + 1)

Elenco dei valori per il modello 113:
Offset 0: 113
Offset 1: Lunghezza
Offset 2: Correnti totali L1-L3 (A)
Offset 4. Corrente L1 (A) Offset 4: Corrente L1 (A)
Offset 6: Corrente L2 (A)
Offset 8: Corrente L3 (A)
Offset 16: Tensione L1 (V)
Offset 18: Tensione L2 (V)
Offset 20: Tensione L3 (V)
Offset 22: Potenza (W)
Offset 24: 50 Hz
Offset 26: Potenza apparente (VA) Offset 25: Potenza apparente (VA) Offset 25: Potenza apparente (VA) Offset 26: Potenza apparente (VA)
Offset 32: Importazione, potenza attiva (Wh)
Offset 62: Stato (per Modbus ID + 1)
Offset 63: ID del dispositivo (per Modbus ID + 1)

Elenco dei valori per il modello 124:
Offset 0: 124
Offset 1: Lunghezza
Offset 2: Potenza massima di carica/scarica (W)
Offset 3: Percentuale del limite di potenza di carica attuale
Offset 4: Percentuale del limite di potenza di scarica attuale
Offset 8: Stato di carica in percentuale
Offset 18: Fattore di scala per l'offset 2
Offset 19: Fattore di scala per l'offset 3 e l'offset 19: Fattore di scala per gli offset 3 e 4
Offset 26: ID dispositivo (per Modbus ID + 1)

Elenco dei valori per il modello 60000:
Tutti i valori in float, accesso in lettura/scrittura, causano l'aggiornamento della flash, cioè non cambiare spesso per evitare danni.cioè non cambiare spesso per evitare danni.
Offset 0: 60000 (unt16, sola lettura)
Offset 1: Lunghezza (uint16, sola lettura)
Offset 2: Corrente totale max. Corrente totale (mA)
Offset 4: Riserva di energia (mA)
Offset 6: Sovraccarico (mA)
Offset 8: Corrente totale massima Wallbox (mA)
Offset 10: Squilibrio di fase max. Squilibrio di fase (mA)
Offset 12: 1 = Gestione del carico attiva, 0 = inattiva
Offset 14: 1 = Aggiunta del consumo domestico allo squilibrio, 0 = inattiva
Offset 16: Percentuale della corrente totale massima, non viene salvato, può essere modificato frequentemente.

Elenco dei valori per il modello 60001:
Tutti i valori 0 o 1, int16, accesso in lettura/scrittura, non vengono salvati, possono essere modificati frequentemente.
Offset 0: 60001 (uint16, sola lettura)
Offset 1: Lunghezza (uint16, sola lettura)
Offset 2: CM._flag1
...
Offset 33: CM._flag32

Elenco dei valori per il modello 60002:
Tutti i valori float, accesso in lettura/scrittura, non vengono salvati, possono essere modificati frequentemente. Offset 0: 60002 (uint16, sola lettura)
Offset 1: Lunghezza (uint16, sola lettura)
Offset 2..22: Nome Variabile del gestore della carica 1
Offset 23..24: Valore Variabile del gestore della carica 1
Offset 25..45: Nome Variabile del gestore della carica 2
Offset 46..47: Valore Variabile del gestore della carica 2
...