1
Cours Informatique Industrielle
Niveau: BIO2
Par: Nesrine Belhaj Youssef © Année universitaire: 2018/2019
2
Organisation des enseignements
� Cours intégré: 22.5 hrs
� Travaux pratiques: 15 hrs (5 x 3 hrs)
� Module: Sciences Techniques
� Coefficient: 2.5
� Pré-requis: systèmes logiques, programmation.
Disponible à la librairie de l’INSAT ou au site: www.classes2010-2011.e-monsite.com
2
3
Plan du cours (1)
� Partie I:
1. Présentation de l’informatique industrielle et des différents systèmes programmables
2. Architecture d’un système à microprocesseur
3. Interfaçage série/parallèle
4. Périphériques d’entrée/sortie
5. Acquisition et commande: chaîne d’acquisition, capteur, conditionneur, échantillonnage/blocage, quantification/codage, Conversion analogique-numérique.
Séance 1
Séance 2
4
Plan du cours (2)
� Partie II:
1. Rappels sur les différents systèmes de codage
2. Rappels sur la logique combinatoire et séquentielle
3. Modèle de programmation en langage assembleur: jeu
d’instructions et code source
4. Présentation des interruptions et procédures de
traitement
5. Aperçu sur les langages de programmation haut niveau
Séances
3 + 4Séances
5 + 6Séances
7 + 8
Séances
9 + 10
3
5
Plan du cours (3)
� Partie III:
1. Automates Programmables Industriels
2. Langages de programmation des automates
3. Applications en bio-industries
Séances
11 + 12
6
Présentation de l’informatique industrielle
� « L’informatique industrielle est une branche
technologique de l'informatique appliquée qui couvre
l'ensemble des techniques de conception, d'analyse et
de programmation de systèmes informatisés à vocation
industrielle, qui ne sont pas uniquement à base
d'ordinateurs (robots, automates, systèmes embarqués,
etc).»
(Source: Wikipédia)
4
7
Applications
Automatismes industriels Robotique
Instrumentation
Applications internet Télématique
8
Différents systèmes programmables (1)
� Circuits spécialisés ou ASIC (Application SpecificIntegrated Circuit)
Les circuits spécialisés sont des circuits qui ont été spécialement
conçus pour une application donnée. Exemple: DSP (Digital Signal
Processing).
DSP Texas Instrument TMS 320
5
9
Applications des DSP
� Applications nécessitant un traitement numérique des signaux: extraction, filtrage, etc.
MODEM TELEPHONES
PORTABLES
LECTEUR
MP3
10
Différents systèmes programmables (2)
� Systèmes en logique programmable ou PLD (Programmable Logic Device)« Un circuit logique programmable, ou réseau logique programmable, est un circuit intégré logique qui peut être reprogrammé après sa fabrication.
Il est composé de nombreuses cellules logiques élémentaires, pouvant être librement assemblées.» (Wikipédia). Exemples: FPGA (Field Programmable Gate Array), PAL (Programmable Array Logic).
FPGA XILINX
XC36SA
PAL TI
16R8A
Technologie RAM:
Programmable à volonté
Technologie fusible:
Programmable 1 fois
6
11
Différents systèmes programmables (3)
� Systèmes micro-programmés
� « Un circuit micro-programmé est un circuit intégré qui
rassemble les éléments essentiels d'un ordinateur:
processeur, mémoires, unités périphériques et interfaces
d'entrées-sorties.» (Wikipédia)
� Exemple: microcontrôleur.
12
Applications des microcontrôleurs
GLUCOMETRE
AUTOMOBILE
SMART
PHONES
Airbags, ordinateur de bord, freins ABS
DAB
7
13
Architecture d’un système à micro-processeur
MICROPROCESSEUR ROM RAM EEPROMCHIEN
DE
GARDE
TIMERS C.A.N INTERFACE
PARALLÈLE
INTERFACE
SÉRIE
BUS DONNÉES - CONTRÔLE - ADRESSES
OSCILLATEUR MÉMOIRE
PROGRAMME
MÉMOIRE
DE DONNÉE
RESETOSCIN OSCOUT
INTT
IME
R1
TIM
ER2
PO
RT A
PO
RT B
PO
RT C
SO
UT
SC
LK
SIN
14
Processeur
� Le processeur ou CPU (Central Processing Unit) est le
composant essentiel d'un système micro-programmé. Il
exécute les programmes, où sont effectuées les
principales opérations logiques et arithmétiques. Sa
cadence (le nombre de micro-instructions effectuées par
seconde) est exprimée en Hertz (Hz).
Architecture d’un système à micro-processeur
8
15
Architecture interne d’un processeur
Architecture d’un système à micro-processeur
16
�Unité Arithmétique et Logique (UAL): prend en charge les calculs
arithmétiques et logiques.
�Registres: généraux, d’instructions, d’état.
�Compteur d’instructions: Ce registre contient l’adresse mémoire de
l’instruction en cours d’exécution.
�Accumulateur: registre utilisé pour stocker les données en cours de
traitement par l’UAL.
�Horloge: synchronise toutes les actions de l’unité centrale. Elle est
présente dans les processeurs synchrones, et absente des
processeurs asynchrones.
Architecture d’un système à micro-processeur
9
17
Critères de choix d’un processeur (1)
Architecture d’un système à micro-processeur
� Architecture :
– UAL (8, 16, 32, 64 bits).
– Taille des mémoires programme et donnée.
– Nombre de ports d’entrée/sortie.
18
Critères de choix d’un processeur (2)
Architecture d’un système à micro-processeur
� Fonctionnalités:
– Fonctions analogiques: conversion numérique/analogique…
– Fonctions de timing: timer, chien de garde…
– Fonctions de communication: USART, USB,...
– Facilité de programmation.
10
19
Critères de choix d’un processeur (3)
Architecture d’un système à micro-processeur
� Mise-en-œuvre et maintenance:
– Coût des outils de développement.– Disponibilité, obsolescence des composants.
� Caractéristiques électriques:
– Fréquence d’horloge.– Tension d’alimentation.– Consommation d’énergie.
20
Evolution chronologique des processeurs (exemple: Intel)
Architecture d’un système à micro-processeur
Intel 8086 (1978)
Architecture interne: 16 bits,
Fréquence d'horloge: 4.77-10 Mhz
29 000 transistors
Intel Pentium 4 Northwood C (2002)
Architecture interne: 32 bits
Fréquence d’horloge: 3.4 Ghz
55 millions de transistors
Intel Core i9 (2018)
Architecture interne: 64 bits
Fréquence d'horloge: 4.3 Ghz
Plus de 3 milliards de transistors
11
21
Architecture d’un système à micro-processeur
MICROPROCESSEUR ROM RAM EEPROMCHIEN
DE
GARDE
TIMERS C.A.N INTERFACE
PARALLÈLE
INTERFACE
SÉRIE
BUS DONNÉES - CONTRÔLE - ADRESSES
OSCILLATEUR MÉMOIRE
PROGRAMME
MÉMOIRE
DE DONNÉE
RESETOSCIN OSCOUT
INTT
IME
R1
TIM
ER2
PO
RT A
PO
RT B
PO
RT C
SO
UT
SC
LK
SIN
22
� Un bus permet de faire transiter des informations codées en binaire entre deux composants. Typiquement les informations sont regroupées en mots: octet (8 bits), word (16 bits) ou double word (32 bits).
� Il est caractérisé par:� La largeur (nombre de lignes).
� La fréquence de transfert des données.
� La bande passante.
Architecture d’un système à micro-processeur
Bus
12
23
Architecture d’un système à micro-processeur
Bande passante d’un bus
Bande passante (Mo/s) = largeur du bus (octet) x fréquence (Hz)
Exemple: soit à calculer la bande passante d’un bus de fréquence 66 MHz
et de largeur 32 bits.
Solution: bande passante = 66 MHz*32 bits = 2112 Mb/s = 264 Mo/s
/8
24
� Bus de données: Permet de transférer des données entre composants, ex: résultat d'une opération, valeur d'une variable, etc.
� Bus d'adresses: Permet de transférer des adresses entre composants, ex: adresse d'une case mémoire, etc.
� Bus de contrôle: Permet l'échange d’informations de contrôle entre les composants, ex: horloge, périphérique prêt / occupé, erreur d’exécution, etc.
Types de Bus
Architecture d’un système à micro-processeur
13
25
Exemple
Architecture d’un système à micro-processeur
26
Architecture d’un système à micro-processeur
MICROPROCESSEUR ROM RAM EEPROMCHIEN
DE
GARDE
TIMERS C.A.N INTERFACE
PARALLÈLE
INTERFACE
SÉRIE
BUS DONNÉES - CONTRÔLE - ADRESSES
OSCILLATEUR MÉMOIRE
PROGRAMME
MÉMOIRE
DE DONNÉE
RESETOSCIN OSCOUT
INT
TIM
ER1
TIM
ER2
PO
RT A
PO
RT B
PO
RT C
SO
UT
SC
LK
SIN
14
27
� RAM (Random Access Memory) ou mémoire vive, est
un type de mémoire informatique à accès aléatoire en
lecture-écriture. On l'appelle aussi mémoire volatile:
toutes les données sont perdues à l'extinction de
l'alimentation électrique. Il s'agit de la mémoire
électronique qui contient les données en cours de
traitement dans un système programmé.
Architecture d’un système à micro-processeur
Mémoires
28
� ROM (Read Only Memory) ou mémoire morte, est un
type de mémoire informatique impossible à modifier.
Contrairement à la RAM, ce n’est pas une mémoire
volatile: les données ne sont pas perdues à l'extinction
de l'alimentation électrique. Il s'agit de la mémoire
électronique qui contient les informations vitales d’un
ordinateur (BIOS, instructions de démarrage, etc).
Architecture d’un système à micro-processeur
Mémoires
15
29
� EEPROM (Electrically Erasable Programmable Read
Only Memory) est un type de mémoire informatique
programmable par l’utilisateur, pouvant être effacée
électriquement. Elle peut être effacée et programmée de
100 000 à 1 000 000 de fois.
� Il existe également les PROM (programmables 1 seule
fois) et les EPROM (effaçables sous rayon U.V).
Architecture d’un système à micro-processeur
Mémoires
30
Architecture d’un système à micro-processeur
Capacité d’une mémoire
Capacité = 2k mots = 2k.n bits
Nombre total de mots d’adresse k Nombre de bits/mot
16
31
Exemple: une mémoire dont l’adresse est codée sur 3 bits, contenant
des données de 8 bits a une capacité de:
Architecture d’un système à micro-processeur
23x8 = 64 bits = 8 octets3
8
32
MICROPROCESSEUR ROM RAM EEPROMCHIEN
DE
GARDE
TIMERS C.A.N INTERFACE
PARALLÈLE
INTERFACE
SÉRIE
BUS DONNÉES - CONTRÔLE - ADRESSES
OSCILLATEUR MÉMOIRE
PROGRAMME
MÉMOIRE
DE DONNÉE
RESETOSCIN OSCOUT
INT
TIM
ER1
TIM
ER2
PO
RT A
PO
RT B
PO
RT C
SO
UT
SC
LK
SIN
Interfaçage série/parallèle
17
33
� La transmission de données en parallèle consiste à
envoyer des données simultanément sur plusieurs
canaux (fils). Les ports parallèles présents sur les PC
permettent d'envoyer simultanément 8 bits (un octet) par
l'intermédiaire de 8 fils.
Interfaçage série/parallèle
Interfaçage parallèle
34
Interfaçage parallèle
Interfaçage série/parallèle
011
Données
Connecteur DB25
18
35
Interfaçage parallèle: débit
8-16EPP/ECP
2.4Ancienne génération
Débit (Mbits/s)Type
Interfaçage série/parallèle
Interface Firewire Interface USB
36
� Les ports séries (également appelés RS 232) représentent les premières interfaces ayant permis aux ordinateurs d'échanger des informations avec le "monde extérieur". Le terme « série » désigne un envoi de données via un fil unique: les bits sont envoyés les uns à la suite des autres.
Interfaçage série
Interfaçage série/parallèle
19
37
Interfaçage série
Interfaçage série/parallèle
0
10
Connecteur DB9
Connecteur DB25
DonnéesDonnées
38
� Connexion locale (sans modem)
� Connexion distante (avec modem)
Interfaçage série: modes de connexion
Interfaçage série/parallèle
Interfaçage série: modes de connexion
Interfaçage série/parallèle
20
39
Ligne téléphonique
Signal analogiqueSignal numérique
Interfaçage série: principe d’un modem
Interfaçage série/parallèle
40
Interfaçage série: trame de donnéesInterfaçage série: trame de données
Interfaçage série/parallèle
21
41
Interfaçage série: bit de parité
Parité paire Parité impaireParité impaireParité paire Parité impaireParité paire Parité impaire
Interfaçage série: bit de parité
Interfaçage série/parallèle
1 1 1 1 1 1 1 1
42
Interfaçage série: débit
2400900
4800300
9600150
1920015
Débit (bits/s)
Longueur de la liaison (m)
Interfaçage série/parallèle
-+
22
43
� Dispositifs matériels permettant d’assurer les échanges d’informations en entrée et en sortie entre le système à microprocesseur et l’environnement extérieur, ou de stocker des informations de manière permanente.
Périphériques d’entrée/sortie
44
Une entrée est un flux de données provenant soit :
� D’un clavier, d’une souris, d’un crayon optique,
� D’un numériseur,
� D’un convertisseur analogique/numérique,
� De tout autre périphérique prévu pour interagir avec un système informatique.
Périphériques d’entrée
Périphériques d’entrée/sortie
23
45
� Ces signaux d'entrée génèrent des Interruptions matérielles qui sont traitées en priorité par le gestionnaire d'interruptions du noyau du système d'exploitation.
Périphériques d’entrée
Périphériques d’entrée/sortie
46
Périphériques de sortie
� Écran,
� Imprimante,
� Haut-parleurs,
� Convertisseur numérique/analogique.
Périphériques d’entrée/sortie
24
47
Périphériques d’entrée-sortie
� Modem,
� Carte réseau,
� Mémoires de masse: disque dur, carte mémoire, lecteur de CD/DVD, clé USB,…
� Écran tactile.
Périphériques d’entrée-sortie
48
Périphériques d’entrée/sortie
25
49
Port
Périphériques d’entrée/sortie
� Port:
C’est un connecteur à l’extrémité d’un bus, dans lequel
est connecté un périphérique.
50
Pilote (driver)
Périphériques d’entrée/sortie
C’est le logiciel qui contrôle les périphériques d’entrée/sortie. Ils sont soit déjà installés dans le système d’exploitation, soit doivent être installés par l’opérateur.
26
51
Acquisition et commandeChaîne d’acquisition de données (exemple)
52
Acquisition et commandeEmplacement de la chaîne d’acquisition de
données
Domaine analogique Domaine numérique
27
53
Acquisition et commande
Procédé de régulation de PH
Exemple
Mesurande: PH
Ordres
Transmission
binaire
Conversion analogique
numérique
Traitement
PH-mètres
54
Acquisition et commandeChaîne d’acquisition de données (exemple)
28
55
Acquisition et commande
CapteursCapteurs
56
Acquisition et commandeChaîne d’acquisition de données (exemple)
29
57
� Le conditionneur intervient entre le capteur et l'interface
d’acquisition. Il met en forme le signal mesuré, pour le
traduire en une grandeur permettant le traitement (par
exemple : tension, courant, fréquence).
Acquisition et commande
Conditionneurs
58
Acquisition et commandeChaîne d’acquisition de données (exemple)
30
59
� L’échantillonnage d’un
signal à une fréquence fixe
permet de « prélever », à
des instants réguliers, sa
valeur analogique et de la
maintenir constante pendant
le temps de blocage.
Acquisition et commandeEchantillonnage/blocage
fe >= 2.fmax: condition de Shannon
60
Acquisition et commandeChaîne d’acquisition de données (exemple)
31
61
� La quantification, affecte à chacun des échantillons du signal analogique une valeur approchée, codée sur un nombre fini de bits. Le choix du nombre de bits dépend de la précision requise.
� L’opération de quantification est assurée par un convertisseur analogique-numérique (C.A.N).
Acquisition et commande
Quantification/codage (définition)
62
Acquisition et commandeQuantification/codage
32
63
• Le convertisseur analogique-numérique va transformer une certaine plage d’entrée en une valeur numérique.
• La résolution correspond à la plus petite variation possible entre 2 valeurs successives.
C.A.N. (définition)
Acquisition et commandeQuantification/codage
64
� Si le signal est monopolaire, il va convertir une tension d’entrée variant de 0 à VM en une valeur numérique:
– La valeur 0 correspond à 0;– La valeur maximum VM correspond à 2n.
– La résolution est donnée par:
C.A.N. (résolution)
Acquisition et commande
2
M
n
Vr =
Quantification/codage
33
65
� Si le signal est bipolaire, il va convertir une tension d’entrée variant de -VM à VM en une valeur numérique:
– La valeur -VM correspond à 0;– La valeur maximum VM correspond à 2n.
– La résolution est donnée par:
C.A.N. (résolution)
2
2
M
n
Vr =
Acquisition et commandeQuantification/codage
66
� Signal monopolaire: VM = 10 V
3 bitsr = 1.25
4 bits r = 0.625
2
M
n
Vr =
Acquisition et commandeQuantification/codage (exemple)
34
67
Tension (V)
code
8.757.56.2553.752.51.250
111110101100011010001000
Tension (V)
code
Tension (V)
code
9.3758.758.1257.56.8756.255.6255
11111110110111001011101010011000
4.3753.753.1252.51.8751.250.6250
01110110010101000011001000010000
Codage à 3 bits
Codage à 4 bits
Quantification/codage (exemple)
Niveau de tension VS code binaire
68
Acquisition et commandeQuantification/codage (exemple)
8.75
9.375
35
69
EXEMPLE CORRIGE DE QUANTIFICATION ET DE
CODAGE D’UN SIGNAL
T = 2.25 msf = 444.44 Hz
36
71
Te = 0.1 msfe = 10 kHz
72
Condition de Shannon
25.22f
f e>>=
� Condition vérifiée
37
73
)kTT
2sin(9.0)kT(S)t
T
2sin(9.0)t(S ee
π=⇒
π=
)k088.0sin(9.0)kT(S044.0T
Te
eπ=⇒=
Équation du signal
74-
0.18
-
0.414S(k)
2221k
-0.616
-0.772
-0.869
-0.9
-0.863
-0.76
-0.599S(k)
20191817161514k
-0.393
-0.1580.090.3310.5470.7210.841S(k)
13121110987k
0.8970.8840.8050.6640.4730.2480S(k)
6543210k
Valeurs des échantillons
38
75
Calcul de la résolution
8 niveaux⇒CAN à n = 3 bits
225.02
9.02
2
V2R
3n
M=
×==
Signal bipolaire
76
0.675S(V)
111Code
0.450.2250-0.225-0.45-0.675-0.9S(V)
110101100011010001000Code
Codage des niveaux du signal
39
77
-0.18
-0.414S(k)
2221k
-
0.616
-
0.772
-
0.869
-
0.9
-
0.863
-
0.76
-
0.599S(k)
20191817161514k
-
0.393
-
0.1580.090.3310.5470.7210.841S(k)
13121110987k
0.8970.8840.8050.6640.4730.2480S(k)
6543210k
Codage d’un échantillon
0.45 V<= 0.664 V <= 0.675 V
78
0.675S(V)
111Code
0.450.2250-0.225-0.45-0.675-0.9S(V)
110101100011010001000Code
Codage d’un échantillon
0.664 V ���� code 110
40
79011010Code
2221k
001000000000000000001Code
20191817161514k
010011100101110111111Code
13121110987k
111111111110110101100Code
6543210k
Codage de tous les échantillons du signal
80
Allure du signal quantifié
000
001
010
011
100
101
110
111