<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
		<id>https://peip-ima.plil.fr/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Amariett</id>
		<title>Wiki de bureau d'études PeiP - Contributions de l’utilisateur [fr]</title>
		<link rel="self" type="application/atom+xml" href="https://peip-ima.plil.fr/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Amariett"/>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php/Sp%C3%A9cial:Contributions/Amariett"/>
		<updated>2026-04-24T19:31:37Z</updated>
		<subtitle>Contributions de l’utilisateur</subtitle>
		<generator>MediaWiki 1.29.2</generator>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Bande_de_couleur.jpg&amp;diff=3728</id>
		<title>Fichier:Bande de couleur.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Bande_de_couleur.jpg&amp;diff=3728"/>
				<updated>2015-03-29T15:06:26Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Terrain_au_bois.jpg&amp;diff=3727</id>
		<title>Fichier:Terrain au bois.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Terrain_au_bois.jpg&amp;diff=3727"/>
				<updated>2015-03-29T15:06:00Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3726</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3726"/>
				<updated>2015-03-29T15:05:31Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Quatrième étape : Le Terrain : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Au cours de tests, un problème nous est apparu avec le robot ci-dessus : nous pouvions capturer la balle mais lorsque nous tournions celle-ci s'échappait des pinces du robot. Nous avons apporté les modifications nécessaire à la résolution de ce problème. &lt;br /&gt;
Nous avons donc changé notre balancier : il ressemble maintenant un simple angle droit qui capture la balle lorsque celle-ci passe entre les &amp;quot;pinces&amp;quot;. Le robot garde alors la balle contre lui, le temps de trouver le but, puis le balancier se déploie pour tirer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Robot joueur final.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe en dessous du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm (On peut le voir sur la première photo).&lt;br /&gt;
Pour détecter les autres robots nous avons rajouté un autre capteur à ultrasons sur une des pinces. Nous avons d'abord pensé que la position de ce capteur allait gêner la capture de la balle. Après quelques tests il s'est avéré que non.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Capteurs 2.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier type de capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
Pour finir nous avons rajouté un un capteur à ultrasons qui nous permet de détecter les divers obstacles(robots et buts). Comme nous avions déjà utilisé un capteur de ce type, nous savions plus ou moins comment l'utiliser, donc nous n'avons pas eu de problème particulier.&lt;br /&gt;
&lt;br /&gt;
Notre code est une fonction &amp;quot;main()&amp;quot; dans laquelle s’exécute diverses sous fonctions: repérer_balle(), repérer_but(), tirer() et garer().&lt;br /&gt;
&lt;br /&gt;
La sous-fonction repérer_balle() lui permet, comme son nom l'indique de repérer la balle, mais aussi de se diriger vers elle, et de la capter.La sous fonction est faite de la sorte que : &lt;br /&gt;
-Tant que le capteur ultrason n'a pas repéré la balle au niveau des pinces, le robot se dirige vers la position de la balle (indiquée par le capteur infrarouge).&lt;br /&gt;
-Lorsque la balle est repérée par le capteur à ultrason, le moteur associé au balancier s'active et attrape la balle.&lt;br /&gt;
&lt;br /&gt;
La sous-fonction repérer_but() s'exécute lorsque &amp;quot;repérer_balle()&amp;quot; est fini. Le capteur infrarouge switch alors de 600Hz à 1200Hz, puis le robot tourne sur lui même à la recherche d'un signal infrarouge: un but. Lorsque celui-ci est en face il passe au programme tirer. Il nous reste à l'heure actuelle à coder la différenciation des deux buts. Pour cela nous allons lors des prochaines séances effectuer des tests avec les autres groupes s'occupant des buts.&lt;br /&gt;
&lt;br /&gt;
La sous fonction tirer() active le moteur associé au balancier dans le sens opposé à celui utilisé pour la capture. Le balancier revient ensuite dans sa position initiale.&lt;br /&gt;
&lt;br /&gt;
La fonction se_garer() n'est pas tout à fait finie. Elle repère notre but (le problème étant que nous ne savons pas à l'heure actuelle différencier les deux buts) puis se dirige vers lui. Lorsque le capteur de couleur repère une ligne verte il la suit. Il y a ensuite deux cas de figure: soit il arrive sur la ligne noire et se gare, soit il repère la ligne rouge du coté opposé, et fait demi-tour sur la ligne verte pour rejoindre la ligne noire.&lt;br /&gt;
&lt;br /&gt;
Pour ce qui est des limites du terrain et des obstacles, nous avons intégré ces lignes de code dans la sous-fonction repérer_balle(), car ce problème ne peut se présenter que lorsque notre robot est en mouvement.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la majorité. Dans cette partie nous allons vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permettait d'afficher les valeurs des différents senseurs lorsqu'ils étaient réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous avons ensuite utilisé la valeurs du senseur du milieu (le numéro 3), pour des distances variant entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nous avons pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglé sur 600Hz. Suite à cela il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pieds et le capteur réglé sur 1200Hz il ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui représentait le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Quatrième étape : Le Terrain : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En collaboration avec tous les groupes nous avons réalisé le terrain. &lt;br /&gt;
En premier lieu, il a fallu prendre les mesures de tous les acteurs participant lors d'un match : la taille des robots et des buts. La taille des robots était nécessaire pour savoir quel espace laisser entre les lignes et les limites des plaques. &lt;br /&gt;
Deuxièmement, il a fallu tracer toutes les lignes au crayon de bois sur les quatre plaques.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Terrain au bois.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Troisièmement et pour finir, nous avons apposé le ruban adhésif de couleur. Il a fallu faire attention à l'ordre de superposition des bandes de couleurs.  &lt;br /&gt;
  &lt;br /&gt;
[[Fichier:Bande de couleur.jpg]]&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3725</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3725"/>
				<updated>2015-03-29T15:05:00Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Quatrième étape : Le Terrain : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Au cours de tests, un problème nous est apparu avec le robot ci-dessus : nous pouvions capturer la balle mais lorsque nous tournions celle-ci s'échappait des pinces du robot. Nous avons apporté les modifications nécessaire à la résolution de ce problème. &lt;br /&gt;
Nous avons donc changé notre balancier : il ressemble maintenant un simple angle droit qui capture la balle lorsque celle-ci passe entre les &amp;quot;pinces&amp;quot;. Le robot garde alors la balle contre lui, le temps de trouver le but, puis le balancier se déploie pour tirer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Robot joueur final.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe en dessous du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm (On peut le voir sur la première photo).&lt;br /&gt;
Pour détecter les autres robots nous avons rajouté un autre capteur à ultrasons sur une des pinces. Nous avons d'abord pensé que la position de ce capteur allait gêner la capture de la balle. Après quelques tests il s'est avéré que non.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Capteurs 2.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier type de capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
Pour finir nous avons rajouté un un capteur à ultrasons qui nous permet de détecter les divers obstacles(robots et buts). Comme nous avions déjà utilisé un capteur de ce type, nous savions plus ou moins comment l'utiliser, donc nous n'avons pas eu de problème particulier.&lt;br /&gt;
&lt;br /&gt;
Notre code est une fonction &amp;quot;main()&amp;quot; dans laquelle s’exécute diverses sous fonctions: repérer_balle(), repérer_but(), tirer() et garer().&lt;br /&gt;
&lt;br /&gt;
La sous-fonction repérer_balle() lui permet, comme son nom l'indique de repérer la balle, mais aussi de se diriger vers elle, et de la capter.La sous fonction est faite de la sorte que : &lt;br /&gt;
-Tant que le capteur ultrason n'a pas repéré la balle au niveau des pinces, le robot se dirige vers la position de la balle (indiquée par le capteur infrarouge).&lt;br /&gt;
-Lorsque la balle est repérée par le capteur à ultrason, le moteur associé au balancier s'active et attrape la balle.&lt;br /&gt;
&lt;br /&gt;
La sous-fonction repérer_but() s'exécute lorsque &amp;quot;repérer_balle()&amp;quot; est fini. Le capteur infrarouge switch alors de 600Hz à 1200Hz, puis le robot tourne sur lui même à la recherche d'un signal infrarouge: un but. Lorsque celui-ci est en face il passe au programme tirer. Il nous reste à l'heure actuelle à coder la différenciation des deux buts. Pour cela nous allons lors des prochaines séances effectuer des tests avec les autres groupes s'occupant des buts.&lt;br /&gt;
&lt;br /&gt;
La sous fonction tirer() active le moteur associé au balancier dans le sens opposé à celui utilisé pour la capture. Le balancier revient ensuite dans sa position initiale.&lt;br /&gt;
&lt;br /&gt;
La fonction se_garer() n'est pas tout à fait finie. Elle repère notre but (le problème étant que nous ne savons pas à l'heure actuelle différencier les deux buts) puis se dirige vers lui. Lorsque le capteur de couleur repère une ligne verte il la suit. Il y a ensuite deux cas de figure: soit il arrive sur la ligne noire et se gare, soit il repère la ligne rouge du coté opposé, et fait demi-tour sur la ligne verte pour rejoindre la ligne noire.&lt;br /&gt;
&lt;br /&gt;
Pour ce qui est des limites du terrain et des obstacles, nous avons intégré ces lignes de code dans la sous-fonction repérer_balle(), car ce problème ne peut se présenter que lorsque notre robot est en mouvement.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la majorité. Dans cette partie nous allons vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permettait d'afficher les valeurs des différents senseurs lorsqu'ils étaient réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous avons ensuite utilisé la valeurs du senseur du milieu (le numéro 3), pour des distances variant entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nous avons pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglé sur 600Hz. Suite à cela il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pieds et le capteur réglé sur 1200Hz il ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui représentait le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Quatrième étape : Le Terrain : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  En collaboration avec tous les groupes nous avons réalisé le terrain. &lt;br /&gt;
  En premier lieu, il a fallu prendre les mesures de tous les acteurs participant lors d'un match : la taille des robots et des buts. La taille des robots était nécessaire pour savoir quel espace laisser entre les lignes et les limites des plaques. &lt;br /&gt;
  Deuxièmement, il a fallu tracer toutes les lignes au crayon de bois sur les quatre plaques.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Terrain au bois.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Troisièmement et pour finir, nous avons apposé le ruban adhésif de couleur. Il a fallu faire attention à l'ordre de superposition des bandes de couleurs.  &lt;br /&gt;
  &lt;br /&gt;
[[Fichier:Bande de couleur.jpg]]&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3724</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3724"/>
				<updated>2015-03-29T14:43:28Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Au cours de tests, un problème nous est apparu avec le robot ci-dessus : nous pouvions capturer la balle mais lorsque nous tournions celle-ci s'échappait des pinces du robot. Nous avons apporté les modifications nécessaire à la résolution de ce problème. &lt;br /&gt;
Nous avons donc changé notre balancier : il ressemble maintenant un simple angle droit qui capture la balle lorsque celle-ci passe entre les &amp;quot;pinces&amp;quot;. Le robot garde alors la balle contre lui, le temps de trouver le but, puis le balancier se déploie pour tirer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Robot joueur final.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe en dessous du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm (On peut le voir sur la première photo).&lt;br /&gt;
Pour détecter les autres robots nous avons rajouté un autre capteur à ultrasons sur une des pinces. Nous avons d'abord pensé que la position de ce capteur allait gêner la capture de la balle. Après quelques tests il s'est avéré que non.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Capteurs 2.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier type de capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
Pour finir nous avons rajouté un un capteur à ultrasons qui nous permet de détecter les divers obstacles(robots et buts). Comme nous avions déjà utilisé un capteur de ce type, nous savions plus ou moins comment l'utiliser, donc nous n'avons pas eu de problème particulier.&lt;br /&gt;
&lt;br /&gt;
Notre code est une fonction &amp;quot;main()&amp;quot; dans laquelle s’exécute diverses sous fonctions: repérer_balle(), repérer_but(), tirer() et garer().&lt;br /&gt;
&lt;br /&gt;
La sous-fonction repérer_balle() lui permet, comme son nom l'indique de repérer la balle, mais aussi de se diriger vers elle, et de la capter.La sous fonction est faite de la sorte que : &lt;br /&gt;
-Tant que le capteur ultrason n'a pas repéré la balle au niveau des pinces, le robot se dirige vers la position de la balle (indiquée par le capteur infrarouge).&lt;br /&gt;
-Lorsque la balle est repérée par le capteur à ultrason, le moteur associé au balancier s'active et attrape la balle.&lt;br /&gt;
&lt;br /&gt;
La sous-fonction repérer_but() s'exécute lorsque &amp;quot;repérer_balle()&amp;quot; est fini. Le capteur infrarouge switch alors de 600Hz à 1200Hz, puis le robot tourne sur lui même à la recherche d'un signal infrarouge: un but. Lorsque celui-ci est en face il passe au programme tirer. Il nous reste à l'heure actuelle à coder la différenciation des deux buts. Pour cela nous allons lors des prochaines séances effectuer des tests avec les autres groupes s'occupant des buts.&lt;br /&gt;
&lt;br /&gt;
La sous fonction tirer() active le moteur associé au balancier dans le sens opposé à celui utilisé pour la capture. Le balancier revient ensuite dans sa position initiale.&lt;br /&gt;
&lt;br /&gt;
La fonction se_garer() n'est pas tout à fait finie. Elle repère notre but (le problème étant que nous ne savons pas à l'heure actuelle différencier les deux buts) puis se dirige vers lui. Lorsque le capteur de couleur repère une ligne verte il la suit. Il y a ensuite deux cas de figure: soit il arrive sur la ligne noire et se gare, soit il repère la ligne rouge du coté opposé, et fait demi-tour sur la ligne verte pour rejoindre la ligne noire.&lt;br /&gt;
&lt;br /&gt;
Pour ce qui est des limites du terrain et des obstacles, nous avons intégré ces lignes de code dans la sous-fonction repérer_balle(), car ce problème ne peut se présenter que lorsque notre robot est en mouvement.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la majorité. Dans cette partie nous allons vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permettait d'afficher les valeurs des différents senseurs lorsqu'ils étaient réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous avons ensuite utilisé la valeurs du senseur du milieu (le numéro 3), pour des distances variant entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nous avons pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglé sur 600Hz. Suite à cela il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pieds et le capteur réglé sur 1200Hz il ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui représentait le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Quatrième étape : Le Terrain : ==&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3723</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3723"/>
				<updated>2015-03-29T14:34:25Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Deuxième étape : Le programme : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Au cours de tests, un problème nous est apparu avec le robot ci-dessus : nous pouvions capturer la balle mais lorsque nous tournions celle-ci s'échappait des pinces du robot. Nous avons apporté les modifications nécessaire à la résolution de ce problème. &lt;br /&gt;
Nous avons donc changé notre balancier : il ressemble maintenant un simple angle droit qui capture la balle lorsque celle-ci passe entre les &amp;quot;pinces&amp;quot;. Le robot garde alors la balle contre lui, le temps de trouver le but, puis le balancier se déploie pour tirer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Robot joueur final.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe en dessous du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm (On peut le voir sur la première photo).&lt;br /&gt;
Pour détecter les autres robots nous avons rajouté un autre capteur à ultrasons sur une des pinces. Nous avons d'abord pensé que la position de ce capteur allait gêner la capture de la balle. Après quelques tests il s'est avéré que non.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Capteurs 2.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier type de capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
Pour finir nous avons rajouté un un capteur à ultrasons qui nous permet de détecter les divers obstacles(robots et buts). Comme nous avions déjà utilisé un capteur de ce type, nous savions plus ou moins comment l'utiliser, donc nous n'avons pas eu de problème particulier.&lt;br /&gt;
&lt;br /&gt;
Notre code est une fonction &amp;quot;main()&amp;quot; dans laquelle s’exécute diverses sous fonctions: repérer_balle(), repérer_but(), tirer() et garer().&lt;br /&gt;
&lt;br /&gt;
La sous-fonction repérer_balle() lui permet, comme son nom l'indique de repérer la balle, mais aussi de se diriger vers elle, et de la capter.La sous fonction est faite de la sorte que : &lt;br /&gt;
-Tant que le capteur ultrason n'a pas repéré la balle au niveau des pinces, le robot se dirige vers la position de la balle (indiquée par le capteur infrarouge).&lt;br /&gt;
-Lorsque la balle est repérée par le capteur à ultrason, le moteur associé au balancier s'active et attrape la balle.&lt;br /&gt;
&lt;br /&gt;
La sous-fonction repérer_but() s'exécute lorsque &amp;quot;repérer_balle()&amp;quot; est fini. Le capteur infrarouge switch alors de 600Hz à 1200Hz, puis le robot tourne sur lui même à la recherche d'un signal infrarouge: un but. Lorsque celui-ci est en face il passe au programme tirer. Il nous reste à l'heure actuelle à coder la différenciation des deux buts. Pour cela nous allons lors des prochaines séances effectuer des tests avec les autres groupes s'occupant des buts.&lt;br /&gt;
&lt;br /&gt;
La sous fonction tirer() active le moteur associé au balancier dans le sens opposé à celui utilisé pour la capture. Le balancier revient ensuite dans sa position initiale.&lt;br /&gt;
&lt;br /&gt;
La fonction se_garer() n'est pas tout à fait finie. Elle repère notre but (le problème étant que nous ne savons pas à l'heure actuelle différencier les deux buts) puis se dirige vers lui. Lorsque le capteur de couleur repère une ligne verte il la suit. Il y a ensuite deux cas de figure: soit il arrive sur la ligne noire et se gare, soit il repère la ligne rouge du coté opposé, et fait demi-tour sur la ligne verte pour rejoindre la ligne noire.&lt;br /&gt;
&lt;br /&gt;
Pour ce qui est des limites du terrain et des obstacles, nous avons intégré ces lignes de code dans la sous-fonction repérer_balle(), car ce problème ne peut se présenter que lorsque notre robot est en mouvement.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la majorité. Dans cette partie nous allons vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permettait d'afficher les valeurs des différents senseurs lorsqu'ils étaient réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous avons ensuite utilisé la valeurs du senseur du milieu (le numéro 3), pour des distances variant entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nous avons pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglé sur 600Hz. Suite à cela il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pieds et le capteur réglé sur 1200Hz il ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui représentait le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3722</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3722"/>
				<updated>2015-03-29T13:46:11Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Première étape : La construction : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Au cours de tests, un problème nous est apparu avec le robot ci-dessus : nous pouvions capturer la balle mais lorsque nous tournions celle-ci s'échappait des pinces du robot. Nous avons apporté les modifications nécessaire à la résolution de ce problème. &lt;br /&gt;
Nous avons donc changé notre balancier : il ressemble maintenant un simple angle droit qui capture la balle lorsque celle-ci passe entre les &amp;quot;pinces&amp;quot;. Le robot garde alors la balle contre lui, le temps de trouver le but, puis le balancier se déploie pour tirer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Robot joueur final.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe en dessous du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm (On peut le voir sur la première photo).&lt;br /&gt;
Pour détecter les autres robots nous avons rajouté un autre capteur à ultrasons sur une des pinces. Nous avons d'abord pensé que la position de ce capteur allait gêner la capture de la balle. Après quelques tests il s'est avéré que non.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Capteurs 2.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la majorité. Dans cette partie nous allons vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permettait d'afficher les valeurs des différents senseurs lorsqu'ils étaient réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous avons ensuite utilisé la valeurs du senseur du milieu (le numéro 3), pour des distances variant entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nous avons pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglé sur 600Hz. Suite à cela il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pieds et le capteur réglé sur 1200Hz il ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui représentait le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Capteurs_2.jpg&amp;diff=3721</id>
		<title>Fichier:Capteurs 2.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Capteurs_2.jpg&amp;diff=3721"/>
				<updated>2015-03-29T13:40:43Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3720</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3720"/>
				<updated>2015-03-29T13:40:17Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Première étape : La construction : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Au cours de tests, un problème nous est apparu avec le robot ci-dessus : nous pouvions capturer la balle mais lorsque nous tournions celle-ci s'échappait des pinces du robot. Nous avons apporté les modifications nécessaire à la résolution de ce problème. &lt;br /&gt;
Nous avons donc changé notre balancier : il ressemble maintenant un simple angle droit qui capture la balle lorsque celle-ci passe entre les &amp;quot;pinces&amp;quot;. Le robot garde alors la balle contre lui, le temps de trouver le but, puis le balancier se déploie pour tirer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Robot joueur final.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe en dessous du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm (On peut le voir sur la première photo).&lt;br /&gt;
Pour détecter les autres robots nous avons rajouté un autre capteur à ultrasons sur une des pinces.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Capteurs 2.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la majorité. Dans cette partie nous allons vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permettait d'afficher les valeurs des différents senseurs lorsqu'ils étaient réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous avons ensuite utilisé la valeurs du senseur du milieu (le numéro 3), pour des distances variant entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nous avons pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglé sur 600Hz. Suite à cela il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pieds et le capteur réglé sur 1200Hz il ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui représentait le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3719</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3719"/>
				<updated>2015-03-29T13:32:38Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Au cours de tests, un problème nous est apparu avec le robot ci-dessus : nous pouvions capturer la balle mais lorsque nous tournions celle-ci s'échappait des pinces du robot. Nous avons apporté les modifications nécessaire à la résolution de ce problème. &lt;br /&gt;
Nous avons donc changé notre balancier : il ressemble maintenant un simple angle droit qui capture la balle lorsque celle-ci passe entre les &amp;quot;pinces&amp;quot;. Le robot garde alors la balle contre lui, le temps de trouver le but, puis le balancier se déploie pour tirer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Robot joueur final.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe en dessous du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm.&lt;br /&gt;
Pour détecter les autres robots nous avons rajouté un autre capteur à ultrasons sur une des pinces.&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la majorité. Dans cette partie nous allons vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permettait d'afficher les valeurs des différents senseurs lorsqu'ils étaient réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous avons ensuite utilisé la valeurs du senseur du milieu (le numéro 3), pour des distances variant entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nous avons pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglé sur 600Hz. Suite à cela il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pieds et le capteur réglé sur 1200Hz il ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui représentait le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_joueur_final.jpg&amp;diff=3718</id>
		<title>Fichier:Robot joueur final.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_joueur_final.jpg&amp;diff=3718"/>
				<updated>2015-03-29T13:18:34Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : a téléversé une nouvelle version de « Fichier:Robot joueur final.jpg »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_joueur_final.jpg&amp;diff=3717</id>
		<title>Fichier:Robot joueur final.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_joueur_final.jpg&amp;diff=3717"/>
				<updated>2015-03-29T13:17:07Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : a téléversé une nouvelle version de « Fichier:Robot joueur final.jpg »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3716</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3716"/>
				<updated>2015-03-29T13:15:13Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Robot joueur final.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre balancier est en fait un simple angle droit qui capture la balle lorsque celle-ci passe par les &amp;quot;pinces&amp;quot;. Le robot garde alors la balle contre lui, le temps de trouver le but, puis le balancier se déploie pour tirer la balle.&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe en dessous du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm.&lt;br /&gt;
Pour détecter les autres robots nous avons rajouté un autre capteur à ultrasons sur une des pinces.&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la majorité. Dans cette partie nous allons vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permettait d'afficher les valeurs des différents senseurs lorsqu'ils étaient réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous avons ensuite utilisé la valeurs du senseur du milieu (le numéro 3), pour des distances variant entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nous avons pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglé sur 600Hz. Suite à cela il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pieds et le capteur réglé sur 1200Hz il ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui représentait le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_joueur_final.jpg&amp;diff=3715</id>
		<title>Fichier:Robot joueur final.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_joueur_final.jpg&amp;diff=3715"/>
				<updated>2015-03-29T13:14:33Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : a téléversé une nouvelle version de « Fichier:Robot joueur final.jpg »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_joueur_final.jpg&amp;diff=3714</id>
		<title>Fichier:Robot joueur final.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_joueur_final.jpg&amp;diff=3714"/>
				<updated>2015-03-29T13:12:25Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3713</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3713"/>
				<updated>2015-03-29T13:09:20Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Robot final.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre balancier est en fait un simple angle droit qui capture la balle lorsque celle-ci passe par les &amp;quot;pinces&amp;quot;. Le robot garde alors la balle contre lui, le temps de trouver le but, puis le balancier se déploie pour tirer la balle.&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe en dessous du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm.&lt;br /&gt;
Pour détecter les autres robots nous avons rajouté un autre capteur à ultrasons sur une des pinces.&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la majorité. Dans cette partie nous allons vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permettait d'afficher les valeurs des différents senseurs lorsqu'ils étaient réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous avons ensuite utilisé la valeurs du senseur du milieu (le numéro 3), pour des distances variant entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nous avons pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglé sur 600Hz. Suite à cela il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pieds et le capteur réglé sur 1200Hz il ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui représentait le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3683</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3683"/>
				<updated>2015-03-19T16:32:29Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Première étape : La construction : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle. Notre balancier est en fait un simple angle droit qui capture la balle lorsque celle-ci passe par les &amp;quot;pinces&amp;quot;. Le robot garde alors la balle contre lui, le temps de trouver le but, puis le balancier se déploie pour tirer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe en dessous du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm.&lt;br /&gt;
Pour détecter les autres robots nous avons rajouté un autre capteur à ultrasons sur une des pinces.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la majorité. Dans cette partie nous allons vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permettait d'afficher les valeurs des différents senseurs lorsqu'ils étaient réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous avons ensuite utilisé la valeurs du senseur du milieu (le numéro 3), pour des distances variant entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nous avons pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglé sur 600Hz. Suite à cela il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pieds et le capteur réglé sur 1200Hz il ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui représentait le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3682</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3682"/>
				<updated>2015-03-19T16:28:52Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Première étape : La construction : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle. Notre balancier est en fait un simple angle droit qui capture la balle lorsque celle-ci passe par les &amp;quot;pinces&amp;quot;. Le robot garde alors la balle contre lui, le temps de trouver le but, puis le balancier se déploie pour tirer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la majorité. Dans cette partie nous allons vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permettait d'afficher les valeurs des différents senseurs lorsqu'ils étaient réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous avons ensuite utilisé la valeurs du senseur du milieu (le numéro 3), pour des distances variant entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nous avons pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglé sur 600Hz. Suite à cela il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pieds et le capteur réglé sur 1200Hz il ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui représentait le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3669</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3669"/>
				<updated>2015-03-12T16:03:49Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Troisième étape : Les Tests : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la majorité. Dans cette partie nous allons vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permettait d'afficher les valeurs des différents senseurs lorsqu'ils étaient réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous avons ensuite utilisé la valeurs du senseur du milieu (le numéro 3), pour des distances variant entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nous avons pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglé sur 600Hz. Suite à cela il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pieds et le capteur réglé sur 1200Hz il ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui représentait le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3668</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3668"/>
				<updated>2015-03-12T15:56:20Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Deuxième étape : Le programme : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons cherché à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La seconde étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permet de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orienté dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs nous avons pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche ou derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous servait à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est que pour les valeurs inférieures à 7cm, il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne pour la repérer. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la plus part. Dans cette partie on va vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permet d'afficher les valeurs des différents senseurs lorsqu'ils sont réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous étudions ensuite la valeurs du senseurs du milieu (le numéro 3), pour des distances variants entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
On a pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglée sur 600Hz. Suite à ça il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pied et réglé sur 1200Hzil ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui définira le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3667</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3667"/>
				<updated>2015-03-12T15:47:47Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Première étape : La construction : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieures recherches internet pour nous donner une idée de la forme que pouvait avoir notre robot. Nous n'avons rien trouvé de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libre, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot soit léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonnée.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'ait qu'à effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés sur un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol, car il ne peut pas détecter les couleurs avec une distance supérieure à 2cm.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons chercher à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La second étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permettait de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orientés dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs on a pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche et derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous sert à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est pour les valeurs inférieures à 7cm, qu'il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la plus part. Dans cette partie on va vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permet d'afficher les valeurs des différents senseurs lorsqu'ils sont réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous étudions ensuite la valeurs du senseurs du milieu (le numéro 3), pour des distances variants entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
On a pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglée sur 600Hz. Suite à ça il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pied et réglé sur 1200Hzil ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui définira le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3666</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3666"/>
				<updated>2015-03-12T15:39:09Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Introduction : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmer en fonction de la balle, et pour finir le programmer en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol car il ne peut pas détecter les couleurs avec une distance supérieur à 2cm.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons chercher à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La second étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permettait de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orientés dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs on a pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche et derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous sert à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est pour les valeurs inférieures à 7cm, qu'il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la plus part. Dans cette partie on va vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permet d'afficher les valeurs des différents senseurs lorsqu'ils sont réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous étudions ensuite la valeurs du senseurs du milieu (le numéro 3), pour des distances variants entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
On a pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglée sur 600Hz. Suite à ça il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pied et réglé sur 1200Hzil ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui définira le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Pinces.jpg&amp;diff=3356</id>
		<title>Fichier:Pinces.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Pinces.jpg&amp;diff=3356"/>
				<updated>2015-02-25T16:41:47Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : a téléversé une nouvelle version de « Fichier:Pinces.jpg »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3355</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3355"/>
				<updated>2015-02-25T16:40:51Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Introduction : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre, tout cela en NXC (Not Exactly C).&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol car il ne peut pas détecter les couleurs avec une distance supérieur à 2cm.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons chercher à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La second étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permettait de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orientés dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs on a pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche et derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous sert à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est pour les valeurs inférieures à 7cm, qu'il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la plus part. Dans cette partie on va vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permet d'afficher les valeurs des différents senseurs lorsqu'ils sont réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous étudions ensuite la valeurs du senseurs du milieu (le numéro 3), pour des distances variants entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
On a pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglée sur 600Hz. Suite à ça il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pied et réglé sur 1200Hzil ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui définira le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Pinces.jpg&amp;diff=3354</id>
		<title>Fichier:Pinces.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Pinces.jpg&amp;diff=3354"/>
				<updated>2015-02-25T16:38:12Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3353</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3353"/>
				<updated>2015-02-25T16:37:51Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Première étape : La construction : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]              [[Fichier:Pinces.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol car il ne peut pas détecter les couleurs avec une distance supérieur à 2cm.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons chercher à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La second étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permettait de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orientés dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs on a pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche et derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous sert à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est pour les valeurs inférieures à 7cm, qu'il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la plus part. Dans cette partie on va vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permet d'afficher les valeurs des différents senseurs lorsqu'ils sont réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous étudions ensuite la valeurs du senseurs du milieu (le numéro 3), pour des distances variants entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
On a pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglée sur 600Hz. Suite à ça il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pied et réglé sur 1200Hzil ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui définira le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Test_Infrarouge.jpg&amp;diff=3352</id>
		<title>Fichier:Test Infrarouge.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Test_Infrarouge.jpg&amp;diff=3352"/>
				<updated>2015-02-25T16:33:15Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3351</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3351"/>
				<updated>2015-02-25T16:32:56Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Troisième étape : Les Tests : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol car il ne peut pas détecter les couleurs avec une distance supérieur à 2cm.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons chercher à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La second étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permettait de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orientés dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs on a pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche et derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous sert à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est pour les valeurs inférieures à 7cm, qu'il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la plus part. Dans cette partie on va vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permet d'afficher les valeurs des différents senseurs lorsqu'ils sont réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous étudions ensuite la valeurs du senseurs du milieu (le numéro 3), pour des distances variants entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Infrarouge.jpg]]&lt;br /&gt;
&lt;br /&gt;
On a pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglée sur 600Hz. Suite à ça il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pied et réglé sur 1200Hzil ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui définira le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Les_diff%C3%A9rents_capteurs.jpg&amp;diff=3350</id>
		<title>Fichier:Les différents capteurs.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Les_diff%C3%A9rents_capteurs.jpg&amp;diff=3350"/>
				<updated>2015-02-25T16:26:38Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3349</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3349"/>
				<updated>2015-02-25T16:26:14Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Première étape : La construction : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol car il ne peut pas détecter les couleurs avec une distance supérieur à 2cm.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs.jpg]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons chercher à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La second étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permettait de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orientés dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs on a pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche et derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous sert à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est pour les valeurs inférieures à 7cm, qu'il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la plus part. Dans cette partie on va vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permet d'afficher les valeurs des différents senseurs lorsqu'ils sont réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous étudions ensuite la valeurs du senseurs du milieu (le numéro 3), pour des distances variants entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
On a pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglée sur 600Hz. Suite à ça il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pied et réglé sur 1200Hzil ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui définira le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3348</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3348"/>
				<updated>2015-02-25T16:21:17Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Première étape : La construction : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol car il ne peut pas détecter les couleurs avec une distance supérieur à 2cm.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Les différents capteurs]]&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons chercher à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La second étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permettait de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orientés dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs on a pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche et derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous sert à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est pour les valeurs inférieures à 7cm, qu'il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la plus part. Dans cette partie on va vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permet d'afficher les valeurs des différents senseurs lorsqu'ils sont réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous étudions ensuite la valeurs du senseurs du milieu (le numéro 3), pour des distances variants entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
On a pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglée sur 600Hz. Suite à ça il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pied et réglé sur 1200Hzil ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui définira le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Vue_de_dessous.jpg&amp;diff=3347</id>
		<title>Fichier:Vue de dessous.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Vue_de_dessous.jpg&amp;diff=3347"/>
				<updated>2015-02-25T16:15:58Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : a téléversé une nouvelle version de « Fichier:Vue de dessous.jpg »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3346</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3346"/>
				<updated>2015-02-25T16:14:30Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Vue de dessous.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol car il ne peut pas détecter les couleurs avec une distance supérieur à 2cm.&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons chercher à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La second étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permettait de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orientés dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs on a pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche et derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous sert à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est pour les valeurs inférieures à 7cm, qu'il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la plus part. Dans cette partie on va vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permet d'afficher les valeurs des différents senseurs lorsqu'ils sont réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous étudions ensuite la valeurs du senseurs du milieu (le numéro 3), pour des distances variants entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
On a pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglée sur 600Hz. Suite à ça il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pied et réglé sur 1200Hzil ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui définira le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Vue_de_dessous.jpg&amp;diff=3345</id>
		<title>Fichier:Vue de dessous.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Vue_de_dessous.jpg&amp;diff=3345"/>
				<updated>2015-02-25T16:11:35Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3318</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3318"/>
				<updated>2015-02-23T10:04:10Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol car il ne peut pas détecter les couleurs avec une distance supérieur à 2cm.&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons chercher à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La second étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permettait de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orientés dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs on a pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche et derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous sert à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est pour les valeurs inférieures à 7cm, qu'il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troisième étape : Les Tests : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce projet étant nouveau pour nous, notre projet eut plusieurs problèmes tout au long de sa mise en marche. Tous ces problèmes sont apparus lors des différents tests. Mais ces tests nous ont aussi permis d'en régler la plus part. Dans cette partie on va vous décrire l'ensemble des tests réalisés au cours de ce bureau d'étude.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Un des plus gros problème qui nous a été confronté était de différencier les deux buts et la balle. Nous avons eu l'idée de différencier leurs fréquences et faire aussi varier la fréquence de réception du capteur(600Hz et 1200Hz). Pour ces test, nous avons eu besoin de deux programmes, des variantes d'un programme précédent. Un qui permet d'afficher les valeurs des différents senseurs lorsqu'ils sont réglés sur 600Hz et sur 1200Hz. Nous avons aussi eu besoin d'un mètre et de plusieurs balles. Nous étudions ensuite la valeurs du senseurs du milieu (le numéro 3), pour des distances variants entre 30cm et 3m.&lt;br /&gt;
&lt;br /&gt;
On a pu en conclure que le capteur ne voyait que la valeur de 600Hz ou presque, lorsqu'il était réglée sur 600Hz. Suite à ça il nous a semblé logique de définir la balle à 600Hz. Une fois la balle dans les pied et réglé sur 1200Hzil ne voyait presque plus la balle mais bien l'autre signal de 1200Hz qui définira le but.&lt;br /&gt;
&lt;br /&gt;
Suite à ce choix le problème est que si notre joueur se trouve face à son propre but il va tirer dans cette direction.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3274</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3274"/>
				<updated>2015-02-19T16:24:54Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol car il ne peut pas détecter les couleurs avec une distance supérieur à 2cm.&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons chercher à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La second étape fût d'apprendre à se servir des différents capteurs. Pour commencer, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permettait de repérer tous les éléments du terrain: la balle et les buts. Ce capteur fonctionne grâce à cinq senseurs chacun orientés dans une direction différente, sur 180°. A chacun de ses senseurs correspond une valeur variant de 0 à 255. On a donc écrit un programme permettant d'afficher les valeurs de chaque senseur. Grâce à ces valeurs on a pu écrire un programme qui permettait au robot de repérer la balle et de se diriger vers elle. Ce programme utilisait des valeurs précises, on a vite vu les limites du capteur infrarouge: il manque de précision lorsque la balle est proche et derrière lui. On a donc décidé de ne plus utiliser de valeurs précises, mais uniquement des 0.&lt;br /&gt;
Après le capteur infrarouge, nous nous sommes attaqués au capteur ultrason, qui nous sert à détecter la balle, et à déclencher le balancier. Ce capteur est assez précis et facile à utiliser. Le seul bémol est pour les valeurs inférieures à 7cm, qu'il ne détecte pas toujours correctement.&lt;br /&gt;
Le dernier capteur que nous avons utilisé est le capteur de couleur. Il nous sert à repérer les lignes rouges délimitant les bords du terrain. Ce capteur fonctionne bien, mais doit être presque collé à la ligne. Nous n'avons pas eu de problème avec ce capteur, car nous l'avions déjà placé au niveau du sol.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3271</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3271"/>
				<updated>2015-02-16T12:20:33Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol car il ne peut pas détecter les couleurs avec une distance supérieur à 2cm.&lt;br /&gt;
&lt;br /&gt;
Le robot fût amélioré à mesure que le programme avançait. La construction et la programmation se sont faîtes de manière simultanée.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons chercher à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage ([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/]). Grâce à cela nous avons fait en sorte que le robot avance tout droit, tourne, recule... C'est à la suite de ces quelques lignes de code que le problème de couple au niveau des roues nous est apparu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La second étape fût d'apprendre à se servir des différents capteurs. En premier, nous nous sommes intéressés au capteur le plus important, le capteur infrarouge. Ce capteur était notre priorité car il permettait de repéré tous les éléments du terrain: la balle et les buts.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3270</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3270"/>
				<updated>2015-02-16T12:04:10Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol car il ne peut pas détecter les couleurs avec une distance supérieur à 2cm.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Deuxième étape : Le programme : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En premier lieu nous avons chercher à comprendre comment fonctionnait le langage nxc. Pour cela nous nous sommes aidés d'un site regroupant les principales formules de ce langage.([http://bricxcc.sourceforge.net/nbc/nxcdoc/nxcapi/])&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3269</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3269"/>
				<updated>2015-02-16T10:42:36Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;br /&gt;
&lt;br /&gt;
Pour les capteurs, nous avons positionné le capteur à ultrasons en hauteur avec une vue plongeante pour qu'il puisse repérer la balle quand elle est au niveau des pinces. Ensuite le capteur infrarouge se situe au dessus du capteur à ultrasons, pour avoir une vue panoramique et pouvoir détecter la balle à bonne distance de notre robot. Notre dernier capteur, le capteur de couleurs se trouve en dessous du robot, au niveau du sol car il ne peut pas détecter les couleurs avec une distance supérieur à 2cm.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3261</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3261"/>
				<updated>2015-02-04T19:33:40Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot 1.png]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Premier_Robot_1.png&amp;diff=3260</id>
		<title>Fichier:Premier Robot 1.png</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Premier_Robot_1.png&amp;diff=3260"/>
				<updated>2015-02-04T19:33:22Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_1.png&amp;diff=3259</id>
		<title>Fichier:Robot 1.png</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_1.png&amp;diff=3259"/>
				<updated>2015-02-04T19:10:21Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3248</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3248"/>
				<updated>2015-02-02T11:10:29Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Premier Robot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3247</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3247"/>
				<updated>2015-02-02T11:07:03Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
 [[Fichier:Premier Robot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3246</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3246"/>
				<updated>2015-02-02T11:04:32Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot. [[Fichier:Premier Robot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Premier_Robot.jpg&amp;diff=3245</id>
		<title>Fichier:Premier Robot.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Premier_Robot.jpg&amp;diff=3245"/>
				<updated>2015-02-02T11:03:27Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3244</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3244"/>
				<updated>2015-02-02T10:58:09Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
&lt;br /&gt;
Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
&lt;br /&gt;
Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot. Cette idée fut donc vite abandonné.&lt;br /&gt;
&lt;br /&gt;
Ensuite, nous avons rajouté des &amp;quot;pinces&amp;quot; à l'avant car l'idée de base était que le robot n'avait cas effectuer une rotation rapide en direction du but une fois que la balle se trouvait dans ces &amp;quot;pinces&amp;quot; pour tirer, mais cela était inefficace. Nous nous sommes donc penchés vers un système avec un moteur et un balancier pour tirer et pouvant au préalable capturer la balle.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3243</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3243"/>
				<updated>2015-02-02T10:26:15Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction :  ==&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
    Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer. Nous voulons avant tout, construire notre robot selon nos exigences, ensuite le programmé en fonction de la balle, et pour finir le programmé en fonction des buts et de l'arbitre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Première étape : La construction : ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    Avant de commencer cette étape nous avons effectuer plusieurs recherches internet pour se donner une idée de la forme que pouvez avoir notre robot. Nous n'avons rien trouver de conforme à nos exigences et nous avons donc décidé de l'assembler selon notre instinct. &lt;br /&gt;
    Nous voulions dans un premier temps avoir un robot avec trois roues : Deux devants et une à l'arrière, pour faciliter les rotations. les deux devants sont reliées à des moteurs alors que celle à l'arrière est libres, elle sert à stabiliser le robot.&lt;br /&gt;
    Notre second critère était que le robot devait être léger pour faciliter ses déplacements. On s'est vite rendu compte que cela n'était pas possible car pas assez stables. A cause d'un problème de couple au niveau des deux roues avants, nous avons dû ajouter des fixations et donc augmenter le poids du robot.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3242</id>
		<title>RobotCompetition2014-3</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=RobotCompetition2014-3&amp;diff=3242"/>
				<updated>2015-02-02T09:55:44Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : Page créée avec « Robot Joueur : == Introduction :  ==       Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit êt... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Robot Joueur :&lt;br /&gt;
== Introduction :  ==&lt;br /&gt;
&lt;br /&gt;
     Le but de ce bureau d'étude est, pour notre groupe, de concevoir un robot joueur en LEGO Mindstorm. Pour cela notre robot doit être capable de repérer la balle et ensuite avancer vers elle. Il doit aussi pouvoir la prendre, faire une rotation en direction du but adverse et tirer.&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=BE_2014-2015&amp;diff=3221</id>
		<title>BE 2014-2015</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=BE_2014-2015&amp;diff=3221"/>
				<updated>2015-01-19T08:21:22Z</updated>
		
		<summary type="html">&lt;p&gt;Amariett : /* Robots de compétition */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Objectif à atteindre =&lt;br /&gt;
&lt;br /&gt;
Le contexte de ce bureau d'études est un jeu de balle. Deux robots se font face sur un terrain (voir ci-dessous), doivent repérer la balle et la propulser dans le but adverse. &lt;br /&gt;
[[Image:TerrainCouleur.png|500px|center]]&lt;br /&gt;
&lt;br /&gt;
Les robots ne sont pas les seuls acteurs dans ce jeu. Les buts ont aussi un rôle à assurer, un dispositif de remise de la balle au centre est nécessaire ainsi qu'un arbitre.&lt;br /&gt;
&lt;br /&gt;
Les différents différents rôles des acteurs sont décrits ci-après.&lt;br /&gt;
* Les buts doivent s'annoncer aux robots par infra-rouge. Les buts doivent disposer d'un mécanisme capable de capturer la balle dès qu'elle rentre dans la cage. L'évenement &amp;quot;but marqué&amp;quot; est alors envoyé à l'arbitre. Sur commande de l'arbitre, le but relance la balle vers le centre du terrain.&lt;br /&gt;
* Le rôle principal de l'arbitre est de communiquer avec les autres acteurs (robots et buts). Quand un but est marqué, l'arbitre met le score à jour. Ce score est affiché sur des afficheurs dédiés. C'est aussi l'arbitre qui commande la remise au centre de la balle. Enfin l'arbitre ordonne aux robots de se placer et leur indique quand ils peuvent jouer une manche.&lt;br /&gt;
* Le dispositif de remise au centre de la balle est un robot qui capture la balle et va la déposer au point d'engagement en se repérant sur les marques au sol. Ce robot opère lorsque l'arbitre le demande et prévient l'arbitre lorsque la tâche est réalisée.&lt;br /&gt;
* Les robots ont comme tâche principale de s'approcher de la balle et de la lancer vers le but adverse. Les robots ne peuvent avancer que s'ils ne détectent pas d'obstacle à faible distance. Un robot ne repérant plus la balle peut se replier devant son but pour le bloquer. Un robot de jeu ne peut pas sortir du terrain.&lt;br /&gt;
&lt;br /&gt;
Pour que les robots puissent différencier les buts de la balle, les buts font clignoter leurs LEDs infrarouges suivant un code pré-établi.&lt;br /&gt;
&lt;br /&gt;
Les communications entre les acteurs s'effectuent par &amp;lt;tt&amp;gt;bluetooth&amp;lt;/tt&amp;gt;. Les robots et les buts s'apparient avec l'arbitre et ne communiquent qu'avec lui. Votre premier travail consiste à analyser toutes les informations contenues dans cette page et à établir un schéma des communications qui doivent avoir lieu durant un jeu complet.&lt;br /&gt;
&lt;br /&gt;
= Matériel à votre disposition =&lt;br /&gt;
{| style=&amp;quot;float: right; height: 160px; margin-left:0.2em; border: 1px solid #bbb;&amp;quot;&lt;br /&gt;
| style=&amp;quot;border: 1px solid #bbb;&amp;quot; valign=&amp;quot;top&amp;quot; |[[File:boite_mindstorm.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;border: 1px solid #bbb;&amp;quot; valign=&amp;quot;top&amp;quot; |[[File:ev3.png|120px]]&lt;br /&gt;
|- style=&amp;quot;font-size: 87%; text-align: center;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;center&amp;quot; | Legos Mindstorm&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;float: left; height: 160px; margin-left:0.2em; border: 1px solid #bbb;&amp;quot;&lt;br /&gt;
| style=&amp;quot;border: 1px solid #bbb;&amp;quot; valign=&amp;quot;middle&amp;quot; |[[File:pcduino1.png|150px]]&lt;br /&gt;
| style=&amp;quot;border: 1px solid #bbb;&amp;quot; valign=&amp;quot;top&amp;quot; |[[File:attiny85.png|150px]]&lt;br /&gt;
|- style=&amp;quot;font-size: 87%; text-align: center;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;center&amp;quot; | Système pcDuino1&lt;br /&gt;
| valign=&amp;quot;center&amp;quot; | AVR attiny85&lt;br /&gt;
|}&lt;br /&gt;
Les robots et les buts doivent être réalisées à l'aide de Lego MindStorm. Le Lego va permettre de réaliser le chassis des robots avec sa motorisation et d'y installer divers capteurs. Le Lego permet aussi de réaliser les cages des buts, leur dispositif de capture de la balle et leur dispositif d'éjection.&lt;br /&gt;
&lt;br /&gt;
La communication des robots et des buts vers l'arbitre doit se faire grâce à la technologie &amp;lt;tt&amp;gt;bluetooth&amp;lt;/tt&amp;gt; intégrée au micro-contrôleur MindStorm.&lt;br /&gt;
&lt;br /&gt;
Pour la localisation des buts, des balises doivent être construites à base de LEDs infra-rouges modulées à l'aide d'une fréquence compatible avec les détecteurs des robots. Vous réaliserez un petit circuit électronique à base de micro-contrôleur AVR &amp;lt;tt&amp;gt;tiny85&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Pour l'arbitre un système embarqué de type pcDuino est nécessaire. Doit lui être adjoint un adaptateur USB &amp;lt;tt&amp;gt;bluetooth&amp;lt;/tt&amp;gt; pour permettre la communication avec les contrôleurs MindStorm. Les afficheurs seront réalisés à partir de platines séries contrôlant des afficheurs 7 segments. Ces platines peuvent être contrôlées via le bus SPI du pcDuino.&lt;br /&gt;
&lt;br /&gt;
Pour la programmation des micro-contrôleurs MindStorm, vous pouvez utiliser le logiciel graphique fourni mais vous êtes encouragés à tester le langage [http://bricxcc.sourceforge.net/nbc/ NXC] (Not eXactly C) qui permet d'écrire efficacement des programmes plus conséquents. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Répartition des tâches =&lt;br /&gt;
&lt;br /&gt;
Chaque binôme va se voir affecter une des problématiques décrites dans les sous-sections suivantes.&lt;br /&gt;
&lt;br /&gt;
== Cage de but ==&lt;br /&gt;
Une cage de but doit comporter les dispositifs décrits ci-dessous.&lt;br /&gt;
* La cage doit émettre un signal infra-rouge pour être facilement repérable par les robots. &lt;br /&gt;
* La cage doit détecter quand la balle rentre dans la cage en la dirigeant précisement vers un capteur de contact.&lt;br /&gt;
* La cage doit signaler un but à l'arbitre.&lt;br /&gt;
* Enfin la cage doit pouvoir expulser la balle quand l'arbitre le demande.&lt;br /&gt;
&lt;br /&gt;
Il existe des sites Web décrivant des montages électroniques pour réaliser une [http://ftcforum.usfirst.org/showthread.php?2147-DIY-IR-Beacon-using-Arduino-or-ATTiny-chip balise infra-rouge]. Votre balise doit pouvoir alterner des séquences d'émission et d'arrêt de période déterminée pour permettre de différencier les buts. Pour aller plus loin, prévoyez une LED classique pour indiquer les période d'émission et d'arrêt ainsi qu'un bouton pour sélectionner la durée en seconde des périodes d'arrêt. Enfin concevez un circuit imprimé pour votre montage.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt; &amp;lt;th&amp;gt;Elèves&amp;lt;/th&amp;gt; &amp;lt;th&amp;gt;Matériel&amp;lt;/th&amp;gt; &amp;lt;th&amp;gt;Page&amp;lt;/th&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; Vivian SENAFFE / Florian SAÏZ &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Boite Lego MindStorm&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;LEDs infra-rouge&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;AVR attiny85&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Composants électroniques pour balise&amp;lt;/span&amp;gt; &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; [[CageBut2014-1|Cage de but 1]] &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; Aurélien CAFFIAUX / Carl DUCHEMIN &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Boite Lego MindStorm&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;LEDs infra-rouge&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;AVR attiny85&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Composants électroniques pour balise&amp;lt;/span&amp;gt; &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; [[CageBut2014-2|Cage de but 2]] &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Robots de compétition ==&lt;br /&gt;
Lorsque qu'un robot de compétition a repéré la balle, il effectue les actions suivantes.&lt;br /&gt;
* Il se dirige vers la balle pour la capturer. Une fois la balle capturée le robot ne se déplace plus en translation.&lt;br /&gt;
* Il lance la balle vers le but adverse. Une rotation peut être nécessaire pour l'envoi.&lt;br /&gt;
&lt;br /&gt;
D'un point de vue mécanique certains dispositifs doivent être étudiés.&lt;br /&gt;
* Un dispositif de capture de la balle, un simple récupérateur non articulé devrait suffire.&lt;br /&gt;
* Un dispositif de lancement. Vous pouvez considérer le lancement par gravité, en utilisant un servo-moteur ou en utilisant la force centrifuge.&lt;br /&gt;
&lt;br /&gt;
Si le robot ne trouve pas la balle, il peut considérer qu'elle est en possession d'un robot adverse. Dans ce cas, le robot doit se rapprocher de toutes ses roues de son but pour en bloquer l'accès.&lt;br /&gt;
&lt;br /&gt;
En aucun cas, le robot ne doit quitter l'aire de jeu.&lt;br /&gt;
&lt;br /&gt;
Les capteurs nécessaires à un robot de compétition sont décrits ci-dessous.&lt;br /&gt;
* Le capteur infra-rouge pour se diriger vers la balle et estimer la position du but.&lt;br /&gt;
* Le capteur ultra-son pour éviter de percuter les objets (buts et autres robots).&lt;br /&gt;
* Un capteur de couleur pour éviter de sortir du terrain.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt; &amp;lt;th&amp;gt;Elèves&amp;lt;/th&amp;gt; &amp;lt;th&amp;gt;Matériel&amp;lt;/th&amp;gt; &amp;lt;th&amp;gt;Page&amp;lt;/th&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; Loïc Tombazzi / Eddine Farid Omar &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Boite lego MindStorm&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Capteur infra-rouge&amp;lt;/span&amp;gt; &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; [[RobotCompetition2014-1|Robot de compétition 1]] &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; Yves-Alain Agbodjogbe / Anthony Casisa &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Boite lego MindStorm&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Capteur infra-rouge&amp;lt;/span&amp;gt; &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; [[RobotCompetition2014-2|Robot de compétition 2]] &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; Antoine Mariette / Victor Forney &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Boite lego MindStorm&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Capteur infra-rouge&amp;lt;/span&amp;gt; &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; [[RobotCompetition2014-3|Robot de compétition 3]] &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Arbitre ==&lt;br /&gt;
{| style=&amp;quot;float: right; height: 140px; margin-left:0.2em; border: 1px solid #bbb;&amp;quot;&lt;br /&gt;
| style=&amp;quot;border: 1px solid #bbb;&amp;quot; valign=&amp;quot;top&amp;quot; |[[File:Serie7segments.png|150px]]&lt;br /&gt;
|- style=&amp;quot;font-size: 87%; text-align: center;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;center&amp;quot; | Afficheurs 7 segments&lt;br /&gt;
|}&lt;br /&gt;
L'arbitre est réalisé à partir d'un système embarqué de type pcDuino. Les différentes tâches à réaliser sont décrites ci-dessous.&lt;br /&gt;
* Utiliser le bus SPI du pcDuino pour contrôler l'afficheur 7 segments.&lt;br /&gt;
* Etablir la communication &amp;lt;tt&amp;gt;bluetooth&amp;lt;/tt&amp;gt; avec les robots et les buts, vous pouvez vous baser sur les [[https://peip-ima.polytech-lille.net:40001/archive/FoxLego-2012.tar sources C]] déjà développées les années précédentes.&lt;br /&gt;
* Implanter l'algorithme d'arbitrage décrit ci-après.&lt;br /&gt;
** demander aux cages de but d'éjecter la balle ;&lt;br /&gt;
** demander au ramasseur de balle d'opérer, revenir au premier point en cas d'échec du ramasseur ;&lt;br /&gt;
** demander aux robots de lancer la partie après que le ramasseur de balle ait terminé son travail ;&lt;br /&gt;
** attendre l'événement &amp;quot;but marqué&amp;quot; pour mettre à jour le score, revenir au premier point ;&lt;br /&gt;
** en cas d'attente trop longue, revenir au premier point.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt; &amp;lt;th&amp;gt;Elèves&amp;lt;/th&amp;gt; &amp;lt;th&amp;gt;Matériel&amp;lt;/th&amp;gt; &amp;lt;th&amp;gt;Page&amp;lt;/th&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; Prénom Nom / Prénom Nom &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;pcDuino&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Adaptateur USB/&amp;lt;tt&amp;gt;bluetooth&amp;lt;/tt&amp;gt;&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Afficheurs 7 segments&amp;lt;/span&amp;gt; &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; [[ArbitreRobots2014-1|Arbitre 1]] &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Robot ramasseur de balle ==&lt;br /&gt;
Le robot ramasseur de balle doit réaliser les actions décrites ci-dessous.&lt;br /&gt;
* Trouver la balle, se diriger vers elle et la capturer.&lt;br /&gt;
* Trouver le but le plus éloigné et se diriger vers lui.&lt;br /&gt;
* S'arrêter sur la première ligne médiane détectée.&lt;br /&gt;
* Suivre la ligne dans un sens, si la frontière du terrain est détectée inverser le sens de parcours.&lt;br /&gt;
* S'arrêter sur la marque de centre de terrain, relacher la balle.&lt;br /&gt;
* Prévenir l'arbitre.&lt;br /&gt;
* Retourner sur sa base.&lt;br /&gt;
&lt;br /&gt;
Le robot ramasseur de balle se met en marche quand l'arbitre lui demande.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt; &amp;lt;th&amp;gt;Elèves&amp;lt;/th&amp;gt; &amp;lt;th&amp;gt;Matériel&amp;lt;/th&amp;gt; &amp;lt;th&amp;gt;Page&amp;lt;/th&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; Amina Fahem / Marianne Butaye &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Boite lego MindStorm&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Capteur infra-rouge&amp;lt;/span&amp;gt; &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; [[RobotRamasseur2014-1|Robot ramasseur de balle 1]] &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; Prénom Nom / Prénom Nom &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Boite lego MindStorm&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Capteur infra-rouge&amp;lt;/span&amp;gt; &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt; [[RobotRamasseur2014-2|Robot ramasseur de balle 2]] &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Interaction entre les acteurs =&lt;br /&gt;
Constituez un groupe complet d'acteurs avec 2 cages de buts, 2 robots de compétition, un robot de ramassage de balle et un arbitre.&lt;br /&gt;
Vérifiez que le match se déroule correctement.&lt;br /&gt;
&lt;br /&gt;
= Notation =&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Noms !! Rapport Wiki !! Soutenance vidéo !! Total&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Amariett</name></author>	</entry>

	</feed>