PROJET ROB3 Léo, Christian, Bastien, Quentin, Nicolas, Skander
06/02/2025:
Activités du jour:
- Diagramme de Gantt
- Répartition des rôles
- Design générale du robot
- Définition de la logique du code
- Découverte du matériel
Diagramme de Gantt
- Nombre de séance et objectif remplie
- A remplir dans les détails au fil du projet
Répartitions des rôles
-
Pôles informatique : Nicolas, Skander, Quentin
-
Responsable électronique: Christian (responsables batterie)
-
Responsable mécanique : Bastien (responsables mécanique), Léo , Christian
-
Chef de projet/Secrétaire : Quentin
Design générale du robot
- Base du robot rectangulaire
- 2 bras articulé relié au châssis
- Pince relié au bras articulés
- Dimension générale du robot a faire
- Pièce de liaison a définir
Définition de la logique du code
- Fonction a coder: Avancer, Tourner sur place, Détection, Hauteur, Attraper cube
- Logique du code
- Trouve un mur et le longer
- Trouver l'obstacle marquant la position de l'objet
- Trouver le premier obstacle qui marque l'arrivée
- Trouver le second obstacle qui marque l'arrivée
- S'arrêter
Découverte du matériel
A faire pour la séance suivante
Lire la documentation des pièces électroniques
27/02/2025:
Activités du jour:
Pôles mécanique :
- Définition précises des dimensions du robot ( mesure en millimètre )
- Choix de la technique utilisé pour les pivots : Vis-rondelle-tube-rondelle-écrou serré pour bloquer les solides du pivot
Photo de la solution pivot a fournir
Pôles informatique et électronique:
- Test sur le fonctionnement de la carte Arduino Bus CAN + SHIELD : le Shield permet d'éviter le bruitage des signaux sur l'entrée/sortie
- Utilisation de plusieurs moteurs simultanément différencier par leurs PIN, code Arduino a ajouter.
- Test de fonctionnement du capteur : fonctionnement du Capteur ultrasons HC-SR04 et code utiliser en annexe
- Test de fonctionnement de la pince : code utiliser en annexe
Durant la prochaine séance :
- Pôle électronique : faire un schéma papier des fils électriques sur la maquette, à tester le plus tôt possible
- Pôle mécanique : prendre en main la machine de découpage laser et commencer la modélisation
- Pôle informatique : coder toutes les fonctions et les tester sans le robot, puis si possible sur la maquette
Annexe:
Documents rattaché :
TUTO_capteur.pdf
Pince.pdf
13/03/2025:
Activités du jour:
Pôles mécanique :
- Modélisation des pièces du robot, d'abord dans une version complète puis dans sa version détaillé pièce par pièce
- Test de fonctionnement de la découpe laser pour ajuster les dimensions pour les emboitements de pièce
- Modélisation du châssis a découper pour la prochaine séance
- A faire : créé le bras de la pince
Pôles informatique :
- Connexion et commande de plusieurs moteurs sur la carte Arduino, ajouter les capteurs par la suite
- Création de la fonction avancer tout droit et de la boucle d'asservissement pour que le robot reste parallèle au mur
- Tester la fonction réaliser dès que le châssis est en terminer
- A faire : codé la fonction du choix de la hauteur de la pince
Pôles informatique et électronique:
- Création du schéma du câblage des composants ( à refaire au propre )
- A faire : aider les autres pôles
Annexe:
Schéma du câblage
27/03/2025:
Activités du jour:
Pôles mécanique :
- Définition des étalonnages pour des assemblages de pièces de grandes tailles :
- males = 10 mm , 10 mm
-
femelle = 9,70 mm , 10 mm , 30 mm
- A faire pour la prochaine fois :
- impression et démoulage du châssis
- terminer la modélisation de la pince et imprimer
Pôles informatique :
- forme détaillé du script principal
- code pour monter et descendre la pince
- A faire pour la prochaine fois :
- tester le code sur le robot et régler les potentiels dysfonctionnement
Pôles électronique :
- modélisation de pièce pour le pole mécanique
Activités des travaux réalisés en autonomie :
Après avoir réaliser que notre châssis comportait de nombreux problèmes de conception, nous avons changer la plupart des pièces et opter pour un modèle plus simple dont les pièces sont en fichiers joints a ce wiki. Les pièces ont été réalisés par le pôle mécanique et le montage a été réaliser par Bastien, qui a également essayer d'y implémenter un bouton( sans réussite ).
Sur le modèle de ce robot il y a eu quelques modifications visible sur la vidéo partager.
La principale méthode retenue pour la conception du code fut l'utilisation des "switch" et du passage d'un cas a un autre a l'aide de condition définie grâce a nos capteurs. De plus nous avons grandement utiliser les "delays" que se soit pour réaliser des mouvements comme tourner a 90 degrés ou encore pour avancer d'une distance prédéfinie. Cette méthode est donc principalement expérimentale, est très sensible au perturbations , néanmoins l'utilisation d'un code très simple limite le nombre de "bug" et rend ca compréhension simple. Le code est joint dans un fichier txt au nom de code_final_6.code_final_6, de nombreux commentaires explique le code, il ne faut pas non plus oublier nos documents qui explique la pince et les capteurs.
Dans le détail Skander s'est occuper de l'utilisation de la pince et des capteurs, Nicolas a écrit le corps du code et a essayer d'y implémenter un correcteur, enfin Quentin a réaliser les parties de code pour attraper et déposer l'objet. Le reste du code a été développer en groupe sans répartition spécifique.
Nous avons remarquer expérimentalement que les capteurs nous renvoyait régulièrement des valeurs aberrantes, nous avons donc utiliser un filtre pour limiter ces valeurs. De plus il est préférable de placer les capteurs perpendiculaires au plan observer et de bien les orienter.
Récapitulatif :
Ce projet permet de profondément comprendre l'intérêt de chaque matière étudier durant la Robotique, et de les appliquer. Il nous apprend également ce que représente un travail de groupe sur de plus long terme.
Ce que nous aurions pu améliorer :
- Organiser mieux notre temps en définissant des dates pour chaque étapes et LES RESPECTER
- Prendre le temps de se mettre d'accord sur le fonctionnement précis du robot dés le début et ne pas sans tenir a une version globale afin d'éviter les surprises ou les malentendus
- Ne pas hésiter a utiliser des prototypes pour rapidement tester le code
- Travailler par paire avec une personne a l'aise et une débutante pour a la fois apprendre et ne pas perdre trop de temps quand c'est la course contre la montre