             **** Mode d'emploi ROBOCOM 3.1 ****

ROBOCOM est une petite application "Port srie" (i.e. COMx) capable 
d'envoyer et de recevoir des octets d'un quipement (en l'occurrence un
robot ou mcanisme d'automate) connect  ce port via une carte d'interface.
  - l'octet envoy est, en principe, une COMMANDE vers le Robot.
  - l'octet reu est, en contre partie, un EVENEMENT en provenance du Robot. 

ROBOCOM a un but principalemnt pdagogique (lyces, collges), son utilisation 
 d'autres fins est dconseille.

La version 1.0 de ROBOCOM supporte une excution manuelle (commandes
envoyes octet par octet). 

La version 2.0 de ROBOCOM, en plus de l'excution manuelle, supporte des
scripts simples. Un script est un enchanement linaire d'instructions
et de macros (une macro tant un petit script lmentaire)
pouvant tre synchronises avec l'quipement soit par des attentes 
d'vnement venant de l'quipement, soit par un dlai de temps.  

La version 3.0 de ROBOCOM  enrichit le set d'instructions de scripts et
macros, ajoutant, principalement des instructions conditionnelles et de
dbranchement. Des attentes d'vnements peuvent tre indfinis (n'importe
quel vnement ) ainsi que limits dans le temps (dlai maximum d'attente). 
Les  scripts et macros devenant complexes, des possibilits d'arrts programms 
ou sur commande ont t ajoutes, ainsi qu'un mode " pas  pas ".

La version 3.1 de ROBOCOM, s'appuyant sur la capacit de scripting, ajoute
un mcanisme (rserv aux initis) connu sous le nom "Automate d'tats finis"
(FSM Finit States Machine en anglais) qui pourra intresser les lves 
se destinant aux mtiers de l'informatique.    

DEMARRAGE DE ROBOCOM
********************
 1) Cliquez sur son Icne. L'application dmarre et affiche la fentre 
    "Tableau de bord"  
 2) Cliquez Menu Connexion! pour tablir la communication avec le Robot.

   note: le port de communication peut tre chang avant la connexion
         (Menu Port), la vitesse peut tre modifi  tout moment (Baud) 

 3) Entrez les Commandes vers le Robot. 6 manires diffrentes.
   - Cliquez une commande pr-dfinie dans la liste "Envoi immdiat".
   - Cliquez les LED's pour obtenir l'octet voulu, puis bouton "Au Robot".
   - Cliquez sur une commande dj envoye, puis "Au Robot".
   - Double Cliquez une commande dj envoye. 
   - Entrez la valeur dcimale (0  255) ou hexadcimale (x00  xFF) dans
     la petite zone de saisie bleue jouxtant le bouton "Au Robot".  
   - Cliquez le bouton "Au Robot", la dernire commande est excute  nouveau.

ARRET DE ROBOCOM
****************
 Menu Dconnexion  
 Menu Fichier, Quitter

PARAMETRAGE 
***********
 Le paramtrage se fait avec le fichier robocom.ini
 Note: un changement ne sera pris en compte qu'au redmarrage de ROBOCOM.

 On peut:
  - donner la prfrence  un affichage hexadcimal (versus dcimal)  
  - dfinir le port srie (COMx, vitesse et autres paramtres)  
  - pr-dfinir les commandes.  
  - pr-dfinir les vnements.  
  - lister les scripts d'excution

SCRIPTS
*******
  1) Ecriture: utilisez le bloc-note et nommez le fichier avec un suffixe
     .scr (ex: monessai.scr). Utiliser les exemples fournis (exemple1.scr
      exemple4.scr) pour crire votre script.
     Voir "Instructions de script" dans l'aide pour la syntaxe du script. 
  2) Tester/Excuter: 
    - dmarrez ROBOCOM et la Connexion avec le Robot
    - tapez le nom de votre script dans la petite zone "Scripts" rose 
      appuyez sur Entre. Le script s'affiche !
    - Cliquez sur le bouton GO ou sur la 1ere ligne du script   
      (note: on peut aussi commencer, ou ractiver un script n'importe ou)
    - Le script se droule. 
    - Le script peut tre arrt n'importe quand (le bouton GO ->STOP)   
    - En cas de blocage, cliquez sur le bouton RAZ (Remise  Zro) 
    - Le script peut tre excut pas  pas (case  cocher).
  3) Les scripts dfinitifs et fiables seront dfinis dans robocom.ini

MACROS
******
  Une macro est un script lmentaire d'un usage courant et rptitif.  
  Une macro s'crit comme un script sauf qu'une macro ne peut appeler
      une autre macro.
  Une macro n'est pas liste dans robocom.ini.
  Une macro peut se tester (pour mise au point) exactement comme un script. 
  Une macro est invoque  l'intrieure d'un script.
  (ex: Macro flexion.mcr avec Script exemple2.scr) 

AUTOMATE D'ETATS FINIS
**********************
  Un automate d'tats finis (AEF) peut tre implement dans un script 
  qui prend alors le rle d'un "ordonnanceur" (ou squenceur).
  On considre un mcanisme d'automate comme une srie d'tats (debout, 
  couch, etc. ...). Pour un tat donn, l'automate ragit  des stimuli
  (des vnements) en prenant des actions appropries et, ventuellement
  en changeant d'tat. Ceci s'appelle une "transition".
  Une transition est donc dfinie avec 4 paramtres
    1) Un tat de l'automate
    2) Un vnement qui le stimule dans cet tat
    3) le ou les actions  prendre
    4) le nouvel tat ventuel de l'automate  
  L'ordonnanceur sera un script qui boucle sur lui mme en attente
  d'vnement, ou toutes les n transitions de l'AEF seront dfinies.
  Les paramtres 1 et 4 seront spcifis dans l'instruction /:  
  Les paramtres 2 et 3 seront spcifis dans l'instruction ?:  

  L'exemple 5 (rgulation de la vitesse d'un train) aide  la
  comprhension du concept d'Automate d'tats finis.

 Amusez vous bien!
