[DzVents] Luminosité théorique extérieure

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
pierrotori
Messages : 821
Inscription : 29 févr. 2016, 12:11

Re: Luminosité théorique extérieure

Message 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
Chris54220
Messages : 124
Inscription : 20 mars 2016, 20:54
Localisation : Nancy

Re: Luminosité théorique extérieure

Message 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
Neutrino
Messages : 2662
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: Luminosité théorique extérieure

Message 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 ?
Dernière modification par Neutrino le 11 juin 2016, 22:08, modifié 1 fois.
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
Chris54220
Messages : 124
Inscription : 20 mars 2016, 20:54
Localisation : Nancy

Re: Luminosité théorique extérieure

Message par Chris54220 »

Il et mis à jour toute les 30min et la commande et dans crontab
Neutrino
Messages : 2662
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: Luminosité théorique extérieure

Message par Neutrino »

Et si les 2 s'exécutent toutes les minutes, le résultat est le même ?
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
Chris54220
Messages : 124
Inscription : 20 mars 2016, 20:54
Localisation : Nancy

Re: Luminosité théorique extérieure

Message par Chris54220 »

J'avoue que j'ai pas essayer mais je tente demain et vous dit
gloupy31
Messages : 91
Inscription : 08 févr. 2016, 15:58
Localisation : Toulouse (31)

Re: Luminosité théorique extérieure

Message 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 ?? :?
Pièces jointes
Capture d’écran 2016-07-26 à 18.00.58.png
Capture d’écran 2016-07-26 à 18.00.58.png (58.52 Kio) Consulté 9378 fois
Capture d’écran 2016-07-26 à 17.53.26.png
Capture d’écran 2016-07-26 à 17.53.26.png (55.53 Kio) Consulté 9378 fois
Raspberry PI2, RFXCOM 433E,10 volets somfy rts, 2 prises phénix,Domoticz, STATION METEO OREGON,capteur Temp piscine et Pir Vil1driver (anémomètre,pluvio,cap temp) , MacBook pro !!! :D
Neutrino
Messages : 2662
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: Luminosité théorique extérieure

Message par Neutrino »

Peux-tu poster ton script ?
N'oublie pas les balises [ code][ /code]
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
gloupy31
Messages : 91
Inscription : 08 févr. 2016, 15:58
Localisation : Toulouse (31)

Re: Luminosité théorique extérieure

Message 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
Raspberry PI2, RFXCOM 433E,10 volets somfy rts, 2 prises phénix,Domoticz, STATION METEO OREGON,capteur Temp piscine et Pir Vil1driver (anémomètre,pluvio,cap temp) , MacBook pro !!! :D
Neutrino
Messages : 2662
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: Luminosité théorique extérieure

Message 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
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
Répondre