rcva 2007. 2 diapositives - introduction ………………………………………... 03 -...

100
RCVA 2007

Upload: paschal-grange

Post on 03-Apr-2015

107 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

RCVA2007

Page 2: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

2

diapositives

- Introduction ………………………………………... 03

- Description mécanique sommaire…………………04

- Présentation générale ……………………………..08

- La carte mère ……………………………………... 09

- La carte de puissance ……………………………. 40

- Les cartes d’interface …………………………….. 62

- Le programme …………………………………….. 74

- Organisation de l’équipe……………………………91

Sommaire

Page 3: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

3

Introduction

Cette année le thème est le « tri sélectif ». Deux robots, s’affrontent pendant un match de 90 secondes, l’objectif étant de mettre le maximum de déchets dans les poubelles appropriées.

Ville d’Avray entame sa 10ème participation dans ce concours. Pour 2007 l’ équipe est constituée de 8 étudiants.

Page 4: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

4

DESCRIPTION MECANIQUE SOMMAIRE

Toute la partie mécanique présente une symétrie par rapport à un axe vertical passant par le milieu de l’essieu. Les masses ont été réparties de sorte que le centre de gravité soit situé le plus proche possible de cet axe vertical (et le plus bas possible)Les 2 bras et leurs accessoires respectent cette symétrie.Les roues motrices et roues folles sont alignées sur l’axe de l’essieu parfaitement perpendiculaire à l’axe longitudinal du robot.La batterie est placée au centre, au dessus des roues.Les pompes à vide au dessus de la batterie.Les 2 cartes mère et puissance sont placées symétriquement par rapport à la cloison verticale de séparation dont le plan passe par l’axe de l’essieu.Une seule exception à la règle est liée à la présence des 4 ventouse magnétiques dont le rôle est de stocker les piles. Ces ventouses sont placées du côté considéré arbitrairement comme l’arrière du robot. Mais cette masse est en partie compensée par le laser bas et un capteur US supplémentaire, situés à l’avant du robot.

Disposition symétrique

Compartiment batterie

Axe de l’essieu

Cloison verticale

Page 5: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

5

DESCRIPTION MECANIQUE SOMMAIRE

Le chassis

La partie basse est réalisée en tôle d’aluminium. Elle constitue la base roulante.La cloison centrale de séparation des 2 cartes mère et puissance est également en aluminium.Tout le reste est réalisé en planches stratifiées verre-epoxy et carbone-epoxy

Page 6: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

6

DESCRIPTION MECANIQUE SOMMAIRE

Les capteurs et leurs fonctionnalités

Laser haut repérage du bac et recalageLaser bas repérage des déchets2 débit-mètres mesure du débit des pompes à vide4 codeurs incrémentaux mesure rotation roues et brasTourelle infra rouge repérage lointain adversaireTirette de départ (fourche optique)Choix couleur (interrupteur simple)Choix stratégiques (tétons reliés à micro-switchs)De chaque côté du robot: - 3 ou 4 US bas repérage des déchets - 4 US haut repérage proximité adversaire - barrière optique (à l’arrière) présence pileSur chacun des 2 bras: - rampe optique de 6 capteurs réflexes sensibles à la distance centrage de la ventouse sur le centre du déchet et repérage de l’orientation du déchet - 1 capteur couleur situé à proximité de la ventouse repérage du type de déchet pour le tri -1 micro_switch présence d’objet dans la pince

Page 7: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

7

DESCRIPTION MECANIQUE SOMMAIRE

Les actionneurs

2 moto réducteurs roues 20 watts réduction 4/12 moto réducteurs bras 20 watts réduction 50/12 pompes à vide aspiration ventouse4 ventouses magnétiques collage piles2 servo-moteurs axe 1 ventouses2 servo-moteurs axe 2 ventouses2 servo-moteurs pinces déchet 1

Batterie 29 volts NI MH 4300 mAh 1.8 kg

Page 8: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

8

L’électronique est répartie sur plusieurs cartes :

-La carte mère

-La carte de puissance

-Les 4 cartes interfaces

PRESENTATION GENERALE

Page 9: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

9

LA CARTE MERE

Page 10: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

10

Introduction

Ce chapitre concerne la réalisation de la carte mère. Elle doit gérer plusieurs taches :

- la stratégie

- les déplacements du robot

- le traitement des déchets

- la gestion de l’adversaire

- l’interface de communication hommes/machine

Nous avons dû concevoir la carte mère en essayant de prévoir les besoins futurs et les évolutions possibles.

Page 11: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

11

On utilise le principe multi taches / multi processeurs :

- Processeur central qui gère stratégie, déplacements, asservissement, contrôle de l’environnement.

- Processeur servo qui gère les servos moteurs.- Processeur tourelle qui gère la tourelle.

Les 3 processeurs échanges leurs informations en parallèle, à travers leur bus données 8 bits, par l’intermédiaire de registres tampons situés dans 2 CPLD.

La procédure d’échange utilise le principe de l’adressage externe : Les données circulant sur les bus P0Les adresses circulant sur les bus P2

Cette procédure est illustrée par l’animation suivante :

I) Système multi processeurs

Page 12: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

12

CENTRALAsservissements

DéplacementsStratégies

Fech=250Hz

GESTION TOURELLE

Récupération des diodes infrarougeFiltrage

Calcul cap & distance

à 120Hz

GESTION SERVOS

Génération de signauxPWM à 50 Hz

TOURELLE

Exemplede gestion

multi-tâches

Page 13: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

13

MICRO-CENTRALAsservissements

DéplacementsStratégies

Fech=250Hz

GESTION TOURELLE

Récupération des diodes infrarougeFiltrage

Calcul cap & distance

à 120Hz

MICRO-SERVOS

Génération de signauxPWM à 50 Hz

TOURELLE

tam

pon

tam

pon

tam

pon

BUS-DATA 8 bits

Page 14: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

14

1er exemple:

Liaison tourelleCENTRAL

Page 15: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

15

CENTRALAsservissements

DéplacementsStratégies

Fech=250Hz

GESTION TOURELLE

Récupération des diodes infrarougeFiltrage

Calcul cap & distance

à 120Hz

GESTION SERVOS

Génération de signauxPWM à 50 Hz

TOURELLE

tam

pon

tam

pon

tam

pon

BUS DATA 8 bits

Décodage d’adresseBUS ADRESSE

write

1er temps:

Le processeur tourelle écrit dans le tampon

Page 16: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

16

CENTRALAsservissements

DéplacementsStratégies

Fech=250Hz

GESTION TOURELLE

Récupération des diodes infrarougeFiltrage

Calcul cap & distance

à 120Hz

GESTION SERVOS

Génération de signauxPWM à 50 Hz

TOURELLE

tam

pon

tam

pon

tam

pon

Décodage d’adresse

BUS DATA 8 bits

BUS ADRESSE

read

Décodage d’adresseBUS ADRESSE

write

2eme temps:

Le processeur CENTRAL lit le tampon

Page 17: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

17

2eme exemple:

Liaison CENTRAL SERVO

Page 18: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

18

CENTRALAsservissements

DéplacementsStratégies

Fech=250Hz

GESTION TOURELLE

Récupération des diodes infrarougeFiltrage

Calcul cap & distance

à 120Hz

GESTION SERVOS

Génération de signauxPWM à 50 Hz

TOURELLE

tam

pon

tam

pon

tam

pon

Décodage d’adresse

BUS DATA 8 bits

BUS ADRESSE

write

1er temps:CENTRAL écrit dans tampon

Page 19: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

19

CENTRALAsservissements

DéplacementsStratégies

Fech=250Hz

GESTION TOURELLE

Récupération des diodes infrarougeFiltrage

Calcul cap & distance

à 120Hz

GESTION SERVOS

Génération de signauxPWM à 50 Hz

TOURELLE

tam

pon

tam

pon

tam

pon

Décodage d’adresse

BUS DATA 8 bits

BUS ADRESSE

write

BUS ADRESSE

Décodage d’adresse

read

2eme temps:SERVO lit le tampon

Page 20: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

20

CENTRALAsservissements

DéplacementsStratégies

Fech=250Hz

GESTION TOURELLE

Récupération des diodes infrarougeFiltrage

Calcul cap & distance

à 120Hz

GESTION SERVOS

Génération de signauxPWM à 50 Hz

TOURELLE

tam

pon

tam

pon

tam

pon

Décodage d’adresse

BUS DATA 8 bits

BUS ADRESSE

readwrite

BUS ADRESSE

Décodage d’adresse

read

Décodage d’adresseBUS ADRESSE

write

Page 21: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

21

CENTRALAsservissements

DéplacementsStratégies

Fech=250Hz

GESTION TOURELLE

Récupération des diodes infrarougeFiltrage

Calcul cap & distance

à 120Hz

GESTION SERVOS

Génération de signauxPWM à 50 Hz

TOURELLE

tam

pon

tam

pon

tam

pon

Décodage d’adresse

BUS DATA 8 bits

BUS ADRESSE

readwrite

BUS ADRESSE

Décodage d’adresse

read

Décodage d’adresseBUS ADRESSE

write

CPLD

Page 22: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

22

II) Les différents blocs

1) Le µcontrôleur central Le microcontrôleur utilisé est un ATMEL 89C51 RD2 en boîtier PLCC 44 broches.

->Famille Intel 8 bits noyau 80C52-> 64 ko de mémoire Flash -> 2 ko de RAM -> 4 ports dont 2 ports P0 et P2 dédiés à l’adressage externe-> Mode 6 cycles avec quartz à 22 Mhz -> 4 sorties PWM disponibles

On appelle ce composant µcontrôleur central car il contient le programme qui gère la stratégie et les déplacements (asservissement).

Le DATA BUS P0_central permet de communiquer avec divers composants tels que les CPLD, les CAN, les PE12316, par le procédé de l’adressage externe.

Le micro peut contenir 2 Ko de RAM interne dédiée aux variables déclarées dans le programme. Au delà de 2 Ko, les données sont considérées comme externes et disponibles sur le port P0 et leurs adresses sur le port P2.

Page 23: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

23

-P0 est utilisé en entrée ou sortie suivant le cycle Read ou Write (par exemple en entrée quand les CANs lui renvoient des informations)

-P1 est utilisé en sortie, il envoie les commandes des actionneurs à la carte de puissance.

-P2 permet l’adressage externe de P2.0 à P2.5, alors que P2.6 et P2.7 permettent de sélectionner les deux composants PE dédiés aux codeurs incrémentaux.

-P3 : de P3.2 à P3.5, le port est utilisé comme (entrée/sortie), le signal P3.6 est utiliser pour l’écriture WR et P3.7 pour la lecture RD-RD ; ce bit indique la lecture d’une adresse externe.

-WR : ce bit indique l’écriture dans une adresse externe.

Page 24: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

24

MICROPROCESSEUR CENTRAL

Page 25: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

25

2) Les CPLD

Fonction : Ces deux composants programmables servent à effectuer le décodage d’adresse évoqué précédemment. Leur programmation est réalisée en VHDL.

PROBLEME DU ROUTAGE: Pour chaque bloc, la première chose à faire c’est le boîtier :

Ici il a fallut dessiner le contour puis les 84 broches en les espaçant de 0.1 Inch (mesures retrouvé dans la documentation constructeur).

Page 26: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

26

Une fois le boîtier fini il faut créer le symbole que l’on va utiliser pour la connectique :

En créant le symbole il ne faut pas oublier de nommer les 84 broches pour pouvoir mieux s’y retrouver sur le schéma.

Il faut ensuite relier le symbole au boîtier (assigner les broches du symbole à celles du boîtier).

Page 27: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

27

Une fois la connexion finie, les composants sont prêts à être utilisés dans un schéma.

Page 28: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

28

Une fois la connexion finie, les composants sont prêts à être utilisés dans un schéma.

Page 29: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

29

3) Le micro processeur servos Les servomoteurs sont commandés par un signal PWM. Le rapport cyclique

de la commande impose une position au servomoteur.

Les commandes des servos moteurs sont issues du programme du microcontrôleur central. Celui-ci mémorise ces commandes dans un tampon situé dans un CPLD.

Le microcontrôleur servo les récupère ensuite par lecture du tampon puis génère une commande PWM interprétable par les servos.

Page 30: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

30MICROPROCESSEUR SERVOS

Page 31: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

31

4) Le micro processeur Tourelle

Principe de la tourelle infrarouge :

Une balise infrarouge positionnée sur l’adversaire émet en permanence vers notre tourelle constituée de diodes réceptrices.

L’état des diodes nous informe sur le cap et la distance de l’adversaire :

- le cap est donné par la bissectrice de l’arc éclairé.- la distance par le nombre de diodes éclairées.

Page 32: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

32

Entrée :Connect_tourelle, octet venant de la tourelle qui indique quels sont

les capteurs ‘éclairés’ par la balise

Sortie :Po_tourelle, mot sur 8 bits, après traitement par le µC, qui envoie les informations distance et cap au CPLD.

Page 33: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

MICROPROCESSEUR TOURELLE

Page 34: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

34

5) Les CANs

Le robot est équipé de deux lasers, le laser bas pour le repérage des déchets, le laser haut pour le repérage du bac et le recalage. Ces lasers délivrent une information distance sous forme d’une tension variant de 0 à 10V. Cette tension est convertie en numérique par deux Convertisseurs Analogique-Numérique.

Nous utilisons des ADS7806P : Résolution: 12 bits tconv: 20us Interfaçable sur bus 8 bits Vcc: 5V

Page 35: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

35

Les lasers fournissent une tension de 0 à 10V. Les CANs en mode unipolaire ne peuvent recevoir qu’une tension comprise entre 0-5V. Il faut donc ajouter un pont diviseur de tension.

Entrées :CS_CAN : bit de sélection de CAN, il permet d’accéder au DATA_BUS

(entrée/sortie) Byte : bit permettant de sélectionner les 8 bits msb ou les 4 bits lsb.

R/C : bit permettant d’autoriser une conversion (R/C=’0’) ou autorise une lecture de conversion (R/C=’1’).

Sorties :DATA_BUS relié au bus data P0 du uC central, il permet à celui-ci de récupérer

les conversions fournies par le CAN.

Page 36: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

36

1 -> Début de conversion2 -> Conversion3 -> Lecture des msb4 -> Lecture des lsb

Quand le bit /CS=’0’, une conversion débute, le bit /Busy quant à lui est à ‘0’ le temps de la conversion.

Si Byte=’0’ et /Busy=’1’ alors on lit les 8 msb.Si Byte=’1’ et /Busy=’1’ alors on lit les 4 lsb.

Page 37: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

37

CONVERTISSEURS A/D pour lasers

Page 38: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

38

6) Le Buffer 74HCT573 Diodes diagnostique : Les 8 diodes diagnostiques contribuent au débugging en permettant

d’afficher des octets d’information.

Le buffer a deux intérêts :- Il peux mémoriser l’information. - Il augmente le fan-out, ce qui permet d’alimenter en courant les diodes.

Page 39: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

39

DIODES DIAGNOSTIC

Page 40: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

40

7) Les PE12316 (Gestion des codeurs incrémentaux)

a) Introduction

Le PE12316 gère 3 axes: (les 2 roues et un bras)Le PE12024 gère 1 axe (l’autre bras)

Ils permettent de compter les impulsions issues des codeurs incrémentaux (roues et bras) et de renvoyer l’information au microcontrôleur central par le bus P0.

On pourra ainsi après traitement connaître la position des deux roues et des 2 bras. Ce qui permet l’asservissement de cette position sur des consignes stratégiques.

Exemple pour les roues

Page 41: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

41

b) Etude des signaux CHA et CHB

Chacun des deux capteurs incrémentaux délivre deux signaux CHA et CHB en quadrature de phase. Ces deux signaux nous permettent de connaître le sens de rotation des roues en observant l’avance ou le retard de CHA par rapport à CHB de ± Π/4 et on connaît la valeur de cette rotation en comptant le nombre d’impulsions envoyées. Nous utiliserons les PE en mode 2 (M2 = ‘1’, M1 = ‘0’ et M0=‘1’), ce qui permet de comptabiliser les fronts montants et descendants sur chacune des 2 voies. (Soit un facteur 4 sur la fréquence des impulsions).

Page 42: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

42

Les PE12316 et PE 12024

Page 43: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

43

8) Le MAX 235 Le MAX235 sert assurer la transmission des informations envoyées en

séries entre les trois microcontrôleurs RD2 et le PC. En effet les μ contrôleurs utilisent des niveaux TTL et la liaison RS232 des niveaux +-10V. Le MAX235 assure donc cette mise à niveau.La liaison est bi-directionnelle: PC vers μ contrôleurs pour la programmation IN SITU μ contrôleurs vers PC en mode débugging

Page 44: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

44

Nous avons choisi la version 235 du MAXIM au lieu de la version 233 car nous avons besoin de trois transformations séries.

On peut ainsi obtenir :

-Sur le connecteur 1 une liaison μ central ↔ PC-Sur le connecteur 2 une liaison μ tourelle ↔ PC-Sur le connecteur 3 une liaison μ servos ↔ PC

Par ailleurs des programmes diagnostic, permettent de récupérer les infos des 3 micros sur le PC.

C’est ainsi qu’on peut récupérer un tableau de nombres, tracer une courbe de réponse d’un asservissement, visualiser l’état de la tourelle, représenter sur un terrain virtuel l’emplacement des déchets …

Page 45: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

45

MAXIM 235

Page 46: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

46

LA CARTE DE PUISSANCE

Page 47: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

47

I) La carte de puissance1) Présentation

La carte de puissance est un élément essentiel du robot. Elle doit adapter et redistribuer la tension de la batterie afin d'alimenter le robot. La tension de la batterie étant de l'ordre de 30V, il est nécessaire d'abaisser cette tension pour alimenter les composants numériques en 5v et les capteurs en 15v.

La carte doit aussi fournir la puissance pour les moteurs des roues et des bras du robot à partir de commandes envoyées par la carte mère.

La réalisation de cette carte n'est pas aisée car d'importants problèmes apparaissent rapidement: un espace réduit, l'accessibilité de certaines parties, les problèmes électromagnétiques dus aux forts courants... 

Page 48: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

48

2) Espace réduit Des modifications presque constantes du robot ont nécessité à plusieurs

reprises de réadapter la position des composants sur la carte. Toutes ces évolutions ont permis d’obtenir une carte qui réponde a toutes les exigences.

Une grande partie de la superficie de la carte est prise par les radiateurs qui servent à dissiper la chaleur des amplificateurs de puissance. La forme de la carte qui n'est pas rectangulaire est déterminée par la mécanique, l'emplacement de la batterie, l'arrêt d'urgence, le laser...

3) Accessibilité Les interrupteurs sont montés sur une petite carte à part, fixée sur la carte

de puissance par des entretoises. La batterie placée au centre du robot doit se connecter facilement sur la carte. On utilise pour cela une prise rapide mais les pastilles sur la carte doivent être proches de la batterie et placées de telle sorte que le câble possède un accès direct. La carte doit pouvoir être démontée rapidement sans avoir à dessouder ou à démonter tout le robot. Il faut utiliser des connecteurs et les placer de façon à pouvoir les défaire aisément et ce, sans que les câbles traversent d’un bout à l’autre.

Page 49: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

49

4) Problèmes physiques Lors de la réalisation de la carte, il faut faire face à différents problèmes

physiques. La carte de puissance transporte de forts courants et à cause des moteurs on peut atteindre des courants maximums élevés au démarrage. Il faut alors des pistes larges qui rendent le routage plus difficile et diminuent la place possible pour les composants. Etant donné qu'il s'agit d'une carte double couche, il est nécessaire d'éviter de faire passer deux pistes l'une au-dessus de l'autre ce qui crée des couplages capacitifs.

A éviter aussi, les angles droits et les vias afin de garder des signaux les plus propres possibles.

La carte comporte plusieurs masses : celle de la batterie, puis en sortie des trois convertisseurs DC/DC. Pour éviter les problèmes de masse, il faut toutes les relier entres elles en un point sur la carte (principe de l’étoile).

On place aussi un condensateur de découplage à l’arrivée de la batterie sur la carte. Celui ci doit avoir une valeur importante et a donc une taille importante. Les signaux de sortie des convertisseurs DC/DC nécessitent de mettre un condensateur de lissage pour obtenir une allure de signal convenable.

Page 50: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

50

II) Schémas fonctionnels1) Niveau A0

Le niveau 0 représente les liaisons entre la carte de puissance et le reste du robot.

La carte mère envoie les ordres PWM des moteurs à la carte de puissance. Celle-ci va traiter ces signaux et délivrer la puissance adéquate aux moteurs. La carte de puissance distribue également l’alimentation du robot à partir de la batterie 30V.

Page 51: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

51

2) Niveau A-1

Ce niveau représente le schéma fonctionnel des cartes de puissance. Ces cartes sont composées de 3 blocs principaux : interrupteurs, convertisseurs DC/DC et amplificateurs de puissance.

Page 52: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

52

III) Schémas de routage

BLOC AMPLIFICATEURS DE PUISSANCE

Page 53: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

53

BLOC TRACOS

Page 54: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

54

SCHEMA DE ROUTAGE

Carte de puissance Cartes interfaces

Carte mère

Page 55: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

55

Quelques règles de routage à respecter :► Les pistes qui supportent des courants élevés doivent être les plus courtes possibles pour éviter les pertes par effet joules et donc les échauffements.

► La masse doit être la plus court possible pour éviter les pertes car tout le courant passe par la masse.

► Toutes les masses doivent être réunies en un même point.

► Essayer de réduire le plus possible le nombre de vias qui créent des ruptures d’impédance.

► Espacer les LM18200 pour éviter des zones de températures trop élevées.

► La masse ne doit pas faire le tour de la carte. En effet une boucle de masse crée un champ magnétique néfaste pour les composants.

► Les signaux numériques ne doivent pas être routés sous les tracos sinon risque de perturbation.

Page 56: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

56

IV) Choix technologiques1) Le LM 18200

► DEFINITION :

La réalisation d'une carte de puissance robuste et suffisamment performante n'est pas une chose simple. Cela réclame en particulier le contrôle de la phase de commutation des transistors de puissance (sous peine d'échauffement de ces derniers et tous les problèmes qui en découlent), ce qui passe par une étude rigoureuse de leurs caractéristiques et une maîtrise de la sortie de la commande (pour éviter une configuration dangereuse du pont en H : typiquement en court-circuit). Concevoir et réaliser une carte de puissance opérationnelle et fiable, avec quatre transistors Mos canal N demande un investissement en temps important, or le temps fait toujours défaut à un club de robotique. Les progrès de l'électronique ont permis l’apparition des circuits de puissance intégrant à la fois le pont en H et son pilote. Nous utilisons un de ces circuit : le LM18200.

Le LM18200 est un amplificateur regroupant un pont en H et son pilote de la marque National Semi-conducteur.

Page 57: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

57

Il possède la particularité d'être commandé en PWM (Pulse Width Modulation), c'est à dire que la valeur du courant de sortie dépend du rapport cycle du signal d'entrée. La source électrique provient de la batterie (~30 V).

Le LM18200 peut délivrer en continu un courant de 3A et 6A en valeur max transitoire.

Ces valeurs peuvent être dépassées si l'amplificateur est associé à un radiateur.

principe du LM18200 -

► CARACTERISTIQUES :

Page 58: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

58

- Principe de l’amplificateur -

Il est possible de relier les sorties des LM18200, mettant en parallèle 2 composants pour pouvoir fournir deux fois plus de puissance aux moteurs à échauffement égal. Cette astuce est utilisée pour fournir la puissance aux moteurs des roues.

Le sens de rotation des moteurs dépend du niveau logique de la patte direction.

Les entrées Brake, Direction et PWM viennent de la carte mère. Le thermal flag est lui envoyé vers la carte mère.

Le connecteur de puissance récupère les signaux OUTPUT ainsi que le GND.

Page 59: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

59

LM18200

► Tension d’alimentation : jusqu’à 60V► Courant de sortie : de 3 à 6 A► Température maximale supportée : 150°C

Pin 1, Pin 11 : BOOSTRAP 1, BOOSTRAP 1 : sert à la pompe de charge interne, nécessaire pour la génération d'une tension supérieure à celle d'alimentation (commande des grilles des transistors côté haut) il faut donc placer une capacité de faible valeur (10 nF par exemple) entre chacune de ces broches et la sortie de puissance correspondante.Pin 2, Pin 10 : OUTPUT 1, OUTPUT 2 : sortie 1, sortie 2Pin 3 : DIRECTION : cette entrée contrôle la direction de courant en sortie et donc la direction de rotation du moteur.Pin 4 : BRAKE : commande du frein électrique, le freinage met les sorties en court-circuit afin d'utiliser le moteur comme frein.Pin 5 : PWM : entrée du signal PWM venant de la carte mère. Le signal permet de contrôler la vitesse du moteur en fonction du rapport cyclique du signal. Plus il tend vers 1, plus le courant de sortie tendra vers 6A.Pin 6 : VS : entrée pour l'alimentation du l'amplificateur. Pin 7 : GROUND : cette entrée est connectée à la masse de la batterie.Pin 8 : CURRENT SENSE : c'est un limiteur de courant pour éviter les dépassements. Un montage permet de régler la valeur du dépassement avec un condensateur et une résistance. Inutilisé sur le robot donc relié à la masse.Pin 9 : THERMAL FLAG : cette pin fournit un signal en cas d'échauffement thermique. La patte 9 est active à l'état bas à partir de 145°C (température de jonction).

Page 60: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

60

2) Les Tracos

► DEFINITION :

Les convertisseurs DC/DC sont des convertisseurs de tension qui, avec isolement galvanique ou sans isolement, convertissent une tension d'entrée continue en une autre tension de sortie continue. Il est possible d'effectuer une conversion en entrée correspondant à la même tension en sortie : le convertisseur DC/DC agit dans ce cas en tant qu'élément isolant. La conversion effectuée par les convertisseurs DC/DC peut être de type step-up (d'une tension faible à une tension plus élevée) ou de type step-down (d'une tension élevée à une tension plus faible). Les principaux critères dont il faut tenir compte sont le rendement, le derating, la régulation linéaire ainsi que la régulation de charge.

Page 61: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

61

► CARACTERISTIQUES :

Nous utilisons des convertisseurs de la marque TRACO. Ils permettent d’obtenir une tension continue régulée en 5 ou 15 volts à partir d’une source en entrée. Cette année, cette source provient directement de la batterie, c'est à dire une tension de 30 VDC. On dispose un condensateur de 100 µF en sortie de chaque TRACO

Le choix des convertisseurs DC/DC doit être adapté par rapport à la tension en sortie souhaitée ainsi qu'à l'ampérage utilisé. En vue du bilan des consommations, on opte pour un TRACO de 15V à 1 ampère pour les capteurs, un TRACO 5V à 5 ampères pour les servomoteurs et un dernier TRACO pour la carte mère de 5V à 2 ampères. La séparation entre les servomoteurs et la partie numérique (microcontrôleurs, CPLD...) permet d'éviter une détérioration des signaux numériques. Il est en effet préférable de séparer les différentes applications (moteurs des servomoteurs et électronique numérique) afin de ne pas parasiter certaines parties du robot.

Page 62: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

62

Batterie charge30v

régulateur

5v

i=600mAi=600mA

Pj = 15*0.6 = 9watts

batterieDC/DC

Rendement=90%charge30v 5v

i=600mAi=110mA

Pj=0.1*5*0.6=0.3watts

Masse commune et puissance dissipée de 9 Watts

courant batterie = courant dans la charge

Masses séparées et puissance dissipée de 0.3 Watts

Courant batterie < courant de charge (5*600=0.9*30*110)

Comparaison entre convertisseurs DC/DC et régulateurs

Page 63: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

63

TRACO pour les capteurs TAP 2413►Tension entrée : 30 VDC►Tension de sortie : 15 V►Courant de sortie : 1 A►Puissance : 15 W

TRACO pour la carte mère TEN 10-2411►Tension entrée : 30 VDC►Tension de sortie : 5 V►Courant de sortie : 2 A►Puissance : 10 W

TRACO pour les servomoteurs TEN 25-2411►Tension entrée : 30 VDC►Tension de sortie : 5 V►Courant de sortie : 5 A►Puissance : 25 W

Page 64: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

64

► BROCHAGE :

TAP 2413 :Pin 1 : + Vin (VCC)Pin 2 : - Vin (GND)Pin 3 : + Vout Pin 4 : pas disponiblePin 5 : - Vout

TEN 10-2411 :

Pin 1 : + Vin (VCC)Pin 2 : - Vin (GND)Pin 3 : + Vout Pin 4 : pas disponiblePin 5 : - VoutPin 6 : Case ground (en option)A

TEN 25-1411 :Pin 1 : + Vin (VCC)Pin 2 : - Vin (GND)Pin 3 : On / Off Pin 4 : pas disponiblePin 5 : + VoutPin 6 : - VoutPin 7 : Trim

Page 65: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

65

3) Les Interrupteurs et connecteurs► CONNECTEURS :

Les connecteurs permettent l'entrée/sortie des signaux véhiculant sur les différentes cartes du robot. Ils permettent donc l'interconnexion entre les 6 cartes. Du fait d'un espace physique restreint, il est nécessaire de choisir des connecteurs de petite taille. Cependant, cet avantage entraîne un inconvénient : il n'est pas possible de transmettre des signaux de puissances présentant en trop fort ampérage. Il faut donc séparer les signaux de la carte de puissance :

- Des connecteurs Conrad (3, 5 et 10 broches) seront utilisés pour les signaux faibles puissances

- Deux gros connecteur 10 points seront utilisés pour les signaux commandant les moteurs, pompes, ventouses magnétiques

- Un connecteur rapide et blindé pour le branchement de la batterie

Connecteurs CONRADBoîtier pour les connecteurs 10 broches

Page 66: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

66

► INTERRUPTEURS :

Les interrupteurs servent à couper l'alimentation des différents blocs de la carte de puissance. Ils doivent supporter un fort courant et prendre le moins de place sur la carte. Pour cela, ils sont montés sur une petite carte annexe positionnée au-dessus de la carte de puissance. Le raccord entre les deux est effectué par des fils de section importante.

Le principal intérêt des interrupteurs est de ne pas utiliser toutes les fonctions du robot lors des essais si certaines ne sont pas nécessaires. Ceci permet donc d'économiser la batterie. Les interrupteurs sont reliés avec une association résistance (2.6 K)/LED pour indiquer l'état de chaque interrupteur (ON/OFF).

Interrupteur coup de poing Carte interrupteurs

Page 67: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

67

V) Conclusion

Nous avons eu la chance de pouvoir faire partie de l’équipe du robot car ce projet nous a apporté beaucoup plus de choses qu’un simple projet tuteuré. La différence principale est qu’ici on n’a pas le « mode d’emploi » pour réussir, il faut que chacun participe pour arriver à un résultat.

Pour la carte de puissance, nous sommes assez content du résultat car nous n’avons pas eu de problèmes lors de la mise en route de la carte.

Page 68: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

68

LES CARTES D’INTERFACES

Page 69: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

69

I) Introduction

Nous devons réaliser les cartes d’interface, celles-ci constituent des gares de triage pour les signaux délivrés par les capteurs afin d’alléger en conséquence la complexité de la carte mère.

Une carte d’interface récupère les informations suivantes :- Un sick énergétique pour différencier les couleurs- Une partie de la rampe pour positionner le bras au centre du déchet- Une partie des US pour savoir si l’adversaire est devant nous- Une Barrière capteur avec émetteur et récepteur pour détecter la

présence d’une pile

Une carte interface retransmet ces signaux à la carte mère après triage et mise en forme. Elle envoie également les signaux PWM vers les servo_moteurs.

Page 70: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

70

Schéma général d’une carte d’interface :

Page 71: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

71

II) Schémas fonctionnels

1) Les servos

Il faut transmettre les différents signaux PWM aux servomoteurs du robot. C’est la durée d’impulsion des signaux PWM qui commande la position des servomoteurs.

Page 72: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

72

2) Les rampes Chaque bras est équipé d’une rampe optique qui permet de positionner la ventouse

au centre de l’objet.Une rampe est constituée de 6 capteurs optiques de type réflexe, chacun de ces

capteurs étant sensible à la distance par rapport à un seuil ajustable

Schéma fonctionnel fait sous Eagle :

Page 73: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

73

3) Le sick couleur Le sick couleur installé sous la ventouse est un capteur qui permet de faire

la différence entre les couleurs de jeu. Il permet ainsi de faire le tri des déchets.Il s’agit en fait d’un simple capteur réflexe énergétique en lumière rouge, sensible

à l’énergie lumineuse réfléchie (On joue sur le fait que le jaune et le rouge réfléchissent mieux que le bleu et le vert).

Le signal reçu du sick couleur est envoyé sur la carte mère pour être traité par la suite. Le sick est alimenté par le +15 V et la masse venant de la carte mère.

Schéma fonctionnel fait sous Eagle :

Page 74: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

74

4) Les USLes US sont des capteurs réflexe qui permettent de détecter la présence de

l’adversaire devant notre robot ainsi que les déchets. Il suffit de régler le seuil de détection pour une distance donnée. (Soit 48 cm pour l’adversaire et 45 cm pour les déchets).

On reçoit les signaux des US du robot par l’intermédiaire d’un connecteur 5 broches. Les US doivent être alimentés en +15 V.Les US doivent être synchronisés (signaux synchro réunis).

Schéma fonctionnel fait sous Eagle :

Page 75: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

75

5) La barrière optique

La barrière est constituée d’un émetteur et d’un récepteur. Cette barrière permet de savoir si un « objet » (dans notre cas une pile) est collé sur les ventouses magnétiques (Le faisceau lumineux est alors interrompu).

Le signal issu du récepteur est envoyé à la carte mère. L’émetteur et le récepteur sont alimentés en +15 V.

Schéma fonctionnel fait sous Eagle :

Page 76: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

76

III) Le routage

Une fois les schémas fonctionnels tous réalisés, il suffit de cliquer sur l’icône, lorsque la page schematic est ouverte pour commencer le routage.

Nous obtenons nos différents composants situés en dehors de la zone encadrée qui correspond à notre carte. Cette zone a été mise à la dimension mécanique imposée pour une carte d’interface de 12 x 12 cm.

Page 77: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

77

Une fois la fenêtre de routage ouverte, nous pouvons commencer à placer les composants de la manière la mieux adaptée selon la destination du signal. Il est préférable de placer dans un premier temps les composants les plus volumineux. Une fois placée de façon judicieuse nous obtenons la fenêtre suivante :

Une fois les différents composants placés sur une carte 12 x 12, nous allons pouvoir passer au routage des pistes.

Page 78: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

78

Dans un premier temps nous avons réalisé notre routage sans tenir compte de la taille des pistes. Hors ceci fut absurde !!!

Nous avons du refaire le routage car en augmentant la taille de certaines pistes, on ne pouvait plus passer par les chemins que nous avions choisi. Ainsi la taille des pistes d’alimentation a été augmentée. On fournit la taille des pistes choisies ci-dessous :

Taille des pistes de la carte

Signal Taille de la piste (mm)

Masse_servo 1,27

+5 V servo 1,27

+15 V num 1,27

+5 V num 1,016

Masse num 1,016

Autres 0,4064

Page 79: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

79

Une fois le raccordement des différents signaux entre eux réalisé, nous obtenons le schéma suivant où nous différentions deux couleurs différentes, le rouge qui représente le TOP, c'est-à-dire le dessus de la carte et le bleu qui représente le BOTTOM, c'est-à-dire le dessous de la carte.

Maintenant que le routage est terminé, nous contrôlons qu’il n’y a pas d’erreur en faisant

Tools Errors

Page 80: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

80

LE PROGRAMME

Page 81: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

81

I) Introduction

Nous disposons de 3 microcontrôleurs, donc 3 programmes vont leur être associés.

Le microcontrôleur central (AT89C51RD2) : c’est le microcontrôleur qui contient le programme principal. Il gère l’asservissement du robot ainsi que le déroulement des différentes phases de jeux.

Le microcontrôleur tourelle (AT89C51RD2) : il contient le programme de gestion de la tourelle. A partir des informations fournies par la tourelle, il envoie au microcontrôleur central le cap et la distance de l’adversaire.

Le microcontrôleur servos (AT89C51RD2) : il envoie les signaux PWM aux servos, à partir des consignes fournies par le microcontrôleur central.

Page 82: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

82

X

Y

Bord départO

90°

±180°

-90°

Pour pouvoir se repérer en permanence sur le terrain, le robot utilise 3 variables :

L’abscisse x (ROBOT.x) L’ordonnée y (ROBOT.y) Et l’orientation (ROBOT.orientation)

Page 83: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

83

Pour le robot, on prendra comme référence le centre de l’essieu.

Vue de la base roulante :Les roues motrices et les roues folles sont cachées sous la plaque d’alu destinée à supporter la batterie.

Page 84: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

84

II) L’initialisationLe programme doit toujours commencer par une série d’initialisations pour

configurer le microcontrôleur ainsi que les variables donnant la situation du robot à l’instant t=0-.

Les fonctions définies ci-dessous doivent donc toujours être exécutées en premier. Elles sont contenues dans le fichier starter.c.

1) Initialisation du microcontrôleurFonction : void init_micro_controleur (void).

Dans cette fonction, sont initialisés les paramètres avancés du microcontrôleur (nombres de cycles, adressage, …).

C’est aussi dans cette fonction que sont initialisés les timers :

Timer 0 : initialisé en mode 16 bits. Ce timer va permettre l’échantillonnage du robot à 5ms. Etant donné que l’on travaille en mode 6 cycles, avec une fréquence d’oscillateur de 22.1184 MHz, on prend une valeur de rechargement de 47 125 .

Timer 2 : initialisé pour horloge externe sur P1.0 à 6 Mhz (utilisée par les PE)

C’est aussi ici que les fonctionnalités RD2, qui autorisent les sorties PWM de différents modules, sont initialisées.

Enfin, cette fonction exécute un reset sur les 2 PE .

Page 85: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

85

2) Initialisation du robot

Fonction : void init_robot (void).

Dans cette fonction, tous les servos sont mis dans leur position initiale.

L’ensemble des compteurs est initialisé à 0.

On fixe la valeur initiale de toutes les variables globales.

Les commandes de puissance des roues et bras sont mises à 0 et on active la sortie des amplis de puissance.

L’initialisation du robot se termine par l’entrée des coordonnées du robot à l’instant t=0-, puis par l’autorisation des interruptions, ce qui lance l’asservissement du robot, et le met en attente du signal de départ donné par la tirette.

Page 86: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

86

III) Les bases du programme

1) Les fonctions mathématiques

Ces fonctions sont situées dans le fichier math.c.

a) Calcul d’ un sinus

Le prototype de cette fonction est : int sinus(int teta_dixieme).Cette fonction sert à calculer le sinus d’un angle avec une erreur moyenne de

0,2% (erreur max de 0.5%), et un gain de temps important par rapport à la fonction sinus traditionnelle (passage de 2,47ms à 0,12ms).

Cette fonction utilise un tableau de 181 valeurs égales à 4096 x sin(teta) ,teta variable entre 0° et 90° avec un pas de 0,5°.

Pour calculer le sinus d’un angle en dixième de degré (θ) on utilise une interpolation linéaire entre les 2 valeurs encadrantes.

Page 87: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

87

b) Calcul d’ un arc tangentePrototype : long arctang(long y,long x).

Comme pour la fonction sinus, cette fonction utilise un tableau de valeurs (200 valeurs dans ce cas).

Là encore, le gain en temps est significatif. D’autant plus que la fonction peut être appelée régulièrement dans le cas d’un calcul de coordonnées polaires.

c) Calcul de coordonnées polaires

Prototype: void calcul_coordonnee_polaire_cible(long x_codeur,long y_codeur,long *orientation,long *distance).

La durée d’exécution de cette fonction est d’environ 5ms.

La fonction calcule l’angle de manière classique, en calculant l’arc tangente de delta y sur delta x, à l’aide de la fonction précédente. Ainsi que la distance de la cible telle que :

22 __ ydeltaxdeltad

Page 88: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

88

d) Calcul de coordonnées cartésiennes

Prototype : void calcul_coordonnee_cartesienne_cible(long orientation,int d_cm,int *x_cm, int *y_cm).

Le temps d'exécution de cette fonction est d’environ 7ms.Elle utilise les formules de calcul traditionnelles de coordonnée cartésiennes à partir de coordonnées polaires :

Ytetady

Xtetadx

)cos(

)sin(

Où X et Y sont les coordonnées du centre de l’essieu au moment du calcul.

Page 89: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

89

e) Calcul de l’accroissementPrototype : void calcul_acroissements_x_y (void).

Cette fonction est utilisée pour connaître précisément la position du robot en abscisse et en ordonnée. Elle à une durée d'exécution de 0,9 ms.

Algorithme de la fonction :

teta_dixieme =10*ROBOT.orientation Si teta_dixieme >0 Si teta_dixieme <= 900 Sinuso = sinus(teta_dixieme) Cosinuso = sinus(900 - teta_dixieme) Sinon Sinuso = sinus(1800 - teta_dixieme) Cosinuso = - sinus(teta_dixieme – 900)Sinon Si teta_dixieme >= -900 Sinuso = - sin(-teta_dixieme) Cosinuso = sin(900 + teta_dixieme) Sinon Sinuso = - sin(1800 + teta_dixieme) Cosinuso = - sin(- teta_dixieme – 900)

ROBOT.x = ROBOT.x +(sinuso*vitesse /2 ) / 4096ROBOT.y = ROBOT.y +(cosinuso*vitesse /2 ) / 4096

Page 90: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

90

IV) L’asservissement

L’asservissement est réalisé par la fonction void prog_interruption(void), appelée toute les 5ms, par interruption sur le timer 0. Les fonctions liées à l’asservissement sont stockées dans les fichiers tempo.c, asserv_p.c et INC.c.

Les déplacements du robot sont mesurés par odomètrie grâce à 2 roues libres couplées à des codeurs incrémentaux 1000 points.

L’asservissement de type polaire peut prendre les formes suivantes :

Total codeurs : asservissement en distance et orientation. C’est le mode le plus utilisé dans le programme. Il permet lors de déplacements d’arriver à l’endroit voulu en toutes circonstances.Total balise : asservissement en distance et cap balise. Ce mode est très peu utilisé. Il utilise, comme consigne en orientation, le cap de la balise de l’adversaire.Rotation seule : asservissement en rotation seulement. Le fait de le laisser libre en distance lui permet des rotations sans blocage sur des obstacles éventuels.

(Voir le film expliquant les principes sur notre site)

Page 91: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

91

L’asservissement est de type polaire: Les 2 variables distance parcourue et orientation sont évaluées à partir des informations fournies par les 2 roues codeuses.Distance= ½(roue_D + roue_G)Orientation=(roue_D- roue_G)Ces 2 variables sont comparées, toutes les 5 ms, aux valeurs de consigne correspondantes.A partir des écarts résultants, sont élaborées les commandes envoyées aux 2 roues.

calcul_position()

commande_roues()consigne Roues

Roues codeuses

Distance seule : asservissement en distance seulement. Utilisé dans les calages bordure car le robot est alors libre de toute rotation.

Boucle ouverte : le robot n’est pas asservi. Ce mode est essentiellement utilisé pour les phases finales de calage bordure.

Page 92: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

92

1) Asservissement en distance

Pour connaître la distance parcourue par le robot, on va sommer la distance effectuée par les deux roues codeuses. De cette façon, on obtient la distance parcourue par le centre de l’essieu.L’asservissement en distance consiste à envoyer toutes les 5 ms une commande aux moteurs fonction de l’écart entre la distance réelle et la distance désirée ( appelée consigne_distance)

a) Algorithme de l’asservissement en distance

distance = (roue_d + roue_g) /2ecart = consigne_distance - distanceEcrêtage de l’écartcommande = ecart*GAIN_PROPORTIONNEL_DISTANCE commande_distance = commande – GAIN_DERIVE*vitesse Ecrêtage commande_roue_D= commande_distancecommande_roue_G= commande_distance

Page 93: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

93

codeur_incroue_folle_D

consignedistance

codeur_incroue_folle_G

PID

roue_D

roue_G

+distance = 1/2(position_D + position_G)

+-

b) Schéma de principe de l’asservissement en distance

Page 94: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

94

2) Asservissement en orientationL’orientation du robot est obtenue par différence de la distance parcourue par les 2 roues codeuses. Cette orientation est comparée toutes les 5 ms à la consigne orientation.A partir de l’écart correspondant, on calcule la commande orientation qui est envoyée aux commandes des 2 roues.

a) Algorithme de l’asservissement en orientation

orientation = roue_D – roue_Gecart = consigne_orientation - orientationEcrêtagecommande = ecart*GAIN_PROPORTIONNEL_ROTATIONcommande_rotation = commande - GAIN_DERIVE*(vit_roue_D – vit_roue_G)Ecrêtage de la commandecommande_roue_D= commande_rotationcommande_roue_G= - commande_rotation

Page 95: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

95

b) Schéma de principe de l’asservissement en orientation

PID

roue_D

roue_G

-position_D - position_G

+-

codeur_incroue_folle_D

codeur_incroue_folle_G

consigneorientation

-

Page 96: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

96

codeur_incroue_folle_D

consignedistance

codeur_incroue_folle_G

PID

roue_D

roue_G

+1/2(position_D + position_G)

+-

PID

roue_D

roue_G

-position_D - position_G

+-

codeur_incroue_folle_D

codeur_incroue_folle_G

consigneorientation

-

On impose une consigne de distance et une consigne d’orientation au robot

4) Récapitulatif de l’asservissement polaire

Page 97: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

97

ORGANISATION DE L’EQUIPE

Responsabilités

On a tous participé à la conception générale et à la réalisation des cartes électroniques.

Mais les responsabilités ont été partagées sur des points particuliers: 2 étudiants responsables de la mécanique dont 1 étudiant pour la DAO 1 étudiant pour la réalisation (Le chef d’équipe) 2 étudiants responsables de l’informatique 1 étudiant responsable de la communication (création du site, relations avec les partenaires) 2 étudiants responsables de la conception carte de puissance 4 étudiants responsables de la conception carte mère 2 étudiants responsables de la conception des cartes interfaces Timing

Un mois pour prendre connaissance des travaux des anciens et définir le nouveau projet.Huit semaines environ pour réaliser les cartes et l’essentiel de la méca.Premiers tours de roue courant janvier.Le reste du temps pour la programmation, les tests et les mises au point.

Page 98: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

98

CONCLUSION

Que dire après ces 8 mois d’efforts :

La satisfaction -D’avoir beaucoup appris -D’avoir su travailler en équipe dans une bonne ambiance-D’avoir réussi notre projet-D’avoir pu échanger avec nos concurrents à travers le forum & à la Ferté-Et il faut bien l’avouer, d’avoir apprécié le champagne à l’arrivée

Ca nous à donné le virus, et la plupart on envie de repiquer l’année prochaine, en espérant battre Ville d’Avray

Page 99: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

99

Vision du robot après explosion !!!

(Temps de remontage 30 mn environ)

Page 100: RCVA 2007. 2 diapositives - Introduction ………………………………………... 03 - Description mécanique sommaire…………………04 Description mécanique sommaire

100

FIN L’équipe RCVA - 2006 / 2007