› Forums › Serveur WES › Site WEB embarqué › Export des données au format openmetrics
- Ce sujet contient 27 réponses, 3 participants et a été mis à jour pour la dernière fois par
nicolas_cartelec, le il y a 2 années et 5 mois.
- Post
-
Hello,
j’aimerai exporter les données au format openmetrics (pour intégration dans prometheus / grafana).
J’ai tenté de créer un fichier .CGX, ça fonctionne, par contre, impossible d’afficher un retour chariot, le retour du GET se fait sur une ligne.
Ca fait 2h que je cherche, je trouve rien.Exple:
cat PROM.CGX t toto t tata t tutu\n . End of script must be closed with period.
Renvoi:
# curl http://admin:admin@wes/prom.cgx tototatatutu\n%
Une idée de comment on peut retourner à la ligne avec des scripts cgi ?
-
Ce sujet a été modifié le il y a 2 années et 6 mois par
n0made.
00 -
Ce sujet a été modifié le il y a 2 années et 6 mois par
- Replies
-
-
Bonjour,
Vous pouvez formater le résultat de la requête CGX sous forme d’un String dans lequel vous pouvez insérer des \n
# Exemple prom.cgx format JSON
# Ajout d’un return pour chaque ligne
#
t « {[\n
c W0T0 { ‘sonde1’ : ‘%.01f’ }, \n
c W0T1 { ‘sonde2’ : ‘%.01f’ }, \n
c W0T2 { ‘sonde3’ : ‘%.01f’ } \n
t ]}\n »
.Curl http://admin:admin@wes/prom.cgx
Vous retourne « {[\n { ‘sonde1’ : ‘19.2’ }, \n { ‘sonde2’ : ‘19.5’ }, \n { ‘sonde3’ : ‘18.6’ } \n]}\n »# Exemple prom.cgx format CGX
# ajout un return en fin du CGX
#
t » <data>
c W0T0 <sonde1>%.01f</sonde1>
c W0T1 <sonde2>%.01f</sonde2>
c W0T2 <sonde3>%.01f</sonde3>
t </data> \n »
.Curl http://admin:admin@wes/prom.cgx
Vous retourne « <data><sonde1>19.2</sonde1><sonde2>19.5</sonde2><sonde3>18.6</sonde3></data>\n »ATTENTION,
le Content_Type rendu dans le Header de Réponse retourné par le WES pour les requêtes type CGX est toujours de type MIME CGX. quelque soit le formatage et contenu du fichier CGX lui même.Votre navigateur analyse le Content-type dans la réponse Header du WES et va s’apercevoir, si vous rajouter des guillemets ou bien que vous rendez un format Json au lieu d’un Cgx, que le format du fichier n’est pas de type MIME CGX et dans ce cas le navigateur va vous afficher une Erreur, car il essaie de Parser la réponse rendue pour afficher le résultat dans sa fenêtre.
Mais la réponse rendue par le WES est correctement reçu tel que vous le formatez. Voir la réponse de la requête via la console avec F12.
Reste à voir si prometheus / grafana analyse aussi le Content_Type rendu dans le Header de réponse ? Si Oui, dans ce cas vous ne pourrez pas tricher en mettant ces guillemets !Autre solution, reste à voir si prometheus / grafana peut gérer des Scripts soit Python ou PHP ou Java ? Dans ce cas vous vous lancer la requête depuis le Script et vous forcer un retour chariot dans la réponse au retour de la requête *Curl CGX depuis le script.
Cdt
00 -
J’ai tenté d’inclure un fichier, mais ça m’ajoute pas de une fin de ligne à la sauce unix (\n) mais mais DOS (\r\n), ce qui est interdit par openmetrics !
{9:40}~/wes/_ [si-preprod] # cat -e PROM.CGX t wes_up 1$ i PROMNEWLINE.INC$ t wes_super 1$ .$ {9:41}~/wes/_ [si-preprod] # cat -e PROMNEWLINE.INC $ #$ $
# curl -s http://admin:admin@wes/prom.cgx | cat -e wes_up 1^M$ #^M$ ^M$ wes_super 1%
-
Cette réponse a été modifiée le il y a 2 années et 6 mois par
n0made.
-
Cette réponse a été modifiée le il y a 2 années et 6 mois par
n0made.
00 -
Cette réponse a été modifiée le il y a 2 années et 6 mois par
-
RE: Essayez de modifier les « \n\r » par un simple « \n » via la commande linux sed conjointement avec la réponse de curl.
00 -
Re: Si vous essayez de transformer le CGX en tant qu’un String en rajoutant des Guillemets comme proposé dans mon précédent Post, ne copiez pas mes Démo tel quel, car le BLOG modifie tous les caractères Guillemet avec des caractères similaires mais codés ascii différemment.
Il faut remplacer tous ces guillemets simple et double côte avec ceux de votre clavier.
Cdt
00 -
Re : Curl lui ne fait pas d’analyse du Content_Type du Header de réponse des requêtes qu’il envoie. Les réponses sont transparentes pour Curl.
Donc simplement réceptionner la réponse Curl depuis openmetrics comme un String, rep = str ( curl …..)
00 -
Je ne pense pas que prometheus analyse le content_type, en tous cas il n’accepte pas les « \n », ni les newline à la sauce dos (\r\n), ni les guillemets.
quand la page renvoi :
# curl -s http://admin:admin@wes/prom.cgx | cat -e tic_base 000513839 ^M$ test 1%
Prometheus me crache :
expected timestamp or new record, got "\r" ("INVALID") while parsing: "tic_base 000513244 \r
Prometheus fonctionne vraiment comme un curl. Et il attend un format de type openmetrics. Et ce format stipule que chaque ligne doit terminer par un \n, par exemple :
# curl -s localhost:9090/metrics | cat -e | head -3 # HELP go_gc_duration_seconds A summary of the pause duration of garbage collection cycles.$ # TYPE go_gc_duration_seconds summary$ go_gc_duration_seconds{quantile="0"} 2.3458e-05$
$ correspond à un newline unix (\n)
^M$ correspond à un newline dos (\r\n)Je peux toujours placer un serveur php ou autre entre le wes et le prometheus, pour faire l’équivalent d’un sed -e « s/\r// », mais c’est pas très élégant, surtout pour un simple retour chariot !
00 -
RE:
Si vous souhaitez créer votre propre fichier prom CGX afin de ne pas modifier le fichier HOMEVAL.CGX, c’est simple à faire.
Vous créez votre prom.cgx spécifique pour vos Pinces en rajoutant les guillemets comme expliqué dans mon précédent Post pour ajouter vos retour chariots et vous copiez votre fichier cgx dans la racine de la carte SD.
Vous devez rajouter une instance sur votre fichier prom.cgx dans le fichier INDEX.HTM, par le rajout en ligne 185 :
var homeact = new periodicObj(« WEBPROG/CGX/homeact.CGX »); // Ligne existante
var homecfg = new periodicObj(« WEBPROG/CGX/homeini.CGX »); // Ligne existante
var homeval = new periodicObj(« WEBPROG/CGX/homeval.CGX »); // Ligne existante
var prom = new periodicObj(« prom.CGX »); // Ligne à rajouter (#185)
Ensuite vous devez lancer cette instance prom séquentiellement toutes les secondes via la Cde ci-dessous que vous copiez à la suite de celle existante pour le homeval en ligne ~ +/- #387, juste avant la : function $(« #modif »).click(function(){
setInterval(function() {updateMultiple(homeval,update);},1000); // Ligne existante
setInterval(function() {updateMultiple(prom,update);},1000); // Ligne à rajouter$(« #modif »).click(function(){
Voila c’est tout, vous êtes libre de formater votre prom.CGX pour vos Pinces comme vous le souhaitez, sans mettre la panique ailleurs !
cdt
00 -
RE faite ceci dans votre prom.cgx
# Exemple prom.cgx format CGX
# ajout un return en fin du CGX
#
t » <data>\n
c W0T0 <sonde1>%.01f</sonde1>\n
c W0T1 <sonde2>%.01f</sonde2>\n
c W0T2 <sonde3>%.01f</sonde3>\n
t </data> \n »
.00 -
Le client qui va requêter la page .htm est équivalent à curl, ce n’est pas un navigateur. Il n’interprète pas le javascript.
Idem pour les guillemets, ils ne sont pas interprétés:{11:22}~ [si-preprod] # cat wes/_/PROM.CGX t " c Tb11tic_base %09u \n t test 1 \n t " . {11:22}~ [si-preprod] # curl -s http://admin:X@wes/prom.cgx | cat -e "tic_base 000513947 \ntest 1 \n"%
==> expected a valid start token, got « \ » » (« INVALID ») while parsing: « \ » »
Quand me ne met qu’un ligne, ça passe sans pb, mais bon, je vais pas écrire un fichier .cgx par métrique…
En tous cas, merci pour votre aide.
Je vais essayer de farfouiller dans la doc arm keil voir si j’ai pas moyen d’ajouter une newline à la forme unix.00 -
Bonjour,
Formatez votre RPOM.CGX comme ci-dessous, que vous copiez dans la racine de la SD
# PROM.CGX
#
t «
c PPT <array><var>PCE</var><value>0,%d,%d,%d,%d</value></array> \n
c PVV <array><var>SEC</var><value>%d</value></array> \n
c Pej1 <java><var>PCEeJ_1</var><value>%.02f</value></java> \n
c Pej2 <java><var>PCEeJ_2</var><value>%.02f</value></java> \n
c Pej3 <java><var>PCEeJ_3</var><value>%.02f</value></java> \n
c Pej4 <java><var>PCEeJ_4</var><value>%.02f</value></java> \n
c PCj1 <java><var>PCEcJ_1</var><value>%.03f</value></java> \n
c PCj2 <java><var>PCEcJ_2</var><value>%.03f</value></java> \n
c PCj3 <java><var>PCEcJ_3</var><value>%.03f</value></java> \n
c PCj4 <java><var>PCEcJ_4</var><value>%.03f</value></java> \n
c Pem1 <java><var>PCEeM_1</var><value>%.01f</value></java> \n
c Pem2 <java><var>PCEeM_2</var><value>%.01f</value></java> \n
c Pem3 <java><var>PCEeM_3</var><value>%.01f</value></java> \n
c Pem4 <java><var>PCEeM_4</var><value>%.01f</value></java> \n
c PCm1 <java><var>PCEcM_1</var><value>%.01f</value></java> \n
c PCm2 <java><var>PCEcM_2</var><value>%.01f</value></java> \n
c PCm3 <java><var>PCEcM_3</var><value>%.01f</value></java> \n
c PCm4 <java><var>PCEcM_4</var><value>%.01f</value></java> \n
c Pea1 <java><var>PCEeA_1</var><value>%.0f</value></java> \n
c Pea2 <java><var>PCEeA_2</var><value>%.0f</value></java> \n
c Pea3 <java><var>PCEeA_3</var><value>%.0f</value></java> \n
c Pea4 <java><var>PCEeA_4</var><value>%.0f</value></java> \n
c PIt1 <html><id>PCEiJ_1</id><value>%.01f kWh</value></html> \n
c PIt2 <html><id>PCEiJ_2</id><value>%.01f kWh</value></html> \n
c PIt3 <html><id>PCEiJ_3</id><value>%.01f kWh</value></html> \n
c PIt4 <html><id>PCEiJ_4</id><value>%.01f kWh</value></html> \n
c PIt1 <html><id>PCEiJ_1</id><value>%.01f kWh</value></html> \n
c PIt2 <html><id>PCEiJ_2</id><value>%.01f kWh</value></html> \n
c PIt3 <html><id>PCEiJ_3</id><value>%.01f kWh</value></html> \n
c PIt4 <html><id>PCEiJ_4</id><value>%.01f kWh</value></html> \n
t \n «
.et modifiez et rajouter les lignes 238 et 238 bis
AD+='<tr><td>Total jour (conso)</td><td><span id= »PCEcJ_’+id+' » class= »val_GRAS »></span>kWh <span id= »PCEeJ_’+id+' »></span> <span class= »money »/></td></tr>’;
AD+='<tr><td>Total jour (injec)</td><td><span id= »PCEiJ_’+id+' » class= »val_GRAS »></span>kWh <span></span><span></span></td></tr>’;
Créez et Activez l’Instance prom comme décrit plus haut.
Récupérer le String de la réponse curl : strRep = str( curl ….)
Cela devrait fonctionner normalement.
Attention au guillemets du BLOG !!!!
Cdt
00 -
RE : Désolé, j’ai fait une erreur dans le fichier prom.cgx
Voici comment le formater # PROM.CGX
#prom.cgx
#
t »
c Pej1 <java><var>PCEeJ_1</var><value>%.02f</value></java> \n
c Pej2 <java><var>PCEeJ_2</var><value>%.02f</value></java> \n
c Pej3 <java><var>PCEeJ_3</var><value>%.02f</value></java> \n
c Pej4 <java><var>PCEeJ_4</var><value>%.02f</value></java> \n
c PCj1 <java><var>PCEcJ_1</var><value>%.03f</value></java> \n
c PCj2 <java><var>PCEcJ_2</var><value>%.03f</value></java> \n
c PCj3 <java><var>PCEcJ_3</var><value>%.03f</value></java> \n
c PCj4 <java><var>PCEcJ_4</var><value>%.03f</value></java> \n
c PIt1 <html><id>PCEiJ_1</id><value>%.01f kWh</value></html> \n
c PIt2 <html><id>PCEiJ_2</id><value>%.01f kWh</value></html> \n
c PIt3 <html><id>PCEiJ_3</id><value>%.01f kWh</value></html> \n
c PIt4 <html><id>PCEiJ_4</id><value>%.01f kWh</value></html> \n
t \n »
.c’est mieux ainsi et plus court !!!
Cdt
00 -
Re: pour les PCEiJ_x (les 4 derniers) remplacer les %.01f par %.03f pour avoir 3 chiffres après la virgule pour les Injections kWh
00 -
Merci mais je pense qu’il y a une incompréhension.
Ici je cherche simplement à récupérer le retour d’un script CGX et d’y ajouter des newline au format unix (\n)
Je ne souhaite pas modifier l’affichage du serveur web du wes pour y ajouter des valeurs d’injection.
l’idée est d’avoir un retour formaté comme ça :curl -s http://admin:X@wes/prom.cgx | cat -e tic_base 000513947$ pince_conso{pince_no="1"} 123$ pince_conso{pince_no="2"} 456$ wes_up 1$
Hors la sortie du fichier CGX est sur une ligne.
J’arrive à ajouter une nouvelle ligne en ajoutant dans le script cgx:
i newline.inc
quel que soit son contenu. Cependant, les newline ajoutées sont au format DOS et non UNIX (\r\n et non juste \n)
00 -
RE:
Ok, je comprend maintenant ! effectivement je pensais que vous vouliez aussi modifier la page Accueil du WES pour vos Pinces.
Vous travaillez sous Linux, pourquoi ne pas utiliser tout simplement Curl pour lancer un petit Script Python ou PHP qui lancera de son côté la requête sur homeval.cgx modifié ou mieux sur votre prom.cgx au WES
Toujours depuis votre Script, vous retournez à Curl, la réponse du WES au format tel que attendu par openmetrics
Vous créez votre prom.cgx séparé de Homeval.cgx et comme cela si vous le souhaitez, vous pourrez aussi modifier facilement la Page accueil du WES si vous créez l’instance de prom.cgx dans la page accueil.
C’est simple à faire !
00 -
Lorsque je lance le fichier prom.cgx depuis un WES de Test (pas de Pinces connecté) formaté comme le dernier prom.cgx que j’ai posté, je reçois ceci en retour :
» <java><var>PCEeJ_1</var><value>0.00</value></java> \n <java><var>PCEeJ_2</var><value>0.00</value></java> \n <java><var>PCEeJ_3</var><value>0.00</value></java> \n <java><var>PCEeJ_4</var><value>0.00</value></java> \n <java><var>PCEcJ_1</var><value>0.000</value></java> \n <java><var>PCEcJ_2</var><value>0.000</value></java> \n <java><var>PCEcJ_3</var><value>0.000</value></java> \n <java><var>PCEcJ_4</var><value>0.000</value></java> \n <html><id>PCEiJ_1</id><value>0.0 kWh</value></html> \n <html><id>PCEiJ_2</id><value>0.0 kWh</value></html> \n <html><id>PCEiJ_3</id><value>0.0 kWh</value></html> \n <html><id>PCEiJ_4</id><value>0.0 kWh</value></html> \n \n »
Je peux formater le prom.cgx au format JSON au lieu de CGX, comme cela je peux le parser JSON facilement sous Python.
ensuite il suffit de prendre les valeurs du JSON et construire la réponse tel que attendu par openmetrics
Je peux vous faire le script Python si vous le souhaitez ? Il faut avoir Python 3 installé dans votre Linux.
Dites moi ?
Cdt
00 -
Oui c’est ce que je vais finir par faire, mais j’aurai bien aimé m’en passer, ça implique de lancer un serveur web entre les 2 c’est dommage.
Une fois fini je ferai un petit article avec le rendu pour vous montrer à quoi ça ressemble, c’est sympa !
Merci en tous cas pour votre aide00 -
Pourquoi passer par un serveur WEB, openmetrics n’est pas capable d’activer un simple Script en Local ? comme Jeedom, Domoticz etc
Le script peut ensuite lancer la requête au WES via Curl par exemple ou par requests sous Python, etc..
Je ne connais pas du tout openmetrics !
00 -
Bonjour
Bon j’ai fini par faire un script en Go qui parse la sortie du script CGX ajoute des \n:
Le script .CGX:
t # HELP wes_up useless--- t # TYPE wes_up gauge--- t wes_up 1--- # t # HELP tic_base Index BASE en Wh--- t # TYPE tic_base counter--- c Tb11tic_base %09u--- # t # HELP tic_intens TIC intensite instantané--- t # TYPE tic_intens gauge--- c ii10tic_intens %d--- # t # HELP tic_puiss TIC puissance apparante en VA--- t # TYPE tic_puiss gauge--- c iP00tic_puiss %d--- # t # HELP pce_conso Pinces consommation en kWh--- t # TYPE pce_conso counter--- c PCa1pce_conso{pce="ID1"} %.02f--- c PCa2pce_conso{pce="ID3"} %.02f--- c PCa3pce_conso{pce="ID2"} %.02f--- c PCa4pce_conso{pce="PV"} %.02f--- # t # HELP pce_prod Pinces production en kWh--- t # TYPE pce_prod counter--- c PIa1pce_prod{pce="ID1"} %.02f--- c PIa2pce_prod{pce="ID3"} %.02f--- c PIa3pce_prod{pce="ID2"} %.02f--- c PIa4pce_prod{pce="PV"} %.02f--- # t # HELP pce_intens Pinces intensite instantané--- t # TYPE pce_intens gauge--- c P A1pce_intens{pce="ID1"} %.02f--- c P A2pce_intens{pce="ID3"} %.02f--- c P A3pce_intens{pce="ID2"} %.02f--- c P A4pce_intens{pce="PV"} %.02f--- # t # HELP pce_puiss Pinces puissance apparante--- t # TYPE pce_puiss gauge--- c PPT1pce_puiss{pce="ID1"} %d---pce_puiss{pce="ID3"} %d---pce_puiss{pce="ID2"} %d---pce_puiss{pce="PV"} %d---
Le script Go:
package main import ( "bufio" "fmt" "net/http" "regexp" ) func metrics(w http.ResponseWriter, req *http.Request) { resp, err := http.Get("http://admin:admin@wes/PROM.CGX") if err != nil { panic(err) } defer resp.Body.Close() //fmt.Println("Response status:", resp.Status) re := regexp.MustCompile(<code>---</code>) scanner := bufio.NewScanner(resp.Body) for i := 0; scanner.Scan() && i < 2; i++ { fmt.Fprintln(w, re.ReplaceAllString(scanner.Text(), "\n")) } if err := scanner.Err(); err != nil { panic(err) } } func main() { http.HandleFunc("/metrics", metrics) http.ListenAndServe(":8080", nil) }
Et donc le curl :
{10:48}~/Projets/wes/monitoring # curl localhost:8080/metrics # HELP wes_up useless # TYPE wes_up gauge wes_up 1 # HELP tic_base Index BASE en Wh # TYPE tic_base counter tic_base 000533011 # HELP tic_intens TIC intensite instantané # TYPE tic_intens gauge tic_intens 1 # HELP tic_puiss TIC puissance apparante en VA # TYPE tic_puiss gauge tic_puiss 320 # HELP pce_conso Pinces consommation en kWh # TYPE pce_conso counter pce_conso{pce="ID1"} 20.35 pce_conso{pce="ID3"} 15.26 pce_conso{pce="ID2"} 2.12 pce_conso{pce="PV"} 0.97 # HELP pce_prod Pinces production en kWh # TYPE pce_prod counter pce_prod{pce="ID1"} 0.00 pce_prod{pce="ID3"} 0.01 pce_prod{pce="ID2"} 0.00 pce_prod{pce="PV"} 17.09 # HELP pce_intens Pinces intensite instantané # TYPE pce_intens gauge pce_intens{pce="ID1"} 0.29 pce_intens{pce="ID3"} 5.44 pce_intens{pce="ID2"} 0.17 pce_intens{pce="PV"} 5.08 # HELP pce_puiss Pinces puissance apparante # TYPE pce_puiss gauge pce_puiss{pce="ID1"} 50 pce_puiss{pce="ID3"} 1284 pce_puiss{pce="ID2"} 28 pce_puiss{pce="PV"} -1199
-
Cette réponse a été modifiée le il y a 2 années et 6 mois par
n0made.
00 -
Cette réponse a été modifiée le il y a 2 années et 6 mois par
-
-
A-t-on la possibilité de récupérer les compteurs des consos et prod totaux, en plus des compteurs année, mois, jour ?
La doc indique:
• PCj Consommation Journée pince X
• PCm Consommation Mois pince X
• PCa Consommation Année pince X
mais rien pour le total, depuis le début des mesures.
-
Cette réponse a été modifiée le il y a 2 années et 5 mois par
n0made.
00 -
Cette réponse a été modifiée le il y a 2 années et 5 mois par
-
Bonjour,
En principe votre demande correspond à l‘Index Total Actuel : c pIU(x) qui correspond au nombres d’impulsions soit à la consommation Globale depuis la mise en service du Compteur, divisé par le nombre d’impulsion pour l’Unité utilisé.
Exemple si index actuel est : 12345678 et que la config défini 1000 pulses / kWh alors la conso globale est 12345,678 kWh
Valeur dans le PLSVAL.CGX
c pIU1<text><id>PLSa1</id><value>%.0f</value></text>
c pIU2<text><id>PLSa2</id><value>%.0f</value></text>
c pIU3<text><id>PLSa3</id><value>%.0f</value></text>
c pIU4<text><id>PLSa4</id><value>%.0f</value></text>
c pIU5<text><id>PLSa5</id><value>%.0f</value></text>
c pIU6<text><id>PLSa6</id><value>%.0f</value></text>Les consommations Jour, Mois et Année sont tous calculées par la différence de leur Index respectif par rapport à l’Index Total Actuel
Conso Jour = Index actuel – Index début de Journée
Conso Mois = Index actuel – Index début de Mois
Conso Année = Index actuel – Index début d’AnnéeCdt
00 -
Bonjour,
Il s’agit des pinces et non des compteurs d’impulsion. Je pense que j’ai trouvé par contre les valeurs ne correspondent pas tout à fait :
PROM-TEST.CGX :
t # ——— avec total anneé: —
t —
c PCa1pce_conso{pce= »ID1″} %.02f—
c PCa2pce_conso{pce= »ID3″} %.02f—
c PCa3pce_conso{pce= »ID2″} %.02f—
c PCa4pce_conso{pce= »PV »} %.02f—
t —
c PIa1pce_prod{pce= »ID1″} %.02f—
c PIa2pce_prod{pce= »ID3″} %.02f—
c PIa3pce_prod{pce= »ID2″} %.02f—
c PIa4pce_prod{pce= »PV »} %.02f—
t —
t # ——— avec index: —
t —
c P W1pce_conso{pce= »ID1″} %.03f—
c P W2pce_conso{pce= »ID3″} %.03f—
c P W3pce_conso{pce= »ID2″} %.03f—
c P W4pce_conso{pce= »PV »} %.03f—
t —
c PPi1pce_prod{pce= »ID1″} %.03f—
c PPi2pce_prod{pce= »ID3″} %.03f—
c PPi3pce_prod{pce= »ID2″} %.03f—
c PPi4pce_prod{pce= »PV »} %.03f—
#
Renvoi :
#
avec total anneé:
pce_conso{pce= »ID1″} 114.86
pce_conso{pce= »ID3″} 86.14
pce_conso{pce= »ID2″} 48.12
pce_conso{pce= »PV »} 5.90
pce_prod{pce= »ID1″} 0.00
pce_prod{pce= »ID3″} 0.02
pce_prod{pce= »ID2″} 0.00
pce_prod{pce= »PV »} 164.95
#
avec index:
pce_conso{pce= »ID1″} 116.767
pce_conso{pce= »ID3″} 87.581
pce_conso{pce= »ID2″} 48.355
pce_conso{pce= »PV »} 6.339
pce_prod{pce= »ID1″} 235730085112134870000000000000000000000000000000000000000000000000000000000000.000
pce_prod{pce= »ID3″} 235730085112134870000000000000000000000000000000000000000000000000000000000000.000
pce_prod{pce= »ID2″} 235730085112134870000000000000000000000000000000000000000000000000000000000000.000
pce_prod{pce= »PV »} 235730085112134920000000000000000000000000000000000000000000000000000000000000.000
Etant donné que j’ai installé le wes en mars, j’aurai pensé que les valeurs « total année » (PCa) correspondrait exactement aux valeurs « avec index » (P W)
Par contre je ne comprends pas les valeurs d’injection.
Je me suis basé sur un fichier DATA_JEEDOM.CGX qui trainait
00 -
Bon j’ai trouvé dans PCEVAL :
t # --------- avec total anneé: --- t --- c PCa1pce_conso{pce="ID1"} %.02f--- c PCa2pce_conso{pce="ID3"} %.02f--- c PCa3pce_conso{pce="ID2"} %.02f--- c PCa4pce_conso{pce="PV"} %.02f--- t --- c PIa1pce_prod{pce="ID1"} %.02f--- c PIa2pce_prod{pce="ID3"} %.02f--- c PIa3pce_prod{pce="ID2"} %.02f--- c PIa4pce_prod{pce="PV"} %.02f--- t --- t # --------- avec index: --- t --- c P W1pce_conso{pce="ID1"} %.03f--- c P W2pce_conso{pce="ID3"} %.03f--- c P W3pce_conso{pce="ID2"} %.03f--- c P W4pce_conso{pce="PV"} %.03f--- t --- c PIt1pce_prod{pce="ID1"} %.03f--- c PIt2pce_prod{pce="ID3"} %.03f--- c PIt3pce_prod{pce="ID2"} %.03f--- c PIt4pce_prod{pce="PV"} %.03f--- #
Donne:
# avec total anneé: pce_conso{pce="ID1"} 114.86 pce_conso{pce="ID3"} 86.14 pce_conso{pce="ID2"} 48.15 pce_conso{pce="PV"} 5.90 pce_prod{pce="ID1"} 0.00 pce_prod{pce="ID3"} 0.02 pce_prod{pce="ID2"} 0.00 pce_prod{pce="PV"} 164.96 # avec index: pce_conso{pce="ID1"} 116.771 pce_conso{pce="ID3"} 87.581 pce_conso{pce="ID2"} 48.386 pce_conso{pce="PV"} 6.339 pce_prod{pce="ID1"} 0.000 pce_prod{pce="ID3"} 0.017 pce_prod{pce="ID2"} 0.000 pce_prod{pce="PV"} 165.008
Pourquoi cette petite différence ?
00 -
Re: Je pense que les différences des résultats rendus en valeurs de conso par rapport aux valeurs des index est induit par le fait que le WES doit calculer la valeur Float des Conso par rapport à la valeurs Float de l’Index correspondant mais arrondie suivant la valeur des unités après la virgule !?
00 -
Si je demande un foat au centième (%.02f) pour les 2, j’ai toujours une valeur différente:
# avec total anneé: pce_conso{pce="ID1"} 115.76 pce_conso{pce="ID3"} 86.14 pce_conso{pce="ID2"} 48.25 pce_conso{pce="PV"} 5.91 pce_prod{pce="ID1"} 0.00 pce_prod{pce="ID3"} 0.02 pce_prod{pce="ID2"} 0.00 pce_prod{pce="PV"} 164.96 # avec index: pce_conso{pce="ID1"} 117.67 pce_conso{pce="ID3"} 87.58 pce_conso{pce="ID2"} 48.49 pce_conso{pce="PV"} 6.35 pce_prod{pce="ID1"} 0.00 pce_prod{pce="ID3"} 0.02 pce_prod{pce="ID2"} 0.00 pce_prod{pce="PV"} 165.01
00 -
Concernant les Consos calculées par rapport à l’Index global pour les Compteurs Pulses, les valeurs rendues sont exactes.
OR comme il y a une légère différence dans les résultats entre les conso et index pour les Pinces et si ce n’est pas induit par un calcul de type ABS(x) alors il est possible que @nicolas intègre une variation en fonction du secteur mesuré et calcul du <span class= »formule »>cos φ mesuré ? </span>
<span class= »formule »>Ou bien tien compte d’un ajustage de la valeur conso avec la valeur de calibrage CAL(x) défini pour chaque pinces visible dans le fichier PCEAMP.CFG du dossier CFG. exemple CAL0=0.730057
</span>Seul @Nicolas peut donner cette infos.
Cdt
00 -
c PCa = Consommation Année pince
c PIa = Injection Année pince
c P W = index actuel pince
c PIt = Index total injection
La très légère différence sur votre WES est certainement due à la calibration en atelier… (on remet à 0 les conso pas l’index)
Enfin le WES n’est pas un appareil de mesure certifié et des différences (minimes comme sur vos copies d’écran) sont possibles !
00
-
Étiqueté : arm cgi crlf newline late
- Vous devez être connecté pour répondre à ce sujet.