Les avertissements suivants se sont produits :
Warning [2] count(): Parameter must be an array or an object that implements Countable - Line: 864 - File: showthread.php PHP 7.3.33 (Linux)
File Line Function
/showthread.php 864 errorHandler->error




Tuto enchaînement d'automates
#1
Bonjour,
Suite à ma question sur l'exécution en parallèle ou en séquences d'automates appelés par d'autres,
@HSD m'a redirigé vers la solution proposées par @tilleul Amen-1fb6 Amen-1fb6 Amen-1fb6

Elle fonctionne SUPER !

Mais j'ai voulu l'exploiter un peu plus, et je vous partage le fruit de mes recherches.

L'idée est que si un automate tourne, il ne peut pas être appelé par un autre.
Dès qu'il a fini de tourner, il démarre, et celui qui l'a appelé attend qu'il soit fini pour continuer.

LIMITATION : si vous avez plus d'un automate qui sont en attente de pouvoir exécuter un "sous"-automate, il y a problème...

Donc j'ai créé une variable Booléenne <Run_ZA_Sub>.
Elle sera à TRUE quand l'automate <ZA_Sub> tourne et à FALSE à la fin de l'automate.

Donc pour l'illustration, j'ai créé un automate <ZA_Main> qui
   
1) actionne une lampe (pour être sûr qu'il démarre bien)
2) teste la variable <Run_ZA_Sub>
     - si true, alors on fait un Wait sur un déclencheur de cette variable à FALSE, puis on exécute l'automate <ZA_Sub>
     - si false, on exécute directement l'automate <ZA_Sub>
3) on fait à nouveau un Wait sur la valeur de la variable <Run_SA_Sub> = FALSE
4) re-actionne la lampe pour valider que mon automate principal s'est bien terminé.

L'automate appelé <ZA_Sub> fait :
   
1) mettre la variable <Run_ZA_Sub> = TRUE
2) fait ce qu'il doit faire, ici juste un wait de 5 secondes, pour les besoins du test.
3) repasse le variable <Run_ZA_Sub> à FALSE

Voilà, c'est on ne peut plus simple, et encore merci à @tilleul pour l'idée.

Je vais exploiter ceci pour améliorer la gestion de mes caméras via Surveillance Station et également pour éviter des chevauchements dans les automates qui disent des chose dans les Sonos.
Likes Received: 179 in 132 posts
Likes Given: 150
Répondre


Messages dans ce sujet
enchaînement d'automates - par jojo - 06-06-2017, 10:41 PM
RE: enchaînement d'automates - par Hsd - 06-06-2017, 11:05 PM
RE: enchaînement d'automates - par pepite - 06-11-2017, 09:44 PM

Sujets apparemment similaires...
Sujet Auteur Réponses Affichages Dernier message
  test sur les automates jojo 2 4,910 09-16-2018, 05:36 PM
Dernier message: jojo
  Documentation automates (modules logiques) jojo 3 6,391 11-06-2017, 11:16 PM
Dernier message: jojo
  Classement des automates / scénarios! A quand une réponse? AucuneID 0 2,919 09-26-2016, 01:25 PM
Dernier message: AucuneID
  [Amélioration] Classement des automates mcp 5 8,090 06-13-2016, 04:57 PM
Dernier message: Ives
  Classement des automates / scénarios AucuneID 2 5,149 01-28-2016, 05:22 PM
Dernier message: Jlr
  Nbre Automates maxi patrickp78 3 6,497 08-24-2015, 03:04 PM
Dernier message: Romain
  Automates... Déclenchements en parallèle, réentrance et paramètres d'entrée/sortie bizniouf 2 5,422 01-26-2015, 06:50 PM
Dernier message: coyotus
  Liste des automates dans lesquels est utilisée une variable bizniouf 4 8,066 01-15-2015, 02:11 PM
Dernier message: bizniouf
  Centrale d'alarme KNX dans les automates fredblabla 1 4,231 12-15-2014, 12:45 PM
Dernier message: fredblabla
  Etat "est démarré" pour automates et scénarios + lancer/arrêter coyotus 1 4,234 11-29-2014, 12:41 PM
Dernier message: tilleul



Utilisateur(s) parcourant ce sujet : 1 visiteur(s)