Usinas Virtuais
Dica
O Protocolo VPP é baseado no Protocolo Live MQTT. Considere consultar esta página antes. Veja Live MQTT Control.
Dica
A configuração inicial da VPP DEVE ser feita por SmartgridOne. Por favor, contate SmartgridOne antes de prosseguir com os passos seguintes.
Conectando ao Broker MQTT
Antes de continuar, certifique-se de que sua rede e dispositivos estão prontos seguindo o guia MQTT Setup.
Funcionalidade da VPP
A VPP é projetada para receber um ponto de ajuste/estratégia por grupo de dispositivos (ex.: Solar, Armazenamento) e agregar o ponto de ajuste entre os controladores conectados à VPP.
Enquanto o Protocolo Live MQTT enviaria um comando para um único controlador, a VPP permite que o usuário envie um comando para um grupo de controladores.

Adicionando Controladores à VPP




Ao adicionar o Sinal MQTT SmartgridOne, um campo standard1/outbound/remoteVppMetrics/warning/{MQTT Username}/{VPP ID} é exibido. Insira o ID da VPP recebido aqui.


Algoritmo de Agregação
Os pontos de ajuste são agregados com base na capacidade dos dispositivos associados aos controladores individuais.
Tópicos MQTT
Após a configuração inicial ser concluída, um ID da VPP e um Nome de Usuário MQTT (e senha) serão fornecidos.
Tópico de Entrada
Tópico: vpp/{MQTT Username}/{VPP ID}/warning
Tópico (obsoleto): vpp/{MQTT Username}/{VPP ID}
Este tópico é utilizado pelo usuário para enviar um comando agregado à VPP.
VPP em Tempo Real
Corpo:
{
"msg_id": <Incremental message id>(int),
"vpp_id": <VPP ID>(str)
"time": "<Unix Timestamp>(int)",
"fields": {
"<Component Policy>": "<Policy Type>",
"<Component Power Setpoint>": <Setpoint in watts>
}
}As políticas dos componentes e pontos de ajuste podem ser encontrados aqui: MQTT Components and Policies
VPP Programada
Corpo:
{
"msg_id": <Incremental message id>(int),
"vpp_id": <VPP ID>(str)
"time": "<Unix Timestamp>(int)",
"message_type": "<Type of message>(str)",
"fields": {
"<Component Policy>": "<Policy Type>",
"<Component Power Setpoint>": <Setpoint in watts>
}
}As políticas dos componentes e pontos de ajuste podem ser encontrados aqui: MQTT Components and Policies
Tópico de Confirmação
Tópico: standard1/outbound/remoteVppMetrics/warning/{MQTT Username}/{VPP ID}
Tópico (obsoleto): vpp/{MQTT Username}/{VPP ID}/warning
Após o envio de um comando, a VPP responderá com uma confirmação, indicando se o comando foi recebido com sucesso ou não.
Corpo:
{
"payload": {
"fields": {
"responseCode": <Success/Failure Code>(int),
"ack": <Acknowledgement Message>(str)
},
"target": <VPP ID>(str)
},
"message_type": <Type of Message>(str)
}Tópico de Feedback
Tópico: standard1/outbound/remoteVppMetrics/warning/{MQTT Username}/{VPP ID}
Tópico (obsoleto): vpp/{MQTT Username}/{VPP ID}/warning
O Tópico de Feedback contém o retorno informado pelos controladores individuais.
Corpo:
{
"payload": {
"updated_on": <Unix Timestamp of the data>(str)
"feedback_dict": {
<Feedback Dict>(dict)
},
"target": <Site Node ID>(str)
},
"message_type": <Type of Message>(str)
}A estrutura do dicionário de feedback pode ser encontrada aqui: MQTT Feedback Payload Structure
Tópico de Feedback Agregado
Tópico: standard1/outbound/remoteVppMetrics/warning/{MQTT Username}/{VPP ID}
Tópico (obsoleto): vpp/{MQTT Username}/{VPP ID}/warning
A VPP agrega o feedback recebido de cada controlador individual.
Corpo:
{
"payload": {
"updated_on": <Unix Timestamp of the data>(str)
"feedback_dict": {
<Aggregated Feedback Dict>(dict)
},
},
"message_type": <Type of Message>(str)
}O dicionário de feedback agregado tem uma estrutura semelhante ao MQTT Feedback Payload Structure. No entanto, valores do tipo string, como estratégias executadas, não podem ser agregados, e por isso não são incluídos.
Tópico de Comandos Despachados
Tópico: standard1/outbound/remoteVppMetrics/warning/{MQTT Username}/{VPP ID}
Tópico (obsoleto): vpp/{MQTT Username}/{VPP ID}/warning
Quando comandos são enviados aos controladores pela VPP, isso é reportado usando este tópico.
Corpo:
{
"payload": {
"aggregated": {
<Component Name>(str): <CommandPower Value>(float)...
},
"dispatched_commands": [
<List of individual commands sent to the controllers>
],
},
"message_type": <Type of Message>(str)
}A estrutura da carga útil dos comandos individuais enviados pode ser encontrada aqui: MQTT Feedback Payload Structure.
Tópico de Avisos
Tópico: standard1/outbound/remoteVppMetrics/warning/{MQTT Username}/{VPP ID}
Tópico (obsoleto): vpp/{MQTT Username}/{VPP ID}/warning
Se ocorrer um erro ou aviso na VPP, uma mensagem será enviada por este tópico MQTT.
Corpo:
{
"payload": {
"fields": {
<Field Dictionary>(dict)
},
"target": <VPP ID>(str)
},
"message_type": <Type of Message>(str)
}