Robotique2 1
Sommaire
Présentation du projet
Le projet à pour objectif de réalisé un match entre 2 robots. Ceux-ci devront envoyé depuis leur terrain le plus de balle de tennis possible sans aller sur le terrain adverse.
Le terrain mesure 8 mètres par 4 et est séparé en 2 parties par une ligne médiane donc chaque robot aura un terrain d'approximativement 16m² pour se déplacé.
Une partie dure 90s,avant la fin du temps impartie le robot devra être immobile au niveau de la ligne médiane et avoir éclaté un ballon qu'il aura emporté avec lui au début du match
Le vainqueur sera le robot avec le moins de balle sur son terrain.
Objectif du Projet
- Réalisé un Robot capable de se déplacer dans son terrain.
- Renvoyé des balles depuis son terrain jusqu'au terrain adverse.
- Crever le ballon que l'on a emporté à l'arrêt devant la ligne médiane avant la fin du temps imparti.
Règlement
Voici ci-joint le règlement ainsi que les contraintes associé à la création du Projet.
* règlement de la coupe de robotique
Contraintes et Caractéristiques imposées
Les principales contraintes sont dues aux règles de la compétition.
- Le robot doit être dimensionné selon 30x30x40cm.
- moteurs
- Vitesse de rotation entre 600 à 800 tr/min max.
- Moteur MFA 970d (imposé par l'IUT)
- Châssis imposé par l'IUT
- Le mécanisme lanceur de balle ne doit dépasser que pour envoyé la balle, il devra se replier après.
- La batterie doit être en lithium Li-ion.
- Aucune tension sur le robot ne doit dépasser 24V.
- Les dimensions du terrain sont données sur ce schéma :
Réalisation
Découpage fonctionnel
Afin de commencer le projet, nous avons du séparé les parties essentielles du projet pour ensuite répartir les tâches.
- On a séparé le travail en différent groupe fonctionnel
- L'alimentation
- Le Déplacement
- Le système de renvoie des balles
- Les capteurs pour trouver les balles
- Les capteurs pour se repérer dans l'espace
- Un support ballon
- Un système de crevaison de ballon
Vous verrez ci-joint en vignette le schéma fonctionnel de notre robot.
Répartition des tâches
- Nous nous sommes répartis les tâches de la façon suivante:
Jason Savouret a pour tâches de s'occuper du repérage dans l'espace grâce à des capteurs.
Aurelien Noirault gère le système de renvoie des balles ainsi que le moyen de les repérer et de les attraper.
Aurelien Laurens a pour mission de crée le système pour supporter le ballon et du système de crevaison associé pour la fin de la partie.
Cécile Forgeot s'oriente sur toute la partie mobilité du robot en gérant la partie déplacement.
Repérage dans l'espace
Partie 1: objectif
- Le robot ne doit dépasser sous aucun prétexte la ligne médiane.
- Le robot doit pouvoir se placer face au terrain adverse et connaitre sa position vis à vis de celui-ci
Partie 2: Recherche
- Afin de se repérer dans l'espace plusieurs choix ont été possible:
- une boussole MPU9250 pour s’orienter vis à vis du camp adverse. Au démarrage le robot prendra en valeur initiale les coordonnées de la direction pour le camps adverses et ainsi il pourra connaitre son orientation vis à vis du camp adverse.
- un capteur de couleur SEN0101 afin de capter les couleurs du terrain, le but serait de connaitre la couleur sous le capteur afin de savoir si il se situe au dessus d'une ligne blanche ou au dessus du sol bleu foncé du terrain. Avec ces information cela pourrait permettre au robot de se déplacé de manière autonome sur tout le terrain en analysants le terrain.
- Dans le fonctionnement le capteur renvoie des valeurs pour connaitre la composante de la couleur au dessus de laquelle il est. Grâce a une succession de test on renvoie un état logique 1 ou 0 .
- 0 permet de dire que l'on est sur le terrain(bleu)
- 1 permet de dire que l'on est sur une ligne blanche et donc possiblement la ligne médiane
Néanmoins la multitude de ligne blanche ne permet pas d'être très efficace et vas d'avantage nuire au bon fonctionnement qu'être bénéfique car le robot pourrait confondre une ligne médiane et une autre ligne du terrain donc cette solution n'est pas optimal.
- Des capteurs infrarouge CNY70 pour savoir si il est sur le terrain ou sur la ligne médiane.
Partie 3: Solution adopté
- La boussole MPU9250 renvoie des valeurs qui permettent de calculer un angle en fonction de la position du robot. Au démarrage elle enregistre une valeur initiale d'angle qui sera donc la direction dans laquelle le camp adverse se situe car le robot sera placer face à celui-ci pour le début du match.
- La boussole aura 2 but:
- Si il n'y a pas de balle devant le robot la boussole enregistrera l'angle actuel puis le robot fera un tour sur lui-même sur la gauche jusqu'à retrouvé sa position initiale en comparant son angle actuel à l'angle de début de tour et s'arrêtera de tourner si il trouve une balle pour aller l'attraper.
- Si le robot attrape une balle, la boussole comparera son angle avec celui du camps adverse, si le robot n'est pas dans la bonne direction il tournera sur la gauche jusqu'à se situé face au terrain adverse.
- La boussole aura 2 but:
- Nous adopterons aussi la solution d'utiliser 2 capteur CNY70 placé à l'avant du robot dans les "mandibules" et 1 capteur juste derrière le système de lancer de balle. Les capteurs renverront chacun une valeur entre 0(clair) et 1023(foncée). En analysant en permanence les 3 capteurs et leurs valeurs , on établira une condition qui dira que si 2 capteurs renvoient un état logique 1 sachant que le robot pendant ce temps se déplace, cela reviendrais à dire que nous sommes sur la ligne médiane car les autres lignes sont assez fine donc on arrêtera le robot directement.
Gestion des balles
Partie 1: objectif
- Le robot doit être capable de repéré la balle
- L'attraper
- La renvoyer
Partie 2: Recherche
- Dans le but de repéré la balle 2 choix ont été trouvé:
- L'utilisation d'un capteur de distance VL53L1X qui permet de balayer le terrain pour trouver des reliefs(balles) tout comme le système de sonar d'un sous marin.Seulement le capteur n'est pas du tout assez précis et un angle légèrement différent rend l'utilisation bien moins fiable de plus le capteur pouvait confondre un mur et les balles vu que il ne cherchais que un relief.
- Une caméra pixy2 qui permettrais d'enregistrer des formes pour pouvoir les retrouver.
- En vue de l'attraper:
- La réalisation d'une partie supplémentaire à l'avant du robot pour l'attraper et la bloquer.
- Un servomoteur possédant une barre permettant de bloquer la balle.
- Dans l'intention de la renvoyer la balle:
- L'emploie de 2 moteurs avec 1 mini roue chacun dans le principe d'un lanceur de tennis mais le soucis rencontré est la place disponible.Donc des modification comme le fait d'utiliser 1 seul moteur avec une rampe ont été essayé.Cependant le soucis de place toujours présent et de puissance est remarqué, l'idée de remplacé la mini roue par une pale avec ou sans rampe fut tester mais toujours sans réel réussite du au manque de place et de puissance.
- L'emploie d'un moteur brushless avec un partie pour frapper la balle
Partie 3: Solution Finale
- Pour repéré la balle, la caméra pixy2 est un bon système. En lui faisant enregistrer la forme et la couleur d'une balle elle est capable sur un maximum de 1 mètre en face d'elle de repéré la dites balle et ses coordonnées. Ainsi le robot se dirigera vers elle peu à peu. Si le robot ne voit pas de balle face à lui il tournera sur lui même dans un premier temps pour observer autour de lui si il y a une balle ou non.
- La partie pour attraper la balle sera composé d'une extension réalisé en modélisation 3D en forme d'entonnoir et d'un servomoteur avec une barre. Quand le robot repérera la balle il avancera dans sa direction, grâce aux extensions des mandibules la balle se logera à l'avant du robot et le servomoteur enfermera la balle ce qui empêchera la balle de partir et d'autre balle de rentrer.
- Pour renvoyé la balle un moteur brushless possédant une extension dans le style d'une barre permettra de frapper la balle quand le moteur tournera.On alimentera et contrôlera le moteur avec un Roxxy Bl-control 712 BEC qui a été relié au moteur Brushless.
Crève ballon
Partie 1:Objectif
- Crée un support pour placer le ballon
- Trouver un moyen pour crever le ballon
Partie 2:Recherche
- Pour le support ballon il est nécessaire de trouver un moyen de fixer à minimum 30 cm du sol un ballon et une partie pour maintenir la pièce. La conception d'un modèle 3D fut donc nécessaire. Mais pour le maintenir une petite extension en haut de la colonne à tenté d'être faites mais quand le ballon bouge il y a des chances qu'il se détache et parte
- Pour crever le ballon plusieurs idées ont été testé:
- Un servomoteur HS-311 avec une extension en plastique afin d'y placé un moteur à courant continue avec une partie pointu seulement le moteur manque de couple pour crever le ballon donc cette solution n'est pas utilisable.
- Un servomoteur GS-9018 qui par mouvement à 180° pourrait crever le ballon.
- Un servomoteur HS-311 et une extension en plastique avec un servomoteur GS-9018 mais par volonté d'optimisation de ressources, de fil et de consommation on a pas choisis cette solution.
Partie 3:Solution adoptée
- Une modélisation 3D d'une colonne a été réalisé à l'aide du logiciel Openscad, celle-ci possède 2 ouverture sur sa face afin de placer le servomoteur et l'autre permettant le câblage du servomoteur(schéma ci-contre de la modélisation). Un soucis a été rencontré en plus de maintenir le ballon durablement. Le ballon étant en plastique, il pouvait être poussé par le crève ballon et non être percé. Pour remédier au soucis lié au ballon, une pince a été placé au sommet de la colonne pour l'attraper et le garder maintenue et une barre à été ajouté sur le coté de la colonne pour bloquer le ballon.
- Afin de percer le ballon, le servomoteur sera relié à un arduino (câblage ci-contre)et est équipé d'une extension réalisé en modélisation 3D afin de taper de coté le ballon en opposition à la barre qui sert à bloquer le ballon. Une pointe est placé au bout de cette extension, elle sera recouverte par un cache lors du transport pour ne représenté aucun danger et il sera enlevé une fois le robot sur le terrain.