Projet tutoré - licence.vega.free.fr

44
Projet tutoré Beluche Julien & Vicentin Mathieu 1

Transcript of Projet tutoré - licence.vega.free.fr

Projet tutoré

Beluche Julien & Vicentin Mathieu1

RemerciementsNous remercions tout particulièrement Mr HIEBEL, qui nous a suivis tout au long de ce projet et, sans qui, rien n’aurait été possible.

Nous tenons à remercier également toute l’équipe pédagogique pour l’aide qu’elle nous a apportée tout au long de l’année à travers les cours et les travaux pratiques.

2

SommaireI. IntroductionII. Situation initialeIII. SynoptiqueIV. Les différents organesV. Le bus I²cVI. AlgorithmeVII. EssaisVIII.ConclusionIX. Optimisation

3

I. IntroductionLe projet tutoré a pour but:

De mettre en application les connaissances acquises durant l’année,D’avoir un esprit d’initiative pour répondre à un cahier des charges.

Notre projet consiste à remettre en service un fauteuil électrique. En effet ce dernier, issu des années précédentes, n’est plus fonctionnel.

4

I. IntroductionUn fauteuil à assistance électrique permet aux personnes à mobilité réduite de se déplacer avec facilité. Il répond au besoin des personnes qui, malgréleur mobilité limitée, désirent se déplacer librement.

Il nous faudra en effet effectuer différentes actions telles que:

Programmer la loi de commande du fauteuil,Réaliser le câblage électrique,Effectuer les essais de validations.

5

II. Situation initialeNotre fauteuil est composé de différents constituants :

Fauteuil complet2 batteries 12 V (24 V au total)2 convertisseurs DC/DC (pont en H)2 motoréducteurs 24V DC associés à chaque roue arrièreCapteur inductif pour la mesure de vitesseJoystick inductif pour la commandeBouton arrêt d’urgence et interrupteur d’alimentationCarte de puissanceCarte de commande

6

III. Synoptique

MD03 G MD03 D

Joystick

PIC16F877A

Utilisateur

Mot G

Fauteuil

Mot D

4 entrées analogiques

I²c

Mouvement

Ce synoptique est composéde différents organes que nous allons développer par la suite.

7

IV. Les organes

8

1. Le PIC

Joystick

Frein

I²C

Capteur de vitesse

RS232

Nous disposons d’un PIC 16F877A, dont voici le schéma. Ce modèle est suffisant car nous n’utilisons qu’une entrée d’interruption (en vert) pour le capteur inductif.

Nous utilisons également les entrées analogiques (en rouge) pour le joystick ainsi que la sortie correspondant à la PWM (en bleu) pour moduler la tension d’alimentation des freins. Nous développerons ce principe par la suite.

La programmation du PIC se fait via une liaison RS232 (en jaune). La communication à l’aide du bus I²C utilise les PINS C6 et C7 (en brun).

9

2. Le joystickLe joystick traduit la

volonté de commande de l’utilisateur du fauteuil.Il est composé de 5

bobines.Variation de la tension : 0,8 V à4,2 V. Une fois la conversion Analogique – Numérique effectuée, on obtient une valeur comprise entre 40 et 215.

10

3. Capteur de vitesseToute notre loi de commande dépend de la vitesse du fauteuil. En effet à l’arrêt, le fait de tourner sous‐entend que l’on peut tourner sur place. Ceci est inimaginable en mouvement.

Pour connaitre la vitesse à tout moment, il a été mis en place un capteur inductif qui réagit lorsqu’une partie métallique se présente face à lui.

11

3. Capteur de vitesse

Voici la courbe de réponse du capteur inductiflors du passage d’une pièce métallique.

Le choix du capteur inductif est dû à la facilité de sa mise en œuvre. L’inconvénient est la perte de précision à faible vitesse.

12

3. Capteur de vitesse

2,7 kΩ

1,8 kΩ

13

3. Capteur de vitesse5 pièces métalliques sur les 5 rayons de roue.

Pièce devant le capteur le signal de sortie est envoyésur l’entrée d’interruption externe.

Comptage du nombre de front montant pendant une seconde

Utilisé pour la loi de commande

conversion en km/h.

14

3. Capteur de vitesse

0,188m

(Avec n le nombre de front montant par seconde)

15

4. Les motoréducteursChaque roue est entrainée par un moteur à courant continu à excitation série par le biais d’un réducteur.

Chaque moteur est bloqué par un frein électromagnétique à manque de courant.

16

4. Les motoréducteurs

RéducteurMCCRéducteur MCC

Roue gauche Roue droite

24 V

Schéma de l’ensemble batteries, motoréducteurs, roues.

17

4. Les motoréducteursMise en service des moteurs :

Alimentation des moteurs en 24VDCTension nécessaire à desserrer les freins U > 17VTension nécessaire à serrer les freins U < 5 VVitesse nominale des moteurs de 310 tr.min‐1

Vitesse maximale du fauteuil à vide de 8 km.h‐1

18

4. Les motoréducteurs

Frein électromagnétique démonté de l’arbre moteur

Frein

MCC

19

5. Les modules MD03Permettent une variation de vitesse des moteurs àcourant continu.

Caractéristiques principales des modules :Tensions d’entrée 50VDC max.Tensions de sortie 24VDC max.Courants de sortie 20A max.

20

5. Les modules MD03Différents modes de commande :

0v‐2,5‐5v entrée analogique. 0v marche arrière, 2,5v stop, 5v marche avant.0v‐5v entrée analogique. 0v stop, 5v vitesse max. (Logique positive pour marche avant et logique négative pour marche arrière).Mode Radio Control.PWM.I2C jusqu’à 8 modules avec changement d’adresse grâce aux interrupteurs.

21

Pour commander nos 2 modules, nous utiliserons le mode I²c.

Pour commencer il faut affecter deux adresses différentes pour chaque module. Pour ce faire nous utiliseront les interrupteurs présents sur ces derniers en respectant ce tableau.

5. Les modules MD03

22

5. Les modules MD03

Nos deux modules auront donc les adresses 0xB0 et 0xB2.

Adresses du MD03 D: 0xB0 pour l’écriture et 0xB1 pour la lectureAdresses du MD03 G: 0xB2 pour l’écriture et 0xB3 pour la lecture 23

Pour modifier le sens, la vitesse ou l’accélération, il nous faut les écrire dans des registres. Chaque registre correspond à une variable qui va commander un paramètre. Dans le tableau suivant sont détaillés chaque registre.

5. Les modules MD03

Nous utiliserons seulement les registres 0, correspondant au sens de marche, 2 pour la vitesse et 3 pour l’accélération.

24

5. Les modules MD03Ci‐dessous les fonctions permettant de commander les modules MD03 via le protocole I²C.

Il faut tout d’abord définir l’adresse correspondant au module voulu, choisir le registre que l’on veut configurer et enfin donner la valeur souhaitée.

Notez bien que la vitesse est proportionnelle à la valeur tandis que l’accélération augmente lorsque la valeur diminue.

25

5. Les modules MD03Ses fonctions ont étés réalisées afin de permettre par la suite de définir plus facilement les différents paramètres.

Deux fonctions sont nécessaires, une pour le sens et la vitesse et une autre pour l’accélération. Cette dernière ne sera utilisée qu’une seule fois car il s’agit d’un paramètre général.

26

5. Les modules MD03Exemple:

void Ecriture_speed(int 0, int 1, int 200)

0 pour le module MD03 Droite1 pour la marche avant200 pour une vitesse élevé

27

5. Les modules MD03Exemple:

void Ecriture_speed(int 2, int 2, int 40)

2 pour le module MD03 Gauche2 pour la marche arrière40 pour une faible vitesse

28

6. Carte de puissance

29

7. Carte de commande

30

8. Fonctionnement de la PWMUne tension de 24V est appliquée au bornier. A la sortie PWM2 du PIC (PIN CCP2) on a un signal variant entre 0 et 5V. Grâce aux Driver et Power MOSFET ce signal sera augmenté pour varier entre 0 et 24V.

Une tension étant une différence de potentiel, la tension aux bornes des freins sera donc la différence entre 24V et la valeur du signal.

31

8. Fonctionnement de la PWMset_pwm2_duty(170);

Nous donne VPWM = 17 V

Donc Vfrein = 24 – 17 = 7 V

Les freins sont toujours desserrés mais cette fois avec une tension réduite.

set_pwm2_duty(40);

Nous donne VPWM = 4 V

Donc Vfrein = 24 – 4 = 20 V

Les freins sont desserrés.

32

V. Le bus I²cIl n’est composé que de 3 fils:

Le signal de donnée SDA,Le signal d’horloge SCL,Le signal de référence pour la masse.

Les données sont transmises en série de manière synchrone sur SDA.

Le bus ne comporte qu’un seul maître pour plusieurs esclaves, de plus il est permutable.

33

Pour transmettre des donnée il faut surveiller deux choses.

La condition de départ: SCL=1 et SDA passe à 0.La condition d’arrêt: SCL=1 et SDA passe à 1.

V. Le bus I²c

34

V. Le bus I²c

Une fois la condition de départ validée, l’adresse est transmise sur 1 octet, avec le bit de R/W.Il y a ensuite un bit d’acquittement ACK avant et après l’octet de données.Pour stopper la trame, il faut remplir la condition d’arrêt vue précédemment.

35

joystick au milieu

joystick en avant

joystick en arrière

joystick àgauche

joystick àdroite

MESURE DE LA VITESSE

joystick au milieu

ARRETER MOTEURS

v≠0

joystick en avant

MAV MOTEURS

joystick en arrière

MAR MOTEURS

joystick àgauche

MAV MOTEUR D

joystick àdroite

MAR MOTEUR D

ARRETER MOTEURS

MAV MOTEURS

ARRETER MOTEURS

MAV MOTEUR D

SERRER FREINS

MAV MOTEUR G

MAR MOTEUR G

SERRER FREINS

MAV (ralentie) MOTEUR G

MAV MOTEUR G

MAV (ralentie) MOTEUR D

v=0

VI. Algorithme

36

VII. Les essaisVoici un récapitulatif des essais réalisés:

Test de fonctionnement des moteurs.Identification des différents composant et notamment des cartes de puissance et de commande.Mise en place de l’acquisition du signal fourni par le capteur de vitesse pour obtenir une vitesse exploitable.Conversion de cette valeur et visualisation de cette dernière sur l’Hyperterminal TinyBootloader.Mise en place de la conversion analogique‐numérique pour les valeurs du joystick.

37

VII. Les essaisVoici un récapitulatif des essais réalisée:

Essais réalisés en transférant différents programmes dans les modules MD03 à l’aide du bus I²c. Les modules alimentant un petit moteur (modification de l’accélération, essai avec le joystick pour modifier le sens et la vitesse).Définition des tension nécessaire ou serrage/desserrage des freins et modulation à l’aide de la PWM.Câblage.

38

VIII.ConclusionAvant de conclure sur ce projet et cette année, nous tenions à remercier l’ensemble du personnel de l’IUT.

Ce projet très complet nous a permis d’appréhender différentes problématiques, dans plusieurs domaines tel que la programmation ou le câblage électrique.

39

VIII.ConclusionQuelques problèmes avec la mise en place du protocole I²c et la prise en main des module MD03.

L’identification des cartes déjà existantes à nécessitéde longues recherches.

Enfin, certains composants n’ont pas supporté les essais ce qui nous a obligé a les remplacer.

40

VIII.ConclusionToute les éléments du fauteuil fonctionnent indépendamment. Par manque de temps nous n’avons pas pu tester le programme complet mais nous espérons le faire valider très prochainement.

41

IX. OptimisationToutefois le fauteuil pourrait être encore amélioré:

En ajoutant une gestion de charge des batteries. En effet une mesure du courant absorbé en fonction de temps (A.h) permettrait de mesurer avec précision le niveau de charge des batteries.En ajoutant un capteur de vitesse sur la deuxième roue. On obtiendrait une meilleure mesure de vitesse. Il faudrait utiliser dans ce cas un PIC de la série 18F qui possède plusieurs entrées d’interruption externe.

42

IX. OptimisationToutefois le fauteuil pourrait être encore amélioré:

En optimisant la loi de commande. Celle que nous avons créée ne permet qu’une seule valeur de sensibilité de la direction a vitesse non nulle. Une loi dont la sensibilitéserait inversement proportionnelle à la vitesse serait plus adaptée.En améliorant l’ergonomie du câblage entre les différents composants.En mettant en place une méthode simple de recharge des batterie, car dans notre cas il faut les démonter du fauteuil pour les recharger.

43

Nous vous remercions de votre écoute

Beluche Julien & Vicentin Mathieu44