RAPINOLOGYRapin + Technology

Application pour Homey Pro

Tendances des capteurs

Transformez n'importe quel capteur en tendance : monte, descend ou stable, avec le rythme.

En développement v1.1.1

N'importe quel capteur numérique devient une tendance : à la hausse, à la baisse ou stable, avec le rythme par heure et une fiabilité qui dit de combien la pente dépasse le bruit du capteur. S'y ajoutent une prévision à échéance choisie et le temps restant avant d'atteindre un seuil. Une température qui monte de deux dixièmes par heure n'appelle pas la même réaction qu'une température qui monte de deux degrés.

Appareils

Tendance 5 mesures

  • Tendance
  • Pente
  • Fiabilité
  • Prévision
  • Seuil atteint dans

Dashboards

Un widget est une tuile que l'on pose sur un Dashboard de l'app Homey : il affiche ses informations sans qu'on ouvre quoi que ce soit.

Historique

Historique 345 px de haut

La valeur et sa pente, puis la courbe lue dans Insights sur une heure, six heures, un jour ou sept jours, en ligne ou en aire, avec la prévision en pointillés et le seuil quand il est à portée.

Tendance

Tendance 269 px de haut

La dernière mesure et sa pente par heure, la fiabilité, une courbe lissée sur la fenêtre observée, et l'échéance vers le seuil quand elle existe. Tant que les points manquent, ou si le signal est trop irrégulier, la tuile le dit.

Le calcul, étape par étape

Une tendance est facile à annoncer et difficile à tenir : deux mesures suffisent à tracer une droite, et un capteur bruyant en trace une nouvelle à chaque relevé. Voici ce que l'app fait pour ne dire « ça monte » que lorsque ça monte vraiment.

  1. 01

    Les mesures de départ

    couverture < 60 % de la fenêtre ou n < 10 → compléter par Insights

    Après une installation, une mise à jour ou un redémarrage, l'app ne dispose que des mesures qu'elle avait enregistrées, parfois d'aucune. Si elles couvrent moins de 60 % de la fenêtre observée ou comptent moins de dix points, elle lit l'historique Insights du capteur, à la résolution la plus fine qui couvre la fenêtre, et ne s'en sert que pour combler les trous : les mesures réelles priment. Aucun calcul ni aucune carte ne part avant la fin de cette lecture, bornée à vingt secondes.

  2. 02

    Le lissage, facultatif

    ṽᵢ = médiane{ vⱼ : |tⱼ − tᵢ| ≤ L ⁄ 2 }, L = 3, 5 ou 10 min

    Un débit réseau ou une puissance instantanée arrivent en rafales. Theil-Sen résiste à un pic isolé, pas à une série de rafales, et la courbe en tirerait des dents de scie. Sur demande, chaque mesure est donc remplacée par la médiane des mesures prises dans une fenêtre de trois, cinq ou dix minutes centrée sur elle : la médiane écarte une rafale plus courte que la moitié de la fenêtre au lieu de l'étaler sur ses voisines, et la médiane d'une droite reste la droite, sans retard. En bout de série, la fenêtre est tronquée plutôt que de décaler toute la courbe. Le réglage est désactivé par défaut.

  3. 03

    La droite, par Theil-Sen

    pente = médiane des (vⱼ − vᵢ) ⁄ (tⱼ − tᵢ), pour toutes les paires i < j

    La pente n'est pas ajustée par moindres carrés mais prise comme la médiane des pentes de toutes les paires de points. Une valeur aberrante n'entre que dans les paires qui la contiennent, donc une minorité, et la médiane l'écarte. Les moindres carrés, eux, minimisent des carrés d'écarts : un seul point fou y pèse plus que tous les autres réunis. Sur trois cents points, cela fait 44 850 paires, quelques millisecondes.

  4. 04

    Le bruit du capteur

    σ = 1,4826 × médiane( |rᵢ − médiane(r)| ), avec rᵢ = vᵢ − (a + b·tᵢ)

    Le bruit est mesuré sur les écarts à la droite, pas sur les valeurs brutes : une montée franche n'est pas du bruit. On emploie l'écart absolu médian, que le facteur 1,4826 ramène à un écart-type. Un plancher le protège d'un piège : sur un capteur quantifié, un anémomètre en kilomètres-heure entiers par exemple, plus de la moitié des écarts peuvent être identiques et l'estimation tomber à zéro. Le bruit ne peut donc pas être annoncé plus fin que la moitié du pas du capteur.

  5. 05

    L'incertitude sur la pente

    σ_pente = σ ⁄ ( √n × σ_t ) × 3600

    Le bruit d'une mesure n'est pas le bruit de la pente. Plus les points sont nombreux, plus la pente est sûre, d'où la racine de n ; et plus ils sont étalés dans le temps, plus elle l'est aussi, d'où l'écart-type des horodatages au dénominateur. Dix mesures prises en une minute disent beaucoup moins d'une tendance que les mêmes dix étalées sur une heure.

  6. 06

    La zone morte

    zone morte = k × σ_pente, avec k = 3 par défaut

    En deçà de trois fois son incertitude, une pente ne se distingue pas du bruit : l'app annonce « stable » plutôt que d'inventer un mouvement. Le facteur se règle, et il peut être remplacé par un seuil fixe en unités par heure quand on sait ce qu'on cherche.

  7. 07

    La fiabilité

    fiabilité = min( 100 ; 50 × |pente| ⁄ (k × σ_pente) )

    Elle dit de combien la pente dépasse son propre bruit, et rien d'autre. Cinquante signifie que la pente vaut exactement la zone morte, cent qu'elle en vaut le double. Une pente franche sur un capteur bruyant peut donc être très fiable, et une pente minuscule sur un capteur précis ne pas l'être.

  8. 08

    La prévision et l'échéance

    v̂ = a + b·t_dernier · prévision = v̂ + b × horizon · échéance = (seuil − v̂) ⁄ b

    Les deux partent de la valeur du modèle au dernier instant, jamais de la dernière mesure brute : extrapoler depuis un point bruité propagerait ce bruit. L'échéance vers un seuil rend une valeur vide dans les trois cas où un chiffre mentirait, à savoir une pente dans la zone morte, un seuil déjà franchi ou situé du mauvais côté, et une échéance au-delà de vingt-quatre heures, distance à laquelle la pente aura changé plusieurs fois.

  9. 09

    L'hystérésis

    changement retenu si confirmé 2 fois de suite ET direction précédente tenue ≥ 300 s

    C'est la seule chose qui empêche un volet de battre autour de son seuil. Un changement de direction n'est retenu qu'après deux confirmations consécutives, et seulement si la direction précédente a tenu au moins cinq minutes. Les deux conditions sont exigées ensemble.

  10. 10

    Le retournement

    fenêtre coupée en deux, chaque moitié ajustée ; signes opposés et hors zone morte → pic ou creux

    Une droite unique ne voit pas un sommet : elle le moyenne. La fenêtre est donc coupée en deux moitiés, chacune ajustée séparément, chacune devant compter au moins quatre points. Si les deux pentes sortent de la zone morte et sont de signes opposés, l'app annonce un pic quand la première montait, un creux quand elle descendait.

Cartes de Flow

Homey écrit une automatisation en trois temps : quand quelque chose arrive, et si telle condition est vraie, alors fais ceci. Ce qui apparaît sur fond clair, comme rayon, est un paramètre que vous réglez dans le Flow. Chaque condition existe aussi à la forme négative, Homey la retourne d'un clic.

Quand 5

  • La valeur s'écarte de son habitude de écart-type écarts-types
  • La tendance est devenue sens
  • seuil sera atteint dans moins de minutes min
  • type a été détecté
  • Le capteur semble figé

Et 4

  • La fiabilité est d'au moins pourcentage %
  • La tendance est sens
  • seuil sera atteint avant minutes min
  • La pente est comparaison valeur par heure

Quoi de neuf ?

  1. Version 1.1.0

    Tendances des capteurs 1.1.0 ajoute un widget Historique et rend la tuile Tendance plus calme.

    • Nouveau widget Historique : la courbe d'une tendance sur la dernière heure, 6 heures, 24 heures ou 7 jours, lue dans Insights, en ligne ou en aire.
    • La tuile Tendance trace une courbe lissée, et un réglage d'appareil facultatif, « Lissage des mesures », calme les capteurs très saccadés comme un débit réseau ou une puissance instantanée.
    • Dans les deux widgets, l'appareil de tendance se choisit dans une liste, avec recherche.
    • Après un redémarrage, une tendance repart aussitôt grâce à l'historique Insights au lieu de repartir de zéro.
    • Un signal trop irrégulier pour être fiable est signalé comme tel sur la tuile.
    • La prévision n'affiche plus 0 au démarrage, la carte « … sera atteint dans moins de … min » donne l'échéance de son propre seuil, et les cartes ne se déclenchent plus de nouveau après un redémarrage.
    • Les tuiles adoptent une présentation commune avec cinq fonds, et les températures très basses, jusqu'à −50 °C, restent lisibles et justes.

    Modifiez un Dashboard, ajoutez un widget et choisissez Tendances des capteurs, puis Tendance ou Historique. Choisissez l'appareil de tendance dans la liste (vide, le premier s'affiche), la période et le style pour Historique, puis un fond : bleu profond, ardoise, prune, forêt ou sable.

    L'app est disponible en anglais, néerlandais, allemand, français, italien, espagnol, danois, norvégien et suédois.