COMMANDE NUMERIQUE D’UNE MAQUETTE...

29
1 ROUBELET Julien COSTES Lionel L3 EEA – Réorientation en études longues RAPPORT DE PROJET COMMANDE NUMERIQUE D’UNE MAQUETTE D’ASCENSEUR 2011-2012 Tuteur : M. Thierry PERISSE

Transcript of COMMANDE NUMERIQUE D’UNE MAQUETTE...

Page 1: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

1

ROUBELET Julien COSTES Lionel L3 EEA – Réorientation en études longues

RAPPORT DE PROJET

COMMANDE NUMERIQUE D’UNE MAQUETTE

D’ASCENSEUR

2011-2012 Tuteur : M. Thierry PERISSE

Page 2: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

2

Table des matières Remerciements ................................................................................................................................... 3

English summary................................................................................................................................ 4

I. Introduction, définition du projet ................................................................................................. 4 1.1. Bilan ........................................................................................................................................................ 4

1.2. Cahier des charges ................................................................................................................................... 5

1.3. Support du projet ..................................................................................................................................... 6

a. La maquette ............................................................................................................................................ 6

b. Liste du matériel ..................................................................................................................................... 7

1.4. Objectifs et modification du cahier des charges ...................................................................................... 7

1.5. Diagramme de Gantt ................................................................................................................................ 8

II. Modélisation et choix des solutions ............................................................................................. 9

2.1. Modélisation ............................................................................................................................................ 9

2.2. Choix des entrées/sorties ....................................................................................................................... 10

a. Interface commande/puissance ............................................................................................................. 10

b. Capteurs ................................................................................................................................................ 10

c. Interface homme/machine .................................................................................................................... 10

2.3. Choix de la commande .......................................................................................................................... 10

III. Hardware ................................................................................................................................... 11

3.1. Décomposition du système .................................................................................................................... 11

3.2. Maquette de l’ascenseur ........................................................................................................................ 13

3.3. Platine Labdec ....................................................................................................................................... 20

IV. Software ...................................................................................................................................... 24

4.1. Programmation ...................................................................................................................................... 24

a. Outils de programmation ...................................................................................................................... 24

b. Structure du programme ....................................................................................................................... 24

d. Commande PWM ................................................................................................................................. 26

e. Programme d’initialisation ................................................................................................................... 27

4.2. Simulation sous Proteus ISIS ................................................................................................................ 28

V. Conclusion .................................................................................................................................... 29

Page 3: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

3

Remerciements Nous tenons à remercier Monsieur Périsse pour nous avoir suivit et conseillé tout au long de notre projet.

Page 4: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

4

English project summary Our purpose was to make a lift self-acting through an electronic system. We have been presented with an elevator composed of a shaft going up and down a tower, driven by direct current motor. First of all we had to understand how it works, and we determined that it used a PWM (Pulse Width Modulation) system. A micro control device was to be introduced to program the various movements. We chose a “PIC” deck connected to a computer unit through a USB port. The control desk shows a series of push buttons, Leds, a PIC with its multi-pin plug together with an LCD display. The PC allows to load a program towards the PIC via “MikroC” software, using C language. On the screen we can follow the operating process of the whole system. We note that the initial movement of the shaft is to start from ground level. The press buttons will be used to move the shaft to the corresponding floor.

I) Introduction, définition du projet

1.1 .Le bilan

Le projet présenté dans ce rapport met en premier lieu un terme à notre année de licence « Electronique Electrotechnique et Automatique » parcours « Réorientation en études longues ». Mais les cinquante heures de labeur et le matériel mis à notre disposition sont en réalité le bilan de trois années d'études en génie électrique, où nous mettons à profit les connaissances acquises en DUT ou BTS ainsi que les approfondissements apportés lors de l’année de licence pour mener à bien le travail qui nous est demandée dans le cahier des charges. Le but de ce projet mené en binôme est de nous mettre en situation devant un cahier des charges qui nous a préalablement été définit, afin de nous enseigner le passage de la théorie à la pratique en partageant les tâches entre les deux membres et en gérant notre progression en fonction du temps qui nous est impartit, tout cela en gardant une certaine autonomie dans notre approche.

Parmi les sujets qui nous ont été proposés celui que nous avons sélectionné porte sur l'asservissement numérique en vitesse d'un moteur à courant continu, sujet particulièrement intéressant tant sur le plan pédagogique que sur le plan technique. Effectivement, il nous permet de faire le point sur différentes disciplines vues en cours telles que l'électronique numérique et de puissance, ou l’informatique industrielle. Côté technique, la diversité des manipulations plus ou moins complexes à mettre en œuvre nous apprend à tenir une certaine rigueur nécessaire au bon fonctionnement des montages et à la prévention de toute fausse manœuvre et incident.

Page 5: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

5

1.2. Cahier des charges

Voici le cahier des charges tel qu'il nous a été définit : 1- Étude des fonctions mises en œuvre dans l’asservissement. Détermination des fonctions permettant la réalisation analogique de la fonction asservissement de vitesse du MCC 14W. 2- Alimentation par amplificateur linéaire intégré de puissance. Étude et mise en œuvre du circuit intégré LM12. 3- Modélisation et identification. Détermination du schéma blocs de l’asservissement. Détermination d’un modèle automatique théorique boucle ouverte et boucle fermée. Modélisation et identification expérimentales. 4- Mise en œuvre de l’asservissement. 5- Réalisation numérisée de la commande du MCC. 6- Réalisation numérique de l’asservissement. 7- ...

Nous pouvons constater la précision inégalable de ce cahier des charges. Cela nous permet en définitive de garder une grande liberté quant à nos objectifs et de laisser libre cours à notre imagination pour trouver des sujets sur lesquels appliquer nos travaux.

Mais un excès de liberté pouvant aboutir à un manque de décisions, ce sera finalement sur

un support bien défini que le projet nous sera donné à faire. Du fait de la nature dudit support, nous ne pourrons nous tenir rigoureusement à ce cahier des charges et devrons changer quelque peu notre approche, qui au final pourra rejoindre l’idée de base.

Page 6: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

6

1.3. Support du projet

a. La maquette

Le support qui nous été confié pour mener notre projet est une maquette d’ascenseur à trois

étages.

La maquette telle qu’elle nous a été fournie est constituée de la façon suivante :

Une cabine est mue dans une colonne verticale sur trois étages. Un bloc motoréducteur dont nous donnons les caractéristiques plus bas est situé en haut de la colonne et entraîne la cabine via une couroi. L’alimentation de la motorisation est assurée par une carte électronique (décrite plus loin) qui se trouve dans le boîtier sur le socle de la maquette. Des capteurs sont situés au niveau de chacun des trois étages.

Fig. 1 : Vue d’ensemble de l’ascenseur (ci-contre) et bloc de motorisation de la maquette (ci-dessus).

Page 7: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

7

b. Liste du matériel

L’ascenseur ayant servi auparavant pour des applications pédagogiques, il est déjà équipé des composants essentiels au fonctionnement du système. La liste des ces composants est présentée ci-dessous. Les documentations constructeur nécessaires sont présentées en annexe.

• 1 moteur/génératrice tachymétrique 28GD11-222E (Escap) • 1 réducteur R32 (Escap) • 1 moteur Escap 28DT 2R-222E • 1 roue codeuse HEDS-5540 • 3 capteurs optoélectroniques avec leur circuit de conditionnement • 1 carte de puissance équipée d’un hacheur intégré L6203

Nous pourrons donc utiliser ces composants comme base et ainsi adapter l’asservissement que

nous devons réaliser.

1.4. Objectifs du projet et modifications du cahier des charges

Un tel support permet d’établir une infinité d’objectifs. De la commande comme un simple monte charge à vitesse uniforme, à l’automatisation la plus complexe en passant par le fonctionnement comme un ascenseur, il nous offre la possibilité de rendre le système toujours plus performant. Notre période de projet étant limitée, nous nous fixons les objectifs décrits par la suite.

Pensant d’abord pouvoir suivre à la lettre les consignes du cahier des charges, nous avons

vite réalisé en étudiant la maquette qu’il nous faudrait dériver de cette approche-là et trouver de nouveaux objectifs intermédiaires pour ensuite atteindre celui qui nous est au départ demandé. Effectivement, il est inutile de rappeler qu’une cabine d’ascenseur est conçue pour se déplacer verticalement d’un point à un autre. A partir de là, nous pouvons déjà conclure qu’un asservissement de position est nécessaire avant l’asservissement en vitesse.

Suite à ce constat, nous nous donnons les objectifs suivants :

• Asservissement de position avec une vitesse fixe : la cabine doit se déplacer d’un étage à un autre sur appel à partir d’un bouton poussoir. De plus, un afficheur doit donner une information écrite sur l’état du système (cabine se déplaçant à l’étage x ou y, attente d’un appel…). Nous ajouterons une étape d’initialisation qui se déroulera à chaque mise sous tension du système. Hypothèses de départ : l’ascenseur ne peut pas descendre en dessous de l’étage 0, les capteurs sont considérés infaillibles.

• Ajout de l’asservissement de vitesse : nous imaginons que cet ascenseur est conçu

pour le déplacement de personnes, l’accélération et décélération se doivent donc d’être des plus douces, tout en ayant une grande précision lors d’un arrêt à un étage. De ce fait, la consigne de vitesse devient variable entre les étages.

Nous ne parlerons dans ce rapport que de la mise au point de l’asservissement de position

qui, s’étant malheureusement montré plus longue et plus compliquée que prévu, nous a forcé à nous tenir à cet objectif-là, que nous avons en grande partie achevé.

Page 8: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

8

1.5. Diagramme de Gantt

Compréhension du sujet et mise

en place des objectifs

Etudes des divers

composants

Initiation à la programmation

du PIC

Mise en œuvre consigne

position fixe

Mise en œuvre consigne position réglable

Mise en œuvre consigne vitesse

Heures cumulées 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50

Heures 8h 9 10 11

13

14 15 8h 9 10 11 13 14 15 8h 9 10 11 13 14 15 8h 9 10 11 8h 9 10 11 13 14 15 8h 9 10 11 13 14 15 8h 9 10 11 13 14 15 8h 9 10 11

Jour Ma m Ma am Ma m Ma am Ma m Ma am Ve m Ma m Ma am Lu m Lu am Me m Me am Je m

Temps prévisionnel

Temps réel

Lu = lundi Je = jeudi m = matin Ma = mardi Ve = vendredi am = après midi Me = mercredi

Fig. 2 : Le diagramme de Gantt.

Page 9: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

9

Le diagramme de Gantt figure 2 permet de voir la répartition des taches durant ces 50 heures. On remarquera un retour sur les taches « Compréhension du sujet et mise en place des objectifs » et sur « étude des divers composants » ce qui correspond concrètement a un changement de maquette durant le second jour. A partir de là on a pu enchainer les objectifs dans l’ordre prévu en respectant grossièrement le temps alloué. Sauf pour la consigne position réglable dont la difficulté à été à la fois trouver un moyen de détecter les boutons poussoirs et chercher dans la datasheet en anglais. Le temps jouant contre nous, nous n’avons pas pu arriver à réaliser notre dernier objectif, asservir le moteur en vitesse.

II) Modélisation et choix des solutions

2.1. Modélisation

A partir de la consigne que nous nous sommes fixée, nous pouvons établir un premier schéma bloc pour modéliser grossièrement notre système.

Description des blocs :

• Partie commande (rouge) : génère les consignes de déplacement de l’ascenseur, traite les données des capteurs de position et les demandes de l’utilisateur.

• Entrées/sorties (vert) : o Interface puissance/commande : assure l’alimentation électrique du moteur

en fonction de la consigne donnée. o Capteurs de position : informe en permanence la partie commande sur la

présence ou l’absence de la cabine à chaque étage. o Interface homme/machine : assure la communication avec l’utilisateur ;

reçoit ses demandes via les boutons poussoir d’étages et l’informe sur l’état courant de l’ascenseur.

• Actionneur (bleu) : o Moteur : meut l’ascenseur.

• Système (violet) : o Maquette.

Partie commande

Interface

commande/puissance

Moteur

Capteurs

de position

Module mécanique

Interface

homme/machine

Fig. 3 : Schéma bloc

Page 10: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

10

2.2. Choix des entrées/sorties

a. Interface commande/puissance

Le moteur 28GD11-222E présent sur la maquette est conçu pour recevoir une tension nominale de 18V. De plus, le cahier des charges met en avant l’utilisation de l’amplificateur de puissance LM12. Il se trouve que le composant assurant l’interface commande/puissance déjà présent sur la maquette est le hacheur de tension intégré L6203. Celui-ci est commandé par modulation de largeur d’impulsions (PWM) sur niveaux de tension 0 et 5V, et peut assurer une sortie atteignant 60V (voir datasheet en annexe). Le bloc interface commande/puissance peut donc être constitué de ce hacheur.

b. Capteurs

Nous disposons à chaque étage de la maquette d’un capteur de position optoélectronique, qui, via un circuit de conditionnement de la sortie renvoi un signal de type TTL (0 ou 5V). Nous pouvons aussi utiliser le codeur HEDS-5540 couplée à l’arbre du moteur afin de pouvoir connaitre la position courante de la cabine d’ascenseur. Mais par un souci de simplicité, nous opterons pour le capteur, le codeur pouvant servir plus tard pour des améliorations.

Le circuit de conditionnement des capteurs seront décrits ultérieurement.

c. Interface homme/machine

Concernant l’interface homme/machine, nous décidons de nous orienter vers un petit afficheur LCD qui nous permettra une grande diversité de messages à transmettre à l’utilisateur, pour une mise en œuvre simple. Enfin, trois boutons poussoirs seront utilisés pour l’appel.

2.3. Choix de la commande

Connaissant à présent la nature des entrées/sorties et les types de signaux transmis, on peut définir la partie commande.

Nous répertorions ci-dessous les différents paramètres à prendre en compte pour ce choix :

• Commande numérique imposée par le cahier des charges. • Signaux d’entrée/sortie sur 0 ou 5V. • Une commande PWM. • Possibilité d’améliorations et d’ajouter d’autres périphériques. • Simplicité de mise en œuvre et connaissances nécessaires. • Coût.

Face à ces consignes, nous opterons pour un microcontrôleur Microchip PIC16F876 qui fait

partie d’une famille de microcontrôleurs très prisée pour la commande d’applications simples. Voici les caractéristiques qui nous concernent à propos de ce composant (voir datasheet en

annexe) : • 3 ports E/S numériques 8bits. • Une sortie PWM. • Des entrée analogique/numérique et gestion de priorités en cas de besoin pour

d’éventuelles améliorations.

Page 11: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

11

• Coût assez bas.

Le PIC sera programmé en langage C car il s’agit de l’outil plus ergonomique et que nous maîtrisons le mieux pour ce genre d’application.

Dans le chapitre III, nous étudierons la mise en œuvre de toute la partie électronique du

système, en détaillant les caractéristiques des principaux composants. Enfin, dans le chapitre IV, nous décrirons les algorithmes établis pour programmer le microcontrôleur.

III) Hardware

3.1. Décomposition du système

Notre système est composé de 3 sous-systèmes : l’ascenseur, la platine de test Labdec et l’ordinateur. En Fig. 4, l’ascenseur est relié directement au PIC qui reçoit son programme via le PC.

Fig. 4 : Schéma décomposition du système

Page 12: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

12

Fig. 5 : Photos du système

On observe sur la fig. 5 l’ascenseur, sur la platine labdec le PIC avec l’écran LCD qui affiche « 1 », une LED, 2 potentiomètres, un quartz et l’alimentation du PIC prise directement sur un port USB. En bas à droite la capture d’écran du logiciel MikroC avec un programme qui fait clignoter la LED.

Page 13: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

13

3.2. Maquette ascenseur

Fig. 6 : Schéma de l’ascenseur

Page 14: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

14

Guide de la cabine

Etage 3

Etage 2

Etage 1 avec cabine

Capteur de position étage 3

Capteur de position étage 2

Capteur de position etage 1

Fig. 7 : Eléments de l’ascenseur

Page 15: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

15

Moteur CC 18 V

Réducteur 1/5

Courroie crantée

Codeur

Fig. 8 : Photo des moteurs de l’ascenseur

Hacheur L6203

Portes inverseuses 4049UB

Fig. 9 : Circuit hacheur

Page 16: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

16

Voici le circuit fig.10 qui commande l’ascenseur en fonction de la PWM.

Fig. 10 : Schéma de câblage du circuit redresseur

Ici nous avons le schéma fonctionnel réalisé sur Proteus. Le composant central correspond au hacheur L6203 en haut à gauche sur la figure 10. Les trois portes inverseuses quant à elles proviennent du 4049 UB, au centre de la figure 10.

Cette figure 11 issu de la datasheet 4049 UB met en évidence le fait de pouvoir remplacer ce composant par des portes NON. Les portes inverseuses vont nous permettre de complémenter IN et d’obtenir IN1 = IN et IN2= IN complémenté.

Page 17: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

17

Fig. 11 : Portes inverseuses 4049

Description du fonctionnement du hacheur: on peut diviser la fig.12 en 4 blocs (rouges et jaunes). THERMAL SHUTDOWN est une sécurité thermique et ENABLE est un verrouillage électronique pour autoriser ou interdire la commande du moteur. Ce verrou est débloqué en appliquant une tension de 5V. THERMAL SHUTDOWN et ENABLE vont êtres les entrées de chaque bloc. IN1=IN=IN2 complémenté. Les 2 blocs jaunes qui ont 3 entrés, ont une entrée différente IN1 et IN2 complémenté. Or IN=IN2 complémenté donc les conditions d’amorçage sont les mêmes (IN1.ENABLE.THERMALE SHUTDOWN). Il en va de même pour les blocs rouges avec IN2. IN1 et IN2 sont obtenues grâce au rapport cyclique du signal. OUT1 et OUT2 qui sont les 2 les points d’alimentation du moteur, vont recevoir à tour de rôle une tension positive. La valeur moyenne de la tension de sortie du hacheur fera tourner le moteur dans un sens ou dans l’autre l’ascenseur et montera ou descendra en conséquence.

Fig. 12 : Schéma datasheet L6203

Page 18: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

18

PWM réglé à 20, rapport cyclique 12.3%. La cabine monte.

Fig. 13 : Relevé oscilloscope tension d’entré IN en montée

PWM réglé à 140, rapport cyclique 76.6%. La cabine descend.

Fig. 14 : Relevé oscilloscope tension d’entré IN en descente

Page 19: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

19

Fig. 15 : Photos capteur de position

L’AOP LM311 sert de comparateur. Lorsque la tension V+ est supérieure à V-, la tension de sortie capteur est alors à son maximum. Au contraire, lorsque V+ est inférieure à V-, la tension de sortie de l’AOP est à son minimum. HOA149-1 est un des 3 capteurs de position de l’ascenseur. Il est composé d’une diode et d’une photo diode. Lorsque la cabine d’ascenseur arrive au niveau du capteur la photodiode est éclairée à l’aide d’un miroir sur la cabine, le courant circule donc vers la masse V+ < V-, tension de sortie nulle. Lorsque la photo diode n’est pas éclairée V- < V+ la tension de sortie = 5V.

Fig. 16 : Schéma de câblage capteur de position

Page 20: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

20

3.3. Platine Labdec

Fig. 17 : Chronogramme de fonctionnement capteur

Fig. 18 : Photo de la platine de câblage labdec

Quand la cabine arrive sur le capteur le niveau logique du capteur est nul. Quand l’ascenseur dépasse le capteur son niveau logique est à 1.

Page 21: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

21

Simulation des capteurs positions

Le PIC est configuré de façon à lire l’état des 3 boutons poussoirs et des 3 capteurs de position. Le quartz X1 permet d’imposer la fréquence de fonctionnement du PIC (20Mhz), il fonctionne en oscillateur externe. On connecte la masse sur les entrées du pic afin de limiter les parasites. Les 3 résistances de pull up R5, R6, R7 servent à ne pas court-circuiter Vcc.

Fig. 19 : Schéma de câblage platine labdec

Page 22: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

22

L’ASCENSEUR quantité Prix unitaire Prix

Matière 1ere structure 1 400 € 400 € Heures de chaudronnerie 35 9,22 € 322,7 € Peinture 1 50 € 50 € LM311N comparateur 2 0,3 € 0,6 € 3 capteurs Nc HOA0149-1 3 5,13 € 15,39 € Moteurs ccs escap 28GD11 2 268,49 € 536,98 € Codeur Heds -5540 A11 1 56,75 € 56,75 € Condensateur 1 uf 1 0,24 € 0,24 € Résistances 120 ohms 3 0,02 € 0,06 € Résistances 5 110 ohms 3 0,03 € 0,09 € Résistances 3 300 ohms 3 0,80 € 2,4 € Résistance 18k ohms 1 0,05 € 0,05 € Résistances 2k700 ohms 3 0,8 € 2,4 € Résistances 82k ohms 2 0,59 € 1,18 € Résistance 2k200 ohms 1 0,02 € 0,02 € Condensateur 100 nf 5 0,55 € 2,75 € HCF 40449 UBE inverseur 1 0,21 € 0,21 € Redresseur L6203 1 9,03 € 9,03 € Diode 1 2,5 € 2,5 € Circuit imprimé double face 1dm² 1 13,81 € 13,81 € Courroie crantée 1 9,9 € 9,9 €

LA PLATINE LABDEC Circuit imprimé double face 1dm² 1 13,81 € 13,81 € PIC 1 14,2 € 14,2 € LED 1 0,2 € 0,2 € LCD 1 10 € 10 € 2 x condensateurs 22 pf 2 0,05 € 0,1 € Quartz 20 Mhz 1 1,3 € 1,3 € 4 x résistances 1000 ohms 1 0,05 € 0,05 € Potentiomètre 470537M 470 ohm 1 2,2 € 2,2 € Potentiomètre 4K7503M 4k700 ohm 1 3,75 € 3,75 €

Prix des composants 1472,67 € Prix des composants x 5% = prix des consommables (fils électrique, étain…) 73,64 € Prix hors taxes 1546,31 € Tva 19.6% x prix = charges 303,08 €

TTC = prix + charges 1849.39 €

Fig. 20 : Devis du système ascenseur et PIC

Cette maquette est relativement chère. La structure représente la moitié du prix des composants, mais elle est robuste ce qui garanti une durée de vie longue si l’ascenseur est entretenu.

Page 23: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

23

Liste du matériel nécessaire pour commander l’ascenseur - Choisir une alimentation 5V continue stabilisé pour la partie

commande - Choisir une alimentation 0-16V continue pour le moteur

- Choisir un générateur de rapport cyclique variable 0-5V con-tinu en fonction de l’application (PIC, générateur basse fré-quence…)

- Prendre la connectique adéquate

Branchement nécessaire - Brancher la partie commande à 5V - Brancher enable à 5V

- Brancher les capteurs position à 5V si nécessaire

- Brancher le générateur de rapport cyclique sur IN

- Brancher une alimentation 0-16V continue pour le moteur

Fonctionnement

- Générer un rapport cyclique inférieur à 50% pour descendre - Générer un rapport cyclique supérieur à 50% pour descendre

- Générer un rapport cyclique de 50 % pour immobiliser l’ascenseur

Précaution d’usage - Eviter de faire percuter la cabine - Débrancher l’alimentation du moteur avant le générateur de

rapport cyclique

Fig. 21 : Notice d’utilisation

Page 24: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

24

IV) Software

4.1. Programmation

Nous allons décrire dans les paragraphes qui suivent les démarches adoptées pour concevoir le programme qui gère le système. Il sera élaboré pas à pas pour faciliter l’approche. Nous établirons tout d’abord la structure nécessaire pour un tel programme. Nous verrons ensuite comment utiliser les sorties du PIC qui gèrent la modulation de largeur d’impulsion, puis la structure de la fonction qui gère le déplacement de l’ascenseur vers un étage. Enfin, nous concatènerons les sous-programmes pour arriver à la structure visée.

a. Outils de programmation La conception du programme en C se fera sous le logiciel MikroC de Mikroelectronica. Il

s’agit d’un environnement de développement spécialisé pour la programmation de microcontrôleurs de la gamme PIC de Microchip. Ce logiciel propose des bibliothèques de routines qui facilitent l’utilisation des fonctions du microcontrôleur.

Le programme est d’abord édité et compilé puis est transmit au composant via un driver qui permet l’interfaçage entre le port USB du PC et le microcontrôleur déjà présent sur le montage électronique.

b. Structure du programme

La structure générale du programme est montrée par l’organigramme en Fig.X :

Page 25: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

25

Début

-Configuration des registres. -Configuration PWM. -Configuration du LCD

LCD : afficher

« Attente… »

Aller à l’étage 3

Aller à l’étage 2

Aller à l’étage 1

Initialisation Rapport cyclique à 50%

Fin

1 Bouton étage 1

Bouton étage 2

Bouton étage 3

Fig. 22 : Structure générale du programme

Vrai

Faux

Faux

Faux

Faux

Vrai

Vrai

Vrai

Page 26: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

26

Nous programmerons cet algorithme progressivement pour apprendre à utiliser les différentes fonctions. Ainsi, nous allons voir dans les paragraphes suivant les méthodes utilisées pour la programmation de la commande de PWM puis de l’initialisation.

c. Commande PWM

Le PIC16F876 est équipé de plusieurs sorties qui, configurées correctement, peuvent générer un signal sur -5V /+5Vdont le rapport cyclique est variable. Sur ce projet, nous utiliserons la patte 12 du microcontrôleur. Pour gérer une telle sortie, le logiciel MikroC propose une série de routines : - Pwm_Init(30000) � Initialise la sortie à la fréquence 30KHz (fréquence choisie par l’utilisateur). - Pwm_Start() � Active la sortie. -Pwm_Change_Duty(duty_cycle) � Permet de changer la valeur du rapport cyclique, en donnant d’abord la valeur désirée au paramètre.

Il est aussi important de configurer certains registres. Ceci est faisable en se référant à la datasheet du composant (voir annexe). Ici, il s’agit de la sortie correspondant à la patte 12 du composant, le registre associé est donc « CCP2CON ».

Le programme suivant permet de faire varier le rapport cyclique en faisant tourner un

potentiomètre associé à une des entrées analogiques/numérique. La tension mesurée aux bornes du potentiomètre est également affichée sur un afficheur LCD.

Fig. 23 : Programme de la PWM

Page 27: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

27

d. Programme d’initialisation

A partir de l’algorithme précédent, nous pouvons mouvoir l’ascenseur en connectant la sortie PWM du microcontrôleur sur l’entrée du hacheur comme indiqué au chapitre III. Nous pouvons créer à partir de là la fonction d’initialisation indiquée dans l’organigramme de départ. Il s’agit de la fonction qui commande la descente de l’ascenseur jusqu’à l’étage 1 dès la mise sous tension du système.

Pour cela, nous introduirons la gestion du capteur de l’étage 1 de l’ascenseur, sur un port du

microcontrôleur. L’organigramme est le suivant :

• Port exploité : PORT C ; pin 3 en entrée, pins 0, 1, 2, 4, 5, 6, 7 en sortie. • Routines utilisées : Pwm_Init(30000), Pwm_Start(), Pwm_Change_Duty(CCPR2L). • Fonction appelée : init() � fonction d’initialisation.

Description de la fonction « init() » : Cette fonction est basée sur une boucle « while » : avant chaque passage dans la boucle,

l’état du capteur de l’étage 1 est lu. Tant que la cabine de l’ascenseur n’est pas présente devant le capteur, la boucle est exécuté et appelle la routine qui gère la sortie du signal de PWM en lui

Début

Fin Initialisation

Fin

Début Initialisation

Capteur étage 1

Rapport cyclique à

70% (descente)

Rapport cyclique à 50%

Initialisation

-Configuration des ports. -Configuration PWM.

LCD : afficher « initialisation »

Fig.24 : Organigramme de l’initialisation

Page 28: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

28

appliquant le rapport cyclique nécessaire pour faire descendre la cabine. Dès que celle-ci atteint le capteur, la condition devient fausse le programme sort de la boucle pour exécuter les reste du programme qui ramène le rapport cyclique à 50% pour stopper la rotation du moteur.

Il est nécessaire de souligner le fait que la sortie du capteur est inversée :

Etat du capteur Niveau logique ascenseur détecté 0 ascenseur non détecté 1

Nous préciserons enfin que la fonction « Init() » est réutilisable pour le déplacement de

l’ascenseur à chaque étage. Il s’agit en fait de l’élément central de ce code car c’est celui qui cause le déplacement de l’ascenseur jusqu’à un point donné.

4.2. Simulation sous Proteus ISIS Afin de pouvoir travailler en dehors des séances en salle de projet, nous simulons nos programmes grâce au logiciel Proteus ISIS. Ce logiciel de CAO (Conception Assistée par Ordinateur) propose des bibliothèques de composants dont le PIC16F876, qui permettent d’éditer le schéma électronique, puis de simuler le circuit après lui avoir associé le fichier du code source correspondant au programme. Voici en exemple la simulation de notre circuit : Fig.25 : Simulation sous Proteus

Page 29: COMMANDE NUMERIQUE D’UNE MAQUETTE D…thierryperisse.free.fr/.../projetTP2012-Commande_ascenseur.pdf · e. Programme d’initialisation ... l'asservissement numérique en vitesse

29

Pour cette simulation, le système est remplacé par un oscilloscope virtuel qui montre le signal obtenu en sortie de la PWM. Les capteurs sont par ailleurs remplacés par de simples boutons poussoirs virtuels et fonctionnels que nous actionnons pour visualiser les changements de la sortie visualisée.

V) Conclusion

Bien que nous n’ayons pu atteindre tous les objectifs initialement prévus dans le cahier des

charges, nous pouvons tirer satisfaction de ce projet pour plusieurs raisons : Tout d’abord nous avons pu mettre en application les connaissances acquises durant nos

études, et ainsi les renforcer. Les manipulations effectuées nous ont apporté une expérience dans notre approche des circuits électroniques et de l’instrumentation.

L’autonomie dont nous jouissions nous a donné une certaine confiance en nous même et a renforcé notre expérience du travail en groupe, où il est nécessaire de partager les tâches et chacun s’est investit autant que possible dans la réalisation du projet.

Nous avons pu également acquérir de bonnes connaissances dans la programmation de microcontrôleurs, composants très répandus dans l’industrie, ainsi que dans l’utilisation des logiciels qui y sont associés.

Notre regret concernerait le fait que nous n’ayons eu plus d’heures à consacrer à ce projet

qui nous a énormément captivés et pour lequel nous nous sommes grandement investis. Après une telle aventure, le démontage des circuits fut une épreuve plus éprouvante encore que les heures de labeur durant lesquelles nous avons sué pour l’aboutissement de ce travail.