Como instalar e configurar um Medidor de Energia PZEM-004T

4 Likes

Para quem quiser configurar um Medidor de Energia PZEM-004T usando Tasmota aqui vai como configurar
No meu caso to a usar o PZEM-BH produzido pelo amigo Bruno Horta.
Queria desde já tambem agradecer ao nosso amigo Rodolfo Vieira pela ajuda que deu.

Em primeiro lugar vamos flashar o nosso PZEM com o tasmota
de seguida vamos configurar o modulo em modo generico e vamos configurar os respetivos GPIOS de acordo com os modulos PZEM que usarem(no meu caso o PZEM do Bruno Horta)

3

de seguida iremos configurar o nosso Homeassistant com o seguinte:

sensor:

  - platform: mqtt
    name: "Power"
    state_topic: "tele/sonoff/SENSOR"
    value_template: "{{ value_json.ENERGY.Power }}"
    unit_of_measurement: "W"
    icon: mdi:power-plug

  - platform: mqtt
    name: "Voltage"
    state_topic: "tele/sonoff/SENSOR"
    value_template: "{{ value_json.ENERGY.Voltage }}"
    unit_of_measurement: "V"
    icon: mdi:flash

  - platform: mqtt
    name: "Current"
    state_topic: "tele/sonoff/SENSOR"
    value_template: "{{ value_json.ENERGY.Current }}"
    unit_of_measurement: "A"
    icon: mdi:power-socket


  - platform: mqtt
    name: "Energy today"
    state_topic: "tele/sonoff/SENSOR"
    value_template: "{{ value_json.ENERGY.Today }}"
    unit_of_measurement: "kWh"
    icon: mdi:power-socket-eu

  - platform: mqtt
    name: "Energy yesterday"
    state_topic: "tele/sonoff/SENSOR"
    value_template: "{{ value_json.ENERGY.Yesterday }}"
    unit_of_measurement: "kWh"
    icon: mdi:power-socket-eu

  - platform: mqtt
    name: "Energy total"
    state_topic: "tele/sonoff/SENSOR"
    value_template: "{{ value_json.ENERGY.Total }}"
    unit_of_measurement: "kWh"
    icon: mdi:power-socket-eu

  - platform: mqtt
    name: "Power Factor"
    state_topic: "tele/sonoff/SENSOR"
    value_template: "{{ value_json.ENERGY.Factor }}"
    icon: mdi:percent

  - platform: mqtt
    name: "Temp"
    state_topic: "tele/sonoff/SENSOR"
    value_template: "{{ value_json.DS18B20.Temperature }}"
    unit_of_measurement: "°C"
    icon: mdi:thermometer

e nos groups.yaml

energy:
    name: Consumos Energeticos
    entities:
      - sensor.power
      - sensor.voltage
      - sensor.current
      - sensor.energy_today
      - sensor.energy_yesterday
      - sensor.energy_total
      - sensor.power_factor
      - sensor.temp

depois é so reiniciar o Homeassitant e pronto, caso no frontend apareça como desconhecido o estado é so esperar até ele actualizar, isso deve-se ao facto de ele esperar pela menssagem que vai aparecendo na consola do tasmota interface que manda de X em X minutos dependendo da telemetria settings…

o resultado final será assim:
1

4 Likes

Top muito bom. Agora falta só ligares isso ao quadro.

Acabaram de me dar a solução ao meu pedido. Era mesmo isso que eu queria. Agoara, tenho que comprar o material para testar. :hugs::hugs:

Pequena pergunta existencial de um leigo na matéria para montar este projecto.
Até agora, só tenho trabalhado com o RaspberryPI.
Neste projecto, vou ter obrigatoriamente de adquirir um Arduino para configurar o modulo de comunicação WIFI NodeMCU?
Ou consigo aceder do Raspberry e dar os comandos necessários para configurar o WIFI?

Sei que há alguns scripts que são parecidos e modulos que se podem ligar directamente no RPI nas fichas RPIO. Neste caso, será possível?

@paulo106 não entendi bem a tua pergunta, mas tu aqui so precisas de usar um nodemcu e o arduino IDE para enviar o código para o mesmo.

Sim. A pergunta era mesmo essa. Tenho obrigatoriamente que ter um Arduino para fazer este projecto?

Ja te disse que não… tens que ter uma placa wemos ou nodemcu…

Sim. Essa parte, eu tinha percebido. A duvida era como é que eu iria programar este circuito ou placa (nodemcu). Pensava que fosse preciso um Arduino para poder aceder a este modulo.
Desculpa a ignorância. Não conhecia este tipo de equipamento. Só descobri ontem com o teu post. Estou a tentar perceber como funciona. Mas o melhor é pesquisar um bocado para perceber melhor.

como o Rodolfo Vieira disse tens que ter uma placa wemos ou nodemcu e um PZEM
depois vais compilar esse wemos ou nodemcu com tasmota ou com o sketch do Bruno Horta que se encontra disponivel no github
para compilares o wemos ou nodemcu podes usar o arduino IDE, Atom platformio ente outros compiladores que existem por ai

@paulo106 O nodemcu nada mais é que uma placa que tem uma porta microusb (como um telemovel) onde ligas o cabo ao pc… e o código é enviado por esse cabo… a placa é barata custa 2 euros e tal/3.

Ok. Já estou a entender. Já encomendei um. Obrigado pelos esclarecimentos.

O Arduino IDE que se fala é o software (https://www.arduino.cc/en/main/software) e não a board. Com esse software e um cabo USB/microUSB (de boa qualidade preferencialmente) é que vais flashar o firmware para a placa de desenvolvimeto (NodeMCU, Wemos D1 mini ou outra).

1 Like

Boas, tenho o nodemcu com tasmota e pzem-004T, no HA o estado aparece como desconhecido mesmo passado bastante tempo, na pagina web aparecem os valores e está conectado ao mosquitto, sabem o que possa estar a acontecer?

Tens que usar no HA isso:

availability_topic: "tele/salajantar/LWT"
payload_available: "Online"
payload_not_available: "Offline"

O exemplo que te meti é para tasmota. Como não meteste o teu codigo estou a supôr que seja isso

Neste momento tenho assim:

  - platform: mqtt
    name: "Power"
    state_topic: "tele/sonoff/SENSOR"
    value_template: "{{ value_json.ENERGY.Power }}"
    unit_of_measurement: "W"
    icon: mdi:power-plug
    availability_topic: "tele/sonoff/LWT"
    payload_available: "Online"
    payload_not_available: "Offline"

Continua a não funcionar

O topic está correcto? Chama-se mesmo sonoff? Não é boa política usar esse porque depois, sem querer, vais ter vários iguais…

Sim o topic está correto, estou só a fazer teste acabei por copiar a programação de exemplo para testar, mas também já alterei o topic no nodemcu e na programação e continua sem funcionar.

Boas pessoal. Já tenho o material e estou há 2 dias a tentar comunicar com a carta NodeMCU sem sucesso.
A instalação dos drivers no PC parece ter corrido bem. Aparece a porta no sistema com informação do chipset USB-SERIAL CH340. A carta é uma Lolin Node MCU v3 com chipset 340.
O software Arduino IDE não consegue enviar dados para a carta. Já tentei o botão reset e flash mas nada, liga o led uns micro segundos quando carrego no botão reset e nada.
Será a carta que veio avariada ou estou a fazer mal alguma coisa?
Li nas QA do site da Banggood pessoal a falar de ter que alimentar a carta em 5v em simultaneo. Estava a contar fazer isso depois de a configurar quando a ligasse ao PZEM04. Será?

Estas a referir-te a comunicar com o NodeMCU ligado ao PZEM ou desligado do PZEM?


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


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