Catégories
MBOT

Adaptateur RGB

  • Conception d’un Adaptateur RGB pour le Robot MBOT 2

Introduction

Dans le cadre de notre projet, nous avons conçu un adaptateur RGB pour le robot MBOT 2 afin d’améliorer sa capacité à suivre une ligne noire dans diverses conditions, notamment sur des pentes et des angles droits. Ce rapport détaille les étapes de conception, les défis rencontrés et les solutions mises en place pour atteindre nos objectifs.

Objectifs du Projet

  • Permettre au robot MBOT 2 de suivre une ligne noire de manière précise.
  • Assurer une bonne mesure de la ligne noire même sur des pentes.
  • Adapter la position du capteur RGB pour qu’il soit au plus proche du sol sans dépasser les roues.

Conception de l’Adaptateur RGB

Positionnement du Capteur

Pour que le robot suive correctement la ligne noire, notamment sur des angles droits, nous avons dû rapprocher le capteur RGB des roues. Nous avons déterminé une distance optimale entre l’axe des roues et la position du capteur RGB. Cette distance permet au capteur de détecter la ligne noire avec précision.

Réglage de la Distance

Dans la conception de l’adaptateur, nous avons prévu une fente qui permet de régler cette distance. Cette fente offre une flexibilité nécessaire pour ajuster la position du capteur en fonction des conditions spécifiques de la piste.

Adaptation pour les Pentes

Nous avons constaté que dans les pentes, le capteur RGB s’éloignait du sol, ce qui rendait la mesure de la ligne noire imprécise. Pour résoudre ce problème, nous avons conçu l’adaptateur de manière à ce que le capteur RGB soit positionné sous les roues, au plus proche du sol. Nous avons également donné un angle au capteur pour qu’il reste proche du sol lors de l’attaque de la pente.

Contraintes Mécaniques

Le capteur RGB ne doit pas dépasser les roues pour éviter les obstacles. Nous avons donc veillé à ce que l’adaptateur respecte cette contrainte tout en permettant une mesure précise de la ligne noire.

Tests et Validation

Nous avons produit plusieurs adaptateurs à l’imprimante 3D et effectué de nombreux tests pour valider la conception de l’adaptateur. Les résultats ont montré que l’adaptateur permet au robot de suivre la ligne noire avec précision, même sur des pentes et des angles droits. Le réglage de la distance via la fente s’est avéré très utile pour optimiser la performance du capteur dans différentes conditions.

Conclusion

La conception de cet adaptateur RGB pour le robot MBOT 2 a été un défi technique intéressant. Grâce à notre travail, le robot peut maintenant suivre une ligne noire de manière précise dans diverses conditions. Nous avons compris l’importance de l’ajustement et de l’adaptation dans la conception des adaptateurs avec l’impression 3D pour répondre aux exigences de la compétition.

Le robot à l’horizontale, le capteur RGB mesure correctement la ligne noire.

Lorsque le robot attaque une pente, le capteur RGB s’éloigne de la ligne noire. Si la distance est trop importante entre le capteur RGB et le sol, la mesure devient imprécise et fausse.

Avec l’adaptateur que nous avons conçu, le capteur RGB est sous les roues pour une distance optimum entre les capteurs et l’axe des roues pour un suivi des angles droits de la ligne noire et pour une mesure optimum lors du passage des pentes.

La fente permet un réglage fin de l’adaptateur sur le MBOT2 et l’inclinaison permet au capteur RGB d’être au plus près du sol lors de la montée de la pente.

Catégories
MBOT

Préparation avant la compétition

A noter les points importants à vérifier avant une compétition :

La veille :

  • Valider et donner un numéro de version au programme de la compétition (afficher la version sur le MBOT)
  • Charger la batterie des MBOT V2
  • Identifier chaque robot (étiqueter le nom du robot)
  • Une clé USB par équipe avec le programme de l’équipe chargé

Avant de partir :

  • Emporter les MBOT V2 équipés chargés de la version du logiciel testé pour la compétition et identfiés pour chaque équipe
  • Vérifier les fixations des vis des différents éléments (emporter un tournevis)
  • Vérifier le niveau de batterie des robots (afficher le niveau de batterie sur les robots)
  • Chargement des piles pour robot ADA
  • Vérifier la présence des câbles USB pour chaque équipe
  • Amener une feuille blanche et verte pour étalonnage RGB
  • Penser au HUB USB pour chargement des MBOT V2 lors de la compétition
  • Chargeur des piles ADA
  • Prendre les trois batteries supplémentaires
  • Emporter sur une clé USB identifiée pour chaque équipe avec le programme de la compétition
  • Emporter un PC avec mBlock et les dernières versions pour chaque équipe
  • Emporter la documentation sur le MBOT, notre programme, le règlement de la compétition
  • Emporter des tournevis, des vis 3mm et 5mm de différentes longueurs ainsi que des écrous et rondelles
  • Prendre du scotch, de la patafix
  • Prendre des capteurs de lignes et capteurs RGB en remplacement
  • Prendre moteurs en remplacement
  • Prendre des roues bidirectionnelles en remplacement
  • Prendre des crayons et des feuilles
  • Fer à souder et fil en étain
  • Prendre la boite d’élastiques
  • Ecrous pour l’équilibre du robot
  • Câbles
  • Une carte micro bit
  • Ensemble des cartes du robot ADA
  • Capteur sonore pour détection obstacle

Avant la compétition :

  • Régler le dispositif RGB avec le tapis de compétition (double click, le dispositif clignote, passer le dispositif du blanc au noir, attention les 4 capteurs doivent mesurer le noir, prévoir une marge de sécurité, les LEDs s’allument sur le blanc et s’éteignent sur la ligne noire)
  • Régler la balance du blanc (Sur le Joystick)
Catégories
MBOT

ROBOCUP : ETAPE 01 Suivre la ligne noire

Suivre la ligne noire

  • Lancement en appuyant sur le bouton A
  • Arrêt en appuyant sur le bouton B

Aller plus vite

Crée une variable vitesse

Pour faire tourner ton robot, tu dois faire en sorte que les moteurs de chaque côté tournent à des vitesses différentes. Le moteur droit s’appelle EM2 et le moteur gauche s’appelle EM1.

  • Pour tourner à droite : Le moteur gauche (EM1) doit tourner plus vite que le moteur droit (EM2).
  • Pour tourner à gauche : Le moteur droit (EM2) doit tourner plus vite que le moteur gauche (EM1).

Pour que cette différence de vitesse soit bien contrôlée, on utilise des pourcentages. Les pourcentages permettent de définir une proportion de la vitesse maximale. Par exemple :

  • Si tu veux que ton robot tourne à droite, tu peux régler le moteur gauche (EM1) à 100% de sa vitesse maximale et le moteur droit (EM2) à 30% de sa vitesse maximale. Cela signifie que le moteur gauche tourne à pleine puissance, tandis que le moteur droit tourne beaucoup plus lentement.

Imagine que la vitesse maximale de tes moteurs est comme une course de 100 mètres :

  • À 100%, le moteur parcourt toute la distance, soit 100 mètres.
  • À 30%, le moteur ne parcourt que 30 mètres

En utilisant des pourcentages, tu peux facilement ajuster la vitesse de chaque moteur pour que ton robot tourne exactement comme tu le souhaites !

Changer la vitesse avec Joystick

Catégories
MBOT

ROBOCUP : ETAPE 02 Suivre les angles droits

Suivre les angles droits

Tu remarques que le robot choisit à gauche sur un croisement :

En inversant L2 par R2 le robot choisit au croisement par la droite :

Choisir le sens

Crée une variable sens afin de déterminer dans quel sens le robot doit prendre les croisement :

La variable sens prend deux valeurs :

  • D pour droite
  • G pour gauche

Modifie ton code pour créer ses fonctions :

une fonction pour suivre la ligne noire

une fonction pour prendre les virages à angle droit en privilégiant la droite :

une fonction pour prendre les virages à angle droit en privilégiant la gauche :

pour modifier le sens avec le joystick

Suivi de ligne en utilisant un trackeur de ligne sur le port S1 du MBOT 2. Son utilisation permet au robot de mieux suivre en ligne droite la ligne noire.

Catégories
MBOT

ROBOCUP : ETAPE 03 Obstacle

Le robot est confronté à un obstacle sur son parcours, il doit le détecter puis le contourner en utilisant un capteur à ultrasons. Le robot doit contourner l’obstacle par la droite ou par la gauche en fonction de la configuration du parcours.

Fonctionnement du Capteur à Ultrasons

Le capteur à ultrasons fonctionne en émettant des ondes sonores à haute fréquence (ultrasons) et en mesurant le temps que ces ondes mettent à revenir après avoir rebondi sur un obstacle. Voici comment cela fonctionne :

  1. Émission des Ultrasons : Le capteur émet des ondes ultrasonores.
  2. Réflexion : Les ondes rebondissent sur l’obstacle.
  3. Réception : Le capteur reçoit les ondes réfléchies.
  4. Calcul de la Distance : Le capteur mesure le temps écoulé entre l’émission et la réception des ondes. En utilisant la vitesse du son dans l’air, il calcule la distance jusqu’à l’obstacle.

Analyse de la Configuration du Parcours

Avant de lancer le robot, il faut analyser la configuration du parcours pour déterminer la meilleure direction de contournement (droite ou gauche). Cette décision peut être basée sur :

  • La position de l’obstacle par rapport à la ligne noire.
  • La présence d’autres obstacles ou de limites sur le parcours.

Mémorise ce choix dans une variable contournement :

Contournement par la gauche :

Contournement par la droite :

Catégories
MBOT

ROBOCUP : ETAPE 04 Passage des pentes et ralentisseurs

Pour que ton robot puisse passer les pentes, il doit déterminer quand il est dans cette situation et programmer pour éviter des anomalies de lecture du capteur RGB :

Détection de l’obstacle ou de la pente :

  • Quand ton robot commence à monter une pente ou à passer un obstacle, la distance entre le capteur RGB (sous le robot) et le sol devient plus grande.
  • À ce moment-là, le capteur RGB peut avoir du mal à donner des informations fiables au robot. Il peut même penser que les quatre capteurs voient la ligne, alors que ce n’est pas vrai.

Utilisation des capteurs de mouvement :

  • Pour détecter cette situation, utilise les capteurs de mouvement du robot, notamment celui qui mesure l’inclinaison et tangage.

Réaction aux changements :

  • Dès que tu détectes une inclinaison différente et que tous les capteurs semblent voir la ligne en même temps, cela signifie que le robot est en train de monter une pente ou de passer un obstacle.
  • À ce moment-là, programme ton robot pour qu’il continue tout droit pendant un certain temps. Cela lui permettra de passer l’obstacle ou de monter la pente sans s’arrêter.

Teste l’inclinaison du robot en montée ou en descente :

Ce cas n’est pas possible sur une montée :

si le capteur RGB du robot ne voit plus correctement la ligne :

si le capteur de ligne voit en même la ligne :

En suivant ces étapes, ton robot pourra mieux gérer les obstacles et les pentes !

Lorsque le robot aborde une pente ou un obstacle la ligne noire est bien droite sans angle droit. Les capteurs L2 et R2 ne sont pas sensés capter la ligne noire. Si ces capteurs détectent une ligne noire alors on peut donc considérer qu’ils sont trop éloignés du sol pour tenir compte de leur résultat. Dans ces cas, on fait avancer le robot tout droit autrement on suit la ligne droite :

Catégories
MBOT

ROBOCUP : ETAPE 05 Les carrés verts

  • Documentation Technique : Navigation d’un Robot à l’aide de carrés verts

Comment détecter les carrés verts pour connaître la direction à prendre :

Principe de Fonctionnement

  1. Suivi de Ligne : Le robot suit une ligne noire sur le sol.
  2. Détection des Carrés Verts : Le capteur RGB du robot détecte les carrés verts placés le long de la ligne.
  3. Détection des Croisements : Le robot détecte un croisement lorsqu’il rencontre une ligne noire perpendiculaire à la ligne qu’il suit.

Détection des Carrés Verts

En fonction de la position des carrés verts détectés sur le bord de la ligne noire, le robot prend une décision :

  • Carré Vert à Droite : Le robot tourne à droite.
  • Carré Vert à Gauche : Le robot tourne à gauche.
  • Carrés Verts des Deux Côtés : Le robot fait demi-tour.

Utilise une variable dans laquelle on peut stocker des informations. Dans notre cas, nous allons utiliser une variable pour stocker l’information sur la position des carrés verts détectés.

Par exemple une variable nommée vert :

  • Carré Vert à Droite : vert à 1.
  • Carré Vert à Gauche : vert à 2.
  • Carrés Verts des Deux Côtés : vert à 3.

Amélioration du Fonctionnement

Lors des premiers tests, il a été constaté que le robot doit ralentir dès qu’il détecte des carrés verts. Cela lui permet de mieux détecter le croisement et de prendre la bonne décision.

Détection des Croisements

Lorsque le robot détecte un croisement, il va utiliser la variable vert pour prendre une décision.

En fonction de la valeur de la variable vert, le robot va prendre une décision :

  • Si vert est 1 : Le robot tourne à droite.
  • Si vert est 2 : Le robot tourne à gauche.
  • Si vert est 3 : Le robot fait demi-tour.

Après avoir pris la décision et effectué le virage, il est important de réinitialiser la variable vert à 0 pour qu’elle soit prête pour la prochaine détection de carrés verts.

Avance le robot pour s’assurer qu’il ne soit plus sur les carrés verts.

Puis introduit la détection et la prise de décision des carrés verts dans le suivi de ligne :

Paramétrage de la détection des carrés verts

Sur le joystick, tu peux choisir de faire la balance des blancs pour une meilleur détection des couleurs en fonction de ton environnement (pense à poser ton robot sur une zone blanche avant de déclencher la balance des blancs) :

Choisi une couleur pour le capteur RGB avant de lancer le suivi de ligne :

Catégories
Ligne noire MAQUEENPLUS Robotique

PRISE EN MAIN : MAQUEEN Plus V2

PARTIE 01 : Introduction au Maqueen Plus V2

Caractéristiques :
5 capteurs de suivi de ligne (sorties analogiques et digitales), calibration automatique via bouton-poussoir 
2 LEDs frontales rouges
4 LEDS RGB Néopixels
Capteur de distance ultrason HC-SR0
4Buzzer pour effets sonores
2 motoréducteurs N20 :vitesse de rotation nominale : 266 tr/minmodulation PWM
rapport de réduction: 1:75
Capteur infrarouge permettant au robot d’être télécommandé
Port d’extension GPIO : 8 ports : P0 P1 P2 P8 P12 P13 P14 P15 avec 3,3V
3 ports pour servomoteur : P0 P1 P2 avec Vbat
2 Ports I2C 3.3V1 Port I2C 5V
Alimentation par batterie Li-Ion 18650 3.7V 3500 mAh avec circuit de chargement
Tension de charge : 5 V,  temps de charge : 4  heures, indicateur du niveau de charge :
4 LED
Dimensions du produit : 14 x 101 x 70 mm


Le robot dispose à l’avant de 5 capteurs optiques infrarouge.
Fonctionnement d’un capteur optique infrarouge
Le capteur optique infrarouge est constitué : d’une LED infrarouge d’un photo-transistor
Le capteur envoie un signal haut lorsqu’il détecte le noir et un signal bas quand il détecte le blanc.

Pour le programmer

Va sur le site vittascience : fr.vittascience.com

Choisis « Programmer »

Puis fais défiler ton écran pour choisir le robot Maqueen Plus

Choisis le mode Bloc et agrandis ton écran en baissant la console du bas :

Pour gérer le tableau de LED de la carte microbit utilise l’instruction « afficher l’image » sous Affichage :

Par exemple allume les LEDs de la manière suivante dans « Au démarrage » :

Tu peux tester en demandant à Téléverser sur la carte :

Demande la connexion avec la carte puis valide le transfert.

Tu utilises les instructions suivantes pour le suivi de la ligne noire.

Pour faire avancer ton robot :

Pour détecter la ligne noire :

Programme pour vérifier que ton robot détecte bien la ligne noire :

Téléverse ton programme :

Puis teste si la LED correspondante s’allume lorsque le phot réflecteur passe sur la ligne noire ? :

Comment calibrer le Maqueen Plus ?

5 capteurs de suivi de ligne sur Maqueen Plus ont chacun une LED bleue qui indique l’état. 

Si vous constatez qu’un capteur de suivi de ligne n’est pas sensible à une ligne noire, calibrez-le comme suit : 

1. Mettez Maqueen Plus dans la zone d’étalonnage, une feuille noire par exemple. Le mettre sous tension

2. Appuyez sur « Calibration-key » pendant environ 1 seconde, les 2 grandes LED avant clignoteront en vert. Relâchez la touche, puis l’étalonnage est terminé. 


PARTIE 02 : SUIVI LIGNE

Comment suivre la ligne noire

Programme ton robot pour qu’il tente de rester sur la ligne noire :

Le capteur de gauche et celui de droite ne captent pas la ligne noire, alors les deux capteurs sont de chaque coté de la ligne noire, le robot peut avancer tout droit.
Le capteur de gauche est sur la ligne noire, ramène ton robot vers la gauche.
Le capteur de droite est sur la ligne noire, alors ramène ton robot vers la droite.

Premier essai pour suivre la ligne noire

Programme les deux moteurs pour aller tout droit, à gauche et à droite.

Pour ton premier essai réduit la vitesse à 50, le Maqueen est très véloce :

Plus vite

Augmente la vitesse en utilisant une variable :

Utilise un pourcentage de la vitesse pour le moteur qui tourne en sens inverse :

par exemple si on souhaite une vitesse réduite de 35% de la vitesse initiale de 50 : (50 * 35) /100 soit :

Puis arrondir pour obtenir la partie entière de la division :

Augmente petit à petit la vitesse pour voir jusqu’à quand ton robot peut suivre la ligne noire :

Ou diminue ou augmente le pourcentage pour prendre des virages plus larges ou plus serrés :


PARTIE 03 : SUIVI LIGNE AMELIORE

Améliore ta programmation pour des passages très difficile en utilisant les capteurs arrière gauche et droit :

Quand le capteur arrière droit ou gauche détecte la ligne noire, on peut supposer que le robot est sur une courbe prononcée ou un angle droit de la ligne noire. Afin que le robot puisse suivre la ligne noire, donne la possibilité au robot de tourner plus rapidement sur la détection des capteurs arrière droit ou gauche.

Rajoute des fonctions pour tourner plus droitePlus et gauchePlus qui vont pouvoir suivre la courbe en angle droit :

Puis modifie ton programme pour prendre en compte les capteurs arrière droit et arrière gauche :

Puis téléverse ton programme pour tenter un parcours difficile :

Tu peux jouer avec la vitesse :

Ou sur le pourcentage

Catégories
ALGORA Robotique

Suivre le chemin

Apprend à utiliser le photo réflecteur IR pour suivre une ligne noire :

Arrêter le robot sur la ligne noire

Programme pour que ton robot s’arrête sur la ligne noire :

Utilise ces instructions pour que ton robot avance jusqu’à la ligne noire :

Le robot reste dans le cadre

Programme ton robot pour qu’il reste dans le cadre de la ligne noire :

Utilise ces instructions pour que ton robot tourne dès qu’il détecte une ligne noire :

Le robot suit la ligne noire

Programme ton robot pour qu’il suive la ligne noire sur ce principe :

Le robot apprend la couleur noire

Rajoute à ton robot un capteur de pression et une LED : avant le suivi de ligne, tu poses ton robot sur la ligne noire puis par un appuie sur le capteur de pression, tu demandes au robot de mémoriser la couleur noire.

Crée une variable noire pour stocker la valeur retournée par le photo réflecteur lorsque le robot est posé sur la ligne noire :

Puis programme pour mémoriser la valeur retournée par le photo réflecteur dans la variable noire :

Passe en mode test et constate comment la variable noire change :

Le programme complet de suivi de ligne :

Catégories
ALGORA Robotique

Suivi ligne noire en scratch

Voici un exemple d’une programmation SCRATCH avec un robot Algora qui passe le parcours le plus difficile en utilisant deux photoréflecteurs.

Pour la construction du robot, trois préconisations :

  • l’espace entre les deux photoréflecteurs doit être légèrement supérieur à la largeur de la ligne noire.
  • les photoreflecteurs doivent être le plus proche du sol
  • les photoréflecteurs doivent être devant mais proche des roues directrices.

Utilise deux capteurs photo réflecteurs IR, un capteur de pression et une LED :

Active le mode test :

Pose ton robot et ses deux photo réflecteurs sur une ligne noire pour visualiser les valeurs retournées :

Tu peux constater les deux photo réflecteurs n’ont obligatoirement pas la même mesure de la valeur de la couleur de la ligne noire. Pour plus de justesse, utilise deux variables pour stocker la valeur de la ligne noire.

D’autre part, il semble plus pertinent de mesurer la ligne noire et d’utiliser cette valeur plutôt que le blanc. Tu peux constater également que la valeur retournée par les photoreflecteurs peut varier lors du déplacement du robot sur la ligne noire.

Utilise une variable « tolerance » afin de prendre en compte des variations dans les mesures de la ligne noire lors du parcours :

Donc avant le lancement du robot, réalise une prise des valeurs des photo réflecteurs sur la ligne noire.


Les valeurs retournées par les deux photo réflecteurs sont mémorisées dans deux variables, une variable pour chaque photo réflecteur.
Afin de gérer les fluctuations des mesures du noir, attribue 10 à la variable tolérance.

Puis programme tes fonctions pour que ton robot se déplace tout droit, à droite et à gauche puis puisse s’arrêter.

Pour passer les passages les plus difficiles, tu peux constater que la meilleure solution pour prendre des virages serrés est de faire tourner le robot sur lui même par une inversion des moteurs, un moteur vers l’avant, l’autre vers l’arrière.

Programme pour que ton robot maintienne les deux photo réflecteurs de chaque coté de la ligne noire et ainsi suivre la ligne noire :

  • si les deux photo réflecteurs sont sur le blanc, le robot va tout droit,
  • si le photo réflecteur droit A0 est sur le blanc alors le robot doit aller vers la ligne noire en tournant à gauche,
  • si le photo réflecteur gauche A1 est sur le blanc alors le robot doit rejoindre la ligne noire en tournant à droite :

Puis rajoute au programme principal :

Essaye ton robot après un transfert :

Pose ton robot avec les deux photo réflecteurs sur la ligne noire pour la phase d’apprentissage de la couleur noire , puis appuie sur la capteur de pression. Ton robot suit la ligne noire même dans les courbes difficiles.

Vérifie le comportement de ton robot :

  • Les deux photo réflecteurs dans le blanc on avance tout droit.
  • Seul le photo réflecteur droit voit le blanc alors on tourne à gauche,
  • Seul le photo réflecteur gauche voit le blanc alors on tourne à droite,
  • Autrement le robot avance tout droit.

Modifie ton programme pour que ton robot s’arrête sur un nouvel appui sur le capteur de pression :