Académique Documents
Professionnel Documents
Culture Documents
d'instruments de laboratoire
Jean-Pierre Sarteaux
Laboratoire de Science et Génie des Matériaux et de Métallurgie
L.S.G.2.M - UMR7584 - Ecole des Mines de Nancy
sarteaux@mines.inpl-Nancy.fr
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
ETTD : Equipement Terminal de Traitement de données (ou DTE : Data Terminal Equipment).
Un terminal de données ne se connecte pas directement à la ligne de transmission. Par exemple :un
ordinateur, un terminal, une imprimante…
ETCD : Equipement de Terminaison de Circuit de Données (ou DCE : Data Communication Equipment)
Un équipement de communication assure la transmission des données. Par exemple : un modem, un
multiplexeur… Il a deux fonctions principales :
une jonction numérique entre un ETTD et un équipement terminal de circuit de données (ETCD) se
définit par 3 paramètres (les circuits, les niveaux électriques et le brochage).
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
Les 3 modes d'exploitation
- Simplex : Un système est émetteur, l'autre récepteur. C'est par exemple le cas des émissions
radio ou TV.
- Semi-duplex (half duplex) : Les deux systèmes peuvent être à la fois émetteur et récepteur,
mais les émissions ne peuvent avoir lieu en même temps.
- Duplex (full duplex) : Les deux systèmes peuvent être à la fois émetteur et récepteur, les
émission pouvant avoir lieu en même temps.
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements électroniques
Les données s'échangent par les circuits TD (103) et RD (104). Phase 3 : RTS passe à 0. L'ETCD indique qu'il veut émettre.
Avant la transmission des données,
Phase 4 : CTS passe à 0. L'ETCD indique qu'il est prêt à émettre des
la connexion doit être établie entre 2 systèmes données sur la ligne.
Les signaux participant à cette phase de la communication sont :
DTR (108.2) et DSR (107) pour la connexion de lige ; Phase 5 : Emission des données.
RTS (105) et CTS (106) pour la validation de l'émission ;
DCD (109) pour la validation de porteuse ; Phase 6 : RTS passe à 1. L'ETTD suspend l'émission. RTS ne peut
RI (125) pour signaler un appel reçu par l'ETCD. pas repasser à 0 tant que CTS est à 0.
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Liaison série……… en détails
Exemple:
Soit la transmission d’
une donné (ascii A) entre un terminal (ETTD) et un modem de type A.F (ETCD),
par une jonction de type V24/V28/iso 2110.
V.24 c’
est la définition des circuits de jonctions série 100
(102 retour commun, 103 émission de données, 104...)
le caractère ascii A c’
est: la gestion d'une communication série peut être complétée par
65 en décimal l'utilisation des signaux :
- RTS (request to send): sortie de demande d'émission
41 en hexadécimal
- CTS (clear to send): entrée d'inhibition de l'émetteur
0100 0001 en binaire - DCD (data carrier detect): perte de la porteuse de données
MSB LSB (modem)
iso 2110 concerne l'affectation de ces circuits de jonctions dans un connecteur DB 25 points
(ex. : ED/TD 103 broche 2)
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
La communication vue de l ’
électronicien
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Liaison série « NUMERIQUE »………en détails
abord le Bit
tout d’
Un bit ne peut prendre que deux valeurs et dépend du contexte:
- numérique,
- logique (voir algèbre de Boole),
- espace,
- électronique numérique,
- magnétique,
ou optique,
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
- RS…….. ou USB…….
RS c'est une norme = Recommended Standard en constante évolution
Norme V28 (RS232) , Norme V11 (RS422 et RS485) , Liaison V24 (RS232 et RS449).
elle définit que le côté matériel de la connectique et le fonctionnement du circuit électronique associé,
qui gère les différentes demandes des signaux RTS/CTD ...).
- Les liaisons points à points RS-423; RS-232; RS-232C; USB s'impose de plus en plus (1..2)
- Les liaisons multipoints RS-422 plus connu en plus efficace sous le nom de RS-485
nous y voilà
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
Principales caractéristiques électriques de la norme V28 (RS232)
Pour chaque signal, le support est un fil référencé par rapport à la masse.
La norme permet d'adapter les signaux logiques (TTL ou CMOS).
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
Principales caractéristiques électriques de la norme V11 (RS422 et RS485)
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
.
Les liaisons obtenues ne sont plus normalisées mais sont utilisées très fréquemment
la plus simple, est constituée de seulement 3 fils : deux fils de transmission et un de référence
- Si les protocoles de communication utilisés le demandent, on peut simuler une liaison complète en rebouclant certains circuits d'un même ETTD.
Une liaison à 5 et une à 7 fils permettent de prendre en compte les signaux de validation entre les 2 Equipements Terminaux de Traitement de données
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
Si on utilise tous les signaux à interconnecter pour que les machines synchonisent leurs échanges
on parle alors de contrôle de flux matériel et de contrôle de flux logiciel.
Coté logiciel
Dans le protocole de communication, il y a des standards, mais tout dépend avec quoi on veut dialoguer ...
un autre PC ? une machine outil ? un automate programmable ?
Une fois les machines connectées, il faut s'abord écouter ce que la machine opposée demande :
En rapport avec les standards de protocole, il faut identifier les Bytes (n° d'esclave, donnée, CheckSum ...)
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
http://1100f.free.fr/serie.htm Philippe.Chamiot-grenoble
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
Communication en série
-transmission synchrone
(flux continu avec horloge sur fil séparé ou horloges synchronisées à chaque bout)
Rappel
Pour établir une liaison série synchrone à partir des données parallèles contenues dans
une mémoire, il suffit d’utiliser un registre à décalage, en mode parallèle ->série à
l’
émission et série-> parallèle à la réception.
Inconvénient : il faut transmettre une horloge, en plus des données, afin que les registres
à décalage utilisés de chaque côté de la liaison fonctionnent rigoureusement à la même
vitesse.
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
Communication en série
- transmission asynchrone
(1octets à la fois, bit de départ, LSB puis MSB, parité, bits(s) de fin)
Rappel
L'idée de la liaison série asynchrone est semblable à celle de la liaison série synchrone.
A l’
émission et à la réception il y a deux horloges
Qui doivent fonctionner à la même fréquence mais peuvent différer de quelques %
Sans d'être synchronisées.
Il suffit d’
utiliser, côté émission et coté réception, d’
une simple horloge à quartz .
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
La communication peut se faire dans les deux sens (duplex), soit émission
d'abord, puis réception ensuite (half-duplex), soit émission et réception
simultanées (full-duplex)
La transmission étant du type asynchrone
Communication en série boucle de courant (4-20mA)
Simple (duplex),
half-duplex émission d’
abord puis réception ensuite full-duplex émission et réception simultanées
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
7 bits
valeur décimale de 0 à 127
8 bits
valeur décimale de 0 à 255
LSB MSB
1 Bit de Start, 8 bits de données, 1 bit de parité et 2 bits de Stops
Ce qui fait 12 bits pour 1 caractère
http://www.stielec.ac-aix-marseille.fr/abati
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
Le bit de parité n’
est pas obligatoire.
Il est possible de faire fonctionner une liaison avec des parités différentes à l'émission et à la réception.
Il est aussi possible d'envoyer des caractères avec une parité à des appareils qui ne peuvent la traiter.
Il est préférable cependant de travailler "proprement" en programmant les mêmes parités en émission et en
réception pour conserver à ce bit toute sa signification.
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Liaison série
Exemples de signaux RS-232 –Evolution du Bit de parité de la communication
9600-7-E-1
état inactif
-5
LSB MSB
Ces données sont acquises en connectant la sortie du port modem d'un Mac à l'entrée d'un oscilloscope numérique.
• Que remarque t’ on à d’oscilloscope ?
une tension négative est de 1 et une tension positive est de 0 (également au bit de parité),
- qu’
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Liaison série Exemples d’
un signal RS-232- Les bits d’
arrêt
1 bit de start
7 bits de données
1 bit de parité
1 bit de Stop
1234567
1 1
1 bit de start
7 bits de données
1 bit de parité
2 bits de Stop
1234567
1 12
il est aussi possible de définir 1,5 bits
1
transmission de $82, puis $F1, avec parité paire et 2 bits de " stop "
82 en hexa c’
es 10000010 en binaire et 130 en décimal
F1 en hexa c’
es 11110001 en binaire et 241 en décimal
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
RS 232
ligne asymétique
1 driver, 1receivers, charge par driver de 1à 7K
distance max. 15m, 20Kb/s max
signaux +/- 15V sensibilité du récepteur +/-3v
RS 423
ligne asymétique
1 driver, 10 receivers, charge par driver 450mini.
distance max. 1200m, 100Kb/s max
signaux +/- 12V sensibilité du récepteur +/-3v
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
Communication en série
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Liaison série……… Analyse des informations véhiculées
L’
œil espion
Softs :
Hyperterminal,
Docklight,
Aspycom,
Portmon,
Sniffer,
etc…;
Et les DLL’ S
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Liaison série……… RS-485
Si sur la ligne un seul équipement en train d'émettre. Le dialogue entre les esclaves est impossible.
Aucun esclave ne peut envoyer un message sans une demande préalable du maître.
C’
est un Protocole de communication GOULD MODICON basé sur un principe Maître/esclave.
Un seul maître et plusieurs esclaves. (255 esclaves maxi) sur RS485 et 2 maxi sur RS232.
- MODBUS/RTU est un protocole sécurisé basé sur le calcul d'un CRC (cyclical Redundancy check) ou test de redondance cyclique.
Ce CRC calculé sur 16 bits est partie intégrante du message et il est vérifié par le destinataire.
Il est calculé sur tous les octets de la trame à part lui-même.
Le CRC est un entier de type WORD (2 octets) calculé dans la gamme 0 à 65535 puis ramené dans la gamme -32768 à 32767.
Le maître (PC) envoie des requêtes à l'esclave qui lui répondra si le message lui convient.
- Fonctionnement de MODBUS
Il existe diverses fonctions MODBUS mais on ne s'intéressera qu'aux fonctions de lecture (03H) et écriture (06H)
Une trame MODBUS est constituée d'une suite de caractères hexadécimaux. et contient les informations suivantes :
Numéro d'esclave (1 octet)
Code fonction (1 octet)
Adresse (2 octets)
Données (2 octets)
CRC (2 octets)
la trame est différente selon que l'on fera de la lecture, de l'écriture, de mots, de bits ....
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Liaison série……… MODBUS/JBUS
* Dans une trame MODBUS PF/pf signifie 2 octets l'octet de poids Fort sont mis avant l'octet de poids faible
Trame de lecture c’
est une requête (ex : on veut connaître la valeur du mot 800)
Fonctio
Esclave Adresse du 1er mot Nombre de mots CRC16
n
01H 03H *PF/pf 01H (PF/pf) **PF/pf
Trame de réponse de l'esclave :
Fonctio
Esclave Nombre octets Valeur 1er mot ......... Valeur dernier mot CRC16
n
01H 03H 1 octet PF/pf PF/pf **PF/pf
Trame d'écriture d'un mot (ex : on veut fixer la valeur 0 au mot dont l'adresse est 800)
800 décimal doit être converti en HEXA sur 2 octets Poids Fort puis poids faible. Un PC parle intuitivement en HEXA.
Ex: le décimal 65 qui a pour équivalent caractère 'A', quand on va passer chr(65) sur la ligne, on transmettra 'A' qui est en fait 41H .
De la même manière, quand on passera le décimal 0 qui a pour équivalent caractère NUL, on transmettra NUL qui est en fait 00H.
Le CRC calculé subit le même type de conversion.
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Liaison série……… MODBUS/JBUS
Rappel: Dans une trame MODBUS PF/pf signifie 2 octets l'octet de poids Fort sont mis avant l'octet de poids faible
Quelques fonctions
1 : Lecture de n bits de sortie
2 : Lecture de n bits d'entrée
3 : Lecture de n mots de sortie
4 : Lecture de n mots d'entrée
5 : Ecriture de 1 bit
6 : Ecriture de 1 mot
* http://www.vbfrance.com//code.apx?ID=44450
** http://sebastienguillon.com/test/javascript/convertisseur.htm
***http://titicoco.chez-alice.fr/modbus.html#ancre32233
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Liaison série……… MODBUS/JBUS
Exemple de codage en Visual Basic au travers de l'ActiveX MSComm (composant comm série)
requete = chr(01)+chr(03)+chr(03)+chr(20)+chr(00)+chr(01)+chr(85)+chr(84)
mscomm1.Output = requete
Exemple de codage en DELPHI au travers d'un ActiveX Comport Library (dispo gratuit sur internet)
requete := chr(01)+chr(03)+chr(03)+chr(20)+chr(00)+chr(01)+chr(85)+chr(84);
comport1.Writestr(requete);
les fonctions de lecture (ReadFile) et d'écriture (WriteFile) de l'API. Sont alors utilisables
Ne pas poublier les déclarations soit en include(C) en uses(DELPHI) ou en declare(VB) selon le langage de programmation.
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Liaison série……… CRC 1
Il est basé sur la fonction XOR: OU exclusif et démarre sur un polynôme arbitraire
Il est souvent calculé en binaire mais peut être aussi calculé dans différents langages (VB, C, C++,….)
Le CRC est calculé par l'émetteur puis inclus dans la trame avant d'être transmis
Si les valeurs sont différentes alors il y a une erreur dans la transmission du message.
http://www.vbfrance.com//code.apx?ID=444ap50
demeautis.cyrillel@caramail.com
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
CRC 16
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
Mais aussi d’
autres types de liaison série
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
- V/F- F/V,
convertisseur tension fréquence
convertisseur fréquence tension
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Communication entre équipements
électroniques
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Bus Série
entre équipements
RF
RS485 J1850 HART One Wire USB
porteurs
IEEE 1451.2
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
entre équipement
Parallèle Série
même équipement SPP RS232 CAN
Parallèle Série EPP RS422 USB1
Bus C MicroWire ECP RS485 Modbus
Europa SPI LVDS 4-20mA LonWorks
VME I2C SCSI V/F-F/V InstaBus
Futurbus SCI en résumé GPIB IrDA One Wire
ISA … …… Fibre Opti. Ethernet
PCI FDDI FireWire
AGP HART Profibus
… MIDI RF
PLC GSM
... ...
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Bus Série
dans
un même équipement
synchrone asynchrone
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Les perturbations
Les perturbations
Quelques rappels sur les caractéristiques de lignes de transmission
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Caractéristiques des lignes de
transmission
- Transmettre rapidement l ’
information
- perturbations extérieures
- perturbations internes
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Caractéristiques des lignes de
transmission
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
Caractéristiques des lignes de
transmission
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
noir
TP n°1 _ RS 232
Un casse-tête pour les nerfs
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
•Table de conversion ASCII
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10
noir
9600-7-E-1
C’
est vitesse de transmission de 9600 bauds avec des mots de 10bits
( 1 bit de Start, 7 bits de Données, 1 bit de Parité, 1 bit de Stop)
61 en hexa c’
est a en ascii
TP n°1 _ RS 232
6
La solution (Mac)
Sens de transfert des bits MSB
1 0 1 1 Bit de parité
Bit start LSB Bit stop
1 0 0 0
1° mot de 10 bits 3° mot de 10 bits
5
-5
2° mot de 10 bits
Bit start 1 0 1 1 Bit stop Bit start 1 1 0 0 Bit stop
LSB LSB Bit de parité
Bit de parité
0 0 1 0 1 1
D MSB
Bits Poids faibles 3 MSB
4 6
Bits
4D en hexa c’
est M en ascii Poids 63 en hexa c’
est c en ascii
forts
ANDG 2008 DR06 - Strasbourg 15/09 - Nancy 24/09 –Bordeaux 06/10 –Marseille 14/10 jP.S
noir