IMA3/IMA4 2019/2021 P2+ : Différence entre versions
(→Documents Rendus) |
(→Documents Rendus) |
||
Ligne 133 : | Ligne 133 : | ||
'''Code Arduino avec joystick''': [[:Fichier:Code_Joystick_Wheel.zip]]<br> | '''Code Arduino avec joystick''': [[:Fichier:Code_Joystick_Wheel.zip]]<br> | ||
'''Code Arduino RGB''': [[:Fichier:Blink_RGB.zip]]<br> | '''Code Arduino RGB''': [[:Fichier:Blink_RGB.zip]]<br> | ||
+ | '''Code Arduino Leds''': [[:Fichier:Blink_LEDS.zip]]<br> | ||
'''Code Arduino IC2''': [[:Fichier:Test_ic2.zip]] permet de récupérer les adresses des 2 ADC.<br> | '''Code Arduino IC2''': [[:Fichier:Test_ic2.zip]] permet de récupérer les adresses des 2 ADC.<br> | ||
'''Code Arduino ADC''': [[:Fichier:Test_adc.zip]], ici j'ai fait varier la tensions de 5 à 0 V et j'ai observé à l'aide d'un voltmètre. Par ailleurs il faut declarer les deux ADC afin d'éviter toute erreur. | '''Code Arduino ADC''': [[:Fichier:Test_adc.zip]], ici j'ai fait varier la tensions de 5 à 0 V et j'ai observé à l'aide d'un voltmètre. Par ailleurs il faut declarer les deux ADC afin d'éviter toute erreur. |
Version du 21 juin 2021 à 17:50
Présentation Générale
- Projet : ROBOT AUTONOME CENTAURE
- Encadrant : Xavier Redon
- Lieu de la formation : Polytech Lille, Lille , France
- Réalisé par : Marlène Kameni
- Calendrier
- Debut du projet : 17 Mai 2021
- Fin du projet : 29 Juin 2021
Description
ce projet s'intègre dans le cadre de la formation des élèves ingénieurs de
Polytech Lille, étudiante dans la filiaire Systèmes Embarqués.Il consiste à
à terminer l'avancement et la mise sur pied du robot.
Objectifs
Rendre opérationnel le robot Centaure au niveau de l'étage commande.
Préparation du projet
Cahier des charges
- terminer l'agencement interne du robot, e.g. terminer les supports des différents composants et réaliser un câblage organisé et maintenable
- inaliser les modules permettant de diriger le robot en filaire (manette) et sans fil (télécommande infrarouge)
- finaliser l'implantation des capteurs à courte distance (optique et de contact)
- finaliser la programmation de l'étage micro-contrôleur pour permettre la conduite du robot avec les moyens cités plus haut et en intégrant un arrêt d'urgence en cas de détection d'obstacle
Choix techniques : matériel et logiciel
Liste des tâches à effectuer
- Terminer l'agencement matériel
- faire le design sur onshape dela vitre de couverture supérieure
- intaller et s'assurer de démontage facile du deuxième boutton d'arrêt d'urgence sur cette vitre
- moyen de recharge des batteries.
- Fonctionnement des battéries
- faire fonctionner les battéries
- reprogrammer l'arduino et lancer chaque roue 1s
- Module de direction du robot
- realiser une carte avec connecteur RJ11 pour une manette
- realisation de la manette avec le joystick pour commander le robot
- programme de l'arduino pour que les roues soient commandées par la manette
- Montage des capteurs
- Terminer l'installation de tous les capteurs
- connecter tous les capteurs à l'arduino de façon esthétique avec les cables adaptés
- refaire la carte de l'arduino pour inserer les trous des 4 cables rajoutés
- Reecrire le code de l'arduino pour arreter le robot en cas d'obstacle
Calendrier prévisionnel
Réalisation du Projet
Prologue
Semaine 1 & 2
1.Prise en main du travail fait
En parcourant de long en large les rapports des groupes qui ont précédemment travaillé sur le robot Centaure , j'ai constaté qu'une large partie du travail avait déjà été entamé , notamment concernant la construction mécanique.les connecteurs Molex permettant de contrôler les variateurs ont bien été branchés.Le chargeur/testeur de batterie a lui aussi été reçu.
2.Installation et réalisation du capot de dessus
Grâce au logiciel Onshape, j'ai réalisé une représentation 3D de cette partie et grâce à l'imprimante laser du Fabricarum de Polytech Lille, je l'ai conçue.
L'installation du bouton d'arrêt d'urgence est réalisée avec succès mais une seule des vis prévues pour ce bouton sur le capot entre, ceci est due à la conception d'un rayon plus grand que prévu.
Mais j'ai pu constater que ce petit écart de dimensionnement permet d'avoir un désassemblage facile par la suite.Néanmoins si je constate une erreur dû à cela on pourra toujours refaire une découpe avec un diamètre du trou plus petit.
3.Alimentation des moteurs
je dispose de moteurs SRG0131 24V / 15.5 A / 0.35 kW / 10 km/h.Ces moteurs ont un courant de pic d’approximativement 30-35A. En régime normal, leur consommation est d’environ 8A.
Attention: il est impératif de desserrer les freins en injectant du 24V sur les deux petits fils (jaune et violet) allant vers les moteurs
Afin de recharger les batteries , on dispose d'un :
- chargeur/testeur de batterie
Concernant le test de batterie , grâce à un voltmètre j'ai pu tester si les batteries étaient déchargées ou pleinement chargées.
sachant qu'avec ce chargeur ,la pleine charge peut indiquer une valeur supérieure à 12,79 V. Cela peu aller à un poil au dessus de 13V. Sachant qu’après l’avoir débrancher elle redescend à 12,8 12,9V.
Le travail sur la conception de la carte PCB relié à l’Arduino n'a pas été bien explicité sur le wiki. du fait de ce manque d'informations j'ai pris contact avec les élèves qui travaillaient dessus avant moi. J'attends donc leur réponse. En parallèle j'ai retravaillé sur le bouton d’arrêt d'urgence qui était pas bien fixé et sur l'écriture du code Arduino.
4.Explication code Arduino
Aujourd'hui le code Arduino écrit pour faire avancer les deux roues a fonctionné parfaitement comme sur la vidéo ci-dessous.
En début de code j'ai défini les sorties analogiques correspondantes à l'avance/recul des roues gauches et droites. mais aussi les variables correspondants aux variateurs qui gèrent les moteurs.Pour finir j'ai simplement écrit les syntaxes d'activation des moteurs.
5.Création de la manette
Le premier essai de conception de la manette du robot cette fois ci avec deux joysticks.le soucis étant une intersection de certains liens entre eux qui créons un court_circuit ultérieurement à l'utilisation.Mais après le problème a été réglé.
Fichier Fritzing Mar : Fichier:Manette mar2.zip Dernière version
Semaine 3 & 4
La semaine a démarré avec la suite du travail sur le PCB de la carte arduino.
J'ai continué entre temps à faire l'inventaire du matériel manquant matériel qui a été commandé.
En parallèle la soudure de carte pcb de la manette avec les deux joysticks , la prise RJ , la led et la résistance a été faite.
De plus le support de plexiglas de cette carte a été réalisée sur Onshape
1.Processus création du pcb de la carte arduino
En s'inspirant de la carte précédente , j'ai donc gardé les éléments comme les connecteur des variateurs, les ports des relais de variateurs , la prise RJ11.
Mais en vu de rajouter les 6 capteurs présents sur les côtés du robot centaure, j'ai rajouté un connecteur HE10. J'ai fait quelques ajustements pour avoir un rendu esthétiquement correct.
En vu de rendre la carte le moins possible encombrée , j'ai changé les 2 convertisseurs numérique-analogique en intégrant certains de leurs éléments à la carte.
Fichier Fritzing Mar terminé: Fichier:Arduino pcb mar.zip avec schematic modélisé.
Semaine 5 & 6
1.Finition manette
En début de cette semaine le soudage des composants de la manette et le support ont été finalisé.
2.Explication code joystick
Grâce à un câble RJ11 , j'ai connecté la manette à la carte et l’Arduino à l'ordinateur. la première partie du code sert à l'initialisation des variables notamment les pins analogiques où des axes horizontal et vertical du joystick.
Plus précisément ici l'axe vertical sert à:
* l'avance avant (joystick vers le haut) et à * l'avance arrière (joystick vers le bas).
Et l'axe Horizontal permet de gérer ici la vitesse des roues:
* plus on va à droite plus la vitesse augmente * plus on va à gauche plus la vitesse diminue
3.Maquettage câbles capteurs
j'ai opté pour l'utilisation d'un câble nappe, il sera découpé afin qu'il soit le plus possible uni.il sera connecté sur la carte PCB au connecteur 20 pins.
4.Test carte PCB
- La led RGB
Le routage de la led rgb n'a pas été fait correctement fait en effet l'anode de cette dernière devait être placé à droite, on a donc manuellement grâce des coup de gratture et de rafistolage au fil en cuivre remédier à ce problème et grâce au code Arduino test j'ai fait varier les couleurs de la led RGB.
- Les leds
- Les DAC
Documents Rendus
Code Arduino : Fichier:Code_turn_wheel.zip
Code Arduino avec joystick: Fichier:Code_Joystick_Wheel.zip
Code Arduino RGB: Fichier:Blink_RGB.zip
Code Arduino Leds: Fichier:Blink_LEDS.zip
Code Arduino IC2: Fichier:Test_ic2.zip permet de récupérer les adresses des 2 ADC.
Code Arduino ADC: Fichier:Test_adc.zip, ici j'ai fait varier la tensions de 5 à 0 V et j'ai observé à l'aide d'un voltmètre. Par ailleurs il faut declarer les deux ADC afin d'éviter toute erreur.