[Tuto] Home assistant et MsunPV
- Tochy
- Auteur du sujet
- Hors Ligne
- Membre platinium
- Messages : 433
- Remerciements reçus 95
La boucle tourne tant que la condition est vrai oui mais ton automatistion se relance à chaque changement d'etat du xml. Si au changement d'etat la condition est toujours vrai la boucle continue sinon elle s'arrête.
Pour le coup de l'heure, integre la condition de temps dans la boucle
Declencheur: When msunpv_xml changes
Condition: Time condition (9h->14h)
Action 1:
Repeat an action while Test if 2 conditions match is true
Test if 3 conditions match
* Confirm % Sortie 2 mpvsun is above 300
* Confirm Puissance réseau is above below 50
* Confirm Time condition (9h->14h)
=>Activer Radiateur
=> Attendre que le temps passe à 8secondes
Action 2:
=> Désactiver Radiateur
L'action 2: sert a couper le radiateur des que sort de la boucle
Connexion ou Créer un compte pour participer à la conversation.
- syl2222fr
- Hors Ligne
- Membre elite
- Messages : 212
- Remerciements reçus 17
Je vais attendre 24h pour voir comment ça se comporte , car, j'ai le sonoff flashé du radiateur qui avait tendance à reboot/planter uniquement durant le créneau ou l'automatisation fonctionnait et , j'aimerai bien voir si cela a un rapport ..
Le plus compliqué est , et reste, le fait qu'en journée, j'ai pas vraiment d’accès .Du coup, le debug est bien compliqué et le soir, j'ai plus de soleil pour faire les tests (mais, surtout , pas le temps)
Connexion ou Créer un compte pour participer à la conversation.
- Paps42
- Hors Ligne
- Membre premium
- Messages : 156
- Remerciements reçus 35
merci pour tes infos sur home assistant.
j'étais parti a tester Jeedom ou j'avais réussi a intégré le msunpv et tu m'a fait de l'œil avec ton HA donc je vais tenter l'expérience.
as tu une image de ce que cela donne sur ta page de présentation de HA, niveau design et commande ?
c'est pour avoir une idée avant de me lancer.
Merci
Bonne journée
@+
Connexion ou Créer un compte pour participer à la conversation.
- Tochy
- Auteur du sujet
- Hors Ligne
- Membre platinium
- Messages : 433
- Remerciements reçus 95
Je n'ai pas vraiment d'exemple concret à te montrer car pour l'instant je me sert juste des valeurs remontées dans Home Assistant pour des automatisations.
J'ai vu ce que tu as fais sur jeedom ard-tek.com/index.php/forum/vos-installa...om-et-le-msunpv#9268 et au niveau de l'affichage des valeurs il n'y a pas de probleme par contre faire des switch 3 positions je ne sais pas si c'est réalisable avec ce type de design.
On peut faire des boutons qui lancent les commandes sans soucis.
J'ai fait afficher vite fait quelques valeurs et une commande.
Quand on clique sur la commande Autobal l'icone passe en bleu pour montrer l'état et derrière un automatisation lance le script pour commander le routeur en fonction de cet état.
L'automatisation ressemblerai à:
Quand autobal change d'etat
- Choix 1 : autobal passe de Off à On
Lance le service autobal_on
- Choix 2: autbal passe de On à Off
Lance le service autobal_off
Connexion ou Créer un compte pour participer à la conversation.
- Paps42
- Hors Ligne
- Membre premium
- Messages : 156
- Remerciements reçus 35
J’ai réussi à récupérer les informations avec ton bloc code qu’il faut que j’adapte car j’ai un 4x4 donc pas tout à fait les mèmes info qui remontent.
Par exemple le routage toi c’est des % et moi des watts…
Pour le moment j’ai affiché juste ça :
Question parallèle tu as réussi à faire fonctionner le module energy de HA avec les données du msunpv ?
De mon côté j’arrive pas à sélectionner le sensor récupéré !
@+
Pièces jointes :
Connexion ou Créer un compte pour participer à la conversation.
- Tochy
- Auteur du sujet
- Hors Ligne
- Membre platinium
- Messages : 433
- Remerciements reçus 95
Il faut modifier :
msunpv_outbal:
unique_id: "msunpv_outbal"
friendly_name: "% routage cumulus"
value_template: >-
{{ (state_attr('sensor.msunpv_xml', 'inAns')|replace(" ","")|replace(",",".")).split(";")[2] |int }}
unit_of_measurement: "%"
msunpv_outbal:
unique_id: "msunpv_outbal"
friendly_name: "% routage cumulus"
value_template: >-
{{ (state_attr('sensor.msunpv_xml', 'inAns')|replace(" ","")|replace(",",".")).split(";")[2] |float }}
unit_of_measurement: "W"
Pour les sondes et entrées supplémentaires tu rajoutes d'autres sensors comme ceux ci-dessus en ajustant le split et le float|int en fonction de ce que tu veux.
Tu devrais avoir l ordre des sondes à la ligne <typAns> et celui des compteurs à la ligne <typCpt> du fichier http://IP_DU_MSUNPV/index.xml du MsunPV (différent du status.xml)
<xml>
<paramSys>11:01:51;25/03/2023;On;01:00;0,0;MS_PV2_2b;5.0.1;0000220;103c;103a;00:00;00:00</paramSys>
<typAns>PowRéso;1;6:PowP.V;1;6:OutBal;0;3:OutRad;0;3:VoltRés;1;4:T_Bal1;1;18:T_SDB;1;18:T_Amb;1;18:S9;0;0:S10;0;0:S11;0;0:S12;0;0:S13;0;0:S14;0;0:S15;0;0:S16;0;0:</typAns>
<typouts>R_Bal1;0;2:Rad_SDB;0;1:A3;0;0:A4;0;0:A5;0;0:A6;0;0:A7;0;0:A8;0;0:A9;0;0:A10;0;0:A11;0;0:A12;0;0:A13;0;0:A14;0;0:A15;0;0:A16;0;0:</typouts>
<cmdM0>3;0;Comd Manu/Auto;ManuBal;AutoBal;ManuRad;AutoRad;</cmdM0>
<cmdM1>0;0;Commande 2;Param1;Param2;Param3;Param4;</cmdM1>
<cmdM2>0;0;Commande 3;Param1;Param2;Param3;Param4;</cmdM2>
<cmdM3>0;0;Commande 4;Param1;Param2;Param3;Param4;</cmdM3>
<cmdM4>0;0;Commande 5;Param1;Param2;Param3;Param4;</cmdM4>
<cmdM5>0;0;Commande 6;Param1;Param2;Param3;Param4;</cmdM5>
<cmdM6>0;0;Commande 7;Param1;Param2;Param3;Param4;</cmdM6>
<cmdM7>1;2;Test routeur;Inject;Zéro;Moyen;Fort;</cmdM7>
<typCpt>EnConso;1;16:EnInj;1;16:EnPV_J;1;16:EnPV_P;1;16:Compt 5;0;0:Compt 6;0;0:Compt 7;0;0:Compt 8;0;0:</typCpt>
</xml>
Sur l'onglet énergie jai essayé vite fait en rajoutant des device_class: energy et device_class: power mais il ne sont pas reconnus. Après je ne me suis pas plus penché dessus que ça, j'attends de me faire un montage pour récupérer les infos du linky pour voir ce qui est faisable
Connexion ou Créer un compte pour participer à la conversation.
- Tochy
- Auteur du sujet
- Hors Ligne
- Membre platinium
- Messages : 433
- Remerciements reçus 95
Oui je sais le gouvernement a dit pas plus de 19° (vous remarquerez que mes consignes sont à 19°)
Je suis tout en chauffage electrique chez moi et je pilote les radiateurs (par le fil pilote) en fonction de la puissance panneaux remonté par le MsunPV.
Si Pow_PV>-2200 alors allume un radiateur de 2000W (ça change de radiateur tous les 1/4 h)
Si -2200<pow_pv<-1700 allume un radiateur de 1500W (ça change de radiateur tous les 1/4 h)
Si -1700<pow_pv<-900 allume le radiateur sdb 700W
Si pow_pv>-900 ne fait rien
Bien sur avant de piloter les radiateurs j'ai laissé le cumulus se chauffer.
Cela permet de ne pas se limiter à un seul radiateur si j'avais un ssr sur la sortie 2 et d'optimiser mon autoconsomation.
On voit que vers 11h20 le cumulus est chaud et ensuite les radiateurs se mettent en marche jusqu'a la fin de journée et que ma conso réseau est essentiellement entre le coucher et le lever du soleil. La grosse conso reseau entre 14h20 et 15h correspond à des ajustements que j'étais en train de faire et je ne me suis pas rendu compte que des radiateurs étaient allumés par erreur.
Connexion ou Créer un compte pour participer à la conversation.
- Tochy
- Auteur du sujet
- Hors Ligne
- Membre platinium
- Messages : 433
- Remerciements reçus 95
Prérequis :
- Avoir réalisé le premier tuto pour avoir les données msunpv_enconso, msunpv_eninj et msunpv_enpv_j du fichier status.xml présentent dans Home Assistant
Le code :
On rajoute une ligne au fichier configuration.yaml en dessous des lignes !include deja existantes
template: !include template.yaml
Ensuite on crée un fichier template.yaml au même niveau que le fichier configuration.yaml et on colle dedans le code suivant:
- sensor:
- name: "energie_enconso"
unit_of_measurement: "kWh"
state: "{{ (states('sensor.msunpv_enconso')|float /1000) }}"
device_class: energy
state_class: total_increasing
- name: "energie_enpv_j"
unit_of_measurement: "kWh"
state: "{{ (states('sensor.msunpv_enpv_j')|float /1000 *-1) }}"
device_class: energy
state_class: total_increasing
- name: "energie_eninj"
unit_of_measurement: "kWh"
state: "{{ (states('sensor.msunpv_eninj')|float /1000 *-1) }}"
device_class: energy
state_class: total_increasing
Si vos valeurs des compteurs EnPV_J et EnInj sont positives sur la page du MsunPV alors le code est le suivant:
- sensor:
- name: "energie_enconso"
unit_of_measurement: "kWh"
state: "{{ (states('sensor.msunpv_enconso')|float /1000) }}"
device_class: energy
state_class: total_increasing
- name: "energie_enpv_j"
unit_of_measurement: "kWh"
state: "{{ (states('sensor.msunpv_enpv_j')|float /1000 ) }}"
device_class: energy
state_class: total_increasing
- name: "energie_eninj"
unit_of_measurement: "kWh"
state: "{{ (states('sensor.msunpv_eninj')|float /1000 ) }}"
device_class: energy
state_class: total_increasing
Note: Il y'a certainement moyen d'éviter de créer des sensors supplémentaires mais comme il me fallait des valeurs positives pour pouvoir les intégrer j'ai préféré cette méthode pour ne pas casser la compatibilité avec le code déja existant.
A partir de là il suffit de se rendre dans l'onglet energie et de renseigner les différents sensors demandés.
Le résultat :
Toutes les heures les valeurs sont ajoutées à Home Assistant.
L'ajout des données commencer dès que l'onglet est configuré.
Si vous configuré votre onglet disont à 12h15, les premières données afficher le seront à 13h00 ou 14h00 (je n'ai pas fait gaffe si cela prenait en compte les 3 premiers 1/4 H).
Il ne faut pas s'étonner si les valeurs que vous voyez dans Les différents graphiques ne correspondent pas à ce que voyez sur la page du routeur. Home assisatnt affichant juste un différentiel entre l'heure H et l,heure H+1 dans les graphiques.
De même pour les valeurs de la distribution d'énergie, elles ne correspondront qu'a partir du second jour.
Connexion ou Créer un compte pour participer à la conversation.
- Paps42
- Hors Ligne
- Membre premium
- Messages : 156
- Remerciements reçus 35
Au top, c’est cool de rapatrier tous ça dans l’onglet energy !
Pour ma part je suis rideau, ma clé usb a cramé (c’était une sans marque)
J’attend une nouvelle pour me relancer dans l’aventure HA.
Ça m’a l’air d’une puissance de dingue !
Je te tiens au jus. Merci à toi pour tes contributions !
Bonne journée
Connexion ou Créer un compte pour participer à la conversation.
- etienneroussel
- Hors Ligne
- Membre elite
- Messages : 249
- Remerciements reçus 30
Tout d'abord merci pour ton super boulot. Je découvre HA tout juste.
J'ai réussi à installer HA sur Virtualbox, j'ai réussi à faire ton premier tuto et ainsi remonter des valeurs du routeur dans HA. Je bloque sur les compteurs, 2 sur les 4 ont des valeurs incohérentes et je ne parviens pas à m'en sortir ?
Je veux bien de l'aide.
Merci
Pièces jointes :
Connexion ou Créer un compte pour participer à la conversation.
- Paps42
- Hors Ligne
- Membre premium
- Messages : 156
- Remerciements reçus 35
Pour ces valeurs c’est normal, ce sont des compteurs inversés.
Le decomptage par 2 puissance 32.
Ce qui fait 4 294 967 296.
Donc tu dois faire une opération de calcul, soit 4 294 967 296 - (valeur remontée de ton compteur)
Essaye tu verra .
Bonne installation
Connexion ou Créer un compte pour participer à la conversation.
- etienneroussel
- Hors Ligne
- Membre elite
- Messages : 249
- Remerciements reçus 30
msunpv_enpv_j:
friendly_name: "Production PV jour"
value_template: >-
{% set cptVals =state_attr('sensor.msunpv_xml', 'cptVals')|replace(" ","") %}
{{ (0 if cptVals.split(";")[2]|int(base=16)|int == 0 else ((0xFFFFFFFF - cptVals.split(";")[2]|int(base=16)))/10) |float }}
unit_of_measurement: "Wh"
Connexion ou Créer un compte pour participer à la conversation.
- Tochy
- Auteur du sujet
- Hors Ligne
- Membre platinium
- Messages : 433
- Remerciements reçus 95
Connexion ou Créer un compte pour participer à la conversation.
- etienneroussel
- Hors Ligne
- Membre elite
- Messages : 249
- Remerciements reçus 30
Connexion ou Créer un compte pour participer à la conversation.
- Tochy
- Auteur du sujet
- Hors Ligne
- Membre platinium
- Messages : 433
- Remerciements reçus 95
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
- Accueil
- forum
- MSun-PV
- Vos installations
- [Tuto] Home assistant et MsunPV