Gazon et fonction épouventail!!!

Forum dédié aux problématiques concernant les scripts pour DomoticZ.
Entourez votre code et les logs avec les balises nommées code grâce au bouton <\>.
elba
Messages : 7
Inscription : 12 août 2019, 23:38

Gazon et fonction épouventail!!!

Message par elba »

Bonjour a tous,
je viens de semer du gazon et cherche un moyen d'utiliser mes turbines d'arrosage pour faire fuir les piafs qui croquent mes graines, et dieu sait s'il y en a!!!
J'ai imaginé lancer une turbine 10 sec toute les minutes (ou qqch du genre). Je suis novice et ne sais pas programmer ainsi j'ai commencé à tout faire manuellement dans le planning... un travail fastidieux!!!
Y aurait il une bonne âme pour me proposer une méthode d'automatisation ou de répétition de tache via blockly ou autre?
je vous remercie par avance de votre aide.
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: Gazon et fonction épouventail!!!

Message par Keros »

Bonjour elba et bienvenue sur le forum ;)

Je te propose un petit guide que j'ai rédigé pour débuter en programmation.

Pour ton application, cela peut être assez simple à ce mettre en place dans le sens où les scripts qui s'exécute sur une base de temps (Time) s'active toutes les minutes. Il te suffirait d'y effectuer une action pendant 10 secondes (for 10 seconds ou off after 10 seconds) et ça pourrait répondre à ton besoin.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
elba
Messages : 7
Inscription : 12 août 2019, 23:38

Re: Gazon et fonction épouventail!!!

Message par elba »

merci Keros, je vais regarder, de prime abord ca a l'ai super!!!! En attendant un avis j'avais pensé à ca mais évidement ca ne fonctionne pas :/
je me mets a ton guide!!
Pièces jointes
2021-04-15.png
2021-04-15.png (538 Kio) Consulté 2739 fois
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: Gazon et fonction épouventail!!!

Message par Keros »

Je vois que tu as débuté, c'est bien !! Par contre, attention à la boucle infinie ;)

Regarde bien mes explications sur les points de programmation : Ton trigger étant sur All, ton script se lance à chaque changement d'un dispositif. Et dedans si sud == On alors sud = off ou alors si sud == on alors sur = off. Tu vois le souci de boucle ?
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
elba
Messages : 7
Inscription : 12 août 2019, 23:38

Re: Gazon et fonction épouventail!!!

Message par elba »

je suis en lecture des liens ainsi je ne comprends pas encore ta phrase " sud == On alors sud = off ou alors si sud == on alors sur = off" mais je comprends bien la boucle oui. l'idée que tu donne évitera ca puisque qu'en script_time_ j'aurai simplement a dire "sud ON durant 5 sec". Reste plus qu'a savoir l'écrire ;) j devrait pourvoir y arriver d'ici 2 ou 3 heures...

Une quesiton: est ce que mon script_time_ va entrer en conflit avec mon arrosage déja programmé le maitn et soir en planning?
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: Gazon et fonction épouventail!!!

Message par Keros »

C'est là où les choses peuvent se compliquer. En tout, je te conseille de procéder étapes par étapes et d'utiliser des briques qui fonctionne pour en faire le fonctionnement dont tu as besoin.

En effet, si tu as un planning qui définit que ton arrosage doit être à on et que ton script se lance : il repassera l'arrosage à On (pas de problèmes) par contre, 10 (ou 5) secondes après >>> Off.

L'idée est de rajouter une condition dans ton script pour vérifier que l'arrosage est à Off pour le mettre en route.
Mais encore une fois, garde ce point dans un second temps ;)
elba a écrit : 15 avr. 2021, 22:19 simplement a dire "sud ON durant 5 sec". Reste plus qu'a savoir l'écrire ;) j devrait pourvoir y arriver d'ici 2 ou 3 heures...
Au vu de ce que tu as déjà utilisé comme fonction dans Blocky, je ne pense pas que tu ais besoin d'autant de temps !
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
elba
Messages : 7
Inscription : 12 août 2019, 23:38

Re: Gazon et fonction épouventail!!!

Message par elba »

merci du tuyau!!!!

pour le temps, ca fait deja 40 min et j'en suis a savoir que je dois écrire
commandArray['Switch']='On'
nos instructions ici
return commandArray

et que je veux écrire

SI il est plus de 7h40h ET moins de 22h
ET SI sud = OFF
ALORS
Sud on durant 5 secondes

c pas ce soir que j'aurai un moment privilégié avec ma femme :o
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: Gazon et fonction épouventail!!!

Message par Keros »

Comme je t'ai dis, vas-y étape par étape.
  • Allume ton arrosage pendant 5 seconde toutes les minutes.
  • Ensuite tu rajoutes la vérification s'il est éteint.
  • Enfin tu trouveras une façon pour la faire que suivant une plage horaire.
Après chaque étape, tu pourras avancer et construire la suivante. En essayant tout d'un coup dès le départ, tu risques de tourner en rond sans comprendre ce qui ne se passe pas bien.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
elba
Messages : 7
Inscription : 12 août 2019, 23:38

Re: Gazon et fonction épouventail!!!

Message par elba »

2h10 plus tard j'ai le cerveau en compote!! Il me manque la base de la base du langage et des mots clefs pour comprendre ce que je fais mais je suis arrivé a ca
--------------------
-- les variables de seuil.
Seuil_Heure_debut="07:40:00"
Seuil_Heure_fin="22:00:00"
-------------------

commandArray = {}

Heure_Actuelle=os.date("%X")
Seuil_Heure_debut= "07:30:00"
Seuil_Heure_fin="22:00:00"

if ['device']'Sud'['Switch']='Off' then
if Heure_Actuelle > Seuil_Heure_debut
if Heure_Actuelle < Seuil_Heure_fin then
commandArray = {}
commandArray[1]={['Sud']='On'}
commandArray[2]={['Sud']='Off AFTER 3'}
end
return commandArray

la partie "ON pendant 3 sec" fonctionne. l'exclusion si ON j sais pas et les horaires nonplus. faudra attendre ton avis ou demain 7h40 ;)
merci de m'avoir guidé
elba
Messages : 7
Inscription : 12 août 2019, 23:38

Re: Gazon et fonction épouventail!!!

Message par elba »

Apres qq essais supplémentaires j'y suis arrivé!!!

Code : Tout sélectionner

-- Gestion de la buse pour faire fuir oiseau en fonction
-- de l heure
-- la buse passe sur on durant 3 seondes
-- si l'heure est entre 7h40 et 22h00
--
-- 16/04/121 : Version 1.5

--------------------
-- les variables de seuil.
Seuil_Heure_debut="07:40:00"
Seuil_Heure_fin="22:00:00"
-------------------

commandArray = {}

Heure_Actuelle=os.date("%X")
Seuil_Heure_debut= "07:30:00"
Seuil_Heure_fin="22:00:00"

if {['Sud']='Off'} then
	if Heure_Actuelle > Seuil_Heure_debut and Heure_Actuelle < Seuil_Heure_fin then
        commandArray = {}
            commandArray[1]={['Sud']='On'}
            commandArray[2]={['Sud']='Off AFTER 3'}
    end
end
return commandArray
j'ai esayé d'ajouter un arrosage long a 14h, j'arrive pas a faire une exclusion. Pas grave.
bonne journée aux éventuels lecteurs.
Dernière modification par Keros le 21 avr. 2021, 12:18, modifié 1 fois.
Raison : Ajout des balises [Code]
Répondre