Page 5 sur 5

Re: afficher l intensité Electrique

Posté : 06 mars 2019, 09:34
par titis14
Je comprends pas ce matin sur un autre PC c'est bon et je ne me suis pas trompé de log car on vois bien que les graphiques sont identique
Image

Re: afficher l intensité Electrique

Posté : 06 mars 2019, 11:28
par denis_brasseur
Remède miracle : vidage du cache.

Re: afficher l intensité Electrique

Posté : 09 juin 2020, 16:36
par Guigui
Bonjour la communauté !


J'ai un petit souci concernant le debut du script

Si je veux utiliser les données dynamique pour la tension EDF en direct J4ai un message d'erreur



voici mon code

Code : Tout sélectionner

local idx = 19 --idx du device virtual
local cm180 = 'OWL_CM180_IDX1' --nom du capteur CM180
local tension = otherdevices_svalues['TENSION_EDF_IDX100'] --valeur de la tension, de l'onduleur
--local tension = '235' --valeur de la tension, puisque non mesuré par le CM180
function round(num, dec)
   if num == 0 then
	 return 0
   else
	 local mult = 10^(dec or 2)
	 return math.floor(num * mult + 0.5) / mult
   end
end

commandArray = {}



if (devicechanged[cm180]) then
    --on calcul l'intensite
    --print('Valeur '..otherdevices[cm180])
    p1, p2 = string.match(otherdevices_svalues[cm180], "(%d+.%d*);(%d+.%d*)")
    --on les transforme en Ampere
	intensite = p1 / tension
	--2 chiffres après la virgule
	intensite = round(intensite, 2)
	commandArray[#commandArray+1]={['UpdateDevice'] = idx..'|0|'..intensite} ---- mise a jour du device virtuel
end
return commandArray



Et le message d'erreur que j'ai est le suivant

Code : Tout sélectionner

 2020-06-09 16:32:14.407 (RFLink) General/kWh (OWL_CM180_IDX1)
2020-06-09 16:32:14.456 Status: EventSystem: Script event triggered: Script_HP_HC
2020-06-09 16:32:14.419 Error: EventSystem: in Intensité: [string "local idx = 19 --idx du device virtual..."]:23: attempt to perform arithmetic on a nil value (local 'tension') 

et voici les log des events

Code : Tout sélectionner

100	2020-06-09 16:33:02	Tension_EDF_IDX100	237	0/237
1	2020-06-09 16:32:50	OWL_CM180_IDX1	547.000;36340336.000	0/547.000;36340336.000
19	2020-06-09 16:34:50	Intensite_IDX19	2.33	0/2.33


Je comprend rien, j'ai bien une tension qui est logguée dans mon device 100, je m'arrache les cheveux .


Auriez vous une piste ? Je suis très mauvais en dev :/

Merci d'avance

Re: afficher l intensité Electrique

Posté : 09 juin 2020, 18:24
par Keros
Le message d'erreur indique un problème sur la variable tension qui semblerait nulle.

Est-ce que tu as essayé de faire un print() de la variable tension ? Ton script fonctionne quand tu "forces" la valeur à 235 ?

Re: afficher l intensité Electrique

Posté : 09 juin 2020, 18:37
par denis_brasseur
Probleme de nom du device tension de l'onduleur TENSION_EDF_IDX100

Code : Tout sélectionner

local tension = otherdevices_svalues['TENSION_EDF_IDX100'] --valeur de la tension, de l'onduleur
Dans ton log, on voit un nom de device different
100 2020-06-09 16:33:02 Tension_EDF_IDX100 237 0/237
Strict respect des noms de device, majuscule/minuscule.

Re: afficher l intensité Electrique

Posté : 09 juin 2020, 22:41
par Guigui
Strict respect des noms de device, majuscule/minuscule.

LE boulet... Effectivement la ça fonctionne correctement :/


@denis_brasseur mille mercis, désolé pour la bourde de débutant.

ps merci aussi @Keros d'avoir pris le temps de me répondre!

Re: afficher l intensité Electrique

Posté : 09 juin 2020, 22:53
par Keros
Oui, Denis l'a vu tout de suite :mrgreen: