Différences entre versions de « Coupe de France 2021/2022/Session 5 »

 
(10 versions intermédiaires par 6 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
 +
= Communication =
 +
Cette semaine nous avons mis en place un fond noir et des éclairage pour prendre de belles photos uniformes.
 +
Nous comptons nous en servir pour avoir un trombinoscope digne de ce nom sur le site et les réseaux.
 +
 
= Robot 1 =
 
= Robot 1 =
 
3ème session: Conception du système :  
 
3ème session: Conception du système :  
Ligne 6 : Ligne 10 :
  
 
= Robot 2 =
 
= Robot 2 =
 +
On a déterminé pour cette séances tous les composants nécessaires : deux drivers de stepper motors A4988 . On utilise ces drivers car ils sont simples à programmer : 1 signal HAUT dans le pin STEP du driver va ordonner au stepper de faire 1 PAS . On s'est aidé du guide de la chaîne Youtube "How to Mechatronics" pour le branchement et le codage du driver.
 +
Nous avons ensuite tenté de faire tourner un moteur à l'aide d'une carte Arduino. Nous avons réussi. Il faudrait désormais retranscrire le code sur une STM32 avec CubeIDE.
 +
 +
La modélisation 3D sur Solidworks du robot 2 se poursuit.
 +
 +
Pour la prochaine séance, on continuera de faire fonctionner un moteur, mais sur une STM32-nucleo-f401re . On réfléchira également à la conception d'un shield pour un branchement plus permanent et fiable.
  
 
= Lidar =
 
= Lidar =
Ligne 11 : Ligne 21 :
  
 
= Vitrine + Statuette =
 
= Vitrine + Statuette =
 +
 +
Nous avons réfléchi au système de detection de la statuette est allons tester le détecteur ultrason. Nous avons reçu le bandeau de led adressable, il reste donc à tester le système et à trouver la bonne alimentation.
  
 
= Code STM32 / Raspberry / Superviseur =
 
= Code STM32 / Raspberry / Superviseur =
Ligne 21 : Ligne 33 :
  
 
Raspberry :
 
Raspberry :
* reconnection automatique lors de la perte de la connection depuis le superviseur
+
* reconnexion automatique lors de la perte de la connexion depuis le superviseur
* camera: adapter le code et faire une fonction qui renvoie la valeur du code aruco
+
* caméra: adapter le code et faire une fonction qui renvoie la valeur du code aruco
* camera: possibilité de lire plusieurs code aruco en meme temps (renvoyé dans une liste)
+
* caméra: possibilité de lire plusieurs codes aruco en même temps (renvoyé dans une liste)
* camera: faire une fonction qui détermine le type d'objet en fonction du code aruco (amis, ennemis, hexagone, etc)
+
* caméra: faire une fonction qui détermine le type d'objet en fonction du code aruco (amis, ennemis, hexagone, etc)
 
* transformer une liste de points en trajectoire
 
* transformer une liste de points en trajectoire
 
* faire un protocole de communication raspi<->superviseur
 
* faire un protocole de communication raspi<->superviseur
Ligne 31 : Ligne 43 :
 
* possibilité de créer une trajectoire sur l'UI
 
* possibilité de créer une trajectoire sur l'UI
 
* possibilité de tester la trajectoire sur le robot à distance
 
* possibilité de tester la trajectoire sur le robot à distance
* exporter la trajectoire créé
+
* exporter la série d'objectifs créée
* importer une trajectoire
+
* importer une série d'objectifs
  
= Terrain de jeux =
+
= Balise =
 +
Pour le fonctionnement des balises, nous avons déterminé un mode de fonctionnement avec une balise "chef d'orchestre" qui va diriger les autres balises.
  
= Balise =
+
La mesure du temps se fait avec de l'ultrason, et la communication entre les balises se fait avec des modules RF. La vitesse de transmission des modules RF étant très grande devant la vitesse du son, on considère que les messages transmis par RF sont instantanés. Cependant, on prendra en compte le temps de traitement du message.
 +
 
 +
[[Fichier:Schéma Balises.jpg|vignette|droite|Schéma provisoire de la disposition des balises ]]
 +
Dans ce mode de fonctionnement, nous avons :
 +
 
 +
* 3 balises émettrices d'ultrasons, notés T1 à T3, T1 sera le "chef d'orchestre"
 +
 
 +
* 4 balises réceptrices d'ultrasons, notés R1 à R4
 +
 
 +
 
 +
Dans la théorie, une séquence s'organise de la façon suivante :
 +
 
 +
* La balise T1 transmet le message "T1 envoie" (message arbitraire), puis envoie un signal ultrason. Les balises réceptrices mesurent le temps entre la réception du message et la réception du signal ultrason.
 +
 
 +
* Temps de pause (à déterminer)
 +
 
 +
* La balise T1 transmet le message "T2 envoie" (message arbitraire), la balise 2 reçois ce message et envoie un signal ultrason.
 +
 
 +
* Temps de pause (à déterminer)
 +
 
 +
* La balise T1 transmet le message "T3 envoie" (message arbitraire), la balise 3 reçois ce message et envoie un signal ultrason.
 +
 
 +
* Temps de pause (à déterminer) Pendant ce temps, les balises réceptrices effectuent chacune la triangulation de leurs positions
 +
 
 +
* La balise T1 transmet le message "R1 résultat" (message arbitraire)
 +
 
 +
* La balise R1 transmet sa position, la balise R2 reçoit et enregistre, temps de pause
 +
 
 +
* La balise R2 transmet sa position, la balise R1 reçoit et enregistre, temps de pause
 +
 
 +
* La balise R3 transmet sa position, les balises R1 et R2 reçoivent et enregistrent, temps de pause
 +
 
 +
* La balise R4 transmet sa position, les balises R1 et R2 reçoivent et enregistrent, temps de pause
 +
 
 +
* Temps de pause final, puis la séquence recommence
 +
 
 +
 
 +
Nous avons essayé le code avec Mbed dans un premier temps, mais sans succès.

Version actuelle datée du 15 janvier 2022 à 03:16

Communication

Cette semaine nous avons mis en place un fond noir et des éclairage pour prendre de belles photos uniformes. Nous comptons nous en servir pour avoir un trombinoscope digne de ce nom sur le site et les réseaux.

Robot 1

3ème session: Conception du système :

- Avancement sur le design 3D , -Nous avons pu trouver une crémaillère, et nous avons réussi à coder sur une STM32 le code pour Faire tourner la crémaillère dans les 2 sens,

Robot 2

On a déterminé pour cette séances tous les composants nécessaires : deux drivers de stepper motors A4988 . On utilise ces drivers car ils sont simples à programmer : 1 signal HAUT dans le pin STEP du driver va ordonner au stepper de faire 1 PAS . On s'est aidé du guide de la chaîne Youtube "How to Mechatronics" pour le branchement et le codage du driver. Nous avons ensuite tenté de faire tourner un moteur à l'aide d'une carte Arduino. Nous avons réussi. Il faudrait désormais retranscrire le code sur une STM32 avec CubeIDE.

La modélisation 3D sur Solidworks du robot 2 se poursuit.

Pour la prochaine séance, on continuera de faire fonctionner un moteur, mais sur une STM32-nucleo-f401re . On réfléchira également à la conception d'un shield pour un branchement plus permanent et fiable.

Lidar

Nous sommes partis sur l'utilisation d'une autre libraire. Toutefois, nous avons rencontré des problèmes pour l'installation de ceux-ci.

Vitrine + Statuette

Nous avons réfléchi au système de detection de la statuette est allons tester le détecteur ultrason. Nous avons reçu le bandeau de led adressable, il reste donc à tester le système et à trouver la bonne alimentation.

Code STM32 / Raspberry / Superviseur

Nous avons fait une liste des taches à effectuer sur les différents codes utilisés sur nos robots. Nous avons commencé à améliorer le code du stm32.

Pour le STM32 :

  • refaire le code en bien plus propre et organisé
  • retester chaque fonction de chaque lib

Raspberry :

  • reconnexion automatique lors de la perte de la connexion depuis le superviseur
  • caméra: adapter le code et faire une fonction qui renvoie la valeur du code aruco
  • caméra: possibilité de lire plusieurs codes aruco en même temps (renvoyé dans une liste)
  • caméra: faire une fonction qui détermine le type d'objet en fonction du code aruco (amis, ennemis, hexagone, etc)
  • transformer une liste de points en trajectoire
  • faire un protocole de communication raspi<->superviseur

Superviseur :

  • possibilité de créer une trajectoire sur l'UI
  • possibilité de tester la trajectoire sur le robot à distance
  • exporter la série d'objectifs créée
  • importer une série d'objectifs

Balise

Pour le fonctionnement des balises, nous avons déterminé un mode de fonctionnement avec une balise "chef d'orchestre" qui va diriger les autres balises.

La mesure du temps se fait avec de l'ultrason, et la communication entre les balises se fait avec des modules RF. La vitesse de transmission des modules RF étant très grande devant la vitesse du son, on considère que les messages transmis par RF sont instantanés. Cependant, on prendra en compte le temps de traitement du message.

 
Schéma provisoire de la disposition des balises

Dans ce mode de fonctionnement, nous avons :

  • 3 balises émettrices d'ultrasons, notés T1 à T3, T1 sera le "chef d'orchestre"
  • 4 balises réceptrices d'ultrasons, notés R1 à R4


Dans la théorie, une séquence s'organise de la façon suivante :

  • La balise T1 transmet le message "T1 envoie" (message arbitraire), puis envoie un signal ultrason. Les balises réceptrices mesurent le temps entre la réception du message et la réception du signal ultrason.
  • Temps de pause (à déterminer)
  • La balise T1 transmet le message "T2 envoie" (message arbitraire), la balise 2 reçois ce message et envoie un signal ultrason.
  • Temps de pause (à déterminer)
  • La balise T1 transmet le message "T3 envoie" (message arbitraire), la balise 3 reçois ce message et envoie un signal ultrason.
  • Temps de pause (à déterminer) Pendant ce temps, les balises réceptrices effectuent chacune la triangulation de leurs positions
  • La balise T1 transmet le message "R1 résultat" (message arbitraire)
  • La balise R1 transmet sa position, la balise R2 reçoit et enregistre, temps de pause
  • La balise R2 transmet sa position, la balise R1 reçoit et enregistre, temps de pause
  • La balise R3 transmet sa position, les balises R1 et R2 reçoivent et enregistrent, temps de pause
  • La balise R4 transmet sa position, les balises R1 et R2 reçoivent et enregistrent, temps de pause
  • Temps de pause final, puis la séquence recommence


Nous avons essayé le code avec Mbed dans un premier temps, mais sans succès.