Projet 5A 2020 2021/Tuto utilisation et modification
Afin de vous aider à mieux comprendre la façon dont nous avons réalisé notre projet, nous avons rédigé ce document tutoriel. Cela devrait vous permettre de réussir à reprendre les différentes étapes du projet si nécessaire. TUTO EN COURS DE REDACTION
Projet 1 : Carte d'alimentation
Soudure de la carte du robot 2
Projet 2 : Écran de contrôle
Procédure générale
Pour pouvoir utiliser notre application vous devez :
- Télécharger les applis et docs nécessaires + l'application Polybot (voir section ci-dessous)
- Câbler le module sur la STM32 (voir section ci-dessous)
- Connecter le téléphone/tablette au module Bluetooth dans les paramètres généraux
- Lancer l'application (le robot doit être allumé)
- Choisir les données qu'on souhaite afficher, si on souhaite stocker les données ou pas et valider
- Cliquer sur "choisir périphérique" et sélectionner le module correspondant puis l'affichage devrait se lancer
- Si on a choisit de stocker les données et qu'on veut aller les regarder on va dans l'application Cx Explorateur de Fichier, on clique sur AppInventor/asset et on ouvre le fichier stockage_data_robot. On peut aussi brancher le téléphone/tablette sur un ordinateur pour aller ouvrir le fichier directement sur l'ordinateur et traiter les données ensuite par exemple. (voir section ci-dessous)
A NOTER : il s'agit d'une application uniquement disponible pour les téléphones et tablettes Android.
Application Polybot
Télécharger l'application
- Application Android uniquement
- Installation de Cx Explorateur de fichier
- Télécharger le doc AppInventor à ce lien : (créer sur le drive polybot)
Comprendre et/ou modifier le code de l'application
Affichage des données
Stockage des données
Explication du code et lien vers le Git
Code STMCubeIDE
Pour réaliser la communication UART entre la STM32 et notre module Bluetooth, on commence par brancher les câbles comme mentionnées un peu plus haut. On doit ensuite configurer notre projet sur STMCubeIDE. Pour cela il suffit de sélectionner l'UART, de l'activer puis de régler certains paramètres. On pourra ainsi modifier le baudrate, la structure de la trame (nombre de bit de stop, nombre de bits de données...), activer ou non les interruptions... Dans notre cas, on choisira le mode Asynchrone pour l'UART, un baudrate de 9600 et on activera les interruptions.
Une fois ces réglages réalisés, notre communication est opérationnelle. On pourra ainsi utiliser différentes fonctions dans le code de la STM32 pour envoyer les données sur les pins de l'UART4. On utilisera par exemple les fonctions :
HAL_UART_Transmit_IT(&huart4, (uint8_t*) txt_a_envoyer,sizeof(txt_a_envoyer)); HAL_Delay(temps) qu'on remplacera par osDelay(temps) avec l'utilisation de FreeRTOS
La fonction HAL_UART_Transmit permet de transmettre une chaine de caractère sur l'UART souhaité. Les fonctions HAL_Delay et osDelay permettent d'ajouter un temps d'attente entre les différents Transmit afin de laisser suffisamment de temps au microcontrôleur pour envoyer les données.
On pourra ainsi envoyer des données et aller les récupérer via un terminal (connecté au module Bluetooth) ou a une application.
Récupérer du code général
Utilisation des modules Bluetooth HC-06
Changer le nom, le mot de passe, ou le baudrate des modules HC-06
Pour modifier le nom, le mot de passe ou le baudrate des modules Bluetooth vous aurez besoin d'une carte Arduino Leonardo.
Suivez ensuite les consignes expliquées sur ce lien : http://idehack.com/blog/configurer-le-module-bluetooth-hc-06/
Pour le moment, les 2 modules se nomment : Polybot_Robot1 et Polybot_Robot2; leur mot de passe est sur le Drive Polybot; et le baudrate est a 115200.
Pour changer le baudrate la commande a taper sur le moniteur série d'Arduino IDE est : AT+BAUDx
Ex: si vous voulez changer le baudrate en 9600 tapez AT+BAUD4. Le module devrait répondre OK9600. (Note: 1 pour 1200, 2 pour 2400, 3 pour 4800, 4 pour 9600, 5 pour 19200, 6 pour 38400, 7 pour 57600, 8 pour 115200).
Câblage des modules sur la STM32
Concernant le montage du montage sur la STM32, il suffit de brancher les 4 pins du module sur la STM32 de la façon suivante :
Pin HC-06 | Pin STM32 |
---|---|
VCC | 5V |
GND | GND |
RXD | PA0 (UART4) |
TXD | PA1 (UART4) |
Traiter les données enregistrées - Tracer la trajectoire du robot
- Ouvrir le fichier "stockage_data_robot.csv" qui se trouve dans le dossier AppInventor/asset
- Sélectionner le tableau en entier
- Aller sur "Données" puis cliquer sur "Convertir" :
->délimité, virgule, identif de texte ", standart TERMINER METTRE UN SCREEN DES REGLAGES
- Sélection de pos x et pos y
- Insertion nuage de point
ET VOILA ON OBTIENT NOTRE TRAJECTOIRE
REMARQUE : Vous ne pourrez pas enregistrer le fichier, il faudra l'enregistrer sous un autre nom et un autre format.