Clica no link que aparece aqui na palavra HACS que está tudo explicado. E se pesquisares aqui no fórum também tens boa informação sobre o assunto.
Obrigado a todos pela ajuda, penso que já consegui fazer o que queria, que era comparar os vários tarifários da EDP para o meu consumo.
Vou deixar o que fiz, pode ser que ajude alguém que queira fazer a mesma coisa, ou se estiver algo errado avisem!
Então, tenho um sensor total_energy
que no meu caso obtém o acumulado do consumo em kWh de 5 em 5 minutos através de API REST de um shelly EM (poderia ser um intervalo mais curto para as contagens ficarem 100% no ciclo correcto, mas penso que assim já terei um valor bastante aproximado do real), mas podem ser usadas várias abordagens e sensores diferentes desde que se obtenha o consumo em kWh.
Usei o total_energy
para criar os seguintes utility_meter
(não criei as versões diárias porque acho que não é muito relevante, interessa-me ver o total mensal):
utility_meter:
monthly_energy_bi_diario:
source: sensor.total_energy
cycle: monthly
tariffs:
- Fora de Vazio
- Vazio
monthly_energy_bi_semanal:
source: sensor.total_energy
cycle: monthly
tariffs:
- Fora de Vazio
- Vazio
monthly_energy_tri_diario:
source: sensor.total_energy
cycle: monthly
tariffs:
- Vazio
- Ponta
- Cheias
monthly_energy_tri_semanal:
source: sensor.total_energy
cycle: monthly
tariffs:
- Vazio
- Ponta
- Cheias
Depois configurei as seguintes itegrações no ERSE, para os consumos irem para a tarifa correcta consoante o dia e hora:
- EDP → Bi-horário - ciclo diário / utility_meter.monthly_energy_bi_diario
- EDP → Bi-horário - ciclo semanal / utility_meter.monthly_energy_bi_semanal
- EDP → Tri-horário - ciclo diário / utility_meter.monthly_energy_tri_diario
- EDP → Tri-horário - ciclo semanal / utility_meter.monthly_energy_tri_semanal
Finalmente criei os sensores para calcular o valor (como quero apenas comparar os vários tarifários não considerei as partes fixas como a taxa audiovisual e potência contratada, mas podem fazer sentido se se quiser estimar o total da factura, ou comparar vários fornecedores):
sensor:
- platform: template
sensors:
fatura_energia_simples:
friendly_name: "Fatura Energia simples"
value_template: >-
{{ ((float(states.sensor.monthly_energy_bi_diario_vazio.state) * 0.1453 + float(states.sensor.monthly_energy_bi_diario_fora_de_vazio.state) * 0.1453) * 1.23 ) | round(2) }}
unit_of_measurement: "€"
fatura_energia_bi_diario:
friendly_name: "Fatura Energia bi-horário diário"
value_template: >-
{{ ((float(states.sensor.monthly_energy_bi_diario_vazio.state) * 0.0924 + float(states.sensor.monthly_energy_bi_diario_fora_de_vazio.state) * 0.1834) * 1.23 ) | round(2) }}
unit_of_measurement: "€"
fatura_energia_bi_semanal:
friendly_name: "Fatura Energia bi-horário semanal"
value_template: >-
{{ ((float(states.sensor.monthly_energy_bi_semanal_vazio.state) * 0.0924 + float(states.sensor.monthly_energy_bi_semanal_fora_de_vazio.state) * 0.1834) * 1.23 ) | round(2) }}
unit_of_measurement: "€"
fatura_energia_tri_diario:
friendly_name: "Fatura Energia tri-horário diário"
value_template: >-
{{ ((float(states.sensor.monthly_energy_tri_diario_vazio.state) * 0.0890 + float(states.sensor.monthly_energy_tri_diario_ponta.state) * 0.2751 + float(states.sensor.monthly_energy_tri_diario_cheias.state) * 0.1487) * 1.23 ) | round(2) }}
unit_of_measurement: "€"
fatura_energia_tri_semanal:
friendly_name: "Fatura Energia tri-horário semanal"
value_template: >-
{{ ((float(states.sensor.monthly_energy_tri_semanal_vazio.state) * 0.0890 + float(states.sensor.monthly_energy_tri_semanal_ponta.state) * 0.2751 + float(states.sensor.monthly_energy_tri_semanal_cheias.state) * 0.1487) * 1.23 ) | round(2) }}
unit_of_measurement: "€"
Eu também tenho um Shelly EM a medir o geral.
Já tive a configuração algo semelhante a essa. Inclusive durante esse período tive também o utility meter a usar o valor instantâneo de consumo reportado pelo Shelly.
Existem de facto algumas diferenças entre valores (acumulado do Shelly vs instantâneo do Shelly). A razão que notei para existirem essas diferenças é quando existe a mudança do horário de vazio para fora de vazio e vice versa.
Exemplo: se estiveres a gastar muito e se mudar de vazio para fora de vazio e se o sensor nesse momento estiver à quatro minutos por atualizar, quando o mesmo atualizar esse valor consumido durante esses quatro minutos vai ser incrementado no período fora de vazio em vez de vazio.
Se por outro lado estiveres a usar o sensor do consumo instantâneo do Shelly, esse erro vai ser muito muito menor, senão perto de zero.
Eu cheguei a notar algumas diferenças quando testei isso. Dessa forma a minha sugestão é a utilização do valor instantâneo do Shelly.
Eu enganei-me, peço desculpa, no sensor de húmidade e temperatura é que estou a usar um intervalo de 5min; no shelly EM estou a fazer a chamada por REST de 2 em 2s, porque também tenho um dashboard que mostra o consumo instantâneo e quero que seja real-time ou quase.
Provavelmente por mqtt seria mais eficiente, porque é o próprio shelly que reporta os valores, mas para usar mqtt tenho que deixar de usá-lo na app de shelly cloud e por enquanto ainda não queria…
Penso que até à pouco tempo o Shelly EM apenas calculava e atualizava o valor acumulado de 5 em 5 minutos. Isso pode interferir com os resultados calculados.
Não sei com que frequência o faz agora, mas estive um pouco atento e não atualiza com a mesma frequência do instantâneo (estou a usar mqtt).
Se queres manter a cloud, porque é que não usas a integração oficial?
Fazer interrogação ao Shelly de 2 em 2 segundos pode não ser muito eficiente. Até acho que não é muito bom. Isso x o número de sensores que obtenha do Shelly. Uiii, coitado está sempre a bombar.
No entanto sugiro que penses em eliminar a cloud.
EDIT: se quiseres falar sobre soluções para o Shelly EM passa no discord. Não vá isto começar a ficar off-topic.
É só uma chamada de 2 em 2s, cada chamada REST traz a informação toda do shelly e das duas pinças (V, wh, W, etc.), ora experimenta no browser com os dados do teu shelly EM - http://<IP>/status/; depois pego neste json com sensores template e apanho os valores que me interessam.
Mas ainda vou testar a integração oficial…
Por enquanto não quero perder a hipótese da cloud porque ainda tenho que pensar onde vou correr o HA, neste momento tenho numa VM no meu pc pessoal para experimentar, mas não é viável ter o pc ligado 24/7, para além de que fica mais lento nas outras tarefas do dia-a-dia…
Viva,
Gostei de ver esta aleternativa por ter la os valores que se pode alterar das taxas da edp e etc. Mas no entanto não consegui fazer essa interação.
Logo no inicio quando fala do grafana, é preciso la adicionar algum valor ou é só para se puder tirar aquele código mostrado?
Boas,
Uma ajuda, tenho esta integração “semi” a funcionar, com a seguinte configuração:
(Configuration.yaml)
utility_meter:
daily_energy:
source: sensor.energia_rede
cycle: daily
tariffs:
- Fora de Vazio
- Vazio
monthly_energy:
source: sensor.energia_rede
cycle: monthly
tariffs:
- Fora de Vazio
- Vazio
daily_energy_termoac:
source: sensor.energia_termoacumulador
cycle: daily
tariffs:
- Fora de Vazio
- Vazio
monthly_energy_termoac:
source: sensor.energia_termoacumulador
cycle: monthly
tariffs:
- Fora de Vazio
- Vazio
(sensors.yaml)
- platform: integration
source: sensor.shellyem_b04970_channel_1_power
name: "Energia Rede"
unit_prefix: k
round: 2
- platform: integration
source: sensor.shelly1pm_40f52000c94e_power
name: "Energia TermoAcumulador"
unit_prefix: k
round: 2
até ontem tinha só o shelly1pm configurado e a funcionar com as diferentes tarifas, embora tivesse a sensação que me estava a duplicar os valores efectivos do shelly1pm.
ontem adicionei 1 shelly EM, para me medir todo o consumo da casa, o qual aparentemente está a funcionar correctamente. Neste momento o shelly1pm não me está a dar valores de energia em vazio, aparece-me o valor totalmente na tarifa “fora vazio”, apesar de ter estado ligado em vazio umas boas horas.
Já analisei “n” vezes a configuração, não encontro qualquer erro…
Mais uma questão, o valor do shelly (power) supostamente vem em W, penso que não estou a fazer mal a integração para obter a energia, mas fico com a sensação que o valor obtido parece-me inflacionado…
Aproveito a edição do Post para colocar mais uma informação:
Às 7h da manhã de hoje (1º dia do mês), a aplicação Shelly, reportava de consumo
Total Casa às 7h: 18.25kWh
Termoacumulador às 7h: 5.55kWh
Portanto, tirando o valor da “Energia Dia - Vazio” , quase correcto, todos os outros valores (Vazio) estão incorrectos.
Agradeço qualquer ajuda
Cumps
editado: corrigido o post para obedecer às regras, penso que agora esteja tudo conforme. As minhas desculpas.
@MRBetes quando publicares código ou logs deves fazê-lo como texto. Depois deves sublinhar o texto que queres transformar em código e clicar no icone </>. Deverá existir um espaço antes e outro depois do bloco de código para que funcione correctamente. O código em Yaml é muito sensível aos espaçamentos e sem o código devidamente formatado não te poderemos ajudar. E nos logs há pormenores que só devidamente formatados se conseguem ver. Além disso, existem regras no fórum que devem ser cumpridas e que podes ler nos nossos Termos do Serviço/Regras e na FAQ.
Vê um exemplo:
Olá.
Tens o ERSE bem configurado?
Experimenta veres se tens o seguinte para a mudança de tarifa:
Nota: eu tenho bastantes “tarifários de operador” no ERSE.
Agora entra dentro do ERSE
Depois dentro do detalhe:
Verifica se os teus sensores estão bem.
Deves ter 4. Sendo 2 para cada Shelly.
Eu tenho bem mais.
No entanto também deves verificar qual é o estado de cada utility meter. Se está a coletar ou em pausa.
João, muito obrigado pela dica.
Um dos problemas eventualmente ultrapassado , tinha efectivamente apenas dois utility meters configurados no ERSE (os iniciais, que reaproveitei )
Em relação aos valores incorrectos, estou a usar a integração da própria Shelly no Home Assistant, acho que vou mudar para MQTT para ver se tenho resultados diferentes.
O erro não está relacionado com o mqtt ou integração da Shelly.
O teu problema deve ser o facto de o sistema não estar a assumir a tarifa correta a coletar.
Não te pode aparecer Desconhecido à frente do edp_bi_horario_cicko_semanal.
Tenta fazer restart ao HA.
Se não der remove o ERSE e volta a instalar.
Após instalar restart ao HA.
Após escolher o ciclo restart ao HA (pelo vezes uma vez).
Mais uma vez muito obrigado João.
O erro que estou a falar já não é desse, ele estar desconhecido tinha efetivamente a ver com alterações que tinha feito e que ainda não tinha feito restart ao HA, (tinha eliminado a integração e voltado a criar de novo), neste momento está correcto - Fora de Vazio.
O problema agora é respeitante aos valores totais incorrectos (aparentemente), daí ter referido a mudança para MQTT! Parece-me que o valor calculado pela integração é quase o dobro do valor que vejo na aplicação Shelly.
Provavelmente vou esperar por amanhã para validar, agora já com todas as configurações do ERSE correctas.
A quem me poder esclarecer algumas duvidas acerca do ERSE agradecia.
- Tenho produção solar e estou a usar um sensor Wibeee para o consumo, as pinças estão a abraçar a entrada dos cabos do fornecedor (EDP). Como tenho por vezes excesso, parece-me que o ERSE contabiliza o excedente como consumo, será assim? Terei mal implementado?
- O sensor que devo usar no ERSE é um sensor que mede energia Wh e não somente potencia W, é assim?
Quanto ao ponto 1. se o que afirmo estiver correto, como posso alterar de modo que se houver excesso de produção, o Erse não contabilize.
Obrigado.
O sensor a usar no ERSE terá que ser SEMPRE um utility meter. Esse utility meter é que deve ter um sensor de energia kWh e não kW.
Relativamente à primeira questão, o utility meter vai somar sempre o que estiver no sensor. Se for zero ele “soma” zero, se for diferente ele vai “somando” o valor em questão.
Obrigado João Lopes.
Relativamente à primeira questão, e se for negativo (caso de injeção na rede)? A mim parece-me que ele soma, não leva em conta o sinal negativo. No entanto se fosse enferior ou igual a zero não deveria contar.
Obrigado.
Bom dia,
Depois de ter tudo a funcionar em pleno por coincidência com a atualização da nova versão do home assistant o meu tarifário /entidade da ERSE passou ao estado de restaurado com resultado desconhecido. Ao entrar na entidade dizia que a entidade tinha ficado órfã.
Não sabendo o que fazer pensei em adicionar um novo tarifário e apaguei esta entidade. Entretanto percebi que não conseguia adicionar um novo tarifário e decidi apagar a integração para voltar a instalar a mesma.
Após isto tenho continuamente tentado instalar a integração mas sem sucesso, aparecendo sempre esta mensagem: de erro ‘‘o fluxo da informação não pôde ser carregado’’.
Carregando de novo em adicionar integrações recebo a seguinte mensagem: ‘‘por favor aguarde enquanto a integracao está a ser carregada’’’.
Fica neste estado horas.
Entretanto desinstalei no Hacs a ERSE e voltei a instalar. Verifiquei no file editor se estava tudo ok e voltei a tentar instalar a aplicação mas sem sucesso voltando a dar a mesma mensagem de erro e voltando, após insistência, a dar a outra mensagem de que a integração está a ser instalada.
Verificando o erro de seguida constata-se a seguinte info de erro:
Logger: homeassistant.config_entries
Source: config_entries.py:575
First occurred: 3:35:40 (2 occurrences)
Last logged: 8:53:23
Error occurred loading configuration flow for integration erse: cannot import name ‘Operators’ from ‘electricity.tariffs’ (/usr/local/lib/python3.8/site-packages/electricity/tariffs.py)
Podem dar-me uma ajuda? Estou a ficar “doente” com isto…
Não há ninguém que me consiga dar uma ajuda?
Ou este não é o local indicado para o fazer? Peço desculpa se não for, sou novato em tudo isto, e apenas gostaria de repor o tarifário do ERSE para ter os indicadores a funcionar em pleno. Caso n\ao seja este o local indicado para este tipo de pergunta agradeço que me indiquem onde devo colocar a questão por forma a obter ajuda.
Muito obrigado!
M
Boa tarde,
Esse nível e profundidade de problemas não consigo resolver.
Talvez o @dgomes tenha alguma ideia de resolução do teu problema.
Estamos a tentar resolver em https://github.com/dgomes/ha_erse/issues/9 mas estou com dificuldade em perceber o que pode ter causado, até pq não ha mais reportes de problemas…