Skip to main content

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 (responsable batterie)

  • Responsable mécanique : Bastien (responsable mécanique), Léo , Christian

  • Chef de projet/Secrétaire : Quentin

Design générale du robot
  • Base du robot rectangulaire
  • 2 bras articulés reliés au châssis
  • Pince reliée au bras articulés
  • Dimension générale du robot à déterminer
  • Pièce de liaison à 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

tp rob.jpg

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érenciés par leurs PIN, code Arduino a ajouter.
  • Test de fonctionnement du capteur : fonctionnement du Capteur ultrasons HC-SR04 et code utilisé 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écoupe 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

Capture d'écran 2025-03-13 110950.png

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

Points clés de la conception mécanique finale du robot :

Liaisons pivots :

Les liaisons pivots, dans la pince du robot, ont été réalisées avec un axe entre les pièces. Cet axe a été fabriqué avec un morceau de carton entouré de scotch. Ce procédé a été utilisé en raison de l'adaptabilité de la pièce à des trous de diamètre variable.

Supports moteurs :

Les supports des moteurs sont deux pièces permettant de tenir les moteurs du robot. Ils ont été modélisé sous Solidworks puis découpé avec la découpeuse laser. Les supports sont maintenu en position avec deux équerres découpées elles aussi avec la même machine. Ces équerres permettent de résoudre le problème de surcharge de l'arrière du robot, ce qui écartait les roues et faisait toucher le sol au robot. Elles on été collé avec de la colle à bois de l'autre coté des roues afin d'éviter d'éventuel frottements ou conflit avec les roues.

Support pince :

Le support de la pince a été réalisé sous Solidworks puis découper en MDF 3mm. Une seule pièce a été réalisé pour le support de la pince et le haut du bras. La pince est vissé dans cette pièce.

Support capteur droit :

Le capteur droit se trouve sur la droite du robot, orienté vers le mur. Le capteur est tenu vers le sol par une pièce. Le capteur est tenu dans cette pièce par les "yeux" du capteur qui sont coincé dans la pièce.

Support capteur pince :

Le capteur pince se trouve sur le bras du robot, orienté vers l'avant. Le capteur est tenu en dessous de la pince, le support est monté serré sur le bras du robot. Le capteur est tenu dans cette pièce par les "yeux" du capteur qui sont coincé dans la pièce.


Les fichiers Solidworks sont en annexe.



Activités et travaux réalisés en autonomie :


Après avoir réalisé que notre châssis comportait de nombreux problèmes de conception, nous avons changé la plupart des pièces et opté pour un modèle plus simple, dont les pièces sont en fichiers joints à ce wiki. Les pièces ont été réalisées par le pôle mécanique et le montage a été réalisé par Bastien, qui a également essayé d'y implémenter un bouton (sans succès).

Sur le modèle de ce robot, il y a eu quelques modifications visibles sur la vidéo partagée.

La principale méthode retenue pour la conception du code fut l'utilisation des "switch" et du passage d'un cas à un autre à l'aide de conditions définies grâce à nos capteurs. De plus, nous avons grandement utilisé les "delays", que ce soit pour réaliser des mouvements comme tourner à 90 degrés ou encore pour avancer d'une distance prédéfinie. Cette méthode est donc principalement expérimentale, très sensible aux perturbations ; néanmoins, l'utilisation d'un code très simple limite le nombre de "bugs" et rend sa compréhension simple. Le code est joint dans un fichier .txt nommé code_final_6 ; de nombreux commentaires expliquent le code. Il ne faut pas non plus oublier nos documents qui expliquent la pince et les capteurs.

Dans le détail, Skander s'est occupé de l'utilisation de la pince et des capteurs, Nicolas a écrit le corps du code et a essayé d'y implémenter un correcteur. Enfin, Quentin a réalisé les parties de code pour attraper et déposer l'objet. Le reste du code a été développé en groupe, sans répartition spécifique.

Nous avons remarqué expérimentalement que les capteurs nous renvoyaient régulièrement des valeurs aberrantes. Nous avons donc utilisé un filtre pour limiter ces valeurs. De plus, il est préférable de placer les capteurs perpendiculairement au plan observé et de bien les orienter.

Récapitulatif :
Ce projet permet de mieux comprendre l'intérêt de chaque matière étudiée durant la Robotique et de les appliquer. Il nous apprend également ce que représente un travail de groupe sur le long terme.

Ce que nous aurions pu améliorer :

  • Mieux organiser notre temps en définissant des dates pour chaque étape et en les respectant

  • Prendre le temps de se mettre d'accord sur le fonctionnement précis du robot dès le début, et ne pas s'en tenir à une version globale afin d'éviter les surprises ou les malentendus

  • Ne pas hésiter à utiliser des prototypes pour tester rapidement le code

  • Travailler par paire, avec une personne à l'aise et une débutante, pour à la fois apprendre et ne pas perdre trop de temps quand c'est la course contre la montre