Page 6 sur 18
Re: Luminosité théorique extérieure
Publié : 02 mai 2016, 22:51
par pierrotori
bonsoir
très bien ce script je l'utilise pour mes brises soleil la combinaison azimut,altitude,lux,nébuleuse, fonctionne très bien
pierrotori
Re: Luminosité théorique extérieure
Publié : 10 juin 2016, 22:55
par Chris54220
bonjour
je reviens vers vous car j'ai un petit soucis
mon scripts fonctionne super bien
mais j'ai un scripts calendrier Google et en fait quand le 2 s'exécute en même temps (toute les 5Min)
bas sa me crée un erreur dans ma lecture des fichier Google voila les log si sa peux vous aidez
et les scripts
logs Google avec info soleil
Code : Tout sélectionner
2016-06-10 22:50:05.222 EventSystem: Script event triggered: /home/pi/domoticz/scripts/lua/script_time_info_soleil.lua
2016-06-10 22:50:05.229 LUA: Agenda Chris
2016-06-10 22:50:05.230 LUA: Agenda Julie
2016-06-10 22:50:05.230 LUA: heure de lever de Chris : NUL
2016-06-10 22:50:05.230 LUA: heure de lever de Julie : NUL
logs que Google
Code : Tout sélectionner
2016-06-10 22:51:00.271 LUA: Agenda Chris
2016-06-10 22:51:00.272 LUA: STJ 10/06/2016 08:00 15:00
2016-06-10 22:51:00.272 LUA: Agenda Julie
2016-06-10 22:51:00.273 LUA: CCi Formation 10/06/2016 09:00 12:30
2016-06-10 22:51:00.273 LUA: CCi Formation 10/06/2016 13:30 17:00
2016-06-10 22:51:00.273 LUA: heure de lever de Chris : 6:00
2016-06-10 22:51:00.273 LUA: heure de lever de Julie : 6:00
et voila le script Google
Code : Tout sélectionner
--------------------------------
------ Variables à éditer ------
--------------------------------
local debug = 'oui' -- oui ou non pour avoir des valeurs dans le log
local limite = "12" -- heure limite d'allumage
local Tchris = 2 -- heure de lever avant le travail Chris
local Tjulie = 3 -- heure de lever avant le travail Julie
local Tallumage = 5 -- temp d'allumage des lamps en min
--------------------------------
-- Fin des variables à éditer --
--------------------------------
commandArray = {}
--Récupère l'heure
heure=tonumber(os.date('%H',time))
minutes=tonumber(os.date('%M',time))
maintenant=(heure..":"..minutes)
--------------------------------------------------------------------------------------------------------------
------------------------------------------------- Lecture Agenda Chris ---------------------------------------
--------------------------------------------------------------------------------------------------------------
local heureleverChris = "NUL"
local file1 = io.open("/home/pi/calgoogle/TravChris", "r") -- Ouvre le fichier en mode lecture
local ligne1 = {} -- Table pour les lignes du fichier
if(file1~=nil)--le fichier n'est pas vide
then
for line1 in file1:lines() do -- Pour chaque lignes
table.insert(ligne1, line1) -- On insère les lignes dans la table
end
end
if (debug == 'oui')then print("Agenda Chris") end
for i, v in ipairs(ligne1) do -- Lecture de la table des RDV
dateDebut,heureDebut,minutesDebut,dateFin,heureFin,minutesFin,evenement = v:match("([^;]+)\t([^;]+):([^;]+)\t([^;]+)\t([^;]+):([^;]+)\t([^;]+)")
annee,mois,jour = dateDebut:match("([^;]+)-([^;]+)-([^;]+)")
if (debug == 'oui')then print(evenement.." "..jour.."/"..mois.."/"..annee.." "..heureDebut..":"..minutesDebut.." "..heureFin..":"..minutesFin) end
if (heureDebut <= limite)
then
heureleverChris = (heureDebut - Tchris)
heureleverChris = (heureleverChris..":"..minutesDebut)
end
end
io.close(file1) -- Fermer le fichier
--------------------------------------------------------------------------------------------------------------
------------------------------------------------- Lecture Agenda Julie ---------------------------------------
--------------------------------------------------------------------------------------------------------------
local heureleverJulie = "NUL"
local file2 = io.open("/home/pi/calgoogle/TravJulie", "r") -- Ouvre le fichier en mode lecture
local ligne2 = {} -- Table pour les lignes du fichier
if(file2~=nil)--le fichier n'est pas vide
then
for line2 in file2:lines() do -- Pour chaque lignes
table.insert(ligne2, line2) -- On insère les lignes dans la table
end
end
if (debug == 'oui')then print("Agenda Julie") end
for i, v in ipairs(ligne2) do -- Lecture de la table des RDV
dateDebut,heureDebut,minutesDebut,dateFin,heureFin,minutesFin,evenement = v:match("([^;]+)\t([^;]+):([^;]+)\t([^;]+)\t([^;]+):([^;]+)\t([^;]+)")
annee,mois,jour = dateDebut:match("([^;]+)-([^;]+)-([^;]+)")
if (debug == 'oui')then print(evenement.." "..jour.."/"..mois.."/"..annee.." "..heureDebut..":"..minutesDebut.." "..heureFin..":"..minutesFin) end
if (heureDebut <= limite)
then
heureleverJulie = (heureDebut - Tjulie)
heureleverJulie = (heureleverJulie..":"..minutesDebut)
end
end
io.close(file2) -- Fermer le fichier
--------------------------------------------------------------------------------------------------------------
-------------------------------------------------- Analyse des donneé ----------------------------------------
--------------------------------------------------------------------------------------------------------------
if (debug == 'oui')then print("heure de lever de Chris : "..heureleverChris) end
if (debug == 'oui')then print("heure de lever de Julie : "..heureleverJulie) end
merci d'avance
Re: Luminosité théorique extérieure
Publié : 11 juin 2016, 19:42
par Neutrino
Je ne vois pas pourquoi 2 scripts se télescoperait comme ça
Rajoute des print un peu partout, déjà pour savoir si c'est l'ouverture du fichier qui ne fonctionne pas par exemple.
D'ailleurs, ton fichier est mis à jour à quel moment ?
Re: Luminosité théorique extérieure
Publié : 11 juin 2016, 21:13
par Chris54220
Il et mis à jour toute les 30min et la commande et dans crontab
Re: Luminosité théorique extérieure
Publié : 12 juin 2016, 22:39
par Neutrino
Et si les 2 s'exécutent toutes les minutes, le résultat est le même ?
Re: Luminosité théorique extérieure
Publié : 12 juin 2016, 23:16
par Chris54220
J'avoue que j'ai pas essayer mais je tente demain et vous dit
Re: Luminosité théorique extérieure
Publié : 26 juil. 2016, 18:02
par gloupy31
Slt,
Bon je bataille pour essayer de faire fonctionner ce tuto et voilà ce qu'il me met :
2016-07-26 06:35:00.224 Error: EventSystem: in /home/pi/domoticz/scripts/lua/script_time_soleil.lua: /home/pi/domoticz/scripts/lua/script_time_soleil.lua:22: attempt to concatenate global 'idxLux' (a nil value)
la ligne 22 du script_time_soleil.lua c'est ça :
commandArray[1] = {['UpdateDevice'] = idxLux..'|0|' .. tostring(LuxPondere)}
- j'ai fait un http://IPDOMOTICZ:PORT/json.htm?type=co ... 2&svalue=5
- le capteur passe bien à 5 avec json dans domotique !! mais toujours rien en réception de données
-J'ai bien crée la variable octa en entier à 0
- je reçois pourtant les données de WU avec les autres capteurs virtuels !!
Une idée de quelqu'un peut être ??

Re: Luminosité théorique extérieure
Publié : 26 juil. 2016, 19:11
par Neutrino
Peux-tu poster ton script ?
N'oublie pas les balises [ code][ /code]
Re: Luminosité théorique extérieure
Publié : 26 juil. 2016, 19:53
par gloupy31
Neutrino a écrit :Peux-tu poster ton script ?
N'oublie pas les balises [ code][ /code]
Le script time est exactement le même que celui du tuto sans aucune modif !!
script_time_soleil.lua
commandArray = {}
time = os.date("*t")
if ((time.min % 5)==0) then
if (timeofday['Nighttime']) then
--il fait nuit
LuxPondere = 0
--mise à jour du dispositif
commandArray[1] = {['UpdateDevice'] = idxLux..'|0|' .. tostring(LuxPondere)}
else
os.execute("lua /home/pi/domoticz/scripts/lua/soleil.lua "..uservariables['octa'].." &")
end
end
return commandArray
Re: Luminosité théorique extérieure
Publié : 26 juil. 2016, 20:18
par Neutrino
Merci pour les balises 'code'...
OUIII ! C'est ma faute !!!
Il manque ça au début du script :
Code : Tout sélectionner
--Variables à éditer--------------
local idxLux = '95' --Capteur virtuel de Luminosité
--------------------------------
Sinon, la dernière version par jml est là :
http://www.domoticz.com/wiki/Real-time_ ... structions