Vous êtes sur la page 1sur 28

Centre de Dveloppement des Technologies Avances Dpartement de Robotique et Productique Juillet 2004

Compte rendu de stage : Introduction aux Automates Programmables Industriels et application sur la programmation dun banc de contrle industriel

Stage effectu par : TADIRT HASSEN Etudiant en 3me Anne AUTOMATIQUE LENP Dirig par Mr : Fethi Mohammed SAIHI Chercheur au CDTA

Table des matires : IIIIIIIVVVIVIIIntroduction et gnralits Architecture interne des API Programmation des API Etude dun Banc de Contrle Industriel Prsentation de lautomate programmable S5-115U Programmation du banc de contrle industriel Conclusion Bibliographie 3 5 9 13 17 20 28 28

Un merci toute lquipe du dpartement de Robotique et Productique pour leur sympathie.

Introduction et gnralits :

La comptition conomique que nous connaissons impose lindustrie de produire en qualit et en quantit pour rpondre la demande dans un environnement trs concurrentiel. En terme dobjectifs, il sagit : - de produire la qualit constante ; - de fournir les quantits ncessaires au bon moment ; - daccrotre la productivit et la flexibilit de loutil. Autrement dit, il est important de tenir un march, mais aussi de pouvoir en suivre lvolution : diminution des cot, complexit technologique croissante. A ces critres, il convient dajouter lamlioration des conditions de travail qui simpose progressivement comme un objectif essentiel. Technologies des automatismes : Lautomaticien dispose de nombreux outils technologiques pour raliser lorgane de commande de son systme que lon regroupe habituellement en deux catgories fondamentales : Les solutions cbles et les solutions programmes.

Solutions cbles : Les outils cbls sont caractriss pas une mise en uvre ncessitant uniquement, mais ncessairement, ltablissement de liaisons matrielles (cblage) selon un schma fourni par la thorie ou par lexprience.

Des outils de toute technologies sont largement utiliss dans lindustrie o lon apprcie leurs qualits prouves. Ils souffrent cependant dun certain nombre de limitations parmi lesquelles nous retiendrons : - leur encombrement (poids et volume) ; - leur manque de souplesse vis--vis de la mise au point des commandes et de lvolution de celle-ci (amlioration, nouvelles fonctions,) ; - la difficult de matriser des problmes complexes ; - le cot de rutilisation des composants ; - la complexit de recherche des pannes et donc du dpannage ; - une rentabilit financire limite aux fonctions simple (20 30 relais) en raison de lapparition de technologies programmables. Solutions programme : Les logiques programmables se distinguent par un seuil de rentabilit constamment dcroissant, au point que, dsormais, leur emploi puisse tre envisag sur des systmes trs petits comportant de lordre dune vingtaine de relais. Elles se partagent le march galit avec les outils cbls. Les logiques programmables sont des outils informatiques, cest--dire des machines destines traiter de linformation (linformatique tant la science du traitement de linformation). Leur utilisation en gestion et en calcul scientifique est connue. Les applications techniques relves de linformatique industrielle : Linformatique industrielle est une discipline conjuguant les thories de lautomatique et les moyens de linformatique dans le but de rsoudre des problmes de nature industrielle.

Linformatique offre une alternative technologique lautomaticien et lui offre des possibilits nouvelles lies la puissance de traitement et aux facilits de mmorisation de linformation. Depuis 1970 environ, lautomaticien dispose dun outil spcialis : Lautomate Programmable Industriel (API). Un automate programmable industriel est une machine lectronique, programmable par un personnel non informaticien et destin piloter, en ambiance industriel et en temps rel, des procds logiques squentiels.

II

Architecture interne des API :

Larchitecture interne des API est spcifique chaque modle. Un API est constitu dun processeur et dune mmoire ; et un ensemble dautre dispositifs qui assurent les fonctions telles que la communication avec lextrieur, ladaptation des signaux, etc.

Lunit centrale (UC) : LUC est lensemble des dispositifs ncessaires au fonctionnement logique internes de lAPI. Cest le cerveau de la machine. Son but est le traitement de linformation : transfert, mise en formes (transcodage, conversion), calculs et linterprtation et ceci travers un BUS. La longueur du BUS est adapte aux informations qui y circules ; son dbit doit permettre dviter les conflits dinformations tout en permettant un change rapide.

PROCESSEUR : Ensemble fonctionnel charg dassurer le contrle de lensemble de la machine et effectuer les traitements demands par les instructions des programmes.

Un registre est une mmoire rapide auquel on affecte des dispositifs logiques pour la manipulation des informations quelle contient ou la combinaisons dinformations extrieurs avec les informations quelle contient. Cest donc une mmoire active dont le rle est lexcution de certaines fonctions de traitement ou de service. Les diffrents lments dune UC sont : Compteur ordinal : dcrit la zone mmoire o est rang le programme actuellement actif ; Registre instruction : reoit de la mmoire centrale linstruction excuter. Il est constitu de 2 parties : Le code opration (CO), et ladresse oprande (AO) ; Registre dtat : Registre dans lequel chaque bit conditionne la situation de la machine chaque instant ; Registre index : Contient la base dadressage ventuelle ; Registre accumulation : Registre ou seffectue les oprations du jeu dinstruction de lUC ; Registres gnraux : Autres registres, accessibles ou non lutilisateur (ex : PILES).

Le processeur est aussi constitu de piles ; cest un ensemble ordonn dinformations et dune politique de leurs acquisition (empilement) et de leurs restitution (dpilement) ; quils soit de type LIFO (Last In First Out) ou FIFO (First In First Out). Ils sont forms de registres cbls ou mots mmoires grs par un logiciel spcialis. Le transfert dinformations se fait en parallle. Lintgralit des informations changs est tests aprs chaque transfert. LA MEMOIRE CENTRALE : Cest une partie de lUC ; conue pour contenir toutes les informations ncessaires au fonctionnement du systme et son exploitation. Une partie est rserve au logiciel de base. Sans ce dernier, lutilisateur serai oblig de programmer en langage machine. Elle contient aussi le logiciel dapplication ; ensemble des programmes raliss par lutilisateur pour lexploitation du systme. Elle mmorise aussi les donnes qui sont utiliss ou produites par les programmes dapplication.

DEROULEMENT DUNE INSTRUCTION : Lexcution dune instruction seffectue en trois tapes : a) Recherche de linstruction (Grce au pointeur); b) Recherche de loprande ; c) Incrmentation du compteur.

LES E/S : Cest lensemble des constituants permettant lchange dinformation entre lAPI et le monde extrieur. Les interfaces entre le procd et la logique interne dun automate sont assurs par des cartes lectroniques appels Coupleurs. Ces derniers sont en gnral groups avec lUC, mais sont modulaires par cartes ou rack, comme ils peuvent se sparer de lUC et se prsentent dans un support spar. Les dispositifs dE/S peuvent, selon la version, sloigner gographiquement de la machine. Les E/S peuvent se faire en courant ou en tension, en continu ou en alternatif. Types dE/S : TOR : Tout Ou Rien ; adaptes au milieu parasit ; E/S numriques ; E/S spciales ( Compteurs et temporisations, Entres logiques seuil ajustable, E/S analogiques, Cartes de rgulation PID, sorties alarmes,). CYCLE DUN API : Lors dun cycle, lAPI gre :

1/ Les fonctions systmes :gestions internes, auto diagnostic, change avec lextrieur (E/S) et le dpistage derreurs (Error trapping) ; 2/ Traitement spcifis par les programmes. La dure du cycle est dpendante du nombres dE/S, de la longueur du programme et de la vitesse intrinsque de lAPI. Les changes entre les divers modules de lautomate pendant le droulement dun cycle sont synchroniss par lhorloge interne et commands par les signaux de contrle. Trois lments sont susceptibles de conditionner la structure du cycle, c--d la rpartition des diverses phases de travail au cours de son droulement : Politique dacquisition des E/S ; Lutilisation dinstructions de saut ; Prsence ventuelle de calculs numriques. On peut citer, titre dexemple, le cycle lmentaire : Lecture des entres-Traitement des donnes- Dfinition des sortie ; ou le cycle entres groupes, sorties distribues la demande : Lecture des entres Traitement des donnes dfinition des sorties Traitement des donnes dfinition des sorties , Remarquons que les trois tats : lecture entres, dfinition sortie, Traitement des donnes; ne sont quune partie du cycle. LAPI effectue un rafrachissement des donnes chaque nouveau cycle.

III

Programmation des API :

Le langage des API est orient problme : cest un langage trs volu et adapt - la nature des donnes du cahier des charges ; - aux formes dtudes et de raisonnement de lautomaticien ; il est donc accessible aux non- informaticiens, en particulier aux automaticiens. Mais plus que cela, la machine elle-mme est spcialise, par sa conception, pour rsoudre une gamme de problmes particuliers. Nous dirons donc que lAPI est une machine oriente problme. Les formes de langages des API : a) Le langage relais (Langage Contacts) : Comme tout les langages des API, ce type de langage est orient problmes . Cest une exploitation facile par des lectrotechniciens compte tenu de leurs bonne aptitude au dcodage des schmas. Un programme crit en langage contacts est compos de sous-ensembles comprenant chacun soit des sorties seules soit la fois des contacts et des sorties. Un rseau est composs dlments raccords entre eux par des liaisons horizontales ou verticales et disposs entre deux lignes verticales symbolisant les polarits utilises en schmas lectriques. Chaque liaison assure la continuit de ltat cumulatif (0 ou 1) des lments utiliss sa gauche ceux utiliss immdiatement sa droite. Chaque rseau de programme comprend une zone test et une zone action. La zone test est compose dlments conditionnels et la zone action dinstructions spcifiques de sortie. Les actions sont rendus inconditionnels quand elles ne sont pas prcdes de test. Voici un exemple de langage relais :

lcriture dun rseau doit tenir compte des contraintes de format spcifiques chaque API .

b) Le langage boolen: Ce type de langage permet de traiter directement toutes les expressions boolennes relatives : - aux reprsentations schmatiques des circuits de commandes dans les technologies lectrique et pneumatique ;

- aux oprateurs logiques combinatoires fondamentaux traduisant : Les fonctions logiques de base : ET, OU, NON ; Leurs fonctions complmentaires : NON ET, NON OU ; Une fonction particulire : OU EXCLUSIF. - aux oprateurs squentiels : Mmoire ; Temporisateur. - aux oprateurs logiques complexes : Compteur-dcompteur ; Registre. - aux associations doprateurs : Logigramme. - aux situations de fonctionnement exprimes par des quations logiques. De nombreux API acceptent ce langage. Voici un exemple de traitement de logigramme :

c) Le langage Organigramme : implant dans certains API, est caractris par lexistence dinstructions de TEST et de SAUT. Lexploitation de ce langage se traduit par lcriture dun programme ou toute rponse ngative un test entrane un SAUT, cest--dire la non-structuration dun certains nombres de lignes non concerns ce qui rduit la dure du cycle dexcution du programme. En consquence ce langage est trs intressant pour des programmes complexes grand nombres de lignes. En voici un exemple :
Etape 7 ACTIVE

Rceptivit 010 VRAIE

10

d) Le langage GRAFCET : Limplantation dans un API du langage GRAFCET est diffrente suivant les constructeurs. En fonction des rgles dcriture de ce diagramme fonctionnel, son traitement doit permettre la gestion : - des squences uniques ; - des sauts dtapes ; - des reprises de squences ; - des squences simultanes ; - des slections de squences. Dans chacun de ces diffrents cas dvolution du GRAFCET sont intgrs : le traitement des conditions dvolution, cest--dire les expressions des rceptivits qui relves du langage boolen ; laffectation des tats aux sorties. Voici un exemple de GRAFCET de fabrication de cacahutes :

d) Le langage LIST (liste dinstructions) : est un langage littral proche du langage ASSEMBLEUR. Ce dernier est plus proche des langage de programmation informatiques classiques que les langages prcdents, il est cependant dlicat manipuler. En effet, il faut tenir compte constamment des diffrentes valeurs dans laccumulateur et dans les piles, certaines expressions affectes des registres spciaux et dont il faut tenir compte. Voici un exemple de programmation en LIST qui permet de raliser lexpression suivante : X=A.B . Ici, CH signifie : charger dans laccumulateur : Les instructions de programmation changent partiellement dun automates un autre.

11

CH A ET B = X

(Charge A dans laccumulateur) (Effectue A ET B et met le rsultat dans laccumulateur) (Transfert le rsultat de laccumulateur dans la variable X)

Conclusion : Nous avons dcrit dans ce chapitre des notions gnrales sur quelques langages de programmation, accepts par la grande majorit des API ; nanmoins, la structure et la syntaxe de certaines instructions changent dun API un autre (ceci est parfois d larchitecture interne de lAPI), Il convient donc de se documenter avant de programmer. Quand au choix du langage utiliser, cest au programmeur de le faire, selon ses connaissances. Cependant, quelques API imposent un langage dans certains cas dont il faudra en tenir compte (voir chapitre V).

12

IV

Application : Etude dun Banc de Contrle Industriel :

On se propose de programmer un Banc de Contrle Industriel. Pour cela, nous dcrirons dans ce chapitre les diffrentes parties qui le constituent, le cahier de charge, et lorganigramme de fonctionnement.

Prsentation du banc de contrle industriel :

Ce banc de contrle est constitu de trois zones distinctes : la zone de tri, la zone dassemblage et la zone de rejet. Un convoyeur chane ramne les bouteilles et les bouchons seules vers la zones de tri. Un dtecteur de mtaux (capteur inductif) et un capteur de prsence (capteur infrarouge) dterminent si la pice qui passe est un mtal(bouteille) quil faut laisser passer ou un plastique(bouchon) quil faut jecter vers la zone dassemblage avec le solnode de tri. Un capteur inductif vrifie si le solnode est revenu son tat de repos. Un solnode rotatif ne laisse passer quun bouchons dans la zone dassemblage et ceci avec le capteur infrarouge. La bouteille tire le bouchon qui tait dans laire dassemblage et la pice est ainsi assemble. Le convoyeur bande guide la pice (bouchon seul, bouteille seule ou pice assemble) vers une srie de capteurs, qui ont pour objectif de dterminer le type de pice qui se prsente. Le capteur capacitif dtectant le plastique ; ce dernier tant mis en hauteur pour ne dtecter le plastique que lorsque ce dernier est mis sur le bouchon. Une fois que la pice aura t reconnue par lautomate, ce dernier choisira de la laisser passer vers la zone de mise

13

en pack sil sagit dune pice assemble, ou de ljecter vers la zone de mise en rebus si la pice est un bouchon ou une bouteille seule, grce un solnode djection et ceci dans la troisime zone : la zone djection ; la pice est dtecte avec un capteur de prsence. Un autre capteur inductif vrifie si le solnode est revenu son tat de repos. Il faut aussi prvoire 3 boutons pour larrt et le dmarrage : un bouton START pour dmarrer le banc de contrle, un bouton STOP pour son arrt normale et un bouton EMERGENCY STOP pour un arrt durgence. Larrt et le dmarrage consistent arrter ou dmarrer les deux moteurs des convoyeurs. Dfinition des Entres/Sorties de lautomate : Les tableaux suivant dcrivent les entres/sorties pour lautomate : Entres automate E 0.0 E 0.1 E 0.2 Type de capteurs Bouton START Bouton STOP Bouton EMERGENCY STOP Bouton INI Infrarouge Inductif Inductif Infrarouge Inductif Capacitif Infrarouge Infrarouge Inductif Commentaires Dmarre le banc de contrle Arrt du banc de contrle Arrt durgence du banc de contrle

E 0.3 E 1.0 E 1.1 E 1.2 E 2.0 E 3.0 E 3.1 E 3.2 E 3.3 E 3.4

Initialisation des variables et registres pour une premire utilisation ou en cas de modifications non programmes. Dtecte les lments dans la zone de tri Dtecte les bouteilles dans la zone de tri Dtecte le retour du solnode de tri Dtecte le bouchon dans laire dassemblage Dtecte les bouteilles aprs la zone dassemblage Dtecte les bouchons assembls (Normaly closed) Dtecte le passage de pices devant le dtecteur capacitif (Normaly closed) Dtecte le passage de pices devant le solnode djection Dtecte le retour du solnode djection

Sorties automate A 0.0 A 0.1 A 1.0 A 1.1 A 2.0 A 3.0 A 3.1

Type dactionneurs Convoyeur chane Convoyeur bande Solnode de tri Voyant

Commentaires

Contrle le moteur du convoyeur chane Contrle le moteur du convoyeur bande Trie les bouchons plastiques vers laire dassemblage Sallume si le solnode de tri ne revient pas ltat de repos Solnode rotatif Guide les composants plastiques dans laire dassemblage Solnode djection Ejecte les composants non assembls du tapis Voyant Sallume si le solnode djection ne revient pas ltat de repos

Cahier de charge : Le banc de contrle devra tenir compte des exigences suivantes :

14

1- Arrt et marche : Un bouton START permet de redmarrer la machine (qui consiste activer les deux moteurs ; lordre de dmarrage des moteurs nest pas important) en utilisant les donnes sauvegards dans le cas ou larrt prcdent sest fait avec STOP . Si larrt prcdent sest fait avec EMERGENCY STOP , le dmarrage se fait, les donnes remisent zros. Un bouton STOP permet darrter les deux moteurs (lordre darrt nest pas important), en sauvegardant les dernires donnes acquises. Un bouton EMERGENCY STOP permet darrter les deux moteurs (lordre darrt nest pas important), sans rien sauvegarder. Un bouton INI (Initialisation) permet dinitialiser les variables et registres lors dune premire utilisation ou si des modifications ont t effectus manuellement sur le banc de contrle (modifications non programmes). 2- Au niveau de la zone de tri : Dtecter les composants mtalliques qui arrivent par la chane dapprovisionnement et laisser passer la pice qui sera guide vers laire dassemblage. Dtecter les composants plastiques qui arrivent par la chane dapprovisionnement et : Ignorer ces pices (les laisser passer), si le nombre de bouchons dans la zone dassemblage est suprieur ou gal 4; Ejecter vers la zone dassemblage si le nombre de bouchons dans cette zone est infrieur 4 et incrmenter un compteur. Si le solnode de tri ne revient pas ltat de repos, arrter les deux moteurs et activer le voyant. Le solnode de tri est activ pendant 0.5s. 3- Au niveau de la zone dassemblage : La prsence de bouchon dans laire dassemblage est dtecte par un capteur de prsence. Un dlai approximatif de 2 secondes devra tre pris en compte pour lvacuation du bouchon par la bouteille, avant dactionner de nouveau le solnode rotatif qui placera une autre pice. Le solnode rotatif est activ durant seconde pour laisser passer un bouchon dans laire dassemblage et dcrmenter le compteur (le nombre de bouchons dans la zone dassemblage). 4- Au niveau de la zone de rejet : Dtecter le bouchon plastique seul afin de ljecter. Dtecter la bouteille mtallique seule afin de ljecter. Dtecter les pices assembls et les laisser passer. Si le solnode djection ne revient pas ltat de repos, arrter les deux moteurs et activer le voyant. Le solnode djection est activ pendant 0.5s.

Organigramme de fonctionnement : On propose donc lorganigramme de fonctionnement suivant :

15

DEBUT

START ?

N O
Mettre les tapis en marche

Dtection dun bouchon ?

Zone1 : Zone de tri

Dtection dune bouteille ?

N
Pousser le bouchon vers le dispositif dassemblage (sortie solnode pendant seconde)

O
Orienter la bouteille vers le dispositif dassemblage

Bouchon en position dassemblage ?

N
Attendre 2 secondes et amener un bouchon en position dassemblage

Zone 2 : Zone dassemblage

Assembler bouchon au passage dune bouteille

Bouteille bouche ?

Zone 3 : Zone teste et zone de rejet

O
Convoyer la bouteille bouche au poste dtiquetage Evacuer la bouteille non bouche (sortie solnode pendant seconde)

STOP ?

N O FIN

16

Prestation de lautomate programmable S5-115U :

Pour notre application, nous utiliserons lautomate programmable : S5-115U de Siemens ; conu pour des application de moyenne complexit. Nous dcrirons dans ce chapitre sont architecture et la manire de le programmer.

Constituants : Modules dalimentation : 24V(DC), 115V (AC) ou 230V (AC) pour un courant maximum de dalimentation de 3A, 7A ou 15A. Unit Centrale (UC) : La CPU utilis dans cet automate est la CPU 942 ayant les particularits suivantes : - Temps dexcution pour 1000 instructions : approximativement 18ms ; - RAM de 10Ko ; - Capacit mmoire max de 42Ko ; - Chien de garde : 500 ms (modifiable) ; - Plage de temporisation : 0.01 s 9990 s ; - Plage de comptage : 0 999 ; - Jeu doprations : approximativement 170 ops . Module dE/S : - TOR, adresss par bit; - Analogique (Rgulation de niveau, de temprature, de vitesse,), adresss par mot ou octet. Processeurs de communication : - CP rseaux locaux - CP liaisons points points, signalisation et consignation dtats. Cartes priphriques intelligentes (IP) : permet le : - Comptage dimpulsions frquences leve ; - Saisie et traitement dincrments de dplacement ; - Mesure de vitesse et de temps ; - Rgulation de temprature, de vitesse, Cartouche Eprom. Larchitecture interne de cet Api est similaire celle dcrite au chapitre II ; nanmoins il existe certaines diffrences flagrantes: - La non existence de piles ; - La prsence de deux accumulateurs. Introduction au STEP5 : (Pour SIMATIC S5) STEP5 permet la programmation de lautomate selon 3 langages : -CONT (relais) : comme dcrit au chapitre III ; -LOG (logigramme) :Idem que CONT ; -LIST : Comme dcrit au chapitre III, mais il faudra tenir compte de lexistence de 2 accumulateur et labsence de pile. De plus S prsente la structure suivante :

17

Codes doprandes : E : Entre A : Sortie M : Mmentos D : Donne T : Temporisation Z : Compteurs P : Priphrie K : Constante

Dfinition des blocs : STEP5 nous permet davoir 2 types de programmations : Linaire et Structure. Dans ce dernier cas, on dispose de 5 types de blocs nous permettant de structurer notre programme : 1- Blocs dorganisation (OB) : Il existe plusieurs types de blocs OB ayant chacun un rle prcis : - OB1 : Traitement cyclique du programme. Ce bloc contiendra notre programme ; - OB 2/3/4/5 (CPU 942) : Traitement des alarmes, avec la plus grande priorit pour OB2, et la plus faible OB5 ; - OB 13 (CPU 942): Traitement dclench par lhorloge, avec intervalle dappel pr rglable. - OB 21/22 : Rglage du mode de dmarrage. OB 21 est trait en mode DEMARRAGE lors dun dmarrage manuel partir de ltat STOP. OB 22 est trait en mode DEMARRAGE aprs rtablissement de la tension secteur.

18

- OB 31 : Rarmement du temps de cycle. - OB 32 : Erreurs de transfert. Il est trait lors derreurs de transfert par le systme dexploitation aprs linterruption de linstruction. - OB 34 : Surveillance de la pile. - OB 251 :Algorithme de rgulation PID. 2- Blocs de programme (PB) : Possibilit de reprsenter graphiquement des fonctions dautomatisation (LOG, CONT) ; On appel ces blocs avec les instructions : SPA (saut inconditionnel), SPB(saut conditionnel). 3- Blocs squentiels (SB) : Ce sont des blocs programmes particuliers destines au traitement de commandes squentiels. Ils sont traits comme les PB. 4- Blocs Fonctionnels (FB) : Ils sont utilis pour les fonctions complexes ou rptitives. Leurs particularits : - Paramtrables (transmis lors de lappel de blocs) ; - Jeu doprations plus tendu que les autres blocs ; - Programmable en LIST seulement. On les appels avec les commandes SPA et SPB. 5- Blocs de Donnes (DB) : Ils permettent de stoker des donnes sous formes doctets ou bits. Voici pour exemple, lutilisation de blocs :

19

VI

Programmation du banc de contrle industriel :

Aprs avoir dcrit le banc de contrle, ainsi que lautomate utilis, voici le programme qui y sera implment. Nous utiliserons pour cela le langage CONT, mais rien nempche den utiliser un autre. Nous avons choisi la programmation structure ; et pour cause, cette dernire permet dapprocher la solution en utilisant des blocs de programme, elle est donc plus efficace et les erreurs sont plus faciles trouver. On donne les variables intermdiaires suivantes : M 0.0 Arrt ou marche des convoyeurs M 1.2 Nombre de pice dans la goulotte a atteint ou non 4 M 1.3 Etat de la temporisation T1 M 1.4 Etat du compteur Z1 M 2.2 Etat de la temporisation T2 M 3.0 Maintient le changement dtat de E 3.0 M 3.1 Maintient le changement dtat de E 3.1 M 3.2 Maintient le changement dtat de E 3.2 M 3.4 =1 si la pice est assemble MW 10 Mot reprsentant le registre dcalage DW 10.3 MW 12 Positionnement du 1er lment du registre DW 10.4 MW 8 Nombre de pices dans la goulotte DW 10.0 MW 80 Nombre de pices en BCD dans la goulotte DW 20.0 DW 50 Nombre de pices rejets DW 60 Nombre de pices accepts On propose donc le programme suivant : 1/ OB 21 et OB 22 : Lors du dmarrage de lAPI. Servent initialiser M2.0 et M 3.1 1

2/ Arrt et marche des convoyeurs :

20

OB 2 tant dclench lors de larrt durgence ;

PB4 permet de sauvegarder les donnes dans des blocs de donnes, et PB 3 de lire ces donnes aprs appuis sur START :

PB2 sert appeler FB 3 qui initialise les registres lors dune premire utilisation :

21

3/ Zone de tri : Tout dabord, PB 10 qui permet de dtecter le type de pice et ljecte si cest un bouchon (daprs le chronogramme suivant) :

PB 11 ayant le rle de compter le nombre de pices dans la goulotte :

22

Le retour du solnode de tri sera dtect par PB 12 :

Si le solnode de tri nest pas revenu son tat de repos, OB 4 est active pour arrter les deux convoyeurs :

4/ Zone dassemblage : PB 20 gre toute la zone dassemblage :

23

5/ Zone de test et de rejet : Le programme de la zone de teste est dcrit par PB 30 ; daprs les chronogrammes suivants :

24

et lcriture dans le registre dcalage par les programmes suivant :

PB 40 permet de dtecter les pices au niveau de la zone de rejet et appel PB 41 :

PB 41 tant appel lors dune dtection de pices, ce dernier lidentifie pour incrmenter les compteurs (rejet DW 50 ou acceptation DW 60) :

25

FB 4 effectuant un ET logique bit par bit :

PB 42 rejette ou non la pice :

FB 2 dcale le registre MW12 dune position vers la droite :

Le retour du solnode de rejet est dtect par PB 43 :

Si ce dernier ne revient pas son tat de repos, OB 3 est sollicit :

26

6/ Le programme principale OB1 : Il sagit dune suite dappels inconditionnels vers les diffrents blocs programmes :

On voit bien quune solution structure est plus comprhensible et plus ais comprendre et assimiler. Cest un plus pour lutilisateur, lui permettant de mieux optimiser son programme ; mais pour lautomate, il nexiste aucune diffrence entre un programme linaire et un programme structur. Le programme que nous avons labor nest pas lunique solution du problme, ni le plus performant ; cependant, il vrifie le cahier de charge du banc de contrle et assure le fonctionnement correcte de ce dernier.

27

VII

Conclusion :

Les automates programmables industriels ont jous un rle actif dans le dveloppement de lindustrie automatise. Alliant la rapidit et la qualit, sans ngliger la scurit, ils ont st simposer dans le domaine comptitif quest lindustrie. Leurs dveloppement fulgurant ces dernires annes ont fait deux un outils indispensable dans les domaines les plus varis. On trouve aujourdhui les API non seulement dans le domaine industriel, mais aussi dans les btiments, les grandes stations (comme les stations spatiales) et mme dans le domaine urbain (on cite comme exemple : les feux tricolores) et dans une multitude dautres applications.

Bibliographie :
- Gilles MICHEL : Les API : Architecture et applications des automates programmables industriels, Dunod, 1987. - Andr BIANCIOTTO, Pierre BOYE : Linformatique en automatisation industrielle, Delagrave, 1985.

28