-
Compteur de contenus
227 -
Inscription
-
Dernière visite
-
Jours gagnés
2
Tout ce qui a été posté par p78ch201
-
bonne idée => c'est fait (par contre, je peux pas tester si j'ai écrit une boulette, je crois pas, mais je suis jamais trop sur !) faudrait également que je fasse une variable au début du script pour définir les jours ou on veut pas que ça coupe en journée (ligne 84 / 86)
-
c'est déja un peu le cas : - pendant les plages horaires d'extinction, la loop vérifie la consommation de la prise et si la conso passe en dessous d'un seuil (chez moi 50W - ligne 52 et 97) il l’éteint. J'ai fait cette loop pour éviter que la télé s'éteigne si je n'ai pas fini mon film avant le début de la plage horaire. - ensuite j'ai réfléchie à une autre mode ou effectivement il coupait la prise des que ça passait sous une valeur => problème, si je veux rallumer ma télé, faut que j'aille rallumer ma prise et faire en sorte que la conso dépasse la valeur de 50W avant que la loop n’éteigne ma prise... et généralement la loop est plus rapide que moi donc je me contente de les eteindre quand je suis pas la et les appareils sont en veille quand je suis la. si tu as une autre idée, je suis preneur ! (sur uniquement télé x2 + home cinema + ps3 x2, je gagné env. 60€ par an, c'est deja ça de pris... ca rembourse les 3 wallplug en 3 ans )
-
sinon essaie de rajouter des lignes du type au début : fibaro:debug(string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min)) fibaro:debug(fibaro:getGlobalValue("Reveil")) ainsi tu pourras voir ce qui cloche dans le déclenchement de la scène
-
perso j'aurais fait un petit module avec 2 bouton (genre reveil ON et OFF) avec un variable globale pour le reveil, (mais bon, je ne sais faire que ça correctement ) avec ce type de code : local time_reveil="06:45"; local minute = 60000 --in milliseconds local currentDate = os.date("*t"); local currentTime = string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min); ------------------------------------------------------------------------------------------------------------- -- Reveil ------------------------------------------------------------------------------------------------------------- if time_reveil == currentTime then etc. etc. pour definir le weekend : j'ai une petite variable weekend qui me sert pour mes scenes variable "weekend" et "Jour_semaine" Cette variable est définie dans un autre module dont voici le code : (la variable "Jour_semaine" est une variable globale ayant 7 valeurs possibles : Lundi à Dimanche dont on n'a pas besoin ici) --[[ %% properties %% globals --]] local minute = 60000 --in milliseconds local currentDate = os.date("*t"); local currentTime = string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min); --wday=1 is Sunday --wday=2 is Monday --wday=3 is Tuesday --wday=4 is Wednesday --wday=5 is Thursday --wday=6 is Friday --wday=7 is Saturday local weekend = fibaro:getGlobal("weekend"); local jour = fibaro:getGlobal("Jour_semaine"); if (currentDate.wday == 1 ) then fibaro:setGlobal("weekend", 1); fibaro:setGlobal("Jour_semaine", "Dimanche") end if (currentDate.wday == 2 ) then fibaro:setGlobal("weekend", 0); fibaro:setGlobal("Jour_semaine", "Lundi") end if (currentDate.wday == 3 ) then fibaro:setGlobal("weekend", 0); fibaro:setGlobal("Jour_semaine", "Mardi") end if (currentDate.wday == 4 ) then fibaro:setGlobal("weekend", 0); fibaro:setGlobal("Jour_semaine", "Mercredi") end if (currentDate.wday == 5 ) then fibaro:setGlobal("weekend", 0); fibaro:setGlobal("Jour_semaine", "Jeudi") end if (currentDate.wday == 6 ) then fibaro:setGlobal("weekend", 0); fibaro:setGlobal("Jour_semaine", "Vendredi") end if (currentDate.wday == 7 ) then fibaro:setGlobal("weekend", 1); fibaro:setGlobal("Jour_semaine", "Samedi") end
-
Pour fêter ma nomination pour Mr Avril en fanfare, voici mon petit module qui gère mes prises automatiquement pour couper la veille des appareils. Etape 1 Créer une variable globale "SysPrise_auto" avec les vlaeurs "ON" et "OFF" Créer une variable globale "Jour_semaine" avec 7 valeurs "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi" et "Dimanche" Etape 2 Créer un module avec - 1 label - 2 boutons Etape 3 - Label Label : "Prise auto : " ID : "Label1" Etape 4 - Bouton 1 Label "Auto" code lua : fibaro:setGlobal("SysPrise_auto", "ON"); fibaro:call(103, "setProperty", "ui.Label1.value", "Auto"); icone : 103 est l'ID du module virtuel Etape 5 - Bouton 2 Label "Manuel" code lua : fibaro:setGlobal("SysPrise_auto", "OFF"); fibaro:call(103, "setProperty", "ui.Label1.value", "Manuel"); icone : 103 est l'ID du module virtuel Etape 6 - Main Loop --[[ %% properties %% globals --]] local ID_wallplug = {35,40,55}; --ID wallplug local conso = 50; -- consommation en dessous de laquelle on coupe les prises local sysprise_auto = fibaro:getGlobal("SysPrise_auto"); local jour = fibaro:getGlobal("Jour_semaine"); ------------------------------------------------------------------------------------------------------------- -- Définition des horaires Auto des Prises ------------------------------------------------------------------------------------------------------------- local time_off_1 = "08:30"; -- Si on décide de couper les prises en journée, ici est l'heure de coupure local time_on_1 = "16:30"; -- Si on décide de couper les prises en journée, ici est l'heure de rallumage local time_off_2; -- heure ou on éteint les prises la nuit local time_on_2 = "06:30"; -- l'heure de rallumage de la coupure de nuit if jour == "Samedi" or jour == "Dimanche" then time_off_2 = "02:00"; -- Le samedi et le Dimanche, les prises sont coupées à 2h du matin else time_off_2 = "00:01"; -- Les jours de semaine, les prises sont coupées à minuit. end ------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------- -- Dans la partie suivante se trouve le code qui fait varié la variable "Jour_semaine" ------------------------------------------------------------------------------------------------------------- local minute = 60000 --in milliseconds local currentDate = os.date("*t"); local currentTime = string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min); if (currentDate.wday == 1 ) then fibaro:setGlobal("Jour_semaine", "Dimanche") end if (currentDate.wday == 2 ) then fibaro:setGlobal("Jour_semaine", "Lundi") end if (currentDate.wday == 3 ) then fibaro:setGlobal("Jour_semaine", "Mardi") end if (currentDate.wday == 4 ) then fibaro:setGlobal("Jour_semaine", "Mercredi") end if (currentDate.wday == 5 ) then fibaro:setGlobal("Jour_semaine", "Jeudi") end if (currentDate.wday == 6 ) then fibaro:setGlobal("Jour_semaine", "Vendredi") end if (currentDate.wday == 7 ) then fibaro:setGlobal("Jour_semaine", "Samedi") end local id_w; if sysprise_auto == "ON" then ------------------------------------------------------------------------------------------------------------- -- Nuit ------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------- -- Coupure Nuit ------------------------------------------------------------------------------------------------------------- if time_off_2 <= currentTime and currentTime < time_on_2 then fibaro:debug("Coupure nuit") for i=1, #ID_wallplug do id_w = tonumber(ID_wallplug[i]); --fibaro:debug(id_w.."valeur : "..tonumber(fibaro:getValue(id_w, "valueSensor"))) if tonumber(fibaro:getValue(id_w, "value")) then fibaro:debug(id_w.." allumé") if tonumber(fibaro:getValue(id_w, "valueSensor")) < conso then fibaro:debug("veille => turnOff "..id_w) fibaro:call(id_w, 'turnOff'); end end end end ------------------------------------------------------------------------------------------------------------- -- Rallumage Nuit ------------------------------------------------------------------------------------------------------------- local id_w; if time_on_2 == currentTime then fibaro:debug("Rallumage nuit") for i=1, #ID_wallplug do id_w = tonumber(ID_wallplug[i]); --fibaro:debug(id_w.."valeur : "..tonumber(fibaro:getValue(id_w, "valueSensor"))) if tonumber(fibaro:getValue(id_w, "value")) == 1 then fibaro:debug("r_nuit prise allumé =1 "..tonumber(fibaro:getValue(id_w, "value"))); fibaro:debug(id_w.." déjà allumé") else fibaro:debug("r_nuit prise allumé =0 "..tonumber(fibaro:getValue(id_w, "value"))); fibaro:debug(id_w.." turnOn") fibaro:call(id_w, 'turnOn'); end end end ------------------------------------------------------------------------------------------------------------- -- Jour - définir ici les jours ou vous souhaitez couper les prises en journée ------------------------------------------------------------------------------------------------------------- if jour == "Samedi" or jour == "Dimanche" or jour == "Lundi" or jour == "Jeudi" then fibaro:debug("Prise OFF soir seulement"); elseif jour == "Mardi" or jour == "Mercredi" or jour == "Vendredi" then fibaro:debug("Prise OFF journée et soir"); ------------------------------------------------------------------------------------------------------------- -- Coupure Jour ------------------------------------------------------------------------------------------------------------- if time_off_1 <= currentTime and currentTime < time_on_1 then fibaro:debug("Coupure jour") for i=1, #ID_wallplug do id_w = tonumber(ID_wallplug[i]); --fibaro:debug(id_w.."valeur : "..tonumber(fibaro:getValue(id_w, "valueSensor"))) if tonumber(fibaro:getValue(id_w, "value")) == 1 then fibaro:debug(id_w.." allumé") if tonumber(fibaro:getValue(id_w, "valueSensor")) < conso then fibaro:debug("veille => turnOff "..id_w) fibaro:call(id_w, 'turnOff'); end end end end ------------------------------------------------------------------------------------------------------------- -- Rallumage Jour ------------------------------------------------------------------------------------------------------------- if time_on_1 == currentTime then fibaro:debug("Rallumage jour") for i=1, #ID_wallplug do id_w = tonumber(ID_wallplug[i]); if tonumber(fibaro:getValue(id_w, "value")) == 1 then fibaro:debug("r_jour prise allumé =1 "..tonumber(fibaro:getValue(id_w, "value"))); fibaro:debug(id_w.." déjà allumé") else fibaro:debug("r_jour prise allumé =0 "..tonumber(fibaro:getValue(id_w, "value"))); fibaro:debug(id_w.." turnOn") fibaro:call(id_w, 'turnOn'); end end end ------------------------------------------------------------------------------------------------------------- end ------------------------------------------------------------------------------------------------------------- end et voila ! ce module coupe les prises en veille : - la nuit à partir de 00:01 et les rallume à 6h30 - le jour (sauf le weekend et les jour ou ma femme est à la maison) entre 8h30 et 16h30. Les lignes à modifier pour chacun sont : ligne 7 : id du smartphone (ça ne sert à rien, il n'ya plus de modifications push dans le module, c'etait juste pour les phases de tests) ligne 8 : id de vos wallplug a renseigner ici ligne 15 à 25 : mettre vos horaires souhaités ligne 102 & 104 : définissez les jours ou vous coupez les prises le jour. pour alleger le code, vous pouvez aussi supprimer toutes les lignes fibaro:debug(xxx) qui me servait a vérifier mon code, maintenant qu'il est plutot fonctionnel, elle ne serve plus a grand chose, si ce n'est vérifié ce que fait le code.
-
Compatible V3-V4-Lite Everspring - ST814 - Capteur de Température et d'Humidité
p78ch201 a répondu à un(e) sujet de Moicphil dans Everspring
Ca arrive aussi chez moi, mais uniquement avec le capteur d'humidité "non configuré" alors que le capteur de température est OK. comme les valeurs s'actualisent, je n'y fait pas plus attention que cela- 112 réponses
-
- compatible v3-v4-lite
- humiditã©
-
(et 4 en plus)
Étiqueté avec :
-
Topic unique Fibaro - Motion Sensor - Fgms-001
p78ch201 a répondu à un(e) sujet de Moicphil dans Modules Fibaro
c'est commandé ! je vous ferais un petit retour dès réception (que j'espère très bientôt !!) -
Bonjour, Les premières lignes servent àaffecter l heure dans un variable ( currentTime ) qui utilisée dans les conditions. Ne pas les modifier !
-
j'ai changé un peu mon code pour vérifier que si un volet est deja ouvert, ne pas essayer de l'ouvrir : --[[ %% properties %% globals --]] local smartphoneID = 12; local ID_volet_salon = {6,7,8,14}; --ID volets salon + cuisine local ID_volet_etage = {30,31,32}; --ID volets étage local ID_volet_chambre_E = {27}; --ID volet Chambre Enfant local ID_volet = {6,7,8,14,30,31,32}; --ID tous les volets sauf enfant local ID_fenetre_salon = {9,15,16,16}; --ID fenetres salon + cuisine --(deuxieme 16 àremplacer par ID fenetre cuisine, le mien est mort) local ID_fenetre_etage = {34,34,33}; --ID fenetres étage local ID_fenetre_chambre_E = {28}; --ID fenetre Chambre Enfant local ID_fenetre = {9,15,16,16,34,34,33}; --ID toutes les fenetres sauf enfant --(deuxieme 16 àremplacer par ID fenetre cuisine, le mien est mort) --(deuxième 34 correspond àune fenetre qui ne s'ouvre pas) ------------------------------------------------------------------------------------------------------------- -- Définition des horaires Auto des volets ------------------------------------------------------------------------------------------------------------- local time_ouv_auto_1 = "06:30"; --debut plage horaire douche local time_ouv_auto_2 = "10:30"; --fin plage horaire douche local time_ouv_Et; --ouverture volets etage local time_ouv_S; --ouverture volets salon local time_ferm_E = "19:00"; -- fermeture volet chambre enfant local time_ferm_Et local time_ferm_S = "23:30"; -- fermeture volets Salon local weekend = fibaro:getGlobal("weekend"); --fibaro:debug("weekend"..weekend); if weekend == 1 then -- weekend time_ouv_Et = "10:30"; -- ouverture volets Etage time_ferm_Et = "23:30"; -- fermeture volets Etage time_ouv_S = "07:30"; -- ouverture volets Salon fibaro:debug("c'est le weekend"); else -- semaine time_ferm_Et = "22:00"; -- fermeture volets Etage time_ouv_Et = "07:30"; -- ouverture volets Etage time_ouv_S = "07:30"; -- ouverture volets Salon fibaro:debug("c'est la semaine"); end fibaro:debug("ouverture etage :"..time_ouv_Et); fibaro:debug("ouverture salon :"..time_ouv_S); fibaro:debug("fermeture etage :"..time_ferm_Et); ------------------------------------------------------------------------------------------------------------- local minute = 60000 --in milliseconds local currentDate = os.date("*t"); local currentTime = string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min); ------------------------------------------------------------------------------------------------------------- -- Ouvrir Auto Groupe Salon si Douche ------------------------------------------------------------------------------------------------------------- local id_v = 0; if time_ouv_auto_1 <= currentTime and currentTime <= time_ouv_auto_2 then if tonumber(fibaro:getValue(46, "value")) > 70 then fibaro:debug("humidité "..tonumber(fibaro:getValue(46, "value"))); for i=1, #ID_volet_salon do id_v = tonumber(ID_volet_salon[i]); if ( tonumber(fibaro:getValue(id_v, "value")) == 0 ) then fibaro:call(id_v, "open"); fibaro:debug("ouverture volet "..id_v); else fibaro:debug("volet "..id_v.." deja ouvert"); end end fibaro:log("Ouverture Auto Volets Salon"); end end ------------------------------------------------------------------------------------------------------------- local sysvolet_auto = "SysVolet_auto" -- variable globale àdéclarer local sysvolet_a = fibaro:getGlobal(sysvolet_auto); if sysvolet_a == "ON" then ------------------------------------------------------------------------------------------------------------- -- Ouvrir Auto Volets Etage ------------------------------------------------------------------------------------------------------------- local id_v = 0; if time_ouv_Et == currentTime then for i=1, #ID_volet_etage do id_v = tonumber(ID_volet_etage[i]); if ( tonumber(fibaro:getValue(id_v, "value")) == 0 ) then fibaro:call(id_v, "open"); fibaro:debug("ouverture volet "..id_v); else fibaro:debug("volet "..id_v.." deja ouvert"); end fibaro:call(id_v, "open"); end fibaro:log("Ouverture Auto Volets Etage"); end ------------------------------------------------------------------------------------------------------------- -- Ouvrir Auto Volets Salon ------------------------------------------------------------------------------------------------------------- local id_v = 0; if time_ouv_S == currentTime then for i=1, #ID_volet_salon do id_v = tonumber(ID_volet_salon[i]); if ( tonumber(fibaro:getValue(id_v, "value")) == 0 ) then fibaro:call(id_v, "open"); fibaro:debug("ouverture volet "..id_v); else fibaro:debug("volet "..id_v.." deja ouvert"); end end fibaro:log("Ouverture Auto Volets Etage"); end ------------------------------------------------------------------------------------------------------------- -- Fermeture Auto Fenetre Enfant ------------------------------------------------------------------------------------------------------------- local id_v = 0; local id_f = 0; if time_ferm_E == currentTime then for i=1, #ID_volets_chambre_E do id_v = tonumber(ID_volet_chambre_E[i]); id_f = tonumber(ID_fenetre_chambre_E[i]); if ( tonumber(fibaro:getValue(id_v, "value")) == 0 ) then fibaro:debug("volet "..id_v.." deja fermé"); else if tonumber(fibaro:getValue(id_f, "value")) == 0 then -- vérifie si fenetre fermée fibaro:call(id_v, "close"); fibaro:debug("fermeture volet "..id_v); end end end fibaro:log("Fermeture Auto Volet Enfant"); end ------------------------------------------------------------------------------------------------------------- -- Fermeture Auto Volets Etage ------------------------------------------------------------------------------------------------------------- local id_v = 0; local id_f = 0; if time_ferm_Et == currentTime then fibaro:call(smartphoneID, "sendPush", "Fermeture Automatique Etage"); for i=1, #ID_volet_etage do id_v = tonumber(ID_volet_etage[i]); id_f = tonumber(ID_fenetre_etage[i]); if ( tonumber(fibaro:getValue(id_v, "value")) == 0 ) then fibaro:debug("volet "..id_v.." deja fermé"); else if tonumber(fibaro:getValue(id_f, "value")) == 0 then -- vérifie si fenetre fermée fibaro:call(id_v, "close"); fibaro:debug("fermeture volet "..id_v); end end end fibaro:log("Fermeture Auto Volet Etage"); end ------------------------------------------------------------------------------------------------------------- -- Fermeture Auto Volets Salon ------------------------------------------------------------------------------------------------------------- local id_v = 0; local id_f = 0; if time_ferm_S == currentTime then fibaro:call(smartphoneID, "sendPush", "Fermeture Automatique Salon"); for i=1, #ID_volet_salon do id_v = tonumber(ID_volet_salon[i]); id_f = tonumber(ID_fenetre_salon[i]); if ( tonumber(fibaro:getValue(id_v, "value")) == 0 ) then fibaro:debug("volet "..id_v.." deja fermé"); else if tonumber(fibaro:getValue(id_f, "value")) == 0 then -- vérifie si fenetre fermée fibaro:call(id_v, "close"); fibaro:debug("fermeture volet "..id_v); end end end fibaro:log("Fermeture Auto Volet Salon"); end ------------------------------------------------------------------------------------------------------------- -- temporisation de 5 minutes, -- fibaro:sleep(300000); end
-
C est du "Google translate" a mon avis. En vente dans tous les bons supermarchés
-
Jolie performance, pourvu que ça dure (et je ne vois aucune raison pour que ça ne dure pas !)
-
Bonjour, ci-joint ma première contribution. Il s'agit de mon humble module virtuel pour la gestion automatique des volets roulants. Etape 1 - Créer une variable Globale "SysVolet" nom de la variable : "SysVolet" valeur1 : "ON" valeur2 : "OFF" Etape 2 (facultatif) - Créer un variable "weekend" Cette variable est définie dans un autre module dont voici le code : (la variable "Jour_semaine" est une variable globale ayant 7 valeurs possibles : Lundi à Dimanche dont on n'a pas besoin ici) --[[ %% properties %% globals --]] local minute = 60000 --in milliseconds local currentDate = os.date("*t"); local currentTime = string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min); --wday=1 is Sunday --wday=2 is Monday --wday=3 is Tuesday --wday=4 is Wednesday --wday=5 is Thursday --wday=6 is Friday --wday=7 is Saturday local weekend = fibaro:getGlobal("weekend"); local jour = fibaro:getGlobal("Jour_semaine"); if (currentDate.wday == 1 ) then fibaro:setGlobal("weekend", 1); fibaro:setGlobal("Jour_semaine", "Dimanche") end if (currentDate.wday == 2 ) then fibaro:setGlobal("weekend", 0); fibaro:setGlobal("Jour_semaine", "Lundi") end if (currentDate.wday == 3 ) then fibaro:setGlobal("weekend", 0); fibaro:setGlobal("Jour_semaine", "Mardi") end if (currentDate.wday == 4 ) then fibaro:setGlobal("weekend", 0); fibaro:setGlobal("Jour_semaine", "Mercredi") end if (currentDate.wday == 5 ) then fibaro:setGlobal("weekend", 0); fibaro:setGlobal("Jour_semaine", "Jeudi") end if (currentDate.wday == 6 ) then fibaro:setGlobal("weekend", 0); fibaro:setGlobal("Jour_semaine", "Vendredi") end if (currentDate.wday == 7 ) then fibaro:setGlobal("weekend", 1); fibaro:setGlobal("Jour_semaine", "Samedi") end Etape 3 - Créer un module Virtuel composé d'un label : et de 2 boutons : (remplacer 102 par l'id de votre module virtuel) copier ce code dans le main loop --[[ %% properties %% globals --]] local smartphoneID = 12; local ID_volet_salon = {6,7,8,14}; --ID volets salon + cuisine local ID_volet_etage = {30,31,32}; --ID volets étage local ID_volet_chambre_E = {27}; --ID volet Chambre Enfant local ID_volet = {6,7,8,14,30,31,32}; --ID tous les volets sauf enfant local ID_fenetre_salon = {9,15,16,16}; --ID fenetres salon + cuisine --(deuxieme 16 à remplacer par ID fenetre cuisine, le mien est mort) local ID_fenetre_etage = {34,34,33}; --ID fenetres étage local ID_fenetre_chambre_E = {28}; --ID fenetre Chambre Enfant local ID_fenetre = {9,15,16,16,34,34,33}; --ID toutes les fenetres sauf enfant --(deuxieme 16 à remplacer par ID fenetre cuisine, le mien est mort) --(deuxième 34 correspond à une fenetre qui ne s'ouvre pas) ------------------------------------------------------------------------------------------------------------- -- Définition des horaires Auto des volets ------------------------------------------------------------------------------------------------------------- local time_ouv_auto_1 = "06:30"; --debut plage horaire douche local time_ouv_auto_2 = "10:30"; --fin plage horaire douche local time_ouv_1 = "07:30"; --ouverture volets local time_ferm_E = "19:00"; -- fermeture volet chambre enfant local time_ferm_Et local time_ferm_S = "23:30"; -- fermeture volets Salon local weekend = fibaro:getGlobal("weekend"); if (weekend == 1) then -- weekend time_ferm_Et = "23:30"; -- fermeture volets Etage --fibaro:debug("weekend fermeture etage "..time_ferm_Et); else -- semaine time_ferm_Et = "22:00"; -- fermeture volets Etage --fibaro:debug("semaine fermeture etage "..time_ferm_Et); end --fibaro:debug("fermeture etage "..time_ferm_Et); ------------------------------------------------------------------------------------------------------------- -- CODE ------------------------------------------------------------------------------------------------------------- local minute = 60000 --in milliseconds local currentDate = os.date("*t"); local currentTime = string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min); ------------------------------------------------------------------------------------------------------------- -- Ouvrir Auto Groupe Salon si Douche ------------------------------------------------------------------------------------------------------------- local id_v = 0; if time_ouv_auto_1 <= currentTime and currentTime <= time_ouv_auto_2 then if tonumber(fibaro:getValue(46, "value")) > 70 then for i=1, #ID_volet_salon do id_v = tonumber(ID_volet_salon[i]); fibaro:call(id_v, "open"); --fibaro:debug(id) end fibaro:log("Ouverture Auto Volets Salon"); end end ------------------------------------------------------------------------------------------------------------- local sysvolet_auto = "SysVolet_auto" -- variable globale à déclarer local sysvolet_a = fibaro:getGlobal(sysvolet_auto); --fibaro:debug(sysvolet_a) if sysvolet_a == "ON" then ------------------------------------------------------------------------------------------------------------- -- Ouvrir Auto Volets Etage + Salon ------------------------------------------------------------------------------------------------------------- local id_v = 0; if time_ouv_1 == currentTime then for i=1, #ID_volet_salon do id_v = tonumber(ID_volet_salon[i]); fibaro:call(id_v, "open"); --fibaro:debug(id) end for i=1, #ID_volet_etage do id_v = tonumber(ID_volet_etage[i]); fibaro:call(id_v, "open"); --fibaro:debug(id) end fibaro:log("Ouverture Auto Volets Salon et Etage"); end ------------------------------------------------------------------------------------------------------------- -- Fermeture Auto Fenetre Enfant ------------------------------------------------------------------------------------------------------------- local id_v = 0; local id_f = 0; if time_ferm_E == currentTime then for i=1, #ID_volets_chambre_E do id_v = tonumber(ID_volet_chambre_E[i]); id_f = tonumber(ID_fenetre_chambre_E[i]); if tonumber(fibaro:getValue(id_f, "value")) == 0 then -- vérifie si fenetre fermée fibaro:call(id_v, "close"); --fibaro:debug(id_v) end end fibaro:log("Fermeture Auto Volet Enfant"); end ------------------------------------------------------------------------------------------------------------- -- Fermeture Auto Volets Etage ------------------------------------------------------------------------------------------------------------- local id_v = 0; local id_f = 0; if time_ferm_Et == currentTime then fibaro:call(smartphoneID, "sendPush", "Fermeture Automatique Etage"); for i=1, #ID_volet_etage do id_v = tonumber(ID_volet_etage[i]); id_f = tonumber(ID_fenetre_etage[i]); if tonumber(fibaro:getValue(id_f, "value")) == 0 then -- vérifie si fenetre fermée fibaro:call(id_v, "close"); --fibaro:debug("id_v "..id_v); --fibaro:debug("id_f "..id_f); end end fibaro:log("Fermeture Auto Volet Etage"); end ------------------------------------------------------------------------------------------------------------- -- Fermeture Auto Volets Salon ------------------------------------------------------------------------------------------------------------- local id_v = 0; local id_f = 0; --fibaro:debug(time_ferm_S); if time_ferm_S == currentTime then fibaro:call(smartphoneID, "sendPush", "Fermeture Automatique Salon"); for i=1, #ID_volet_salon do id_v = tonumber(ID_volet_salon[i]); id_f = tonumber(ID_fenetre_salon[i]); if tonumber(fibaro:getValue(id_f, "value")) == 0 then -- vérifie si fenetre fermée fibaro:call(id_v, "close"); --fibaro:debug(id) end end fibaro:log("Fermeture Auto Volet Salon"); end ------------------------------------------------------------------------------------------------------------- end Faites bien attention à bien associer le module du volet et le capteur d'ouverture de fenêtre associé. exemple chez moi : volet 6 va avec fenetre 9, etc... et voici les deux icones amélioration en cours de réflexion : faire un sleep de 2 minutes après le push, histoire d'arreter le process si je suis dehors, voir si c'est utile
-
essaie de passer en LUA local minute = 60000 --in milliseconds local currentDate = os.date("*t"); local currentTime = string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min); if currentTime == sunset then fibaro:call(id_v, "close"); end if currentTime == sunrise then fibaro:call(id_v, "open"); end remplacer id par l'id de ton module (quand tu cliques sur la clé à molette, dans le panneaux modules, il s'agit des 2 derniers numéros dans l'adresse du navigateur web) PS : code non testé
-
j'ai trouvé ! en fait le boutons "enlever le dernier élément" n’enlève pas le dernier élément, mais celui sur lequel on clique....
-
Bonjour, J aimerais savoir comment supprimer des icônes de modules que j ai ajouté par erreur.
-
Idées scénarios / journées / semaines type
p78ch201 a répondu à un(e) sujet de clarkkent609 dans Le bistrot
tu fais de la virtualisation (voir post de shad), comme ça tu as sarah qui tourne et pas plus ordi ! avec ça, tu peux t'occuper au moins jusqu’à cet été! pour mes scénarios, perso, pas grand chose, je trouve les systèmes horaire trop rigides (genre si je me réveille pas, je suis en retard par rapport à la maison) donc j'attends avec impatience les détecteurs de mouvements maintenant mes actions sont assez basiques : - pour la lumière : régler les dimmer en fonction de l'heure (si mouvement => lumière à xx% à partir de telle heure) - projet - ouvrir les volets pendant que je prends ma douche (condition sur le taux d'humidité de la SdB) - fermer les volets le soir en fonction d'un horaire basé sur le coucher du soleil / température extérieure (et si fenêtre pas ouverte, veut pas me retrouver coincé dehors) - finir d'installer Sarah et le coupler au HC2 - projet, mon kinect marche pas, faut que j'en retrouve un autre - lancer des actions quand j'approche de chez moi (je rentre de vacances, quand je suis à xx km de chez moi, mettre en marche le chauffage, ouvrir les volets, etc. etc.) - projet, systeme de localisation du HC2 pas assez fiable... - couper les appareils en veille quand je ne m'en sert pas et les rallumer quand je rentre (basé sur un horaire, préférerait la géolocalisation) c'est tout ce qui me vient a l'esprit pour le moment. J'ia également une télécommande logitech harmony ultimate, savez-vous si il est possible de faire qqch avec et le HC2 (d'apres mes recherches, je crois que non, mais j'ai peut-etre mal cherché..) ? -
Est-il possible de faire un shutdown d'un NAS Synology de la meme maniere sachant qu'on ne peut pas installer Airytec dessus ?
- 67 réponses
-
- Script LUA
- WOL
-
(et 1 en plus)
Étiqueté avec :
-
En effet mais je compte remplacer mes vieux radiateurs qui font exploser ma facture l'hiver par des radiateurs àinertie d ici la fin de l année. J attends de voir si ils font des promos cet été ...
-
étape suivante, la clusterisation (cela dit, peut-on faire un cluster avec un serveur existant sans tout recommencer ?) ? en tout cas sujet très intéressant que je vais suivre avec attention. bon courage ! j'ai hâte de lire la suite
-
voila le lien du module virtuel de Shad, mais je pense qu'il est uniquement applicable pour les radiateurs electriques à fil pilote. pour les autres radiateurs, je pense que vannes Danfoss doivent bien fonctionner http://www.domotique-fibaro.fr/index.php/topic/128-module-radiateur-avec-fil-pilote-thermostat-de-zone/page-2 Il s'agit du lien de la page 2, car etrangement, la page 1 ne fonctionne pas bien
-
Je te conseille le module virtuel de Shad, qui est plutôt bien fait. (coupage du chauffage en cas de fenêtre ouverte) pour ma part, je m'y suis essayé mais mes grill-pains n'ont pas de fil pilote, donc pour l'instant ce n'est que du virtuel. Il est possible de piloter plusieurs radiateur sur le même module. J'ai essayé de créer mon propre module (grandement inspiré par celui de Shad, faut bien l'avouer) dans lequel je définis - mode auto par plage horaire (la semaine : confort de 6h à 8h et 16h à 22h ; plage différente le week-end) - mode manuel (confort / eco / hors-gel / arret ) - un module virtuel par pièce (permet de définir des plages horaires différentes par pièce, et grouper les radiateurs par pièce) En revanche je galère un peu plus pour gérer une consigne et avoir un retour sur la température mesurée par les ST814, c'est plus compliqué que prévu. exemple : si température mesurée < consigne et radiateur deja en mode confort, je fais quoi ?? le radiateur ne vas plus chauffer, a moins de modifier la température de consigne confort directement sur le radiateur => pas possible avec HC2 et micromodule. Les températures de confort et eco seront directement programmées sur le radiateur, après ce sera à moi de l'ajuster manuellement sur le radiateur en fonction du retour de la sonde de température.
-
tu vas dans module comme tu dis et tout en bas tu dois avoir "retirer" (ou supprimer). tu cliques sur le bouton, tu appuis 3 fois sur le bouton C/F. normalement, si le module est bien supprimé, la fenêtre disparait et ne vas pas au bout du décompte. ensuite tu cliques sur add (tout en haut) et tu appuis 3 fois sur C/F. Il faudrait faire cela avec tous tes modules qui ont été précédemment associé à une autre box !
-
ils l'ont meme un peu teasé...; pas gentil ça ! encore des screenshots plugin sonos http://forum.fibaro.com/download.php?id=2788 ajout module http://forum.fibaro.com/download.php?id=2790 les panneaux deviennet des plugins ? http://forum.fibaro.com/download.php?id=2791 vivement la v4, mais avec une release alpha, je me dis que c'est pas pour tout de suite
-
arf !! si on peut plus rigoler... bon courage à vous trois !!
-
j'espère pour vous qu'ils vous l'auront traduite