Home

SCOR : Sport Collectif pour Robots

image

Contents

1. SCOR PROJET SPECIFIQUE 5IF STRATEGIE Ce module impl mente les strat gies pr alablement d finies par nos soins La p riode d valuation des strat gies est li e a la cadence d arriv e des messages du module de vision A l issue de l valuation si un nouvel ordre a t chu le module envoie un message de type DatalA CONTROLEROBOT Ce module est synchronis sur la r ception des ordres du module de strat gie Il assure le contr le des robots s 7 1 LA envoi d ordre ventuellement asservissement Il est associ a un module passif nomm Communication charg d abstraire la communication de bas niveau liaison s rie A GESTION DU PARALLELISME ET DE L ASYNCHRONISME Nous avons d cid d encapsuler la gestion des fils d ex cution et de l asynchronisme au sein m me de nos objets On parle ainsi d objets actifs Cela permet de limiter les d pendances et autorise ainsi le d veloppeur en charge du module opter pour l impl mentation de son choix D autre part cela permet d obtenir un code plus clair du moins a l ext rieur des modules Par ailleurs tous les modules du projet se basent sur la librairie POSIX de bas niveau pthread Il est a noter que cette derni re est portable sous Windows du moins en grande partie V DESCRIPTION DETAILLEE DES MODULES Dans ce paragraphe il s agira de pr senter nos choix de conception et d impl menta
2. 2011 2012 Maxime SWINNEN Loic THOUVENIN JENNER CdP Kevin VANDEL Basile WOLFROM 10 03 2012 SCOR PROJET SPECIFIQUE 5IF TABLE DES MATIERES Mee UWE OCT NW are a a es 2 Pe WOT GU AOCOM NE er aan ne an mate en a a D EEE 2 B COmMekte du proje een ne nnn ero eS ee ee ee ee eee ee errr 2 NS e E AE E A A A EAA A 2 II Mise en Place del GhvirOnne Ment sc sensccccrsscssossnndeamuandceadonentactdaaednasaaanitnndcgadoness ne eluaddsaadensatnaiceadnnete nes entec dieu 3 Be D DIOI M NEC DEDI Re ae en eo bed anna en nee dance ae te ea dei ne inde 3 B D pendances d O00 CU a ea an dus Vis rena EO a eee he on an nn 3 C Param trage du PFOPlaMMe cccccsssccccseccccesecccensccccenececeusececeecceseecessusececeueceeseecessuseeeeeuecessunecessueeeesagess 3 III Marre UTS AEC U oea E E A A E 4 IV PO LUS LUS AA der aiea I Oa E E E E E EA EAE E E 4 A Comm nication Ik MO CUNO een ee eee at ee do 4 SE OU diana E E tuenisebechesiestienatnans 5 A Gestion du parall lisme et de l asynchronisme sise 6 V Description d taill e des modules cccccecccccssscccceseccceesececeeececseececeusececeueceseuueceseuneceseueceeseuecessuecetsueeeesenees 6 A Module VISIOMiicnzteciuced sans isesianztnadecengeancocewead iuatacesdenesaacasecimenssucustedonatauns leastnadncouacealedeavaiuneseces leoubeelassaowesneceis 6 Be COUN Sr 7 Co Module Controle ROBOT aati D a ae ee eee ee ree 9 VI COS OR ss cece taeda E catacieseaatacic
3. PC sous Linux pour ex cuter son programme une cam ra permettant de suivre l activit sur le terrain et deux robots Khepera II Les principaux domaines de comp tences mis en jeu dans le cadre de ce projet sont l analyse d image localisation des robots et de la balle l informatique embarqu e contr le des robots et enfin l intelligence artificielle strat gies de jeu Ce dernier point est toutefois nuancer puisqu a l heure actuelle aucun groupe n a r ellement impl ment avec succ s un algorithme de ce type C OBJECTIFS Apr s une tude rapide des travaux r alis s par les quipes des ann es pr c dentes nous avons constat que la plupart des domaines fonctionnels taient plut t bien maitris s Par contre nous avons t d sagr ablement surpris par la mauvaise qualit et les mauvaises performances globales des applications Il a donc t d cid que notre objectif principal serait d assainir l existant ce qui a n cessit une r criture complete de l application Toutefois nous avons t ch de capitaliser au mieux sur l existant Il est galement noter que cette recherche de qualit nous a conduits rationaliser les d pendances de notre programme limitation des librairies utilis es D autre part l issue des r unions avec les autres concurrents il a t d cid d impl menter un nouveau mode de tir en rotation pour les robots dans le but de permettre d augmenter la puissanc
4. envoi et r ception de messages gestion des cas d erreurs Am lioration de la trajectoire des robots faire en sorte que le robot atteigne de mani re la plus pr cise possible la destination objectif du premier coup Cela pourrait se faire par asservissement Gestion des ordres de la Strat gie simplement prendre en compte les ordres d attaque donn s par la Strat gie attaque gauche et attaque droit afin de d terminer le sens de rotation pour le tir au lieu le recalculer dans le thread de contrdle Structure du code les m thodes tourner tirer etc sont cens es tre priv es Elles ont t mises en publique simplement pour faciliter les tests DOCUMENTATION TECHNIQUE P 11 12 SCOR PROJET SPECIFIQUE SIF VI CONCLUSION En l tat nous avons partiellement atteint les objectifs qui nous nous tions fix s Paradoxalement notre d marche de rationalisation nous a conduits un code qui manque parfois de lisibilit de par sa densit Nous y aurions gagn r aliser un d coupage plus fin par exemple cr ation d un module d interface graphique distinct du module de traitement vid o D autre part la qualit du code interne aux modules n est pas toujours conforme ce que nous nous tions fix s en d but de projet Toutefois tous nos efforts n ont pas t vains et notre objectif de performance a t atteint avec brio L application est aujourd hui r active et sa c
5. f rer au paragraphe D pendances du projet si n cessaire B DEPENDANCES DU PROJET Liste des d pendances du projet et conseils d installation OpenCV 2 3 1 Open Computer Vision est une biblioth que graphique libre initialement d velopp e par Intel sp cialis e dans le traitement d images en temps r el Installation t l charger l archive Linux et suivre les instructions d installation sur le site http opencv willowgarage com wiki Il est noter que la phase de configuration peut tre r alis e en mode graphique avec l outil cmake gui Il est primordial d activer le support de GTK 2 x pour pouvoir utiliser le module highgui fen tres OpenCV D autre part bien penser a cette tape a changer le r pertoire d installation usr au lieu de usr local log4cplus 1 0 4 biblioth que de log Installation t l charger l archive Linux sur Sourceforge http sourceforge net projects log4cplus et configurer avec CMake via cmake en ligne de commande ou cmake gui en interface graphique Encore une fois bien penser a changer le r pertoire d installation usr au lieu de usr local Autres librairies syst mes utilis es int gr es par d faut l OS pthread gestion des threads la norme POSIX getopt parser les param tres en ligne de commande Compl ment CMake permet de g n rer des makefiles Pour cela sous l interface graphique cmake gui il faut tout d abord s lectionn
6. la position atteindre pour r aliser l objectif et accessoirement un vecteur d orientation qui n a pas t utilis mais qui pourrait utile dans le futur pour indiquer la position dans laquelle le robot doit se trouver lorsqu il atteint son objectif INITIALISATION DE L ANALYSE Le module de strat gie est cadenc par la r ception des messages du module de Vision La premi re action r alis e est le calcul de la vitesse de la balle Ensuite le module teste si les informations re ues sont valides ou correspondent des aberrations dues l incertitude de d tection du module de Vision Ces incertitudes peuvent concerner la position de la balle un instant t mauvaise d tection ou des incoh rences de trajectoire Pour d tecter une nouvelle trajectoire il faudra donc que plusieurs messages cons cutifs traduisent ce changement de trajectoire Ce nombre de messages cons cutifs est param trable EVALUATION DE LA STRATEGIE Il existe actuellement 3 strat gies Attaque La strat gie d attaque est d clench e lorsque la balle se trouve dans notre moiti de terrain et qu elle ne se dirige pas vers nos buts Le robot situ dans le m me quart de terrain que la balle re oit un ordre d attaque avec une position proche de celle ci lui permettant de frapper par rotation sur lui m me et l autre robot re oit un ordre de replacement d fensif avec la position correspondante D fense Cette strat gie est lanc
7. ONNEES Le diagramme ci dessous pr sente l architecture de notre programme du point de vue des changes de donn es entre les diff rents modules fonctionnels VideoSource MsgQueue lt DataVision gt MsgQueue lt DataVision gt Strategie MsgQueue lt DatalA gt ControleRobot Communication Figure 1 Diagramme de flot de donn es Les trois modules principaux de l application sont VideoSource Strategie et ControleRobot qui sont des objets C Il est noter que ces modules sont r partis au sein de paquetages distincts dans les sources de mani re les rendre ais ment identifiables VIDEOSOURCE Ce module est d di l analyse d image bas e sur la librairie OpenCV2 Il traite l information issue de la cam ra une fr quence param trable de mani re identifier les positions et orientations des robots et la position de la balle La communication des informations est r alis e par l envoi de messages de type DataVision Il est noter que l ouverture du flux vid o est g r e en interne Chacun des modules suivants assure la prise en charge d un unique robot Par cons quent l ex cution ces objets et les files associ es sont instanci s en double On rappelle que la coh rence du routage des informations entre les modules est assur e par file de message DOCUMENTATION TECHNIQUE P 5 12 A
8. e des tirs et donc la vitesse de la balle DOCUMENTATION TECHNIQUE P 2 12 A SCOR PROJET SPECIFIQUE SIF II MISE EN PLACE DE L ENVIRONNEMENT A DEPLOIEMENT DU PROJET L archive fournie contient les sources du projet SCOR et les fichiers de projet Eclipse Il est a noter que le projet Eclipse a t configur r pertoires include lib en consid rant que les d pendances ont t install es dans le r pertoire usr et non pas usr local comme c est le cas par d faut Installer dans ce r pertoire vite toute configuration suppl mentaire relative l dition des liens dynamique i e l ex cution Les deux PC de la salle sont sous Ubuntu Linux et ont t configur s correctement cette ann e Normalement il vous suffit d importer le projet et de compiler pour obtenir un ex cutable Pour ex cuter ce dernier depuis Eclipse il vous faudra cr er une configuration de lancement personnalis e Run configuration Dans l onglet Main il faut renseigner le chemin vers l ex cutable dans le champ C C application Puis dans l onglet Arguments copier par exemple la ligne suivante comPort1 dev ttyUSBO comPort2 dev ttyUSB1 LOGLVL DEBUG les deux premiers param tres tant obligatoires cf manuel Dans le cas ou les postes ont t r install s entre temps il vous faudra proc der la r installation des d pendances librairies Pour cela vous pouvez vous r
9. e lorsque la balle se dirige vers nos buts avec une vitesse sup rieure un certain seuil param trable Les 2 robots re oivent un ordre de d fense avec la position a laquelle ils doivent se rendre Cette position correspond a la projection orthogonale de leur position sur la trajectoire de la balle Replacement Cette strat gie intervient lorsque les robots ne sont ni en phase offensive ni en phase d fensive Chaque robot recoit une position pr d finie Ces positions sont recul es dans notre moiti de terrain et les 2 robots sont toujours positionn s en diagonale pour couper la trajectoire d une ventuelle attaque Le robot qui est l g rement avanc est celui qui se trouve dans la m me moiti de terrain dans la largeur que la balle DOCUMENTATION TECHNIQUE P 8 12 SCOR PROJET SPECIFIQUE SIF ENVOI DES MESSAGES Pour viter d envoyer des messages incoh rents ou trop fr quemment aux robots sujet a plantage plusieurs v rifications sont effectu es Dans un premier temps on v rifie que l objectif envoy ne se situe pas dans l autre moiti ou l autre quart de terrain ou encore en dehors des limites Dans ce cas le robot concern ne fait rien et attend le prochain ordre Il faut remarquer que les limites effectives de d placement des robots dans le terrain sont plus faibles que les dimensions r elles de celui ci pour viter des blocages dans les bordures De plus on v rifie pour chaque robot qu un nou
10. ectif de ce module est comme son nom l indique de contr ler les robots c est dire de faire en sorte que les robots ex cutent correctement les ordres qu on leur donne Ce module est en quelques sortes une interface entre le module de Strat gie et les robots 2 FONCTIONNEMENT ARCHITECTURE Le module de contr le se divise en deux classes la classe Communication et la classe ControleRobot La classe ControleRobot poss de en attribut un objet Communication et un objet ControleRobot est instanci pour chaque robot cf le main Cette classe impl mente 3 threads diff rents le thread principal de DOCUMENTATION TECHNIQUE P 9 12 w S SCOR PROJET SPECIFIQUE 5IF contr le qui boucle sur la file de message des ordres issus du module de strat gie le thread mettant jour la position courante du robot qui boucle sur la file de message des positions aliment e par le module de vision et le thread d asservissement qui n est plus utilis mais qui peut tre ressuscit facilement La classe Communication impl mente les m thodes de bas niveau permettant l initialisation d un port de communication ainsi que l envoi et la r ception de messages du PC vers les robots Elle impl mente aussi les m thodes de plus haut niveau correspondant aux commandes de base du robot d finir sa vitesse remettre z ro son compteur de position des roues etc La classe ControleRob
11. er le dossier des sources de la librairie et un dossier de destination pour les makefiles Ensuite il s agit de faire la configuration proprement dite Enfin cliquer sur Configurer puis G n rer Il ne reste plus qu a se placer dans le dossier de destination et appeler make pour compiler puis make install pour copier les binaires dans le dossier d installation oe PARAMETRAGE DU PROGRAMME De mani re a simplifier acc s aux param tres principaux de l application nous avons d cid de les regrouper au sein d un header de configuration config h Il peut tre int ressant de parcourir rapidement ce fichier apres avoir pris connaissance de ce document de mani re a avoir une id e g n rale des options de DOCUMENTATION TECHNIQUE P 3 12 t 1 SCOR PROJET SPECIFIQUE 5IF configurations offertes par le programme Les d finitions tant des macros leur modification ne prendra effet qu apres recompilation Hl MANUEL UTILISATEUR LIGNE DE COMMANDE SCOR comPort1 COMPORT1 comPort2 COMPORT2 option OPTIONS help h affiche ce message comPorti COMPORTI COMPORT1 fichier device du port COM robot 1 comPort1 COMPORT2 COMPORT2 fichier device du port COM robot 2 Gestion des niveaux de log arg TRACE DEBUG INFO WARN ERROR FATAL LOGLVL l arg sp cifie le niveau de log global LOGLVL_VISION arg niveau de log du module Vision LOGLVL_lA arg niveau de l
12. obot se fait en deux temps Tout d abord on ordonne au robot de tourner pour qu il se positionne en direction de l objectif Pour gagner du temps on permet au robot de se retrouver soit face DOCUMENTATION TECHNIQUE P 10 12 SCOR PROJET SPECIFIQUE SIF l objectif soit dos l objectif l angle maximal parcourir est alors de 90 au lieu de 180 Ensuite on calcule la distance qui s pare le robot de son objectif et on commande au robot d avancer ou de reculer s il fait dos a l objectif de cette distance Enfin dans le cas particulier du replacement on commande au robot de tourner de mani re tre orient dans la direction indiqu e par la Strat gie ainsi le robot sera mieux positionn pour une ventuelle interception Attaque Le traitement des ordres d attaque se fait en deux tapes principales le positionnement jusqu aux coordonn es indiqu es dans le message d ordre puis le tir Pour viter au maximum les collisions nous avons d compos le positionnement du robot en deux lignes droites selon la longueur puis la largeur du terrain Aussi pour viter que le bras du robot ne touche la balle ou les bords du terrain nous for ons le robot s orienter syst matiquement en marche arri re Astuce pour gagner en pr cision Les d placements des robots tant relativement peu pr cis aussi bien pour tourner que pour avancer nous avons eu l id e de v rifier la fin du replacement d fen
13. og du module IA LOGLVL CONTROL arg niveau de log du module Contr le Robot LOGLVL COM arg niveau de log du module Communication LOGLVL_MAIN arg niveau de log du module principal Remarque la valeur COMPORT 1 2 est de la forme dev ttyUSBX fichier device correspondant au robot X Pour d terminer les valeurs de X il faut lister les fichiers device existants s assurer d abord que les robots sont connect s au PC et que leur alimentation est sous tension On peut faire cela simplement en ex cutant la commande suivante sans les guillemets dans un terminal Is dev ttyUSB IV ARCHITECTURE DE L APPLICATION Comme les quipes de l ann e pr c dentes nous avons fait le choix de r aliser notre application a l aide d un langage orient objet en l occurrence ici C A COMMUNICATION INTER MODULES La communication entre ces modules est r alis e par file de messages Par soucis de flexibilit et m me de portabilit cette file a t impl ment e par nos soins via un Template C et n a donc aucun lien direct avec un quelconque objet syst me Les types de messages chang s sont param trables Il est noter que les files de messages sont galement souvent utilis es comme moyen de synchronisation Elles sont par ailleurs cr es dans le main de l application phase d initialisation DOCUMENTATION TECHNIQUE P 4 12 SCOR PROJET SPECIFIQUE SIF B FLOT DE D
14. onfig h Il est conseill de le faire au moins 10 fois par seconde Les coordonn es sont transmises en centimetre la conversion se fait grace aux mesures de la taille r elle du terrain LONGUEUR_TERRAIN_Y cm de long par LARGEUR_TERRAIN_X cm de large POINTS CLES Le point cl de la vision est la d tection des robots et de la balle Elle se fait gr ce aux couleurs Prenons l exemple de la balle Pour tre d tect e cette derni re doit tre rouge La premi re tape consiste a filtrer l image de fa on ne garder que les pixels rouges La diff rentiation des pixels rouges se fait partir des valeurs des couleurs en RGB Un pixel est consid r comme rouge si sa composante rouge est sup rieure la fois sa composante bleu et sa composante verte auxquelles on ajoute une constante appel e TOLERANCE Une fois l image filtr e r cup r e on cherche le barycentre des points conserv s Ce barycentre correspond la position de la balle Les coordonn es en pixels ainsi obtenues doivent ensuite tre transform es en centim tre pour les autres modules l aide d un produit en croix 13 PROBLEMES RENCONTRES Le principal probl me rencontr dans le module de vision est la difficult r aliser une bonne distinction des couleurs en fonction de l clairage de la pi ce Il est en effet n cessaire de faire varier les tol rances en particulier celle du bleue suivant la nature de l clairage lumi re d
15. onsommation en ressources syst me reste tout fait ma tris e On ne peut que conseiller aux futures quipes de chercher concentrer le meilleur de chaque projet On peut par exemple citer la d tection automatique du terrain innovation int ressante introduite par l quipe d Alexis Fouilhe En effet l volution du projet ne pourra se faire notre sens que par de la capitalisation sur le long terme ainsi que de l innovation sur le plan mat riel DOCUMENTATION TECHNIQUE P 12 12
16. ot s occupe d ex cuter au mieux les ordres donn s par le module de Strat gie via des messages envoy dans une file de message Il existe trois types d ordres replacement d fense et attaque Pour ex cuter ces ordres nous avons d fini trois types de mouvement impl ment dans trois m thodes distinctes d di es tourner avancer et tirer MOUVEMENTS DU ROBOT Il existe deux types de d placements pour les robots Khepera II le d placement par vitesse et le d placement par position Le d placement par vitesse consiste simplement affecter une vitesse d finie aux deux roues du robot on constate que le robot d passe difficilement la barre des 30 Le d placement par position consiste affecter aux roues une position cible Cette position est donn e en pulses si l on affecte 1 pulse une roue elle tournera de mani re parcourir 0 08 mm Il faut donc voir cette position comme un nombre de tours de roues Il est aussi important de savoir que le robot garde en m moire un compteur du nombre de pulses parcourus par les roues Pour plus de d tails vous pouvez vous r f rer au User manual 3 1 5 Motors and motor control p 10 List of Available Commands p 47 commandes C et D Tourner Pour tourner nous utilisons le d placement par position Gr ce de multiples mesures nous avons pu calculer un coefficient permettant de convertir langle de rotation souhait en pulses Cela nous permet de fai
17. re tourner le robot tr s pr cis ment les erreurs sur la rotation venant principalement du module de vision en remettant z ro son compteur puis en lui commandant d atteindre la position de roue d finie les valeurs des positions des deux roues tant videmment oppos es pour que le robot tourne sur place Avancer Ici encore nous utilisons le d placement par position En fait nous commandons au robot d avancer en marche avant ou marche arri re sur une distance d finie Ainsi nous avons juste remettre le compteur du robot z ro et convertir la distance souhait e en pulses les valeurs des positions des deux roues sont dans ce cas identique pour que le robot aille tout droit Tirer Cette ann e nous nous sommes mis d accord pour ajouter aux robots un bras en plastique serre fil leur permettant de tirer en tournant sur place Ainsi la puissance du tir est d cupl e par rapport a une simple charge en marche avant Pour le tir nous utilisons le d placement par vitesse On commande au robot de tourner sur place grande vitesse pendant une dur e pr d finie Pass ce d lai on lui commande de s arr ter STRATEGIES DE DEPLACEMENT D fense et replacement Les traitements des ordres de replacement et de d fense sont similaires il s agit de d placer le robot jusqu un point de destination dont les coordonn es sont sp cifi es dans le message re u du module de strat gie Le d placement du r
18. sif et du placement en position d attaque si le robot est proche ou pas de son objectif Dans le cas contraire on r ins re l ordre courant dans la file de message ainsi le robot r effectuera le d placement et tant donn qu il est normalement plus proche de l objectif il l atteint plus facilement Cette m thode empirique fonctionne bien mais il serait quand m me pr f rable d am liorer la pr cision des d placements cf Am liorations possibles d autant plus que cela entra ne un temps de d placement bien plus long ce qui peut tre pr judiciable surtout en d fense 3 PROBLEMES RENCONTRES Les robots leur comportement n a pas l air d une rationalit parfaite En effet il arrive parfois qu apr s un tir le robot devienne incontr lable Cela serait d au fait que la puissance demand e par les moteurs lors du tir serait trop grande engendrant une sous alimentation du processeur du Khepera Il Une solution serait d optimiser le c blage pertes de puissance importante ou de diminuer la vitesse demand e lors des tirs fix e 40 une vitesse de 30 suffirait peut tre Le d placement par vitesse manque galement cruellement de pr cision De fa on profiter au mieux du projet nous vous conseillons de consid rer les probl mes mat riels au plus t t et de trouver moyens d y rem dier 4 AMELIORATIONS POSSIBLES Dans la communication prendre en compte la valeur retourn e par les m thodes d
19. tingats canner ema natiedise E 12 DOCUMENTATION TECHNIQUE P 1 12 SCOR PROJET SPECIFIQUE SIF I INTRODUCTION A OBJET DU DOCUMENT Ce rapport d crit dans les grandes lignes le fonctionnement de l application cr e a l occasion du projet SCOR Dans un premier temps on pr sentera le contexte du projet et les objectifs que nous nous sommes fix s Ensuite on pr sentera la mise en place de l environnement de d veloppement configuration d pendances et le manuel d utilisation de notre application Dans la suite du document nous d velopperons nos choix de conception et d impl mentation On commencera par une pr sentation de l architecture du programme ce qui permettra au lecteur d identifier les diff rents modules fonctionnels du programme Ensuite on d taillera les points cl s de la mise en uvre de chacun de ces modules et on dressera un bilan de d veloppement probl mes rencontr s am liorations possibles B CONTEXTE DU PROJET Le projet SCOR Sport COllectif pour Robots est un projet sp cifique de cinqui me ann e du d partement informatique de l INSA de Lyon Il vise permettre aux tudiants de s adonner un projet technique pluridisciplinaire Concr tement il s agit de r aliser un programme permettant de contr ler une quipe de deux robots de type Khepera II le but tant de se mesurer au programme r alis par un groupe tudiant adverse Pour ce faire chaque quipe acc s un
20. tion pour chacun des modules fonctionnels points cl s de mise en ceuvre On dressera galement un bilan de d veloppement dans lequel on exposera les probl mes rencontr s et les axes d am liorations qui nous semblent pertinents A MODULE VISION 11 OBJECTIFS Ce module a pour objectif de d tecter la position des robots et de la balle informations qu il transmet ensuite aux modules de Strat gie et de Contr le 2 FONCTIONNEMENT Ce module maintient son propre thread Lors de l initialisation il lance une fen tre affichant l image obtenue par la Webcam permettant l utilisateur de cliquer sur les 4 coins du terrain puis d tecte le robot gauche et le robot droite Les op rations effectu es au sein du thread peuvent se r sumer ainsi m R cup ration de l image provenant de la webcam Traitement de l image pour ne garder que le terrain D tection de la balle sur le terrain Objet dont les m thodes sont toutes synchrones DOCUMENTATION TECHNIQUE P 6 12 f lt x AN SCOR PROJET SPECIFIQUE 5IF D tection des robots sur le terrain Envoi des coordonn es des robots et de la balle via les files de messages Affichage de l image du terrain avec les positions des robots et de la balle ainsi que les positions objectifs des robots si le bool en FluxVideo est vrai Toutes ses tapes sont r alis es a une fr quence temporelle r glable moyennant une recompilation cf fichier c
21. u jour n ons et m me parfois de l heure de la journ e 4 AMELIORATIONS POSSIBLES Ce module repris en grande partie partir du code de l ann e de pr c dente fonctionne tout fait convenablement tout en ne consommant pas trop de ressources En dehors de quelques petites optimisations il ne n cessite pas de r elles am liorations Une piste d am lioration serait peut tre de reprendre enti rement le principe de d tection et d exploiter les possibilit s de la librairie OpenCV en mati re de recherche de motif dans une image m thode d apprentissage Cependant le gain envisageable risque de ne pas valoir le temps de d veloppement B MODULE STRATEGIE 1 OBJECTIFS Ce module a pour r le d tudier les conditions de jeux qui lui sont fournies par le module de Vision positionnement de la balle positionnement des robots et d en d duire la strat gie de jeu adopter ainsi que le robot devant intervenir DOCUMENTATION TECHNIQUE P 7 12 SCOR PROJET SPECIFIQUE SIF 2 FONCTIONNEMENT ARCHITECTURE Ce module met en jeu son propre thread d di la d termination de la strat gie adopter Le module communique la fois avec le module de Vision en recevant des messages qui contiennent la position des robots et la position de la balle un instant t et avec le module de Contr le en lui envoyant des messages pour chaque robot qui contiennent le type de message Attaque Defense Replacement
22. vel ordre envisag se distingue sensiblement de l ordre envoy pr c demment de mani re viter d interrompre inutilement un d placement en cours Le seuil de tol rance de cette v rification est param trable Enfin une limite temporelle de fr quence d envoi des messages a galement t fix e 13 PROBLEMES RENCONTRES Le probl me principal que nous avons pu rencontrer pour le module de strat gie a t la difficult de test du module due aux probl mes techniques et mat riels qui ont provoqu des retards Ces retards ont largement frein notre avancement dans ce module 4 AMELIORATIONS POSSIBLES Une premi re modification apporter serait d am liorer la r activit des robots en particulier en d fense Cette modification est probablement aussi li e au contr le des robots mais peut tre que la strat gie en elle m me n est pas la plus efficace possible Il peut tre int ressant de se pencher sur des strat gies plus complexes comme par exemple d placer dans un premier temps une balle difficile jouer pour la placer un endroit plus int ressant pour attaquer efficacement Enfin il serait int ressant d adapter la strat gie en fonction des positions voire des vecteurs vitesses des robots adverses En attaque par exemple il serait alors possible d essayer de tirer dans une direction strat gique pour marquer plus facilement des buts C MODULE CONTROLE ROBOT 1 OBJECTIFS L obj

Download Pdf Manuals

image

Related Search

Related Contents

取 扱 説 明 書  Morgane,Andréa et Cindy  BowlsDraw.co.za  assembly guide and useR's manual  Betriebsanleitung MAXA L MAXANA L 65-250  取扱説明書 - ご家庭のお客さま/大阪ガス  INSTALLATION MANUAL AND OPERATING INSTRUCTIONS  Manuel d`utilisation du dispositif de fixation pour véhicule A22  取扱・施工説明書 - 瀧住電機工業株式会社  service manual - Mari TV Elettronica  

Copyright © All rights reserved.
Failed to retrieve file