[Logos du site]
Suivez nous :
[Sponsors du club]
mdp
Suivez nous :
['ECRIRE]ecrire dans la section robot 2007/2008['ECRIRE]

29/07/2008 L'interface embarquée auteur : C3dr1c[FP][@][M][*]

[HAUT]
Pour faciliter le débug, nous avons équipé Mars'L d'une carte d'interface reliée au can. Au travers de plusieurs menus nous avons accès à toutes les informations du can. L'avertisseur sonore (accompagné d'un message en pop-up sur le lcd) permet d'indiquer les erreurs critiques (batterie, défaut déplacement,...), indique à la façon d'un sonar l'éloignement de l'adversaire pendant le match, il indique également la fin de marche en jouant "les copains d'abord".

La carte se compose de :
-1 écran matriciel 128x128 pixels qui permet d'afficher indépendamment du texte et des images,

-6 Leds permettant d'afficher différentes informations en permanence (couleur de notre équipe, couleur, ...),

-4 boutons

+ + (navigation dans le menu ou modification du volume sonore)

+ - (navigation dans le menu ou modification du volume sonore)

+ Validation sélectionne un menu

+ Annulation (permet d'aller directement à l'écran général)

-1 Buzzer

-1 DsPic 30F4011


Pour le robot 2009 nous reprendrons une base identique, mais songeons à rendre le lcd embarqué aisément dissociable et à développer l'enregistrement de log en EEPROM pour détecter et comprendre plus rapidement les éventuels aléas informatiques.

Nous stockerons également les paramètres fondamentaux en EEPROM (coefficient d'asservissement, seuils d'évitement...). Ces paramètres pourront directement être modifiables depuis l'UART ou le CAN. La carte d'interface pourra alors ainsi agir sur le coefficient concerné sans que l'on soit obligé de "reflasher" le Micro, soit un gain de temps considérable.

Quelques images :
image club robotque alsacien µart ( uart ):manquante

image club robotque alsacien µart ( uart ):manquanteimage club robotque alsacien µart ( uart ):manquanteimage club robotque alsacien µart ( uart ):manquante
|---Edité--- le 16/02/2009 par C3dr1c[FP][@][M][*] --|

26/06/2008 Architecture Elec auteur : Sepi[FP][@][M][*]

[HAUT]
EN CONSTRUCTION



Description Générale :

Afin de pouvoir travailler indépendamment sur chaque partie du robot (asservissement, détection de l’adversaire, Interface Homme/Robot, gestion des objets, commande des servos moteurs, stratégie …) nous les avons répartis sur des microcontrôleurs différents.
Le robot est ainsi piloté par 10 micros dsPIC (7 dans le robot + 3 pour les balises).
Les cartes communiquent entre elles via un Bus CAN (Controller Area Network) commun et ont toutes un identifiant unique compris entre 1 et 15 (0 étant un identifiant réservé à un envoi général).

Le bus Commun :
Pourquoi le Bus CAN ?
1. Fiabilité (Boucle de courant, Checksum Hard intégré au protocole)
2. Rapidité (jusqu'à 1 Mbits/s soit environ 500Kbits/s de données utiles)
3. Priorités entre les périphériques intégrés au protocole

Le bus commun est constitué d’une nappe de 10 fils sur connecteur HE10. La composition du bus est la suivante :
Pin 1 : Commande du relais de Puissance pour les actionneurs
Pin 2 : Masse
Pin 3 : CAN High
Pin 4 : Masse
Pin 5 : CAN Low
Pin 6 : Masse
Pin 7 : Alim 5V
Pin 8 : Alim 5V Alimentation Capteurs et des circuits logiques

Pin 9 : Alim 24V
Pin 10 : Alim 24V Alimentation composants de gestion


A noter que les fils de transmissions CAN sont entourés de 3 fils de masse afin d’absorber d’éventuels parasites.

Les Cartes d’interface puissance :

0_Carte_Alim (A venir : lien Schéma + routage + Photo)
Cette carte gère l’alimentation générale du robot (5V et coupure AU) et la partie puissance des moteurs de propulsion.


0_Puiss_Moteurs (A venir : lien Schéma + routage + Photo)
Interface de puissance des autres moteurs (barillet, doigts, rouleaux ramasseur)


0_Puiss_Servos (A venir : lien Schéma + routage + Photo)
Petite alimentation à découpage 24V vers 6V destiné aux Servos moteurs (trappes d’éjection, Actionneur distributeur horizontal…)


Les cartes de commande :

Template de routage (A venir : lien Schéma + routage + Photo)
Toutes les cartes partent d’une même carte « template » . Elles bénéficient toutes des mêmes fonctionnalités de base :
Pilotage d’un moteur en vitesse et/ou en position par le CAN (périph. de comptage quadratique hard + périph PWM )
Pilotage d’un moteur en tension (périph PWM )
Interface de Debug RS232 (périph UART)
Mesure de tension batterie (périph ADC)
2 leds, RUN et DEBUG


A cela viennent se rajouter des fonctions spécifiques suivant le rôle de la carte dans le robot.

Voici une description sommaire des différentes cartes de MARS’L.

1_Princ (A venir : lien Schéma + routage + Photo)
Coordonne l’initialisation et le match
Gère les modes (boutons du pupitre)
Gère le ramassage des balles via CAN (doigt droit, rouleau horizontal)


2_Asserv_M(A venir : lien Schéma + routage + Photo) et
3_Asserv_S (A venir : lien Schéma + routage + Photo)

Gèrent les déplacements du Robot (couche de vitesse, Asservissement polaire, recalage bordure…)


4_LCD (A venir : lien Schéma + routage + Photo)
Interface Homme/MARS’L
Affichage des signaux CAN sur la matrice LCD
Emet un signal sonore (batterie faible, Adversaire proche, Défaut déplacement, jack de démarrage non connecté…)


5_US (A venir : lien Schéma + routage + Photo)
Détecte les objets sur l’aire de jeu (télémètres IR)
Transmet sur les CAN les coordonnées spatiales X, Y de l’adversaire
Analyse les Echos US


6_Servos (A venir : lien Schéma + routage + Photo)
Applique une consigne aux Servos depuis le CAN
Gère le ramassage des balles via CAN (doigt gauche, rouleau horizontal)


7_Gestion_Objets (A venir : lien Schéma + routage + Photo)
Mesure la couleur des échantillons
Gère le ramassage des échantillons (barillet, Canon)
Dépose des échantillons préservés


8_Balise_M (A venir : lien Schéma + routage + Photo) et
9_Balise_S (A venir : lien Schéma + routage + Photo)

Coordonne les mesures US (A venir : liaison sans fil Xbee)
Calcule la position de l’adversaire sur le terrain
Transmet les coordonnées X et Y à MARS’L (A venir : liaison sans fil Xbee)


10_Balise_ADV (A venir : lien Schéma + routage + Photo)
Émet une impulsion US à 32.8Khz


15_CANanlyser (A venir : lien Schéma + routage + Photo)
Carte de Debug CAN, Passerelle CAN vers RS 232


A venir Schéma Structure Elec

A venir Biblio
CAN

A venir Doc pdf
L298
Pic 30F4011
Traco
Recom
Xbee
LCD
|---Edité--- le 25/11/2008 par Anaïs[FP][@][M][*] --|

10/06/2008 Présentation de Mars'L (2008) auteur : C3dr1c[FP][@][M][*]

[HAUT]
Section en construction





Généralités

Nom : Mars’L
Poids : 12 kg
Hauteur : 345 mm
Périmètre non déployé : 1166 mm
Périmètre déployé : 1380 mm
Vitesse max du robot : 1.3 m/s
Energie : 24V, 2.1Ah
Coût de construction : 4000 €-4500 €



Nous nous sommes efforcés, pour la conception du robot, de satisfaire à toutes les contraintes imposées par le sujet ; nous en présentons ci-dessous les principales réalisations et leurs fonctionnements :

A venir : image Modélisation 3D Du robot

image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante








A venir : Photo d’ensemble du robot

image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante








Le robot se compose :

-D’une base roulante,

-D’un système de ramassage,

-D’un barillet trieur ,

-D’un canon, converti en catapulte puis abandonné faute de temps de programmation,

-D’un système de déclenchement du distributeur horizontal,

-D’un système de détection IR, US interne et déporté (3 balises),

-D’un LCD et d’un buser pour le debug et la lecture d’information en match.

-Pour la gestion : 7 pics sur le robot et 3 pics déportés.


Base roulante

La base du robot est constituée par une plaque d’aluminium de 3mm d’épaisseur. Il est propulsé par deux moteurs situés à l’arrière, deux roues folles étant positionnées à l’avant. Deux roues odométriques, alignées sur l’axe des roues mais pas solidaires de l’axe des roues (pour tenir en compte du patinage éventuel), suivent l’orientation et les déplacements du robot. Des contacteurs situés sur l’arrière du robot servent au recalage contre la bordure.

Pour se localiser sur l’aire de jeu, le robot utilise une représentation stockée en mémoire de l’aire de jeu couplée à un système d’odométrie basé sur deux roues codeuses situées à côté des moteurs. De plus, la position sera calculée à l’aide de balises ultrasons.
La détection d’obstacles est faite à l’aide de télémètres infrarouges et ultrasons placés tout autour du robot.
2 moteurs Maxon RE025 24V avec réducteur PLG32 réduction 20:1, puissance 2x 18W
Vitesse max du robot : 1.3 m/s

A venir : image Modélisation 3D de la base roulante

image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante






A venir : photos de la base roulante

image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante








Asservissementt :
Utilisation de 2 codeurs 1024 pts/tour séparés des moteurs. En comptant les 4 fronts et en prenant en compte la circonférence de nos roues d’odométrie, la précision se porte à 0.032 mm / impulsion de codeur.
Les microcontrôleurs que nous utilisons ne disposant que d’une seule entrée de comptage rapide, nous utilisons 2 microcontrôleurs (1 pour la roue droite et 1 pour la roue gauche) pour compter les impulsions. Le 2ème microcontrôleur communique la position de son codeur à l’autre microcontrôleur par l’intermédiaire d’une liaison série à 1,5 MBauds et ce toutes les millisecondes.
Pour gérer le déplacement nous n’avons pas retenu de solution toute intégrée (style LM629) mais une solution entièrement soft.
L’asservissement est de type polaire avec possibilité de passer en asservissement de vitesse ou de faire des virages en ne tournant qu’autour d’une roue. Les rampes d’accélération et de freinage sont également générées par soft.
Afin de limiter l’effort exercé sur les axes des roues en cas d’éventuelle collision avec un bord, l’asservissement est doté d’un monitoring contrôlant en permanence si la consigne de PWM appliquée aux moteurs correspond bien à ce qui est lu sur la boucle de retour des codeurs.
La position courante du robot est transférée par l’intermédiaire du bus CAN aux autres microcontrôleurs du robot toutes les 10ms.

Le système de ramassage

Il est composé de 3 rouleaux (1 horizontal et 2 verticaux) de 2 doigts verticaux et de 2 doigts horizontaux.
Les doigts verticaux permettent d’augmenter la surface de balayage en position fixe et d’extraire les balles des distributeurs verticaux en rotation. Lorsque le robot a 5 balles les doigts viennent obstruer le système de ramassage.
Les doigts horizontaux sont fabriqués à partir de mètre ruban ils sortent des entrailles du robot pour actionner le distributeur horizontal.

A venir : image Modélisation 3D Du ramassage

image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante







A venir : photos du ramassage

Le tri et stockage des balles

La solution retenue est un barillet vertical à 5 emplacements.
Le barillet comporte 4 ouvertures.
- 1 à l’avant pour accueillir les balles,

- 1 de chaque côté pour évacuer les balles de l’équipe adverse ou déposer nos molécules dans le conteneur standard,

- 1 à l’arrière pour acheminer les balles vers le canon/catapulte …


La balle est amenée dans le barillet par le système de ramassage par l’ouverture sur l’avant. La couleur de celle-ci est alors mesurée afin de permettre au barillet de réagir en conséquence.

A venir : image Modélisation 3D du tri et stockage des balles e

image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante







A venir : photos du tri et stockage des balles

image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante






La couleur des balles est mesurée grâce à un TCS230D. (ref : 642-4339 de chez radiospares).
Ce capteur comporte 16 phototransistors filtrés rouges, 16 phototransistors filtrés verts, 16 phototransistors filtrés bleus, et 16 phototransistors sans filtres.

Pour diminuer les perturbations extérieures, le capteur sera positionné au centre du robot, plus précisément à l’entrée du barillet comme décrit à la page précédente.

Nous estimons le temps d’éjection d’une balle adverse entre le moment où la balle rentre, la couleur de la balle est connue et le moment où la balle a quitté le robot à environ 1.5 - 2 secondes.

2 modes de dépose des balles sont possibles :

Dépose dans le conteneur standard via les ouvertures latérales commandables du barillet.
Tir des balles dans le conteneur réfrigéré grâce au canon situé à l’arrière du robot (abandonné car pas le temps…).


Detection

image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante







image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante








Nous avons plusieurs systèmes de détection de l’adversaire redondant :
Des 6 télémètres sharp sont répartit tout autour du robot au ras du sol,
Nous avons placé 4 récepteurs US sur chaque face du robot soit 16 récepteurs,
Une couronne de balises émettrices se situe juste sous le support de balise :
2 balises de triangulation Us sont disposées sur les supports de table,
1 couronne US est disposée sur le robot adverse.

L’ensemble des trames US est codé pour ne pas être perturbé par des fréquences similaires utilisées dans la salle. La synchronisation entre toutes les balises et le robot se faisant par WIFI.

Au final par faute de temps nous n’avons pas implémenté la totalité des fonctionnalités possibles.
Les sharps n’ont pas été exploités (ou presque),
La couronne US et les balises de triangulation (de la table) de MARS’L ont été désactivées sur les 3 derniers matches suite au problème rencontré lors des 2 premiers matches.
Au final la détection s’est faite en relative par rapport à nous en utilisant les récepteurs sur les faces du robot et la couronne sur le robot adverse, qui, sur les 3 derniers matches, s’est montrée très fiable.

Intelligence de notre robot :

image club robotque alsacien µart ( uart ):manquante
image club robotque alsacien µart ( uart ):manquante

image club robotque alsacien µart ( uart ):manquante






Utilisation de 7 microcontrôleurs DsPic 30F4011 avec communication CAN à 1Mbits/s
-2 micros gèrent les déplacements du robot,

-1 micro traite les données Ultrasons + Sharps,

-1 micro contrôle l’afficheur LCD,

-1 micro gère les balles,

-1 micro contrôle tous les Servos moteurs,

-1 micro coordonne toutes les opérations.


2 microcontrôleurs DsPic 30F4011 sont présents dans les balises UltraSons.

1 microcontrôleur DsPic 30F4011 est posé sur l’adversaire.

Tous ces microcontrôleurs sont programmés en C sous l’environnent MPLAB v8.0 avec le compilateur C30 de Microchip.
|---Edité--- le 16/02/2009 par C3dr1c[FP][@][M][*] --|

19/12/2007 Robot 2008 auteur : C3dr1c[FP][@][M][*]

[HAUT]
Dis Papa, comment on fait les robots ? µ

FRèglement eurobot mission to mars

D'ici peu apparaîtra ici la présentation de notre robot Mars'L qui participera à la Coupe de France de Robotique 2008
image club robotque alsacien µart ( uart ):manquante
Affiche
|---Edité--- le 15/02/2009 par C3dr1c[FP][@][M][*] --|