Documentatión

lectura y control del gestor de carga cFos a través de Modbus

Además de HTTP y MQTT, cFos Charging Manager también proporciona una API Modbus. Esta API sigue el modelo de SunSpec. Puede especificar un puerto TCP o un parámetro de puerto COM y un ID de Modbus en "Configuración de dirección SunSpec" en la configuración del Gestor de carga. Esto hace que el Gestor de Carga cFos escuche el puerto TCP o el puerto COM bajo los parámetros especificados y el Modbus ID y Modbus ID + 1. Los valores generales del Gestor de Carga, parámetros, banderas y variables están disponibles bajo el Modbus ID. Los dispositivos configurados en Charging Manager (wallboxes y contadores) pueden consultarse bajo ID + 1. Como función Modbus puede utilizar 3 y 4 para lectura y 6 y 16 para escritura. Atención: En Raspberry, los puertos TCP por debajo de 1024 están reservados para programas con derechos de administrador. Por lo tanto, es mejor seleccionar un número de puerto superior, por ejemplo 1502.

La especificación SunSpec Modbus establece que el rango de direcciones Modbus comienza con un identificador "SunS" y, a continuación, contiene los denominados modelos SunSpec. Cada modelo tiene un número de identificación de modelo en el offset 0 y una especificación de la longitud del resto de registros pertenecientes al modelo en el offset 1. A continuación, los valores del modelo siguen a partir del offset 2. Importante: Debe explorar el rango de direcciones SunSpec y estimar siempre la longitud en el offset 1. No asuma longitudes fijas ni registros fijos. No asuma longitudes fijas ni direcciones de registro fijas, ya que es muy probable que añadamos más valores a los modelos con el tiempo. El modelo 1 (común) siempre aparece en primer lugar, con detalles del fabricante, números de versión, etc. Descargue las especificaciones SunSpec Modbus de SunSpec Alliance para obtener información detallada. El rango de direcciones SunSpec para el cFos Charging Manager comienza con la dirección 40000.

El cFos Charging Manager muestra inicialmente los siguientes valores como Modelo 213 (contador trifásico, flotante) bajo la ID Modbus después del modelo Común:
Consumo de red
Consumidores totales
Generadores totales
Excedente fotovoltaico
Potencia de wallbox utilizada
Potencia de wallbox disponible
Potencia de fallo

A continuación aparece el modelo "personalizado" 60000 con los parámetros de ajuste del cFos Charging Manager: 8 valores flotantes siguen actualmente tras el modelo y la longitud: Corriente total máxima, reserva, sobretracción, corriente total máxima de wallbox en mA por fase, desequilibrio máximo de fase (en mA), gestión de carga activa (1 = activa, 0 = inactiva), desequilibrio incl. consumidores (1 = activa, 0 = inactiva), gestión de carga activa (1 = activa, 0 = inactiva), gestión de carga inactiva (1 = activa, 0 = inactiva), desequilibrio de carga incl. consumidores (1 = activa, 0 = inactiva). Carga (1 = activo, 0 = inactivo), corriente total máxima en porcentaje. Estos son los parámetros globales del Gestor de carga que también pueden configurarse en la interfaz de usuario. Los cambios en estos valores se guardan (con un retraso máximo de 150 segundos). La corriente total en porcentaje puede utilizarse, por ejemplo, para ajustar dinámicamente la potencia de carga a petición del operador de red.

Le siguen el modelo "personalizado" 60001. 32 registros (16bit) siguen el modelo y la longitud. Estos pueden contener los valores 0 y 1 y leer o escribir hasta 32 banderas del Gestor de Carga. El estado de estas banderas puede consultarse en fórmulas utilizando CM._flag1 a CM._flag32 y utilizarse para cálculos.

A continuación aparece el modelo "personalizado" 60002, seguido de las posibles variables del gestor de carga después del modelo y la longitud. Hay 22 registros disponibles para cada variable. Los primeros 20 registros son una cadena Modbus para el nombre de la variable (los nombres demasiado largos se truncan). Los 2 registros siguientes contienen el valor flotante actual de la variable. Si escribe el valor flotante de una variable del Gestor de carga, borrará cualquier fórmula existente y establecerá la variable en un valor fijo.

En Modbus ID + 1, los contadores y wallboxes configurados en el Gestor de carga se muestran de la siguiente manera. Las Wallbox intercambian como SunSpec modelo 113 ampliado por 2 registros de 16 bits. El offset 62 contiene el estado de la Wallbox (1=en espera, 2=enchufada, 3=cargando, 4=cargando con ventilación, 5=error) y el offset 63 contiene el ID del aparato. 1 = E1, 2 = E2, etc. Los contadores se visualizan con el modelo 213 ampliado con 2 registros de 16 bits. El offset 126 contiene la función del contador (0=visualización, 1=consumo, 2=generación, 3=consumo de red, 4=consumo de coche eléctrico, 5=almacenamiento casa, 6=almacenamiento todos), el offset 127 contiene el ID del dispositivo (-1 para M1, -2 para M2, etc.). Si el contador es un dispositivo de almacenamiento (rol 5 ó 6), el modelo 213 va seguido del modelo 124, que se amplía con un registro de 16 bits. El offset 26 contiene de nuevo el ID del dispositivo. Para mostrar los dispositivos bajo Modbus ID + 1, debe activar "Publicar información del dispositivo a través de Modbus" en la configuración 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.

Lista de valores para el modelo 213:
Offset 0: 213
Offset 1: Longitud
Offset 2: Corrientes totales L1-L3 (A)
Offset 4: Corriente L1 (A)
Offset 6: Corriente L2 (A)
Offset 8: Corriente L3 (A)
Offset 10: Tensión (V)
Offset 12: Tensión L1 (V) Offset 14: Tensión L2 (V) Offset 16: Tensión L3 (V) Offset 26: 50 Hz Offset 28: Potencia (W) Tensión L1 (V)
Offset 14: Tensión L2 (V)
Offset 16: Tensión L3 (V)
Offset 26: 50 Hz
Offset 28: Potencia (W)
Offset 30: Potencia L1 (W)
Offset 32: Potencia L2 (W)
Offset 34: Potencia L3 (W)
Offset 36: Potencia (W) Potencia aparente (VA)
Offset 38: Potencia aparente L1 (VA)
Offset 40: Potencia aparente L2 (VA)
Offset 42: Potencia aparente L3 (VA)
Offset 44: Potencia reactiva (VAr)
Offset 60: Exportación, potencia activa (Wh)
Offset 68: Exportación, potencia activa (Wh) Importación, potencia activa (Wh)
Offset 126: Rol (para Modbus ID + 1)
Offset 127: ID del dispositivo (para Modbus ID + 1)

Lista de valores para el modelo 113:
Offset 0: 113
Offset 1: Longitud
Offset 2: Corrientes totales L1-L3 (A)
Offset 4: Corriente L1 (A) Corriente L1 (A)
Offset 6: Corriente L2 (A)
Offset 8: Corriente L3 (A)
Offset 16: Tensión L1 (V)
Offset 18: Tensión L2 (V)
Offset 20: Tensión L3 (V)
Offset 22: Potencia (W)
Offset 24: 50 Hz
Offset 26: Potencia aparente (VA)
Offset 32: Importación, potencia activa (Wh)
Offset 62: Estado (para Modbus ID + 1)
Offset 63: ID del dispositivo (para Modbus ID + 1)

Lista de valores para el modelo 124:
Offset 0: 124
Offset 1: Longitud
Offset 2: Potencia máxima de carga/descarga (W)
Offset 3: Porcentaje del límite de potencia de carga actual
Offset 4: Porcentaje del límite de potencia de descarga actual
Offset 8: Estado de carga en porcentaje
Offset 18: Factor de escala para el offset 2
Offset 19: Factor de escala para Offset 3 y 4
Offset 26: ID del dispositivo (para Modbus ID + 1)

Lista de valores para el modelo 60000:
Todos los valores en float, acceso de lectura/escritura, provoca la actualización de la flash, es decir, no cambiar a menudo para evitar daños.es decir, no cambiar a menudo para evitar daños.
Offset 0: 60000 (unt16, sólo lectura)
Offset 1: Longitud (uint16, sólo lectura)
Offset 2: Máx. Corriente total (mA)
Offset 4: Reserva de potencia (mA)
Offset 6: Sobrecarga (mA)
Offset 8: Corriente total máx. Wallbox (mA)
Offset 10: Máx. Desequilibrio de fase (mA)
Offset 12: 1 = Gestión de carga activa, 0 = inactivo
Offset 14: 1 = Añadir consumo doméstico al desequilibrio, 0 = inactivo
Offset 16: Porcentaje de la corriente total máx., no se guarda, puede cambiarse con frecuencia.

Lista de valores para el modelo 60001:
Todos los valores 0 ó 1, int16, acceso de lectura/escritura, no se guardan, pueden cambiarse con frecuencia.
Offset 0: 60001 (uint16, sólo lectura)
Offset 1: Longitud (uint16, sólo lectura)
Offset 2: CM._flag1
...
Offset 33: CM._flag32

Lista de valores para el modelo 60002:
Todos los valores son flotantes, acceso de lectura/escritura, no se guardan, pueden cambiarse con frecuencia. Offset 0: 60002 (uint16, sólo lectura)
Offset 1: Longitud (uint16, sólo lectura)
Offset 2..22: Nombre Variable del gestor de carga 1
Offset 23..24: Valor Variable del gestor de carga 1
Offset 25..45: Nombre Variable del gestor de carga 2
Offset 46..47: Valor Variable del gestor de carga 2
...