Projet ROB3 (Noah, Ali, Leo, Maeline, Pierre-Alexandre, Marita)
Équipe :
DUVERNOIS--DUPARC Maéline : Équipe informatique / responsable mise à jour Wiki
EL HAJJ Marita : responsable électronique/ responsable batteries
EYNARD Noah : chef de projet / équipe mécanique
MEDDAD Ali : Équipe informatique
MONCEAU Pierre-Alexandre : responsable informatique / responsable moteurs
SABATIÉ Léo : responsable mécanique
Séance 1 :
Décisions collectives :
- Répartitions des rôles + des équipes
- Définitions des grandes étapes et tâches du projet
- Diagramme de Gantt
- Premiers questionnements
Types de comportement :
-
comportement originel (appuyer sur le bouton)
- repositionnement par rapport au bord droit
-
avancer tout droit par rapport au bord avant
-
détecter obstacles
-
détecter un plot
-
tourner de 90°
-
vérifier l’alignement avec l’objet
-
Régler la hauteur de la pince
-
saisir l’objet
-
poser l‘objet (sans qu’il tombe)
-
se dégager de l’objet
Problématiques :
-
Comment se repérer dans l’espace ?
-
Comment trouver l’objet ? évaluer les distances pour le saisir ?
-
poser le robot bien droit pour qu’il avance en ligne droite
-
comment différencier les plots pour l’objet et ceux pour la destination ?
-
sens de capteurs horizontal / vertical ?
-
Capteur sur le châssis ou sur la pince ? : sur la prince pour baisser la pince en conséquence pour saisir et poser l’objet
-
comment faire pour que l’objet ne tombe pas en le posant
-
Position de l’objet ?
-
comment détecter les plots → même chose que pour l’objet
-
comment faire pour que le robot comprenne que c’est un plot et ne s’éloigne pas simplement du mur pour maintenir la distance de sécurité
Recherche de dimensionnement de l'arène, totem et robot :
Séance 2
Décisions :
Équipe méca : imprimer et découper au laser les pièces pour monter le châssis test (mauvais prototype) pour pouvoir commencer à expérimenter le code.
Équipe info : commencer à faire fonctionner les moteurs et la pince
Équipe électronique: test du programme arduino avec le capteur HC-SR04 et des grandeurs qu’il retourne avec une vérification des mesures.
Rapports d’activité :
DUVERNOIS--DUPARC Maéline : Écriture du code pour ouvrir et fermer la pince. Problème rencontré fermeture de la pince et le moteur force car il n’atteint pas la position demandée. Lecture de la librairie Arduino Servo. On connaît maintenant les commandes nécessaires à l’ouverture et à la fermeture de la pince.
EL HAJJ Marita : Test des capteurs HC-SR04: Le code utilisé est le code publié sur le forum d’Arduino (ref. sitographie). Le capteur mesure à l’aide d’ultrasons la distance d’un obstacle par rapport au capteur. La mesure est précise pour des objets opaques. Pour des objets translucides (ex: règle qui peut faire passer de la lumière) les mesures ne sont pas très exactes surtout à de petites distances. La vitesse de déplacement de l’objet est limitée; quand on bouge brusquement l’objet, les mesures de la distance sont aléatoires et donc erronées (point à prendre en compte dans le pilotement de la vitesse du robot). Une autre limite du capteur est le placement de l’objet en face; un objet incliné est mal lu en distance, si l’objet est placé au milieu des deux “yeux” du capteur il est aussi mal lu, et s’il est placé uniquement sur un seul des yeux pareil. Distance minimale de lecture correcte: 4cm, Distance maximale/limite: 40cm.
EYNARD Noah : Modélisation du Chassis et du soutient du moteur pour le bras. Choix der la solution du bras / Pince. Choix de la solution pour pivot glissant des bielles : un tube modélisé en impression 3D avec une vis/ écrous / rondelle
MEDDAD Ali : schématisation des positions variables du totem, position initiale du robot et le point de dépôt, la hauteur variable du totem et la position du capteur et pince par rapport au bras et au châssis. initialisation des fonctions nécessaire pour capter le totem.
MONCEAU Pierre-Alexandre : mise en marche de la découpe laser “360”, découpe de test de dimensionnement pour le châssis. Mise en marche des moteurs (avec code d’automatique).
SABATIE Léo : Modélisation de la solution pour fixer les moteurs au châssis. Réalisation d’un premier test pour ajuster les dimensions (jeu entre le châssis et la pièce pour fixer le moteur). Modélisation de la solution pour régler la hauteur de la pince.
Points validés : - fonctionnement de la pince
- fonctionnement des capteurs
- fonctionnement des moteurs
Recherche d'Algorithmes :
Séance 3
Rapports d’activité :
DUVERNOIS--DUPARC Maéline: Réalisation des fonctions d’ouverture et de fermeture de la pince. Tentative avec Marita d’écrire un programme qui permet de modifier la vitesse de rotation des moteurs en fonction de la distance mesurée par le capteur : échec. Création d’un github pour l’écriture partagée du code.
EL HAJJ Marita : Tentative avec Maéline d’asservissement du moteur en fonction de la distance calculee par le capteur. Gestion du diagramme de Gantt et des fichiers communs du groupe.
EYNARD Noah : Ajustement de la CAO du châssis pour prendre en compte la taille du moteur et le capteur. Recherche de solution pour le capteur sur la pince → Trouvé. Modélisation de cette Solution et lancement de l’impression 3D. On a résolu toutes les solutions afin de détecter l’objet (par le haut)
MEDDAD Ali : recherche de solution pour positionner le capteur en considérant ses contraintes techniques pour arranger la partie mécanique et informatique. Réalisation des algorithmes de la 1er et 2eme étapes pour faciliter le codage avec les fonctions de base.
MONCEAU Pierre-Alexandre : Mise en marche de l’autre découpe laser « 100 ». Asservissement d’un moteur en position par rapport à un angle. Mise en marche de deux moteurs en même temps.
SABATIÉ Léo : ajustement du dimensionnement des pièces pour faire le lien entre les moteurs (pour le déplacement, et pour le bras) et le châssis. Impression de plusieurs pièces jusqu'à un dimensionnement convenable (Mise en marche de l’autre découpe laser « 100 »). Châssis prêt à être imprimé pour faciliter le travail de la partie informatique.
Points validés : fonctions ouverture et fermeture pince
Points non validés : Asservissement du moteur en fonction de la distance calculee par le capteur.
Séance 4
Décisions :
Équipe informatique : Tests des fonctions
Équipe mécanique : Impression du chassis
Équipe électronique : Alimentation de l’arduino et des moteurs avec la batterie
Rapports d’activité :
DUVERNOIS--DUPARC Maéline: Réalisation des fonctions globales états du robot pour le case dans le loop. Problème avec les fonctions de la pince corrigées. Travail sur le code de gestion des moteurs.
EL HAJJ Marita : Alimentation de l’Arduino avec la batterie. Optimisation du code des moteurs/avancement/capteurs.
EYNARD Noah : Plusieurs tests d’impression 3D : trous pour les capteurs, trous pour l’encastrement du support capteur sur le bras. Choix des ajustements. Impression du support pour le capteur sur le bras. Modélisation et découpe du capteur sur le côté du châssis. On choisit 3.05mm pour l’encastrement du capteur et plutôt 16.2mm pour les diamètres des yeux (même si 16.1 avec beaucoup de ponçage suffit).
-
Prochaines étapes pour la méca : Dimensionnement des bras et des pivots (nouvelles impression 3D)
MEDDAD Ali : Algorithme d’asservissement pour être parallèle au mur, algorithme de la 3éme étape où on prend le totem, dessins des étapes 1 et 2 pour visualiser leur déroulement.
MONCEAU Pierre-Alexandre : mise en marche du programme du robot (les 3 premières étapes) “dans le vide”. Assemblage proto1 du robot et test réel de ses 3 premières étapes.
Etape 1 : attente du clique bouton
Etape 2 : avance jusqu'à une certaine distance puis tourner 90deg.
Etape 3 : avancer droit parallèlement au mur
SABATIÉ Léo : correction des ajustements et impression du châssis. Quelques problèmes surviennent après impression donc il faut les régler (passage des fils,...). Trouver une solution pour le bras.
Points validés : le robot avance, capte et tourne quand necessaire.
Points non validés : tourner de 90deg.
Câblage du robot :
Séance 5
Rapports d’activité :
DUVERNOIS--DUPARC Maéline: faire la fonction avec Marita pour piloter le bras et le faire passer d’une position haute à une position basse. Problème du programme mémoriser la position initiale. Tests de la fonction d’asservissement de la position du robot par rapport au mur dans l’arêne.
EL HAJJ Marita : faire la fonction avec Maéline qui sert à piloter le bras du robot et donc faire passer le moteur d’une position à une autre. faire le ‘cable management’ du robot et faire le point sur le matériel nécessaire pour la finalisation du robot.
EYNARD Noah : Première découpe laser pour ma part (pour des équerres). Modélisation d’équerres et autres solutions pour ajuster la stabilité du robot. Modélisation et découpe du bras portant la pince, assemblage avec les tuyaux en 3D. Le robot commence à s’approcher de sa forme finale, il faudra penser au cable management : faire des trous.
MEDDAD Ali : Amélioration des fonctions « tourner à Gauche » et de l’asservissement avec Pierre-Alexandre et vérification de détection de l’objet à 10cm qui est importante pour l'étape de prise de l’objet. Essais de modélisation et simulation du robot sur Tinkercad et Webot.
SABATIÉ Léo : impression du système pour régler la hauteur de la pince (le bras). collage des pièces sur le châssis pour que la partie info puisse réellement tester leur code. recherche d’une solution pour éviter le fléchissement des roues et impression de la piece.
MONCEAU Pierre-Alexandre : Réglage de la fonction « tourner à Gauche » afin que le robot tourne parfaitement à 90deg. Développement et test de la fonction d’asservissement de la position du robot par rapport au mur à sa droite. Participation au tournage du mini-reportage sur notre projet robotique.
Points validés : le robot avance parallèlement au mur à une distance de 10cm, capte les plots et tourne de 90deg quand necessaire. la conception mécanique est quasi terminée.
Points non validés : Ajuster la distance du capteur afin qu’il reconnaisse le plot du mur. ajuster le fonctionnement du moteur du bras et faire la fonction pour capter et chopper l’objet. .
Séances libres
Rapports d’activité :
Pôle mécanique : Création du contre poids pour permettre au bras de se relever avec le poids de la pince et de l'objet.
Pôle informatique : Finalisation du code pour les déplacements du robot, ainsi que les actions de la pince pour attraper et relâcher l'objet.
Pôle électronique : Câble management + recharge de la batterie.
Problèmes / solutions :
Le poids de la pince et de l'objet était trop important et le bras ne parvenait pas à se redresser. Le couple du moteur était insuffisant. Les moteurs ont donc été débridés et malgré cela les mouvements du bras étaient restreints. L'équipe mécanique a pensé a jouté un contre poids pour faciliter les déplacements de la pince. Le problème a été de savoir où placé le contre poids et sa taille pour ne pas gêner les déplacements.
Problème non résolu :
On a rencontré un problème lorsqu'on teste le robot en autonomie (sans qu'il soit branché au PC). Le servomoteur n'a pas l'air d'avoir assez de courant pour maintenir l'objet. Après l'avoir attrapé, il le relâche et retourne à l'étape 1 du programme sans raison. On a essayé de mettre un condensateur en parallèle avec l'alimentation , enlever les serial print, vérifier le void setup, etc. mais rien n'a changé. On n'a pas réussi à résoudre le problème et donc on fait la démonstration en étant branché au PC.
Version finale du robot :
No Comments