IAMMETER adiciona suporte a SunSpec Modbus/TCP: mapeamento de modelos e guia de integração
O firmware IAMMETER i.91.065.18 adiciona um mapa somente leitura de modelos inteiros de medidor SunSpec ao serviço Modbus/TCP já existente. Ele oferece aos softwares que entendem os modelos SunSpec uma forma padronizada de descobrir um medidor IAMMETER e ler valores elétricos selecionados pela rede local.
Esta é uma adição de interface, não um sistema de medição substituto. O medidor continua a coletar dados da mesma forma. Os registradores Modbus, a API HTTP, as cargas MQTT e as configurações NEM já existentes do IAMMETER permanecem inalterados.
O SunSpec define modelos padrão de informações de dispositivo que podem ser mapeados em registradores holding do Modbus. Seu mapa começa com um marcador SunS, seguido pelos modelos Common e específicos do dispositivo, que um cliente pode descobrir lendo o ID e o comprimento de cada modelo em sequência. O pacote de especificação SunSpec Modbus documenta o padrão de descoberta de modelos, incluindo as localizações do mapa Modbus com base 0 e as regras de valores não implementados. O SunSpec Modbus é usado em integrações de energia distribuída, incluindo medidores, inversores e equipamentos de armazenamento.
A IAMMETER implementa um subconjunto focado e somente leitura para dados de medição. Este firmware não foi submetido à certificação SunSpec. Não trate este recurso como certificação, conformidade total com o SunSpec ou garantia de que todo cliente SunSpec de terceiros funcionará sem configuração.
Modelos IAMMETER compatíveis e mapeamentos de medidor
| Medidor IAMMETER | Modelo inteiro de medidor SunSpec | Interpretação elétrica |
|---|---|---|
| WEM3080 | 201 | Monofásico |
| WEM2067 | 202 | Bifásico (split phase) |
| WEM3050T | 203 | Trifásico em estrela |
| WEM3080T | 203 | Trifásico em estrela |
| WEM3046T | 203 | Trifásico em estrela |
| WEM3063T | 203 | Trifásico em estrela |
Para o WEM2067, o Modelo 202 representa uma instalação bifásica (split phase) real. Ele não descreve dois circuitos monofásicos sem relação como se fossem o mesmo arranjo elétrico.
O código do Modelo 204 tem cobertura de testes no host, mas o firmware ainda não o detecta e seleciona automaticamente para o WEM3080TD. Por isso, este artigo não afirma a disponibilidade do Modelo 204. O WEM3046TE também ainda não recebeu verificação dedicada de identificação de modelo. A primeira versão fornece apenas modelos inteiros: os modelos de ponto flutuante 211 a 214 não estão disponíveis.
O que um cliente pode ler
Os modelos inteiros de medidor expõem tensão de fase, corrente de fase, potência ativa de fase, potência ativa total, frequência, fator de potência de fase e acumuladores de energia ativa de importação/exportação por fase e totais. O Modelo Common fornece dados de identificação do dispositivo, como modelo, versão de firmware e número de série.
A energia é representada em Wh no mapa SunSpec; o fator de potência é representado como porcentagem. Os pontos de energia total reutilizam os campos totais existentes do medidor e a semântica NEM. A IAMMETER não recalcula um total trifásico somando os acumuladores de fase neste mapeamento. Como a configuração NEM afeta o significado desses acumuladores, um cliente não deve presumir que a energia total seja sempre igual à soma das energias de fase.
Alguns campos estão intencionalmente ausentes nesta primeira versão: potência reativa e energia reativa, potência aparente e energia aparente, fator de potência total multifásico e sinalizadores de eventos. Suas localizações padrão permanecem no modelo e retornam o marcador de indisponibilidade apropriado. Um cliente SunSpec deve reconhecer valores indisponíveis em vez de interpretá-los como medições.
A interpretação da tensão importa
Os valores de fase vêm do medidor. Alguns pontos de tensão de linha são derivados para o mapeamento do modelo:
- A tensão de linha do Modelo 202 é
UA + UB. - A tensão de linha do Modelo 203 é uma aproximação da tensão de fase multiplicada por
√3; não é uma medição direta entre fases. Um sistema desequilibrado ou um desvio de ângulo de fase pode gerar erro.
Essa distinção é importante para aplicações que precisam de uma tensão entre fases medida diretamente. Verifique a definição do ponto do modelo e o arranjo da conexão antes de usar um valor derivado para decisões de controle ou de conformidade.
Conectar com Modbus/TCP
Ative o serviço Modbus/TCP já existente do medidor e conecte-se ao seu endereço na LAN:
| Item | Configuração |
|---|---|
| Host | Endereço IP do medidor na LAN |
| Porta TCP | 502 |
| Função de leitura | 03 — Read Holding Registers |
| Endereço inicial SunSpec | 40000 |
| Acesso de escrita | Não suportado pelo mapa SunSpec do IAMMETER |
Os endereços deste guia são endereços de requisição Modbus com base 0. Alguns aplicativos exibem números de registro com base 1, portanto verifique a convenção deles antes de configurar uma leitura; um endereço deslocado em uma unidade não retornará o marcador esperado.
Use a seguinte sequência de descoberta:
- Leia dois registradores no endereço
40000. As palavras esperadas são0x5375e0x6E53, o marcador ASCIISunS. - Leia o Modelo Common 1 começando em
40002. - Leia o modelo do medidor começando em
40070. Ler 107 registradores obtém seu ID de modelo, comprimento e região de dados completa. - Leia o marcador de fim em
40177.
Uma requisição Modbus não pode ler mais de 125 registradores, então leia os modelos Common e do medidor separadamente. Os clientes devem descobrir os IDs e comprimentos dos modelos em vez de fixar no código uma suposição sobre toda sequência futura de modelos.
Valores inteiros e fatores de escala
Os pontos inteiros SunSpec usam fatores de escala. Converta um inteiro bruto com:
valor real = inteiro do registrador × 10^fator de escala
Por exemplo:
W = 12345
W_SF = 1
potência ativa real = 123450 W
Os fatores de escala podem mudar conforme a faixa. Leia um modelo de medidor completo a cada ciclo de polling para que um valor e seu fator de escala venham da mesma resposta. Não faça cache dos fatores de escala indefinidamente.
Validação e limites atuais
Os testes no host cobrem o layout do modelo, conversão, overflow, comportamento somente leitura e verificações de regressão dos registradores existentes. Um medidor de teste WEM3080T confirmou a descoberta do Modelo 203 e leituras contínuas, com tensão e potência verificadas em relação às interfaces HTTP e Modbus existentes.
Outros modelos de medidor e clientes de terceiros individuais ainda precisam de mais testes físicos. O firmware i.91.065.18 foi compilado, enviado e baixado novamente para verificação de arquivo; o arquivo desta versão em si não foi gravado no medidor durante este ciclo de validação.
O firmware não inclui a melhoria pendente de enquadramento TCP. No momento, ele espera uma requisição completa em uma operação de recebimento. Requisições TCP divididas ou combinadas podem encerrar a conexão. Envie uma requisição e aguarde a resposta antes da próxima, reconhecendo que isso não elimina todos os riscos de segmentação TCP.
Onde isso se encaixa em uma instalação IAMMETER
Use o mapa SunSpec quando um cliente local for construído para descobrir e ler modelos de medidor SunSpec. Use o mapa de registradores Modbus/TCP do IAMMETER já existente quando uma aplicação precisar de registradores específicos do IAMMETER. O caminho Modbus local existente continua útil para a integração do medidor de energia com o Home Assistant, enquanto HTTP, MQTT e IAMMETER Cloud continuam sendo opções independentes.
Baixe o firmware: i.91.065.18.bin.
Antes de atualizar, revise o modelo do seu medidor, o método de conexão e o acesso à rede local. Esta é uma interface de dados somente leitura; ela não oferece controle de inversor, operações de escrita nem uma alegação de interoperabilidade total com SunSpec de terceiros.