Aller au contenu

Rechercher dans la communauté

Affichage des résultats pour les étiquettes 'aube'.



Plus d’options de recherche

  • Rechercher par étiquettes

    Saisir les étiquettes en les séparant par une virgule.
  • Rechercher par auteur

Type du contenu


Forums

  • Bienvenue
    • Annonces et suggestions
    • Nouveau ? Présentez-vous
    • Le bistrot
    • Mon installation domotique
    • Autres Solutions Domotiques
  • La HC2 et ses périphériques
    • La Home Center pour les nuls
    • Home Center 2 & Lite
    • Modules Fibaro
    • Modules Z-wave
    • Périphériques et matériels autres
    • Plugins
    • Alarme & Vidéo-surveillance
    • Multimédia
    • Chauffage et Energie
    • Actionneurs & Ouvrants (Portail, volets...)
    • Eclairage
    • Applications Smartphones et Tablettes
    • English Section
  • Les objets connectés
    • Les Assistants Vocaux
  • Fibaro's Awards
    • Membre du mois
    • Jeux concours & Cadeaux
  • Les bonnes affaires
    • Sites internet
    • Petites annonces

Rechercher les résultats dans…

Rechercher les résultats qui…


Date de création

  • Début

    Fin


Dernière mise à jour

  • Début

    Fin


Filtrer par nombre de…

Inscription

  • Début

    Fin


Groupe


Jabber


Skype


Ville :


Intéret :


Version

2 résultats trouvés

  1. VD Déclencheur de Réveil Paramétrable Je me suis motivé à sortir un petit VD qui n'a aucune prétention particulière, si ce n'est d'être ma première contribution. J'ai créé ce VD afin de pouvoir gérer facilement mes réveils, donc rien de bien complexe. Je voulais que le VD puisse être facilement combiné à ma scène de réveil qui crée une aube artificielle pendant un temps paramétrable. Bien évidemment, la plupart d'entre-vous aurait pu concevoir ce VD en quelques dizaines de minutes... Et d'ailleurs, je serai ravi de lire vos critiques ! Le script est loin d'être le plus optimisé c'est surtout un défi que je me suis posé avec mes quelques connaissances. Dans tous les cas, j'écouterai vos conseils avec grand plaisir ! Il ne s'agit que d'un simple déclencheur à l'heure actuelle. Ce VD déclenchera l'une de vos scènes. L'intérêt réside dans la partie programmation qui est intégrée dans ce VD. Par la suite et s'il y a de l'intérêt pour la démarche, je ferai une mise à jour ou, du moins, je verrai pour combiner une scène avec le VD. C'est néanmoins complexe de faire quelque chose qui conviendra à tout le monde, il y a tellement de systèmes différents en terme d'éclairage et d'enceintes et aussi plusieurs VD disponibles pour chaque appareil ! Nombre d'entre-vous utilisent GEA et peuvent donc utiliser GEA Alarm pour faire la même chose si j'ai bien compris. En ce qui me concerne, je suis curieux et j'aime comprendre ce qu'il se passe à ma portée, d'où mes nombreuses questions et la volonté de faire mes scènes et VDs Installation Création des variables globales suivantes : REVEIL_SEMAINE & REVEIL_WEEKEND Importantion du VD ci-dessous et modifier les valeurs des variables suivantes au tout début de la Boucle Principale : local scene_reveil = 49 local temps_aube = 30 -- IDs Icones local icone_semaine = 1155 local icone_weekend = 1156 local icone_off = 1157 Le nom des variables me semble assez clair, mais sait-on jamais : scene_reveil : La scène à lancer à l'heure du réveil temps_aube : C'est simplement un déphasage. Mettre 0 si vous n'en avez pas besoin. Si une aube est créée dans votre scène de réveil, indiquez son temps ici et le VD démarrera votre scène en tenant compte de ce temps. Exemple : Réveil programmé à 7h, votre scène contient une aube de 25mn. En renseignant cette variable, le VD démarrera votre scène naturellement à 6h35. Ne vous souciez que de l'heure de réveil ! icone_semaine, icone_weekend et icone_off doivent correspondre à l'ID des icones que vous aurez importées. Suivez les indications de ce lien si vous ne savez pas comment connaître ces IDs. Utilisation Déplacez les curseurs d'heures et de minutes jusqu'à l'obtention de l'horaire de réveil souhaité. Appuyez ensuite sur Semaine pour affecter cette heure de réveil aux jours de la semaine, ou sur Week end pour l'affecter aux jours du week end. Les jours du week end peuvent simplement être modifiés. Si cela devait être intéressant, je modifierai le VD pour que cette modification soit encore plus aisée. Les paramètres des réveils sont automatiquement reprogrammés pour le lendemain pour une même période : Semaine ou Week end. Attention tout de même entre le Vendredi et le Samedi et entre le Dimanche et le lundi, puisqu'il y a la bascule entre Réveil Semaine <=> Réveil Week end. Le bouton principal est le TOGGLE ON/OFF. Je vous invite vivement à utiliser au moins l'icone réveil_off pour voir rapidement l'état du réveil ! Technique Afin que le VD ne loupe pas le démarrage de votre scène de réveil, votre scène sera démarrée 11 fois au total sur un intervalle de 11 secondes : 5 secondes avant et 5 secondes après l'heure du réveil. Il n'y avait pas de raison que la scène ne démarre pas en une seule fois, mais j'ai préféré prévoir large, au cas où ! Dans tous les cas, pour limiter votre scène de réveil qu'à un seul lancement, veuillez n'autorisez qu'une seule instance simultanée. Icones Réveil Semaine - Réveil Week end - Réveil OFF Téléchargement VD
  2. Je ressors un vieux bout de lua basé sur les équations de robert penner et posté à l'origine ici http://forum.fibaro.com/viewtopic.php?t=1656 Tout est dans le titre. Vous pouvez utiliser cette scène de manière autonome ou bien dans le cadre d'une programmation horaire . Amusez vous bien Pour la mise en place, il faut créer donc une nouvelle scène en mode LUA puis copier le code ci-dessous. ensuite, renseigner tous les identifiants des périphériques de type "dimmer" dans la variable devices, c'est eux qui varieront d'intensité lumineuse. local devices = {23, 45, 55}; Renseigner dans la variable local curve = "inExpo" la courbe choisie pour la variation lumineuse ou bien conserver celle par défaut. cf. tableau des courbes. local duration = 20; La variable duration correspond à la durée totale en seconde de la scène pour faire une transition de la valeur basse à la valeur haute. --[[ %% properties %% globals --]] fibaro:debug("HC2 start script at " .. os.date()); -- LUA - Dawn simulator V1.0.1 -- -- Wake up "naturally", illuminated by a soft light and progressive. -- Based on open source Robert Penner's original easing equations (Copyright © 2001 Robert Penner) -- Copyright © 2013 Jean-christophe Vermandé -- USER SETTINGS : -- Type of equation used to generate the curve (dimming). -- Possible values are: linear, inQuad, inExpo, outExpo, inOutQuad, inOutExpo, outInExpo local curve = "inExpo"; -- Type of equation used to generate the curve (dimming). local debug = false; -- To log in HC2 debug area local devices = {36}; -- IDs of devices to be varied (only dimmable device), eg. {1, 16, 10} local startValue = 0; -- Begin value local endValue = 100; -- End value local duration = 100; -- Execution time in seconds of the scene -- DO NOT EDIT THE CODE BELOW (except to suit your needs) -- dawnSimulatorEngine = { version = "1.0.1" }; function dawnSimulatorEngine:init(startValue, endValue, duration, devices, curve, debug) self._lastValue = 0 self._startValue = startValue or 0; self._endValue = endValue or 100; self._duration = duration or 1; self._devices = devices or {}; self._curve = equations.map[curve or 'linear']; -- require 'equations' to operate self._debug = debug or true; end function dawnSimulatorEngine:_update(value) self._lastValue = value; -- keep in memory the last value to compare later -- loop in deveices local name, id; for i=1, #self._devices do id = tonumber(self._devices[i]); fibaro:call(id, "setValue", value); if (self._debug) then name = fibaro:getName(id); if (name == nil or name == string.char(0)) then name = "Unknown" end fibaro:debug("Device:" .. name .. " setValue: " .. value); end end end function dawnSimulatorEngine:_compute(time) return math.ceil(tonumber(self._curve(time, self._startValue, self._endValue, self._duration))); end function dawnSimulatorEngine:start() local computedValue; local doWhile = true; local time = 0; -- timeline while (doWhile == true) do computedValue = self:_compute(time); -- prevent multiple call with same value if (computedValue ~= self._lastValue) then -- update device value self:_update(computedValue); end time = time + 1; if (time > self._duration) then doWhile = false; if (self._lastValue < self._endValue) then -- force target value self:_update(computedValue); end else fibaro:sleep(1000); end -- do while end end -- Easing function (Penner's Easing Equations) equations = equations or { version = "1.0.1", -- Linear linear = function(t, b, c, d) return c * t / d + b; end, -- InQuad inQuad = function(t, b, c, d) t = t / d; return c * math.pow(t, 2) + b; end, -- InOutQuad inOutQuad = function(t, b, c, d) t = t / d * 2; if t < 1 then return c / 2 * math.pow(t, 2) + b; else return -c / 2 * ((t - 1) * (t - 3) - 1) + b; end end, -- InOutExpo inOutExpo = function(t, b, c, d) if t == 0 then return b end if t == d then return b + c end t = t / d * 2; if t < 1 then return c / 2 * math.pow(2, 10 * (t - 1)) + b - c * 0.0005; else t = t - 1; return c / 2 * 1.0005 * (-math.pow(2, -10 * t) + 2) + b; end end, -- OutInExpo outInExpo = function(t, b, c, d) if t < d / 2 then return equations.outExpo(t * 2, b, c / 2, d); else return equations.inExpo((t * 2) - d, b + c / 2, c / 2, d); end end, -- InExpo inExpo = function(t, b, c, d) if t == 0 then return b; else return c * math.pow(2, 10 * (t / d - 1)) + b - c * 0.001; end end, -- OutExpo outExpo = function(t, b, c, d) if t == d then return b + c; else return c * 1.001 * (-math.pow(2, -10 * t / d) + 1) + b; end end }; -- Equations map equations.map = { ['linear'] = equations.linear, ['inQuad'] = equations.inQuad, ['inExpo'] = equations.inExpo, ['outExpo'] = equations.outExpo, ['inOutQuad'] = equations.inOutQuad, ['inOutExpo'] = equations.inOutExpo, ['outInExpo'] = equations.outInExpo } -- START SIMULATOR ENGINE if (debug) then fibaro:debug("Starting the process"); end --startEngine(equations.map[curve]); dawnSimulatorEngine:init(startValue, endValue, duration, devices, curve, debug); dawnSimulatorEngine:start(); if (debug) then fibaro:debug("End of the process"); end
×