Módulo HAN WIFI compacto

Tiago, ainda bem que ficou a funcionar, obrigado pelo feedback positivo.
Ao retirar manga para ver a placa, recomendo que coloquem algo que sirva de proteção contra eventuais curto-cicuitos.

O tempo de leitura de cada registo do contador (cada script pode ler vários registos) é dado no 8º parametro do script (100*10ms no exemplo):
+1,3,m,1,9600,EB,1,100,[..]

O intervalo de envio dos dados todos é dado em segundos no comando tper do script (30s no exemplo)
tper=30

Alterando o tper para 5 e o tempo de leitura para algo que permita ler todos os registos entre cada envio é facil, mas a especificação da e-redes diz para não ler mais do um registo a cada segundo. Se bem que consigo nos testes que fiz sem problema, pode é depender da marca do contador.

Algo assim deve ajudar se forem 5 parametros:
tper=5
+1,3,m,1,9600,EB,1,20,[..]

O DCP tem a ver com o limite e tempo até o corte de energia em caso do consumo acima do contratado, não é necessário recolher essa informação constantemente.

Ao tper mínimo é 10. (10s)

+1,3,m,1,9600,EB,1,10,

Aqui o mínimo recomendado é 10 (1s)

É possivel enviar via mqtt quase em tempo real, mas vai criar muitos erros no log do HA. Porque o tópico mqtt é único. (Caso ainda aconteça)

1 Curtiu

Obrigado. Já tinha feito algumas experiências com o tper mas por algum motivo não estava a conseguir leituras com menos de 20s (percebi agora que tinha que fazer restart ao ESP, caso contrário por algum motivo ele deixava de reportar). Entretanto, e agora percebendo melhor pelos vossos comentários, estando eu a ler 7 registos, cumprindo a recomendação E-Redes, devia no máximo fazer a leitura completa dos registos com intervalo mínimo de 7s. Para arredondar e manter período de amostragem pelo menos a um múltiplo inteiro do inversor, estou a fazer a cada 10s (tper=10, e “+1,3,m,1,9600,EB,1,10,[…]”

Obrigado.

Se adicionares 16 na precisão o mqtt é imediato

1,01040EUUuu@i1:10,Voltage L1,V,VL1,1

TelePeriod, 1 casa decimal.

1,01040EUUuu@i1:10,Voltage L1,V,VL1,17

Imediato, 1 casa decimal.

Na parte do modbus não há muito a alterar porque está sempre em loop.

Só reduzindo os registers.

Sei enviar pedidos únicos modbus.

Mas não sei fazer decode da resposta

qual a referencia do IC2 sff?

contador

Depois de ter esperado mais do que um ano com a criação Frankenstein que eu fiz, não a trabalhar. Decidi de comprar este modulo compacto. Chegou rapidamente mas infelizmente o contador não estava a funcionar.

contador vazio

O Nuno ajudou me analisar o problema e era mesmo o contador a negar o conexão depois de meter o commando

sensor53 d1

na consola.

erro contador

Contactei E-Redes para mais uma vez tentar arranjar o contador. A ultima vez chegou um homem que não quis saber nada do tudo. O modulo não era da EDP (bem visto Sherlock), e não queria fazer nada.

Chamaram me um o dois dias depois de reclamar e prometeram de tentar arranjar tudo remotamente. Depois recebi um SMS a dizer que ia chegar um tecnico (com ID CMEO4255) para ver o que é que podia fazer.

Ele disse que não podia trocar o contador, mas o que fez, era fazer uma chamada para colegas, explicou o que eu queria. Ele meteu uma coisa na porta ótica do contador que estava ligado ao telemovel dele. Disse que a electricidade ia ser desligada para uns segundos. Depois ele disse que não podia fazer mais nada e que iam ver o que podiam fazer mais.

Depois de ele sair, finalmente todas as coisas estavam a trabalhar de novo e quando vi a pagina do modulo, não acreditei que finalmente estava a receber dados.

2022-09-29 19_12_07-Contador - Main Menu

O script que usei é o seguinte:

D

BS

smlj=0
tper=60

=>sensor53 r

S

if upsecs>20
and upsecs<30
then
smlj=1
endif

M 1

+1,3,m,1,9300,EB,1,50,0104006C,01040079,0104007A,0104007F,01040026,01040027,01040028,0104000B,01040084

1,=hVALORES TÉCNICOS
1,010404UUuuxxxx@i0:10,Tensão,V,Voltage_P1,17
1,010404xxxxUUuu@i0:10,Corrente,A,Current_P1,17
1,010408UUuuUUuuxxxxxxxxxxxx@i1:1,Potência ativa,W,Power_P1,16
1,010406xxxxxxxxUUuu@i2:1000,Fator de potência,pu,PFactor_P1,19
1,01040aUUuuxxxx@i3:10,Frequência,Hz,Frequency_P1,17
1,=h‍
1,=hTOTALIZADORES DE ENERGIA
1,010408UUuuUUuuxxxxxxxxxxxx@i4:1000,Tarifa 1 Vazio,kWh,Energy_P1_R1,17
1,010408UUuuUUuuxxxxxxxxxxxx@i5:1000,Tarifa 2 Ponta,kWh,Energy_P1_R2,17
1,010408UUuuUUuuxxxxxxxxxxxx@i6:1000,Tarifa 3 Cheia,kWh,Energy_P1_R3,17
1,=h‍
1,=hESTADOS
1,010406uuxxxxxxxx@i7:1,Tarifa atual,Tariff_P1,16
1,010406uuxxxxxxxx@i8:1,DCP,DCP_P1,16

Então milagres ainda existem, eu estava a espera que nunca ia conseguir bater a burocracia. Há esperanca :smiley:

Descobri que havia também problemas com o MQTT, aparentemente uma coisa mudou no Home Assistant. Já não tens que meter um nome de utilizador e palavra pass dentro da configuração do Mosquitto Broker, mas criar um utilizador na Home Assistant com palavra passe. Agora MQTT que já não estava a funcionar bem desde um ou dois meses, funciona de novo.

Agora quero experimentar se consigo trabalhar com este integração

https://www.home-assistant.io/integrations/dsmr/

que aparentemente funciona com ESPHome e tem melhor integração no Home Assistant.

Cumprimentos

Ben

P.s. Obrigado @chaveiro sem a tua ajuda nunca conseguia arranjar isto tudo :smiley:

2 Curtiram

Dsmr não é modbus.

https://github.com/nikito7/edpbox/tree/dev/esphome/PCB

Cabe ao @chaveiro testar ou adaptar

Conheço o projeto DSMR (Dutch Smart Meter Requirements) mas não a integração direta com o hass, parece ser fácil de adaptar este plugin hass aos topicos mqtt no formato do tasmota, o codigo está aqui:

De momento nao tenho o hass instalado para testar, talvez consigas @nikito7 ?

Não é preciso qualquer integração.

Apenas os discovery.


O problema do meu script é que está enorme.

E não é facil lidar com ele porque o tasmota recusa-o.

  • desligar script. Save

  • meter só " >D ". Save

  • colar o novo script. Save

  • confirmar que ficou guardado. Eventualmente pode causar uma excepção e faz reboot

  • ligar script


Mais simples é ESPHome. Mas este consome mais. Pode ou não funcionar directo na HAN.

ESPHome usa o api, e nao mqtt.

Esse trabalho está todo feito. É uma questão de procurar.

Eu troco facilmente entre tasmota e esphome.

Não quer dizer que nao possa causar problemas em algumas situações

Tasmota4M para ESPHome 4MB (board esp07s).

Ainda há dias o fiz, para testar o yaml acima

Um aparte, não é fácil agradar a todos :upside_down_face:

qual a referencia do IC2 que usas no módulo?

nevermind, já percebi, usas Q1, c3 e r8 para simular o tx_enable tal como o módulo usado nas outras implementações.

1 Curtiu

@nikito7 O tasmota parece nao gostar de script grandes, o truque que tenho usado é dar restart ao tasmota antes de passar um novo script e aceita sempre, mesmo sem desativar o anterior.

@gigaz é um max485 ou equivalente, com flow automático é o max13487.

1 Curtiu

pois, foi o que pensei
falem os 2 comigo quando tiverem stock baixo e antes de mandarem produzir mais :wink:

Existe um programazito.

Mas como só uso telemóvel, nunca usei.

1 Curtiu

Mais um lote acabado de chegar

3 Curtiram

Boa tarde, estou interessado mas não consigo enviar msg privada.

Olá, eu estaria interessado neste módulo mas gostaria de ajuda para o ligar junto ao quadro e não junto ao contador dado que onde está o contador não estou interessado em ter cobertura de WiFi.
Tenho cabo 5e, cabo de telefone e fixas rj12 para cravar, até tenho cabo de telefone (6 fios não entrelaçados) que arranquei da casa para substituir por Ethernet.
Acho que a minha dúvida será então mais na questão da alimentação do módulo a partir do quadro e qual o cabo mais indicado para usar na ligação do contador ao quadro.
Antes de mais o meu obrigado.

Olá, basta fazer uma extensão com cat5 ou superior e fichas rj12. Garantir que o par AB é interlaçado.

Cabo de telefone não recomendo para grandes distancias pois capta interferências.

Há também o risco de induzir interferências nos 5V do contador, pelo que alimentação local poderá ser a melhor solução se for realmente uma grande distancia.

Módulo comprado ao Chaveiro e já está a funcionar, usando o script abaixo.

À exceção de alguns restarts expontâneos, não tenho nada a apontar. Alguém sabe do que se possa tratar?

Outra pergunta, é possível fazer pedidos ao contador com periodos diferentes?
Exemplo: Pedir Potencia, Tensão, Corrente de 1 em 1 seg. Pedir Frequencia, Fator Potencia… etc de 1 em 1 minuto?

>D

>BS

smlj=0
tper=180

=>sensor53 r

>S

if upsecs>20
and upsecs<30
then
smlj=1
endif

>M 1

+1,3,m,1,9300,EB,1,50,0104006C,01040079,0104007A,0104007F,01040026,01040027,01040028,0104000B,01040084

1,=hVALORES TÉCNICOS
1,010404UUuuxxxx@i0:10,Tensão,V,Voltage_P1,17
1,010404xxxxUUuu@i0:10,Corrente,A,Current_P1,17
1,010408UUuuUUuuxxxxxxxxxxxx@i1:1,Potência ativa,W,Power_P1,16
1,010406xxxxxxxxUUuu@i2:1000,Fator de potência,pu,PFactor_P1,19
1,01040aUUuuxxxx@i3:10,Frequência,Hz,Frequency_P1,17
1,=h‍
1,=hTOTALIZADORES DE ENERGIA
1,010408UUuuUUuuxxxxxxxxxxxx@i4:1000,Tarifa 1 Vazio,kWh,Energy_P1_R1,17
1,010408UUuuUUuuxxxxxxxxxxxx@i5:1000,Tarifa 2 Ponta,kWh,Energy_P1_R2,17
1,010408UUuuUUuuxxxxxxxxxxxx@i6:1000,Tarifa 3 Cheia,kWh,Energy_P1_R3,17
1,=h‍
1,=hESTADOS
1,010406uuxxxxxxxx@i7:1,Tarifa atual,,Tariff_P1,16
1,010406uuxxxxxxxx@i8:1,DCP,,DCP_P1,16

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


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