Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon.no!

Lua script fungerer ikke ordentlig


deve87

Anbefalte innlegg

Hei. Har laget et script for en bevegelses sensor som Domoticz skal styre tiden på i LUA via en økende variabel teller. Det fungerer slik det skal, men et lite problem er det.

 

Når jeg beveger meg foran sensor, kommer lyset på fult! Da skal variabel begynne å telle (legge til +1 hvert sekund), men den starter ikke telleren!

Hvis jeg manuelt går inn i Domoticz å slår av lys fra PÅ til AV også PÅ igjen. Så begynner den å telle og den setter verdien tilbake til 0 igjen hvis sensor oppdager ny bevegelse og der igjen teller opp på nytt helt til den kommer til +60 i verdi. Da går den tilbake til 0 igjen og telleren stopper og setter lyset AV igjen. Slik den skal

 

commandArray = {}
local s = os.date('%S')

if      (s % 1 == 0) and otherdevices ['Taklampe gang 2.etg (1)'] == 'On' and otherdevices["Bevegelse gang 2.etg"]=='Off' then
        commandArray['Variable:Taklampe gang 2.etg']= tostring(uservariables["Taklampe gang 2.etg"] +1)
		--tellevariabel som legger til +1 hvert sekund
end

if	otherdevices["Bevegelse gang 2.etg"]=='On' and otherdevices ['Taklampe gang 2.etg (1)'] == 'Off' then
        commandArray['Taklampe gang 2.etg (2)'] = 'Set Level: 100'
        commandArray['Taklampe gang 2.etg (1)'] = 'Set Level: 100'
		--setter lyset på fult så lenge lyset i rommet allerede var av
end

if	otherdevices ['Bevegelse gang 2.etg'] == 'On' then
        commandArray['Variable:Taklampe gang 2.etg'] = tostring(0)
		--setter variabel tilbake til 0 hvis det oppdages ny bevegelse
end

if	uservariables["Taklampe gang 2.etg"] > 60 and otherdevices["Bevegelse gang 2.etg"]=='Off' then
        commandArray['Taklampe gang 2.etg (2)'] = 'Set Level: 33'
        commandArray['Taklampe gang 2.etg (1)'] = 'Off'
        commandArray['Variable:Taklampe gang 2.etg'] = tostring(0)
		--siste hendelse som setter lyset svakt på (AV) etter at 60sekunder har gått uten at det har blitt oppdaget ny bevegelse og setter teller til 0
end        
return commandArray

 

Endret av deve87
Lenke til kommentar
Del på andre sider

Det fungerer hvis jeg fjerner 

otherdevices['Taklampe gang 2.etg (1)'] == 'On'

Slik at det blir

if (s % 1 == 0) and otherdevices["Bevegelse gang 2.etg"]=='Off' then

men da teller variabel til det uendelige hvis det ikke er bevegelse. Gjør jo ingenting, men tenkte og ikke la den telle til evig så lenge lyset er AV..

Endret av deve87
Lenke til kommentar
Del på andre sider

Bli med i samtalen

Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.

Gjest
Skriv svar til emnet...

×   Du har limt inn tekst med formatering.   Lim inn uten formatering i stedet

  Du kan kun bruke opp til 75 smilefjes.

×   Lenken din har blitt bygget inn på siden automatisk.   Vis som en ordinær lenke i stedet

×   Tidligere tekst har blitt gjenopprettet.   Tøm tekstverktøy

×   Du kan ikke lime inn bilder direkte. Last opp eller legg inn bilder fra URL.

×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.