Temporisé le lancement d'un scénario

Tags: #<Tag:0x00007f753b2c4c98>

Hello la communauté,
Alors voilà j’ai un scénario qui lance l’arrosage auto de mon jardin tous les jours à 5H30 et 20h30 et j’aimerais que le scénario ne se lance pas s’il a plu ou qu’il va pleuvoir dans les 3H.
PS: Je me sert du plugin Weather pour connaitre la météo chez moi

mon scénario ressemble à ça:
Capture d’écran 2021-09-08 à 14.46.50
Capture d’écran 2021-09-08 à 14.47.05

Comment dois-je faire évoluer mon scénario pour arriver à ce que je souhaite??

Merci

Bonjour,
Un simple Si (pas de pluie) dans les 3 heures en tête de scénario devrait faire l’affaire.

Lo,

As-tu le post de Loïc ? Je ne l’ai pas lu, je ne suis pas concerné mais je pense qu’il a pensé à toutes les éventualités, bonne lecture,

Au plaisir, bonne journée,

oui c’est exactement ça que je veux faire mais je sais pas entrer la condition « dans les 3 heures »…
merci pour la réponse

Ah non connaissait pas, merci pour le partage, je vais aller voir ça demain :wink:

Avec plaisir,
N’hésite pas si besoin :wink:

Au plaisir, bonne soirée,

Salut,

A tout hasard je te partage ma solution qui me satisfait même si elle n’est pas au niveau de ce que fait Loic ! :sweat_smile:

  1. DONNEES D’ENTREE
  • J’utilise un thermomètre extérieur (c’est un Netatmo mais n’importe quel thermomètre fera l’affaire)
  • J’utilise l’excellent plugin Netatmo OpenData qui me permet de récupérer la pluviométrie mesurée autour de chez moi
  • Ces données sont bien-sur historisées pour pouvoir être utilisées
  1. VARIABLES
    J’ai un scénario qui tourne tous les jours à 23h59 et qui met à jour deux variables :
  • cumul_pluie : j’ajoute la pluviométrie du jour à la pluviométrie totale (qui peut-être remise à 0 à la fin de l’année par exemple) :
variable(cumul_pluie)+#[Extérieur][Pluie][Pluie (Journée)]#
  • cumul_pluie_2j : quantité de pluie de la veille et de l’avant-veille :
variable(cumul_pluie)-(statistics(#[Extérieur][Pluie][Cumul]#,min,2 days ago))

Capture d’écran 2021-09-08 234016

  1. VIRTUELS
    Pour pouvoir faire le calcul cumul_pluie_2j il faut historiser la valeur de la variable cumul_pluie ce qui ne semble pas possible.
    J’ai détourné le problème en faisant deux virtuels Cumul et Cumul (2j) qui affichent les valeurs des variables car la valeur de ces virtuels peut-être historisée :

Capture d’écran 2021-09-08 234840

Capture d’écran 2021-09-08 235021

J’ai un second virtuel Délai_Arrosage un peu plus complexe qui me permet de désactiver la programmation ou de lancer manuellement l’arrosage. Dans ce vituel j’ai aussi une ligne dont je me sers pour définir la durée d’arrosage :
Capture d’écran 2021-09-08 235526

Capture d’écran 2021-09-08 235827

  1. SCENARIOS
  • Le premier scénario ARROS_Durée tourne tous les jours vers 20h :

Capture d’écran 2021-09-09 000343

  • Le second ARROS_Prog que je lance le soir à 22h55 et le matin à 5h58 :

Capture d’écran 2021-09-09 000625

Capture d’écran 2021-09-09 000601

  • J’en ai un troisième tout simple, piloté par un bouton virtuel qui démarre l’arrosage pour 25 minutes.

J’en suis super content. Par rapport à ta demande je n’intègre pas la prévision de pluie le lendemain car dans ma zone je trouve la météo du plugin weather peu fiable.

Au cas où, je précise que je ne suis pas jardinier pour un sou, les valeurs de température de déclenchement (ce thermomètre est Ouest donc un peu exposé l’après-midi) et les durées d’arrosage sont à adapter à votre terrain et au débit de votre arrosage. :wink:

A+.

1 J'aime

Bonjour,

Pour revenir au sujet:

Si vous savez, c’est pareil que le SI que vous avez déjà mais avec une autre commande bien sûr.

Donc il vous faut un équipement et une commande qui vous dit s’il va pleuvoir dans les x h.
Avez-vous cela? Si pas, cherchez après ça.
J’ignore si ça existe sur le plug-in weather.

Salut,
J’avais regardé, le plugin weather ne le fournit pas.
Il faut plutôt regarder du côté de vigilance météo ou météo france.
Et encore c’est à une heure. Pour 3 heures, je ne vois pas.

bonjour @mich0111
si c’est en heure une addition des 3 dernier enregistrement dans l’historique.
perso j’ai pas d’arrosage auto ; mais via script infoclimat
je récupére la pluie « cumul » et d’autre truc
tu fais une addition des 3 premiéres lignes
idem prévision avec un autre site

Bonjour,
De ce que j’ai compris, il veut non seulement les 3 dernières heures mais également les 3 prochaines.
Dans ce dernier cas, il faudra bien utiliser un système de prévision météo, non?

oui relis ma dernière ligne
et j’avais fait une petite explication sur le forum
info-climat pour avant
yr pour après

20210910_101431

le script que j’utilise actuellement (a adapter) pour YR

09:00:04][SCENARIO] Start : Scenario execute automatiquement sur programmation.
[2021-09-10 09:00:04][SCENARIO] Exécution du sous-élément de type [action] : code
[2021-09-10 09:00:04][SCENARIO] Exécution d'un bloc code
[2021-09-10 09:00:04][SCENARIO] time :2021-09-10T06:00:00 dans :0 temp : 14 °C | Precipitation : 0.3 mn | Vent : 2.0
[2021-09-10 09:00:04][SCENARIO] time :2021-09-10T07:00:00 dans :1 temp : 14 °C | Precipitation : 0 mn | Vent : 2.1
[2021-09-10 09:00:04][SCENARIO] time :2021-09-10T08:00:00 dans :2 temp : 14 °C | Precipitation : 0 mn | Vent : 1.4
[2021-09-10 09:00:04][SCENARIO] time :2021-09-10T09:00:00 dans :3 temp : 15 °C | Precipitation : 0 mn | Vent : 1.5
[2021-09-10 09:00:04][SCENARIO] time :2021-09-10T10:00:00 dans :4 temp : 16 °C | Precipitation : 0 mn | Vent : 3.0
[2021-09-10 09:00:04][SCENARIO] time :2021-09-10T11:00:00 dans :5 temp : 17 °C | Precipitation : 0.1 mn | Vent : 2.9
[2021-09-10 09:00:04][SCENARIO] time :2021-09-10T12:00:00 dans :6 temp : 18 °C | Precipitation : 0.1 mn | Vent : 2.3
[2021-09-10 09:00:04][SCENARIO] time :2021-09-10T13:00:00 dans :7 temp : 19 °C | Precipitation : 0 mn | Vent : 1.7
[2021-09-10 09:00:04][SCENARIO] time :2021-09-10T14:00:00 dans :8 temp : 20 °C | Precipitation : 0.1 mn | Vent : 1.4
[2021-09-10 09:00:04][SCENARIO] time :2021-09-10T15:00:00 dans :9 temp : 21 °C | Precipitation : 1.3 mn | Vent : 1.0
[2021-09-10 09:00:04][SCENARIO] time :2021-09-10T16:00:00 dans :10 temp : 19 °C | Precipitation : 3.6 mn | Vent : 3.1
[2021-09-10 09:00:04][SCENARIO] time :2021-09-10T17:00:00 dans :11 temp : 17 °C | Precipitation : 0.1 mn | Vent : 2.1
[2021-09-10 09:00:04][SCENARIO] dans les 12 heures il est prevu = 5.6 mn
[2021-09-10 09:00:05][SCENARIO] time :2021-09-10T18:00:00 dans :12 temp : 18 °C | Precipitation : 0.1 mn | Vent : 1.2
[2021-09-10 09:00:05][SCENARIO] time :2021-09-10T19:00:00 dans :13 temp : 18 °C | Precipitation : 0.1 mn | Vent : 0.8
[2021-09-10 09:00:05][SCENARIO] time :2021-09-10T20:00:00 dans :14 temp : 16 °C | Precipitation : 0 mn | Vent : 0.9
[2021-09-10 09:00:05][SCENARIO] time :2021-09-10T21:00:00 dans :15 temp : 15 °C | Precipitation : 0 mn | Vent : 1.4
[2021-09-10 09:00:05][SCENARIO] time :2021-09-10T22:00:00 dans :16 temp : 15 °C | Precipitation : 0 mn | Vent : 1.2
[2021-09-10 09:00:05][SCENARIO] time :2021-09-10T23:00:00 dans :17 temp : 14 °C | Precipitation : 0 mn | Vent : 1.1
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T00:00:00 dans :18 temp : 13 °C | Precipitation : 0 mn | Vent : 1.2
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T01:00:00 dans :19 temp : 13 °C | Precipitation : 0 mn | Vent : 1.1
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T02:00:00 dans :20 temp : 12 °C | Precipitation : 0 mn | Vent : 1.1
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T03:00:00 dans :21 temp : 11 °C | Precipitation : 0 mn | Vent : 1.0
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T04:00:00 dans :22 temp : 11 °C | Precipitation : 0 mn | Vent : 0.8
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T05:00:00 dans :23 temp : 11 °C | Precipitation : 0 mn | Vent : 0.8
[2021-09-10 09:00:05][SCENARIO] dans les 24 heures il est prevu = 5.8 mn
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T06:00:00 dans :24 temp : 11 °C | Precipitation : 0 mn | Vent : 0.8
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T07:00:00 dans :25 temp : 10 °C | Precipitation : 0 mn | Vent : 0.7
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T08:00:00 dans :26 temp : 11 °C | Precipitation : 0 mn | Vent : 0.7
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T09:00:00 dans :27 temp : 13 °C | Precipitation : 0 mn | Vent : 0.6
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T10:00:00 dans :28 temp : 15 °C | Precipitation : 0 mn | Vent : 0.6
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T11:00:00 dans :29 temp : 17 °C | Precipitation : 0 mn | Vent : 0.7
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T12:00:00 dans :30 temp : 18 °C | Precipitation : 0 mn | Vent : 0.7
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T13:00:00 dans :31 temp : 20 °C | Precipitation : 0 mn | Vent : 0.9
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T14:00:00 dans :32 temp : 21 °C | Precipitation : 0 mn | Vent : 1.2
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T15:00:00 dans :33 temp : 21 °C | Precipitation : 0 mn | Vent : 1.9
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T16:00:00 dans :34 temp : 21 °C | Precipitation : 0 mn | Vent : 2.4
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T17:00:00 dans :35 temp : 21 °C | Precipitation : 0 mn | Vent : 2.6
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T18:00:00 dans :36 temp : 21 °C | Precipitation : 0 mn | Vent : 2.4
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T19:00:00 dans :37 temp : 20 °C | Precipitation : 0 mn | Vent : 1.9
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T20:00:00 dans :38 temp : 17 °C | Precipitation : 0 mn | Vent : 1.5
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T21:00:00 dans :39 temp : 16 °C | Precipitation : 0 mn | Vent : 1.2
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T22:00:00 dans :40 temp : 14 °C | Precipitation : 0 mn | Vent : 1.0
[2021-09-10 09:00:05][SCENARIO] time :2021-09-11T23:00:00 dans :41 temp : 14 °C | Precipitation : 0 mn | Vent : 0.9
[2021-09-10 09:00:05][SCENARIO] time :2021-09-12T00:00:00 dans :42 temp : 13 °C | Precipitation : 0 mn | Vent : 1.0
[2021-09-10 09:00:05][SCENARIO] time :2021-09-12T01:00:00 dans :43 temp : 12 °C | Precipitation : 0 mn | Vent : 0.8
[2021-09-10 09:00:05][SCENARIO] time :2021-09-12T02:00:00 dans :44 temp : 11 °C | Precipitation : 0 mn | Vent : 0.6
[2021-09-10 09:00:05][SCENARIO] time :2021-09-12T03:00:00 dans :45 temp : 11 °C | Precipitation : 0 mn | Vent : 0.3
[2021-09-10 09:00:05][SCENARIO] time :2021-09-12T04:00:00 dans :46 temp : 10 °C | Precipitation : 0 mn | Vent : 0.4
[2021-09-10 09:00:05][SCENARIO] time :2021-09-12T05:00:00 dans :47 temp : 10 °C | Precipitation : 0 mn | Vent : 0.2
[2021-09-10 09:00:05][SCENARIO] dans les 48 heures il est prevu = 5.8 mn
[2021-09-10 09:00:05][SCENARIO] Fin correcte du scénario
// ancien ok
$fichier = 'http://www.yr.no/place/France/Auvergne/Chaspuzac/forecast_hour_by_hour.xml';
//$fichier = 'https://www.yr.no/place/France/Auvergne/Chaspuzac/forecast.xml';
$xml = simplexml_load_file($fichier);
$hour = 0;
$attributs_somme = 0;

   while ($hour <= 47) {
     // pour jour fracionné en 4 
//        while ($hour <= 37) {
          
$attributs_time = $xml->forecast->tabular->time[($hour)]->attributes()->from;
         $attributs = $xml->forecast->tabular->time[($hour)]->precipitation->attributes();
        $attributs_somme = $attributs_somme + floatval($attributs);

     
     $temperatures = $xml->forecast->tabular->time[($hour)]->temperature['value'];
     $windSpeed = $xml->forecast->tabular->time[($hour)]->windSpeed['mps'];

     
         $scenario->setLog("time :".$attributs_time." dans :".$hour." temp : ".$temperatures." °C | Precipitation : ".$attributs." mn | Vent : ".$windSpeed);
  //   	$scenario->setLog("$hour = $temperatures");

     
          // pour addition heure par heure 
               if ($hour == 11) {
            $scenario->setLog("dans les 12 heures il est prevu = $attributs_somme mn");
       //          $scenario->setData("precipitation12HEURES", $attributs_somme);
             $cmd=cmd::byString("#[météo][Prévisions de pluie][12 heures]#");
 $cmd->event($attributs_somme);    
                 
}  
                  if ($hour == 23) {
            $scenario->setLog("dans les 24 heures il est prevu = $attributs_somme mn");
            //         $scenario->setData("precipitation24HEURES", $attributs_somme);
                         $cmd=cmd::byString("#[météo][Prévisions de pluie][24 heures]#");
 $cmd->event($attributs_somme);            
                    
}    
                       if ($hour == 47) {
            $scenario->setLog("dans les 48 heures il est prevu = $attributs_somme mn");
             //             $scenario->setData("precipitation48HEURES", $attributs_somme);
						$cmd=cmd::byString("#[météo][Prévisions de pluie][48 heures]#");
 $cmd->event($attributs_somme);             
} 

    $hour = $hour + 1 ;

}  

1 J'aime

Désolé, je n’ai pas été jusqu’à la dernière ligne de ton avant-dernier post

1 J'aime