Page 1 sur 1

delestage

Publié : 19 janv. 2023, 14:43
par chuyard
Bonjour,
J'ai décidé de mettre en place un délestage pour mon installation. Etant plus que débutant en Lua je me suis inspiré de ce post:https://easydomoticz.com/forum/viewtopic.php?f=17&t=644. le script "device" ne pose pas de problème après ajustement à mes besoins,mais le script "time" me retourne une erreur dans les logs de domoticz.

Code : Tout sélectionner

2023-01-19 11:01:00.031 Error: EventSystem: in /home/pi/domoticz/scripts/lua/-- script_time_delestage2_rev1.lua: .../domoticz/scripts/lua/-- script_time_delestage2_rev1.lua:22: bad argument #1 to 'sub' (string expected, got nil)
Le script modifié par moi et le script original me renvoient tout les deux la même erreur.
Le script modifié:

Code : Tout sélectionner

-- script_time_delestage2.lua
-- Utilisé pour rearmer les délestages


local delestage_1 = 'Delestage_pac'    -- pac contact 1 relais orvibo
local delestage_2 = 'lave_vaisselle'   -- pc lave-vaisselle
local delestage_3 = 'lave_linge'       -- pc lave-linge
local delestage_4 = 'Delestage_2'      -- four contact 2 relais orvibo


local fin_delestage = 1800  -- temporisation du delestage 30 minutes



time = os.date("*t") 

-- fontion calcul difference de temps

function timedifference(d)
   s = otherdevices_lastupdate[d]
   year = string.sub(s, 1, 4)
   month = string.sub(s, 6, 7)
   day = string.sub(s, 9, 10)
   hour = string.sub(s, 12, 13)
   minutes = string.sub(s, 15, 16)
   seconds = string.sub(s, 18, 19)
   t1 = os.time()
   t2 = os.time{year=year, month=month, day=day, hour=hour, min=minutes, sec=seconds}
   difference = os.difftime (t1, t2)
   return difference
end

-- calcul depuis combien de temps le premier  delestage est en fonction 

local on_delest1 = timedifference(delestage_1)


commandArray = {}

		

		-- si on est deleste plus de 30 minutes sur Delestage1 on arrete pour verifier la puissance

		if ( on_delest1 > fin_delestage ) then 
			commandArray[delestage_1]= 'Off'
			commandArray[delestage_2]= 'On'
			commandArray[delestage_3]= 'On'
         commandArray[delestage_4]= 'Off
		end


	
return commandArray
	
	
Je ne vois pas où se trouve l'erreur. Si quelqu'un peut me guider ce sera parfait.
Merci
Michel

Re: delestage

Publié : 20 janv. 2023, 21:27
par Flying Domotic
Je vérifierais bien que 'Delestage_pac' est bien un dispositif Domoticz ;-)

Re: delestage

Publié : 21 janv. 2023, 16:51
par chuyard
Bonjour, pour l'instant je l'ai fait en Blockly et ça fonctionne. je me repencherai dessus un peu plus tard.