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 JAO

2 - 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 conditions satisfaites ALORS Exécution des commandes

Si caractère de continuation + ALORS on continue l’examen

SINON fin de traitement

SINON

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

Sommaire des articles parus au Bulletin du Club

 

Article paru dans le bulletin n° 1 d'octobre 1996
MAJ le 12 mars 2001 par Jean Pierre Tharan et Yves Brochard