Vous avez des questions concernant les scripts dans Domoticz, posez vos questions ici, quelque soit le langage nous tenterons des réponses pertinentes ...
-- Marc - 2020
-- Ce script contrôle la charge de la voiture en fonction de la production solaire
--------------------------------
------ Variables à éditer ------
--------------------------------
local seuil = 2300 -- seuil de déclenchement de la charge
local controle = 894 --inter charge on off
local psolaire = 722 --Valeur de la production solaire format puissance/total
local Charge = 654 --Nom de l interrupteur charge on/off
--------------------------------
-- Fin des variables à éditer --
--------------------------------
commandArray = {}
-- d'exécution de ce script.
if (devicechanged[psolaire]) then
local solaire = devicechanged[string.format('%s_solaire', psolaire)] --puissance solaire produite
--On n'agit que si le "controle" est actif
if (otherdevices[contrôle]=='On') then
print('-- Gestion charge ACTIF --')
if (solaire > (seuil) ) then
print('Mise en charge de la voiture')
commandArray[Charge]='On'
elseif (solaire < (seuil)) then
print('Erret charge voiture')
commandArray[Charge]='Off'
end
end
end
return commandArray
Tu vas devoir retravailler le script de Papoo car ta variable est pas facile à utiliser en l'état.
C'est une variable pas un device donc script de type VARIABLE
Et usage de
uservariablechanged['ma variable'] pour détecter la maj
Et uservariables['ma variable'] pour la lire
MAJ = VIDER LE CACHE(<-Clicable) /!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus modules.lua
--------------------------------
------ Variables à éditer ------
--------------------------------
local seuil = 1500 -- seuil de déclenchement de la charge
local controle = 894 --inter charge on off
local Psolaire = 895 --Valeur de la production solaire format puissance/total
local Charge = 654 --Nom de l interrupteur allumer/éteindre charge = 885
--------------------------------
-- Fin des variables à éditer --
--------------------------------
commandArray = {}
if (devicechanged[Psolaire]) then
print("Puissance solaire = "..Psolaire)
if (otherdevices[controle]=='On') then
print('-- Gestion charge ACTIF --')
if (Psolaire > (seuil) ) then
print('Mise en charge de la voiture')
commandArray[Charge]='On'
elseif (Psolaire < (seuil)) then
print('Arret charge voiture')
commandArray[Charge]='Off'
end
end
end
return commandArray
--local debugging = true
local seuil = 1500 -- seuil de declenchement de la charge
local controle = otherdevices['atester_inter'] --inter charge on off
local Puissance_solaire = tonumber(otherdevices['Psolaire'])
local Charge = "Veranda guirlande Dio1" --Nom de l interrupteur allumer/?teindre charge = 885
-----------------------
commandArray = {}
time=os.date("*t")
if (((time.min-1) % 2) == 0) then-- export des données toutes les 1 minutes en commençant par xx:01
print("Puissance solaire = "..Puissance_solaire)
if (controle=='On') then
print('-- Gestion charge ACTIF --')
if (Puissance_solaire > seuil ) then
print('Mise en charge de la voiture')
commandArray[Charge]="On"
elseif (Puissance_solaire < seuil) then
print('Arret charge voiture')
commandArray[Charge]="Off"
end
elseif (controle=='Off') then
print('-- Gestion charge INACTIF Arret charge voiture--')
commandArray[Charge]="Off"
end
end
return commandArray
--------------------------------
------ Variables à éditer ------
--------------------------------
local seuil = 1500 -- seuil de déclenchement de la charge
local controle = 894 --inter charge on off
local Psolaire = 895 --Valeur de la production solaire format puissance/total
local Charge = 654 --Nom de l interrupteur allumer/éteindre charge = 885
--------------------------------
-- Fin des variables à éditer --
--------------------------------
commandArray = {}
if (devicechanged[Psolaire]) then
print("Puissance solaire = "..Psolaire)
if (otherdevices[controle]=='On') then
print('-- Gestion charge ACTIF --')
if (Psolaire > (seuil) ) then
print('Mise en charge de la voiture')
commandArray[Charge]='On'
elseif (Psolaire < (seuil)) then
print('Arret charge voiture')
commandArray[Charge]='Off'
end
end
end
return commandArray
local controle = 894 --inter charge on off
if (otherdevices[controle]=='On') then
otherdevices[controle] ne fonctionne pas avec l'idx, mais avec le nom du device.
Idem pour devicechanged[Psolaire], équivalent dans ton code à devicechanged[895].