Proposition fonction de détection d'une panne sur un micro-onduleur

Salut,

Je viens de penser à une nouvelle fonction qui pourrait être implémentée dans le plugin à savoir un binaire "alerte micro-onduleur qui passe à 1 lorsque la [Production journalière] de l’un des micro-onduleur est inférieur à une valeur paramétrable en pourcentage (ou pas ?) basée sur la plus grande valeur des autres.

Cela permettrait d’être rapidement alertée en cas de panne d’un mo, ou d’un panneau.

Up to you cddu33 :grinning:

A+

Pas bête.
A voir car enphase le fait en théorie aussi

J’ai pas regardé si c’était identifiable dans le json mais pour moi ils alerte peut-être sur une non communication (donc le cas d’un matériel ko totalement) et à coup sûr (expérimenté récemment) quand la production totale est inférieure à la production théorique que l’on paramètre dans enlighteen.

Pas sûr que tout ça soit géré côté passerelle quand même.

J’avais vu dans les paramètres de la passerelle Come quoi le fait de bien mettre l’angle, l’adresse, et la puissance du panneau permettrait d’avoir une alerte en cas de consommation bizarre . Mais sûrement très temporisé et pas accessible sur le json

Le problème c’est gérer la double exposition…

En effet, les valeurs des mo peuvent être assez différentes, surtout à certain moment de la journée. Actuellement il n’y a rien qui gère la multi-expositions dans le plugin n’est-ce pas (enfin j’ai rien vu) ? Un équipement « global » qui permet de regrouper les mo ?

Bon ben t’embête pas, on gèrera ça manuellement avec un scénario d’alerte comme ça chacun maitrise le regroupement des mo.

non rien , à voir si on peu créer des groupes pour ça

bon tu m’as inspiré:

Nouvelle Beta de ce soir:

  • création de groupe pour chaque onduleur
  • surveillance avec un rapport par jour à 22h

Le calcul pour un groupe:

((panneau1groupe1+panneau2groupe1+...)/(nombredepanneaugroupe1))-10%

si un des panneaux à sa production inférieur on met un message dans le centre de message

Pour les essais un message est créé même si il n’y a pas d’anomalie

N’hésitez pas à me faire des retours

1 « J'aime »

Salut,

Ah, chouette ! :smile:

Par contre j’ai pas l’air d’avoir eu de message.

J’ai mis à jour le plugin puis ajouté les équipements (mo) dans le groupe 1.

À 22h je n’ai rien vu passer, c’est normal d’après toi ?

2023-06-06 21:59:55][DEBUG] : Starting new HTTP connection (1): 127.0.0.1:80
[2023-06-06 21:59:55][DEBUG] : http://127.0.0.1:80 "POST /plugins/enphasesecur/core/php/jeeenphasesecur.php?apikey=...HTTP/1.1" 200 0
[2023-06-06 22:00:05][DEBUG] : load_ssl_context verify=False cert=None trust_env=True http2=False
[2023-06-06 22:00:05][INFO] : Test Token
[2023-06-06 22:00:05][DEBUG] : connect_tcp.started host='10.0.6.70' port=443 local_address=None timeout=5.0 socket_options=None
[2023-06-06 22:00:05][DEBUG] : connect_tcp.complete return_value=<httpcore.backends.sync.SyncStream object at 0x7f08f70eba58>
[2023-06-06 22:00:05][DEBUG] : start_tls.started ssl_context=<ssl.SSLContext object at 0x7f08f6869388> server_hostname='10.0.6.70' timeout=5.0
[2023-06-06 22:00:05][DEBUG] : start_tls.complete return_value=<httpcore.backends.sync.SyncStream object at 0x7f08f5df02e8>
[2023-06-06 22:00:05][DEBUG] : send_request_headers.started request=<Request [b'GET']>
[2023-06-06 22:00:05][DEBUG] : send_request_headers.complete
[2023-06-06 22:00:05][DEBUG] : send_request_body.started request=<Request [b'GET']>
[2023-06-06 22:00:05][DEBUG] : send_request_body.complete
[2023-06-06 22:00:05][DEBUG] : receive_response_headers.started request=<Request [b'GET']>
[2023-06-06 22:00:05][DEBUG] : receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Server', b'openresty/1.17.8.1'), (b'Date', b'Tue, 06 Jun 2023 19:59:19 GMT'), (b'Content-Type', b'application/octet-stream'), (b'Content-Length', b'37'), (b'Connection', b'keep-alive'), (b'Set-Cookie', b'sessionId=xCsxdNAqPvw9rFXRJGfpUQzFI4MdEmbG; Secure; HttpOnly; path=/'), (b'Strict-Transport-Security', b'max-age=63072000; includeSubdomains'), (b'X-Frame-Options', b'DENY'), (b'X-Content-Type-Options', b'nosniff'), (b'Strict-Transport-Security', b'max-age=63072000; includeSubdomains'), (b'X-Frame-Options', b'DENY'), (b'X-Content-Type-Options', b'nosniff')])
[2023-06-06 22:00:05][INFO] : HTTP Request: GET https://10.0.6.70/auth/check_jwt "HTTP/1.1 200 OK"
[2023-06-06 22:00:05][DEBUG] : receive_response_body.started request=<Request [b'GET']>
[2023-06-06 22:00:05][DEBUG] : receive_response_body.complete
[2023-06-06 22:00:05][DEBUG] : response_closed.started
[2023-06-06 22:00:05][DEBUG] : response_closed.complete
[2023-06-06 22:00:05][INFO] : Recuperation mesures
[2023-06-06 22:00:05][DEBUG] : send_request_headers.started request=<Request [b'GET']>
[2023-06-06 22:00:05][DEBUG] : send_request_headers.complete
[2023-06-06 22:00:05][DEBUG] : send_request_body.started request=<Request [b'GET']>
[2023-06-06 22:00:05][DEBUG] : send_request_body.complete
[2023-06-06 22:00:05][DEBUG] : receive_response_headers.started request=<Request [b'GET']>
[2023-06-06 22:00:06][DEBUG] : receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Server', b'openresty/1.17.8.1'), (b'Date', b'Tue, 06 Jun 2023 19:59:20 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'Pragma', b'no-cache'), (b'Expires', b'1'), (b'Cache-Control', b'no-cache'), (b'Strict-Transport-Security', b'max-age=63072000; includeSubdomains'), (b'X-Frame-Options', b'DENY'), (b'X-Content-Type-Options', b'nosniff')])
[2023-06-06 22:00:06][INFO] : HTTP Request: GET https://10.0.6.70/production.json?details=1 "HTTP/1.1 200 OK"
[2023-06-06 22:00:06][DEBUG] : receive_response_body.started request=<Request [b'GET']>
[2023-06-06 22:00:06][DEBUG] : receive_response_body.complete
[2023-06-06 22:00:06][DEBUG] : response_closed.started
[2023-06-06 22:00:06][DEBUG] : response_closed.complete
[2023-06-06 22:00:06][INFO] : Send to jeedom :  {'production': [{'type': 'inverters', 'activeCount': 9, 'readingTime': 1686081480, 'wNow': 0, 'whLifetime': 109104}, {'type': 'eim', 'activeCount': 1, 'measurementType': 'production', 'readingTime': 1686081559, 'wNow': -0.219, 'whLifetime': 89099.2, 'varhLeadLifetime': 0.0, 'varhLagLifetime': 15757.491, 'vahLifetime': 99087.567, 'rmsCurrent': 0.856, 'rmsVoltage': 243.109, 'reactPwr': 131.967, 'apprntPwr': 157.797, 'pwrFactor': 0.0, 'whToday': 19218.2, 'whLastSevenDays': 69881.2, 'vahToday': 20901.567, 'varhLeadToday': 0.0, 'varhLagToday': 2926.491, 'lines': [{'wNow': -0.219, 'whLifetime': 89099.2, 'varhLeadLifetime': 0.0, 'varhLagLifetime': 15740.457, 'vahLifetime': 99041.99, 'rmsCurrent': 0.676, 'rmsVoltage': 232.681, 'reactPwr': 131.967, 'apprntPwr': 157.47, 'pwrFactor': 0.0, 'whToday': 19218.2, 'whLastSevenDays': 69881.2, 'vahToday': 20891.99, 'varhLeadToday': 0.0, 'varhLagToday': 2921.457}, {'wNow': -0.0, 'whLifetime': 0.0, 'varhLeadLifetime': 0.0, 'varhLagLifetime': 8.511, 'vahLifetime': 38.869, 'rmsCurrent': 0.18, 'rmsVoltage': 1.831, 'reactPwr': 0.0, 'apprntPwr': 0.328, 'pwrFactor': 0.0, 'whToday': 0.0, 'whLastSevenDays': 0.0, 'vahToday': 7.869, 'varhLeadToday': 0.0, 'varhLagToday': 2.511}, {'wNow': -0.0, 'whLifetime': 0.0, 'varhLeadLifetime': 0.0, 'varhLagLifetime': 8.523, 'vahLifetime': 6.708, 'rmsCurrent': -0.0, 'rmsVoltage': 8.597, 'reactPwr': -0.0, 'apprntPwr': -0.0, 'pwrFactor': -1.0, 'whToday': 0.0, 'whLastSevenDays': 0.0, 'vahToday': 1.708, 'varhLeadToday': 0.0, 'varhLagToday': 2.523}]}], 'consumption': [{'type': 'eim', 'activeCount': 1, 'measurementType': 'total-consumption', 'readingTime': 1686081559, 'wNow': 508.699, 'whLifetime': 95225.54, 'varhLeadLifetime': 28022.381, 'varhLagLifetime': 24966.648, 'vahLifetime': 110129.425, 'rmsCurrent': 4.358, 'rmsVoltage': 241.71, 'reactPwr': -458.39, 'apprntPwr': 1053.475, 'pwrFactor': 0.48, 'whToday': 18825.54, 'whLastSevenDays': 76750.54, 'vahToday': 22283.425, 'varhLeadToday': 5807.381, 'varhLagToday': 4896.648, 'lines': [{'wNow': 508.909, 'whLifetime': 95558.563, 'varhLeadLifetime': 28022.381, 'varhLagLifetime': 24932.066, 'vahLifetime': 110031.63, 'rmsCurrent': 3.792, 'rmsVoltage': 232.664, 'reactPwr': -458.457, 'apprntPwr': 882.155, 'pwrFactor': 0.58, 'whToday': 18826.563, 'whLastSevenDays': 76751.563, 'vahToday': 22264.63, 'varhLeadToday': 5807.381, 'varhLagToday': 4890.066}, {'wNow': -0.033, 'whLifetime': -95.676, 'varhLeadLifetime': 0.0, 'varhLagLifetime': 17.287, 'vahLifetime': 34.932, 'rmsCurrent': 0.136, 'rmsVoltage': 3.98, 'reactPwr': -0.0, 'apprntPwr': 0.542, 'pwrFactor': -0.06, 'whToday': 0.0, 'whLastSevenDays': 0.0, 'vahToday': 6.932, 'varhLeadToday': 0.0, 'varhLagToday': 3.287}, {'wNow': -0.176, 'whLifetime': -237.347, 'varhLeadLifetime': 0.0, 'varhLagLifetime': 17.296, 'vahLifetime': 62.863, 'rmsCurrent': -0.344, 'rmsVoltage': 5.067, 'reactPwr': 0.066, 'apprntPwr': -1.741, 'pwrFactor': -1.0, 'whToday': 0.0, 'whLastSevenDays': 0.0, 'vahToday': 11.863, 'varhLeadToday': 0.0, 'varhLagToday': 3.296}]}, {'type': 'eim', 'activeCount': 1, 'measurementType': 'net-consumption', 'readingTime': 1686081559, 'wNow': 508.918, 'whLifetime': 36283.783, 'varhLeadLifetime': 28022.381, 'varhLagLifetime': 9209.158, 'vahLifetime': 110129.425, 'rmsCurrent': 3.503, 'rmsVoltage': 240.312, 'reactPwr': -326.424, 'apprntPwr': 725.957, 'pwrFactor': 0.7, 'whToday': 0, 'whLastSevenDays': 0, 'vahToday': 0, 'varhLeadToday': 0, 'varhLagToday': 0, 'lines': [{'wNow': 509.128, 'whLifetime': 36283.783, 'varhLeadLifetime': 28022.381, 'varhLagLifetime': 9191.609, 'vahLifetime': 110031.63, 'rmsCurrent': 3.116, 'rmsVoltage': 232.647, 'reactPwr': -326.49, 'apprntPwr': 725.151, 'pwrFactor': 0.7, 'whToday': 0, 'whLastSevenDays': 0, 'vahToday': 0, 'varhLeadToday': 0, 'varhLagToday': 0}, {'wNow': -0.033, 'whLifetime': 0.0, 'varhLeadLifetime': 0.0, 'varhLagLifetime': 8.776, 'vahLifetime': 34.932, 'rmsCurrent': 0.044, 'rmsVoltage': 6.129, 'reactPwr': 0.0, 'apprntPwr': 0.277, 'pwrFactor': 0.0, 'whToday': 0, 'whLastSevenDays': 0, 'vahToday': 0, 'varhLeadToday': 0, 'varhLagToday': 0}, {'wNow': -0.176, 'whLifetime': 0.0, 'varhLeadLifetime': 0.0, 'varhLagLifetime': 8.773, 'vahLifetime': 62.863, 'rmsCurrent': 0.344, 'rmsVoltage': 1.536, 'reactPwr': 0.066, 'apprntPwr': 0.529, 'pwrFactor': 0.0, 'whToday': 0, 'whLastSevenDays': 0, 'vahToday': 0, 'varhLeadToday': 0, 'varhLagToday': 0}]}], 'storage': [{'type': 'acb', 'activeCount': 0, 'readingTime': 0, 'wNow': 0, 'whNow': 0, 'state': 'idle'}]}
[2023-06-06 22:00:06][DEBUG] : Starting new HTTP connection (1): 127.0.0.1:80
[2023-06-06 22:00:07][DEBUG] : http://127.0.0.1:80 "POST /plugins/enphasesecur/core/php/jeeenphasesecur.php?apikey=ysVG1Y0O8tR7AwIBFxeIaljnGrNfknuTfS4vwrHL49iif1lVrDrHSC776q2fHtwW HTTP/1.1" 200 0
[2023-06-06 22:00:07][DEBUG] : Recuperation mesures onduleurs
[2023-06-06 22:00:07][DEBUG] : send_request_headers.started request=<Request [b'GET']>
[2023-06-06 22:00:07][DEBUG] : send_request_headers.complete
[2023-06-06 22:00:07][DEBUG] : send_request_body.started request=<Request [b'GET']>
[2023-06-06 22:00:07][DEBUG] : send_request_body.complete
[2023-06-06 22:00:07][DEBUG] : receive_response_headers.started request=<Request [b'GET']>
[2023-06-06 22:00:07][DEBUG] : receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Server', b'openresty/1.17.8.1'), (b'Date', b'Tue, 06 Jun 2023 19:59:21 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'1344'), (b'Connection', b'keep-alive'), (b'Strict-Transport-Security', b'max-age=63072000; includeSubdomains'), (b'X-Frame-Options', b'DENY'), (b'X-Content-Type-Options', b'nosniff')])
[2023-06-06 22:00:07][INFO] : HTTP Request: GET https://10.0.6.70/api/v1/production/inverters "HTTP/1.1 200 OK"
[2023-06-06 22:00:07][DEBUG] : receive_resp..

Etc...

Slt, c’est un cron donc normalement tu peu le forcer Depuis jeedom.

Par contre vu l’heure des logs je pense que le plugin c’est lancé 5s trop Tard

Il s’était bien exécuté, j’étais pas dans le bon log.

[2023-06-06 22:37:25][INFO] : Pas d'anomalie de production détectée, seuil ligne 0: NAN, seuil ligne 1: 1991.25, seuil ligne 2: NAN, seuil ligne 3: NAN, seuil ligne 4: NAN

Tu avais prévu un groupe 0 donc cette nouvelle fonction est activée même si on ne regroupe pas les équipements dans l’un des groupes (1 à 4) ?

Yep . Ça sera transparent après

Tu as du aussi recevoir un message dans le centre de message.

Ok, c’est bon fallait que je refesh la page de mon navigateur.

Bon et ben parfait, j’allais te dire que si tu pouvais mettre les équipements dans le groupe 1 par défaut mais du coup c’est pas nécessaire :relaxed:.

Impeccable donc :+1:

Merci :grinning:

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.