CLUB des UTILISATEURS du JAO SYSTEME |
|
LE DISPOSITIF DE MACRO-COMMANDES DE JAO |
Article paru dans le bulletin n° 1 d'octobre 1996 |
par André MOUHOT |
|
1 - Présentation du dispositif de macro-commandes de JAO2 - Principes de base 3 - Syntaxe 4 - Domaines d’utilisation |
1 - Présentation du dispositif de macro-commandes de JAO Une macro-commande n’est rien d’autre qu’un dispositif d’automatisation de commandes : · une macro se substitue à l’opérateur, elle met en œuvre des commandes qui auraient du être frappées au clavier de l’ordinateur,· une macro est activée par un événement, tel que l’entrée d’un convoi sur un canton,· une macro est la description du comportement d’un utilisateur face à un événement : comment faire pour …Les difficultés de mise en œuvre des macro-commandes sont de trois ordres : 1. la codification des commandes, 2. l’analyse du traitement à réaliser. 3. l’absence de dispositif de traitement du " Non Événement " La version Windows 95 de JAO apportera une réponse au premier point. Quant au deuxième point, il n’y a pas de solution miracle : la machine, autrement dit l’ordinateur, n’est pas prêt de remplacer l’homme. C’est à l’utilisateur de décrire le raisonnement qu’il souhaite faire exploiter par l’ordinateur. Pour ce qui concerne le dernier cas, le " non événement ", une explication s’impose : Une machine quelle qu‘elle soit réagit à des ordres ou des situations : · une automobile accélère si son pilote appuie sur l’accélérateur,· une porte automatique se ferme non pas quand il ne se passe plus rien mais bien au contraire quant un ensemble d’événements lui indique qu’il n’y a plus personne dans l’aire de sécurité. S’il ne se passe effectivement rien, la porte restera fort heureusement ouverte.JAO signale à l’opérateur le " non événement " lorsqu’aucun convoi ne se déplace, ceci par un avertissement sonore particulièrement (dés)agréable. JAO ne permet pas dans ce cas, l’utilisation de macro-commandes. En supposant que JAO vous offre la possibilité de programmer des macro-commandes activées en cas de non activité du réseau, il devrait aussi vous offrir un dispositif d’analyse susceptible de permettre de traiter toutes les situations possibles. Et malheureusement votre serviteur n’est pas en mesure de fournir cette prestation. |
2 - Principes de base |
|
Les Événements : Interception du changement d’état des capteurs ainsi que des touches de fonctions du clavier. Les Filtres : Les Actions :
Les Événements : Les Macro-Commandes permettent d’intercepter aujourd’hui les événements liés aux capteurs, ainsi que les événements provoqués par l’utilisateur sur les touches de fonctions F2 à F12 du clavier. Les Filtres : Les événements peuvent être filtrés c’est à dire associés à des conditions d’utilisation. Un filtre est constitué d’un ensemble de conditions reliées par les opérateurs logiques " ET " et " OU ", respectivement symbolisés par les caractères & et | Une commande inconditionnelle " q " complète le dispositif (elle permet de déterminer le numéro de convoi occupant un canton). Lorsque les conditions sont remplies, la ou les commandes qui suivent sont exécutées et le processus de traitement de l’événement stoppé sauf si l’utilisateur spécifie une demande de poursuite inconditionnelle du processus (par le caractère +). Dans ce cas, quel que soit le résultat des tests constituant le filtre, le processus se poursuit avec l’examen des macros suivantes. |
3 - Syntaxe Forme Si Si caractère de continuation SINON fin de traitementSINON on continue l’examen Conditions Syntaxe Occupation (oX,N) avec X=n0 de canton et N=n0 de convoi Le caractère ? utilisé pour N prend la signification occupation par un convoi quelconque. Si le convoi N occupe le canton X alors la condition est remplie pour exécuter les commandes. Direction (aX,N) avec X=n0 de canton cible et N=N0 de convoi Si le convoi N se dirige vers le canton X alors Origine (pX,N) avec X=n0 de canton précédent et N=n0 de convoi Si le convoi N provient du canton N alors Statut (sS,N) avec S=code statut et N=n0 de convoi Si le convoi N est sous statut S alors Itinéraire (iI,N) avec I=n0 d’itinéraire et N=n0 de convoi Si le convoi N suit l’itinéraire I alors Le caractère ^ permet d’inverser une condition : Si la condition N’EST PAS remplie alors …Query Syntaxe (qN) avec N=n° de canton Mémorise le n° de convoi présent sur canton N Pour invoquer le n0 de convoi mémorisé il suffit d’utiliser le caractère ! en lieu et place du n0 de convoi dans toutes commandes ou conditions invoquées. Actions Les actions réalisables sur interception d’un événement correspondent aux commandes qui sont d’ordinaire invoquées par l’intermédiaire du clavier. Une macro-commande est en quelque sorte un dispositif d’émulation clavier. Un ensemble d’actions termine normalement le processus de traitement d’événements par macro-commandes, processus qui peut cependant être poursuivi lorsque l’utilisateur utilise le caractère de continuation + enfin de condition. |
4 - Domaines d’utilisation Les domaines d’utilisation des macro-commandes sont principalement : 1. Programmation d’asservissements particuliers (Utilisation des capteurs additifs) 2. Gestion d’itinéraires ou de manœuvres complexes 3. Régulation de flux 4. Programmation de commandes répétitives 5. Définition de règles particulières Programmation d’asservissements particuliers Utilisation des capteurs additifs Tout usage dérivé de l’électronique JAO peut être programme à partir d’événements détectables par le système. La programmation de dételeur à partir des capteurs additifs est certainement l’application la plus représentative du dispositif Gestion d’itinéraires ou de manœuvres complexes La mise en œuvre de situation telle que le rangement de convoi en voies de garage avec dételage de rames de wagon nécessite l’utilisation d’itinéraires affectés de façon ponctuelle. L’itinéraire n ‘est pas suffisant pour automatiser toutes les tâches à accomplir. La programmation de macro-commandes permet d’associer itinéraires et commandes d’asservissements pour réalisation de manœuvres complexes. Régulation de flux Les cantons courts et les cantons virtuels ne fournissent pas toujours le moyen de régler les conflits inhérents à la mise en œuvre de réseaux complexes. La programmation événementielle permet d’établir un dispositif de surveillance et de gestion des flux qui se substituera au besoin, au pilotage manuel. Programmation de commandes répétitives Les touches de fonctions d’un PC se caractérisent par le fait qu’elles ne produisent pas une action prédéfinie : elles sont programmables. Tout programme peut donc s’approprier les touches de fonctions et leur donner une signification particulière. Il existe cependant une normalisation dont celle concernant la touche F1, traditionnellement réservée à l’appel de l’aide contextuelle. JAO respecte cette convention. Les touches F2 à F12 sont exploitables sous JAO pour affectation de séquences de commandes. F11 et F12 ne fonctionnent pas en mode simulation. Définition de règles particulières Une règle spécifique permet de modifier le comportement des convois sans avoir recours à l’affectation systématique d’itinéraires permanents ; par exemple pour l’arrêt de convois en gare ou encore immobiliser un convoi durant le passage d’un rapide. |
André MOUHOT |
CLUB des UTILISATEURS du JAO SYSTEME |
LE DISPOSITIF DE MACRO-COMMANDES DE JAO |
Article paru dans le bulletin n° 1 d'octobre 1996 |