Interfaces de communication Mise en œuvre des mesures automatiques par Lang TRAN TIEN Professeur à l’École Spéciale de Mécanique et d’Électricité de Paris
......................................................... ................... 1. Liai Liaiso son n séri série e ou lia liais ison on par paral allè lèle le ...................................... 1.1 1.1 Liai Liaiso son n sér série ie..... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... ......... .... 1.2 1.2 Liai Liaiso son n para parall llèl èlee .......... ............... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... ......... ......... ........ ...
R 530 - 2 — 2 — 2
......... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ..... 2. Comm Commun unic icat atio ions ns séri série e ...... 2.1 Protoc Protocole oless de commun communicat ication ionss ...... ......... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ... 2.2 Liai Liaiso sons ns asyn asynch chro rone ness ...... ......... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ..... 2.2.1 Interface Interface RS 232C. 232C.... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ..... 2.2.2 Interfaces Interfaces RS 422/RS 423 ...... ......... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ..... 2.2.3 Boucle Boucle de courant 20 mA... mA...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ..... 2.2.4 Cartes de communication asynchrone .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... 2.3 Liai Liaiso sons ns sync synchr hron ones es..... .......... ......... ......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... ....... 2.3.1 Protocole Protocole BSC..... BSC ......... ......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... ......... 2.3.2 Protocole Protocole HDLC... HDLC...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ..... ..
— — — — — — — — — —
3 3 3 3 6 6 7 7 7 7
......... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ..... 3. Comm Commun unic icat atio ions ns para parall llèl èles es...... 3.1 Système Système de de mesure mesuress utilis utilisant ant le le bus GPIB GPIB.. .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .. 3.1.1 Structure Structure du bus GPIB... GPIB...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ... 3.1.2 Aspects opérationnels du bus GPIB... GPIB ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ..... .. 3.2 Mise en œuvre œuvre d’un système de mesure mesure automatique automatique.. .... .... .... .... .... .... .... .... .... .... .... .... .... .. 3.2.1 Adressage Adressage..... .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... ......... .... 3.2.2 Émission Émission et réception réception de données données .......... ............... .......... ......... ......... .......... .......... .......... .......... ........ ... 3.2.3 Demande Demande de service et recherche série... série...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ..... .. 3.2.4 Recherche Recherche parallèle..... parallèle .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... ......... ......... ........ ... 3.2.5 Lancement d’un ou plusieurs instruments.. instruments .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... 3.2.6 Passage Passage de contrôle de bus... bus ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ... 3.3 Caractér Caractérist istiqu iques es électri électrique ques. s..... ......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... ........ ... 3.4 Caractér Caractérist istiqu iques es mécani mécanique ques. s...... ......... ......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... ......... ........ 3.5 Circui Circuits ts d’inte d’interfa rface ce IEEE-4 IEEE-488 88..... .......... ......... ......... .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... ........ ... 3.6 Interf Interface ace bus bus IEEE/or IEEE/ordin dinate ateur ur person personnel nel... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...... ...
— — — — — — — — — — — — — — —
8 8 8 10 14 14 15 15 16 16 16 16 17 17 17
4.
—
18
.............. .......... .......... .......... .......... .......... .......... ......... ......... .......... .......... .......... .......... .......... .......... ......... ......... .......... ..... Conclusion .........
........................................................... ....................................... ................................ ............. Pour en savoir plus .......................................
Doc. R 530
ans une usine de production, l’échange de données entre plusieurs sys- tèmes mis en jeu pour contrôler le bon fonctionnement de l’ensemble est devenu une nécessité. Les communications entre les systèmes informatiques (ordinateurs, micro- processeurs, etc.) et le milieu technique à surveiller peuvent présenter une multi- tude de configurations dépendant de nombreux paramètres : — nature nature du signal à transmettre transmettre ; — destination du signal (stockage, (stockage, traitement ou commande) commande) ; — distance, fréquence fréquence de transmission, etc.
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
R 530 − 1
INTERFACES DE COMMUNICATION COMMUNICATION ________________________________________________________________________________________________________
Parmi ces liaisons, les plus utilisées font l’objet d’une normalisation définissant définissant un protocole précis concernant les communications entre ces systèmes. L’objet de cet article est l’étude de ces liaisons : liaison série et liaison parallèle. La liaison série permet, permet, comme son nom l’indique, le transfert de données en série, véhiculées sur une ligne reliant deux appareils. appareils. En instrumentation, c’est la norme RS 232C qui qui est la plus utilisée ; elle occupera une place importante dans la suite de cet article. La liaison parallèle est est destinée à des vitesses de transfert élevées à courte distance entre plus de deux appareils. L’automatisation L’automatisation des chaînes de mesures a conduit à la création de nombreuses normes dont la plus importante est le EEE-488 , analysé dans la seconde partie de cet article. bus I EEE-488 Chaque type de liaison est réalisé à l’aide d’une carte d’interface ; on comprend plus aisément la correspondance des interfaces série et parallèle avec les liaisons.
1. Liai Liaiso son n sér série ie ou liaison parallèle 1.1 Liaiso Liaison n série série La liaison série réunit fondamentalement deux appareils et pas davantage. Elle pourra être utilisée entre un capteur numérique et un ordinateur, ou entre un ordinateur et une imprimante, par exemple. Si la distance est faible (< 100 m), les deux appareils sont réunis directement (par un câble à 10 fils). Si la distance dépasse 300 m, il est nécessaire d’utiliser des modems (modulateurs-démodulateurs). Dans l’exemple de la figure 1, on suppose que la transmission s’effectue par une paire téléphonique à une distance comprise entre 300 et 1 000 m. Les caractères des données sont envoyés bit par bit, sur 2 fils ; tous les autres fils servent à la gestion de la liaison. À la transmission, les données parallèles sont converties par le modem en une suite de bits série ; ces informations sont reconverties en mots parallèles par l’autre modem, à la réception. Sur la figure 1, la configuration comprend un émetteur (ordinateur) et un récepteur (imprimante). Le transfert est ici unidirectionnel, il s’agit du mode SIMPLEX. Si les deux appareils sont pourvus d’organes leur permettant d’être alternativement émetteur et récepteur, il s’agit alors du mode HALF-DUPLEX (HDX). La complexité augmente dans le cas ca s où l’on veut établir la communication simultanée dans les deux sens, par exemple entre deux ordinateurs : il s’agit du mode FULL-DUPLEX (FDX). On devine l’utilité d’une normalisation pour traiter la r égulation du trafic des informations échangées entre les deux appareils !
1.2 Liaison Liaison parallèle parallèle Si l’on doit faire communiquer plus de deux appareils, pas trop dispersés (< 20 m), échangeant de nombreux messages, une liaison parallèle s’impose . Tous les appareils sont alors connectés à un réseau banalisé de transport de messages , appelé bus, constitué généralement de 24 fils : 8 fils pour les bits de données, véhiculés en parallèle, et les autres fils pour la gestion de la liaison. Une application typique de la liaison parallèle est la suivante. Dans le domaine des mesures, on est appelé très fréquemment à effectuer une série de mesures très spécifiques qui se répète un grand nombre de fois ; l’automatisation du système de mesures
R 530 − 2
devient alors indispensable. Citons comme exemple les tests de composants électroniques ou le tracé automatique de la fonction de transfert d’un capteur. Ce dernier nécessite, dans le cas le plus simple (figure 2) : — un générateur de signal signal qui doit doit fournir, au fur et à mesure, mesure, un signal d’amplitude V 0 et de fréquence f 0 ; V 0 et f 0 sont variables dans une large étendue de mesures ; — le capteur à étudier, étudier, caractérisé caractérisé par sa fonction de transfert, transfert, dont la validité exige des mesures en dehors des limites de saturation ; l’amplitude V 0 du signal issu du générateur doit donc être réglée pour cette fin ; — un voltmètre qui doit relever non seulement la tension de sortie, mais aussi la tension d’entrée du capteur à chaque fréquence f 0 ; il envoie les résultats de chaque mesure à l’imprimante ; — une imprimante qui doit enregistrer d’une part le rapport des tensions de sortie et d’entrée fournies par le voltmètre, d’autre part la fréquence f 0 issue du générateur ; elle doit aussi signaler au générateur que le point de mesure est déjà pris en compte, afin que ce dernier recommence sa tâche avec une autre fréquence et ainsi de suite. Le système automatique pourrait être conçu en effectuant des liaisons entre les différents appareils dans un ordre bien déterminé, de manière que les différentes tâches puissent être exécutées sans intervention humaine. La structure du système, évidemment très spécialisée et complexe, ne se prêterait pas à des modifications, car chaque système met en jeu des interconnexions particulières, tant du point de vue mécanique (connecteurs) qu’électrique (amplitude des signaux) et fonctionnel (codage). L’électronique et l’informatique ont apporté à ce problème une solution donnant à l’utilisateur une souplesse d’emploi et un coût abordable grâce à un bus normalisé. La norme IEEE-488 impose les caractéristiques mécaniques (type de connecteur, affectation de chacun de ses contacts, etc.) et les caractéristiques électriques (relations entre les états logiques et électriques, caractéristiques des organes de commande, des récepteurs et du câble d’interconnexion, etc.) du système interface. Aussi rend-elle possible la liaison directe de divers appareils avec un seul câble normalisé dans un ensemble de mesures automatiques, sous la seule condition que ces appareils comportent un circuit d’interface conforme à la norme IEEE. La figure 3 représente la structure simplifiée d’un tel système, géré par un appareil appelé contrôleur, relié à d’autres appareils par l’intermédiaire d’un bus. On peut imaginer que : — l’appareil l’appareil 1 représente le générateur générateur de signal de l’exemple précédent ; — l’appareil l’appareil 2 représente représente le voltmètre voltmètre ; — l’appareil l’appareil 3 représente l’imprim l’imprimante ante ; — C représente représente le capteur. capteur.
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
_______________________________________________________________________________________________________ INTERFACES DE COMMUNICATION
2.1 Protocoles de communications La suite des bits qui composent chaque caractère à transmettre ainsi que le nombre de bits sont var iables d’un constructeur à l’autre. Le code ASCII à 7 bits est adopté dans la plupart des applications courantes. Le tableau 1 rappelle de code. Il est essentiel que les deux appareils reliés puissent se comprendre. On distingue alors deux protocoles de communications. Figure 1 – Liaison entre un ordinateur et un terminal
Protocole asynchrone Chaque caractère est encadré (figure 4) par : — 1 bit de départ (start bit ), qui indique au récepteur le début du caractère envoyé ; — 1 ou 2 bits d’arrêt (stop bit ) qui indiquent la fin du caractère. Pour éviter l’ambiguïté engendrée par l’altération parasite des bits du caractère tout le long de la ligne de transmission, on peut ajouter un bit de contrôle de parité entre la fin du caractère et le bit d’arrêt. Ce bit de parité dépend du type de contrôle adopté : pair ou impair. La figure 5 donne l’exemple d’un caractère de 8 bits encadré par un bit de départ, un bit de parité et un bit d’arrêt.
Protocole synchrone Ce protocole est conçu pour les communications à grande vitesse. Il est caractérisé par la présence d’une horloge de synchronisation. Les repères des caractères individuels sont supprimés. Le flot de données comporte seulement des caractères de début et de fin de transmission dont la vitesse est imposée par la synchronisation (figure 6).
Figure 2 – Système de mesure
2.2 Liaisons asynchrones La largeur temporelle d’un bit est définie par une horloge locale dans l’émetteur. Les fréquences couramment utilisées sont 300 Hz, 600 Hz, 1 200 Hz, etc., et peuvent atteindre 19,2 kHz. Les données sont transmises en commençant par le bit le moins significatif. Exemple Figure 3 – Système de mesure automatique à liaison parallèle par bus
Le caractère A du code ASCII à 8 b its s’écrit, avec le bit le moins significatif (b1) à droite : b8 b7 b6 b5 b4 b3 b2 b1 0 1 0 0 0 0 0 1 et est représenté par le format de transmission suivant :
2. Communications série Les communications série sont réglementées par les normes : — RS 232C/422/423/449 ; — CCITT V24 (Europe) ; — boucle de courant 20 mA. La boucle de courant 20 mA tend à disparaître à cause de ses limitations en vitesse (on se souvient qu’elle était utilisée pour assurer les communications avec les télétypes). Elle de meure très utile pour des liaisons à grande distance. La norme RS 422 est très proche de RS 232C ; la différence se situe au niveau des lignes de transmission : dans la RS 422 le signal est transmis de façon différentielle à l’aide de deux lignes isolées par rapport à la masse (ce n’est pas le cas de la norme RS 232C). Cette configuration a pour but d’augmenter la vitesse de transmission.
2.2.1 Interface RS 232C La figure 7 indique une implantation simple de l’interface RS 232C (RS = Recommended Standard de l’EIA Electronic Indus- (0) tries Association ). Sur cette liaison entre le terminal ou l’ordinateur d’une part, et le modem ou un dispositif de télécommunication d’autre part, on doit distinguer deux masses : la masse de signal (SIGNAL GROUND) et la masse du châssis. Les masses des châssis sont directement reliées aux écrans de protection des systèmes, elles peuvent être reliées ensemble pour des raisons de sécurité. Les masses de signal constituent la référence commune de tous les signaux, la liaison entre ces masses de signal est indispensable pour assurer le bon fonctionnement du système.
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
R 530 − 3
INTERFACES DE COMMUNICATION ________________________________________________________________________________________________________
Tableau 1 – Code ASCII à 7 bits Bit positions b7 b6b5b7b6b5b7b6b5b7 b6b5b7b6b5b7b6b5b7b6b5b7b6b5 b4 b3 b2 b1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
Figure 4 – Bits de départ et d’arrêt du protocole asynchrone
Figure 5 – Caractère de 8 bits (lettre B) avec bit de parité et 2 bits d’arrêt à zéro
Figure 6 – Signal de synchronisation en protocole synchrone
La longueur des câbles de chaque appareil ne doit pas dépasser 15 m. La norme RS 232C est définie par 21 signaux et représentée par un connecteur de 25 broches pour la communication asynchrone. Les signaux les plus utilisés sont indiqués sur la figure 7 : — TRANSMIT et RECEIVE : TRANSMIT est le signal de sortie de l’ordinateur et le signal d’entrée du modem. Le signal RECEIVE est utilisé dans le sens inverse ; — REQ TO SEND (demande d’émission) et CLR TO SEND (autorisation d’émission) : ce sont des signaux qui gèrent le fonctionnement half-duplex des lignes téléphoniques. L’ordinateur signale au modem par RTS (REQUEST TO SEND) quand il a un caractère à transmettre. La transmission est possible seulement lorsque le signal CTS (CLEAR TO SEND) est retourné à l’ordinateur. Ces signaux RTS et CTS seront maintenus à l’état haut dans le fonctionnement full-duplex ; — DATA SET READY (données prêtes) et DATA TERM READY (terminal de données prêt). Le signal DSR indique que le modem est opérationnel et DTR est le signal correspondant pour l’ordinateur et le terminal. Ces signaux sont parfois reliés à l’alimentation ; — CARRIER DETECT (détection du signal) et RING INDICATOR (indicateur de sonnerie). Lorsque la sonnerie est captée par le port d’entrée-sortie de l’ordinateur, celui-ci devrait inscrire une interruption et l’ordinateur peut alors initialiser une connexion au demandeur. La broche DCD (DATA CARRIER DETECT) indique si une demande d’émission RTS a été faite par l’autre extrémité. Avant de transmettre une demande RTS, le modem doit donc vérifier si la broche DCD est à l’état bas, ce qui indique que la ligne est libre.
R 530 − 4
0 0 0 0 NUL DLE SP 0 @ P p ‘ 0 0 0 1 SOH DC1 ! 1 A Q a q 0 0 1 0 STX DC2 " 2 B R b r 0 0 1 1 ETX DC3 # 3 C S c s 0 1 0 0 EOT DC4 $ 4 D T d t 0 1 0 1 ENQ NAK % 5 E U e u 0 1 1 0 ACK SYN & 6 F V f v 0 1 1 1 BEL ETB ' 7 G W g w 1 0 0 0 BS CAN ( 8 H X h x 1 0 0 1 HT EM ) 9 I Y i y 1 0 1 0 LF SUB * : J Z j z 1 0 1 1 VT ESC + ; K [ k { 1 1 0 0 FF FS , < L \ I | 1 1 0 1 CR GS – = M ] m } 1 1 1 0 SO RS > N ^ n ~ 1 1 1 1 SI US / ? O – o DEL La signification des symboles autres que chiffres, lettres, signes de ponctuation est donnée ci-après dans l’ordre approximatif où ils apparaissent dans le tableau : NUL Nul SOH Début d’en-tête STX Début de texte ETX Fin de texte EOT Fin de communication ENQ Demande ACK Accusé de réception BEL Sonnerie BS Retour arrière HT Tabulation horizontale LF Interligne VT Tabulation verticale FF Présentation de formule CR Retour chariot SO Hors code SI En code DLE Échappement transmission DC1 DC2 Commande d’appareil auxiliaire DC3 DC4 NAK Accusé de réception négatif SYN Synchronisation ETB Fin de bloc de transmission CAN Annulation EM Fin de support SUB Substitution ESC Échappement FS Séparateur de fichier GS Séparateur de groupe RS Séparateur d’article US Séparateur de sous-article SP Espace $ Héxadécimal % Binaire DEL Oblitération 100 0111 codée Exemples : la lettre G est 7 4 110 0111 la lettre g est codée 6 7
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
_______________________________________________________________________________________________________ INTERFACES DE COMMUNICATION
Figure 8 – Liaison directe entre deux appareils A et B Figure 7 – Interface RS 232C entre le terminal (ou l’ordinateur) et le modem
Remarques : les lignes secondaires sont au nombre de cinq. Elles dupliquent certaines lignes de contrôle de transfert et les lignes d’émission-réception : — ligne 14 : seconde ligne d’émission ; — ligne 16 : seconde ligne de réception ; — ligne 19 : seconde RTS (notée SRTS) ; — ligne 13 : seconde CTS (notée SCTS) ; — ligne 12 : seconde DCD (notée SDCD). Ces lignes secondaires sont peu utilisées. On peut citer un exemple d’application dans les imprimantes en mode half-duplex : en effet, en fonctionnement normal, la ligne SRTS de l’imprimante est à l’état haut, l’ordinateur continue à transmettre les données tant que sa ligne SDCD reste à l’état haut. Lorsque le papier sur l’imprimante tire à sa fin, sa ligne SRTS bascule à l’état bas, l’ordinateur est alors informé de l’arrêt. La figure 7 montre l’utilisation complète du bus RS 232 avec l’apport du modem pour transiter à travers les lignes téléphoniques. Lorsque les appareils à relier ne sont pas très éloignés l’un de l’autre, le modem n’est plus nécessaire, la liaison entre les deux appareils sera effectuée par une connexion directe. La figure 8 montre un exemple de connexion directe entre deux appareils A et B : — la ligne d’émission TRANSMITTED DATA d’un appareil est reliée à la ligne de réception RECEIVED DATA de l’autre appareil ; — la liaison étant permanente, la ligne DSR d’un appareil doit être reliée à la ligne DTR de l’autre (on rappelle que la ligne DSR de l’appareil A est à l’état haut si B est prêt, c’est-à-dire si sa ligne DTR est aussi à l’état haut) ; — la ligne CTS de chaque appareil est alimentée par sa propre ligne RTS (on rappelle que le signal CTS permet au modem d’autoriser son appareil à émettre lorsque la ligne est établie) ; — la ligne RTS d’un appareil est reliée à la ligne DCD de l’autre (on rappelle que le signal DCD permet au modem d’informer son appareil de la demande de transmission de l’autre appareil lorsque la ligne RTS de ce dernier est à l’état haut). Le tableau 2 donne les caractéristiques électriques des normes RS 232C, RS 423 et RS 422. On doit remarquer que les niveaux des tensions sont différents des niveaux couramment utilisés en logique. (0) Pour la norme RS 232C, ces niveaux sont symétriques par rapport à la masse (0 volt). Les niveaux logiques sont, ici, définis de la manière suivante : — de – 3 V à – 25 V pour la logique 1 (haut), on la note par Mark ; — de + 3 V à + 25 V pour la logique 0 (bas), on la note par Space . C’est la logique négative.
Tableau 2 – Caractéristiques électriques des normes RS 232C, RS 422, RS 423 Configuration
RS 232C RS 423 RS 422 Entrée et sortie Entrée et sortie Structure référencées par référencées par rapport à la masse rapport à la masse différentielle
Longueur max du câble Vitesse max de transfert de données Tension de sortie (sortie ouverte)
± 3 V à ± 25 V
Tension de sortie en charge (V t )
± 5 V à ± 15 V charge de 3 à 7 kΩ
Courant de sortie en court-circuit (Is ) Vitesse de balayage (dV /d t ) Mark (off = 1) du récepteur Space (on = 0) du récepteur Seuil de tension d’entrée du récepteur
50 fe et (15,2 m)
4 000 fe et (1 200 m)
4 000 fe et (1 200 m)
20 kbit/s
100 kbit/s à 40 feet
10 Mbit /s à 40 feet
| Is| ± 500 mA
6 V entre les bornes A et B 2 V entre A et B |V t| 9 |V 0| en charge charge de 450 Ω équilibrée de 100 Ω
±4Và±6V
|Is| ± 150 mA
|Is| ± 150 A Contrôle non nécessaire
30 V/µs max
A
+ 3 V
A négatif par rapport à B’ A positif par rapport à B’
±3V
200 mV mode différentiel
200 mV mode différentiel
– 3 V
Impédance d’entrée 3 à 7 kΩ, 2 500 pF du récepteur Dynamique de tension – 25 V à + 25 V d’entrée du récepteur
+ 4 kΩ
– 12 V à + 12 V
A>B
4 kΩ
– 12 V à + 12 V
La conséquence pratique est que l’utilisateur doit être vigilant pour effectuer une adaptation convenable des interfaces. En effet, comme les amplitudes sont imposées généralement par des tensions d’alimentation (± 12 V ou ± 15 V), la plage de tension de commutation entre les logiques 1 et 0 dépasse largement 6 V (– 3 V pour 1, + 3 V pour 0) ; il est souvent nécessaire d’effectuer un décalage de tension qui est rendu facile par l’existence des circuits intégrés décaleurs de tension ; un exemple d’adaptation est indiqué figure 9.
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
R 530 − 5
INTERFACES DE COMMUNICATION ________________________________________________________________________________________________________
Les décaleurs doivent accepter les niveaux logiques TTL (niveau 1 2 V, niveau 0 0,8 V) et ils les convertissent en niveaux logiques de la norme RS 232C. Ces décaleurs sont placés à la sortie de l’émetteur (TRANSMIT) ; ils peuvent être, par exemple, des circuits MC1488. Par contre, à l’entrée du récepteur, il est possible d’utiliser les circuits du type MC1489 qui transforment les niveaux logiques de la norme RS 232C en niveaux logiques TTL. On a intérêt à travailler dans une plage de tension suffisamment large pour minimiser le bruit de mode commun, sachant que, dans la norme RS 232C (et RS 423), la référence du signal est commune entre l’émetteur et le récepteur. Les niveaux TTL (dont la plage est de l’ordre de 1,2 V) sont facilement perturbés par les bruits de mode commun, surtout lorsqu’il s’agit d’une transmission à longue distance ; l’expérience montre que les tensions de bruits peuvent atteindre quelques volts lorsque l’on est en présence de moteurs électriques, de machines à écrire, de photocopieurs, etc. Même avec des niveaux élevés, la fréquence est aussi limitée à 20 kHz pour une distance de l’ordre de 30 m dans la norme RS 232C.
Figure 9 – Interface d’adaptation de niveaux logiques
2.2.2 Interfaces RS 422/RS 423 Le tableau 2 indique la vitesse maximale (100 kbit/s pour la RS 423 et 10 Mbit/s pour la RS 422) et la longueur maximale des câbles de liaison (1 200 m) de ces normes. La norme RS 423 utilise, comme la RS 232C, une interface ayant une entrée (ou une sortie) simple isolée par rapport à la masse. Ses niveaux logiques sont définis par : — de – 0,2 V à – 6 V pour « 1 » ( Mark ) ; — de + 0,2 V à + 6 V pour « 0 » ( Space ). La compatibilité entre les diverses normes est un problème important, car elle doit permettre, en particulier, une transition entre l’ancienne technologie et la nouvelle. Supposons, par exemple, que l’on veuille connecter les deux liaisons RS 232 C (ancienne technologie) et RS 422 (nouvelle technologie), sachant que la norme RS 422 utilise une interface ayant une structure différentielle à deux bornes A et B, lorsque : — potentiel en A < potentiel en B, on a : « 1 » ( Mark ) ; — potentiel en A > potentiel en B, on a : « 0 » ( Space ). C’est la liaison RS 423 qui permet alors cette connexion. Le récepteur à entrée différentielle peut recevoir un signal asymétrique référencé par rapport à la masse. C’est le cas de la figure 10. Le signal d’entrée du récepteur est fourni d’une part par la sortie de l’émetteur, d’autre part la ligne SEND COMMON qui est isolée de la masse du récepteur. Dans le cas d’une liaison entre un appareil de norme RS 423 et un autre de norme RS 232C, il est évident que la ligne SEND COMMON de la RS 423 doit être reliée à la masse de signal de la RS 232C. La vitesse de transmission est limitée ici à 20 000 bit/s. Pour dépasser cette vitesse, il faut donc utiliser la structure différentielle de la norme RS 422 : le signal de sortie de l’émetteur ainsi que le signal d’entrée du récepteur sont tous les deux différentiels comme l’indique la figure 11.
2.2.3 Boucle de courant 20 mA La boucle de courant a été utilisée initialement dans les liaisons avec les télétypes mécaniques, dans lesquels les détecteurs de courant sont constitués de bobines d’inductance. Les caractères sont codés suivant la norme RS 232C (avec un bit de départ, 8 bits de données, 2 bits d’arrêt) : — la logique 1 est représentée par le passage d’un courant de 20 mA dans le détecteur ; — la logique 0 est représentée par l’absence de courant dans le détecteur.
R 530 − 6
Figure 10 – Caractéristiques électriques de la norme RS 423
Figure 11 – Structure différentielle de la liaison RS 422
Il est donc facile d’imaginer le schéma simplifié d’un système émetteur et récepteur constitué d’une source de courant constant égal à 20 mA, d’un détecteur et d’un commutateur analogique (figure 12). La supériorité de la boucle de courant par rapport à la liaison RS 232C est justifiée essentiellement par sa réjection de bruit de mode commun et sa longue distance, qui peut atteindre quelques kilomètres. En effet, une limitation importante de cette distance est due au courant parasite de masse. Or ce problème est facilement éliminé à l’aide d’un couplage optique qui comporte : — dans l’émetteur, une diode électroluminescente alimentée par le courant 20 mA lorsque le commutateur S est fermé ; — dans le récepteur, un phototransistor ; — entre les deux, la transmission s’effectue par une fibre optique.
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
_______________________________________________________________________________________________________ INTERFACES DE COMMUNICATION
Figure 12 – Boucle de courant 20 mA
2.2.4 Cartes de communication asynchrone Le protocole RS 232C (§ 2.2.1) peut être implanté facilement à l’aide des cartes de communication. Ces der nières sont bâties autour des contrôleurs de communication ; d’une manière générale, elles permettent les fonctions suivantes : — programmation de la vitesse de transmission-réception ; — définition à partir d’un programme : • du nombre de bits du caractère, • du nombre de bits d’arrêt, • du type de contrôle de parité (paire ou impaire) ; — définition des lignes nécessaires au contrôle d’un modem (CTS, RTS, DSR, DTR, RI, DCD). Une opération d’émission passe par la lecture du registre d’état : un caractère sera alors écrit dans le registre de transmission de données si ce dernier est vide. Ce caractère est ensuite déplacé vers le registre de décalage de transmission où il est sérialisé et émis avec un bit de départ et un ou deux bits d’arrêt. À la réception, la parité du caractère reçu est vérifiée. Le registre d’état fournit toutes les informations concernant la validité du caractère reçu ; on distingue trois types d’erreur : — l’erreur d’encadrement (framing error ) indique que le caractère est mal encadré par le bit de départ et le bit d’arrêt ; cette erreur est due à une mauvaise synchronisation ; — l’erreur de débordement (overrun error ) indique que le caractère n’est pas complètement récupéré ; — l’erreur de parité indique que le nombre de « 1 » dans le caractère ne correspond pas avec la pa rité paire ou impaire prédéterminée (la parité est dite paire lorsque le nombre total de « 1 » dans le caractère est pair).
inductif). Pour mieux comprendre le fonctionnement des liaisons synchrones, on note les principaux éléments du système synchrone de la figure 13 : — l’horloge du récepteur est verrouillée sur la fréquence des données d’entrée ; — les registres de décalage assurent la conversion des données parallèles en données série ; — les registres FIFO, qui n’existent pas dans la structure asynchrone, constituent une mémoire-tampon pour les données entrantes et sortantes ; l’arrangement FIFO (first in : premier entrant, first out : premier sortant) facilite ainsi l’interfaçage avec le microprocesseur associé au système. Comme les caractères ne sont pas encadrés par des bits de départ et d’arrêt, certaines fonctions logiques sont mises en place pour synchroniser le récepteur au début de chaque caractère. Les techniques de synchronisation diffèrent d’un protocole à un autre, cependant le principe de base reste le même : le début d’un caractère est repéré par des séquences spéciales dans le flot de données. Ces séquences sont insérées par l’émetteur et détectées par le récepteur qui, à son tour, répartit la succession des bits de données en caractères de 8 bits. Des séquences de synchronisation ont lieu au début d’un flot de données (pour certains protocoles, elles se produisent même à l’intérieur d’une suite de caractères) pour permettre d’établir finalement une synchronisation des caractères à l’intérieur même d’une synchronisation des blocs de caractères. Les deux protocoles les plus utilisés sont : — le protocole BSC (Binary Synchronous Communications ) apparu à la fin des années 60 à l’initiative d’IBM ; — le protocole HDLC (High level Data Link Control ) bien connu des milieux industriels. Ces deux protocoles ont été rendus populaires grâce à l’existence d’interfaces facilement réalisables à l’aide de circuits intégrés. Les lecteurs peuvent rencontrer d’autres protocoles, en particulier le SDLC (Synchronous Data Link Control ) et le ADCCP (Advanced Data Communications Control Procedure ) qui ne sont pas traités ici parce que ces deux derniers protocoles sont similaires au HDLC.
2.3.1 Protocole BSC La première caractéristique de ce protocole est qu’il fonctionne en mode half-duplex. La structure d’un message BSC peut être r eprésentée par la figure 14. La suite des caractères de données est précédée d’un caractère de synchronisation (SYNC) suivi d’un caractère pour en repérer le début ( Header ) lié à SOH (Start of Header : départ de début). Le flot de données se termine par un caractère de fin de texte (ETX : End of Text ) et par un caractère permettant de contrôler la validité des données ( Check bits ). Cette vérification est effectuée par le calcul d’un caractère de 8 ou 16 bits selon la composition des données. Le nombre de bits formant les données doit être un multiple du nombre de bits définissant un caractère (6,7 ou 8 en ASCII).
2.3 Liaisons synchrones 2.3.2 Protocole HDLC La supériorité des liaisons synchrones sur les asynchrones est sans aucun doute leur vitesse de communication ; en effet, elles permettent de fonctionner aisément jusqu’à 500 kHz, tandis que les liaisons asynchrones, bien que leur fréquence maximale soit fixée à 19,2 kHz, ne fonctionnent que rarement au-dessus de 9,6 kHz. Cependant, aux fréquences élevées, pour éviter des perturbations dues principalement aux bruits de mode commun, l’utilisateur a intérêt à soigner les connexions électriques : on doit utiliser, par exemple, des structures différentielles (comme la liaison RS 422) avec des câbles coaxiaux (pour minimiser les couplages capacitif et
La première caractéristique de ce protocole est qu’il fonctionne en mode full-duplex. Le début et la fin d’une transmission sont repérés par une séquence de bits 01111110 (soit en hexadécimal : 7E), appelée indicateur (flag ). La séquence indicateur contient une suite de six 1 ; il est donc nécessaire d’éviter la confusion avec une séquence de données contenant une suite de 1. Pour cela, chaque fois que l’émetteur envoie cinq 1 successifs, il doit insére r automatiquement un faux 0, puis il continue à émettre les bits de données suivants. C’est le récepteur qui, à son tour, doit enlever ce faux 0.
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
R 530 − 7
INTERFACES DE COMMUNICATION ________________________________________________________________________________________________________
Figure 13 – Système de communication synchrone
3. Communications parallèles
Figure 14 – Structure d’un message BSC
En 1972, l’IEC ( International Electrotechnical Commitee ) publie une norme établissant un principe d’interfaçage par bus entre appareils de mesure. En 1975, l’IEEE ( Institute of Electrical and Electronics Engineers ) publie la norme IEEE-488-75 définissant une interface pour les instruments programmables. Cette norme est adoptée depuis 1978 par l’IEC (norme IEC 625-1) et par l’ANSI (American National Standards Institute ). Elle fait alors l’objet d’une interface appelée bus IEEE-488 ou encore GPIB (General Purpose Interface Bus ). Elle a été, en fait, élaborée à partir des propositions de la société Hewlett-Packard, c’est la raison pour laquelle on l’appelle aussi HPIB ( Hewlett Packard Interface Bus ).
3.1 Système de mesures utilisant le bus GPIB 3.1.1 Structure du bus GPIB Figure 15 – Structure d’un message HDLC
D’autres suites particulières permettent à l’émetteur de reconnaître que la transmission est annulée (8 bits 1 consécutifs) ou que la transmission prend fin (15 bits 1 consécutifs). La structure typique d’un message HDLC est représentée sur la figure 15. Le caractère de délimitation (indicateur) est suivi par un bloc d’adresse de 8 ou 16 bits, servant à identifier le récepteur. Ce bloc d’adresse est accompagné d’un bloc de commande (8 ou 16 bits) servant à passer des échanges de contrôle entre le récepteur et l’émetteur. La vérification de la validité de la transmission s’effectue, comme en BSC, par caractère de 8 ou 16 bits selon la composition des données. Le bloc suivant peut utiliser l’indicateur final du bloc précédent comme indicateur initial.
R 530 − 8
Les appareils compatibles avec le bus GPIB sont munis d’une interface constituée de circuits actifs qui dépendent du rôle de l’appareil au sein du système. Dans le système de mesure, on distingue : — les écouteurs ( listeners ), qui reçoivent des données lorsqu’ils sont adressés ; plusieurs écouteurs peuvent être actifs simultanément ; — les parleurs (talkers ), qui émettent des données lorsqu’ils sont adressés ; un seul parleur est actif à la fois sur le bus ; — les contrôleurs, qui sont chargés de la gestion de tous les transferts de données. Le contrôleur doit définir quels appareils doivent participer au transfert de données et quelle fonction chacun de ces appareils doit accomplir dans les échanges de données : émetteur ou récepteur. Chaque appareil doit donc posséder une adresse qui lui est propre. Le contrôleur est également employé pour transmettre des instructions et des messages et peut recevoir des messages provenant des appareils réclamant des services. Un système donné peut comprendre plusieurs contrôleurs, mais l’un
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
_______________________________________________________________________________________________________ INTERFACES DE COMMUNICATION
d’entre eux est nécessairement le contrôleur central. Seul le contrôleur central peut activer des circuits de validation et d’invalidation de l’interface. On peut distinguer dans un système de me sure automatique trois types de tâches : sélection d’un appareil, transfert des informations et gestion du transfert de l’information. La notion de gestion du transfert est ici très importante, car un appareil parleur (qui peut être le contrôleur quand il émet des adresses, ou un appareil sélectionné quand il envoie des données) ne peut effectuer un nouveau transfert que quand il est sûr que les appareils concernés ont bien re çu l’information précédente. Le système GPIB est constitué de l’ensemble des éléments fonctionnels électriques et mécaniques d’une interface conforme à la norme IEEE-488. C’est avant tout un câble de liaison comprenant 24 fils (tableau 3) dont 16 sont répartis en trois groupes : — transfert de l’information (8 lignes) ; — gestion de transfert des informations (3 lignes) ; — gestion générale (5 lignes). La structure du bus GPIB est représentée par la figure 16, et la structure fonctionnelle d’un instrument compatible avec le bus GPIB est illustrée à la figure 17. Lignes de transfert de données Ces 8 lignes sont réservées aux entrées-sorties (notées de DIO-1 à DIO-8). Elles sont utilisées pour les mesures, les instructions de programmation, les mots d’état, les adresses, les instructions d’interfaçage. Un octet de données est formé de 8 bits transmis en parallèle. Un message peut comprendre plusieurs octets ; ces octets sont transmis alors en série. La vitesse de transfert peut atteindre 1 Mo/s pour une communication bidirectionnelle asynchrone.
(0)
Figure 16 – Structure du bus GPIB (IEEE-488)
Tableau 3 – Affectation des broches dans le cas des normes IEEE-488 et IEC-625 IEEE Standard
Broche 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
Désignation
Broche DIO-1 1 DIO-2 2 DIO-3 3 DIO-4 4 EOI 5 DAV 6 NRFD 7 NDAC 8 IFC 9 SRQ 10 ATN 11 SHIELD 12 DIO-5 13 DIO-6 14 DIO-7 15 DIO-8 16 REN 17 GND 6 18 GND 7 Broches de 19 GND 8 terre pour 20 GND 9 les lignes 6 21 GND 10 à 11 incluse 22 GND 11 23 LOGIC GND 24
IEC Standard
Désignation DIO-1 DIO-2 DIO-3 DIO-4 REN EOI DAV NRFD NDAC IFC SRQ ATN SHIELD DIO-5 DIO-6 DIO-7 DIO-8 GND 5 Broches GND 6 de terre GND 7 pour les GND 8 GND 9 lignes GND 10 5 à 12 GND 12 incluse
Figure 17 – Structure fonctionnelle d’un instrument compatible avec le bus GPIB
Lignes de gestion de transfert Trois lignes DAV, NRFD et NDAC sont destinées à gérer le transfert de chaque octet d’un appareil émetteur vers un ou plusieurs appareils récepteurs. Le transfert est effectué en mode asynchrone.
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
R 530 − 9
INTERFACES DE COMMUNICATION ________________________________________________________________________________________________________
Les sigles mnémoniques formés par les initiales de leurs codes indiquent le rôle de chaque ligne : — DAV (Data Valid : donnée validée) : cette ligne informe que les données présentées sur le bus par un émetteur sont valides, elle est commandée par l’émetteur ; — NRFD (Not Ready for Data : pas prêt pour accepter les données) : cette ligne est actionnée par le contrôleur en mode de commande (ATN = 1) et par les récepteurs en mode de données (ATN = 0) ; — NDAC (Not Data Accepted : données non acceptées) : lorsque NDAC = 1, les données ne sont pas acceptées par le récepteur ou, en mode de commande, la commande n’est pas acc eptée par l’appareil connecté au bus. Ces lignes assurent le protocole de handshake toutes les fois où des informations sont transmises sur les 8 lignes du bus de données. Protocole de handshake
Supposons que l’appareil source A doit envoyer une information à l’appareil accepteur B. — A doit attendre que B soit prêt à recevoir une donnée. Si B est disposé à recevoir, il envoie un message à A signifiant « prêt à recevoir ». — Dès qu’il envoie une donnée à B, A doit informer B que la donnée est disponible, le message de A vers B signifie alors « donnée disponible ». — Lorsque B a reçu la donnée, il le signale à A. le message de B vers A signifie alors « donnée acceptée ». Au cours de ces transferts, l’émetteur adapte sa propre vitesse sur celle du récepteur le plus lent. Lignes de gestion générale Chacune des cinq lignes de ce groupe a une fonction de commande spécifique entre le contrôleur et les autres appareils du système. ATN (Attention ) permet au contrôleur d’indiquer aux instruments que des instructions et adre sses (ATN à 1) ou des données (ATN à 0) sont sur le bus. Lorsque ATN est à 1, seuls l’émetteur et les récepteurs adressés sont concernés.
Exemple ATN 1 (ou vrai) Bus de données DIO-1 1 DIO-2 0 DIO-3 1 DIO-4 0 DIO-5 0 DIO-6 0 DIO-7 1 DIO-8 0 Message Commande : adresse parleur 5
0 (ou faux) 1 0 1 0 0 0 1 0 Donnée : caractère E (ASCII)
Tous les appareils doivent regarder à tout moment cette ligne ATN et, dès qu’il y a un changement sur cette ligne, ils doivent répondre dans un délai de 200 ns. IFC (Interface Clear ). Cette ligne peut être ramenée à 1 (ou vrai) uniquement par le contrôleur afin de mettre les interfaces connectées au bus dans un état inactif ; toutes les opérations en cours sont alors arrêtées pour permettre de repartir d’une situation neutre et uniforme avant toute opération.
R 530 − 10
SRQ ( Service Request ). Cette ligne est activée par tout appareil ayant un service à demander au contrôleur. Cette demande peut interrompre une opération en cours. Lorsque SRQ est demandé par plusieurs appareils au même moment, le contrôleur doit effectuer une recherche pour déterminer les appareils en question et la nature du service demandé. Cette recherche peut s’effectuer soit en série, soit en parallèle (§ 3.2.3 et 3.2.4). EOI ( End or Identify ). Si ATN = 0 (les lignes DIO sont en mode de données), cette ligne activée (c’est-à-dire EOI = 1 ou vrai) par un émetteur signifie que l’octet en cours est le dernier transmis pour l’opération.
Exemple Un voltmètre envoie à l’imprimante, sur le bus de données, une valeur : 15,572 V ; la ligne EOI sera activée par le voltmètre sur l’apparition de la lettre V pour indiquer la fin de l’opération ATN 0 0 0 0 0 0 0 Bus de données DIO-1 : 1 5 , 5 7 2 V DIO-8 EIO 0 0 0 0 0 0 1 fin de l’opération ↑
SI ATN = 1 (les lignes DIO sont en mode de commande d’interface), c’est le contrôleur qui active la ligne EOI dans une recherche parallèle. REN (Remote Enable ). Cette ligne est activée uniquement par le contrôleur pour commuter un appareil de la position « commande par le panneau frontal » (ou commande locale) à la position « commande à distance ». Lorsque REN = 0, l’appareil retourne en mode de commande locale.
3.1.2 Aspects opérationnels du bus GPIB On doit distinguer deux types de messages : — les commandes issues du contrôleur et destinées à l’interface incorporée aux appareils, ce sont des messages interfaces ; — les données destinées aux appareils de mesure afin de les placer dans un état particulier ou de recevoir le résultat découlant d’une action de mesure. Les données sont émises par un émetteur qui peut être le contrôleur : ce sont des messages appareils . Le schéma (figure 18) représente ces deux types de message et délimite ainsi la zone d’intervention de la norme IEEE-488. 3.1.2.1 Messages appareils Un message sur les huit lignes DIO est un message appareil (ou données) si la ligne ATN est simultanément à l’état faux (ATN = 0). Ces données sont émises par l’appareil adressé comme parleur et reçues par les appareils comme écouteurs sous le contrôle du handshake . Elles peuvent être : — des données d’entrée : • données de commande, par exemple instructions du programme pour un appareil particulier, • données pour l’affichage ou le stockage ; — ou des données de sortie : • données d’un résultat de mesure, • informations d’état de l’appareil. Il doit exister entre les appareils en communication des conventions sur le codage des données. Il faut bien remarquer ici que la norme définit seulement le mode de transfert des données, mais non leur contenu ; ce dernier dépend de l’appareil utilisé ; il semble ainsi
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
_______________________________________________________________________________________________________ INTERFACES DE COMMUNICATION
que, dans ce domaine, il peut y avoir des évolutions de normalisation dans l’avenir. À l’heure actuelle, la convention la plus répandue est le code ASCII. Exemple Le code et le format des données émises par le multimètre numérique HP 3438A compatible GPIB sont indiqués par le constructeur de la manière suivante : Format des données sortie : ± D.DDD E ± D, F CR LF en ASCII F indique la fonction réalisée : F = 1 tension continue en V F = 2 tension alternative en V F = 3 courant continu en mA F = 4 courant alternatif en mA F = 5 résistance en kΩ Indication de surcharge : ± 1.DDD E + 9, F CR LF
En plus des messages appareils multifilaires que nous venons de définir, il faut ajouter deux autres messages appareils unifilaires : SRQ et EOI (déjà définis dans le paragraphe précédent). Le transfert d’un octet de données sur le bus DIO est assuré par le protocole de handshake , qui est explicité par le diagramme temporel de la figure 19 dans lequel on suppose un transfert de données issues d’un parleur vers plusieurs écouteurs.
Figure 18 – Messages interfaces et messages appareils
Les états successifs des lignes DAV, NRFD et NDAC au cours du transfert à l’intérieur de l’appareil parleur et des appareils écouteurs sont représentés par l’organigramme de la figure 20. La séquence de transfert d’un octet de données est résumée par le diagramme de la figure 21 dans lequel on observe les instants suivants : — à t 0 : la ligne DAV est mise à l’état haut par le parleur (cela signifie que les données ne sont pas validées), il ne faut pas oublier que l’on est en logique négative DAV (haut ≡ faux ≡ 0). Les lignes NRFD et NDAC sont à l’état bas (vrai ≡ 1), les écouteurs ne sont pas prêts à recevoir un nouveau mot de données (NRFD = 1) et les données ne sont pas acceptées (NDAC = 1) ; — à t 1 : le parleur présente les premières données sur le bus DIO ; — à t 2 : les écouteurs adressés signalent qu’ils sont prêts à recevoir les données ; à t 2 l’appareil le plus lent est enfin prêt et NRFD devient alors faux (NRFD = 0) ; — à t 3 : le parleur peut alors déclarer valides les données qu’il présente sur le bus (DAV = 1) ; — à t 4 : l’écouteur le plus rapide ramène la ligne NRFD à l’état vrai (NRFD = 1) pour signaler au parleur qu’il y a au moins un des écouteurs qui n’est pas prêt à recevoir de nouvelles données ; — à t 5 : les écouteurs mettent leur sortie NDAC à l’état haut (NDAC = 0), le plus lent des écouteurs a enfin accepté les données ; — à t 6 : le parleur remet DAV à l’état faux (DAV = 0) afin de changer l’octet qu’il présente sur le bus ; — à t 7 : les écouteurs remettent NDAC à l’état vrai (NDAC = 1) pour recommencer un nouveau cycle ; — à t 8 : les écouteurs sont de nouveau prêts à recevoir l’octet suivant et ainsi de suite... Le lecteur peut se demander pourquoi la norme IEEE-488 utilise en même temps les deux lignes NRFD et NDAC ? Il faut remarquer que, ici, la synchronisation est bien judicieuse : en effet, la ligne NRFD indique que l’on n’est pas prêt pour recevoir tant que l’écouteur le plus lent n’est pas prêt, et à l’instant t 4 elle retourne à l’état bas (vrai) dès que l’écouteur le plus rapide réagit à l’appel de DAV (intervalle entre t 3 et t 4). Si t 4 est synchronisé avec t 6 , on risque de se trouver dans une situation où DAV retournerait à l’état haut (faux) avant que l’écouteur le plus lent n’ait reçu les données sur le bus. L’intervalle de temps compris entre t 3 et t 5 permet de s’assurer, à l’aide de la ligne NDAC, que les données sur le bus ont été bien prise s par l’écouteur le plus lent. 3.1.2.2 Messages interfaces On distingue, comme dans les messages appareils, les messages interfaces multifilaires et unifilaires. Les messages unifilaires ATN, IFC et REN, qui ordonnent certaines fonctions aux appareils connectés sur le bus GPIB, ont été déjà définis dans le paragraphe 3.1.1. On a bien souligné qu’il s’agit de commandes émises par le contrôleur aux interfaces des appareils. Un message multifilaire sur les lignes DIO est considéré comme une commande si la ligne ATN est simultanément à l’état vrai (ATN = 1). Il est codé par 7 bits sur 7 lignes DIO-1 à DIO-7. Adressage des appareils Chaque appareil est identifié par une ou plusieurs adresses. C’est le contrôleur qui désigne l’appareil en lui envoyant une notification spéciale au moyen des deux bits portés par les lignes DIO-6 et DIO-7 (0): Le récepteur est noté MLA (My Listen Address ), il correspond à une valeur binaire adresse + 32. L’émetteur est noté MTA (My Talk Address ), il correspond à une valeur binaire adresse + 64. L’adresse proprement dite de l’appareil est codée sur 5 bits portés par les lignes DIO-1... DIO-5. Elle est déterminée par 5 commutateurs (figure 22) positionnés par l’utilisateur : A 1 , A 2 , A 3 , A 4 et A5 . Par conséquent l’adresse d’un appareil s’écrit alors :
Figure 19 – Protocole de handshake entre un appareil parleur et des appareils écouteurs
A5 A4 A3 A2 A1
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
R 530 − 11
INTERFACES DE COMMUNICATION ________________________________________________________________________________________________________
Figure 20 – Organigramme des états successifs de lignes DAV, NRFD et NDAC dans le parleur et les écouteurs
Figure 22 – Commutateurs internes définissant l’adresse d’un appareil
Figure 21 – Diagramme temporel du transfert d’un octet de données
ATN 1 1
DIO-7 0 1
R 530 − 12
DIO-6 1 0
L’appareil sélectionné doit : recevoir des données (MLA) émettre des données (MTA)
Cependant la valeur A5 A4 A3 A2 A1 = 1 1 1 1 1 n’est pas utilisable pour adresser un appareil, cette valeur particulière est réservée pour ramener les appareils à l’état passif. Avec 5 bits, théoriquement on peut définir 32 adresses (0 à 31) ; cependant comme nous venons de réserver l’adresse 31 au message de désadressage et que l’adresse 0 n’est pas autorisée, il reste donc 30 adresses possibles. Ce nombre d’adresses est dans la pratique très largement supérieur au nombre d’appareils réellement connectés sur le bus, car la vitesse de transfert max imale est garantie seulement pour un nombre d’appareils inférieur à 15.
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
_______________________________________________________________________________________________________ INTERFACES DE COMMUNICATION
Figure 23 – Diagramme temporel du transfert d’un octet d’adresse
Le tableau 4 résume les modes d’adressage des appareils.
(0)
Tableau 4 – Adressage des appareils Ligne DIO
ATN 8
1 1 1 1
7
6
5
4
3
2
1
× 0 1 A5 A4 A3 A2 A1 1 0 A5 A4 A3 A2 A1 × × 0 1 1 1 1 1 1 1 0 1 1 1 1 1 × Non Mode de uti- fonctionneAdresse lisé ment
MLA (écouteur) MTA (parleur) UNL UNT
Les appareils rendus passifs sont notés :
— UNL (unlisten ) pour les écouteurs (écouteurs sourds) ; — UNT (untalk ) pour les parleurs (parleurs muets). Exemple L’adressage de l’appareil défini par les 5 commutateurs de la figure 22 est : A5 A4 A3 A2 A1
→
0 1 1 0 0
12
L’appareil est récepteur s’il est adressé par : fonction 0 1
adresse 0 1 1 0 0
→
32 + 12 = 44
Adresse secondaire
Soit, en ASCII, le caractère « , ». L’appareil est émetteur s’il est adressé par : fonction 1 0
— à t 4 : NRFD se place alors à l’état vrai (NRFD = 1) ; cela signifie que les appareils ne sont pas disposés à recevoir de nouvelles données ; — à t 5 : lorsque l’adresse est acceptée par un appareil, NDAC retourne à l’état faux (NDAC = 0) ; — à t 6 : l’octet d’adresse sur les lignes DIO cesse d’être validé ; DAV est remis à l’état faux (DAV = 0) par le contrôleur ; — à t 7 : les appareils placent NDAC à l’état vrai (NDAC = 1) ; — à t 8 : NRFD revient à son état initial (NRFD = 0) pour annoncer qu’il est prêt à recommencer ; — à t 9 : ATN repasse à l’état faux (ATN = 0) pour arrêter le mode de commande ; — à t 10 : NDAC bascule à l’état faux (NDAC = 0) pour attendre le début de la séquence suivante. D’autres messages interfaces permettent de faire exécuter une tâche particulière aux instruments ; ce sont : — les commandes universelles qui concernent toutes les interfaces présentes sur le bus. Elles sont groupées dans le tableau 5 : • PPU permet d’inhiber la recherche parallèle, • SPE établit l’état de recherche série. Les appareils émetteurs adressés doivent répondre en plaçant un mot d’état sur le bus. La ligne DIO-7 permet de reconnaître si l’appareil a agi sur la ligne SRQ du bus, • SPD permet de terminer l’état de recherche série, • DCL met les appareils dans l’état initial particulier propre à chacun, • LLO permet d’inhiber la possibilité de retour en mode commande locale de façon manuelle ; — les commandes adressées qui ne concernent que les appareils adressés par cette action. Elles sont groupées dans le tableau 6. Elles sont toutes multifilaires : • GET sert de synchronisation aux appareils adressés écouteurs pour permettre d’exécuter ensemble une tâche programmée, • PPC permet de configurer les récepteurs pour que ceux-ci prennent en compte la recherche parallèle PPE ( Parallel Pool Enable ), • SDC est la commande DCL destinée uniquement aux appareils sélectionnés écouteurs, • GTL ramène les appareils sélectionnés écouteurs à l’état de commande locale, • TCT confie le contrôle à un autre contrôleur préalablement adressé écouteur ; — les commandes secondaires . Elles sont émises à la suite d’une adresse (MLA ou MTA), d’une commande universelle ou d’une commande adressée ; elles permettent d’étendre ces commandes. Par exemple, l’adresse primaire est utilisée pour sélectionner un appareil (exemple : un multimètre) ; l’adresse secondaire est destinée à choisir la fonction (voltmètre, ampèremètre, ohmmètre, etc.) ou une gamme de mesure (volt, millivolt, etc.). Sur le bus DIO, l’adresse secondaire est précédée de DIO-6 = 1 et DIO-7 = 1 :
ATN
adresse 0 1 1 0 0
→
64 + 12 = 76
1
8 ×
7 1
6 1
Ligne DIO 5 4 A5 A4
3 A3
2 A2
1 A1
Soit, en ASCII, le caractère « L ».
Comment le transfert d’un octet d’adresse s’effectue-t-il ? Le diagramme temporel de la figure 23 représente une séquence de transfert d’un message : — à t 1 : ATN passe en mode commande ATN = 1 ; — à t 2 : NDAC se place à l’état vrai (NDAC = 1) ; — à t 3 : l’adresse est placée sur les lignes DIO par le contrôleur, DAV passe à l’état vrai (DAV = 1) ;
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
R 530 − 13
INTERFACES DE COMMUNICATION ________________________________________________________________________________________________________
3.2.1 Adressage
Exemple Lorsque le contrôleur veut commander l’appareil numéro 5 connecté sur le bus, si l’adresse primaire de l’appareil est :
Une séquence d’adressage est effectuée à l’aide des commandes suivantes : — ATN : vrai ; — UNL : désadressage de tous les récepteurs ; — TA : adressage d’un émetteur (l’émetteur précédent est alors désadressé) ; — LAG : adressage d’un ou plusieurs récepteurs.
× 0 1 0 0 1 0 1 soit en hexadécimal 25, l’appareil sera récepteur ; si l’adresse primaire de l’appareil est :
× 1 0 0 0 1 0 1 soit en hexadécimal 45, l’appareil sera émetteur. Pour l’adresse secondaire, si c’est le numéro 6 qui est choisi par exemple, elle sera codée : × 1 1 0 0 1 1 0
Tableau 5 – Commandes universelles multifilaires Commande
ASCII
Décimal
Octal
Hexadécimal
local lockout device clear parallel poll unconfigure serial poll enable serial poll disable unlisten untalk
DC1 DC4 NAK CAN EM 3
17 20 21 24 25 63 95
21 24 25 30 31 77 137
11 14 15 18 19 3F 5F
soit en hexadécimal 66.
LLO DCL PPU SPE SPD UNL UNT
Les différentes commandes primaires et secondaires sont résumées dans le tableau 7 avec leur code ISO ( International Organization for Standardization ). Le groupe de commandes secondaires (SCG : Secondary Command Group ) se trouve à la dernière colonne : le groupe de commandes primaires est constitué de : — commandes adressées (ACG : Addressed Command Group ) ; — commandes universelles (UCG : Universal Command Group ) ; — adresses des écouteurs (LAG : Listen Address Group ) ; — adresses des parleurs (TAG : Talk Address Group ).
˜
(0)
Tableau 6 – Commandes adressées Commande
3.2 Mise en œuvre d’un système de mesure automatique
GTL SDC PPC GET TCT
Le système est géré par le contrôleur, qui doit être capable de positionner la ligne ATN pour commander une séquence de transfert. Toute séquence comporte un certain nombre de commandes.
go to local select device clear parallel poll configure group execute trigger take control
ASCII
Décimal
Octal
Hexadécimal
SOH EOT ENQ BS HT
1 4 5 8 9
1 4 5 10 11
1 4 5 8 9 (0)
Tableau 7 – Codes des commandes et adresses des écouteurs et parleurs Colonne
0
b7 → b6 → b5 →
1
0
2
0
0
0
0
3 0
1
0
4
1
5
1 1
0
6
1
1
0 1
7
0 0
1 1
1
1 0
1
ISO Lignes b4 b3 b2 b1 ISO Déci ATN ISO Déci ATN ISO Déci ATN ISO Déci ATN ISO Déci ATN ISO Déci ATN ISO Déci ATN ISO Déci ATN ↓ ↓ ↓ ↓ ↓ 7 bits mal = 1 7 bits mal = 1 7 bits mal = 1 7 bits mal = 1 7 bits mal = 1 7 bits mal = 1 7 bits mal = 1 7 bits mal = 1
0 1 2 3 4 5 6 7 8 9 10A 11B 12C 13D 14E 15F
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
DLE GTL DC1 DC2 DC3 SDC DC4 PPC NAK SYN ETB GET CAN TCT EM SUB ESC FS GS RS US
Addressed command group
R 530 − 14
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
LLO DCL PPU SPE SPD
Universal command group
SP ! " # $ % & ' ( ) * + , — . /
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 1 2 3 4 5 6 7 8 9 : ; < = > ?
48 16 49 17 50 18 51 19 52 20 53 21 54 22 55 23 56 24 57 25 58 26 59 27 60 28 61 29 62 30 63 UNT
Listen address group
@ A B C D E F G H I J K L M N 0
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
P Q R S T U V W X Y Z [ \ ] ^ –
80 16 81 17 a 82 18 b 83 19 c 84 20 d 85 21 e 86 22 f 87 23 g 88 24 h 89 25 i 90 26 j 91 27 k 92 28 I 93 29 m 94 30 n 95 UNT 0
Talk address group
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
p q r s t u v w x y z { | } ~ DEL
112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
Secondary command group
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
_______________________________________________________________________________________________________ INTERFACES DE COMMUNICATION
3.2.2 Émission et réception de données — Lorsque l’émission doit être effectuée par le contrôleur, la séquence d’adressage du contrôleur en émetteur peut se dérouler dans l’ordre suivant : • ATN : vrai, • UNL : désadressage de tous les récepteurs, • MTA : adressage du contrôleur en émetteur, • LAG : adressage des récepteurs, • ATN : faux, le bus se place alors en mode de données ; — Lorsque la réception doit être effectuée par le contrôleur, la séquence des opérations peut être la suivante : • ATN : vrai, • UNL : désadressage de tous les récepteurs, • TAG : adressage d’un émetteur, • MLA : adressage du contrôleur en récepteur, • ATN : faux (mode de données) ; La réception s’opère jusqu’au caractère de fin de transmission qui peut être un caractère spécial, par exemple CR, ou bien la mise de EOI à l’état vrai (EOI = 1) au moment du dernier octet de la transmission. — Lorsque le transfert doit être effectué entre les appareils, le contrôleur doit ramener ATN à l’état faux, pour fonctionner en mode de données, après avoir adressé un émetteur et un ou des récepteurs. La séquence peut être alors la suivante : ATN, UNL, TA, LAG, ATN, données, CR /EOI. Exemple Soit un système de mesure simple dans lequel le contrôleur est un ordinateur personnel ; il est relié à un voltmètre numérique et à une imprimante à travers le bus GPIB. Le voltmètre est l’émetteur ayant l’adresse primaire : DIO-7 DIO-6 A5 A4 A3 A2 A1 1 0 1 0 1 1 1 Soit TAG : 23 ; l’état du bus en hexadécimal e st 57. La tension à mesure r est alternative (AC : alternative current ), l’échelle de 200 V nécessaire pour la mesure fait l’objet d’une adresse secondaire que l’on peut définir par le tableau suivant : DIO-7 DIO-6 A5 A4 A3 A2 A1 1 1 0 0 1 0 1 Soit SCG (Secondary Command Group ) : 5 ; l’état du bus en hexadécimal est 65. On doit remarquer que DIO-7 et DIO-6 sont à 1 (adresse secondaire). L’imprimante est le récepteur ayant pour adresse : DIO-7 DIO-6 A5 A4 A3 A2 A1 0 1 0 1 0 1 0 Soit LAG (Listen Address Group ) : 10 ; l’état du bus en hexadécimal est 2A. La succession des opérations est groupée dans le tableau 8. On distingue bien deux séquences : — de la ligne 1 à 6 : adressage de l’émetteur (voltmètre) ; — de la ligne 7 à 18 : adressage du récepteur (imprimante). Il ne faut pas oublier le rôle du contrôleur, car c’est le tandem contrôleur-émetteur qui donne l’ordre d’imprimer les données. La fin de la transmission est indiquée par l’ensemble du caractère spécial CR et EOI. Sur l’imprimante on lit : 117 V AC
Tableau 8 – Succession des opérations du système de mesure comprenant un ordinateur, un voltmètre et une imprimante No de l’opération
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Description
Adresse du voltmètre Choix échelle Le voltmètre envoie 1 Le voltmètre envoie 1 Le voltmètre envoie 7 Désactivation du voltmètre Adresse imprimante Le contrôleur envoie un espace — envoie 1 — envoie 1 — envoie 7 — envoie V — envoie un espace — envoie A — envoie C — envoie CR — envoie LF
18 Désactivation de l’imprimante
État des État du lignes Carac- bus de tère (hexagestion décimal)
ATN ATN
Observations
EOI
TAG23 SCG05 1 1 7
57 65 31 31 37
Adresse primaire Adresse secondaire 1er octet de données 2e octet de données 3e (dernier) octet de données
ATN ATN
UNT LAG10
5F 2A
Émetteur déconnecté Adresse primaire
space
EOI
A C CR LF
20 31 31 37 56 20 41 43 OD OA
ATN
UNL
3F
1er octet de données 2e octet de données 3e octet de données 4e octet de données 5e octet de données 6e octet de données 7e octet de données 8e octet de données 9e octet de données 10e (dernier) octet de données Récepteur déconnecté
1 1 7 V
space
3.2.3 Demande de service et recherche série Certains appareils peuvent demander des services par l’intermédiaire de la liaison SRQ. De tels appareils doivent être munis de dispositif capable de décoder les instructions SPE et SPD du bus. La recherche série se décompose en trois étapes : placer le bus en mode recherche série (Polling Serie ), demander les mots d’état, replacer le bus en mode données. La procédure se déroule comme suit : — l’appareil demande du service par liaison SRQ ; — ayant reçu le message de cette demande, le contrôleur lance l’instruction SPE sur le bus pour placer les appareils en mode appel série ; — le contrôleur adresse chacun des appareils en tant que parleur ; — l’appareil adressé répond en envoyant son mot d’état sur le bus de données ; — l’appareil demandeur de service répond par un message SRQ validé (DIO-7 à l’état bas) inséré dans l’octet d’état ; — ayant vérifié tous les mots d’état, le contrôleur met fin à l’appel à l’aide de SPD ; — il exécute alors les opérations demandées . Les séquences de la recherche série sont résumées dans le tableau 9.
(0)
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
R 530 − 15
INTERFACES DE COMMUNICATION ________________________________________________________________________________________________________
Tableau 9 – Recherche série Mot d’état Message interface de l’appareil No ATN contrôleur adressé sur opération lignes DIO
1
1
UNL
2
1
SPE
3
1
Adresse écouteur (contrôleur)
4 5
1 0
Adresse parleur
Commentaires
Désadressage des récepteurs Interfaces en mode recherche série Le contrôleur reçoit le mot d’état
ATN à l’état faux, l’appareil interrogé parle 6 0 x0xxxxxx DIO-7 à l’état faux, l’appareil La procédure de 4 à 6 interrogé n’a pas est répétée sur tous les appareils. demandé service L’appareil demandeur x1xxxxxx DIO-7 à l’état vrai, du service répondra par : SRQ validé x1xxxxxx 7 1 SPD Fin mode recherche série 8 1 Exécution des opérations demandées
3.2.4 Recherche parallèle La recherche parallèle s’effectue avec la ligne EOI activée par le contrôleur (avec ATN = 1). Les appareils devant répondre à cette recherche doivent être préalablement mis en état de le faire. La commande PPC configure les appareils adressés récepteurs pour que ceux-ci puissent prendre en compte la commande PPE. Les appareils préalablement sélectionnés donnent en même temps leur mot d’état. Chaque instrument envoie un bit d’état par l’intermédiaire d’une liaison DIO qui lui est réservée.
3.2.5 Lancement d’un ou plusieurs instruments La fonction fondamentale des appareils de mesure branchés sur le bus (génération de signal, prélèvement des mesures, etc.) doit être déclenchée par le contrôleur qui doit tout d’abord les adresser en écouteurs, puis lancer l’instruction GET ( Group Execute Trigger ). Certains instruments peuvent être dotés d’une fonction de réinitialisation. L’instruction DCL peut être utile pour réinitialiser toutes les interfaces munies de cette fonction, tandis que l’instruction SDC (Selective Device Clear ) est destinée à initialiser un appareil déterminé ou un groupe d’appareils adressés en écouteurs.
3.2.6 Passage de contrôle de bus Ce passage est effectué par un contrôleur vers un autre préalablement adressé en émetteur. Il peut s’effectuer dans l’ordre suivant : ATN (vrai), UNL, TA ( Talk Address ), TCT ( Take Control ), ATN (faux).
R 530 − 16
Figure 24 – Passage de commande d’un contrôleur à un autre
Exemple Considérons le système de la figure 24 où les appareils A, B et C sont des contrôleurs, mais seul B est actif. Pour transférer la commande au contrôleur C : — le contrôleur actif B sélectionne les adresses d’émission de C par l’intermédiaire des lignes DIO et place ATN à l’état vrai (ATN = 1). Il faut bien remarquer que lorsque ATN est à l’état vrai, C est adressé en parleur, et la fonction parleur de B est alors inactivée ; cependant B reste le contrôleur principal du système ; — B envoie ensuite sur le bus le message TCT = 1, il demande ainsi à C de prendre en charge la commande du système ; — C prend effectivement la commande, uniquement après l’acceptation du message TCT = 1 qui entraîne automatiquement le basculement de B vers l’état inactif tout en remettant ATN à l’état faux (ATN = 0) ; — le contrôleur principal, qui est maintenant C, réinitialise les instruments connectés au bus en émettant le message IFC = 1 qui a pour but de rendre les autres contrôleurs inactifs et tous les appareils parleurs et écouteurs passifs. Le lecteur attentif peut remarquer que durant le transfert de données d’un instrument parleur à d’autres instruments écouteurs, le contrôleur actif peut interrompre le transfert par l’instruction ATN = 1, ce qui risque de provoquer une perte d’information. Il serait donc utile de garder en mémoire l’état du transfert pour pouv oir le reprendre ultérieurement.
3.3 Caractéristiques électriques La logique employée est négative (niveau bas → 1). Les niveaux de tension et de courant fournis ou reçus par les émetteurs-récepteurs sont indiqués par le tableau 10. Des circuits à collecteur ouvert sont utilisés pour les lignes SRQ, NRFD, NDAC, ATN, IFC, REN, EOI, DAV et DIO. Pour les vitesses de transmission élevées (1 Mo/s), les sorties ATN, IFC, REN, EOI, DAV, DIO doivent être constituées de circuits à trois états. Pour les appareils dotés de la possibilité d’une réponse à la recherche parallèle, les lignes DIO sont obligatoirement en collecteur ouvert.
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
_______________________________________________________________________________________________________ INTERFACES DE COMMUNICATION
Quelques précautions pratiques . Pour mieux comprendre les problèmes du circuit d’interface entre le bus d’une part et les récepteurs et les drivers connectés au bus d’autre part, on se propose d’étudier le schéma de la figure 25. Sur la ligne d’entrée-sortie s’effectue le transfert des signaux dans les deux sens. Les drivers sont à collecteur ouvert ou trois états. Ils doivent respecter les caractéristiques suivantes : — état bas : tension de sortie < + 0,4 V avec un courant de sortie de + 48 mA ; — état haut : tension de sortie + 2,4 V à – 5,2 mA. Pour les récepteurs, il est important d’avoir une bonne immunité aux bruits. Le bon fonctionnement des drivers et récepteurs nécessite des résistances de charge qui ont pour but de maintenir uniforme l’impédance du dispositif sur la ligne et d’améliorer l’immunité aux bruits. À l’entrée des récepteurs, on observe la diode de protection contre l’excursion des tensions négatives importantes. On note également que la résistance R L2 est découplée par une capacité parasite C qui ne doit pas dépasser 100 pF pour chaque ligne. On ne doit pas oublier que les ca pacités des lignes en parallèle s’ajoutent et peuvent devenir très gênantes. Dans un système comprenant plusieurs appareils présentant des masses châssis aux potentiels différents, il est impératif de minimiser les tensions de mode commun par une mise correcte des écrans et des blindages à la masse. L’ensemble du câble contient, comme on l’a déjà vu, 24 fils dont 16 sont utilisés pour les signaux de ligne. Les conducteurs des lignes de signal présentent une résistance inférieure à 0,14 Ω /m tandis que les conducteurs pour le retour de masse ne doivent pas dépasser 0,008 5 Ω /m. La capacité entre une ligne et l’ensemble des autres lignes reliées à la masse est tout au plus égale à 150 pF/m. Pour éviter les interférences, les lignes de signal DAV, NRFD, NDAC, IFC, ATN et SRQ sont torsadées avec chacun des conducteurs de masse.
3.5 Circuits d’interface IEEE-488 À l’heure actuelle, on estime à près de 5 000 le nombre d’appareils de mesure directement compatibles avec le bus IEEE-488. En général, dans ces appareils, qui permettent de délivrer des résultats sous forme numérique, l’interface intégrée a remplacé la sortie BCD. Pour les appareils non munis de cette interface, le concepteur dispose aujourd’hui de nombreux circuits intégrés spécialisés permettant de simplifier les problèmes d’interfaçage. La tâche de l’ingénieur est rendue facile grâce à l’existence de notes d’application détaillées comprenant même des listings de programme.
Figure 25 – Circuit d’interface d’entrée-sortie des signaux
Tableau 10 – Niveaux de tension Entrée Sortie GPIB GPIB récepteur émetteur
V bas V haut
bas haut
V bas V haut
Ι Ι
bas Ι haut Ι
Vrai ou faux
État logique
vrai faux vrai faux vrai faux vrai faux
1 0 1 0 1 0 1 0
Minimum
– 0,6 V + 2,0 V 0,0 V + 2,4 V – 1,6 mA
Maximum
+ 0,8 V + 5,5 V + 0,4 V + 5,0 V + 50 µA + 48 mA – 5,2 mA
3.4 Caractéristiques mécaniques Pour assurer la compatibilité des systèmes, le connecteur du câble est lui aussi normalisé (figure 26). La longueur maximale du câble connecté sur le bus ne doit pas dépasser 20 mètres au total et 2 mètres par instrument.
Figure 26 – Désignation des contacts du connecteur
3.6 Interface bus IEEE/ordinateur personnel L’interface entre le bus IEEE et l’ordinateur personnel es t une carte conçue avec son logiciel approprié qui permet l’accès aux différentes fonctions de l’interface du bus IEEE. L’utilisateur doit bien distinguer les trois niveaux du logiciel : — le système d’exploitation qui contrôle l’ordinateur (MS-DOS ou PC-DOS) ; — le contrôle de la carte ; — le programme d’application. Quels sont les critères de choix de cette carte ?
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
R 530 − 17
INTERFACES DE COMMUNICATION ________________________________________________________________________________________________________
Les critères de choix sont, de toute évidence, dépendants de l’électronique de la carte et du logiciel fourni par le fabricant. L’électronique de la carte peut, par exemple, générer une interruption sur une des huit lignes d’interruption de l’ordinateur. Avec un logiciel adéquat, il est alors possible de traiter certains év énements en temps réel. L’accès direct mémoire (DMA) peut devenir impératif si l’application nécessite un transfert de grandes quantités de données. Le logiciel de commande de la carte peut intervenir dans le choix du langage de programmation. En général le BASIC en mode interprété est utilisé, mais, dans certains ca s, les langages évolués, BASIC compilé, FORTRAN, langage C, PASCAL sont possibles. Les fonctionnalités de la carte sont effectuées d’une part par l’électronique et d’autre part par le logiciel ; il est donc nécessaire d’analyser avec attention les possibilités de l’électronique. Certaines cartes possèdent même une ROM contenant les routines du logiciel de contrôle. C’est un avantage évident si la configuration du logiciel est figée. Cet avantage peut, par contre, deve nir une gêne lorsque l’on doit faire face à un problème évolutif.
4. Conclusion Face à un développement rapide de la mesure dans les domaines industriels, à la complexité et au nombre croissant des besoins en matière d’instrumentation, nombreux sont les utilisateurs à juger
R 530 − 18
inadéquates les procédures traditionnelles de développement et de test. Les utilisateurs ont de nouveaux besoins qui pourront être résolus par la constitution de systèmes automatiquement interactifs afin : — de réduire le coût de fabrication ; — d’augmenter l’utilisation du potentiel représenté par le personnel en le libérant pour des tâches créatives ; — de réduire les erreurs humaines par des mesures répétitives et précises. Pour parvenir à ces objectifs, les divers instruments, contrôleurs et périphériques composant ces systèmes, doivent pouvoir se raccorder aisément entre eux. Le premier pas a été franchi à l’aide des interfaces standards. En particulier, l’interface IEEE-488 simplifie considérablement la configuration des systèmes contrôlés par ordinateur. Les normes définissent, comme nous l’avons vu, trois niveaux de compatibilité : mécanique, électrique et fonctionnel ; elles permettent de concevoir d’emblée des instruments compatibles GPIB. Mais cela ne constitue qu’un premier niveau de normalisation. Certains fabricants d’instruments de mesure se sont déjà lancés dans la nouvelle étape qui consiste à : — instituer un système de codage commun à tous les instruments interfacés ; on pourra donc parler à juste titre d’une intercompatibilité à l’intérieur du système, en addition de la compatibilité IEEE ; — réduire le coût et le temps de développement du logiciel du système et du logiciel d’application en simplifiant les échanges. Cette nouvelle démarche s’inscrit dans le cadre de la philosophie générale des fabricants d’instruments : faciliter au maximum l’utilisation de leurs produits.
Toute reproduction sans autorisation du Centre français d’explo itation du droit de co pie est strictement interdite. © Techniques de l’Ingénieur, traité Mesures et Contrôle
P O U R
Interfaces de communication
Mise en œuvre des mesures automatiques E
N
par Lang TRAN TIEN Professeur à l’École Spéciale de Mécanique et d’Électricité de Paris
Normalisation (0)
Interfaces série Normes équivalentes CCITT (1)
No
Normes EIA
Année
1
RS 232
1969
Les premières spécifications de cette norme ont été élaborées par l’EIA ( Electronic Industries Association ) aux États-Unis, en collaboration avec les Bell Laboratories.
2
RS 232C
1969
« C » signifie que la norme précédente est ensuite revue et corrigée ; elle est adoptée aussi bien aux communications asynchrones que synchrones.
3
RS 422
1976
Amélioration avec le mode de transmission différentiel sur deux fils.
4
RS 423
1976
Utilisation d’une ligne de masse commune non connectée du côté du récepteur ; moins exigeante que RS 232C ; sa mise en œuvre est plus facile.
V 10/X 26
5
RS 449
1977
Introduction d’un connecteur à 37 broches et d’un connecteur à 9 broches du canal secondaire.
V séries X 21/X 24
Commentaires
V 24 et les normes complémentaires V 25 et V 28 V 11/X 27
(1) Le CCITT (Comité Consultatif International de Télégraphie et Téléphonie) des Nations-Unies, ayant son siège en Suisse, n’établit pas de véritables normes comme l’EIA des États-Unis. Il formule des recommandations sous forme de normes. (0)
Interfaces parallèles No
Désignation
Année
Commentaires
1
HP - IB
1965
Au début des années 60, Hewlett-Packard entreprit de créer sa propre norme interne destinée à faciliter l’interconnexion de tous les instruments HP. En 1965, cette norme est connue sous la désignation HP-IB ou Bus d’Interfa ce Hewlett-Packard.
2
IEEE-488-1
1975
3 4
GPIB ANSI MC 1-1
1978 1978
5 6
IEC 625-1 ANSI /IEEE 488-2
1978 1987 1990
Après des innovations supplémentaires destinées à accroître sa commodité et sa souplesse, cette norme HP-IB est reconnue et homologuée par IEEE ( Institute of Electrical and Electronical Engineers ). Publiée par IEEE sous le nom de GPIB ( General Purpose Interface Bus ) Adoptée par ANSI ( American National Standard Institute ) sous la désignation de ANSI MC 1-1. Reconnue par IEC ( International Electrotechnical Commitee ) et appelée IEC 625-1 en Europe. Version améliorée de la norme IEEE 488-2. Adoptée par SCPI ( Standard Commands for Programmable Instruments ).
Toute reproduction sans autorisation du Centre français d’exploi tation du droit de co pie est strictement interdite. − © Techniques de l’Ingénieur, traité Mesures et Contrôle
Doc. R530 − 1
S A V O I R P L U S
P O U R
INTERFACES DE COMMUNICATION ________________________________________________________________________________________________________
Références Bibliographiques [1] [2]
E N
[3] [4] [5]
S A V O I R
[6] [7]
HP-IB Installation and theory of operators manuel. Hewlett-Packard, avril 1980. GRÉGOIRE (R.). – Bus IEEE. Appareils pro- grammables et micro-ordinateurs. Microsystèmes. ETSF (1984). TERRASSON (J.L.). – Les périphériques des micro-ordinateurs. Microsystèmes. ETSF (1985). CHUBB (B.). – Build your own universal computer interface. McGraw-Hill. Tab Books (1989). DERENZO (S.E.). – Interfacing. A laboratory approach using the microcomputer for ins- trumentation and control. Prentice Hall (1990). GATES (S.C.) et BECKER (J.). – Laboratory Automation using the IBM PC. Prentice Hall (1989). KOTELLY (G.). – Personal instruments combine measurement sophistication with
[8] [9] [10] [11] [12] [13]
general purpose computer. Power – EDN, 31 mars 1983. TRAN TIEN (Lang). – Computerized instru- mentation. Wiley (1991). WRATIL (P.) et SCHMIDT (R.). – Contrôle et mesure avec les PC. Ed. Radio Dunod ed. (1993). L’automatisation dans la mesure. Revue Hewlett-Packard. 5953-8350 FR. 16,5 K 10.81W. GPIB Instruments Selection Guide. Tektronix (1982). Systèmes d’interface pour instruments de mesure. Enertec Schlumberger Instruments Catalogue. TOMAS (O.) et SAUVEZON (R.). – Interfaçage par bus IEEE 488. Électronique Industrielle no 121/01-03-1987.
[14] IBM PC du laboratoire à l’industrie. Dunod
(1986).
[15] SENEGAL (S.). – Interfaces et communi- cations. TLE Informatique n o 492, mars 1984. [16] WEISSBERGER (A.J.). – Data commu- nications. Electronic Design, 12 juin 1979. [17] TILDEN (M.) et RAMIREZ (B.). – Unders- tanding IEEE-488 basics simplifies system integration. EDN, 9 juin 1982. [18] TEK GPIB. – Une norme Tektronix. Manuel
Tektronix, juin 1982.
[19] SENEGAL (S.). – Données et protocoles de communication. TLE Informatique, fév. 1985. [20] VERNAY (J.P.). – Interfaces standards : sachez l’essentiel. Mesures, 20 fév. 1984. [21] GOUET (M.). – Mesure et contrôle sur PC.
Masson (1993).
P L U S
Doc. R530
− 2
Toute reproduction sans autorisation du Centre français d’exploi tation du droit de co pie est strictement interdite. − © Techniques de l’Ingénieur, traité Mesures et Contrôle