
afficher l intensité Electrique
Re: afficher l intensité Electrique
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


-
- Messages : 625
- Enregistré le : 24 déc. 2018, 17:05
- Localisation : (26)
Re: afficher l intensité Electrique
Remède miracle : vidage du cache.
Pi3 + DD PiDrive + RFXtrx433 + AEON Labs ZW090
7 Modules fil pilote ZMNHJD1
2 détecteur fumées CHACON 34131
5 Bresser Capteur thermo/hygro
1 contacteur porte Philio PST02-1A Z
OWL Micro+ CM180
D2L LINKY
FGR-223 "Roller Shutter 3"
7 Modules fil pilote ZMNHJD1
2 détecteur fumées CHACON 34131
5 Bresser Capteur thermo/hygro
1 contacteur porte Philio PST02-1A Z
OWL Micro+ CM180
D2L LINKY
FGR-223 "Roller Shutter 3"
Re: afficher l intensité Electrique
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
Et le message d'erreur que j'ai est le suivant
et voici les log des events
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
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
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 ?
Est-ce que tu as essayé de faire un print() de la variable tension ? Ton script fonctionne quand tu "forces" la valeur à 235 ?
Mon installation - Ma philosophie sur le forum - Débuter en programmation - Aide au débogage
Mes Tutos : OpenWeatherMap LUA
Mes Tutos : OpenWeatherMap LUA
-
- Messages : 625
- Enregistré le : 24 déc. 2018, 17:05
- Localisation : (26)
Re: afficher l intensité Electrique
Probleme de nom du device tension de l'onduleur TENSION_EDF_IDX100
Dans ton log, on voit un nom de device different
Code : Tout sélectionner
local tension = otherdevices_svalues['TENSION_EDF_IDX100'] --valeur de la tension, de l'onduleur
Strict respect des noms de device, majuscule/minuscule.100 2020-06-09 16:33:02 Tension_EDF_IDX100 237 0/237
Pi3 + DD PiDrive + RFXtrx433 + AEON Labs ZW090
7 Modules fil pilote ZMNHJD1
2 détecteur fumées CHACON 34131
5 Bresser Capteur thermo/hygro
1 contacteur porte Philio PST02-1A Z
OWL Micro+ CM180
D2L LINKY
FGR-223 "Roller Shutter 3"
7 Modules fil pilote ZMNHJD1
2 détecteur fumées CHACON 34131
5 Bresser Capteur thermo/hygro
1 contacteur porte Philio PST02-1A Z
OWL Micro+ CM180
D2L LINKY
FGR-223 "Roller Shutter 3"
Re: afficher l intensité Electrique
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
Oui, Denis l'a vu tout de suite 

Mon installation - Ma philosophie sur le forum - Débuter en programmation - Aide au débogage
Mes Tutos : OpenWeatherMap LUA
Mes Tutos : OpenWeatherMap LUA