ESPION2						01/12/10


Description

Ce petit programme excutable permet de lire les donnes des blocs SLin et SLout des automates Crouzet M3 et Schneider Zelio.
Il est conu pour tre appel dans des scripts ou d'autres programmes.

A chaque excution, il ouvre une communication avec l'automate, envoie le message pour obtenir les donnes demandes, dcode la rponse, crit sur sa sortie standard les rsultats obtenus et se termine en succs.
En cas de problme, il crit la raison du problme sur la sortie d'erreur et termine en chec.


Arguments

<automate> <port srie> [<1re donne  lire> [<nombre de donnes  lire>]]

<automate> : obligatoire, indique l'automate connect. L'automate indiqu doit tre "M3" ou "Zelio" 

<port srie> : obligatoire, donne le port srie auquel est connect l'automate.
Le port est de la forme COMx (x tant entre 1 et 9).

<1re donne  lire> : facultatif (25 par dfaut), indique le numro de la premire donne  lire, de 1  48 :
- les donnes des blocs SLin sont numrotes de 1  24
- les donnes des blocs SLout sont numrotes de 25  48

<nombre de donnes  lire> : facultatif (8 par dfaut), indique le nombre de donnes  lire  partir de la premire, de 1  48.
Si le nombre fourni est trop grand, le programme borne sa valeur pour rester dans les 48 donnes disponibles.

Si le 1er argument fourni est "version", le programme donne simplement la date de la version mais n'interroge pas l'automate.

Exemples :

espion2 m3 com1
=> demande les donnes de 25  32

espion2 Zelio com2 44
=> demande les donnes de 44  48

espion2 M3 com3 30 7
=> demande les donnes de 30  36

espion2 version
=> donne la date de la version du programme sous la forme jj/mm/aa


Utilisation

Dans un programme ou un script, il faut tester le code de terminaison du programme :

- si c'est 0, l'excution s'est bien droule et les valeurs des donnes demandes sont disponibles sur la sortie standard, en dcimal, spare par des espaces, et dans l'ordre des donnes croissantes.

- si c'est diffrent de 0, une erreur a t dtecte, un message d'erreur a t crit sur la sortie d'erreur standard, les donnes ne sont pas disponibles.
Si le programme affiche "erreur systeme=xxx", le code d'erreur xxx peut tre interprt ici :
http://msdn.microsoft.com/en-us/library/ms681381%28v=VS.85%29.aspx

Si l'automate ne rpond pas, le programme attend 5 secondes avant d'abandonner.


Portabilit

Le programme fait des appels systme  Windows.

Le programme est crit en C, compil avec Visual C++ Express (gratuit).