lucasmatisimongarcia
ges-2020-A1-MATI GARCIA
26 posts
Don't wanna be here? Send us removal request.
lucasmatisimongarcia · 4 years ago
Text
Vingt-cinquième Séance (24 mars 2021)
résumé de la séance:
-le projet étant terminé nous avons décidé de lister les améliorations possibles sur le robot et les programmes.
-nous avons testé la distance des émetteurs/récepteurs Grove Serial RF, le constructeur annonce 600 metres et nous avons voulu vérifier:
Tumblr media
nous avons donc testé et on arrive à commander le robot jusqu’à 536 metres. Les résultats sont assez proches de ceux annoncés par le constructeur.
-nous avons également préparé notre soutenance final, amélioré notre diaporama. De plus,nous avons commandé le robot via les deux types de commande pour réaliser la chorégraphie des 16 mouvements.
DERNIERE SEANCE ET FIN DU PROJET 3 ROUES !!!
0 notes
lucasmatisimongarcia · 4 years ago
Text
Vingt-quatrième séance (17 mars 2021)
résumé de la séance:
-maintenant il faut réaliser le dernier programme qui réceptionne le caractère LabVIEW et en fonction de ce caractère le robot réalise le mouvement associé. Pour cela nous avons utilisé un mélange du programme de réception du caractère précèdent et le programme final de la liaison Arduino/manette.
Tumblr media
-Nous avons dû modifier les pins du récepteur Groove RF par RX=11 et TX=12. En effet, le pin 3 est déjà utilisé le motor 1 pour la vitesse. Nous avons donc rajouté les variables du programmes Arduino/manette pour que les 3 moteurs puissent fonctionner.
-Idem pour le void setup, nous avons repris la même void que le programme de réception du caractère LabVIEW et ajouter cela:
Tumblr media
Cela permet d’énoncer que les pins de 3 à 8 correspondent à la sortie et donc aux trois moteurs du robot.
Tumblr media
Pour le void loop, on a repris celui du programme qui affiche le caractère reçu sur LabVIEW, on affiche sur le LCD la lettre sélectionnée sur l’interface LabVIEW. En plus, on a ajouté l’ensemble des commandes pour les moteurs associées à une lettre. On peut les retrouver dans le switch(incomingByte).
-Une fois le programme fini, nous l’avons testé et il fonctionne parfaitement. En revanche, le test n’aura pas duré longtemps car la batterie est totalement déchargée.
-Nous avons donc dû mettre le test en pause, et chargé la batterie 3S à l’aide du chargeur Karaté Blood. Une fois chargé, nous avons resoudé la batterie et fini le test devant plusieurs membres du groupe A1. Voici le résultat en vidéo:https://youtu.be/rdh38-pDiPA
LE PROJET EST FINI, CAHIER DES CHARGES RESPECTE ET DANS LES TEMPS !!!
0 notes
lucasmatisimongarcia · 4 years ago
Text
Vingt-troisième séance (10 Mars 2021)
résumé de la séance:
-nous avons retesté l’ancien programme pour voir les points que l’on pourrait améliorer pour la transmission LabVIEW.
-à ce stade nous avons réussi à communiquer entre deux cartes Arduino. Aussi réussi à afficher la caractère sélectionné LabVIEW sur une carte Arduino… Il faut donc maintenant combiner ces deux programmes pour afficher le caractère LabVIEW sur la deuxième carte grâce au Groove RF.
-nous avons donc repris le programme d’émission de base qui envoi un  message et le modifier. Maintenant on envoie le caractère de LabVIEW sur le COM de la bonne carte Arduino:
Tumblr media
-pour la réception, pareil nous avons repris un programme de réception précédent et nous l’avons adapté pour afficher la caractère reçu sur le LCD:
Tumblr media
-nous l’avons testé et cela marche parfaitement, voici le résultat:
https://youtu.be/5ZvrzH7tDjo
-en fin de séance nous avons commencé à modifier le programme de réception afin de pouvoir effectuer un mouvement du robot avec la lettre que l’on reçoit. C’est le dernier programme normalement pour répondre au deuxième cahier des charges. Il nous reste donc 2 séances pour finaliser le projet et pour l’instant nous sommes dans les temps et nous respectons le planning prévisionnel. 
0 notes
lucasmatisimongarcia · 4 years ago
Text
Vingt-deuxième séance (8 Mars 2021)
résumé de la séance:
Tumblr media
-après avoir bien pris en main les deux Arduino et leur liaison grâce au Groove RF, il faut maintenant récupérer le caractère depuis LabVIEW et le lire sur Arduino et l’afficher sur un LCD (1 sur la photo). 
C’est la première étape afin de pouvoir commander le robot depuis LabVIEW. Pour cela il faut récupérer le caractère sur le port de la carte Arduino (COM) initialement choisi sur LabVIEW. 
On ajoute la librairie du LCD, on le paramètre, il y a aussi la caractère de base qui est ‘z’ qui correspond à l’arrêt du robot.
Tumblr media
dans le void loop, on lit le caractère entrant “ incomingByte “ et on affiche sur le LCD, voici le résultat :
https://www.youtube.com/watch?v=oHrK1JG3vrs
0 notes
lucasmatisimongarcia · 4 years ago
Text
Vingt-et-unième séance (4 Mars 2021)
résumé de la séance: 
-enregistrement de vidéo pour le clip de présentation du projet
-amélioration des programmes émission/réception entre les deux cartes Arduino, le but de cette modification et de pouvoir écrire dans le moniteur série de la première carte et l’envoyer. L’autre carte Arduino réceptionne le caractère et l’affiche sur le moniteur série et également un LCD.
Il faut donc modifier le programme d’émission pour pouvoir entrer un message (on met un “char msg”), voici le programme final d’émission:
Tumblr media
Pareil pour la réception, il faut rajouter la librairie du LCD, le paramétrer, recevoir le message et l’afficher sur le LCD:  
Tumblr media
-ensuite nous avons testé les deux programmes pour voir si tout fonctionne bien et en effet ça a marché, voici le résultat:
https://href.li/?https://www.youtube.com/watch?v=OaaJAUYyfu8
0 notes
lucasmatisimongarcia · 4 years ago
Text
Vingtième séance (3 Mars 2021)
résumé de la séance:
-test du programme émission/réception avec le nouveau composant Groove serial Pro. Le montage fonctionne bien donc les apc220 étaient bien la cause du dysfonctionnement. Toutes les secondes, la première Arduino émet un chiffre avec l’action “send”, c’est incrémenté à +1. Le prochain envoi sera n+1.
-pour la carte Arduino de réception elle reçoit le nombre envoyé avec le message “receive” dans le moniteur série.
0 notes
lucasmatisimongarcia · 4 years ago
Text
Dix-neuvième séance (15 fév 2021)
résumé de la séance:
-mise en place d’un test pour voir si la communication entre les deux cartes Arduino marchent avec les apc220.
-élaboration d’un programme d’émission et de réception, puis montage pour pouvoir le tester. Observation: on voit bien que le message est envoyé “send” en revanche il ne reçoit pas. Sur le moniteur série d’émission, il envoi un n+1 toutes les secondes. Sur la réception, rien ne passe...il faut trouver pourquoi.
-plusieurs tentatives de modifications du code de réception pour essayer de récupérer quelque chose mais rien de concluant. Nous avons donc, avec notre tutrice, fait des test pour voir si les apc220 marchent correctement et s’ils ne causent pas le problème.
Tumblr media
-au lieu de relier D2 et D3 au RX, TX de l’apc220 nous l’avons directement relié aux bornes réceptrices et émettrices de l’autre carte Arduino. Cette fois-ci ça marche donc c’est bien l’apc220 qui était défectueux... il faut donc le changer. Notre tutrice nous a orienté vers un composant similaire dont la fonction est la même:  Grove - Serial RF Pro
Tumblr media
-nous avons commencé à nous documenter sur ce composant qui fonctionne sur la même branche de fréquence:  433/470/868/915 MHz.
Plus qu’à re tester notre programme émission/réception avec ce nouveau composant.
0 notes
lucasmatisimongarcia · 4 years ago
Text
Dix-huitième séance (10 fév 2021)
résumé de la séance:
-documentation apc220 sur plusieurs blogs afin de lier LabVIEW et ARDUINO.
-recherche projets similaires: https://www.youtube.com/watch?v=Fek1i19TCz0
-tentative d’essai convertisseur TTL avec apc220 + documentation pour éviter d’utiliser deux cartes Arduino.
-photos + vidéos pour le poster et la vidéo présentation du projet
0 notes
lucasmatisimongarcia · 4 years ago
Text
Dix-septième séance (3 fév 2021)
résumé de la séance: 
-Il a fallu modifier le programme (void loop) afin que l’on puisse démarrer le robot,  le mettre en pause et enfin l’arrêter.  Pour cela j’ai rajouté une variable “int marche” au début du programme, sachant que cette variable est égale à 0 en initiale. Dans le void loop, lorsqu’on appui sur L3, marche passe à 1 et la lettre=‘Q’, et lorsqu’on appui sur R3 marche=0 et lettre=‘S’. Ensuite j’ai ajouté toutes les commandes (touches associées aux lettres) dans un ‘if (marche==1)’. C’est-à-dire que les instructions de commande s’exécuteront seulement si marche=1, donc en appuyant sur L3.  C’est une boucle if/else, et dans le ‘else’ la variable lettre=‘S’ qui correspond à STOP’:
Tumblr media
-Avant de tester le programme final, nous avons fait une fiche explicative pour mieux visualiser les touches associées aux mouvements avec des couleurs liées aux groupes de déplacement. Cela sera plus simple pour le client ou les nouveaux utilisateurs de prendre en main le robot :
Tumblr media
- Test du programme final, le résultat final en vidéo. Le premier cahier des charges est pleinement respecté, le robot réalise sa chorégraphie de 16 mouvements + marche/arrêt. Il est de plus autonome, il obéit à la commande et démarre par bouton M/A :
https://youtu.be/WGImKs-cCGY
0 notes
lucasmatisimongarcia · 4 years ago
Text
Seizième séance (29 jav 2021)
résumé de la séance:
-problème de connexion entre la manette et le récepteur de la manette. Il a fallu trouver une raison et nous avons donc changé les piles de la manette mais la connexion entre les deux modules ne marchait toujours pas. Nous avons finalement réussi à obtenir une connexion stable et fonctionnel lorsque la manette et la module se trouve très proche (moins de 5cm).
-nous avons modifié la combinaison pour les lettres : “H, I, J, K” qui correspondent aux diagonales. Nous utilisons maintenant la touches L1 + les touches du PAD. Auparavant nous voulions réaliser avec les joysticks mais nous avons eu des complications, donc nous avons décidé de modifier ceci.
Tumblr media
-Il a fallu donc mettre à jour notre tableau des mouvements/ touches manettes/ touches associées:
Tumblr media
-test de tout les mouvements, tous fonctionnent correctement avec l’envoi de la commande depuis la manette Ps2. Les mouvements s’effectuent à une vitesse de 50 sur 255, donc vitesse plutôt faible. Il reste à trouver comment arrêter/ mettre en pause / et démarrer le robot (objectif prochaine séance) 
0 notes
lucasmatisimongarcia · 4 years ago
Text
Quinzième séance (12 Jav 2021)
résumé de la séance : 
-réalisation montage afin d’utiliser une seule batterie pour l’ensemble du robot. Cela permettra d’alimenter les trois moteurs ainsi que la carte Arduino seulement avec la batterie  Li-ion. Voici le montage que nous avons élaboré:
Tumblr media
Et voici la résultat après soudure: 
Tumblr media
A la fin du montage, nous avons testé et le robot fonctionne parfaitement, il est pleinement autonome.
-Nous avons ajouté, dans le programme Arduino, toutes les “case (lettre)” afin que le programme puisse fonctionner avec les deux interfaces. 
-fin des combinaisons des touches / mouvements 
-rangement du programme Arduino avant de pouvoir l’intégrer au rapport de projet. 
-planning:
Tumblr media
0 notes
lucasmatisimongarcia · 4 years ago
Text
8 Jav 2021 SOUTENANCE S3
0 notes
lucasmatisimongarcia · 4 years ago
Text
Quatorzième séance (4 Jav 2021)
résumé de la séance ❄❄❄ :
-mise en commun des tâches réalisées durant les vacances.
-suite du programme Arduino connexion manette.
-commencement de la liaison avec RF-magic :
Tumblr media
-installation sur le même pc les logiciels LabVIEW et RF-magic pour répondre au deuxième cahier des charges. ❄❄❄
0 notes
lucasmatisimongarcia · 4 years ago
Text
Treizième séance (18 déc 2020)
résumé de la séance:
-goûter covid-19, en respectant les gestes barrières:
Tumblr media
-nous avons décidé de reprendre notre programme et d’y rajouter les différents mouvements  avec les touches associées en respectant notre tableau. Exemple (avance, recule, à gauche, à droite)
Tumblr media
En revanche, nous avons fait face à un problème avec la sens de rotation du moteur M1, il est inversé. Normalement pour aller à droite le M1 doit être: “M1_advance” mais comme il est inversé c’est : “M1_back”. il faut doit prendre en compte cette modification dans le code pour tout les mouvements. Cependant l’utilisateur (client) ne sera pas impacter par ce changement. 
Tumblr media
Concernant l’avancement du programme, il a fallu le remanier afin que la reception de la télécommande associe un bouton à une lettre dans une boucle. Dans une deuxième boucle, chaque lettre doit être associée à un mouvement lorsqu’on affiche une lettre. A ce jour nous avions seulement la réception du bouton, étude du bouton et ordre du mouvement. Pour que le programme fonctionne également avec la partie LABVIEW il faut donc rajouter l’association d’une touche à une lettre et un lettre à un mouvement.
Tumblr media
Lors des vacances de Noël, nous allons avancer sur cette partie du programme pour ne pas avoir à refaire le même travail pour la réception des ordres depuis LabVIEW.
Bonnes fêtes. 
0 notes
lucasmatisimongarcia · 4 years ago
Text
Douzième séance (16 déc 2020)
résumé de la séance:
-nous avons réussi à régler le problème de connexion entre la manette et le récepteur. Nous avons donc pu tester notre programme. Lors de cet essai, nous avons pu utiliser la manette et contrôler le robot. Lors du premier essai, les mouvements du robot n’étaient pas défini :
https://www.youtube.com/watch?v=uKBbrR51dI8
-nous avons donc modifier les touches et les mouvements pour répondre au cahier des charges ainsi qu’au tableau que nous avions défini auparavant. Il a fallu adapter les commandes de déplacement du robot car le moteur 2 est remplacé par le moteur 4.
-documentation sur l’émission/réception TTL
0 notes
lucasmatisimongarcia · 4 years ago
Text
Onzième séance (9 déc 2020)
résumé de la séance:
-résolution du problème de la boucle, ajout d'un timeout dans la boucle évènement et d’un registre à décalage, test de l’interface LabVIEW : les problèmes sont résolus et l’interface répond bien : https://www.youtube.com/watch?v=bbUKobtc9p8
On voit bien que lorsque le VI est lancé, l'indice élément et l'élément en question apparaissent simultanément sur la face avant jusqu'au relâchement du bouton de commande.
-Pour la partie Arduino, il a fallu modifier dans le void setup par rapport au programme exemple du shield moteur. En effet on a déclaré nos valeurs pour le contrôle du shield moteur de 3 à 8.
Dans la boucle “for” il faut donc définir la variable i de 3 à inférieur ou égal à 8 (<=).
Tumblr media
-suite à cela, la touche carré de la manette répond au commande et effectue l’action. Par la suite nous avons essayé de réaliser une combinaison de mouvements:
Tumblr media
bouton rond rouge = robot avance; bouton carré rose = robot recule; bouton croix bleu = robot à l’arrêt.
-en revanche nous n’avons pas pu tester en condition réelle car la manette n’arrivait plus à se connecter au module de réception. Malgré plusieurs tentatives de reconnexion, test voltmètre des piles de la manette. Il faut trouver la cause de la panne afin de pouvoir tester notre nouvelle version du programme Arduino.
0 notes
lucasmatisimongarcia · 4 years ago
Text
Dixième séance (7 déc 2020)
résumé de la séance:
-amélioration programme avec l'ajout d'un 2eme bouton stop qui permet de lancer le VI, et un second qui met en pause. Le nouveau STOP qui quitte définitivement le VI
-incrémentation +1 à la sortie des mouvements en booléen pour éviter d'obtenir un -1 quand aucun mouvement n'est demandé.  
-problème le programme ne tourne pas en boucle, recherche de résolution en cours, il faut, à ce moment la, qu'on appui constamment sur le bouton marche pour actualiser un nouveau mouvement.
-pour la partie Arduino, il y a eu plusieurs complications qu’il a fallu pallier. Tout d’abord dans le programme, nous avons défini la valeur error à 0 lorsque la manette se connecte bien et 3 lorsque la connexion est refusée. Sur le moniteur série il était affiché “3″ alors que la manette était bien connectée. Cela était sans doute dû à l’ajout de variables pour le contrôle du shield moteur.
Tumblr media
-pour mieux visualiser la situation, nous avons rajouté un serial.println(”rose”) lorsque la touche carré de la manette est activée. sur la moniteur série “rose” devrait apparaitre sinon le “rien”. Nous avons ajouté cela pour trouver d’où vient le problème. On peut voir que même lorsqu’on appuie sur le carré le “rien” défile:
Tumblr media
-sur le moniteur le mot “rose” ne s’affiche jamais. On doit trouver la cause de cela pour que l’affectation de la touche puisse entrainer un mouvement du robot.
0 notes