Capteurs tores, branchements tableau et injection

oui mais cable Enedis pas accessible, donc je ne peux pas avoir de capteur global vu que j’ai 2 départs sur le disjoncteur maitre Enedis.
Ou alors un tore qui engloberai les deux cables ? Ca existe ? pas chez Shelly en tous cas… enfin je crois pas

oui rien t’empêche de mettre 2 fils dans le tore (si il est assez gros pour)

exact, mais car il y a un « MAIS »…

L’installateur de ma PAC avait branché ce 2ème minitableau dédié PAC directement dans le bornier en bas du disjoncteur Enedis.
Or en touchant les cables, je constate que la vis du neutre est libre, les 2 cables tableau principal et PAC ne sont donc pas serrés !!! Et c’est comme ça depuis 1 an !!!

Appel ENEDIS, ils arrivent, et je vais brancher le minitableau dans le bornier du tableau principal. Et ça sera nettement plus facile pour prendre les 2 cables dans un tore.

A suivre…

Salut
Enedis intervient sur la partie abonné ? Je suis surpris.

oui, ils m’ont d’abord dit que non, mais là c’est le bornier de leur disjoncteur qui ne serre plus, donc pas d’autre solution que changer ce disjoncteur, mais ils m’ont précisé qu’un seul cable sera rebranché dedans et non deux comme actuellement. Donc je vais brancher mon minitableau pac dans le bornier du tableau principal ce qui sera nettement mieux.

Voilà disjoncteur changé, et seul le tableau principal rebranché dedans, j’ai ensuite branché le tableau PAC dans le tableau principal et maintenant c’est plus propre et ça donne ça au niveau capteurs

T1 = Production panneaux en négatif
T2 = Consommation Enedis gloable diminuée de la production panneaux, ou injection en négatif
T3 = conso de la PAC

et voilà un 1er résultat en graphe, brut de fonderie…
Conso Hors Solaire = T2 - T1
Global = T2
Panneaux = T1 (négatif)
PAC = T3
la comparaison Ecojoko et Shelly semble cohérente, reste à vérifier pour l’injection

Donc je reviens au problème initial, à savoir écrire ma formule pour calculer un sensor que j’appelerai gonthiers_injection

les formules se simplifient et deviennent :
Si T2<0 alors injection = T2, sinon injection = 0
J’ai commencé à écrire mais reste à mettre le dddddd et eeeeee
Franchement malgré les recherches je trouve pas mon bonheur…

    gonthiers_injection:
      unit_of_measurement: W
      value_template: >-
        {% if states('sensor.global_power') | float(default=0) < 0 %}
          dddddd
        {%- else %}
          eeeeee
        {% endif -%}

Bah ddddd=T2 et eeeee=0

bon finalement j’ai fait ça

gonthiers_injection:
  unit_of_measurement: W
  value_template: >
    {% if states('sensor.global_power') | float(default=0) < 0 %}
      {{ states('sensor.global_power') }}
    {% else %}
      0
    {% endif %}
gonthiers_injection:
  unit_of_measurement: W
  value_template: >
    {% if states('sensor.global_power') | float(0) < 0 %}
      {{ states('sensor.global_power') | float(0) * -1}}
    {% else %}
      0
    {% endif %}

Si tu veux ton résultat en positif

1 « J'aime »

Merci du retour, pour l’instant je l’ai laissé en négatif, mais effectivement ce que je cherchais c’était la syntaxe complète et j’ai fini par la demander à Copilot, l’IA de Microsoft, et voilà le retour
Bon, ça semble assez performant ce truc…

finalement cette formule ne semble pas créer de valeur zéro pour chaque intervalle, lorsque je graphe cette variable voilà ce que j’obtiens :
image
ici c’est la variable injection et on voit qu’elle n’a que 2 points sur le graphe, les autres sont nulls, n’ont pas de valeur. Comme il n’y a eu aucune injection il est normal que l’on n’ait pas mis d’autres valeurs mais dans ce cas je devrais avoir 0 partout pour l’instant…

voilà mon sensor yaml avec une syntaxe légèrement différente mais correcte je pense, et valeur 120 au lieu de 0 pour test, une valeur 120 a été graphée, puis plus rien…

- platform: template
  sensors:
    gonthiers_conso_hors_solaire:
      unit_of_measurement: W
      value_template: "{{ states('sensor.global_power') | float - states('sensor.panneaux_power') | float }}"
    gonthiers_injection:
      unit_of_measurement: W
      value_template: >
        {% set global_power = states('sensor.global_power') | float(default=0) %} 
        {% if global_power < 0 %} 
          {{ global_power }} 
        {% else %} 
          120 
        {% endif %}
    pac_g_power:
      unit_of_measurement: W
      value_template: "{{ states('sensor.pac_e_power') | float + states('sensor.pac_i_power') | float }}"

je cherche et j’ai tenté de remplacer la valeur fixe de 120 dans la branche ELSE par la valeur d’un autre sensor qui varie tout le temps, et là ça fonctionne, je retrouve bien la valeur de ce sensor, avec quelques valeurs nulles de temps en temps malgré tout.

donc il semblerait que Influxdb ne mets aucune valeur pour la variable si elle ne change pas de valeur, est-ce juste ça la raison ?