systèmes numériques de contrôle - commande pour la...
TRANSCRIPT
Systèmesnumériquesdecontrôle-commandepourlamécatronique
INSAStrasbourgspécialitéMécatroniqueInformatiqueIndustrielle
LaurentBarbé,LaboratoireICube
InformatiqueIndustrielle 1
• LaurentBarbé,ingénieurderechercheauLaboratoireICube.Ingénieurenconceptionducontrôle-commandepourlessystèmesrobotiques• 4séancesCours/TD(1h30):7/10,14/10,21/10et4/11• 5séancesSuiviProjet(3h):
• 2groupes:• Groupe1:étudiantsmaster14/1128/1105/1212/12(MetAM)• Groupe2:étudiantsnonmaster16/1130/1107/12(MetAM)14/12
• Prérequis:• Notionsdebaseenrobotique:MGD,MGI,MCD• UtilisateurLabViewetoutilsNationalInstrument• ProgrammationenC• Notionsdelogiquecombinatoire• Baseenautomatiqueetsynthèsedecorrecteur
Avant-propos
InformatiqueIndustrielle 2
• Comprendrelesconceptsdebasedel’informatiqueindustrielle• Architecturematérielle• Busdecommunication• Interactionaveclespériphériques
• Utilisationdanslecadred’unsystèmemécatroniquesimple• Contrôle/commandesurunsystèmepolyarticulé• Implémentationdeloidecommande• Commandedessystèmesrobotiques
Objectifs
InformatiqueIndustrielle 3
1. Evolutiondesbesoinsdansl’industrie2. Présentationdessystèmesnumériquesdecontrôle-commande3. Lessystèmesinformatiquestemps-réel4. Chaînedecontrôled’unsystèmerobotique5. Miseenœuvresurunexempleetprésentationduprojet
Plan
InformatiqueIndustrielle 4
L’informatiquedansl’évolutionindustrielle
InformatiqueIndustrielle 5
1ière 2nd 3ième 4ième
MécanisationMachineàvapeur,
Energiehydrauliqueetfossile
ElectrificationProductionenmasse,EnergieElectriqueLigned’assemblage
AutomatisationRobotique,
Electronique,Automate
CyberSystèmesInternetIndustriel,Réseaux,Production
personnalisée
1800 1900 2000 2016
DEGREDECOMPLEXITEETD’INTEGRATION
InformatiqueAutomatique Internet
Audébutdusiècle....
InformatiqueIndustrielle 6
…aujourd’hui
InformatiqueIndustrielle 7
Exempled’applications:automobile…
InformatiqueIndustrielle 8Sourcehttp://www.lembarque.com
Exempled’applications:robotiqueIndustrielle
InformatiqueIndustrielle 9
1949:TMEGoertz1954:TMEGoertz1959:Unimate1973:KUKA6-DDL1974:T3TheTomorrow Tool
1949 1954 1959 1973 1974 1978
1978:ProgrammableUniversalMachineforAssembly (PUMA)
1981:Premierrobotcommandéendirectdrive
1981
1984:PremierrobotSCARA
1984
Automatique Informatique
1992:PremierrobotDelta
1992
Multiplicationdesapplications
2006:LWRKUKA
2006
Robotiquepersonnelleet
ludique
2014
1à1,3millionsderobotstravaillentdanslesusinesdanslemonde
…autresapplications
InformatiqueIndustrielle 10
Systèmesnumériquesdecontrôle-commandeInformatiqueIndustrielle 11
Qu’est-cequec’est?
InformatiqueIndustrielle 12
Un système numérique de contrôle-commande (SNCC, ou DCS pour Distributed ControlSystem) est une structure programmable utilisée pour le pilotage d'un procédé industriel. UnSNCC est doté d'une interface homme-machine pour la supervision et d'un réseau decommunication numérique pour l'interface avec les différents éléments de sonenvironnement tels que, par exemple, les capteurs ou les autres cartes de commandeassociées à des sous-systèmes.
Définition:Rôled'unsystèmedecommande
CapteursSystèmesnumériques
ActionneursCompteurs
Systèmedecontrôle-commande
InformatiqueIndustrielle 13
Systèmedecontrôle-commandeProcédéexterne
Entrées
Sorties
Systèmeinformatique
Un système de contrôle-commande reçoit des informations sur l’état duprocédé externe, traite ces données et, en fonction du résultat, évalue unedécision qui agit sur cet environnement extérieur afin d’assurer un état stable
SystèmesTempsréeldecontrôle-commande,F.CottetetE.Grolleau,DUNODEdition
Systèmedecontrôle-commande
Procédéexterneàpiloter
Capteurs
Actionneurs
Mesuresinterruptions
Commandesinterruptions
Lematérield’unSNCCInformatiqueIndustrielle 14
Processeur
InformatiqueIndustrielle 15
Processeur(UnitéCentraledeTraitement– CPUCentralProcessing Unit)
Unitéded’Entrées/Sorties
Clavier/SourisEcran
InformationsCodéesenbinaires
Horloge
Processeur MémoirePrincipale
Programme
Données
Unitédecommande
Unitédetraitement(U.A.L)
Codesinstructions
Donnéesbinaires
ProcesseurDécodeur Registre
Instruction
Séquenceur Compteurordinal
RegistresGénéraux
U.A.L
Busdedonnées
Busd’adresse
RAM
Processeur
InformatiqueIndustrielle 16
Exécutiondesinstructionsparunprocesseur• Développerà unprogrammequ’ilacompilé• Leprogrammeestsousformed’instructionsmachineetaumomentdel’exécution
lesinstructionsetlesdonnéessontchargésenmémoirecentrale.• Lecompteurordinalestchargéavecl’adresseenMémoirecentraledumot
contenantlapremièreinstructionduprogramme.• L’exécutionduprogrammesefaitinstructionparinstruction,souslepilotagede
l’unitédecommandeduprocesseur.• Letraitementd’uneinstructionparleprocesseursedécoupeentroisétapes:• FETCH:l’instructionestlueenmémoirecentraleetcopiéedansleregistre
d’instructionduprocesseur;• DECODAGE:l’instructionestreconnueparl’unitédedécodage• EXECUTION:l’opérationcorrespondantàl’instructionestréalisée
Processeur
InformatiqueIndustrielle 17
Fonctionnement(exemplesurprocesseurtypePENTIUM)
Si i > j alors i:= i-1Sinon i := i+5Fin si
A1 E4 A6 40 00 8B 0D E0 A6 40 00 83 C4 103B C17E 0348EB 03
Programmeenlangagehautniveau(indépendantdelamachine) CodeMachine
Compilationmov eax,dword ptrmov ecx,dword ptradd esp,10hcmp eax,ecxjle 401033hdec eaxjmp 401036hadd eax,5mov dword ptr
Programmeenlangageassembleur(dépandant delamachine)
Compteurordinalexécutelaportiondeprogrammeàl’adresse
0x0040101E
A1E4A64000CODOPspécifiqueàlamachine
Instruction
Processeur
InformatiqueIndustrielle 18
Fonctionnement(exemplesurprocesseurtypePENTIUM)
Si i > j alors i:= i-1Sinon i := i+5Fin si
A1 E4 A6 40 00 8B 0D E0 A6 40 00 83 C4 103B C17E 0348EB 03
Programmeenlangagehautniveau(indépendantdelamachine) CodeMachine
Compilationmov eax,dword ptrmov ecx,dword ptradd esp,10hcmp eax,ecxjle 401033hdec eaxjmp 401036hadd eax,5mov dword ptr
Programmeenlangageassembleur(dépandant delamachine)
Compteurordinalexécutelaportiondeprogrammeàl’adresse
0x00401023
Compteurordinalexécutelaportiondeprogrammeàl’adresse
0x00401029
Compteurordinalexécutelaportiondeprogrammeàl’adresse
0x0040102C
Compteurordinalexécutelaportiondeprogrammeàl’adresse
0x0040102E
Processeur
InformatiqueIndustrielle 19
Fonctionnement(Notionscomplémentaires)• DeuxgrandesfamillesCISC(Complex InstructionSetComputer)ouRISC(Reduced
InstructionSetComputer)• AlgèbredeBoole(1815-1864):• Algèbrepermettantderéaliserdesopérationsbooléennessurdesbinaires(Vrai
ouFaux)• AND,OR,XORNOT,NAND,NOR,EGALIDENTITEetc.
• Représentationdel’information• Binaireà Octaleà hexadécimale• Nombreentierspositifs(surbase8bits(char)16bits(int)32bits(long))
• Opérationsarithmétiquesetlogiques• CodeASCII(AmericanStandardCodeforInformationInterchange)• Nombreàvirgulesflottantes(co-processeur dédié)
Microcontrôleur
InformatiqueIndustrielle 20
CircuitimpriméquiIntègreunmaximumdefonctionnalitéspourfaciliterlamiseenœuvre.
MicrocontrôleurAVR32bits
Microcontrôleur
InformatiqueIndustrielle 21
Avantages
CoutréduitEncombrementmoindreFiabilitéMiseenœuvreplussimpleConsommationplusfaible
Attention
NepasconfondrePCetmicrocontrôleur
Cartededéveloppementetd’interfaçageavecl’environnementextérieur
Nano-ordinateur
InformatiqueIndustrielle 22
Raspberry Pi- ProcesseurARMArchitectures
matériellesRISC32bits- Systèmed’exploitationLINUX- NombreusesEntrées-Sorties
Arduino- MicrocontrôleurAtmel AVR- Programmationmultiplateforme- NombreusesEntrées-Sorties
ENEVOLUTIONCONSTANTE
Lesentrées/sorties
InformatiqueIndustrielle 23
CommunicationProcesseurEntrées/Sorties
• Deuxpossibilitéspourleprocesseur:1. Attenteactiveoupolling
• Leprocesseurvérifieenpermanencecequiarrivesuruneentrée,sanssavoirsilesdonnéessontintéressantes.
• Lorsqueleprocesseurreçoitlesdonnées,ileffectueletraitementetretourneenattenteactive.
• Leprocesseuresttoujours« busy »2. Interruptions
• Quandlesystèmeexterneestprêtetqu’ilabesoinduprocesseur,ill’informeparunsignald’interruption
• Selonlaprioritédelatâche,leprocesseurarrêtel’exécutioncourante
Lesentrées/sorties
InformatiqueIndustrielle 24
Attenteactive(Polling)
Tant que (1)Etat du périphériqueSi état == vrai
Exécution routineFin SiExécution_normale
Fin tant que
Interruption
Exécution_
norm
ale
SignalInterruption
Exécutionroutineinterruption
Instructionk
Instructionk+1
INTERRUPTIONSLOGICIELLESPEUVENTETREBLOQUANTES
CommunicationProcesseuraveclesentrées/Sorties
Busd’entrées/Sorties
InformatiqueIndustrielle 25
ProcesseurNorthbridge(contrôleurmémoire)
Générateurd’horloge
Southbridge(contrôleur
d’entrées/sorties)
IDE
SATA
USB
Ethe
rnet
Mém
oire
CMOS
Contrôleurgraphiqueintégré
PortSérie
PortParallèle
Lecteu
rCarte
Clavier
Souris
SuperI/O
ROMflash(BIOS)
Slotsmémoires
Bus
mém
oire
Businterne
Câblesetports
externes
Bus
PCI
Bus
PCI
SlotsPCI
SlotsAGPouPICe
Bus
AGPPC
Ie
SourceWikipédia
Chipset
Lesbusd’entrées/Sorties
InformatiqueIndustrielle 26
ClassificationISA/EISA Industry StandardArchitecture 8Mo/s
PCI Peripheral ComponentInterconnect (1990) 264Mo/s
AGP Advanced Graphic Port 2,1Go/s
ATA/IDE AdvancedTechnology Attachment/IntegratedDriveElectronics 133Mo/s
SCSI SmallComputerSystemInterface 320Mo/s
PCIe Peripheral ComponentInterconnect Express 8Go/s
SATA Advanced Graphic Port 600Mo/s
SCSIsérie SmallComputerSystemInterface
BUSINTERNEPARALLELE
BUSINTERNESERIE
USB UniversalSerialBus 1,2Go/s(3.1)
IEEE1394 Firewire 400Mo/s
Ethernet >10Go/s
BUSEXTERNE
Lestypesdesignaux
InformatiqueIndustrielle 27
BusDonnées
CapteurdetempératureA
4-20mACapteurdeposition(potentiomètre)
A-10/+10V
CapteurdepressionA
0/5V
ENTREESANALOGIQUESReprésententlavariationd’unegrandeurphysiqueentensionélectrique
C.A.N.
Pré-conditionnement
Codage QuantificationEchantillonn
agetemporel
Lestypesdesignaux
InformatiqueIndustrielle 28
BusDonnées
4-20mA
-10/+10V
SORTIESANALOGIQUESReprésententlavariationd’unegrandeurphysiqueentensionélectrique
C.N.A
A
A
Servovanne
Moteur
Lestypesdesignaux
InformatiqueIndustrielle 29
BusDonnées
ENTREESNUMERIQUESSignalquivariedefaçondiscrètedansletemps.C’estunesuccessiond’étathautoud’étatbas
Codeurincrémental
24VToutOuRien(TOR)
Lestypesdesignaux
InformatiqueIndustrielle 30
BusDonnées
SORTIESNUMERIQUESSignalquivariedefaçondiscrètedansletemps.C’estunesuccessiond’étathautoud’étatbas
0V
5V
Lestypesdesignaux
InformatiqueIndustrielle 31
BusDonnées
Capteurdetempérature
Capteurdeposition(potentiomètre)
A
A ContrôleurDigitalMoteurC.C+Puissance
Position
ContrôleurDigitalMoteurC.C+Puissance
Position
ContrôleurDigitalMoteurC.C+Puissance
Position
Atelier1
Atelier2
Atelier3
SupervisionBUSDETERRAIN