Sunteți pe pagina 1din 31

Systèmes

numériques de contrôle-
commande pour la mécatronique
INSA Strasbourg spécialité Mécatronique
Informatique Industrielle
Laurent Barbé, Laboratoire ICube

Informatique Industrielle 1
Avant-propos
• Laurent Barbé, ingénieur de recherche au Laboratoire ICube. Ingénieur en
conception du contrôle-commande pour les systèmes robotiques
• 4 séances Cours/TD (1h30) : 7/10, 14/10, 21/10 et 4/11
• 5 séances Suivi Projet (3h) :
• 2 groupes :
• Groupe 1 : étudiants master 14/11 28/11 05/12 12/12 (M et AM)
• Groupe 2 : étudiants non master 16/11 30/11 07/12 (M et AM) 14/12
• Prérequis :
• Notions de base en robotique : MGD, MGI, MCD
• Utilisateur LabView et outils National Instrument
• Programmation en C
• Notions de logique combinatoire
• Base en automatique et synthèse de correcteur

Informatique Industrielle 2
Objectifs

• Comprendre les concepts de base de l’informatique industrielle


• Architecture matérielle
• Bus de communication
• Interaction avec les périphériques
• Utilisation dans le cadre d’un système mécatronique simple
• Contrôle/commande sur un système poly articulé
• Implémentation de loi de commande
• Commande des systèmes robotiques

Informatique Industrielle 3
Plan

1. Evolution des besoins dans l’industrie


2. Présentation des systèmes numériques de contrôle-commande
3. Les systèmes informatiques temps-réel
4. Chaîne de contrôle d’un système robotique
5. Mise en œuvre sur un exemple et présentation du projet

Informatique Industrielle 4
L’informatique dans l’évolution industrielle
DEGRE DE COMPLEXITE ET D’INTEGRATION

1ière 2nd 3ième 4ième


Mécanisation Electrification Automatisation Cyber Systèmes
Machine à vapeur, Production en masse, Robotique, Internet Industriel,
Energie hydraulique et Energie Electrique Electronique, Automate Réseaux, Production
fossile Ligne d’assemblage personnalisée

1800 1900 2000 2016

Automatique Informatique
Internet
Informatique Industrielle 5
Au début du siècle ....

Informatique Industrielle 6
… aujourd’hui

Informatique Industrielle 7
Exemple d’applications : automobile …

Source http://www.lembarque.com Informatique Industrielle 8


Exemple d’applications : robotique Industrielle
1949 : TME Goertz
1954 : TME Goertz 1974 : T3 The Tomorrow
1973 : KUKA 6-DDL
1959 : Unimate Tool 2006: LWR KUKA
1981 : Premier robot commandé en
1992: Premier robot Delta
1984 : Premier robot SCARA
1978 : Programmable Universal
direct drive
Machine for Assembly (PUMA)

Robotique
Multiplication
personnelle et
Automatique Informatique des applications
ludique

1949 1954 1959 1973 1974 1978 1981 1984 1992 2006 2014

1 à 1,3 millions de robots travaillent


Informatique Industrielle dans les usines dans le monde
9
… autres applications

Informatique Industrielle 10
Systèmes numériques de contrôle-commande
Informatique Industrielle 11
Qu’est-ce que c’est ?
Définition : Rôle d'un système de commande
Un système numérique de contrôle-commande (SNCC, ou DCS pour Distributed Control
System) est une structure programmable utilisée pour le pilotage d'un procédé industriel. Un
SNCC est doté d'une interface homme-machine pour la supervision et d'un réseau de
communication numérique pour l'interface avec les différents éléments de son
environnement tels que, par exemple, les capteurs ou les autres cartes de commande
associées à des sous-systèmes.

Capteurs
Systèmes numériques
Actionneurs
Compteurs

Informatique Industrielle 12
Système de contrôle-commande
Système informatique
Mesures
Entrées interruptions

Capteurs

Procédé externe à Système de


Procédé externe
piloter contrôle-commande
Actionneurs

Sorties
Commandes
Un système de contrôle-commande
interruptionsreçoit des informations sur l’état du
procédé externe, traite ces données et, en fonction du résultat, évalue une
décision qui agit sur cet environnement extérieur afin d’assurer un état stable
Systèmes Temps réel de contrôle-commande, F. Cottet et E. Grolleau, DUNOD Edition
Informatique Industrielle 13
Le matériel d’un SNCC
Informatique Industrielle 14
Processeur
Processeur (Unité Centrale de Traitement – CPU Central Processing Unit)
Horloge
Processeur RAM
Mémoire Principale
Clavier/Souris

Registre
Décodeur
Instruction Codes
Unité de d’Entrées/Sorties

instructions
Unité de commande
Séquenceur Compteur Programme
ordinal
Bus de
données
Informations
Codées en Données
binaires U.A.L binaires
Unité de traitement
Registres
Bus d’adresse Données
(U.A.L) Généraux
Ecran

Informatique Industrielle 15
Processeur
Exécution des instructions par un processeur
• Développer à un programme qu’il a compilé
• Le programme est sous forme d’instructions machine et au moment de l’exécution
les instructions et les données sont chargés en mémoire centrale.
• Le compteur ordinal est chargé avec l’adresse en Mémoire centrale du mot
contenant la première instruction du programme.
• L’exécution du programme se fait instruction par instruction, sous le pilotage de
l’unité de commande du processeur.
• Le traitement d’une instruction par le processeur se découpe en trois étapes :
• FETCH : l’instruction est lue en mémoire centrale et copiée dans le registre
d’instruction du processeur ;
• DECODAGE : l’instruction est reconnue par l’unité de décodage
• EXECUTION : l’opération correspondant à l’instruction est réalisée
Informatique Industrielle 16
Processeur
Fonctionnement (exemple sur processeur type PENTIUM)
Programme en langage haut niveau Programme en langage assembleur
Code Machine (dépandant de la machine)
(indépendant de la machine)
Si i > j alors
A1 E4 A6 40 00
A1 E4 A6 40 00 mov eax,dword ptr
i:= i-1 Compilation 8B 0D E0 A6 Instruction
40 00 mov ecx,dword ptr
Sinon i := i+5
CODOP spécifique à la
83 C4 10 add esp,10h
Fin si machine 3B C1 cmp eax,ecx
7E 03 jle 401033h
48 dec eax
Compteur ordinal exécute la portion EB 03 jmp 401036h
de programme à l’adresse add eax,5
0x0040101E mov dword ptr

Informatique Industrielle 17
Processeur
Fonctionnement (exemple sur processeur type PENTIUM)
Programme en langage haut niveau Programme en langage assembleur
(indépendant de la machine) Code Machine (dépandant de la machine)

Si i > j alors A1 E4 A6 40 00 mov eax,dword ptr


i:= i-1 Compilation 8B 0D E0 A6 40 00 mov ecx,dword ptr
Sinon i := i+5 83 C4 10 add esp,10h
Fin si 3B C1 cmp eax,ecx
7E 03 jle 401033h
48 dec eax
Compteur ordinal exécute la portion EB 03 jmp 401036h
de programme à l’adresse add eax,5
0x00401023
0x0040102C
0x00401029
0x0040102E mov dword ptr

Informatique Industrielle 18
Processeur
Fonctionnement (Notions complémentaires)
• Deux grandes familles CISC (Complex Instruction Set Computer) ou RISC (Reduced
Instruction Set Computer)
• Algèbre de Boole (1815-1864) :
• Algèbre permettant de réaliser des opérations booléennes sur des binaires (Vrai
ou Faux)
• AND, OR, XOR NOT, NAND, NOR, EGAL IDENTITE etc.
• Représentation de l’information
• Binaire à Octale à hexadécimale
• Nombre entiers positifs (sur base 8 bits (char) 16 bits (int) 32 bits (long))
• Opérations arithmétiques et logiques
• Code ASCII (American Standard Code for Information Interchange)
• Nombre à virgules flottantes (co-processeur dédié)
Informatique Industrielle 19
Microcontrôleur
Circuit imprimé qui Intègre un maximum
de fonctionnalités pour faciliter la mise
en œuvre.

Microcontrôleur AVR 32 bits

Informatique Industrielle 20
Microcontrôleur
Avantages
Carte de développement
Cout réduit et d’interfaçage avec
l’environnement extérieur
Encombrement moindre
Fiabilité
Mise en œuvre plus simple
Consommation plus faible

Attention

Ne pas confondre PC et
microcontrôleur

Informatique Industrielle 21
Nano-ordinateur

EN EVOLUTION CONSTANTE

Raspberry Pi
Arduino
- Processeur ARM Architectures
- Microcontrôleur Atmel AVR
matérielles RISC 32 bits
- Programmation multiplateforme
- Système d’exploitation LINUX
- Nombreuses Entrées-Sorties
- Nombreuses Entrées-Sorties

Informatique Industrielle 22
Les entrées/sorties
Communication Processeur Entrées/Sorties

• Deux possibilités pour le processeur :


1. Attente active ou polling
• Le processeur vérifie en permanence ce qui arrive sur une entrée, sans
savoir si les données sont intéressantes.
• Lorsque le processeur reçoit les données, il effectue le traitement et
retourne en attente active.
• Le processeur est toujours « busy »
2. Interruptions
• Quand le système externe est prêt et qu’il a besoin du processeur, il
l’informe par un signal d’interruption
• Selon la priorité de la tâche, le processeur arrête l’exécution courante

Informatique Industrielle 23
Les entrées/sorties
Communication Processeur avec les entrées/Sorties

Attente active (Polling) Interruption Signal


Interruption
Tant que (1)
Etat du périphérique

Exécution_normale
Si état == vrai Instruction k
Exécution routine
Fin Si Exécution routine
Exécution_normale interruption
Fin tant que Instruction k+1
INTERRUPTIONS LOGICIELLES
PEUVENT ETRE BLOQUANTES

Informatique Industrielle 24
Bus d’entrées/Sorties
Slots mémoires

Contrôleur Câbles et
graphique ports
intégré externes

mémoire

Souris
Lecteur Carte
Port Série
Port Parallèle

Clavier
Chipset

Bus
Super I/O

Bus

PCI
Northbridge Southbridge

Mémoire
USB
Ethernet

CMOS
IDE
SATA
Bus
Processeur (contrôleur interne
(contrôleur
mémoire) d’entrées/sorties)

Générateur ROM flash

Bus
AGP PCIe

PCI
d’horloge (BIOS)
Bus

Slots PCI

Slots AGP ou PICe


Source Wikipédia

Informatique Industrielle 25
Les bus d’entrées/Sorties
Classification
ISA/EISA Industry Standard Architecture 8Mo/s

PCI Peripheral Component Interconnect (1990) 264 Mo/s

AGP Advanced Graphic Port 2,1Go/s BUS INTERNE


PARALLELE
ATA/IDE Advanced Technology Attachment/Integrated Drive Electronics 133 Mo/s

SCSI Small Computer System Interface 320 Mo/s

PCIe Peripheral Component Interconnect Express 8 Go/s

SATA Advanced Graphic Port 600 Mo/s


BUS INTERNE
SERIE
SCSI série Small Computer System Interface

USB Universal Serial Bus 1,2 Go/s (3.1)

IEEE1394 Firewire 400 Mo/s BUS EXTERNE


Ethernet >10 Go/s

Informatique Industrielle 26
Les types de signaux
ENTREES ANALOGIQUES
Représentent la variation d’une grandeur
Pré-conditionnement
physique en tension électrique

Capteur
A de température

4-20 mA
-10/+10 V Capteur
A de position
Bus Données 0/5 V (potentiomètre)

Capteur
C.A.N. A de pression
Echantillonn
Codage Quantification age
temporel
Informatique Industrielle 27
Les types de signaux
SORTIES ANALOGIQUES
Représentent la variation d’une
grandeur physique en tension
électrique
Servovanne
A

4-20 mA
-10/+10 V Moteur
A
Bus Données

C.N.A

Informatique Industrielle 28
Les types de signaux
ENTREES NUMERIQUES
Signal qui varie de façon discrète
dans le temps. C’est une succession
d’état haut ou d’état bas
Codeur incrémental

Bus Données
24 V
Tout Ou Rien (TOR)

Informatique Industrielle 29
Les types de signaux
SORTIES NUMERIQUES
Signal qui varie de façon discrète
dans le temps. C’est une succession
d’état haut ou d’état bas

5V
Bus Données
0V

Informatique Industrielle 30
Les types de signaux
Capteur
de position A
(potentiomètre)

Capteur
Atelier 2
de température
A Contrôleur Digital
Moteur C.C
+ Puissance

Atelier 1 Position

Contrôleur Digital
Moteur C.C
+ Puissance

Position

Supervision Contrôleur Digital


Moteur C.C
Bus BUS DE TERRAIN + Puissance
Données Position

Atelier 3

Informatique Industrielle 31

S-ar putea să vă placă și