Como construir um Contador de Energia de 3 Canais

Quando comecei este projeto, à mais de um ano atrás, ainda não havia as opções que há hoje no mercado de contadores de energia para vários equipamentos, como por exemplo o Shelly 3EM. Mesmo assim, penso que este projeto seja uma boa solução para quem estiver disponível para o DIY.

O objetivo deste guia é disponibilizar os passos necessários para contruir um contador de energia de três canais, modular, e para montagem em calha DIN dentro de um quadro elétrico. O espaço ocupado num quadro elétrico é o equivalente a 3 disjuntores monofásicos.

A contagem de energia é feita recorrendo a 3 PZEM004T V3 com TIs de 100A e um Wemos D1 Mini com Tasmota.

Nota:
Este guia destina-se a utilizadores intermédios e avançados, que tenham experiência a mexer em instalações elétricas visto ser necessário fazer alterações ao quadro elétrico onde o equipamento final vai ser instalado.
Também é necessária experiência a utilizar o ferro de soldar, tasmota e impressora 3D.
Qualquer acidente que possa resultar deste guia, é da vossa inteira responsabilidade.

O guia está dividido nos seguintes tópicos:

  1. Material necessário
  2. Caixa 3D
  3. Programar e preparar o PZEM004T V3
  4. Esquema de ligações
  5. Integração com Home Assistant
  6. Montagem
  7. Resultado final

1. Material necessário

Para a realização deste projeto vai ser necessário fios para ligações, manga termo retrátil, ferro de soldar, impressora 3D e o seguinte material:

3 - Módulo medidor de tensão TTL - RS232 - PZEM004T V3 – Link

1 - Wemos D1 Mini – Link

1 - Mini Fonte de alimentação 240VAC → 5VDC 0.6A 3W - Hi-Link HLK-PM01– Link

6 - Bloco de 2 terminais com parafuso (1.0mm²) 2.54mm para PCB– Link

3 - Fusível miniatura rectangular TE5 lento T1.6A - Link

3 - Resistência 10kR 0.25W - Link

1 - Diodo Schottky 30V 15mA - BAT43 - Link

Caso estejam dispostos a esperar pelo material vindo por exemplo do AliExpress, o custo total do módulo ronda os 25€. Acho uma excelente opção tendo em conta o resultado final.

2. Caixa 3D

O desenho da caixa foi feito com o Fusion360. Todas as peças estão desenhadas para toda a montagem da caixa ser feita só por encaixe.

Nas fotos da caixa que estão neste guia a tampa está fixa com dois parafusos, mas a versão final disponível no Thingiverse não necessita de parafusos.

Devido a ser uma caixa que vai ficar dentro de um quadro elétrico sujeito a variações de temperatura, optei por utilizar filamento PLA Tucab FIL3D 3D850 em que é possível fazer um processo térmico de recozimento (annealing) em que a caixa fica com maior resistência a temperatura sem deformar até 144ºC.

Eu não cheguei a fazer este processo por falta de tempo, mas se tiverem oportunidade, façam este processo.

Para fazer download do STL da caixa, visitar o seguinte link no Thingiverse.

3. Programar e preparar o PZEM004T V3

Em 2019 o tasmota adicionou suporte para 3 PZEM no mesmo Modbus. Devido às limitações do Wemos, o tasmota só permite utilizar o máximo de 3 PZEM.

Para utilizar os 3 PZEM a comunicar por TTL Modbus-RTU com o Wemos com tasmota é necessário configurar o endereço ID de cada PZEM individualmente.

Primeiro fazer as configurações gerais do tasmota e configurar o acesso WiFi. De seguida ir a Configuration, Configure Other, e fazer copy/past do seguinte template:

{“NAME”:“Contador de Energia 3C”,“GPIO”:[0,62,0,98,0,0,0,0,0,0,0,0,0],“FLAG”:0,“BASE”:18}

Selecionar Activate e clicar em Save.

De seguida aceder à Consola, fazer copy/paste do seguinte comando. Alterar de acordo com os dados de login ao MQTT vosso MQTT.

Backlog MqttHost IP_DO_MQTT; MqttUser CPHA; MqttPassword CPHA; Topic contador-3c; FriendlyName Contador de Energia 3C; Hostname contador-3c

De seguida configurar o ID de cada PZEM individualmente. Para fazer esta configuração do ID é necessário fazer a ligação de UM PZEM de cada vez ao Wemos de acordo com o seguinte esquema.

Depois de ter as ligações feitas, é necessário ter o PZEM alimentado a 230V para que possa ser configurado o ID corretamente. A alimentação do Wemos neste ponto pode ser feita por exemplo através de um carregador de telemóvel com ficha micro USB.

De seguida ir à Consola e executar o seguinte comando:

ModuleAddress 1

Devem receber uma mensagem como a da imagem seguinte:

moduleaddress

Desligar a alimentação do PZEM e do Wemos e ligar os outros dois PZEM, um de cada vez, e repetir este processo utilizando o comando ModuleAddress 2 e ModuleAddress 3 para cada um dos PZEM.

Finalizando estes passos os 3 PZEM estão programados com o ID 1; ID 2 e ID 3. Identifiquem com um marcador cada um dos PZEM com o número correspondente como se pode ver na imagem mais abaixo.

De seguida é necessário dessoldar e remover as fichas brancas e os bornes de ligação verde dos 3 PZEM para ficar como na foto anterior.

4. Esquema de ligações

Para ter uma proteção nos 230V dos PZEM optei por colocar um mini fusível de 1.6A em cada PZEM.

A alimentação para a fonte Hi-Link sai do PZEM 1, o que faz com que o módulo possa funcionar só com um PZEM, mas tem de ser utilizado o PZEM 1.

Na leitura das tensões optei por não ter o Neutro partilhado. A vantagem é poder ter leitura de tensões em disjuntores que estejam em diferentes interruptores diferenciais no quadro elétrico.

Para utilizar o módulo para ler consumos dos disjuntores que estejam no mesmo interruptor diferencial, no módulo podemos fazer um shunt entre os 3 Neutros e ligar só um fio de Neutro ao barramento de Neutros correspondente. No final tem fotos da minha instalação com os 3 Neutros com shunt.

Quanto às Fases, optei por fazer a ligação na saída do disjuntor que vai ter o TI, desta forma, ao desligar o disjuntor no tasmota deixa de ler valores referentes a esse PZEM. Pode ser útil para uma automação em que quando deixa de ter o valor da Tensão por exemplo no PZEM 2, sabemos que o disjuntor pode ter desligado.

O esquema a seguir para fazer todas as ligações é o seguinte:

5. Integração com Home Assistant

Antes de montar o módulo no quadro elétrico, devem testar a comunicação com o Home Assistant para garantir que tudo está a funcionar corretamente.

Para a comunicação com o Home Assistant utilizei a Integração do tasmota. Por defeito as últimas versões do tasmota já tem o Discovery ativo. Podem confirmar na consola se o Setoption19 está a Off.

De seguida ir à Integração do tasmota no Home Assistant, e devem ter nos Devices o Contador de Energia 3C com todas as entidades dos vários sensores dos 3 PZEM.

Depois de terem os valores lidos pelo contador de energia no Home Assistant podem por exemplo gravar esses dados no InfluxDB e fazer gráficos com o Grafana ou então implementar a excelente ideia do @ricreis394 de fazer a gravação numa Base de Dados leve recorrendo ao addon MariaDB que está descrita no seguinte tópico.

Os resultados que podem obter com este último método são os da seguinte imagem.

6. Montagem

Depois de ter os PZEM prontos, podemos começar a soldar os fios necessários para as ligações. Não deixar os fios muito curtos, senão quando forem para montar tudo dentro da caixa vai ser mais difícil ou mesmo impossível.

Como se pode ver nas seguintes fotos optei por soldar a resistência R1 no PZEM 1 e os 3 díodos D1, D2 e D3 diretamente em cada um dos PZEM.

Na seguinte foto podem ver todas as ligações já feitas. Ter em atenção à peça branca que já tem de estar impressa para poderem passar os fios antes de soldar.

De seguida, foto já com tudo dentro da caixa.

7. Resultado final

Fotos do módulo já pronto para ser instalado.

Os fios dos TIs que vem com o PZEM para a minha instalação são curtos… Tive de fazer umas extensões como se pode ver na seguinte foto.

Por último, fotos de tudo já montado no quadro elétrico.

Espero que este guia seja útil.

Caso construam este módulo, partilhem fotos do resultado final. :wink:

7 Likes

Espetáculo.
:star: :star: :star: :star: :star: :cpha_discord_icon_base: :top:

TOP…TOP…TOP !!!
Parabéns :slight_smile:

Muito bom :+1:
O TTL do pzem é 5V ?
A função do Schottky é para evitar que os 5V cheguem ao wemos, um diodo normal não faria o mesmo efeito ou a forward voltage de 600–700 mV causam problemas na comunicação?

O TTL do pzem é 5V…
O esquema de comunicação entre os pzem e o wemos não fui eu que desenvolvi. Peguei num exemplo do github do tasmota e adaptei para esta versão.

O primeiro esquema de ligação que me lembro de encontrear, mesmo antes do tasmota ter suporte para os 3 pzem, foi neste link.

Excelente!!!

Apresentado desta forma até parece simples. Quantos 3d prints tiveste de fazer até chegar ao resultado final da caixa?. :wink:

Técnicamente ainda não cheguei ao resultado final… :slightly_smiling_face:
A versão da caixa que estou a utilizar já é antiga… Ainda tem a tampa a fixar com parafusos e a que está no Thingiverse a tampa já fixa por encaixe.

Mas digamos que foram algumas impressões de 13 horas :upside_down_face:

Ainda vou fazer mais um módulo destes e numa próxima versão vou adicionar sensor de temperatura dentro da caixa.
Neste não utilizei que não chegaram a tempo. Mas penso que é util o sensor de temperatura que a caixa chega aos 30º

Grande trabalho.

Parabéns.


Copyright © 2017-2021. Todos os direitos reservados
CPHA.pt - info@cpha.pt


FAQ | Termos de Serviço/Regras | Política de Privacidade