Saltar al contenido principal
Scholt

Controlador MQTT de Scholt

La siguiente integración se puede utilizar para enviar mediciones del sitio a través de MQTT y recibir comandos para los diferentes tipos de dispositivos instalados.

Script de demostración en Python

Este código de prueba realiza un trabajo simple de enviar continuamente mediciones ficticias a una instalación y recibir comandos:

Por favor, descarga el archivo a continuación en tu IDE de Python preferido. Completa tu número de serie, filtro de sitio y credenciales MQTT y ejecuta el script:

Requisitos previos

Controlador en la Nube

Los sitios serán controlados a través de un Controlador en la Nube. Por favor, contacta a Eniris para configurar un nuevo Controlador en la Nube.

Configuración del Sitio

Una vez que se ha creado un Controlador en la Nube, contendrá un número de serie único (<Controller SN>).

Nuevos sitios se pueden generar en el Controlador en la Nube utilizando filtros de sitio únicos <site_filter>.

Estas dos variables deben ser utilizadas en los Temas y el Cuerpo de MQTT.

aviso

El uso de filtros de sitio idénticos resultará en errores.

Selección de Dispositivos

Device TypeCompatible
Inversores Solares
Dispositivos de Almacenamiento
Bombas de Calor
Medidores de Red y Consumo
Cargadores de Vehículos Eléctricos
info

Los dispositivos en un sitio no pueden ser editados después de la creación.

Credenciales MQTT

Eniris proporcionará las credenciales MQTT. El nombre de usuario MQTT debe ser ingresado al generar un nuevo sitio.

info

Las credenciales solo deben proporcionarse una vez. Un conjunto de credenciales MQTT se puede utilizar para controlar todos los sitios.

Enviando mediciones

Para enviar mediciones al SmartgridOne Controller, se puede utilizar el siguiente tema MQTT para la publicación: standard1/outbound/scholt_meas/<site_filter>/<Controller SN>/

Los campos opcionales se mencionan en cursiva.

Los siguientes campos se pueden enviar por tipo de dispositivo:

  • Almacenamiento

    • mean_soc_perc
    • active_power_W
    • today_charged_Wh
    • today_discharged_Wh
    • energy_stored_Wh
  • Solar

    • active_power_W
    • today_energy_Wh
  • Bombas de Calor

    • operation_modes
      • Los modos de operación posibles son apagado, encendido
    • active_power_W
      • Igual a la potencia nominal mientras la bomba de calor esté encendida*
  • Medidores

    • active_power_W
    • today_imported_energy_Wh
    • today_exported_energy_Wh

El mensaje debe estructurarse de la siguiente manera:

{
"time": "<Unix Timestamp>",
"data": {
"state": {
"grid": {
"active_power_W": <Grid Active Power in Watts>,
"today_imported_energy_Wh": <Grid Imported Energy in Watt-hours>,
"today_exported_energy_Wh": <Grid Exported Energy in Watt-hours>,
},
"meter": {
"active_power_W": <Grid Active Power in Watts>,
"today_imported_energy_Wh": <Grid Imported Energy in Watt-hours>,
"today_exported_energy_Wh": <Grid Exported Energy in Watt-hours>,
},
"storage": {
"energy_stored_Wh": <Energy Stored in Watt-hours>,
"mean_soc_perc": <Mean State of Charge Percentage>,
"active_power_W": <Active Power in Watts>,
"today_charged_Wh": <Energy Charged on the Current Today in Watt-hours>,
"today_discharged_Wh": <Energy Discharged on the Current Today in Watt-hours>,
},
"solar": {
"active_power_W": <Solar Active Power in Watts>,
"today_energy_Wh": <Energy Produced Today in Watt-hours>.
},
"heat_pump": {
"active_power_W": <Heat Pump Active Power in Watts>,
"operation_modes": <Heat Pump Operation Mode>
}
},
"response_code": <Response Code>
},
"fields": {},
"requestTime": "<Unix Timestamp>",
"time": "<Unix Timestamp>",
"siteNodeId": "<site_filter"
}

Reconocimiento de Mediciones

Cuando una medición ha sido recibida con éxito, se enviará un reconocimiento en el siguiente tema: standard1/rp_one_s/scholt_ack/<site_filter>/<Controller SN>

Este reconocimiento puede ser utilizado para:

  1. Verificar que el mensaje de medición se recibió con éxito.
  2. Verificar que el mensaje de medición contenía todos los datos necesarios.

Recibiendo comandos

Para recibir comandos del SmartgridOne Controller, suscríbete al siguiente tema MQTT: standard1/outbound/scholt_cmd/<site_filter>/<Controller SN>/

La respuesta se estructura de la siguiente manera:

{
"extraTags": {
"nodeId": "<Controller SN>_site_0"
},
"time": "<Unix Timestamp>",
"fields": {
"solar_policy": "<policy>",
"solar_power_setpoint_w": 5000,
"storage_policy": "<policy>",
"storage_power_setpoint_w": -5000
}
}

La lista de políticas que se pueden recibir se encuentra aquí: Lista de Políticas Potenciales