--- title: "Réunion Info 04/04/20" date: "04-04-2020" link: "https://hackmd.io/5XTmuUIcQP61usihxr1xZg" tags: EVOLUTEK --- # Réunion Info du 04/04/20 ## Ordre du jour * Architecture actuelle * Features intéressantes * Tâches à faire ## Architecture actuelle [Diagram](https://drive.google.com/file/d/1dup8jsQc7rkgrPkFdyxiAK-8poYo0ik4/view?usp=sharing) * Chaque service utilise un thread pour gérer les requêtes et les events cellaserv ### Trajman * Un thread lit les messages de la carte moteur de la carte moteur * Une queue sert à communiquer entre les deux threads * Un thread pour l'évitement * Lit la telemétrie du robot * Un thread pour le mat de balise ### AX12 * Un service par AX12 ### Actuators * Un thread s'occuper de faire les actions stockées dans la queue * Le thread cellaserv push un tupple d'action * Le second thread lance une action * Il publie un event une fois que c'est fini avec un le retour de l'action * une fonction stop pour arrêter les actuators avec un Event (il doit aussi arrêter le robot) ![Fonctionnement de Actuators](https://i.imgur.com/lLgCyoO.png) ### AI * Un thread dédié à la machine à état * Un timer qui permet de changer d'objectif * On stop les actuators * On arrête le robot * On indique qu'on switch en critique avec un event * et on retourne en selecting * Si le dernier objectif est fait * On désactive l'objectif crirtique * Dans making, on doit vérifier si la fin du match a eu lieu ou si on doit changer d'objectif * Pour la fin du match * On stop les actuators * On arrête le robot * Indiquer la fin de match avec un event ## MAP * Un thread s'occupe de merge les scans des capteurs * Un thread par capteur qui fait les requêtes de scan * Gestion du chemin * On calcul le chemin au début du mouvement * On vérifie à intervalle régulier si le chemin est toujours bon * On recalcule en cas d'évitement ou de chemin plus valable ## SIMULATION * Service match comme interface * Un faux robot par robot (PAL, PMI, Oppenents) * Un faux AX * Un faux GPIO * Une interface de contrôle ## Features intéressantes * Interface de contrôle du robot * La carte moteur indique si on atteint notre destination * Gestion auto des gobelets (stockage et dépose) * Need to make a fake GPIO (remplacer la lib de raspy) * Une interface de contrôle en simulation pour les gpios, mais aussi les robots * Un faux TIM * Renvoyer les points des robots adverses * Ratraying pour générer les scans des capteurs * Etat de l'IA, Chemin de l'IA dans le match ## Répartition des tâches * Ajouter La balise sur trajman : Corentin * Actuators : Jordan * AI : Corentin, Maxime * Interface de l'IA : Yann * Map : Ziane, Yann * Simulation : Tancrède, Maxime, Corentin, Yann * Tuto : Corentin, Tancrède * Clean de match : Yann