[LUA] Repartition Consommation HC / HP...

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: Repartition Consommation HC / HP...

Message par denis_brasseur »

dg-59 a écrit : 03 août 2020, 20:15 ou le OWL_Intuition est pas compatible avec mon RFLink_v1.1_r48 peux etre que je devrai invertir dans un Rfxcom
La première chose à regarder, c'est si dans l’onglet dispositif, ton Owl est présent, activé (flèche bleue) et s'il indique une valeur de consommation.
Si c'est le cas, cela devait fonctionner.

Reste ensuite à voir la valeur affichée pour savoir comment l'exploiter.
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
dg-59
Messages : 34
Inscription : 09 juil. 2020, 11:09

Re: Repartition Consommation HC / HP...

Message par dg-59 »

Bonsoir oui il sont bien affiché le transmetteur donne les kwh et la pince les watts
le model que j'ai :

Image

Image

Image

je ne trouve pas pour réunir les 2 informations en compteur virtuel globale, pour pouvoir me faire un compteur hc/hp
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: Repartition Consommation HC / HP...

Message par Keros »

Ne change pas de matériel, il me semble fonctionnel : tu as la puissance instantanée sur chaque pince et le transmetteur te donnes le cumul des 3 pinces.

Ne te bloque pas à vouloir recréer un capteur global > utilises les différents capteurs que tu appels en fonction des besoin du script.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Repartition Consommation HC / HP...

Message par vil1driver »

Et il est impératif que chaque device est un nom unique.
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua

Un ex domoticzien
dg-59
Messages : 34
Inscription : 09 juil. 2020, 11:09

Re: Repartition Consommation HC / HP...

Message par dg-59 »

j'ai juste une pince les autres je m'en servirai pas je changerai les noms
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Repartition Consommation HC / HP...

Message par vil1driver »

Pas certain de comprendre ta phrase.
Tu vas les renommer maintenant c'est ça ?
(c'est déjà fait ? Ya une heure ? Good ! )
C'est vraiment important.
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua

Un ex domoticzien
dg-59
Messages : 34
Inscription : 09 juil. 2020, 11:09

Re: Repartition Consommation HC / HP...

Message par dg-59 »

oui j'ai tout supprimer est tout refait, chercher de nouveau un script
juste la pince OWL1 que je me sers, j'ai pas acheté d'autre pinces ampèremétrique

Image

celui la : http://www.tisseurdetoile.net/blog/2016 ... oticz.html

si je met :

Code : Tout sélectionner

local capteurGlobal = 'OWL'

j'obtient

Code : Tout sélectionner

2020-08-04 21:31:22.912 Status: LUA: conso_last = 0
2020-08-04 21:31:22.912 Status: LUA: delta = 6273.0
2020-08-04 21:31:22.912 Status: LUA: Inst = 0.0
2020-08-04 21:31:22.913 Status: LUA: Cum = 6273.0
2020-08-04 21:31:22.913 Status: LUA: période : Heure Pleine
est si je met

Code : Tout sélectionner

local capteurGlobal = 'OWL1'
j'obtient

Code : Tout sélectionner

2020-08-04 21:32:58.867 Status: LUA: conso_last = 0
2020-08-04 21:32:58.867 Status: LUA: delta = 0.0
2020-08-04 21:32:58.867 Status: LUA: Inst = 944.0
2020-08-04 21:32:58.867 Status: LUA: Cum = 0.0
2020-08-04 21:32:58.867 Status: LUA: période : Heure Pleine
et pour les 2

Code : Tout sélectionner

Error: EventSystem: in script_device_CONSO: [string "---------------------------------------------..."]:75: attempt to perform arithmetic on a nil value (local 'conso_hp')
j'arrive toujours pas a mettre les 2 infos en même temps
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: Repartition Consommation HC / HP...

Message par Keros »

La modif du script est simple : créé toi un local capteurGlobal2 = 'OWL1' et dans les lignes qui servent au calcul de Inst, tu remplaces capteurGlobal par capteurGlobal2.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
dg-59
Messages : 34
Inscription : 09 juil. 2020, 11:09

Re: Repartition Consommation HC / HP...

Message par dg-59 »

voila je vient de le faire mais toujours une erreur ou j'ai mal placer le capteurGlobal2 est les compteur hp/hc reste a 0

Code : Tout sélectionner

------------------------------------------------------------------------------
--
-- Copyright © 2016 Le TisseurDeToile <webmaster@tisseurdetoile.net> and released under
-- the GNU General Public License, v2 or later.
-- NOTA : don't forget to create variable
--
-- Installation :
-- Créer les variables Utilisateurs suivantes : CONSO_LAST, CONSO_LAST_HC, CONSO_LAST_HP
-- Créer deux capteur virtuel : Capteur electrique ent noter leur index
------------------------------------------------------------------------------
--
local capteurGlobal = 'OWL'
local capteurGlobal2 = 'OWL1'
local debug = 'OUI'   				-- mode debug
local meter_base = 'CONSO_LAST'
local flagHC = 'HC'
local delta = 0
local inc = 0

local idxCptHP = '170'
local idxCptHC = '171'
------------------------------------------------------------------------------
-- Fonction de mise à jour
function update(id, power, energy)
	commandArray[inc]= {['UpdateDevice'] = id .. "|0|" .. power .. ";" .. energy}
	inc = inc + 1
    return
end

commandArray = {}

if (devicechanged[capteurGlobal]) then
	
	conso_last = tonumber(uservariables['CONSO_LAST'])
	
	if not conso_last then 
		conso_last = 0
	end
	
    -- Recuperation des valeurs du compteur global
    local consoCumule
    local consoInstant
    consoInstant, consoCumule = otherdevices_svalues[capteurGlobal]:match("([^;]+);([^;]+)")
 
    
    consoInstant = otherdevices_svalues[capteurGlobal2]:match("([^;]+);([^;]+)")
    consoInstant = tonumber(consoInstant)
    consoCumule = tonumber(consoCumule)
    
	delta = consoCumule - conso_last
	
	commandArray['Variable:CONSO_LAST'] = tostring(consoCumule)

	local conso_hc = tonumber(uservariables['CONSO_LAST_HC'])
	local conso_hp = tonumber(uservariables['CONSO_LAST_HP'])
	
	if (debug == 'OUI') then
		print('conso_last = '..tostring(conso_last))
		print('delta = '..tostring(delta))
	    print('Inst = '..tostring(consoInstant))
	    print('Cum = '..tostring(consoCumule))
		
	    if (otherdevices[flagHC] == 'On') then
			print('période : Heure Creuse')
		else
			print('période : Heure Pleine')	
		end
	end
	
    if (otherdevices[flagHC] == 'On') then
        -- Periode heures creuse
		commandArray['Variable:CONSO_LAST_HC'] = tostring(conso_hc + delta)
		update(idxCptHC, consoInstant, conso_hc)
		update(idxCptHP, 0, conso_hp)		
	else
		commandArray['Variable:CONSO_LAST_HP'] = tostring(conso_hp + delta)
		update(idxCptHP, consoInstant, conso_hp)
		update(idxCptHC, 0, conso_hc)		
	end
	
end

return commandArray

Code : Tout sélectionner

2020-08-04 23:13:22.884 Status: LUA: conso_last = 0
2020-08-04 23:13:22.884 Status: LUA: delta = 6602.0
2020-08-04 23:13:22.884 Status: LUA: Inst = 896.0
2020-08-04 23:13:22.884 Status: LUA: Cum = 6602.0
2020-08-04 23:13:22.884 Status: LUA: période : Heure Creuse
conso_last reste toujours a 0 je sais pas si ces normal

et quand je suis en HC

Code : Tout sélectionner

2020-08-04 23:13:22.884 Error: EventSystem: in Script #1: [string "--..."]:72: attempt to perform arithmetic on a nil value (local 'conso_hc')
et quand je suis en Hp

Code : Tout sélectionner

2020-08-04 23:17:22.883 Error: EventSystem: in Script #1: [string "--..."]:76: attempt to perform arithmetic on a nil value (local 'conso_hp')
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: Repartition Consommation HC / HP...

Message par denis_brasseur »

Rassures moi :
-- NOTA : don't forget to create variable
--
-- Installation :
-- Créer les variables Utilisateurs suivantes : CONSO_LAST, CONSO_LAST_HC, CONSO_LAST_HP
Les 2 messages d'erreur indiquent une valeur nulle pour conco_hc et conso_hp, correspondant aux valeurs de 2 de ces 3 variables, conso_last étant la valeur de la 3eme variable.
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
Répondre