Aller au contenu

Quick App - Enphase Envoy (Fork from TitiXsi)


Messages recommandés

Posté(e) (modifié)

Bonjour à tous,

 

J'ai mis le temps mais voici la présentation de ma QA enphase.
image.thumb.png.10044695f65780d5c3ed561e425c6c1c.png

Le Visu de la QA
image.png.c24eb0687f9ae3ae54cb11db21349ea1.png

image.png.cbfe2cf5540885369eda17d1b1c3f4a3.png



 

J'ai fait un merge de la QA de @Lazer et de ma précédente pour V5.

 

Ordonnancement et Création des Childs:

  • Childs Primaires:
    • Child-Token Validity DeadLine (jours restant avant une régénération du token)
    • Child-Capacity of Prod (% de puissance para rapport à ce que peut produire votre centrale photovoltaïque)
    • Child-Balance Solaire Live (en positif si vous produisez (en W) plus que ce que vous consommez à cet instant)
    • Child-Voltage (il est utilisé pour détecter les sous-tensions (207v) et sur-tensions (253v) du réseau)
    • Child-Prod Live (votre puissance de production (en W) à cet instant)
    • Child-Conso Live (votre puissance de consommation (en W) à cet instant)
    • Child-Balance Solaire Live Average (en positif si vous produisez (en W) plus que ce que vous consommez sur une moyenne réglable dans la QA, c'est très utile si vous lancez des appareils suivants votre surplus pour s'affranchir des nuages passants ... )
    • Child-Prod ToDay (votre production en Kwh aujourd'hui)
    • Child-Conso ToDay (votre consommation en Kwh aujourd'hui)
    • Child-Prod LifeTime (votre production en Mwh depuis l'installation)
    • Child-Conso LifeTime (votre consommation en Mwh depuis l'installation)
    • Child-Balance Solaire LifeTime (en positif si votre production (en Mwh) depuis l'installation est supérieure à votre consommation (en Mwh) depuis l'installation)
  • Childs secondaires:
    • Child-QRelays UP (Nombre de Q-relays détectés opérationnels)
    • Child-Inverters UP (Nombre microonduleurs qui sont en train de produir)
    • Child-Inv xxxx.... (Micro-oduleur avec son numéro de serie)
    • ...

 

Events:

  • Enphase_Production_Variation_Up
  • Enphase_Production_Variation_Down
  • Enphase_Production_Threshold_Up
  • Enphase_Production_Threshold_Down
  • Enphase_TotalConsumption_Variation_Up
  • Enphase_TotalConsumption_Variation_Down
  • Enphase_TotalConsumption_Threshold_Up
  • Enphase_TotalConsumption_Threshold_Down
  • Enphase_NetConsumption_Variation_Up
  • Enphase_NetConsumption_Variation_Down
  • Enphase_NetConsumption_Threshold_Up
  • Enphase_NetConsumption_Threshold_Down
  • EnphaseMoyExtraPower_Threshold_Up
  • EnphaseMoyExtraPower_Threshold_Down
  • Enphase_MeterTotalConsumptionPower_Updated
     

Note :

Le Child Inverter a été commenté dans la QA, vous pouvez le remettre si besoin, il est sensé indiquer la production des Micro-onduleur depuis l'installation mais cette valeur à été remise à zero par enphase (surement durant le passage D5/D7), du coup, il ne sert pas à grand chose...

 

  • Child-Voltage permet :
    • de stocker les min et max tensions détectés avec leurs dates dans les Variables Locales, ca peut être utile
    • de détecter les sous-tensions (207v) et sur-tensions (253v) du réseau et d'envoyer un Push à tous les devices de type Ios déclarés (J'ai longtemps essayé, c'est enfin dispo :)).
      image.png.819b519acdbce1ed43e198b4b8f7cf19.png
       
  • Child-Balance Solaire Average permet :
    • de calculer le Moyenne sur x échantillonnages (soit xmin, si on échantillonne toutes les minutes) -> c'est très utile si vous lancez des appareils suivants votre surplus pour s'affranchir des nuages passants ...
      image.png.4014229e93f627273c3e4079a38c61da.png
       
  • Tous les Childs sont :
    • paramétrés en PowerSensor sauf Child-Prod Live, Child-Conso Live, Child-Prod ToDay et Child-Conso ToDay qui sont en PowerMeter.
    • désactivés dans le panneau d’énergie (includeInEnergyPanel = false / saveToEnergyPanel = false), sauf Child-Prod Live et Child-Conso Live.

       
  • Les Childs Child-Prod Live, Child-Conso Live, Child-Prod ToDay et Child-Conso ToDay permettent :
    • d'être définis dans le compteur d’énergie et donc de comptabiliser votre production/consommation instantanée (en W) et d’énergie en Wh pour (par heure, journée, semaine, mois, année...)
    • 1 seul choix possible par type de compteur lors du paramétrage du compteur d’énergie.
      image.png.263e9c0237d4e2263c5734ede1ab31ea.pngimage.png.83bcb505d21e0eef78c7a0c3d4c483f8.png

       
  • Les rapports d'énergie sont conforme au site enphase (mise à par le gap de 15min pour le refresh de conso et prod sur le site enphase)
    • Exemple Jour J
      • Site Enphase :
        1991122889_Captureenphase.JPG.67e851daa92643a0468ec3d0d81e92a9.JPG
         
      • Fibaro :
        Capture.JPG.440184667605f51e4841a48a6832f9cd.JPG
        1293695876_CaptureeconomiesJ.thumb.JPG.47cac8344c982639cf478a7323daf8a9.JPG
         
    • Exemple Jour J-1
      • Site Enphase : Prod 34,2Kwh / Conso 14,4Kwh
        1835368630_CaptureenphaseJ-1.JPG.0a3014f31bf3ed866d998fd236db35d6.JPG
         
      • Fibaro : Prod 34,19Kwh / Conso 14,55Kwh (J'ai 0.15Kwh de diférence, surement un Wallplug qui est pris en compte, je dois vérifier)
        77042316_CaptureeconomiesJ-1.thumb.JPG.1af8482d13d9b88ff4d7665eacfff786.JPG

 

 

En résumé:

  • QA compatible V5 (sans token) ,V7/V8 (avec token) pour la version de la passerelle enphase. 
  • Elle va détecter automatiquement le nombre Q-relay, de Micro-onduleurs et créer les Childs en conséquence.
  • Vous pourrez suivre pratiquement en live (refresh de 15min par enphase) la puissance générée par chaque micro-onduleur ;-)
  • Vous serrez alerté
    • Si la tension du réseau n'est pas d'en la norme (207v-253v)
    • Si vous avez au minimum
      • un micro-onduleurs qui ne produit pas sur la plage de production journalière (levé+2h, couché-2h)
      • un Q-relay qui n'est pas fonctionnel



Les icones utilisées:

Pour éviter de changer les icones des Childs un par un, tout est centralisé dans les Variables du QA parent (Vous uploadez vos icones, vous récupéré leurs ID et renseignez la variable correspondante)

 

968816949_EnphaseCREDENTIAL.png.8a53f6d863a8b0873cb5f882d8a90c04.pngIcon_ID_CRED

1448564603_EnphaseINIT.png.2b34f169f63c4367b97e842b27519c25.pngIcon_ID_INIT
1315899506_EnphaseERROR.png.2fb58b4d632c850a6da7f6b19eea76b4.pngIcon_ID_ERROR
1910719680_EnphaseOK.png.239cdc53a7a7e18f9c3d7baf157603eb.pngIcon_ID_OK
921103300_EnphaseWARNING.png.38047b4689cfd93cfcf185583dd07445.pngIcon_ID_WARNING

Icon_ID_TOKVAL
jauge-300x149.png.ec2ff81e4997ef7a8cca64da27869ce3.pngIcon_ID_CAPA
1224435637_BalanceAverage.png.fdd2b018cccb9c27d9a2cfda91166a71.pngIcon_ID_BALALIV
Voltage.png.50cac5e87942c376296ea85c3afe5de8.pngIcon_ID_VOLT
ic-ne-de-panneau-solaire-33151080.png.5ff2a4e3022b59f36aa6dc8ed8812b91.pngIcon_ID_PRODLIV
866135678_Sanstitre.png.73ee0f4d677d2a0813cb6e440ea79241.pngIcon_ID_CONSLIV
EcoHouse.png.a21c746bdd3e6004290ab700a8e9492d.pngIcon_ID_BALAVG
698219558_ProdToDay.png.9d627795e56dcccc8ecc51bdbaac99db.pngIcon_ID_PRODTOD
997776215_ConsoToDay.png.f6c090855e4c75889d69693e605dd8ba.pngIcon_ID_CONSTOD
894188578_ProdLifeTime.png.85efe1fbf37f308fe63716d68eea7d1f.pngIcon_ID_PRODLIT
105948747_ConsoLifeTime.png.6db05ca5c37d77591d5f889d066de04c.pngIcon_ID_CONSOLIT
1027169692_BalanceLifeTime.png.7aaa42d52edcd3aeaa4de77a9d328caa.pngIcon_ID_BALALIT
Qrelaycom.png.3e6f92f819e7d675822831725e5a66ca.pngIcon_ID_QR_UP
1508912698_IQ7com.png.9b39f21696280bc99b75d823db0c33f3.pngIcon_ID_MI_UP
794516075_iq7prod.png.220a8286ca9efc5c6d06bc57219979f9.pngIcon_ID_MI_WATT


 

image.png.d8ab1efa58ed51ffe00aa04f7d4057d7.png 
Et comme une petite vidéo vaut mieux qu'un long discours, voici une petite démo:
QAenphase By Titi 16.11.2023.mkv (je m'excuse pour le bandeau sur la vidéo...)



image.png.182f885134d4d71c4de784a2e667c349.png
Le fichier d'installation:

 

QA-Enphase_2.201.fqa

 

Have Fun !:74:

 

Je m'excuse par avance des fautes d’orthographes qui peuvent être encore présentes...

 

Edit 19 nov 2024 New version 2.200 added "Child-Token Validity DeadLine"

-> ajout de la validité du token en jours.

 

Token expiré:

image.png.a12a74e7f30a5d5a1eb7122dc69d6ed7.png

 

Token Valide mais expiration <15jours

image.png.493960ebdf0830dbb3838adf648a94ef.png

 

 

Token Valide

image.png.294d7011a2cff0c0070d47a60390e933.png

 

Vue du Child

image.png.4202c2a9f36df849c895e9197d73fa18.png

 

Normalement le renouvellement est automatique mais parfois il est capricieux...

ca permet de suivre et pourquoi pas d'aller regénérer le token nous même

 

Edit 20 nov 2024 New version 2.201 In case of token Expiration, the push is made only One time per day

 

Modifié par TitiXsi
added events
  • Like 6
Posté(e)

Salut @TitiXsi et @Lazer

Merci pour votre super boulot. J'ai hâte de pouvoir tester tout cela très prochainement. Je viens d'opter pour 10 panneaux Trinasolar 425W bi-verre + MO enphase IQ8+ (les IQ7+ sont en rupture partout depuis plus d'un mois...) + GCE ecodevice RT2 pour monitorer les conso de différents appareils, histoire d'optimiser tout ça.

Hte de vous partager mon retour donc !

 

  • 5 mois après...
Posté(e)

Hi @TitiXsi,

 

Awesome job, to me, super complicated code, but it works awesome. 

 

That said the Child-Prod Live child is not created, you also mention something about it in your starting post. How do i initialize it? Do i manually need to create it?

Posté(e)
Il y a 7 heures, Daniel Plantings a dit :

Hi @TitiXsi,

 

Awesome job, to me, super complicated code, but it works awesome. 

 

That said the Child-Prod Live child is not created, you also mention something about it in your starting post. How do i initialize it? Do i manually need to create it?

Hello.

Have you see the movie describing the installation and usage ?

All chlids are created when you click on the button. But you need to be register with your credentials in local variables. Then follow the qa status icon and processes into the gui.

Posté(e)

Hi TitiXsi, yes i've watched movie, it initializes most children, just not the Child-Prod Live and a few others... 

 

Looks like i dont have production? But i dont understand why it does not create the placeholder on initiation...

 

 

Posté(e) (modifié)
Il y a 18 heures, Daniel Plantings a dit :

solaire.png

You have a envoy metered or normal ? Which version ? Which clamps (consumprion and production) ?

Can you redo the import fromage scratch? Can you show us only the dedicated room where the qa is placed (enphase)? Can you show us the view of the Quick app AT each step?

Modifié par TitiXsi
Posté(e) (modifié)

Bedankt! Laten we eerst beginnen met de verschillen. Het lijkt erop dat ik de meter heb gemeten, maar ik weet niet wat het zou afwijken van normaal.

 

Het lijkt geen productie te hebben ("produceren": false,), maar kan ik dit controleren op de fysieke Envjoy box?

 

Envoy-S-Metered-EU

SKU: ENV-S-EM-230

 

 

 

Misschien zegt dit al genoeg?

 

{
        "devices": [
            {
                "img_pnum_running": "520-00086-r01-v02.12.11",
                "admin_state": 1,
                "device_control": [
                    {
                        "gficlearset": false
                    }
                ],
                "chaneid": 1811939601,
                " line3-connected": true,
                "line2-connected": true,
                "img_load_date": "1529083534",
                "part_num": "800-00597-r02",
                "line1-connected": true,
                "provisioned": true,
                " communiceren": true,
                "reason": "ok",
                "dev_type": 12,
                "reason_code": -1,
                "geïnstalleerd": "1678364881",
                "relay": "gesloten",
                "serial_num": "122251029694",
                "line-count": 3,
                "created_date": "1678364881",
                "producing": false,
                "ptpn": "540-00139-r01-v02.12.00",
                "last_rpt_date": "1713947689",
                "device_status": [
                    "envoy.global.ok"
                ],
                "operationeel": true
            }
        ],
        "type": "NSRB"

}

Modifié par Daniel Plantings
Posté(e)

On Enlighten application, have you the report of the production ? have you a Ampermetric Clamp into your Electic Board ?

Posté(e) (modifié)

Als ik een ampermetrische haak in mijn elektrische bord heb, weet ik het niet. Hoe kan ik zien?

 

 

Citaat

[24.04.2024] [13:11:26] [DEBUG] [QA_ENPHASE_244]: Enphase:getProduction(tabel[2])
[24.04.2024] [13:11:26] [DEBUG] [QA_ENPHASE_244]: Enphase:getEnvoyAPI ("/production.json", true, function(), table[2])
[24.04.2024] [13:11:26] [DEBUG] [QA_ENPHASE_244]: Enphase:getEnvoyAPI() url = http://192.168 .178.12:80/productie.json

 

productie.json

 

Is this what you mean? Does this help?

Modifié par Daniel Plantings
Posté(e)

Yeah i dont have those installed... So that explains that i dont have the PowerLive meter...

 

But i do have this data:

 

production": [
        {
            "wNow": 1728,

 

this wNow i could push to the child "Child-Prod Live" if it was initialized, but it isnt...

Posté(e)

No clamp, no live detection :)

Sorry, I have enough time to check the code. I let you trying to comment the corresponding line of the detection and force it to true.

 

Posté(e)

Thanks for the tip. The code is really extended, many salutions to you and the original builder, very sophisticated. But yeah, now i have the value and i will send the information that i do get, to the child.

 

I'll see if i can get someone to install the clamps. If i have that, i'll reinstall the QA from start and it will work as it should i'm sure :)

 

Thank you very much!

 

 

Posté(e) (modifié)

Hi @TitiXsi,

 

first of all sorry for my English which is as it is, but French I know just a few phrases. Thank you for this QA. I have Enphase Envoy S metered EU with two clamps. Your QA is almost up to the task. problem is that I have errors that are reported regularly:

 

[28.04.2024] [14:59:06] [ERROR] [QA_ENPHASE_47]: Enphase:postEnphaseAPI() HTTP Status code = 500
[28.04.2024] [14:59:06] [ERROR] [QA_ENPHASE_47]: Can't get new token : HTTP Status code = 500

Also, I setup icons, but they are not set properly:

1019112116_Envoychildsetupresult.thumb.png.648dc285f6c9a7605d22b803b398caff.png

 

Icons are added using Enphase main QA. Maybe I did something wrong since this forum was not accessible for me for some time so I wasn't able to read all posts?

 

Also, it would be nice that Child-Balance Today is added and calculated from:

today imported - (today production - today consumed) = today exported

etc. Also, it is not so hard to check value of the measurements and depending on value change unit W to kW to W and also Wh to kWh to MWh to kWh to Wh :)

 

BTW - I did try to go through your code and I must agree with @Daniel Plantings that is too complicated. All I wanted is to add printing some statuses to the QA log and changing units depending on measured values, but it seems that will be easier to write my own QA :)

 

Kind regards from Croatia

 

Modifié par Sankotronic
typos?
Posté(e)
Il y a 3 heures, Sankotronic a dit :

Hi @TitiXsi,

 

first of all sorry for my English which is as it is, but French I know just a few phrases.

Hello :), Your english seems nice and dont worry, my english is not wonderfull ;)

 

Il y a 3 heures, Sankotronic a dit :

I have Enphase Envoy S metered EU with two clamps. Your QA is almost up to the task. problem is that I have errors that are reported regularly:

 


[28.04.2024] [14:59:06] [ERROR] [QA_ENPHASE_47]: Enphase:postEnphaseAPI() HTTP Status code = 500
[28.04.2024] [14:59:06] [ERROR] [QA_ENPHASE_47]: Can't get new token : HTTP Status code = 500

 

 

 

 

I have facing some issue when my Envoy was linked in Wifi, A lots of tatency was cumumlated and somthimes, the Envoy was saturated...

Since I have pluggued it in RJ45, I have less issue, but some occurnece are present :

image.thumb.png.fd72cd1030071f6688cb4a216c1c56c9.png

 

Il y a 3 heures, Sankotronic a dit :

Also, I setup icons, but they are not set properly:

1019112116_Envoychildsetupresult.thumb.png.648dc285f6c9a7605d22b803b398caff.png

 

Icons are added using Enphase main QA. Maybe I did something wrong since this forum was not accessible for me for some time so I wasn't able to read all posts?

 

Have your respected the order ?

1. Added the QuickApp

2. Added the Icons png

3. Set the ID of the icon into the Local variables > SAVE IT

4. Set the login and password of your account > SAVE IT

5. Follow the QA gui to then push the Button to generate the first Childs (the ID of the Icons are taken at this time)

 

Il y a 3 heures, Sankotronic a dit :

Also, it would be nice that Child-Balance Today is added and calculated from:


today imported - (today production - today consumed) = today exported

By definition the Balance is PROD - Consumed , so if you have produced 10kwh and consumed 10kwh, your balance is ZERO.

It's the same in LIVE, today of Lifetime

 

I think You are lookign for the part of auto-consumption, which is not computed here.

 

Il y a 3 heures, Sankotronic a dit :

Also, it is not so hard to check value of the measurements and depending on value change unit W to kW to W and also Wh to kWh to MWh to kWh to Wh :)

The management of the Units is a problem, if not found how to change it, because it was defined at the creation of the Child. And after the creation, the update of the unit is not taken into account.

 

Il y a 3 heures, Sankotronic a dit :

BTW - I did try to go through your code and I must agree with @Daniel Plantings that is too complicated. All I wanted is to add printing some statuses to the QA log and changing units depending on measured values, but it seems that will be easier to write my own QA :)

You can add your childs of developp a QA which is using the value of the QAenphase ;)

 

Il y a 3 heures, Sankotronic a dit :

Kind regards from Croatia

Seems a very nice Country, but unknown from my side :'(

 

I hope you have a better Sun than us in France in this end of April ... ;)

  • 4 mois après...
Posté(e)

Hello depuis le 10 aout passage de l'Envoy en version 8.2.4264, j'ai du rallonger le timeout dans l'onglet Enphase pour éviter les plantages... Merci Enphase !
 

        -- Titi 29.08.2024 - increased Timeout 10sd -> 25sd because, I am asking a lot of values during the GetInventoryStatus
        --timeout = 10000
        timeout = 25000
 
 
Posté(e)

Ah tiens merci pour l'info, je n'avais pas fait attention qu'on était passé en D8.2.xxxx

 

A priori mon QA n'est pas embêté, tant mieux :)

  • 1 mois après...
Posté(e) (modifié)

Bon et bien voilà... Je pensais que ça ne servirait à rien de d'étécter les sous-tensions ou sur-tensions d'enedis... Que jamais je détecterai un truc..  ça vient d'arriver...

194v pour 207v minimum soit 14% de moins que la référence de 230v...

 

Heureusement mes 4 onduleurs ont déclenchés sur la box, TV, Bureau x2

image2.thumb.png.704838af3ec66ac8c05e0599ede94c9a.png

 

Modifié par TitiXsi
  • Sad 1
Posté(e) (modifié)

Hello, petite mise à jour avec l'ajout de la validité du token en jours.

 

Token expiré:

image.png.c066a417a1d5134c6cb17bd43f8658ca.png

 

Token Valide

image.png.294d7011a2cff0c0070d47a60390e933.png

 

Vue du Child

image.png.4202c2a9f36df849c895e9197d73fa18.png

 

Normalement le renouvellement est automatique mais parfois il est capricieux...

ca permet de suivre et pourquoi pas d'aller regénérer le token nous même

Modifié par TitiXsi
  • Like 1
Posté(e)

Correction mineur pour éviter un spam de Push..
Edit 20 nov 2024 New version 2.201 In case of token Expiration, the push is made only One time per day

×
×
  • Créer...