Temps de réponse suite à commande
L'appareil ne peut simultanément recevoir ou transmettre des données (il
fonctionne en mode half-duplex). En RS232, l'appareil ignore les
commandes lorsqu'il est en cours de transmission de données, dans ce cas il
utilise la ligne RXD comme signal d'occupation. Lors de l'émission de
commandes et de données vers l'appareil, il faut respecter une pause entre
chaque commande, ceci permettant l'exécution de la commande reçue et la
mise en préparation en vue de la commande suivante.
Au début de l'intervalle t1, le calculateur prépare le message et écrit la
chaîne sur le port série, ce qui initie la transmission. Durant t1, les caractères
de commande sont transmis, à la fin de cette période, le caractère de
terminaison (*,$ ou <CR> en mode esclave seulement) est reçu par
l'appareil. La durée de t1 est fonction à la fois du nombre de caractères de la
chaîne et de la vitesse de transmission du port.
t1 = (10 fois le nombre de caractères) / (vitesse de transmission).
Au début de la phase t2, l'appareil débute l'interprétation de la commande
et, dès que cela est terminé, il l'exécute. Ce temps t2, est variable (cf.
chronogramme). Si aucune réponse n'est attendue, l'appareil est prêt à
recevoir une autre commande.
Si l'appareil doit répondre par une donnée, la phase t2 est fonction du type
du caractère de terminaison. Les caractères de terminaison ''*'' ou ''<CR>
font que t2 varie entre un minimum de 50 ms et un maximum de 100 ms.
Ceci donne le temps suffisant pour libérer le pilote d'émission du bus
RS485. Le fait de terminer la commande par ''$'' fera que t2 aura une durée
comprise entre 2 et 50 ms. Le temps de réponse rapide, dû à l'utilisation de
ce caractère de terminaison nécessite que le pilote soit libéré dans les 2 ms
qui suivent la réception du caractère de terminaison.
Au début de la phase t3, l'appareil répond et émet le premier caractère de
réponse. Tout comme pour t1, la durée de t3 dépend du nombre de
caractères et de la vitesse de transmission du canal. Tout comme pour t1, la
durée de t3 dépend du nombre de caractères et de la vitesse de transmission
du canal.
A la fin de t3, l'appareil est prêt à recevoir la commande suivante.
t3 = (10 fois le nombre de caractères) / (vitesse de transmission).
Le taux de sortie maximal de l'appareil est donc limité par la somme des
durées t1, t2 et t3.
CHRONOGRAMME 'SERIE'
COMMAND
COMMENTAIRE
E
Numérique (esclave) 2 à 50 ms
R
Reset
#
Littéral
V
Ecriture
T
Transmission
p
Impression
Chronogrammes.
PAS DE REPONSE DE L'APPAREIL
AVEC REPONSE DE L'APPAREIL
DUREE DE TRAITEMENT (t2)
2 à 50 ms
2 à 50 ms
100 à 200 ms
2 à 50 ms pour $
50 à 100 ms pour * et pour
<CR>
2 à 50 ms pour $
50 à 100 ms pour * et pour
<CR>
Format de communication
Les données sont transférées depuis l'appareil via un canal de
communication. Dans une communication série, la tension du signal est
commutée entre les niveaux hauts et bas à une cadence prédéterminée
(vitesse de transmission) et en utilisant un codage ASCII. L'équipement
récepteur lit ces variations de niveau à la même cadence et décode les
signaux reçus pour reformer les caractères de l'émission.
Les conventions des niveaux de tension sont celles de l'interface standard.
Le tableau ci-dessous indique les niveaux pour chaque standard.
ETAT DE
LOGIQUE
L'INTERFACE
1
Attente
0
Espace (actif)
* Niveau de tension mesuré au récepteur
Les données sont transmises octet par octet avec un temps d'attente variable
(0 à infini) entre 2 caractères consécutifs. Chaque caractère ASCII fait
l'objet d'une trame composée d'un bit de ''start'', d'un bit de parité
(optionnel) et d'un ou plusieurs bit de stop. Le format de données et la
vitesse de transmission doit correspondre à ce qui est défini pour l'autre
équipement de manière à permettre la communication. Sur la figure on
trouvera les formats de données employés par l'appareil.
Présentation des trames de caractères
Bit de ''start'' et bits de ''données''
Une transmission de données commence toujours par un bit de ''start''. Le
bit ''start'' indique à l'équipement récepteur qu'il doit se préparer à recevoir
une donnée. Après une attente équivalente à 1 bit, le bit le moins significatif
du caractère codé ASCII est transmis, suivi des autres bits de cette donnée.
L'équipement récepteur continue à lire l'état de chaque bit dans l'ordre de la
transmission.
Bit de parité
A la suite des bits de données, un bit de parité est émis. L'émetteur
détermine l'état 0 ou 1 du bit de parité, de manière à ce que le nombre total
de 1 contenu dans le message transmis (y compris le bit de parité lui-même)
soit pair ou impair. Ce bit est utilisé par le récepteur pour détecter les erreurs
qui pourraient survenir lors de la transmission, la détection s'effectuant en
comptant le nombre de bits. Cependant, un seul bit de parité ne peut pas
permettre de détecter des erreurs qui pourraient survenir sur un nombre
impair de bits. Du fait de cette limitation, le bit de parité est souvent ignoré
par le récepteur. L'appareil PAX ignore le bit de parité qui accompagne un
message de données entrant et génère ou non (parité « mark »), une parité
paire ou impaire pour les messages qu'il émet.
Bit de stop
Le dernier caractère transmis est le caractère de stop. Le bit de stop fournit
une pause de durée égale à celle de 1 bit pour permettre au récepteur de se
préparer à se synchroniser à nouveau sur le bit de start de la nouvelle
transmission (bit de start de l'octet suivant). Le récepteur surveille en
permanence l'occurrence du bit de start. Si l'on sélectionne 7 bits pour la
donnée et pas de parité alors, le PAXI émettra 2 bits de stop.
30
RS232*
TXD, RXD ; - 3 à – 15 V
a - b < -200 mV
TXD, RXD ; + 3 à + 15 V
a – b > +200 mV
RS485*