Bom dia a todos.
Antes de mais, muito obrigado por todas as dicas. Já tenho bastante matéria para estudar entre mariaDB, template sensor, google sheets, rust, e EVCC.
Deixo umas notas extra para o caso de terem mais alguma ideia que me possa ajudar:
Atualmente eu já tenho um automatismo, simples a funcionar. Percebo quando dizem que devemos facilitar em vez de complicar, mas a parte simples já eu tenho e funciona, apenas não funciona com o preciosismo que eu quero. Por exemplo, programei o carro para carregar apenas até aos 70% e esta manhã tinha 73%… São erros insignificantes destes.
Contudo, o que procuro é otimizar esta situação procurando estar mais perto da perfeição. O objetivo nem é tanto conseguir carregar (que já o faço), mas com tudo isto, aprender muito mais sobre automação, programação e Home Assistant.
@Duarte_Santos, abordei o tema da tensão do lado AC (e pensava que era a isso que se referia) porque no meu caso tenho cerca de 30 a 40 metros entre o quadro do apartamento e o quadro da garagem e apesar de em casa ter sempre cerca de 240 V (estou ao lado de um PT público), na garagem, conforme estou a carregar ambos os carros e conforme a corrente de carga, chego a ter 220 V. Apenas quis referir que isso acaba por não ser importante porque o inversor compensa consumindo mais corrente e assim mantendo a potência.
Em termos do código que partilha (e muito agradeço), os input number eu já tenho criados e são exatamente mais ou menos como indica (utilizo na automatização que estou atualmente a utilizar). O meu problema com a tabela é que preciso de uma mais complexa do que a que apresenta e é isso que eu não consigo fazer.
A tabela que apresenta funcionaria como indicação do tempo de carga para cada variação de percentagem (por exemplo, 100 minutos para 10 % e 200 minutos para 20 %)… Isso é o que eu tenho neste momento… e é o que falha porque já percebi que o tempo para carregar 10% é diferente se for para carregar a bateria dos 10% aos 20% ou se for para carregar a bateria dos 60% aos 70%…
Por isso é que o que eu procuro é criar uma tabela que tenha duas entradas e me devolva o tempo de carregamento entre esses dois valores, ou seja, uma tabela que tenha em x os valores do SoC inicial e em y os valores do SoC final e o valor entre os dois é que é o tempo, ou seja, algo que eu possa pedir:
Tabela, diz-me lá o tempo de carregamento entre 10% e 20% e obtenho, por exemplo o valor 90…
Tabela, diz-me lá o tempo de carregamento entre 60% e 70% e obtenho, por exemplo, o valor 110…
Depois vou querer complicar isto com uma tabela destas para cada corrente/potência de carregamento (daí o conceito da tabela 3D), mas neste momento não estou a conseguir sequer criar esta tabela… ou melhor, consigo mas é impraticável: não posso criar um template sensor para o SoC inicial de 1% e então colocar todos os valores de tempo que demora a carregar de 1% até 100% (100 linhas). Depois outro template sensor para o SoC inicial de 2%… por aí a fora até ter 100 template_Sensor… escolhia, em função do SoC inicial qual o template Sensor a utilizar e aí conseguia obter o tempo de carregamento conforme o SoC final que quero…
Depois teria ainda de multiplicar estes 100 template sensor pelo número de variáveis de corrente… Se tivesse, por exemplo, 10 patamares de corrente, seriam ao todo 1.000 template sensor para fazer isto…
É impraticável e tenho a certeza absoluta que haverá alguma forma elegante e simples de o fazer, porque trata-se apenas de uma tabela mas com referências pesquisáveis tanto em x como em y para me dar o valor que cumpre ambos os requisitos.
Mas obrigado por tudo e vou continuar a pesquisar e explorar através das indicações que já me deram.
Muito obrigado.
Se conseguir chegar a algum lado, partilho as minhas descobertas por aqui. Acredito que quando o fizer muito pessoal vai dizer: ah… não tinha percebido que era isso… isso eu também sei fazer…
Notem: é algo teoricamente simples e que acho que o HA deve fazer de raíz… É uma tabela… vejam quue, de forma direta e até com as dicas do template sensor, na realidade não estou a fazer uma tabela, estou a ver uma lista e vou retirar um valor dessa lista, não de uma tabela que associa um valor x e um valor y para me dar o resultado… Uma espécie de batalha naval…
Como faço uma batalha naval no HA onde eu possa pesquisar por A1 ou C5 e ele respoda água ou tiro no porta-aviões?
Mais uma vez, um muito obrigado e votos de bom fim de semana a todos (@Duarte_Santos @tretabyte @wnn @pjpeartree)