• Uitstekend advies
  • Voor 16.30 uur besteld vandaag verstuurd
  • Bijna altijd bereikbaar (+31 73 762 0 762)
  • Maandag koopavond

os.time commando

os.time()

 

Actie :

Geeft de systeemdatum weer van de Z-wave controller indien zonder argumenten gebruikt, of een specifiek onderdeel van de tijd (bijvoorbeelde de minuut of de maand) bij het gebruik van een parameter.

 

Gebruik en parameters :

Er zijn geen argumenten nodig tussen de haakjes.

  • %a     -   Dag van de week afgekort (bijvoorbeeld wed)
  • %A     -   Dag van de week (bijvoorbeeld wednesday)
  • %b     -   Naam van de maand afgekort (bijvoorbeeld sep)
  • %B     -   Naam van de maand (bijvoorbeeld september)
  • %c     -   Datum en tijd (e.g., 09/16/98 23:48:10)
  • %d     -   Dag van de maand (bijvoorbeeld 16) waarde tussen 1 en 31
  • %H     -   Huidig uur in 24-uurs formaat (bijvoorbeeld 23)
  • %I       -   Huidig uur in 12-uurs formaat (bijvoorbeeld 11)
  • %M    -   Huidige minuut in  (bijvoorbeeld 42) waarde tussen 00-59
  • %m     -   Huidige maand in cijfers (bijvoorbeeld 9)  waarde tussen 1-12
  • %p       -  am of pm
  • %s       -  Huidige seconde 
  • %w      -  Huidige weekdag (0-6)  (van zaterdag tot zondag)
  • %x       -  Datum (bijvoorbeeld 09/16/98
  • %X      -  Tijd (bijvoorbeeld time (23:48:10)
  • %Y      -   Jaartal (bijvoorbeeld 2014)
  • %y       -  Jaartal in de getallen (bijvoorbeeld 14)

 

Teruggekregen waarde :

Afhankelijk van meegegeven parameter.

In het onderstaande programma voorbeeld gebruiken we het os.time() commando om een badkamerscene te starten die het licht aandoet op een bepaald dimniveau en evt. de radio als het niet te laat is. Als de deur open gaat moet de verlichting en evt de radio aan. Als na meer dan 20 seconden de deur dichtgaat dan schakelt het licht en de verwarming weer uit.
Zodra de deur geopen word schrijven we de huidige tijd weg in een variabale (BadkamerGeopend). Deze variabale krijgt een Linux tijdswaarde (heel lang getal, zijnde het aantal seconden sinds de start van onze jaartelling). 

 

Programmeervoorbeeld :

 

--[[
%% properties
218 value
%% globals
--]]

local trigger = fibaro:getSourceTrigger()

 

local StatusDeur =fibaro:getValue(218, "value")
local HuidigUur = os.date("%H")


local LampAan =fibaro:getValue(88, "value")
local TijdBadkamerOpen = tonumber( os.time() ) - tonumber(fibaro:getGlobalValue("BadkamerGeopend"))


if ( tonumber(StatusDeur) == 1 ) then
if ( tonumber(LampAan) == 0 ) then

fibaro:setGlobal("BadkamerGeopend", tonumber(os.time() ));
if (( tonumber(HuidigUur) <= 23 ) and ( tonumber(HuidigUur) > 9 ) ) then --voor 21:00 mag de radio aan
     fibaro:call(88, "setValue", "75");
     fibaro:call(91, "turnOn");
elseif (( tonumber(HuidigUur) < 9 ) and ( tonumber(HuidigUur) > 5 ) ) then
     fibaro:call(88, "setValue", "75"); --Smorgens wel sterke verlichting maar geen radio
elseif ( tonumber(HuidigUur) < 5 ) then
    fibaro:call(88, "setValue", "10"); --als het vroeg is dan minder licht aan
end

-- fibaro:debug('lamp aan')
end
elseif ( tonumber(StatusDeur) == 0 ) then
if ( tonumber(TijdBadkamerOpen) > 20 ) then

    fibaro:call(88, "setValue", "00");
    fibaro:call(88, "turnOff");
    fibaro:call(91, "turnOff");
    fibaro:call(89, "turnOff");
end
end

 

 

Zie ook de LUA reference manual 

 

 
Klantenservice telefoonnummer

+31737620762
ma-vrij: 10:00-17:00 en za 10:00-15:00

 
Adres

Gasstraat Oost 14A 5349 AV Oss Nederland

Google maps