Integrar contadores inteligentes da EDP em Home Assistant

Obrigado @nikito7, funcionou para os uint32 mas agora são os uint16 que não funcionam : dá para ajudar ? OBRIGADO!!!

O uint16 é só tirar o count

Muito obrigado!
Para quem quiser, aqui vai a config que funcionou de acordo com as dicas do @nikito7

1 Curtiu

Alguém tem ideia se existem comandos modbus para controlar o contactor do lado do cliente? (desde que não tenha sido desligado pela e-Redes obviamente).

Existem estes registos, mas sugerem tratar-se de leitura apenas:

Gostaria de poder desligar e voltar a ligar o fornecimento de energia remotamente, de modo a reiniciar equipamentos. Obrigado.

Via modbus não.

Só arranjando um diferencial inteligente ou um contactor.

Se desligares o quadro totalmente o contador deverá re-armar.

Isso requer um contactor de grande amperagem e qualidade.

Obrigado @nikito7. Sim aqui seria interessante usando o hardware existente sem ter de gastar dinheiro a acrescentar mais um contactor, quando o próprio contador inteligente já tem um integrado. Mas percebo que a funcionalidade precise de estar bem vedada do consumidor (ainda que pelo menos em alguns modelos o consumidor pode todavia rearmar via botão, no caso de ter desarmado devido a falha ou sobrecorrente). Podia todavia haver a segregação nestes equipamentos, das acções levadas a cabo a partir da rede - e.g. o corte para suspensão do serviço, daquelas passíveis de ser iniciadas ou revertidas pelo consumidor, e tendo em conta isso dar acesso ao contactor nas situações validas.

Boa noite,

Já alguém conseguiu retirar leituras de um janz c240r2?

Se não for inteligente não dá

1 Curtiu

Eu acredito que tenha a porta HAN tapada por este plástico escur.

Bom dia,

Há alguma novidade em relação a obter os dados via site? Entrando pelo site consigo chegar aos dados sem passar por nenhum captcha, talvez tenham mudado isso entretanto e já seja possível?

Obrigado

Boa tarde,

Fiz uma implementação muito parecida a esta. Enquanto a malta da E-Redes estava cá a instalar o chicote da port a HAN, testei e consegui ler dados durante uns 5 minutos, estava a funcionar perfeitamente.

Agora que consegui meter uma fonte de 5V estavel ao pe do quadro, fui testar e meter tudo a funcionar e os valores aparecem todos a 0.

image

Nunca usei os 5V da porta HAN para alimentar o ESP, o que pode ter acontecido, e o que posso fazer?

Muito obrigado desde já.

(edit: adicionei a segunda print)

Boa Tarde,

Consegues-me ajudar com isto? Julgo que tenho o mesmo problema. Estou a ligar um contador ao ELFIN, mas não estou a conseguir nenhuma leitura. Segui um foram com as indicações incluindo as ligações da RJ12 à RJ45 mas nada chega ao homeassistant. Incluindo com um utilitario QModMaster (que o chatgpt me sugeriu) não consigo obter nenhuma leitura.

Estou a seguir as indicações deste site

Estou com estes erros:
2024-05-16 23:04:59.282 DEBUG (MainThread) [homeassistant.components.modbus.modbus] Pymodbus: edpbox: Error: device: 1 address: 127 → pymodbus returned isError True
2024-05-16 23:04:59.484 DEBUG (MainThread) [pymodbus.logging] Adding transaction 7
2024-05-16 23:04:59.484 DEBUG (MainThread) [pymodbus.logging] Resetting frame - Current Frame in buffer -
2024-05-16 23:04:59.484 DEBUG (MainThread) [pymodbus.logging] send: 0x0 0x7 0x0 0x0 0x0 0x6 0x1 0x4 0x0 0x26 0x0 0x2
2024-05-16 23:05:00.031 DEBUG (MainThread) [pymodbus.logging] recv: 0x0 0x7 0x0 0x0 0x0 0x3 0x1 0x84 0x81 old_data: addr=None
2024-05-16 23:05:00.032 DEBUG (MainThread) [pymodbus.logging] Processing: 0x0 0x7 0x0 0x0 0x0 0x3 0x1 0x84 0x81
2024-05-16 23:05:00.032 DEBUG (MainThread) [pymodbus.logging] Factory Response[132]
2024-05-16 23:05:00.032 DEBUG (MainThread) [pymodbus.logging] Getting transaction 7
2024-05-16 23:05:00.033 DEBUG (MainThread) [pymodbus.logging] Frame check, no more data!

2 Curtiram

Obrigado, acho que entrei num beco sem saida…vou ver se consigo entrar em contacto com a e-redes.

Para pessoas com o mesmo problema, está resolvido.
Assim que paguei a conta da luz, comecei a conseguir ler valores. Não sei se foi coincidencia ou não.

Bom dia! Consegui obter alguns valores, mas a maior parte deles não estou a conseguir ler.
Depois de contactar a e-redes, disseram-me que iam ver mas nunca informaram mais nada. Apos algumas semanas começei a receber alguns valores no homeassistant:

  • Tensão (108)
  • Corrente (109)
  • Fator de potencia (123)
  • Frequencia (127)
  • State L1 (132)
  • Tariff L1 (11)
  • Firmware Core (4)

No entanto os restantes valores como o consumo estão com erro. Estou a tentar varias configurações para ler o valor da Potencia Activa mas sem sucesso (nos endereços 115, tambem ja tentei ler os endereços 121, 117 e 119). De momento esta configuração no homeassistant configuration.yaml:

  - name: "EDP Box - Potência Ativa" # 79
    unique_id: edp_box_potencia_activa_sensor
    slave: 1
    address: 119
    input_type: input
    count: 4
    data_type: custom
    structure: ">Q"
    unit_of_measurement: W
    device_class: power
    scan_interval: 30

Mas o sensor não apresenta qualquer valor. No log do homeassistant apresenta o erro:

Logger: homeassistant.components.modbus.modbus
Source: components/modbus/modbus.py:331
integration: Modbus (documentation, issues)
First occurred: 09:58:05 (31 occurrences)
Last logged: 10:13:05

Pymodbus: edpbox: Error: device: 1 address: 119 → pymodbus returned isError True

No detalhe:
2024-06-05 09:57:55.252 DEBUG (MainThread) [pymodbus.logging] Connecting to 192.168.1.208:9502.

2024-06-05 09:57:55.252 DEBUG (MainThread) [pymodbus.logging] Connecting comm

2024-06-05 09:57:55.261 DEBUG (MainThread) [pymodbus.logging] Connected to comm

2024-06-05 09:57:55.261 DEBUG (MainThread) [pymodbus.logging] Resetting frame - Current Frame in buffer -

2024-06-05 09:57:55.262 INFO (MainThread) [homeassistant.components.modbus.modbus] modbus edpbox communication open

2024-06-05 09:58:01.265 DEBUG (MainThread) [pymodbus.logging] → transport: received eof

2024-06-05 09:58:01.266 DEBUG (MainThread) [pymodbus.logging] Connection lost comm due to None

2024-06-05 09:58:01.266 DEBUG (MainThread) [pymodbus.logging] callback_disconnected called: None

2024-06-05 09:58:01.268 DEBUG (MainThread) [pymodbus.logging] Wait comm 100.0 ms before reconnecting.

2024-06-05 09:58:01.380 DEBUG (MainThread) [pymodbus.logging] Connecting to 192.168.1.208:9502.

2024-06-05 09:58:01.380 DEBUG (MainThread) [pymodbus.logging] Connecting comm

2024-06-05 09:58:01.405 DEBUG (MainThread) [pymodbus.logging] Connected to comm

2024-06-05 09:58:01.406 DEBUG (MainThread) [pymodbus.logging] Resetting frame - Current Frame in buffer -

2024-06-05 09:58:03.921 DEBUG (MainThread) [pymodbus.logging] Adding transaction 1

2024-06-05 09:58:03.921 DEBUG (MainThread) [pymodbus.logging] Resetting frame - Current Frame in buffer -

2024-06-05 09:58:03.921 DEBUG (MainThread) [pymodbus.logging] send: 0x0 0x1 0x0 0x0 0x0 0x6 0x1 0x4 0x0 0x6d 0x0 0x1

2024-06-05 09:58:04.478 DEBUG (MainThread) [pymodbus.logging] recv: 0x0 0x1 0x0 0x0 0x0 0x5 0x1 0x4 0x2 0x0 0x1b old_data: addr=None

2024-06-05 09:58:04.478 DEBUG (MainThread) [pymodbus.logging] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x1 0x4 0x2 0x0 0x1b

2024-06-05 09:58:04.478 DEBUG (MainThread) [pymodbus.logging] Factory Response[ReadInputRegistersResponse’: 4]

2024-06-05 09:58:04.478 DEBUG (MainThread) [pymodbus.logging] Getting transaction 1

2024-06-05 09:58:04.479 DEBUG (MainThread) [pymodbus.logging] Frame check, no more data!

2024-06-05 09:58:04.710 DEBUG (MainThread) [pymodbus.logging] Adding transaction 2

2024-06-05 09:58:04.712 DEBUG (MainThread) [pymodbus.logging] Resetting frame - Current Frame in buffer -

2024-06-05 09:58:04.712 DEBUG (MainThread) [pymodbus.logging] send: 0x0 0x2 0x0 0x0 0x0 0x6 0x1 0x4 0x0 0x77 0x0 0x4

2024-06-05 09:58:05.264 DEBUG (MainThread) [pymodbus.logging] recv: 0x0 0x2 0x0 0x0 0x0 0x3 0x1 0x84 0x4 old_data: addr=None

2024-06-05 09:58:05.265 DEBUG (MainThread) [pymodbus.logging] Processing: 0x0 0x2 0x0 0x0 0x0 0x3 0x1 0x84 0x4

2024-06-05 09:58:05.265 DEBUG (MainThread) [pymodbus.logging] Factory Response[132]

2024-06-05 09:58:05.265 DEBUG (MainThread) [pymodbus.logging] Getting transaction 2

2024-06-05 09:58:05.265 DEBUG (MainThread) [pymodbus.logging] Frame check, no more data!

2024-06-05 09:58:05.279 ERROR (MainThread) [homeassistant.components.modbus.modbus] Pymodbus: edpbox: Error: device: 1 address: 119 → pymodbus returned isError True

2024-06-05 09:58:09.719 DEBUG (MainThread) [pymodbus.logging] → transport: received eof

2024-06-05 09:58:09.720 DEBUG (MainThread) [pymodbus.logging] Connection lost comm due to None

2024-06-05 09:58:09.721 DEBUG (MainThread) [pymodbus.logging] callback_disconnected called: None

2024-06-05 09:58:09.722 DEBUG (MainThread) [pymodbus.logging] Wait comm 100.0 ms before reconnecting.

- name: "EDP Box - Potência Ativa" # 79
    unique_id: edp_box_potencia_activa_sensor
    slave: 1
    address: 121
    input_type: input
    count: 1
    data_type: custom
    structure: ">L"
    unit_of_measurement: W
    device_class: power
    scan_interval: 30

Não há garantias que o componente modbus do Home Assistant funcione correctamente.

Os 32bits da edpbox são non-standard.

Obrigado @nikito7 . Não resulta, apresenta o erro:
Logger: homeassistant.config
Source: config.py:1326
First occurred: 14:04:17 (1 occurrences)
Last logged: 14:04:17

Invalid config for ‘modbus’ at configuration.yaml, line 196: EDP Box - Potência Ativa: Size of structure is 4 bytes but count: 1 is 2 bytes ‘modbus->0->sensors->7’, got {‘name’: ‘EDP Box - Potência Ativa’, ‘unique_id’: ‘edp_box_potencia_activa_sensor’, ‘slave’: 1, ‘address’: 121, ‘input_type’: ‘input’, ‘count’: 1, ‘data_type’: ‘custom’, ‘structure’: ‘>L’, ‘unit_of_measurement’: ‘W’, ‘device_class’: ‘power’, ‘scan_interval’: 30}, please check the docs at https://www.home-assistant.io/integrations/modbus

Vou experimentar tambem com o Count=2 (mas acho que ja tinha tentado isto antes numa das dezenas de sugestões do ChatGPT).

Com count=2, o erro no log é apresentao:
2024-06-05 14:10:28.102 DEBUG (MainThread) [pymodbus.logging] Adding transaction 8

2024-06-05 14:10:28.103 DEBUG (MainThread) [pymodbus.logging] Resetting frame - Current Frame in buffer -

2024-06-05 14:10:28.103 DEBUG (MainThread) [pymodbus.logging] send: 0x0 0x8 0x0 0x0 0x0 0x6 0x1 0x4 0x0 0x79 0x0 0x2

2024-06-05 14:10:28.668 DEBUG (MainThread) [pymodbus.logging] recv: 0x0 0x8 0x0 0x0 0x0 0xb 0x1 0x4 0x8 0x0 0x0 0x2 0x2 0x0 0x0 0x0 0x0 old_data: addr=None

2024-06-05 14:10:28.668 DEBUG (MainThread) [pymodbus.logging] Processing: 0x0 0x8 0x0 0x0 0x0 0xb 0x1 0x4 0x8 0x0 0x0 0x2 0x2 0x0 0x0 0x0 0x0

2024-06-05 14:10:28.669 DEBUG (MainThread) [pymodbus.logging] Factory Response[ReadInputRegistersResponse’: 4]

2024-06-05 14:10:28.669 DEBUG (MainThread) [pymodbus.logging] Getting transaction 8

2024-06-05 14:10:28.669 DEBUG (MainThread) [pymodbus.logging] Frame check, no more data!

2024-06-05 14:10:28.872 ERROR (MainThread) [homeassistant.components.modbus.base_platform] Received 8 bytes, unpack error unpack requires a buffer of 4 bytes

Não resulta.


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


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