• Aucun résultat trouvé

Exercice 1 : axe horizontal

N/A
N/A
Protected

Academic year: 2022

Partager "Exercice 1 : axe horizontal"

Copied!
4
0
0

Texte intégral

(1)

UTBM. Département Énergie. DUREE 2 HEURES.

UTBM IF40. Examen final. Page 1

Calculatrices non autorisées. Fascicule DSP Contrôleur TMS320LF2407 non autorisé.

Traducteurs électroniques non autorisés. Cours et TD et tous documents non autorisés.

Exercice 1 : axe horizontal

Dans une salle de TP, on met en place un axe de déplacement horizontal pour le modéliser. Le système est piloté par un DSP contrôleur TMS320LF24LF07 cadencé à 40 MHz.

L’axe est motorisé par un moteur à courant continu alimenté par un hacheur à partir d’une source continue (E). On donne ci-dessous le schéma de puissance :

Les transistors permettent de piloter la tension Umcc de -15V à 15V en ajustant , le rapport cyclique des signaux PWM1 et 2. La fréquence de ces signaux est de 20 kHz. Les transistors requièrent un délai de sécurité (ou temps mort) de 4 s. La sortie PWM1 est active au niveau haut.

1.1) Écrire en langage C la fonction INITEVA réalisant l’initialisation du module EVA et des broches PWM utilisées, et l’initialisation des signaux PWM possédant une fréquence 20 kHz en mode asymétrique avec les délais de sécurité requis. Après l’initialisation, la valeur moyenne de Umcc doit être nulle.

Un capteur à effet Hall mesure l’intensité du courant Imcc. Cette sonde de courant délivre une tension proportionnelle à Imcc et variant de 0 à 3V pour un courant allant de 0 à 30A. Cette sonde est reliée à l’entrée ADCIN1 du convertisseur analogique numérique du DSP.

Un montage potentiométrique délivre une tension Ucom qui permet de piloter la vitesse du moteur à courant continu. Ucom donne la consigne de vitesse du moteur. Cette tension varie entre 0 et 2,7V. Elle est reliée à l’entrée ADCIN9 du convertisseur analogique numérique du DSP.

Pour mettre en place la régulation de vitesse, celle-ci doit être mesurée. On installe sur l’arbre moteur une dynamo tachymétrique associée à un montage à amplificateur opérationnel qui délivre une tension continue UT. La tension continue UT qui varie entre 0 et 3,3V est appliquée à l’entrée ADCIN10 du convertisseur analogique numérique du DSP.

E

(2)

UTBM IF40. Examen final. Page 2

1.2) Écrire en langage C la fonction INITADC réalisant l’initialisation du module ADC en mode start/stop et double séquenceur pour permettre la conversion de la voie 1 ou de la voie 9 et de la voie 10. La conversion sera déclenchée logiciellement. La calibration et le test du module ADC ne sont pas effectués.

1.3) Écrire en langage C la fonction MESURE_COURANT qui réalise la conversion analogique numérique de la voie 1 et renvoie le résultat de la conversion au programme principal.

1.4) Écrire en langage C la fonction MOUVEMENT qui réalise la conversion analogique numérique des voies 9 et 10 et renvoie ces deux valeurs au programme principal. Vous devrez utiliser des pointeurs car une fonction ne peut pas renvoyer deux valeurs. Les variables globales sont interdites.

Le moteur est mis en fonctionnement par la fermeture d’un contact de relais piloté par la broche IOPA1.

Deux capteurs de fin de course sont positionnés de chaque côté de l’axe. Le capteur de fin de course droit est relié à la broche IOPA2 et le capteur de fin de course gauche est relié à la broche IOPA3. Un bouton départ de cycle est relié à l’entrée IOPA4. On doit configurer IOPA1 en sortie, IOPA2 IOPA3 et IOPA4 en entrée.

 IOPA1 au niveau logique 1  le moteur fonctionne.

 IOPA1 au niveau logique 0  le moteur est à l’arrêt.

 Fin de course gauche détectée  IOPA3 = 1 sinon IOPA3 = 0

 Fin de course droite détectée  IOPA2 = 1 sinon IOPA2 = 0

  (front montant) sur IOPA4  départ de cycle.

1.5) Écrire en langage C la fonction INITPA initialisant le port A sachant que le moteur doit être à l’arrêt à la fin de l’initialisation.

Le cycle de fonctionnement est le suivant : après un front montant sur le bouton départ de cycle ( sur IOPA4) et si l’axe est à gauche (IOPA3=1), il se déplace vers la droite à une vitesse réglée par le potentiomètre.

Lorsque l’axe arrive en fin de course à droite (IOPA2=1), il se déplace vers la gauche (toujours à la même vitesse) et revient en position initiale (fin de course gauche IOPA3=1). IOPA1 doit être égale à 1 pendant le déplacement. IOPA1 repasse à 0 lorsque l’axe est de retour à gauche

Pour le déplacement vers la droite, la vitesse du moteur peut varier entre 0 et 3000 tr.min-1 ce qui correspond à un rapport cyclique  de la tension Umcc variant entre 0,5 et 0,8. La valeur moyenne de Umcc est positive.

Pour le déplacement vers la gauche, la valeur moyenne de Umcc doit être négative. La vitesse du moteur peut varier entre -3000 tr.min-1 et 0 tr.min-1. La loi Umcc=f() est une fonction affine.

1.6) Donner le nom du registre permettant de faire varier le rapport cyclique . Calculer ses valeurs correspondant aux vitesses de -3000 tr.min-1, 0 tr.min-1 et +3000 tr.min-1.

La tension Ucom donne la consigne de vitesse en valeur absolue. Pour Ucom =0V, la valeur absolue de la vitesse demandée est de 300 tr.min-1 (vitesse minimale) et pour Ucom = 2,7V, la vitesse demandée est de 3000 tr.min-1. La fonction |𝑣𝑖𝑡𝑒𝑠𝑠𝑒| en fonction de Ucom est une fonction affine.

1.7) Calculer les résultats N0 et N1 de la conversion analogique numérique correspondant respectivement aux valeurs de Ucom (broche ADCIN9) de 0V et 2,7V.

Une variable sens (type int) est utilisée pour calculer la valeur du rapport cyclique. Si sens=0, l’axe se déplace vers la gauche, sinon la valeur de sens=1 et l’axe se déplace vers la droite.

(3)

UTBM IF40. Examen final. Page 3

1.8) Écrire en langage C la fonction VITESSE qui reçoit en paramètre le résultat de la conversion analogique numérique correspondant à Ucom et la variable sens et qui renvoie la valeur à entrer dans le registre (question 1.5) permettant de faire varier la vitesse.

1.9) Écrire en langage C le programme principal. Ne pas oublier la déclaration des variables.

Exercice 2 : Interfaçage et décodage d’adresses

On donne page suivante le schéma partiel d’une carte 6809. Seuls sont représentés les mémoires et le microprocesseur ainsi que le bus d’adresse.

2.1) Pour les mémoires MEM1, MEM2, MEM3, MEM4 et MEM5, indiquer la capacité mémoire en octets, et l’organisation en nombre de mots et taille des mots (N mots de M bits).

Présenter le résultat sous forme de tableau.

2.2) Compléter le tableau ci-dessous en justifiant vos résultats sur votre copie.

Zone occupée Zone utile (si  zone

occupée) Zone de recouvrement Adresse

mini

Adresse maxi

Adresse mini

Adresse maxi

Adresse mini

Adresse maxi

Taille occupée

Taille utilisée

(si) MEM1

MEM2 MEM3 MEM4 MEM5

Rappel : Table de vérité du 74LS138.

Entrées

Sorties

Valid Select

G1 G2A G2B C B A Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7

0 X X X X X 1 1 1 1 1 1 1 1

X 1 X X X X 1 1 1 1 1 1 1 1

X X 1 X X X 1 1 1 1 1 1 1 1

1 0 0 0 0 0 0 1 1 1 1 1 1 1

1 0 0 0 0 1 1 0 1 1 1 1 1 1

1 0 0 0 1 0 1 1 0 1 1 1 1 1

1 0 0 0 1 1 1 1 1 0 1 1 1 1

1 0 0 1 0 0 1 1 1 1 0 1 1 1

1 0 0 1 0 1 1 1 1 1 1 0 1 1

1 0 0 1 1 0 1 1 1 1 1 1 0 1

1 0 0 1 1 1 1 1 1 1 1 1 1 0

(4)

UTBM IF40. Examen final. Page 4

39 X1

38 EX2

RESET 37 2 NMI

40 HALT 3 IRQ

4 FIRQ 36 MRDY 33 DMAB

A0 8 A1 9 A2 10 A3 11 A4 12 A5 13 A6 14 A7 15 A8 16 A9 17 A10 18 A11 19 A12 20 A13 21 A14 22 A15 23

D0 31 D1 30 D2 29 D3 28 D4 27 D5 26 D6 25 D7 24

E 34 Q 35 BA6 BS 5 RW 32 7 VCC

1 VSS

CI1 6809 circuit 40 br

1 A 2 B 3 C

6 G1 4 G2A 5 G2B

Y0 15 Y1 14 Y2 13 Y3 12 Y4 11 Y5 10 Y6 9 Y7 7 VCC 16 GND 8

CI2 74LS138

1 A 2 B 3 C

6 G1 4 G2A 5 G2B

Y0 15 Y1 14 Y2 13 Y3 12 Y4 11 Y5 10 Y6 9 Y7 7 VCC 16 GND 8

CI3 74LS138

10 A0 9 A1 8 A2 7 A3 6 A4 5 A5 4 A6 3 A7 24 A8 25 A9 21 A10 23 A11 2 A12

20 CE 22 OE 27 WE

D0 11 D1 12 D2 13 D3 15 D4 16 D5 17 D6 18 D7 19

RDY 1

VCC 28 GND 14

MEM2

10 A0 11 A1 12 A2 13 A3 14 A4

15 CE

O1 1 O2 2 O3 3 O4 4 O5 5 O6 6 O7 7 O8 9 VCC 16 GND 8

MEM4

10 A0 9 A1 8 A2 7 A3 6 A4 5 A5 4 A6 3 A7 24 A8 25 A9 21 A10 23 A11 2 A12

20 CE 22 OE 27 WE

D0 11 D1 12 D2 13 D3 15 D4 16 D5 17 D6 18 D7 19

RDY 1

VCC 28 GND 14

MEM3

8 A0 7 A1 6 A2 5 A3 4 A4 3 A5 2 A6 1 A7 23 A8 22 A9 19 A10

18 CE 20 OE 21 WE

D09 D110 D211 D313 D414 D515 D616 D717

VCC 24

GND 12

MEM1

5 A0 6 A1 7 A2 4 A3 3 A4 2 A5 1 A6 17 A7 16 A8 15 A9

8 CS 10 WE

D0 14 D1 13 D2 12 D3 11

VCC 18

GND 9

MEM5

GND Vcc

Vcc

GND A15

A14 A13

A12 A11 A10

A0 A1 A2 A3 A4 A5 A6 A7 A9 A8 A10

A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A1

A0 A0

A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12

A0 A1 A2 A3 A4

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 S2

S3

S5 S1

S4

S4

S5 S3

S2 S1

Bus d’adresse

Références

Documents relatifs

Sa représentation graphique est une droite : c’est donc la courbe. 2°) On lit pour 90 voitures produites un coût de production d’environ 850 milliers d’euros. 3°) Pour un

2. Déterminer la formule brute 3.. 1 ) Donner la composition d’un atome de fer. 2 ) Calculer la charge électrique du noyau. Donner alors celle du cortège électronique. 3 ) Calculer

En choisissant la forme la plus adaptée,

Écrire un programme qui saisit la dimension n d'un tableau T de type int (la dimension maximale supportée est de 20 composantes), puis remplir le tableau par des valeurs entrées

Exercice 7 : Complète les pointillés pour ajuster les équations de

[r]

[r]

2) Quel doit être le nombre minimal de femmes dans cette entreprise pour que l’on ne puisse plus considérer que cette entreprise exerce une discrimination à l’égard des femmes