luuuis / hass_omie

OMIE Home Assistant Integration
https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668
Apache License 2.0
56 stars 6 forks source link

Hora (GMT / GMT+1 / GMT + DSV) #25

Closed r-amado closed 1 year ago

r-amado commented 1 year ago

Boa noite, image @luuuis já tocámos neste tema, mas gostava de explorar mais o tema, dado que o sensor da hora atual parece estar a indicar a hora à frente. O print acima mostra o valor do sensor sensor.omie_spot_price_pt às 21h33 com o valor de 96,56, quando no site da omip (omipdata), indica esse valor para o período 22h-23h.

Nos atributos este valor está associado à data. +01:00. Hora na verdade a hora portuguesa atualmente é GMT+0 + DSV, e creio ser esse o problema, porque o meu HomeAssistant está no timezone Lisbon (GMT+0) e detecta que estamos com DSV=1, o que faz com que embora sejam 20:33 (GMT+0), na verdade com DSV=1 (período de verão) são 21h33.

Hora o sensor está a usar GMT+1, como se vê nos atributos, e o sensor está a devolver o valor para a hora seguinte, e não da hora corrente. image

Disponivel para tentar perceber como dar a volta ao tema e eventualmente ajudar. Após este tema ser "resolvido", publico o sensor de trihorário para a Coopernico (que estou a usar). Obrigado mais uma vez pelo trabalho desenvolvido!

jsantosdias commented 1 year ago

O valor que aparece no site omie é sempre hora espanhola. Às 22h de espanha, são 21h portuguesas... É esse o valor que a Coopérnico tem em conta para o seu tarifário... Nalguns gráficos até aparece em ordenação de horas: a 1ª, 2ª, que em Portugal começará às 23h...

r-amado commented 1 year ago

Mas o valor que mostrei com a tabela lateral é do site omip e não do site omie. Creio que a Coopernico se baseia no horário e preço marginal da OMIP, logo da hora portuguesa. Ou não?

luuuis commented 1 year ago

Viva,

O valor é o correcto para essa hora e a tua imagem confirma-o.

Conforme discutido anteriormente nos vários fóruns/redes (mas acho que ainda não aqui no GitHub por isso obrigado por trazeres este tema para aqui) a hora do OMIE refere-se ao fuso horário CET. Isso é muito claro no site deles e também já me foi confirmado pela Coopérnico e ainda directamente pelo OMIE a outro utilizador do grupo Autoconsumo Fotovoltaico.

Ora, o valor 2023-06-06T21:00:00+0100 designa as 21 horas do dia de hoje no fuso horário de Portugal. O "desvio" de +0100 é relativo ao UTC, um fuso horário que não aplica DST (horário de verão). Não é GMT+1, é UTC+1. No horário de verão em Portugal (excluindo Açores) será sempre UTC+1 e no horário de inverno aí sim UTC+0.

Só para martelar o mesmo ponto, estas horas representam exactamente o mesmo instante e o valor para todas é o tal 96,56.

Podes ler mais sobre o formato ISO 8601 pela net fora. Eu apresento as horas neste formato precisamente para evitar os equívocos causados por escrever só 1 ou 21 sem o contexto adicional do fuso horário.

Se não estiveres convencido ou se tiveres alguma dúvida diz pois sei que fusos horários é um tema que tem tendência a gerar confusão e assim fica já aqui a informação para outros que possam vir a ter as mesmas dúvidas.

r-amado commented 1 year ago

Ajuda-me aqui então a perceber a informação partilhada no site OMIP e OMIE, para a hora atual (22h49 - 06/06/2023) image

luuuis commented 1 year ago

Vamos fingir que moras em Espanha. A hora actual em Espanha no momento em que escreveste o comentário era 23:49 por isso no gráfico da direita terias de consultar a coluna 24 (a última hora do dia) porque a hora OMIE conta a partir de 1 e não de 0 como seria de esperar.

Como estás em Portugal deves antes consultar a coluna 23, a penúltima. Idem para a imagem da esquerda (é a penúltima linha) pela mesma lógica. consultas o valor relativo a Portugal na coluna do respectivo horário em Espanha. Edit: até me confundi a mim próprio, ainda bem que já implementei correctamente na integração. 😆

Assim já faz sentido?

r-amado commented 1 year ago

@luuuis de acordo com o tooltip/modal que apresentaste indica que todos os valores apresentados são referentes a períodos como indicas. em que o período 1 refere-se a 00:00 a 01:00 CET. Devo estar a fazer confusão, ou da hora tardia estou a dar um nó no cérebro. O que dizes faz sentido, mas então os valores dos preços marginais ES e PT no sensor não deveriam ter o mesmo valor, porque se o coordinator.py e o sensor.py utilizam a hora local do HomeAssistant, então neste momento deveria ter 89,99 para Portugal e 83 para Espanha. Não? image image

luuuis commented 1 year ago

@r-amado desculpa, eu é que te induzi em erro com o meu comentário anterior. 🤦 O valor tem de ser visto sempre na coluna do horário Espanhol, nada de saltar para a coluna do lado só porque estás em PT.

Vejamos, agora já são 23 em Portugal e 00 do dia 7 de Junho em Espanha. Logo, importa consultar a coluna 1 do dia 7. Se são 00 no fuso horário de referência é aí que temos obrigatoriamente de encontrar o nosso valor.

Em geral os preços PT/ES são iguais mas se aguentares até às 7 da manhã aí sim poderás observar uma diferença de 0,24 €/MWh entre o preço em PT e em ES. 😄😄😄

r-amado commented 1 year ago

Compreendido. Agora faz mais sentido!

luuuis commented 10 months ago

Caso alguém venha aqui ter futuramente penso que isto está mais bem explicado em Interpretação OMIE mercado diário.