Aller au contenu

Créer Variable Avec Temps X Avant Le Couché Du Soleil


Messages recommandés

Posté(e)

Bonsoir à  tous,

 

Comme dit le titre du sujet que je post, je cherche à  créer une variable pour lancer une scène un certain temps donné avant le couché du soleil.

 

merci d'avance pour vos explication :P

 

Diuck

Posté(e)

Voici l'exemple d'une scène qui allume une lampe tous les jours 10 minutes avant le coucher du soleil. La partie qui t'intéresse est celle-ci :

 

os.date("%H:%M", os.time()+10*60) == fibaro:getValue(1, "sunsetHour")

--[[
%% autostart
%% properties
%% globals
--]]

local sourceTrigger = fibaro:getSourceTrigger();
if (sourceTrigger["type"] == "autostart") then
while true do

local currentDate = os.date("*t");
local startSource = fibaro:getSourceTrigger();
if (
 ( ((currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) and os.date("%H:%M", os.time()+10*60) == fibaro:getValue(1, "sunsetHour")) )
)
then
	fibaro:call(12, "turnOn");
end

fibaro:sleep(60*1000);
end
end
Posté(e)

Merci JOSSALF pour ta réponse.

 

Je vais essayé de déchiffrer ce que tu ma envoyé car il est vrais que je préfère les blocs plus simple pour moi je suis novice dans le domaine :P

Posté(e)

tu as aussi le Scheduler, la commande pour ce que tu veux est:

luaDaySchedule:add("Sunset","52", true , "setSceneEnabled" , {"All"}  ,true, -10)

tu mets le numéro de ta scène àla place de 52 et le temps en minute àla place de -10 (-22 par exemple pour 22 minute avant le couché du soleil)

Posté(e)

Pour le moment j'ai créer cette scène pour baisser les volets lorsque le soleil donne sur les fenêtres du coté "EST" et les relever 5 heures plus tard quand le soleil est plus haut, donc pour celle ci pas de problème je me suis basé sur l'heure ou le soleil se lève 

mais pour les autres volets coté "OUEST" il me faut créer cette variable pour faire baisser les volets quelques heures avant le couché du soleil donc il me faut ajouter la variable avec un temps décalé à  ma scène.  

post-495-0-42431500-1398545995_thumb.png

Posté(e)
Sinon ça fonctionne bien en blocs :
 

Scene volet coucher soleil

 

Après tu peux ajouter d'autres actions, comme fermer d'autres volets, allumer des lumières, configurer une variable, etc..;

Posté(e)

Bon si tu veux t'en sortir alors que tu ne comprends rien au lua, fait ta scène en mode bloc et choisis de déclencher ta scène 30 minutes APRÈS le coucher du soleil (tu le corrigeras juste après en lua) et passe tout en lua.

Tu recherches la ligne qui équivaut àla ligne 15 du code que je t'ai donné et tu changes le

os.date("%H:%M", os.time()-30*60) == fibaro:getValue(1, "sunsetHour")

par

os.date("%H:%M", os.time()+""""ici le temps en minutes avant le coucher du soleil""""*60) == fibaro:getValue(1, "sunsetHour")

  • Upvote 1
Posté(e)

Diuck, je crois que tu t'y prend mal.

 

Si tu veux créer une variable night avec le scheduler tu as juste à  faire et là  tu auras lever et coucher du soleil.

luaDaySchedule:add("Sunrise","JOUR_NUIT", "JOUR" , "setGlobal", {"All"}, false , 0);
luaDaySchedule:add("Sunset","JOUR_NUIT", "NUIT" , "setGlobal", {"All"}, false , 0);

Par contre pour tes sleeps, mauvaise idée. Si ta box reboot ou mise à  jour tes volets resteront dans la position.

 

Pour ce genre de code, je te conseille vivement d'utiliser le scheduler avec 2 ou 3 scènes.

 

edit: Je crois qu'avec les postes de fredric tout le monde peut ce débrouiller à  l'installer.

  • Upvote 1
Posté(e)

Merci shad

 

Je suis avec le HC2 depuis 10 jours alors tous vos Scripts LUA pas simple pour moi :angry:  pour vous je vois que c'est de la rigolade alors un peu de compassions pour les novices :huh:

Posté(e)

Shad  à  l'occasion tu reprends tous mes blocs et tu le retranscris en LUA

 

Comme ca c'est mieux :P

Posté(e)

Je pense que la solution de JossAlf de convertir le mode bloc en LUA avec la petite modif est le plus simple dans l'immédiat pour ton besoin de volets.

 

Après, en fonction de tes besoins futurs, de tes connaissances, de ta motivations, tu pourras doucement faire évoluer tout ça vers du LUA, avec le Scheduler.

  • Upvote 1
Posté(e)

@Diuck, je lutte pour un monde meilleur pour les novices   :D

c'est pour cela que j'essai de tout expliquer en détail, et tu n'est pas seul, on ma toujours aidé, surtout papa Shad  ;)  pour ma part.

 

Je suis moi même un novice en Lua et même, j'aime pas ça, mais c'est bien plus puissant et flexible que les bloc, on peut faire tellement de choses que je refait tout mes scène bloc en lua.

  • Upvote 1
Posté(e)

Tu as vu que tu peux transformer tes blocs en lua ? Pas besoin de Shad ;) Le code n'est pas très optimisé mais il est fiable !

Fait des essais àblanc. Ça te permettra de commencer àcomprendre des trucs.

Il y a aussi la traduction de Tomthebest sur l'introduction au lua (un super boulot) :

http://www.domotique-fibaro.fr/index.php/topic/921-résumé-des-fonctions-lua-doc-fibaro/

  • Upvote 2
Posté(e)

Merci à  vous pour votre compensions je me sent plus motivé

 

JossAlf je vais essayer ce que tu m'a envoyé

 

Encore Merci :)

×
×
  • Créer...