Como adicionar estátisticas dos Gastos de Combustível de um veículo (Fuelio)

Viva, quero partilhar convosco algo que vi aqui e achei interessante.
A aplicação Fuelio para Android, oferece a possibilidade a quem instala de poder controlar os custos de combustível de veículos.

A app, oferece-nos a possibilidade de criar um backup para o dropbox ou google drive, sendo assim possível de enviar eles valores para o frontend do nosso HA.

Estes valores que aparecem são apenas representativos para ilustração.

Deixo aqui a minha configuração:

homeassistant:

  customize:


    sensor.kilometros_totais:
      icon: mdi:car-side
      friendly_name: Total Km´s
    sensor.consumo_medio:
      icon: mdi:gas-station
      friendly_name: Consumo Médio
    sensor.data_ultimo_abastecimento:
      icon: mdi:calendar
      friendly_name: Último Abastecimento
    sensor.litros_ultimo_abastecimento:
      icon: mdi:gas-station
      friendly_name: Qnt Litros do Último Abastecimento
    sensor.custo_total_ultimo_abastecimento:
      icon: mdi:currency-eur
      friendly_name: Custo Total Último Abastecimento
    sensor.custo_litro_ultimo_abastecimento:
      icon: mdi:currency-eur
      friendly_name: Custo do Litro Último Abastecimento     
    sensor.custos_abastecimento_ano_actual:
      icon: mdi:currency-eur
      friendly_name: Custo Total do Ano Corrente
    sensor.custo_abastecimento_ano_anterior:
      icon: mdi:currency-eur 
      friendly_name: Custo Total Ano anterior
    sensor.custo_medio_mensal:
      icon: mdi:currency-eur
      friendly_name: Custo Médio Mensal
    sensor.custo_medio_dia:
      icon: mdi:currency-eur
      friendly_name: Custo Médio Dia



group:

  combustiveis:
    view: yes
    icon: mdi:gas-station
    entities:
      - group.fuelio

  fuelio:
    control: hidden
    name: Audi A4
    entities:
      - sensor.kilometros_totais
      - sensor.consumo_medio
      - sensor.data_ultimo_abastecimento
      - sensor.litros_ultimo_abastecimento    
      - sensor.custo_total_ultimo_abastecimento
      - sensor.custo_litro_ultimo_abastecimento
      - sensor.custos_abastecimento_ano_actual
      - sensor.custo_abastecimento_ano_anterior
      - sensor.custo_medio_mensal  
      - sensor.custo_medio_dia
  
  

  
   
sensor:

#SENSOR KILOMETROS TOTAIS
- platform: command_line
  name: kilometros_totais
  command: >-
   cat /config/Fuelio/vehicle-3-sync.csv | grep '"*"' | cut -d "," -f 2 | awk 'NR==6' | sed 's/"//g'
  unit_of_measurement: "Km"
  scan_interval: 300
  
#CONSUMO MÉDIO
- platform: command_line
  name: consumo_medio
  command: >-
    cat /config/Fuelio/vehicle-3-sync.csv | grep '"*"' | cut -d "," -f 6 | awk 'NR==7' | sed 's/"//g'
  unit_of_measurement: "lt/100 Km"
  scan_interval: 300
#DATA DO ULTIMO ABASTECIMENTOO
- platform: command_line
  name: data_ultimo_abastecimento
  command: >-
    cat /config/Fuelio/vehicle-3-sync.csv | grep '"*"' | cut -d "," -f 1 | awk 'NR==6' | sed 's/"//g'
  scan_interval: 300
#lITROS DO ULTIMO ABASTECIMENTO
- platform: command_line
  name: litros_ultimo_abastecimento
  command: >-
    cat /config/Fuelio/vehicle-3-sync.csv | grep '"*"' | cut -d "," -f 3 | awk 'NR==6' | sed 's/"//g'
  unit_of_measurement: "lt"
  scan_interval: 300
#CUSTO TOTAL DO ULTIMO ABASTECIMENTO
- platform: command_line
  name: custo_total_ultimo_abastecimento
  command: >-
    cat /config/Fuelio/vehicle-3-sync.csv | grep '"*"' | cut -d "," -f 5 | awk 'NR==6' | sed 's/"//g'
  unit_of_measurement: "€"
  scan_interval: 300
#CUSTO LITRO DO ULTIMO ABASTECIMENTO
- platform: command_line
  name: custo_litro_ultimo_abastecimento
  command: >-
    cat /config/Fuelio/vehicle-3-sync.csv | grep '"*"' | cut -d "," -f 15 | awk 'NR==6' | sed 's/"//g'
  unit_of_measurement: "€"
  scan_interval: 300
#CUSTO DOS ABASTECIMENTOS DO ANO ACTUAL
- platform: command_line
  name: custos_abastecimento_ano_actual
  command: >-
    grep "$(date '+%Y')" /config/Fuelio/vehicle-3-sync.csv | cut -d "," -f 5 | sed 's/"//g' | awk '{sum+=$1} END {print sum}'
  unit_of_measurement: "€"
  scan_interval: 300
#CUSTO DOS ABASTECIMENTOS DO ANO ANTERIOR
- platform: command_line
  name: custo_abastecimento_ano_anterior
  command: >-
   grep "$(date +%Y -d "-1 years")" /config/Fuelio/vehicle-3-sync.csv | cut -d "," -f 5 | sed 's/"//g' | awk '{sum+=$1} END {print sum}'
  unit_of_measurement: "€"
  scan_interval: 300
#CUSTO MEDIO MENSAL E CUSTO MEDIO DIARIO
- platform: template
  sensors:
    custo_medio_mensal:
      unit_of_measurement: "€"
      friendly_name: Custo Medio Mensal
      value_template: "{{ ((states('sensor.custos_abastecimento_ano_actual') | int) / 12 ) | round(2)}}"
    custo_medio_dia:
      unit_of_measurement: "€"
      friendly_name: Custo médio Diario
      value_template: "{{ ((states('sensor.custos_abastecimento_ano_actual') | int) / 365 ) | round(2)}}"

Eu como uso Hass.io e uso o pc todos os dias, acabei por instalar a aplicação do dropbox no meu PC onde aparece uma pasta partilhada, e sempre que faço uma alteração na aplicação android, o ficheiro é enviado automaticamente para a nuvem que por sua vez, sincroniza com a minha pasta, e através do addon syncthing que podem ver neste tutorial:
⭐ Backup e Replicação Automática no HASSIO(*) com versioning é depois possível ter esse ficheiro dentro da pasta config/Fuelio. (Essa pasta tem que ser criada).
Após isso os valores ficam sincronizados sempre entre o HA e a app.

Não se esqueçam de no vosso configuration.yaml colocarem a pasta na whitelist_external_dirs

homeassistant:
  name: Geral
  latitude: !secret latitude_home
  longitude: !secret longitude_home
  elevation: 17
  unit_system: metric
  time_zone: Europe/Lisbon
  customize: !include customize.yaml
  customize_glob: !include customize_glob.yaml
#  customize_domain: !include customize_domain.yaml
  packages: !include_dir_named packages
  whitelist_external_dirs:
    - /config/Fuelio

Para quem não usa Hassio, ou até para verem mais detalhes , podem ver o artigo original de onde retirei a informação.
Fonte

1 Curtiu

Para comentar este tópico, por favor utilizem o tópico abaixo

Boa tarde… O que quer dizer - f5, NR==6?

São células do ficheiro?

Obrigado

Será que você conseguiu resolver esse problema?


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


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