Página 22 de 28

Re: EVSE inteligente

Enviado: 01 jan 2020, 10:44
por migle
Apr Escreveu:
31 dez 2019, 16:54
migle Escreveu: Eu gostava de contribuir com a comparação do comportamento do Ioniq com a cena para ver se o carro está ligado à ficha ou não. (conversa de há um ano) talvez com um vídeo timelapse.
Não estou a pereber bem o que queres fazer, podes explicar melhor?
Não te lembras, mas eu, por encontrar várias vezes a bateria descarregada, desconfiei que qualquer coisa no EVSE fazia o meu carro dormir menos profundamente. A suspeita não tem fundamento, excepto ter encontrado uma ou duas vezes as luzes de erro de carregamento a piscar. Tu falaste numa espécie de polling para ver se o carro está ligado e deste-me um comando qualquer para desligar isso.
Porém, dificilmente se confirma, porque este inverno ainda não encontrei a bateria descarregada...
Apr Escreveu:
31 dez 2019, 16:54
Neste momento o que está implementado é o que discutimos neste tópico ha uns tempos, o SOC inicial é uma variável disponivel para ser configurada no EVSE. Hoje é atualizada manualmente, através da página web ou através do bot do telegram. O esp32 tem Bluetooth, mas de ter até fazer é um salto enorme e eu nunca mexi em nada relacionado com BT. Precisaria de alguém que quisesse avançar por aí e mostrar os resultados, assim de cabeça preocupa-me o facto de ter que haver sempre o OBD ligado ao carro e ter que ser posivel recolher o SOC do maior numero de marcas/modelos de VE.
Eu tenho algum código e shell scripts para fazer logging do OBD de baixo nível, mas... Para suportar vários carros, teria de ser configurável pelo utilizador, como o Torque: qual é a mensagem enviada, e depois uma fórmula que indica os bytes na resposta utilizados e como são cozinhados para obter um SoC. Não sei se teria tempo para experimentar...

Mas seria sempre esquisito se viesse uma visita, principalmente se o meu carro estivesse ao lado...

Electricamente, é minimamente possível com um esp32 implementar o protocolo de comunicação de alto nível (HLC)?

Re: EVSE inteligente

Enviado: 01 jan 2020, 13:08
por Apr
migle Escreveu: Não te lembras, mas eu, por encontrar várias vezes a bateria descarregada, desconfiei que qualquer coisa no EVSE fazia o meu carro dormir menos profundamente. A suspeita não tem fundamento, excepto ter encontrado uma ou duas vezes as luzes de erro de carregamento a piscar. Tu falaste numa espécie de polling para ver se o carro está ligado e deste-me um comando qualquer para desligar isso.
Porém, dificilmente se confirma, porque este inverno ainda não encontrei a bateria descarregada...
Nesse aspeto o EVSE não é diferente dos demais EVSE que existem, a unica diferença é que podes controlar esses estados remotamente:
(1) Podes desligar o Piloto que equivale a ter um EVSE ligado ao carro mas sem estar ligado à corrente
(2) Podes alterar o Piloto para fazer o carro parar a carga que equivale a um EVSE ligado ao carro e á tomada mas sem permitir carregar, por uma falta externa tipo falta de terra, teste do diodo, etc. Este é a forma mais usada porque é possivel saber se o carro está ligado à ficha.

Pelo menos nos clones se usar a opção (2) há situações em que não resumem carga quando queres, e resolve-se usando a opção (1). No Ioniq realmente lembro-me de teres perguntado qualquer coisa mas como não disseste mais nada pensei que fosse curiosidade. Se fizer sentido posso adicionar ambas as opções.
migle Escreveu: Eu tenho algum código e shell scripts para fazer logging do OBD de baixo nível, mas... Para suportar vários carros, teria de ser configurável pelo utilizador, como o Torque: qual é a mensagem enviada, e depois uma fórmula que indica os bytes na resposta utilizados e como são cozinhados para obter um SoC. Não sei se teria tempo para experimentar...

Mas seria sempre esquisito se viesse uma visita, principalmente se o meu carro estivesse ao lado...

Electricamente, é minimamente possível com um esp32 implementar o protocolo de comunicação de alto nível (HLC)?
Para falar com o EVSE nesta fase só precisas de um OBD a reportar diretamente para um broker MQTT. Fica o desafio centrado apenas na parte da gestão e recolha de dados da componente bluetooth. Se me entregares dados BT de forma periodica para o broker eu depois trato de integrar o resto. Depois disso vemos que direção tomar. Não há OBD logo com um esp32 integrado? isso é que era de valor!

Re: EVSE inteligente

Enviado: 01 jan 2020, 17:05
por frankesousa
Temos aqui este:
É mesmo um obd com um esp32 e um GSM
https://shop.openenergymonitor.com/open ... 3g-europe/

Eu tenho o meu HomeAssistant a fazer pooling com o Nissan connect ev, nao tem funcionado muito mal, mas quando a Nissan lhe apetece lá vai à vida.

Tenho usado isso para parar a carga nos 80% e funciona quase sempre.

É fácil por isso a enviar o soc para o evse por mqtt

Re: EVSE inteligente

Enviado: 05 jan 2020, 11:46
por pancello
Boas! Também uso o homeassistant e a primeira coisa que me veio à cabeça é imediatamente conseguir ligar isto. O que fazes é uma automation para desligar o EVSE quando o carro atinge os 80%?

A vantagem de usares o Bluetooth é precisamente poderes usar com todos os carros. Mas eu tenho um clone também, e pelo menos o CanIon não me permite ler informação sobre o carro quando ele está desligado. Imagino que seja porque o OBD não transmite essa informação?

Usando o GSM no fundo estarás a fazer um "bypass" aos servidores da Nissan, o que é muito boa ideia. Por outro lado tens de ter um cartão SIM com um plano de dados, o que em PT é coisa cara.

Re: EVSE inteligente

Enviado: 05 jan 2020, 13:44
por frankesousa
pancello Escreveu:
05 jan 2020, 11:46
Boas! Também uso o homeassistant e a primeira coisa que me veio à cabeça é imediatamente conseguir ligar isto. O que fazes é uma automation para desligar o EVSE quando o carro atinge os 80%?
SIm, o HomeAssistant vai buscar ao servidor da nissan o SOC (com a integração direta do carwings) e com uma automação desliga o EVSE quando atinge os 80% (ou outro valor a escolha).
pancello Escreveu:
05 jan 2020, 11:46
A vantagem de usares o Bluetooth é precisamente poderes usar com todos os carros. Mas eu tenho um clone também, e pelo menos o CanIon não me permite ler informação sobre o carro quando ele está desligado. Imagino que seja porque o OBD não transmite essa informação?

Usando o GSM no fundo estarás a fazer um "bypass" aos servidores da Nissan, o que é muito boa ideia. Por outro lado tens de ter um cartão SIM com um plano de dados, o que em PT é coisa cara.
O clone se não passa para o OBD o SOC com o carro desligado então o modulo OBD/GSM também não vai conseguir obter isso!

Esse modulo que coloquei ate já tem um cartão SIM com um plano de dados pequeno mas barato, que funciona em toda a Europa penso eu. A quantidade de dados deve ser pequena se não abusar-mos nos refresh.

Re: EVSE inteligente

Enviado: 13 jan 2020, 23:52
por Apr
frankesousa Escreveu:
01 jan 2020, 17:05
Temos aqui este:
É mesmo um obd com um esp32 e um GSM
https://shop.openenergymonitor.com/open ... 3g-europe/

Muito interessante! obrigado pela partilha.

Re: EVSE inteligente

Enviado: 05 fev 2020, 14:12
por fbatista
Olá Apr,

Estou a efetuar uma instalação de alguns paineis solares e gostaria de aproveitar ao máximo para carregar o carro já que posso deixa-lo estacionado na garagem durante o dia (Trabalho mesmo ao lado de casa).
Para isso preciso de um EVSE inteligente que vá carregando de acordo com a produção.

Pode enviar-me informação e preço via PM

Obrigado

Re: EVSE inteligente

Enviado: 26 mar 2021, 21:37
por Apr
No outro dia conheci uma pessoa que tinha uns widgets no telemovel com dados instantâneos, vindos do Home Assistant. Gostei tanto que acabei por copiar a ideia e por o EVSE na pagina inicial do meu telemóvel.

Imagem


Imagem

ainda é "work in progress", nomeadamente algumas conversões de dados, há interesse num tutorial sobre como fazer isto?

Re: EVSE inteligente

Enviado: 26 mar 2021, 22:27
por VETL
Apr Escreveu:
26 mar 2021, 21:37
..há interesse num tutorial sobre como fazer isto?
Of course
:D :D 8-)

Re: EVSE inteligente

Enviado: 27 mar 2021, 01:36
por Apr
SW necessário:

- Instalação de Home Assistant, com cliente MQTT ligado a um broker
- cliente Home assistent para android
- Node-red para enviar dados para o MQTT onde está ligado o Home asisstant


Passo 1:

Usar o Node-RED para encaminhar todas as mensagens do EVSE inteligente para o broker local

Imagem

as credencias de acesso ao broker do EVSE inteligente pode ser consultado no BOT telegram executando o comando /help
Podem usar uma ligação segura ativando o SSL e usando o porto 8883 na configuração do nó.

verificar que aparecem dados do EVSE inteligente no broker local

Passo 2:
Na configuração do Home Assistant criei um ficheiro separado para os sensores:

Código: Selecionar todos

configuration.yaml

sensor: !include sensor.yaml

Código: Selecionar todos

sensor.yaml

  - platform: mqtt
    state_topic: '<mqtt_topic>/from/on'
    name: 'evse_on'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_EVamp'
    value_template: '{{ value_json.EVamp }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_EVmod'
    value_template: '{{ value_json.EVmod }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_EVsta'
    value_template: '{{ value_json.EVsta }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_EValg'
    value_template: '{{ value_json.EValg }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_Scene'
    value_template: '{{ value_json.Scene }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_eNode'
    value_template: '{{ value_json.eNode }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_eNodeA'
    value_template: '{{ value_json.eNodeA }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_T'
    value_template: '{{ value_json.T }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_V'
    value_template: '{{ value_json.V }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_I'
    value_template: '{{ value_json.I }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_P'
    value_template: '{{ value_json.P }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_CHti'
    value_template: '{{ value_json.CHti }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_CHet'
    value_template: '{{ value_json.CHet }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_CHel'
    value_template: '{{ value_json.CHel }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_CHep'
    value_template: '{{ value_json.CHep }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_CHkmh'
    value_template: '{{ value_json.CHkmh }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_TDel'
    value_template: '{{ value_json.TDel }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_TDurc'
    value_template: '{{ value_json.TDurc }}'

  - platform: mqtt
    state_topic: '<mqtt_topic>/from'
    name: 'evse_ChV'
    value_template: '{{ value_json.ChV }}'
substituir <mqtt_topic> pelo topico especifico que aparece.

reiniciar o Home assistant


Passo 3:
No Home assistant deverão aparecer os sensores com dados.

ir a Developer tools -> Template

e colocar este codigo na janela para validar o template

Código: Selecionar todos

<html><body>
{% if is_state("sensor.evse_garagem_on", "off") %}
<p>{{ "\u274C" }} EVSE </p>
{%- else -%}
 <p>{{ "\u2705" }}EVSE</p>
{%- endif %}
{%- if is_state("sensor.evse_garagem_EVsta", "3") %}
<p>{{"\uD83D\uDE97"}} CHARGE </p>
<p>{{"\u231B"}} {{ ( states("sensor.evse_garagem_CHti") | float / 60) | round(0)  }}min </p>
<p>{{"\u26A1"}} {{states("sensor.evse_garagem_V")|round(0)}}V {{states("sensor.evse_garagem_I")|round(1)}}A {{ (states("sensor.evse_garagemPV")|float / 1000)|round(1)}}kW </p>
<p>{{"\uD83C\uDF21\uFE0F"}} {{states("sensor.evse_garagem_T") | round(0)  }}ºC </p>
{% elif is_state("sensor.evse_garagem_EVsta", "1") %}
<p>{{"\uD83D\uDE97"}} N/CON </p>
{% elif is_state("sensor.evse_garagem_EVsta", "2") %}
<p>{{"\uD83D\uDE97"}} CONN </p>
{% elif is_state("sensor.evse_garagem_EVsta", "253") %}
<p>{{"\uD83D\uDE97"}} SLEEP</p>
<p>{{"\u231B"}} {{ ( states("sensor.evse_garagem_CHti") | float / 60) | round(0)  }}min </p>
<p>{{"\u26A1"}} {{states("sensor.evse_garagem_V")|round(0)}}V {{states("sensor.evse_garagem_I")|round(1)}}A {{ (states("sensor.evse_garagem_P")|float / 1000)|round(1)}}kW </p>
<p>{{"\uD83C\uDF21\uFE0F"}} {{states("sensor.evse_garagem_T") | round(0)  }}ºC </p>
{% elif is_state("sensor.evse_garagem_EVsta", "254") %}
<p>{{ "\u274C" }} Disabled! </p>
{% elif is_state("sensor.evse_garagem_EVsta", "255") %}
<p>{{ "\u274C" }} Disabled! </p>
{% else  %}
<p>{{"\uD83D\uDE97"}} ERROR!</p>
{%- endif %}
</body></html>
Imagem



Passo 4:
seguir este procedimento, no telemovel
https://companion.home-assistant.io/doc ... /#template

- Long press on any open space in the home screen
- Scroll down to Home Assistant in the widget list
- Drag the Template widget to an open space on the home screen
- Fill in the template data and observe the rendering below ---> copiar o codigo do passo 3
- Save the widget


NOTA: eu nao percebo nada de Home Assistant
NOTA2: ajudem-me a converter o sensor "evse_CHti" que representa a carga em segundos para algo do tipo "horas:minutos"