Mettre une limite dans une valeur d'un sensor

Bonjour
Pas sure d’etre au bon endroit, désolé si y’a erreur

Je cherche le moyen de « surveiller » une valeur.
Je fais un calcul de dériver pour suivre une pente, la fonction dérivating marche bien
Mais des fois j’ai des enormes erreurs suite à une lecture de valeur erroné, pour cela je voudrais filtrer ma valeur
En gros, si ma valeur est négative ou supérieur à une valeur X, la valeur ne serait pas prise en compte

Je cherche dans les value_template mais sans résultat.
Je cherche également à filtrer sur une période de la journée (exemple : entre midi et 14h)

Merci de vos pistes

Ajoute ton code… :innocent:

merci mais j’ai pas de code, rien à proposer :frowning:

Mais du coup, comment tu fait :

ah, oui, désolé

- platform: derivative
  source: sensor.mqtt_ti_hchp
  name: Puissance inst HP
  round: 0
  unit_time: h # the resulting "unit_of_measurement" will be °C/h if the sensor.temperate has set °C as it's unit
  time_window: "00:10:00"  # we look at the change over the last half hour

voila

J’avais complètement oublié ta demande :flushed:

Je ferais le calcul de la dérivée sur une entité intermédiaire qui se mettrait à jour uniquement sur la validité de tes conditions.

Pour cela, je passerais donc par un input_number comme ceci :

  1. Mise a jour du nombre par une automatisation :
alias: Mise à jour de l'entité
description: ''
trigger:
  - platform: state
    entity_id: sensor.mqtt_ti_hchp
condition:
  - condition: numeric_state
    entity_id: sensor.mqtt_ti_hchp
    above: '0'
    below: '100'
action:
  - service: input_number.set_value
    target:
      entity_id: input_number.mqtt_ti_hchp
    data:
      value: "{{ states('sensor.mqtt_ti_hchp')|float }}"
mode: single

et ensuite, tu utilises l’entité nombre dans ton calcul de dérivée :

- platform: derivative
  source: input_number.mqtt_ti_hchp
  name: Puissance inst HP
  round: 0
  unit_time: h
  time_window: "00:10:00"

Tiens nous au courant :+1:

1 « J'aime »