J'en avais marre de me réveiller en sursaut avec une sonnerie pourrie..... Alors pourquoi pas se réveiller en douceur et en lumière...et pour pas cher!
J'ai utilisé le sensor RGB-3D (mysensors) de Vil1driver: viewtopic.php?f=20&t=704 et j'y ai greffé un script LUA:
Code : Tout sélectionner
-- script_time_Simulateur_Aube.lua
-- Ce script permet de crée un simulateur d'aube (réveil) a partir d'un ruban rgb et du sketch mysensors RGB-3D de Vil1driver
-- créer une variable utilisateur nommée duree_simulateur_aube réglée ici sur 21 minutes. elle est de type "entier"
--créer une variable utilisateur nommée start_time réglée sur la valeur 0 pour débuter (elle se met a jour toute seule ensuite. Elle est de type entier
-- créer un dummy de type interrupteur on/off nommé Simulateur aube
-- metre en accord le nom des switches de chaque couleur de votre ruban led: ici mes trois switches s'appellent Red, Green et Blue
-- planifiez le switch nommé Simulateur d'aube aux jours et heure de levé
-- Au déclenchement du simulateur d'aube, la couleur est une dominante rouge et au fur et a mesure du temps, elle vire au orange puis au jaune pour finir au blanc. Au bout de 20 minutes, le ruban s'éteind
commandArray = {}
t1 = tostring(os.time())
if(otherdevices['Simulateur aube'] == 'Off' ) then
commandArray['Variable:start_time'] = t1
end
if(otherdevices['Simulateur aube'] == 'On') then
-- Durée de la simulation
duree_simulateur_aube = uservariables['duree_simulateur_aube']
t2 = uservariables['start_time']
diff = (os.difftime (t1, t2))
duree_simulateur_aube = duree_simulateur_aube * 60
if(diff > duree_simulateur_aube) then
commandArray['Simulateur aube'] = 'Off'
end
--Dominante rouge
if(diff < 240) then
commandArray['Red']='Set Level 10'
end
if(diff > 180 and diff <240) then
commandArray['Red']='Set Level 15'
end
if(diff > 240 and diff <300) then
commandArray['Red']='Set Level 20'
end
if(diff > 300 and diff <360) then
commandArray['Red']='Set Level 30'
end
if(diff > 360 and diff <420) then
commandArray['Red']='Set Level 35'
end
if(diff > 420 and diff <480) then
commandArray['Red']='Set Level 40'
end
if(diff > 480 and diff <540) then
commandArray['Red']='Set Level 50'
end
--Dominante orange
if(diff > 540 and diff <600) then
commandArray['Red']='Set Level 100'
commandArray['Green']='Set Level 10'
end
if(diff > 600 and diff <660) then
commandArray['Red']='Set Level 90'
commandArray['Green']='Set Level 10'
end
if(diff > 660 and diff <720) then
commandArray['Red']='Set Level 80'
commandArray['Green']='Set Level 10'
end
if(diff > 720 and diff <780) then
commandArray['Red']='Set Level 75'
commandArray['Green']='Set Level 10'
end
--Dominante jaune
if(diff > 780 and diff <900) then
commandArray['Red']='Set Level 100'
commandArray['Green']='Set Level 15'
end
if(diff > 900 and diff <1020) then
commandArray['Red']='Set Level 100'
commandArray['Green']='Set Level 20'
end
--Dominante blanche
if(diff > 1020 and diff <1140) then
commandArray['Red']='Set Level 100'
commandArray['Green']='Set Level 30'
commandArray['Blue']='Set Level 10'
end
--extinction du ruban après 20min
if(diff > 1200) then
commandArray['Red']='Off'
commandArray['Green']='Off'
commandArray['Blue']='Off'
end
end
Et si tout se passe bien, au moment où votre ruban s'éteint, vous avez programmé domoticz pour qu'il déclenche votre cafetière!
NB: j'ai utilisé les dimmers de domoticz qui ne permettent de faire varier que par pas de 6%... Les changements de couleurs auraient pu être plus fluides si les pas des dimmers étaient moins grands.... Peut être que ça viendra un jour.