<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
		<id>http://wiki.lesfabriquesduponant.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=L0cazard</id>
		<title>Les Fabriques du Ponant - Contributions de l’utilisateur [fr]</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.lesfabriquesduponant.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=L0cazard"/>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Sp%C3%A9cial:Contributions/L0cazard"/>
		<updated>2026-05-14T09:57:16Z</updated>
		<subtitle>Contributions de l’utilisateur</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22081</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22081"/>
				<updated>2023-01-26T14:15:45Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Fini1.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
* colle à bois&lt;br /&gt;
* peintures et pinceaux&lt;br /&gt;
* cutter&lt;br /&gt;
* pic à broque&lt;br /&gt;
* scotch &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:colle1.jpeg|600px]] —&amp;gt; [[Fichier:colle2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 11:'''&lt;br /&gt;
Creer une petite protection pour le capteur de couleur afin de pouvoir le déplacer dans le labyrinthe. &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Protection.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 12:'''&lt;br /&gt;
Rajouter les différents éléments ( carte arduino, capteurs, boutons poussoirs).&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Fini1.jpeg.jpeg|600px]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
prog.cpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
#include &amp;quot;enigme.hpp&amp;quot;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;random&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
	//variable initiale&lt;br /&gt;
	int erreur=-1;&lt;br /&gt;
	int test=1;&lt;br /&gt;
	int bonneReponse=0;&lt;br /&gt;
&lt;br /&gt;
	//liste des couleurs disponible pour les drapeaux &lt;br /&gt;
	deb::Color rouge{1024, 0, 0};&lt;br /&gt;
	deb::Color bleu{0, 0, 1024};&lt;br /&gt;
	deb::Color blanc{1024, 1024, 1024};&lt;br /&gt;
	deb::Color noir{0, 0, 0};&lt;br /&gt;
	deb::Color vert{0, 1024 ,0};&lt;br /&gt;
	deb::Color orange{0, 0, 1024};&lt;br /&gt;
	deb::Color jaune{0, 0, 1024};&lt;br /&gt;
&lt;br /&gt;
	//liste des enigmes &lt;br /&gt;
	deb::Enigme ea{bleu, blanc, rouge, &amp;quot;Pays du champagne&amp;quot;};&lt;br /&gt;
	deb::Enigme eb{vert, blanc, rouge, &amp;quot;Pays des pâtes&amp;quot;};&lt;br /&gt;
	deb::Enigme ec{vert, blanc, orange, &amp;quot;Pays des moutons &amp;quot;};&lt;br /&gt;
	deb::Enigme ed{rouge, blanc, rouge, &amp;quot;Pays d’origine de Marie Antoinette&amp;quot;};&lt;br /&gt;
	deb::Enigme ee{noir, rouge, jaune, &amp;quot;Pays d’origine des knödels &amp;quot;};&lt;br /&gt;
	deb::Enigme ef{jaune, vert, rouge, &amp;quot;Quel est ce pays ? Mjubojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eg{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? .-.. ..- -..- . -- -... --- ..- .-. --.&amp;quot;};&lt;br /&gt;
	deb::Enigme eh{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? Ozxr-Azr&amp;quot;};&lt;br /&gt;
	deb::Enigme ei{noir, jaune, rouge, &amp;quot;Pays de la gaufre&amp;quot;};&lt;br /&gt;
	deb::Enigme ej{vert, jaune, bleu, &amp;quot;Mon premier est un mec. Mon second qualifie quelque chose d’agréable.&amp;quot;};&lt;br /&gt;
	deb::Enigme ek{blanc, bleu, noir, &amp;quot;Quel est ce pays ? . ... - --- -. .. .&amp;quot;};&lt;br /&gt;
	deb::Enigme el{rouge, blanc, rouge, &amp;quot;Quel est ce pays ? 53886643&amp;quot;};&lt;br /&gt;
	deb::Enigme em{rouge, blanc, vert, &amp;quot;Mon premier est un pronom personnel indéfini. Mon second contient autant de rouge que de vert que de bleu.&amp;quot;};&lt;br /&gt;
	deb::Enigme en{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? Spvnbojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eo{bleu, jaune, rouge, &amp;quot;Ma capitale est vieille &amp;quot;};&lt;br /&gt;
	deb::Enigme ep{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? - -.-. .... .- -..&amp;quot;};&lt;br /&gt;
	deb::Enigme eq{rouge, bleu, orange, &amp;quot;Son papier sent bon &amp;quot;};&lt;br /&gt;
	deb::Enigme er{bleu, rouge, vert, &amp;quot;Quel est ce pays ? 2937224526&amp;quot;};&lt;br /&gt;
	deb::Enigme es{rouge, jaune, vert, &amp;quot;Ma capitale est La Paz&amp;quot;};&lt;br /&gt;
	deb::Enigme et{rouge, jaune, vert, &amp;quot;Mon premier est la plante sous laquelle il faut s’embrasser. Mon second est l’arrivée en ce monde.&amp;quot;};&lt;br /&gt;
	deb::Enigme eu{blanc, vert, rouge, &amp;quot;Mon premier est une sphère d’une substance dans une autre. Mon second est un mec. Mon troisième peut être cantonais, thai ou basmati. &amp;quot;};&lt;br /&gt;
	deb::Enigme ev{jaune, bleu, rouge, &amp;quot;Ma capitale est Bogota&amp;quot;};&lt;br /&gt;
	deb::Enigme ew{orange, blanc, vert, &amp;quot;Quel est ce pays ? Dpuf e’Jwpjsf&amp;quot;};&lt;br /&gt;
	deb::Enigme ex{vert, jaune, rouge, &amp;quot;Quel est ce pays ? -- .- .-.. ..&amp;quot;};&lt;br /&gt;
	deb::Enigme ey{vert, blanc, vert, &amp;quot;Quel est ce pays ? 6443742&amp;quot;};&lt;br /&gt;
	deb::Enigme ez{rouge, blanc, rouge, &amp;quot;Pays du Macchu Picchu&amp;quot;};&lt;br /&gt;
	deb::Enigme eea{blanc, bleu, rouge, &amp;quot;Pays du Kremlin&amp;quot;};&lt;br /&gt;
	deb::Enigme eeb{rouge, blanc, noir, &amp;quot;Quel est ce pays ? Xdldm&amp;quot;};&lt;br /&gt;
	std::vector&amp;lt;deb::Enigme&amp;gt; vectEnigme{ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ez,eea,eeb};&lt;br /&gt;
&lt;br /&gt;
	//loop&lt;br /&gt;
	&lt;br /&gt;
	if (appui sur bouton acquisition)  //on enregistre la couleur actuelle&lt;br /&gt;
	{	&lt;br /&gt;
		int a,b,c = 10,10,1024; //on recupere les valeurs du capteur&lt;br /&gt;
		&lt;br /&gt;
		if (test==4) &lt;br /&gt;
		{&lt;br /&gt;
			bonneReponse=0; //il y a trop de reponse le resultat sera faut&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if (test==3)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.trois.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=4;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==2)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.deux.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=3;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==1)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.un.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=2;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
		&lt;br /&gt;
	if (appui sur le bouton validé and erreur!=-1)//on regarde le resultat final&lt;br /&gt;
	{&lt;br /&gt;
		if (bonneReponse==3) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Victoire ! Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==0) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as fait une erreur. Repars de zéro et essaye encore. \n&amp;quot;;&lt;br /&gt;
			erreur =1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==1) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as perdu. Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	if (appui sur bouton validé and erreur==-1) //lancement nouvelle enigme&lt;br /&gt;
	{	&lt;br /&gt;
		srand((unsigned) time(NULL));&lt;br /&gt;
		deb::Enigme enigmeEnCours=vectEnigme[rand() % 28];&lt;br /&gt;
		std::cout &amp;lt;&amp;lt; enigmeEnCours.question &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
		erreur=0;&lt;br /&gt;
		test=1;&lt;br /&gt;
		bonneReponse=0;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.cpp:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb &lt;br /&gt;
{&lt;br /&gt;
	bool Color::isitme(int r,int g,int b) const&lt;br /&gt;
	{&lt;br /&gt;
		if (r&amp;lt;(red-200)) {return false;}&lt;br /&gt;
		if (r&amp;gt;(red+200)) {return false;}&lt;br /&gt;
		if (g&amp;lt;(green-200)) {return false;}&lt;br /&gt;
		if (g&amp;gt;(green+200)) {return false;}&lt;br /&gt;
		if (b&amp;lt;(blue-200)) {return false;}&lt;br /&gt;
		if (b&amp;gt;(blue+200)) {return false;}	&lt;br /&gt;
		return true;&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}// namespace deb&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.hpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_COLOR_HPP&lt;br /&gt;
#define DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Color&lt;br /&gt;
  {&lt;br /&gt;
    int red,green,blue;&lt;br /&gt;
&lt;br /&gt;
    Color(int red, int green, int blue): red{std::move(red)}, green{std::move(green)}, blue{std::move(blue)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
    bool isitme(int r,int g,int b) const;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
enigme.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_ENIGME_HPP&lt;br /&gt;
#define DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Enigme&lt;br /&gt;
  {&lt;br /&gt;
    Color un,deux,trois;&lt;br /&gt;
    std::string question;&lt;br /&gt;
&lt;br /&gt;
    Enigme(Color u, Color d, Color t, std::string q): un{std::move(u)}, deux{std::move(d)}, trois{std::move(t)}, question{std::move(q)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''code BP :'''&lt;br /&gt;
&lt;br /&gt;
Les_petits_voyageurs.ino&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;Test_BP.h&amp;quot;&lt;br /&gt;
#include &amp;quot;Arduino.h&amp;quot;&lt;br /&gt;
int lancement=0;&lt;br /&gt;
&lt;br /&gt;
void setup()&lt;br /&gt;
{&lt;br /&gt;
  Serial.begin(115200);&lt;br /&gt;
  setup_BP();&lt;br /&gt;
  //constantes générées aussi en dehors de la loop&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void loop()&lt;br /&gt;
{&lt;br /&gt;
  lancement=BP(lancement);&lt;br /&gt;
  if (lancement==1)&lt;br /&gt;
  {&lt;br /&gt;
    delay(20);&lt;br /&gt;
    Serial.println(&amp;quot;Bonjour ! &amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Test_BP.cpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#include &amp;quot;Test_BP.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
//BP1&lt;br /&gt;
const int BP1=4;&lt;br /&gt;
&lt;br /&gt;
int boutonState = 0;&lt;br /&gt;
int lastBoutonState = 0;&lt;br /&gt;
&lt;br /&gt;
void setup_BP()&lt;br /&gt;
{&lt;br /&gt;
  //setup fonction bouton&lt;br /&gt;
  pinMode(BP1, INPUT);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int BP(int lancement) //permet de détecter les FM/FD du BP&lt;br /&gt;
{&lt;br /&gt;
  /*&lt;br /&gt;
  Serial.print(&amp;quot;etat bouton : &amp;quot;);&lt;br /&gt;
  Serial.println(boutonState);&lt;br /&gt;
  Serial.print(&amp;quot;etat bouton precedent : &amp;quot;);&lt;br /&gt;
  Serial.println(lastBoutonState);&lt;br /&gt;
  */&lt;br /&gt;
&lt;br /&gt;
  boutonState=digitalRead(BP1);&lt;br /&gt;
  Serial.println(boutonState);&lt;br /&gt;
  if (boutonState==HIGH)&lt;br /&gt;
  {&lt;br /&gt;
    if (boutonState != lastBoutonState)&lt;br /&gt;
    {&lt;br /&gt;
      lancement=1;&lt;br /&gt;
      //Serial.println(&amp;quot;00&amp;quot;);&lt;br /&gt;
      lastBoutonState=boutonState;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      lancement=0; //état récurrent de lancement, on reste appuyé sur BP&lt;br /&gt;
      //Serial.println(&amp;quot;10&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  else&lt;br /&gt;
  {&lt;br /&gt;
    if (boutonState != lastBoutonState)&lt;br /&gt;
    {&lt;br /&gt;
      //Serial.println(&amp;quot;01&amp;quot;);&lt;br /&gt;
      lancement=0;&lt;br /&gt;
      lastBoutonState=boutonState;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      //Serial.println(&amp;quot;11&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  //Serial.println(lancement);&lt;br /&gt;
&lt;br /&gt;
  return lancement;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#ifndef TEST_BP_H&lt;br /&gt;
#define TEST_BP_H&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup_BP();&lt;br /&gt;
int BP(int lancement);&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''code capteur:'''&lt;br /&gt;
&lt;br /&gt;
color_detection_methods.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/* This file is taken from MyOwnBricks project.&lt;br /&gt;
 * MyOwnBricks is a library for the emulation of LEGO PoweredUp sensors on microcontrollers&lt;br /&gt;
 * Copyright (C) 2021-2022 Ysard - &amp;lt;ysard@users.noreply.github.com&amp;gt;&lt;br /&gt;
 *&lt;br /&gt;
 * This program is free software: you can redistribute it and/or modify&lt;br /&gt;
 * it under the terms of the GNU General Public License as published by&lt;br /&gt;
 * the Free Software Foundation, either version 3 of the License, or&lt;br /&gt;
 * (at your option) any later version.&lt;br /&gt;
 *&lt;br /&gt;
 * This program is distributed in the hope that it will be useful,&lt;br /&gt;
 * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 * GNU General Public License for more details.&lt;br /&gt;
 *&lt;br /&gt;
 * You should have received a copy of the GNU General Public License&lt;br /&gt;
 * along with this program.  If not, see &amp;lt;https://www.gnu.org/licenses/&amp;gt;.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Discretize colors and return uint8_t color code.&lt;br /&gt;
 *    Available colors: COLOR_NONE, COLOR_BLACK, COLOR_BLUE,&lt;br /&gt;
 *    COLOR_GREEN, COLOR_RED, COLOR_WHITE.&lt;br /&gt;
 *&lt;br /&gt;
 *    Generally speaking, stable measuring conditions are required, i.e.,&lt;br /&gt;
 *    a stable measuring distance not exceeding 4 cm, no interfering light&lt;br /&gt;
 *    reaching the side of the sensor. Think about matt black sensor shroud.&lt;br /&gt;
 *&lt;br /&gt;
 *    Metrics:&lt;br /&gt;
 *      - BASIC_RGB: Simple comparison between channels;&lt;br /&gt;
 *          Very fast but is likely to produce errors.&lt;br /&gt;
 *      - MANHATTAN: Sum of absolute values of distances.&lt;br /&gt;
 *          Quite heavy, but quite accurate if the reference values have been&lt;br /&gt;
 *          measured seriously and if the measurement environment is controlled&lt;br /&gt;
 *          (reproducible). Distance between the sensor and the object should be&lt;br /&gt;
 *          the same as during learning.&lt;br /&gt;
 *          https://fr.wikipedia.org/wiki/Distance_de_Manhattan&lt;br /&gt;
 *     - CANBERRA: A weighted version of Manhattan distance;&lt;br /&gt;
 *          Very heavy but brings a higher accuracy and more tolerance/stability to variations&lt;br /&gt;
 *          in the measurement environment.&lt;br /&gt;
 *          Note: The manipulation of decimal numbers should be avoided&lt;br /&gt;
 *          on microcontrollers... Does it worth it? Probably not.&lt;br /&gt;
 *          https://en.wikipedia.org/wiki/Canberra_distance&lt;br /&gt;
 */&lt;br /&gt;
//#define BASIC_RGB&lt;br /&gt;
//#define MANHATTAN&lt;br /&gt;
//#define CANBERRA&lt;br /&gt;
&lt;br /&gt;
// Colors (detected &amp;amp; LED (except NONE for this last one)) expected values&lt;br /&gt;
#define COLOR_NONE      0xFF&lt;br /&gt;
#define COLOR_BLACK     0&lt;br /&gt;
#define COLOR_PINK      1&lt;br /&gt;
#define COLOR_PURPLE    2&lt;br /&gt;
#define COLOR_BLUE      3&lt;br /&gt;
#define COLOR_LIGHTBLUE 4&lt;br /&gt;
#define COLOR_CYAN      5&lt;br /&gt;
#define COLOR_GREEN     6&lt;br /&gt;
#define COLOR_YELLOW    7&lt;br /&gt;
#define COLOR_ORANGE    8&lt;br /&gt;
#define COLOR_RED       9&lt;br /&gt;
#define COLOR_WHITE     10&lt;br /&gt;
&lt;br /&gt;
extern uint16_t red, green, blue;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#ifdef BASIC_RGB&lt;br /&gt;
uint8_t detectColor(const uint16_t &amp;amp;red, const uint16_t &amp;amp;green, const uint16_t &amp;amp;blue) {&lt;br /&gt;
    if ((red &amp;gt; green) &amp;amp;&amp;amp; (red &amp;gt; blue)) {&lt;br /&gt;
        return COLOR_RED;&lt;br /&gt;
    } else if ((green &amp;gt; red) &amp;amp;&amp;amp; (green &amp;gt; blue)) {&lt;br /&gt;
        return COLOR_GREEN;&lt;br /&gt;
    } else if ((blue &amp;gt; red) &amp;amp;&amp;amp; (blue &amp;gt; green)) {&lt;br /&gt;
        return COLOR_BLUE;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#if (defined(MANHATTAN) || defined(CANBERRA))&lt;br /&gt;
// *_1: measures at 1 cm&lt;br /&gt;
// *_3: measures at 3 cms&lt;br /&gt;
const uint16_t SAMPLES[][3] = {&lt;br /&gt;
    { 297,  83,  56 }, // RED_1&lt;br /&gt;
    {  43,  20,  17 }, // RED_3&lt;br /&gt;
    {  35, 142, 193 }, // BLUE_1&lt;br /&gt;
    {  35,  94, 116 }, // BLUE_3&lt;br /&gt;
    {  86, 257, 257 }, // CYAN_1&lt;br /&gt;
    {  36,  98,  97 }, // CYAN_3&lt;br /&gt;
    { 120, 141,  46 }, // YELLOW_1&lt;br /&gt;
    {  72,  73,  30 }, // YELLOW_3&lt;br /&gt;
    { 338, 373, 120 }, // YELLOW_PLQ_1&lt;br /&gt;
    { 159, 267, 201 }, // WHITE_1&lt;br /&gt;
    {  87, 126, 102 }, // WHITE_3&lt;br /&gt;
    {  89, 322, 163 }, // GREEN_1&lt;br /&gt;
    {  58, 106,  68 }, // GREEN_3&lt;br /&gt;
    { 103, 189,  57 }, // GREEN_LIGHT_1&lt;br /&gt;
    {  51,  77,  33 }, // GREEN_LIGHT_3&lt;br /&gt;
    {  26,  34,  28 }  // BLACK_1&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
const uint8_t SAMPLES_MAP[] = {&lt;br /&gt;
    COLOR_RED,    COLOR_RED,&lt;br /&gt;
    COLOR_BLUE,   COLOR_BLUE,&lt;br /&gt;
    COLOR_BLUE,   COLOR_BLUE,&lt;br /&gt;
    COLOR_YELLOW, COLOR_YELLOW,COLOR_YELLOW,&lt;br /&gt;
    COLOR_WHITE,  COLOR_WHITE,&lt;br /&gt;
    COLOR_GREEN,  COLOR_GREEN,&lt;br /&gt;
    COLOR_GREEN,  COLOR_GREEN,&lt;br /&gt;
    COLOR_BLACK&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// Number of samples&lt;br /&gt;
const uint8_t samplesCount = sizeof(SAMPLES) / sizeof(SAMPLES[0]);&lt;br /&gt;
&lt;br /&gt;
uint8_t detectColor(const uint16_t &amp;amp;red, const uint16_t &amp;amp;green, const uint16_t &amp;amp;blue) {&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
    uint16_t minDist = 10000;&lt;br /&gt;
    uint16_t expDist;&lt;br /&gt;
#else&lt;br /&gt;
    float minDist = 3;&lt;br /&gt;
    float expDist;&lt;br /&gt;
#endif&lt;br /&gt;
    uint8_t bestSampleIndex = 0;&lt;br /&gt;
&lt;br /&gt;
    for (uint8_t i = 0; i &amp;lt; samplesCount; i++) {&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
        expDist = abs(static_cast&amp;lt;int16_t&amp;gt;(red - SAMPLES[i][0]))&lt;br /&gt;
                  + abs(static_cast&amp;lt;int16_t&amp;gt;(green - SAMPLES[i][1]))&lt;br /&gt;
                  + abs(static_cast&amp;lt;int16_t&amp;gt;(blue - SAMPLES[i][2]));&lt;br /&gt;
#else&lt;br /&gt;
        // Yeah it's ugly but abs() of Arduino is a macro different from the stl implementation&lt;br /&gt;
        // moreover the parameter must be explicitly signed.&lt;br /&gt;
        // The numerator or denominator must be a float.&lt;br /&gt;
        // https://www.best-microcontroller-projects.com/arduino-absolute-value.html&lt;br /&gt;
        // https://github.com/arduino/reference-en/issues/362&lt;br /&gt;
        expDist = (abs(static_cast&amp;lt;int16_t&amp;gt;(red - SAMPLES[i][0])) / static_cast&amp;lt;float&amp;gt;(red + SAMPLES[i][0]))&lt;br /&gt;
                  + (abs(static_cast&amp;lt;int16_t&amp;gt;(green - SAMPLES[i][1])) / static_cast&amp;lt;float&amp;gt;(green + SAMPLES[i][1]))&lt;br /&gt;
                  + (abs(static_cast&amp;lt;int16_t&amp;gt;(blue - SAMPLES[i][2])) / static_cast&amp;lt;float&amp;gt;(blue + SAMPLES[i][2]));&lt;br /&gt;
#endif&lt;br /&gt;
        if (expDist &amp;lt; minDist) {&lt;br /&gt;
            bestSampleIndex = i;&lt;br /&gt;
            minDist         = expDist;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Arbitrary threshold to avoid erroneous identifications&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
    if (minDist &amp;gt; 100) {&lt;br /&gt;
#else&lt;br /&gt;
    if (minDist &amp;gt; 1.9) { // Red color is quite difficult to identify even with this high threashold&lt;br /&gt;
#endif&lt;br /&gt;
        // Matching is not acceptable&lt;br /&gt;
        return COLOR_NONE;&lt;br /&gt;
    }&lt;br /&gt;
    // Get color value expected by the hub&lt;br /&gt;
    return SAMPLES_MAP[bestSampleIndex];&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Color_sensor.ino&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/* This file is taken from MyOwnBricks project.&lt;br /&gt;
 * MyOwnBricks is a library for the emulation of LEGO PoweredUp sensors on microcontrollers&lt;br /&gt;
 * Copyright (C) 2021-2022 Ysard - &amp;lt;ysard@users.noreply.github.com&amp;gt;&lt;br /&gt;
 *&lt;br /&gt;
 * This program is free software: you can redistribute it and/or modify&lt;br /&gt;
 * it under the terms of the GNU General Public License as published by&lt;br /&gt;
 * the Free Software Foundation, either version 3 of the License, or&lt;br /&gt;
 * (at your option) any later version.&lt;br /&gt;
 *&lt;br /&gt;
 * This program is distributed in the hope that it will be useful,&lt;br /&gt;
 * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 * GNU General Public License for more details.&lt;br /&gt;
 *&lt;br /&gt;
 * You should have received a copy of the GNU General Public License&lt;br /&gt;
 * along with this program.  If not, see &amp;lt;https://www.gnu.org/licenses/&amp;gt;.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 *   Sensor   Pro Micro&lt;br /&gt;
 *   SCL      SCL pin 3&lt;br /&gt;
 *   SDA      SDA pin 2&lt;br /&gt;
 *   INT      PCINT4, port PB4, pin 8&lt;br /&gt;
 *   VIN      VCC (3.3V)&lt;br /&gt;
 *   GND      GND&lt;br /&gt;
 *&lt;br /&gt;
 *   LED pin of the sensor can be connected to its INT pin.&lt;br /&gt;
 *   By doing this the leds will turn off when the measurements are done.&lt;br /&gt;
 *&lt;br /&gt;
 *   Pro Micro:&lt;br /&gt;
 *   Serial: UART via USB&lt;br /&gt;
 *   Serial1: pin 1 (TX), pin 0 (RX)&lt;br /&gt;
 */&lt;br /&gt;
#include &amp;lt;Wire.h&amp;gt;&lt;br /&gt;
#include &amp;lt;tcs34725.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define MANHATTAN&lt;br /&gt;
#include &amp;quot;color_detection_methods.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#define RGB_SENSOR_INTERRUPT_PIN     8&lt;br /&gt;
#define RGB_SENSOR_INTERRUPT_PORT    PB4 // Port alias of pin 8 to be used in tstPin()&lt;br /&gt;
// Equivalent of digitalRead but for PORTB pins &amp;amp; much more quicker for a use in an ISR&lt;br /&gt;
// https://www.arduino.cc/en/Reference/PortManipulation&lt;br /&gt;
#define tstPin(b)                             ((PINB &amp;amp; (1 &amp;lt;&amp;lt; (b))) != 0)&lt;br /&gt;
#define LUX_TO_PERCENTAGE(val)                (getPercentage(val, 0.0105, -0.0843))&lt;br /&gt;
#define REFLECTED_LIGHT_TO_PERCENTAGE(val)    (getPercentage(val, 0.0017, -8))&lt;br /&gt;
&lt;br /&gt;
uint8_t       sensorColor;&lt;br /&gt;
uint8_t       reflectedLight;&lt;br /&gt;
uint8_t       ambientLight;&lt;br /&gt;
uint16_t      red, green, blue, clear, lux;&lt;br /&gt;
volatile bool sensorReady;&lt;br /&gt;
&lt;br /&gt;
// Default settings: TCS34725_GAIN_4X,  TCS34725_INTEGRATIONTIME_154MS&lt;br /&gt;
TCS34725      rgb_sensor;&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Callback for PCINT4 interrupt (PCINT0 - PCINT7)&lt;br /&gt;
 */&lt;br /&gt;
ISR(PCINT0_vect) {&lt;br /&gt;
    // If RGB_SENSOR_INTERRUPT_PORT is LOW, sensor is ready&lt;br /&gt;
    if (!tstPin(RGB_SENSOR_INTERRUPT_PORT))&lt;br /&gt;
        sensorReady = true;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Map lux/reflected light values to percentages&lt;br /&gt;
 *    Weights of the equation must be calculated empirically&lt;br /&gt;
 *    Map equation: y = ax + b&lt;br /&gt;
 *    System to solve:&lt;br /&gt;
 *      100% = MaxRawValue * a + b&lt;br /&gt;
 *      0% = MinRawValue * a + b&lt;br /&gt;
 *&lt;br /&gt;
 *    See macros LUX_TO_PERCENTAGE and REFLECTED_LIGHT_TO_PERCENTAGE.&lt;br /&gt;
 */&lt;br /&gt;
uint8_t getPercentage(const uint16_t rawValue, const float&amp;amp; a_coef, const float&amp;amp; b_coef) {&lt;br /&gt;
    int8_t percent = static_cast&amp;lt;int8_t&amp;gt;(rawValue * a_coef + b_coef);&lt;br /&gt;
    if (percent &amp;gt; 100)&lt;br /&gt;
        return 100;&lt;br /&gt;
    if (percent &amp;lt; 0)&lt;br /&gt;
        return 0;&lt;br /&gt;
    return static_cast&amp;lt;uint8_t&amp;gt;(percent);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
    Serial.begin(115200);&lt;br /&gt;
    while (!Serial) {&lt;br /&gt;
        // Wait for serial port to connect.&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Device config&lt;br /&gt;
    sensorColor = COLOR_NONE;&lt;br /&gt;
&lt;br /&gt;
    // Colour sensor config&lt;br /&gt;
    // Configure PinChange Interrupt&lt;br /&gt;
    // See https://github.com/NicoHood/PinChangeInterrupt&lt;br /&gt;
    // Note: INT-0,1,2,3 are occupied by UART and i2c transmissions on pro-micro&lt;br /&gt;
    // /!\ DO NOT activate pullup from the arduino, the INT pin is usually already&lt;br /&gt;
    // pulled up into the sensor board itself to 3.3V. These pins (SCL, SDA, INT)&lt;br /&gt;
    // ARE NOT tolerant to more than VDD + 0.5V. Note that I2C pins are connected&lt;br /&gt;
    // to level shifters, but not the others.&lt;br /&gt;
    pinMode(RGB_SENSOR_INTERRUPT_PIN, INPUT); // TCS interrupt output is Active-LOW and Open-Drain&lt;br /&gt;
    cli();                                    // Disable all interrupts: Avoid first and not wanted trigger of the interrupt&lt;br /&gt;
    PCICR  |= 0b00000001;                     // enable PORTB pin change interrupt&lt;br /&gt;
    PCMSK0 |= 0b00010000;                     // enable PB4, PCINT4, pin 8&lt;br /&gt;
    sei();                                    // Enable all interrupts&lt;br /&gt;
&lt;br /&gt;
    while (!rgb_sensor.begin()) {&lt;br /&gt;
        Serial.println(F(&amp;quot;TCS34725 NOT found&amp;quot;));&lt;br /&gt;
        delay(200);&lt;br /&gt;
    }&lt;br /&gt;
    Serial.println(F(&amp;quot;Found sensor&amp;quot;));&lt;br /&gt;
&lt;br /&gt;
    // Set persistence filter to generate an interrupt for every RGB Cycle,&lt;br /&gt;
    // regardless of the integration limits&lt;br /&gt;
    rgb_sensor.tcs.write8(TCS34725_PERS, TCS34725_PERS_NONE);&lt;br /&gt;
    // RGBC interrupt enable. When asserted, permits RGBC interrupts to be generated.&lt;br /&gt;
    rgb_sensor.tcs.setInterrupt(true);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void loop()&lt;br /&gt;
{&lt;br /&gt;
    if (sensorReady) {&lt;br /&gt;
        // Data measurement&lt;br /&gt;
        // noDelay param set to true: Asynchronous mode, must be used with interrupt configured.&lt;br /&gt;
        bool status = rgb_sensor.updateData(true);&lt;br /&gt;
&lt;br /&gt;
        if (status) {&lt;br /&gt;
            // Ambient light (lux) computation&lt;br /&gt;
            rgb_sensor.updateLux();&lt;br /&gt;
&lt;br /&gt;
            int16_t lux = lround(rgb_sensor.lux);&lt;br /&gt;
&lt;br /&gt;
            // Sometimes lux values are below 0; this coincides with erroneous data&lt;br /&gt;
            // Moreover, we discard data taken below 40 lux.&lt;br /&gt;
            if ((lux &amp;gt;= 40) &amp;amp;&amp;amp; (static_cast&amp;lt;uint16_t&amp;gt;(lux) &amp;lt;= rgb_sensor.maxlux)) {&lt;br /&gt;
                // Set ambient light (lux) - map 0-100&lt;br /&gt;
                //ambientLight = map(rgb_sensor.lux, 0, rgb_sensor.maxlux, 0, 100);&lt;br /&gt;
                ambientLight = LUX_TO_PERCENTAGE(lux); // cast ?&lt;br /&gt;
&lt;br /&gt;
                // RGBC Channels are usable&lt;br /&gt;
                // Map values to max ~440;&lt;br /&gt;
                // Continuous values from 0-65535 (16bits) to 0-1023 (10bits)&lt;br /&gt;
                red   = rgb_sensor.r_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
                green = rgb_sensor.g_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
                blue  = rgb_sensor.b_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
&lt;br /&gt;
                // Set clear channel as reflected light - map 0-100&lt;br /&gt;
                reflectedLight = REFLECTED_LIGHT_TO_PERCENTAGE(rgb_sensor.c_comp);&lt;br /&gt;
&lt;br /&gt;
                // Set detected color&lt;br /&gt;
                sensorColor = detectColor(red, green, blue);&lt;br /&gt;
            } else {&lt;br /&gt;
                sensorColor = COLOR_NONE;&lt;br /&gt;
            }&lt;br /&gt;
            clear = rgb_sensor.c_comp &amp;gt;&amp;gt; 6;&lt;br /&gt;
            /*&lt;br /&gt;
            // Human readable debugging&lt;br /&gt;
            Serial.print(&amp;quot;Lux: &amp;quot;); Serial.print(rgb_sensor.lux, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; max: &amp;quot;); Serial.print(rgb_sensor.maxlux);&lt;br /&gt;
            Serial.print(&amp;quot;; R: &amp;quot;); Serial.print(red, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; G: &amp;quot;); Serial.print(green, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; B: &amp;quot;); Serial.print(blue, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; C: &amp;quot;); Serial.println(clear, DEC);&lt;br /&gt;
            */&lt;br /&gt;
&lt;br /&gt;
            // Spreadsheet debugging&lt;br /&gt;
            Serial.print(rgb_sensor.lux, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(rgb_sensor.maxlux); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(red, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(green, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(blue, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.println(clear, DEC);&lt;br /&gt;
        } else {&lt;br /&gt;
            sensorColor = COLOR_NONE;&lt;br /&gt;
            Serial.println(F(&amp;quot;not valid data! wait next measure&amp;quot;));&lt;br /&gt;
        }&lt;br /&gt;
        // Interrupt tear down&lt;br /&gt;
        rgb_sensor.tcs.clearInterrupt();&lt;br /&gt;
        sensorReady = false;&lt;br /&gt;
        PCIFR      &amp;amp;= ~(1 &amp;lt;&amp;lt; PCIF0); // clear PC interrupt flag in case of bounce&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22080</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22080"/>
				<updated>2023-01-26T14:15:17Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Fini1.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
* colle à bois&lt;br /&gt;
* peintures et pinceaux&lt;br /&gt;
* cutter&lt;br /&gt;
* pic à broque&lt;br /&gt;
* scotch &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:colle1.jpeg|600px]] —&amp;gt; [[Fichier:colle2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 11:'''&lt;br /&gt;
Creer une petite protection pour le capteur de couleur afin de pouvoir le déplacer dans le labyrinthe. &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Protection.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 12:'''&lt;br /&gt;
Rajouter les différents éléments ( carte arduino, capteurs, boutons poussoirs).&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Fini2.jpeg.jpeg|600px]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
prog.cpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
#include &amp;quot;enigme.hpp&amp;quot;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;random&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
	//variable initiale&lt;br /&gt;
	int erreur=-1;&lt;br /&gt;
	int test=1;&lt;br /&gt;
	int bonneReponse=0;&lt;br /&gt;
&lt;br /&gt;
	//liste des couleurs disponible pour les drapeaux &lt;br /&gt;
	deb::Color rouge{1024, 0, 0};&lt;br /&gt;
	deb::Color bleu{0, 0, 1024};&lt;br /&gt;
	deb::Color blanc{1024, 1024, 1024};&lt;br /&gt;
	deb::Color noir{0, 0, 0};&lt;br /&gt;
	deb::Color vert{0, 1024 ,0};&lt;br /&gt;
	deb::Color orange{0, 0, 1024};&lt;br /&gt;
	deb::Color jaune{0, 0, 1024};&lt;br /&gt;
&lt;br /&gt;
	//liste des enigmes &lt;br /&gt;
	deb::Enigme ea{bleu, blanc, rouge, &amp;quot;Pays du champagne&amp;quot;};&lt;br /&gt;
	deb::Enigme eb{vert, blanc, rouge, &amp;quot;Pays des pâtes&amp;quot;};&lt;br /&gt;
	deb::Enigme ec{vert, blanc, orange, &amp;quot;Pays des moutons &amp;quot;};&lt;br /&gt;
	deb::Enigme ed{rouge, blanc, rouge, &amp;quot;Pays d’origine de Marie Antoinette&amp;quot;};&lt;br /&gt;
	deb::Enigme ee{noir, rouge, jaune, &amp;quot;Pays d’origine des knödels &amp;quot;};&lt;br /&gt;
	deb::Enigme ef{jaune, vert, rouge, &amp;quot;Quel est ce pays ? Mjubojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eg{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? .-.. ..- -..- . -- -... --- ..- .-. --.&amp;quot;};&lt;br /&gt;
	deb::Enigme eh{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? Ozxr-Azr&amp;quot;};&lt;br /&gt;
	deb::Enigme ei{noir, jaune, rouge, &amp;quot;Pays de la gaufre&amp;quot;};&lt;br /&gt;
	deb::Enigme ej{vert, jaune, bleu, &amp;quot;Mon premier est un mec. Mon second qualifie quelque chose d’agréable.&amp;quot;};&lt;br /&gt;
	deb::Enigme ek{blanc, bleu, noir, &amp;quot;Quel est ce pays ? . ... - --- -. .. .&amp;quot;};&lt;br /&gt;
	deb::Enigme el{rouge, blanc, rouge, &amp;quot;Quel est ce pays ? 53886643&amp;quot;};&lt;br /&gt;
	deb::Enigme em{rouge, blanc, vert, &amp;quot;Mon premier est un pronom personnel indéfini. Mon second contient autant de rouge que de vert que de bleu.&amp;quot;};&lt;br /&gt;
	deb::Enigme en{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? Spvnbojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eo{bleu, jaune, rouge, &amp;quot;Ma capitale est vieille &amp;quot;};&lt;br /&gt;
	deb::Enigme ep{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? - -.-. .... .- -..&amp;quot;};&lt;br /&gt;
	deb::Enigme eq{rouge, bleu, orange, &amp;quot;Son papier sent bon &amp;quot;};&lt;br /&gt;
	deb::Enigme er{bleu, rouge, vert, &amp;quot;Quel est ce pays ? 2937224526&amp;quot;};&lt;br /&gt;
	deb::Enigme es{rouge, jaune, vert, &amp;quot;Ma capitale est La Paz&amp;quot;};&lt;br /&gt;
	deb::Enigme et{rouge, jaune, vert, &amp;quot;Mon premier est la plante sous laquelle il faut s’embrasser. Mon second est l’arrivée en ce monde.&amp;quot;};&lt;br /&gt;
	deb::Enigme eu{blanc, vert, rouge, &amp;quot;Mon premier est une sphère d’une substance dans une autre. Mon second est un mec. Mon troisième peut être cantonais, thai ou basmati. &amp;quot;};&lt;br /&gt;
	deb::Enigme ev{jaune, bleu, rouge, &amp;quot;Ma capitale est Bogota&amp;quot;};&lt;br /&gt;
	deb::Enigme ew{orange, blanc, vert, &amp;quot;Quel est ce pays ? Dpuf e’Jwpjsf&amp;quot;};&lt;br /&gt;
	deb::Enigme ex{vert, jaune, rouge, &amp;quot;Quel est ce pays ? -- .- .-.. ..&amp;quot;};&lt;br /&gt;
	deb::Enigme ey{vert, blanc, vert, &amp;quot;Quel est ce pays ? 6443742&amp;quot;};&lt;br /&gt;
	deb::Enigme ez{rouge, blanc, rouge, &amp;quot;Pays du Macchu Picchu&amp;quot;};&lt;br /&gt;
	deb::Enigme eea{blanc, bleu, rouge, &amp;quot;Pays du Kremlin&amp;quot;};&lt;br /&gt;
	deb::Enigme eeb{rouge, blanc, noir, &amp;quot;Quel est ce pays ? Xdldm&amp;quot;};&lt;br /&gt;
	std::vector&amp;lt;deb::Enigme&amp;gt; vectEnigme{ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ez,eea,eeb};&lt;br /&gt;
&lt;br /&gt;
	//loop&lt;br /&gt;
	&lt;br /&gt;
	if (appui sur bouton acquisition)  //on enregistre la couleur actuelle&lt;br /&gt;
	{	&lt;br /&gt;
		int a,b,c = 10,10,1024; //on recupere les valeurs du capteur&lt;br /&gt;
		&lt;br /&gt;
		if (test==4) &lt;br /&gt;
		{&lt;br /&gt;
			bonneReponse=0; //il y a trop de reponse le resultat sera faut&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if (test==3)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.trois.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=4;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==2)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.deux.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=3;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==1)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.un.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=2;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
		&lt;br /&gt;
	if (appui sur le bouton validé and erreur!=-1)//on regarde le resultat final&lt;br /&gt;
	{&lt;br /&gt;
		if (bonneReponse==3) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Victoire ! Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==0) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as fait une erreur. Repars de zéro et essaye encore. \n&amp;quot;;&lt;br /&gt;
			erreur =1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==1) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as perdu. Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	if (appui sur bouton validé and erreur==-1) //lancement nouvelle enigme&lt;br /&gt;
	{	&lt;br /&gt;
		srand((unsigned) time(NULL));&lt;br /&gt;
		deb::Enigme enigmeEnCours=vectEnigme[rand() % 28];&lt;br /&gt;
		std::cout &amp;lt;&amp;lt; enigmeEnCours.question &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
		erreur=0;&lt;br /&gt;
		test=1;&lt;br /&gt;
		bonneReponse=0;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.cpp:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb &lt;br /&gt;
{&lt;br /&gt;
	bool Color::isitme(int r,int g,int b) const&lt;br /&gt;
	{&lt;br /&gt;
		if (r&amp;lt;(red-200)) {return false;}&lt;br /&gt;
		if (r&amp;gt;(red+200)) {return false;}&lt;br /&gt;
		if (g&amp;lt;(green-200)) {return false;}&lt;br /&gt;
		if (g&amp;gt;(green+200)) {return false;}&lt;br /&gt;
		if (b&amp;lt;(blue-200)) {return false;}&lt;br /&gt;
		if (b&amp;gt;(blue+200)) {return false;}	&lt;br /&gt;
		return true;&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}// namespace deb&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.hpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_COLOR_HPP&lt;br /&gt;
#define DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Color&lt;br /&gt;
  {&lt;br /&gt;
    int red,green,blue;&lt;br /&gt;
&lt;br /&gt;
    Color(int red, int green, int blue): red{std::move(red)}, green{std::move(green)}, blue{std::move(blue)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
    bool isitme(int r,int g,int b) const;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
enigme.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_ENIGME_HPP&lt;br /&gt;
#define DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Enigme&lt;br /&gt;
  {&lt;br /&gt;
    Color un,deux,trois;&lt;br /&gt;
    std::string question;&lt;br /&gt;
&lt;br /&gt;
    Enigme(Color u, Color d, Color t, std::string q): un{std::move(u)}, deux{std::move(d)}, trois{std::move(t)}, question{std::move(q)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''code BP :'''&lt;br /&gt;
&lt;br /&gt;
Les_petits_voyageurs.ino&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;Test_BP.h&amp;quot;&lt;br /&gt;
#include &amp;quot;Arduino.h&amp;quot;&lt;br /&gt;
int lancement=0;&lt;br /&gt;
&lt;br /&gt;
void setup()&lt;br /&gt;
{&lt;br /&gt;
  Serial.begin(115200);&lt;br /&gt;
  setup_BP();&lt;br /&gt;
  //constantes générées aussi en dehors de la loop&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void loop()&lt;br /&gt;
{&lt;br /&gt;
  lancement=BP(lancement);&lt;br /&gt;
  if (lancement==1)&lt;br /&gt;
  {&lt;br /&gt;
    delay(20);&lt;br /&gt;
    Serial.println(&amp;quot;Bonjour ! &amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Test_BP.cpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#include &amp;quot;Test_BP.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
//BP1&lt;br /&gt;
const int BP1=4;&lt;br /&gt;
&lt;br /&gt;
int boutonState = 0;&lt;br /&gt;
int lastBoutonState = 0;&lt;br /&gt;
&lt;br /&gt;
void setup_BP()&lt;br /&gt;
{&lt;br /&gt;
  //setup fonction bouton&lt;br /&gt;
  pinMode(BP1, INPUT);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int BP(int lancement) //permet de détecter les FM/FD du BP&lt;br /&gt;
{&lt;br /&gt;
  /*&lt;br /&gt;
  Serial.print(&amp;quot;etat bouton : &amp;quot;);&lt;br /&gt;
  Serial.println(boutonState);&lt;br /&gt;
  Serial.print(&amp;quot;etat bouton precedent : &amp;quot;);&lt;br /&gt;
  Serial.println(lastBoutonState);&lt;br /&gt;
  */&lt;br /&gt;
&lt;br /&gt;
  boutonState=digitalRead(BP1);&lt;br /&gt;
  Serial.println(boutonState);&lt;br /&gt;
  if (boutonState==HIGH)&lt;br /&gt;
  {&lt;br /&gt;
    if (boutonState != lastBoutonState)&lt;br /&gt;
    {&lt;br /&gt;
      lancement=1;&lt;br /&gt;
      //Serial.println(&amp;quot;00&amp;quot;);&lt;br /&gt;
      lastBoutonState=boutonState;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      lancement=0; //état récurrent de lancement, on reste appuyé sur BP&lt;br /&gt;
      //Serial.println(&amp;quot;10&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  else&lt;br /&gt;
  {&lt;br /&gt;
    if (boutonState != lastBoutonState)&lt;br /&gt;
    {&lt;br /&gt;
      //Serial.println(&amp;quot;01&amp;quot;);&lt;br /&gt;
      lancement=0;&lt;br /&gt;
      lastBoutonState=boutonState;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      //Serial.println(&amp;quot;11&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  //Serial.println(lancement);&lt;br /&gt;
&lt;br /&gt;
  return lancement;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#ifndef TEST_BP_H&lt;br /&gt;
#define TEST_BP_H&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup_BP();&lt;br /&gt;
int BP(int lancement);&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''code capteur:'''&lt;br /&gt;
&lt;br /&gt;
color_detection_methods.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/* This file is taken from MyOwnBricks project.&lt;br /&gt;
 * MyOwnBricks is a library for the emulation of LEGO PoweredUp sensors on microcontrollers&lt;br /&gt;
 * Copyright (C) 2021-2022 Ysard - &amp;lt;ysard@users.noreply.github.com&amp;gt;&lt;br /&gt;
 *&lt;br /&gt;
 * This program is free software: you can redistribute it and/or modify&lt;br /&gt;
 * it under the terms of the GNU General Public License as published by&lt;br /&gt;
 * the Free Software Foundation, either version 3 of the License, or&lt;br /&gt;
 * (at your option) any later version.&lt;br /&gt;
 *&lt;br /&gt;
 * This program is distributed in the hope that it will be useful,&lt;br /&gt;
 * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 * GNU General Public License for more details.&lt;br /&gt;
 *&lt;br /&gt;
 * You should have received a copy of the GNU General Public License&lt;br /&gt;
 * along with this program.  If not, see &amp;lt;https://www.gnu.org/licenses/&amp;gt;.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Discretize colors and return uint8_t color code.&lt;br /&gt;
 *    Available colors: COLOR_NONE, COLOR_BLACK, COLOR_BLUE,&lt;br /&gt;
 *    COLOR_GREEN, COLOR_RED, COLOR_WHITE.&lt;br /&gt;
 *&lt;br /&gt;
 *    Generally speaking, stable measuring conditions are required, i.e.,&lt;br /&gt;
 *    a stable measuring distance not exceeding 4 cm, no interfering light&lt;br /&gt;
 *    reaching the side of the sensor. Think about matt black sensor shroud.&lt;br /&gt;
 *&lt;br /&gt;
 *    Metrics:&lt;br /&gt;
 *      - BASIC_RGB: Simple comparison between channels;&lt;br /&gt;
 *          Very fast but is likely to produce errors.&lt;br /&gt;
 *      - MANHATTAN: Sum of absolute values of distances.&lt;br /&gt;
 *          Quite heavy, but quite accurate if the reference values have been&lt;br /&gt;
 *          measured seriously and if the measurement environment is controlled&lt;br /&gt;
 *          (reproducible). Distance between the sensor and the object should be&lt;br /&gt;
 *          the same as during learning.&lt;br /&gt;
 *          https://fr.wikipedia.org/wiki/Distance_de_Manhattan&lt;br /&gt;
 *     - CANBERRA: A weighted version of Manhattan distance;&lt;br /&gt;
 *          Very heavy but brings a higher accuracy and more tolerance/stability to variations&lt;br /&gt;
 *          in the measurement environment.&lt;br /&gt;
 *          Note: The manipulation of decimal numbers should be avoided&lt;br /&gt;
 *          on microcontrollers... Does it worth it? Probably not.&lt;br /&gt;
 *          https://en.wikipedia.org/wiki/Canberra_distance&lt;br /&gt;
 */&lt;br /&gt;
//#define BASIC_RGB&lt;br /&gt;
//#define MANHATTAN&lt;br /&gt;
//#define CANBERRA&lt;br /&gt;
&lt;br /&gt;
// Colors (detected &amp;amp; LED (except NONE for this last one)) expected values&lt;br /&gt;
#define COLOR_NONE      0xFF&lt;br /&gt;
#define COLOR_BLACK     0&lt;br /&gt;
#define COLOR_PINK      1&lt;br /&gt;
#define COLOR_PURPLE    2&lt;br /&gt;
#define COLOR_BLUE      3&lt;br /&gt;
#define COLOR_LIGHTBLUE 4&lt;br /&gt;
#define COLOR_CYAN      5&lt;br /&gt;
#define COLOR_GREEN     6&lt;br /&gt;
#define COLOR_YELLOW    7&lt;br /&gt;
#define COLOR_ORANGE    8&lt;br /&gt;
#define COLOR_RED       9&lt;br /&gt;
#define COLOR_WHITE     10&lt;br /&gt;
&lt;br /&gt;
extern uint16_t red, green, blue;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#ifdef BASIC_RGB&lt;br /&gt;
uint8_t detectColor(const uint16_t &amp;amp;red, const uint16_t &amp;amp;green, const uint16_t &amp;amp;blue) {&lt;br /&gt;
    if ((red &amp;gt; green) &amp;amp;&amp;amp; (red &amp;gt; blue)) {&lt;br /&gt;
        return COLOR_RED;&lt;br /&gt;
    } else if ((green &amp;gt; red) &amp;amp;&amp;amp; (green &amp;gt; blue)) {&lt;br /&gt;
        return COLOR_GREEN;&lt;br /&gt;
    } else if ((blue &amp;gt; red) &amp;amp;&amp;amp; (blue &amp;gt; green)) {&lt;br /&gt;
        return COLOR_BLUE;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#if (defined(MANHATTAN) || defined(CANBERRA))&lt;br /&gt;
// *_1: measures at 1 cm&lt;br /&gt;
// *_3: measures at 3 cms&lt;br /&gt;
const uint16_t SAMPLES[][3] = {&lt;br /&gt;
    { 297,  83,  56 }, // RED_1&lt;br /&gt;
    {  43,  20,  17 }, // RED_3&lt;br /&gt;
    {  35, 142, 193 }, // BLUE_1&lt;br /&gt;
    {  35,  94, 116 }, // BLUE_3&lt;br /&gt;
    {  86, 257, 257 }, // CYAN_1&lt;br /&gt;
    {  36,  98,  97 }, // CYAN_3&lt;br /&gt;
    { 120, 141,  46 }, // YELLOW_1&lt;br /&gt;
    {  72,  73,  30 }, // YELLOW_3&lt;br /&gt;
    { 338, 373, 120 }, // YELLOW_PLQ_1&lt;br /&gt;
    { 159, 267, 201 }, // WHITE_1&lt;br /&gt;
    {  87, 126, 102 }, // WHITE_3&lt;br /&gt;
    {  89, 322, 163 }, // GREEN_1&lt;br /&gt;
    {  58, 106,  68 }, // GREEN_3&lt;br /&gt;
    { 103, 189,  57 }, // GREEN_LIGHT_1&lt;br /&gt;
    {  51,  77,  33 }, // GREEN_LIGHT_3&lt;br /&gt;
    {  26,  34,  28 }  // BLACK_1&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
const uint8_t SAMPLES_MAP[] = {&lt;br /&gt;
    COLOR_RED,    COLOR_RED,&lt;br /&gt;
    COLOR_BLUE,   COLOR_BLUE,&lt;br /&gt;
    COLOR_BLUE,   COLOR_BLUE,&lt;br /&gt;
    COLOR_YELLOW, COLOR_YELLOW,COLOR_YELLOW,&lt;br /&gt;
    COLOR_WHITE,  COLOR_WHITE,&lt;br /&gt;
    COLOR_GREEN,  COLOR_GREEN,&lt;br /&gt;
    COLOR_GREEN,  COLOR_GREEN,&lt;br /&gt;
    COLOR_BLACK&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// Number of samples&lt;br /&gt;
const uint8_t samplesCount = sizeof(SAMPLES) / sizeof(SAMPLES[0]);&lt;br /&gt;
&lt;br /&gt;
uint8_t detectColor(const uint16_t &amp;amp;red, const uint16_t &amp;amp;green, const uint16_t &amp;amp;blue) {&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
    uint16_t minDist = 10000;&lt;br /&gt;
    uint16_t expDist;&lt;br /&gt;
#else&lt;br /&gt;
    float minDist = 3;&lt;br /&gt;
    float expDist;&lt;br /&gt;
#endif&lt;br /&gt;
    uint8_t bestSampleIndex = 0;&lt;br /&gt;
&lt;br /&gt;
    for (uint8_t i = 0; i &amp;lt; samplesCount; i++) {&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
        expDist = abs(static_cast&amp;lt;int16_t&amp;gt;(red - SAMPLES[i][0]))&lt;br /&gt;
                  + abs(static_cast&amp;lt;int16_t&amp;gt;(green - SAMPLES[i][1]))&lt;br /&gt;
                  + abs(static_cast&amp;lt;int16_t&amp;gt;(blue - SAMPLES[i][2]));&lt;br /&gt;
#else&lt;br /&gt;
        // Yeah it's ugly but abs() of Arduino is a macro different from the stl implementation&lt;br /&gt;
        // moreover the parameter must be explicitly signed.&lt;br /&gt;
        // The numerator or denominator must be a float.&lt;br /&gt;
        // https://www.best-microcontroller-projects.com/arduino-absolute-value.html&lt;br /&gt;
        // https://github.com/arduino/reference-en/issues/362&lt;br /&gt;
        expDist = (abs(static_cast&amp;lt;int16_t&amp;gt;(red - SAMPLES[i][0])) / static_cast&amp;lt;float&amp;gt;(red + SAMPLES[i][0]))&lt;br /&gt;
                  + (abs(static_cast&amp;lt;int16_t&amp;gt;(green - SAMPLES[i][1])) / static_cast&amp;lt;float&amp;gt;(green + SAMPLES[i][1]))&lt;br /&gt;
                  + (abs(static_cast&amp;lt;int16_t&amp;gt;(blue - SAMPLES[i][2])) / static_cast&amp;lt;float&amp;gt;(blue + SAMPLES[i][2]));&lt;br /&gt;
#endif&lt;br /&gt;
        if (expDist &amp;lt; minDist) {&lt;br /&gt;
            bestSampleIndex = i;&lt;br /&gt;
            minDist         = expDist;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Arbitrary threshold to avoid erroneous identifications&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
    if (minDist &amp;gt; 100) {&lt;br /&gt;
#else&lt;br /&gt;
    if (minDist &amp;gt; 1.9) { // Red color is quite difficult to identify even with this high threashold&lt;br /&gt;
#endif&lt;br /&gt;
        // Matching is not acceptable&lt;br /&gt;
        return COLOR_NONE;&lt;br /&gt;
    }&lt;br /&gt;
    // Get color value expected by the hub&lt;br /&gt;
    return SAMPLES_MAP[bestSampleIndex];&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Color_sensor.ino&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/* This file is taken from MyOwnBricks project.&lt;br /&gt;
 * MyOwnBricks is a library for the emulation of LEGO PoweredUp sensors on microcontrollers&lt;br /&gt;
 * Copyright (C) 2021-2022 Ysard - &amp;lt;ysard@users.noreply.github.com&amp;gt;&lt;br /&gt;
 *&lt;br /&gt;
 * This program is free software: you can redistribute it and/or modify&lt;br /&gt;
 * it under the terms of the GNU General Public License as published by&lt;br /&gt;
 * the Free Software Foundation, either version 3 of the License, or&lt;br /&gt;
 * (at your option) any later version.&lt;br /&gt;
 *&lt;br /&gt;
 * This program is distributed in the hope that it will be useful,&lt;br /&gt;
 * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 * GNU General Public License for more details.&lt;br /&gt;
 *&lt;br /&gt;
 * You should have received a copy of the GNU General Public License&lt;br /&gt;
 * along with this program.  If not, see &amp;lt;https://www.gnu.org/licenses/&amp;gt;.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 *   Sensor   Pro Micro&lt;br /&gt;
 *   SCL      SCL pin 3&lt;br /&gt;
 *   SDA      SDA pin 2&lt;br /&gt;
 *   INT      PCINT4, port PB4, pin 8&lt;br /&gt;
 *   VIN      VCC (3.3V)&lt;br /&gt;
 *   GND      GND&lt;br /&gt;
 *&lt;br /&gt;
 *   LED pin of the sensor can be connected to its INT pin.&lt;br /&gt;
 *   By doing this the leds will turn off when the measurements are done.&lt;br /&gt;
 *&lt;br /&gt;
 *   Pro Micro:&lt;br /&gt;
 *   Serial: UART via USB&lt;br /&gt;
 *   Serial1: pin 1 (TX), pin 0 (RX)&lt;br /&gt;
 */&lt;br /&gt;
#include &amp;lt;Wire.h&amp;gt;&lt;br /&gt;
#include &amp;lt;tcs34725.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define MANHATTAN&lt;br /&gt;
#include &amp;quot;color_detection_methods.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#define RGB_SENSOR_INTERRUPT_PIN     8&lt;br /&gt;
#define RGB_SENSOR_INTERRUPT_PORT    PB4 // Port alias of pin 8 to be used in tstPin()&lt;br /&gt;
// Equivalent of digitalRead but for PORTB pins &amp;amp; much more quicker for a use in an ISR&lt;br /&gt;
// https://www.arduino.cc/en/Reference/PortManipulation&lt;br /&gt;
#define tstPin(b)                             ((PINB &amp;amp; (1 &amp;lt;&amp;lt; (b))) != 0)&lt;br /&gt;
#define LUX_TO_PERCENTAGE(val)                (getPercentage(val, 0.0105, -0.0843))&lt;br /&gt;
#define REFLECTED_LIGHT_TO_PERCENTAGE(val)    (getPercentage(val, 0.0017, -8))&lt;br /&gt;
&lt;br /&gt;
uint8_t       sensorColor;&lt;br /&gt;
uint8_t       reflectedLight;&lt;br /&gt;
uint8_t       ambientLight;&lt;br /&gt;
uint16_t      red, green, blue, clear, lux;&lt;br /&gt;
volatile bool sensorReady;&lt;br /&gt;
&lt;br /&gt;
// Default settings: TCS34725_GAIN_4X,  TCS34725_INTEGRATIONTIME_154MS&lt;br /&gt;
TCS34725      rgb_sensor;&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Callback for PCINT4 interrupt (PCINT0 - PCINT7)&lt;br /&gt;
 */&lt;br /&gt;
ISR(PCINT0_vect) {&lt;br /&gt;
    // If RGB_SENSOR_INTERRUPT_PORT is LOW, sensor is ready&lt;br /&gt;
    if (!tstPin(RGB_SENSOR_INTERRUPT_PORT))&lt;br /&gt;
        sensorReady = true;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Map lux/reflected light values to percentages&lt;br /&gt;
 *    Weights of the equation must be calculated empirically&lt;br /&gt;
 *    Map equation: y = ax + b&lt;br /&gt;
 *    System to solve:&lt;br /&gt;
 *      100% = MaxRawValue * a + b&lt;br /&gt;
 *      0% = MinRawValue * a + b&lt;br /&gt;
 *&lt;br /&gt;
 *    See macros LUX_TO_PERCENTAGE and REFLECTED_LIGHT_TO_PERCENTAGE.&lt;br /&gt;
 */&lt;br /&gt;
uint8_t getPercentage(const uint16_t rawValue, const float&amp;amp; a_coef, const float&amp;amp; b_coef) {&lt;br /&gt;
    int8_t percent = static_cast&amp;lt;int8_t&amp;gt;(rawValue * a_coef + b_coef);&lt;br /&gt;
    if (percent &amp;gt; 100)&lt;br /&gt;
        return 100;&lt;br /&gt;
    if (percent &amp;lt; 0)&lt;br /&gt;
        return 0;&lt;br /&gt;
    return static_cast&amp;lt;uint8_t&amp;gt;(percent);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
    Serial.begin(115200);&lt;br /&gt;
    while (!Serial) {&lt;br /&gt;
        // Wait for serial port to connect.&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Device config&lt;br /&gt;
    sensorColor = COLOR_NONE;&lt;br /&gt;
&lt;br /&gt;
    // Colour sensor config&lt;br /&gt;
    // Configure PinChange Interrupt&lt;br /&gt;
    // See https://github.com/NicoHood/PinChangeInterrupt&lt;br /&gt;
    // Note: INT-0,1,2,3 are occupied by UART and i2c transmissions on pro-micro&lt;br /&gt;
    // /!\ DO NOT activate pullup from the arduino, the INT pin is usually already&lt;br /&gt;
    // pulled up into the sensor board itself to 3.3V. These pins (SCL, SDA, INT)&lt;br /&gt;
    // ARE NOT tolerant to more than VDD + 0.5V. Note that I2C pins are connected&lt;br /&gt;
    // to level shifters, but not the others.&lt;br /&gt;
    pinMode(RGB_SENSOR_INTERRUPT_PIN, INPUT); // TCS interrupt output is Active-LOW and Open-Drain&lt;br /&gt;
    cli();                                    // Disable all interrupts: Avoid first and not wanted trigger of the interrupt&lt;br /&gt;
    PCICR  |= 0b00000001;                     // enable PORTB pin change interrupt&lt;br /&gt;
    PCMSK0 |= 0b00010000;                     // enable PB4, PCINT4, pin 8&lt;br /&gt;
    sei();                                    // Enable all interrupts&lt;br /&gt;
&lt;br /&gt;
    while (!rgb_sensor.begin()) {&lt;br /&gt;
        Serial.println(F(&amp;quot;TCS34725 NOT found&amp;quot;));&lt;br /&gt;
        delay(200);&lt;br /&gt;
    }&lt;br /&gt;
    Serial.println(F(&amp;quot;Found sensor&amp;quot;));&lt;br /&gt;
&lt;br /&gt;
    // Set persistence filter to generate an interrupt for every RGB Cycle,&lt;br /&gt;
    // regardless of the integration limits&lt;br /&gt;
    rgb_sensor.tcs.write8(TCS34725_PERS, TCS34725_PERS_NONE);&lt;br /&gt;
    // RGBC interrupt enable. When asserted, permits RGBC interrupts to be generated.&lt;br /&gt;
    rgb_sensor.tcs.setInterrupt(true);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void loop()&lt;br /&gt;
{&lt;br /&gt;
    if (sensorReady) {&lt;br /&gt;
        // Data measurement&lt;br /&gt;
        // noDelay param set to true: Asynchronous mode, must be used with interrupt configured.&lt;br /&gt;
        bool status = rgb_sensor.updateData(true);&lt;br /&gt;
&lt;br /&gt;
        if (status) {&lt;br /&gt;
            // Ambient light (lux) computation&lt;br /&gt;
            rgb_sensor.updateLux();&lt;br /&gt;
&lt;br /&gt;
            int16_t lux = lround(rgb_sensor.lux);&lt;br /&gt;
&lt;br /&gt;
            // Sometimes lux values are below 0; this coincides with erroneous data&lt;br /&gt;
            // Moreover, we discard data taken below 40 lux.&lt;br /&gt;
            if ((lux &amp;gt;= 40) &amp;amp;&amp;amp; (static_cast&amp;lt;uint16_t&amp;gt;(lux) &amp;lt;= rgb_sensor.maxlux)) {&lt;br /&gt;
                // Set ambient light (lux) - map 0-100&lt;br /&gt;
                //ambientLight = map(rgb_sensor.lux, 0, rgb_sensor.maxlux, 0, 100);&lt;br /&gt;
                ambientLight = LUX_TO_PERCENTAGE(lux); // cast ?&lt;br /&gt;
&lt;br /&gt;
                // RGBC Channels are usable&lt;br /&gt;
                // Map values to max ~440;&lt;br /&gt;
                // Continuous values from 0-65535 (16bits) to 0-1023 (10bits)&lt;br /&gt;
                red   = rgb_sensor.r_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
                green = rgb_sensor.g_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
                blue  = rgb_sensor.b_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
&lt;br /&gt;
                // Set clear channel as reflected light - map 0-100&lt;br /&gt;
                reflectedLight = REFLECTED_LIGHT_TO_PERCENTAGE(rgb_sensor.c_comp);&lt;br /&gt;
&lt;br /&gt;
                // Set detected color&lt;br /&gt;
                sensorColor = detectColor(red, green, blue);&lt;br /&gt;
            } else {&lt;br /&gt;
                sensorColor = COLOR_NONE;&lt;br /&gt;
            }&lt;br /&gt;
            clear = rgb_sensor.c_comp &amp;gt;&amp;gt; 6;&lt;br /&gt;
            /*&lt;br /&gt;
            // Human readable debugging&lt;br /&gt;
            Serial.print(&amp;quot;Lux: &amp;quot;); Serial.print(rgb_sensor.lux, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; max: &amp;quot;); Serial.print(rgb_sensor.maxlux);&lt;br /&gt;
            Serial.print(&amp;quot;; R: &amp;quot;); Serial.print(red, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; G: &amp;quot;); Serial.print(green, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; B: &amp;quot;); Serial.print(blue, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; C: &amp;quot;); Serial.println(clear, DEC);&lt;br /&gt;
            */&lt;br /&gt;
&lt;br /&gt;
            // Spreadsheet debugging&lt;br /&gt;
            Serial.print(rgb_sensor.lux, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(rgb_sensor.maxlux); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(red, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(green, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(blue, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.println(clear, DEC);&lt;br /&gt;
        } else {&lt;br /&gt;
            sensorColor = COLOR_NONE;&lt;br /&gt;
            Serial.println(F(&amp;quot;not valid data! wait next measure&amp;quot;));&lt;br /&gt;
        }&lt;br /&gt;
        // Interrupt tear down&lt;br /&gt;
        rgb_sensor.tcs.clearInterrupt();&lt;br /&gt;
        sensorReady = false;&lt;br /&gt;
        PCIFR      &amp;amp;= ~(1 &amp;lt;&amp;lt; PCIF0); // clear PC interrupt flag in case of bounce&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22078</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22078"/>
				<updated>2023-01-26T14:14:13Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Fini1.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
* colle à bois&lt;br /&gt;
* peintures et pinceaux&lt;br /&gt;
* cutter&lt;br /&gt;
* pic à broque&lt;br /&gt;
* scotch &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:colle1.jpeg|600px]] —&amp;gt; [[Fichier:colle2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 11:'''&lt;br /&gt;
Creer une petite protection pour le capteur de couleur afin de pouvoir le déplacer dans le labyrinthe. &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Protection.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 12:'''&lt;br /&gt;
Rajouter les différents éléments ( carte arduino, capteurs, boutons poussoirs).&lt;br /&gt;
[[Fichier:Fini2.jpeg.jpeg|600px]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
prog.cpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
#include &amp;quot;enigme.hpp&amp;quot;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;random&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
	//variable initiale&lt;br /&gt;
	int erreur=-1;&lt;br /&gt;
	int test=1;&lt;br /&gt;
	int bonneReponse=0;&lt;br /&gt;
&lt;br /&gt;
	//liste des couleurs disponible pour les drapeaux &lt;br /&gt;
	deb::Color rouge{1024, 0, 0};&lt;br /&gt;
	deb::Color bleu{0, 0, 1024};&lt;br /&gt;
	deb::Color blanc{1024, 1024, 1024};&lt;br /&gt;
	deb::Color noir{0, 0, 0};&lt;br /&gt;
	deb::Color vert{0, 1024 ,0};&lt;br /&gt;
	deb::Color orange{0, 0, 1024};&lt;br /&gt;
	deb::Color jaune{0, 0, 1024};&lt;br /&gt;
&lt;br /&gt;
	//liste des enigmes &lt;br /&gt;
	deb::Enigme ea{bleu, blanc, rouge, &amp;quot;Pays du champagne&amp;quot;};&lt;br /&gt;
	deb::Enigme eb{vert, blanc, rouge, &amp;quot;Pays des pâtes&amp;quot;};&lt;br /&gt;
	deb::Enigme ec{vert, blanc, orange, &amp;quot;Pays des moutons &amp;quot;};&lt;br /&gt;
	deb::Enigme ed{rouge, blanc, rouge, &amp;quot;Pays d’origine de Marie Antoinette&amp;quot;};&lt;br /&gt;
	deb::Enigme ee{noir, rouge, jaune, &amp;quot;Pays d’origine des knödels &amp;quot;};&lt;br /&gt;
	deb::Enigme ef{jaune, vert, rouge, &amp;quot;Quel est ce pays ? Mjubojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eg{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? .-.. ..- -..- . -- -... --- ..- .-. --.&amp;quot;};&lt;br /&gt;
	deb::Enigme eh{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? Ozxr-Azr&amp;quot;};&lt;br /&gt;
	deb::Enigme ei{noir, jaune, rouge, &amp;quot;Pays de la gaufre&amp;quot;};&lt;br /&gt;
	deb::Enigme ej{vert, jaune, bleu, &amp;quot;Mon premier est un mec. Mon second qualifie quelque chose d’agréable.&amp;quot;};&lt;br /&gt;
	deb::Enigme ek{blanc, bleu, noir, &amp;quot;Quel est ce pays ? . ... - --- -. .. .&amp;quot;};&lt;br /&gt;
	deb::Enigme el{rouge, blanc, rouge, &amp;quot;Quel est ce pays ? 53886643&amp;quot;};&lt;br /&gt;
	deb::Enigme em{rouge, blanc, vert, &amp;quot;Mon premier est un pronom personnel indéfini. Mon second contient autant de rouge que de vert que de bleu.&amp;quot;};&lt;br /&gt;
	deb::Enigme en{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? Spvnbojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eo{bleu, jaune, rouge, &amp;quot;Ma capitale est vieille &amp;quot;};&lt;br /&gt;
	deb::Enigme ep{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? - -.-. .... .- -..&amp;quot;};&lt;br /&gt;
	deb::Enigme eq{rouge, bleu, orange, &amp;quot;Son papier sent bon &amp;quot;};&lt;br /&gt;
	deb::Enigme er{bleu, rouge, vert, &amp;quot;Quel est ce pays ? 2937224526&amp;quot;};&lt;br /&gt;
	deb::Enigme es{rouge, jaune, vert, &amp;quot;Ma capitale est La Paz&amp;quot;};&lt;br /&gt;
	deb::Enigme et{rouge, jaune, vert, &amp;quot;Mon premier est la plante sous laquelle il faut s’embrasser. Mon second est l’arrivée en ce monde.&amp;quot;};&lt;br /&gt;
	deb::Enigme eu{blanc, vert, rouge, &amp;quot;Mon premier est une sphère d’une substance dans une autre. Mon second est un mec. Mon troisième peut être cantonais, thai ou basmati. &amp;quot;};&lt;br /&gt;
	deb::Enigme ev{jaune, bleu, rouge, &amp;quot;Ma capitale est Bogota&amp;quot;};&lt;br /&gt;
	deb::Enigme ew{orange, blanc, vert, &amp;quot;Quel est ce pays ? Dpuf e’Jwpjsf&amp;quot;};&lt;br /&gt;
	deb::Enigme ex{vert, jaune, rouge, &amp;quot;Quel est ce pays ? -- .- .-.. ..&amp;quot;};&lt;br /&gt;
	deb::Enigme ey{vert, blanc, vert, &amp;quot;Quel est ce pays ? 6443742&amp;quot;};&lt;br /&gt;
	deb::Enigme ez{rouge, blanc, rouge, &amp;quot;Pays du Macchu Picchu&amp;quot;};&lt;br /&gt;
	deb::Enigme eea{blanc, bleu, rouge, &amp;quot;Pays du Kremlin&amp;quot;};&lt;br /&gt;
	deb::Enigme eeb{rouge, blanc, noir, &amp;quot;Quel est ce pays ? Xdldm&amp;quot;};&lt;br /&gt;
	std::vector&amp;lt;deb::Enigme&amp;gt; vectEnigme{ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ez,eea,eeb};&lt;br /&gt;
&lt;br /&gt;
	//loop&lt;br /&gt;
	&lt;br /&gt;
	if (appui sur bouton acquisition)  //on enregistre la couleur actuelle&lt;br /&gt;
	{	&lt;br /&gt;
		int a,b,c = 10,10,1024; //on recupere les valeurs du capteur&lt;br /&gt;
		&lt;br /&gt;
		if (test==4) &lt;br /&gt;
		{&lt;br /&gt;
			bonneReponse=0; //il y a trop de reponse le resultat sera faut&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if (test==3)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.trois.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=4;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==2)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.deux.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=3;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==1)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.un.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=2;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
		&lt;br /&gt;
	if (appui sur le bouton validé and erreur!=-1)//on regarde le resultat final&lt;br /&gt;
	{&lt;br /&gt;
		if (bonneReponse==3) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Victoire ! Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==0) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as fait une erreur. Repars de zéro et essaye encore. \n&amp;quot;;&lt;br /&gt;
			erreur =1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==1) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as perdu. Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	if (appui sur bouton validé and erreur==-1) //lancement nouvelle enigme&lt;br /&gt;
	{	&lt;br /&gt;
		srand((unsigned) time(NULL));&lt;br /&gt;
		deb::Enigme enigmeEnCours=vectEnigme[rand() % 28];&lt;br /&gt;
		std::cout &amp;lt;&amp;lt; enigmeEnCours.question &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
		erreur=0;&lt;br /&gt;
		test=1;&lt;br /&gt;
		bonneReponse=0;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.cpp:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb &lt;br /&gt;
{&lt;br /&gt;
	bool Color::isitme(int r,int g,int b) const&lt;br /&gt;
	{&lt;br /&gt;
		if (r&amp;lt;(red-200)) {return false;}&lt;br /&gt;
		if (r&amp;gt;(red+200)) {return false;}&lt;br /&gt;
		if (g&amp;lt;(green-200)) {return false;}&lt;br /&gt;
		if (g&amp;gt;(green+200)) {return false;}&lt;br /&gt;
		if (b&amp;lt;(blue-200)) {return false;}&lt;br /&gt;
		if (b&amp;gt;(blue+200)) {return false;}	&lt;br /&gt;
		return true;&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}// namespace deb&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.hpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_COLOR_HPP&lt;br /&gt;
#define DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Color&lt;br /&gt;
  {&lt;br /&gt;
    int red,green,blue;&lt;br /&gt;
&lt;br /&gt;
    Color(int red, int green, int blue): red{std::move(red)}, green{std::move(green)}, blue{std::move(blue)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
    bool isitme(int r,int g,int b) const;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
enigme.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_ENIGME_HPP&lt;br /&gt;
#define DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Enigme&lt;br /&gt;
  {&lt;br /&gt;
    Color un,deux,trois;&lt;br /&gt;
    std::string question;&lt;br /&gt;
&lt;br /&gt;
    Enigme(Color u, Color d, Color t, std::string q): un{std::move(u)}, deux{std::move(d)}, trois{std::move(t)}, question{std::move(q)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''code BP :'''&lt;br /&gt;
&lt;br /&gt;
Les_petits_voyageurs.ino&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;Test_BP.h&amp;quot;&lt;br /&gt;
#include &amp;quot;Arduino.h&amp;quot;&lt;br /&gt;
int lancement=0;&lt;br /&gt;
&lt;br /&gt;
void setup()&lt;br /&gt;
{&lt;br /&gt;
  Serial.begin(115200);&lt;br /&gt;
  setup_BP();&lt;br /&gt;
  //constantes générées aussi en dehors de la loop&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void loop()&lt;br /&gt;
{&lt;br /&gt;
  lancement=BP(lancement);&lt;br /&gt;
  if (lancement==1)&lt;br /&gt;
  {&lt;br /&gt;
    delay(20);&lt;br /&gt;
    Serial.println(&amp;quot;Bonjour ! &amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Test_BP.cpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#include &amp;quot;Test_BP.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
//BP1&lt;br /&gt;
const int BP1=4;&lt;br /&gt;
&lt;br /&gt;
int boutonState = 0;&lt;br /&gt;
int lastBoutonState = 0;&lt;br /&gt;
&lt;br /&gt;
void setup_BP()&lt;br /&gt;
{&lt;br /&gt;
  //setup fonction bouton&lt;br /&gt;
  pinMode(BP1, INPUT);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int BP(int lancement) //permet de détecter les FM/FD du BP&lt;br /&gt;
{&lt;br /&gt;
  /*&lt;br /&gt;
  Serial.print(&amp;quot;etat bouton : &amp;quot;);&lt;br /&gt;
  Serial.println(boutonState);&lt;br /&gt;
  Serial.print(&amp;quot;etat bouton precedent : &amp;quot;);&lt;br /&gt;
  Serial.println(lastBoutonState);&lt;br /&gt;
  */&lt;br /&gt;
&lt;br /&gt;
  boutonState=digitalRead(BP1);&lt;br /&gt;
  Serial.println(boutonState);&lt;br /&gt;
  if (boutonState==HIGH)&lt;br /&gt;
  {&lt;br /&gt;
    if (boutonState != lastBoutonState)&lt;br /&gt;
    {&lt;br /&gt;
      lancement=1;&lt;br /&gt;
      //Serial.println(&amp;quot;00&amp;quot;);&lt;br /&gt;
      lastBoutonState=boutonState;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      lancement=0; //état récurrent de lancement, on reste appuyé sur BP&lt;br /&gt;
      //Serial.println(&amp;quot;10&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  else&lt;br /&gt;
  {&lt;br /&gt;
    if (boutonState != lastBoutonState)&lt;br /&gt;
    {&lt;br /&gt;
      //Serial.println(&amp;quot;01&amp;quot;);&lt;br /&gt;
      lancement=0;&lt;br /&gt;
      lastBoutonState=boutonState;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      //Serial.println(&amp;quot;11&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  //Serial.println(lancement);&lt;br /&gt;
&lt;br /&gt;
  return lancement;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#ifndef TEST_BP_H&lt;br /&gt;
#define TEST_BP_H&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup_BP();&lt;br /&gt;
int BP(int lancement);&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''code capteur:'''&lt;br /&gt;
&lt;br /&gt;
color_detection_methods.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/* This file is taken from MyOwnBricks project.&lt;br /&gt;
 * MyOwnBricks is a library for the emulation of LEGO PoweredUp sensors on microcontrollers&lt;br /&gt;
 * Copyright (C) 2021-2022 Ysard - &amp;lt;ysard@users.noreply.github.com&amp;gt;&lt;br /&gt;
 *&lt;br /&gt;
 * This program is free software: you can redistribute it and/or modify&lt;br /&gt;
 * it under the terms of the GNU General Public License as published by&lt;br /&gt;
 * the Free Software Foundation, either version 3 of the License, or&lt;br /&gt;
 * (at your option) any later version.&lt;br /&gt;
 *&lt;br /&gt;
 * This program is distributed in the hope that it will be useful,&lt;br /&gt;
 * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 * GNU General Public License for more details.&lt;br /&gt;
 *&lt;br /&gt;
 * You should have received a copy of the GNU General Public License&lt;br /&gt;
 * along with this program.  If not, see &amp;lt;https://www.gnu.org/licenses/&amp;gt;.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Discretize colors and return uint8_t color code.&lt;br /&gt;
 *    Available colors: COLOR_NONE, COLOR_BLACK, COLOR_BLUE,&lt;br /&gt;
 *    COLOR_GREEN, COLOR_RED, COLOR_WHITE.&lt;br /&gt;
 *&lt;br /&gt;
 *    Generally speaking, stable measuring conditions are required, i.e.,&lt;br /&gt;
 *    a stable measuring distance not exceeding 4 cm, no interfering light&lt;br /&gt;
 *    reaching the side of the sensor. Think about matt black sensor shroud.&lt;br /&gt;
 *&lt;br /&gt;
 *    Metrics:&lt;br /&gt;
 *      - BASIC_RGB: Simple comparison between channels;&lt;br /&gt;
 *          Very fast but is likely to produce errors.&lt;br /&gt;
 *      - MANHATTAN: Sum of absolute values of distances.&lt;br /&gt;
 *          Quite heavy, but quite accurate if the reference values have been&lt;br /&gt;
 *          measured seriously and if the measurement environment is controlled&lt;br /&gt;
 *          (reproducible). Distance between the sensor and the object should be&lt;br /&gt;
 *          the same as during learning.&lt;br /&gt;
 *          https://fr.wikipedia.org/wiki/Distance_de_Manhattan&lt;br /&gt;
 *     - CANBERRA: A weighted version of Manhattan distance;&lt;br /&gt;
 *          Very heavy but brings a higher accuracy and more tolerance/stability to variations&lt;br /&gt;
 *          in the measurement environment.&lt;br /&gt;
 *          Note: The manipulation of decimal numbers should be avoided&lt;br /&gt;
 *          on microcontrollers... Does it worth it? Probably not.&lt;br /&gt;
 *          https://en.wikipedia.org/wiki/Canberra_distance&lt;br /&gt;
 */&lt;br /&gt;
//#define BASIC_RGB&lt;br /&gt;
//#define MANHATTAN&lt;br /&gt;
//#define CANBERRA&lt;br /&gt;
&lt;br /&gt;
// Colors (detected &amp;amp; LED (except NONE for this last one)) expected values&lt;br /&gt;
#define COLOR_NONE      0xFF&lt;br /&gt;
#define COLOR_BLACK     0&lt;br /&gt;
#define COLOR_PINK      1&lt;br /&gt;
#define COLOR_PURPLE    2&lt;br /&gt;
#define COLOR_BLUE      3&lt;br /&gt;
#define COLOR_LIGHTBLUE 4&lt;br /&gt;
#define COLOR_CYAN      5&lt;br /&gt;
#define COLOR_GREEN     6&lt;br /&gt;
#define COLOR_YELLOW    7&lt;br /&gt;
#define COLOR_ORANGE    8&lt;br /&gt;
#define COLOR_RED       9&lt;br /&gt;
#define COLOR_WHITE     10&lt;br /&gt;
&lt;br /&gt;
extern uint16_t red, green, blue;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#ifdef BASIC_RGB&lt;br /&gt;
uint8_t detectColor(const uint16_t &amp;amp;red, const uint16_t &amp;amp;green, const uint16_t &amp;amp;blue) {&lt;br /&gt;
    if ((red &amp;gt; green) &amp;amp;&amp;amp; (red &amp;gt; blue)) {&lt;br /&gt;
        return COLOR_RED;&lt;br /&gt;
    } else if ((green &amp;gt; red) &amp;amp;&amp;amp; (green &amp;gt; blue)) {&lt;br /&gt;
        return COLOR_GREEN;&lt;br /&gt;
    } else if ((blue &amp;gt; red) &amp;amp;&amp;amp; (blue &amp;gt; green)) {&lt;br /&gt;
        return COLOR_BLUE;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#if (defined(MANHATTAN) || defined(CANBERRA))&lt;br /&gt;
// *_1: measures at 1 cm&lt;br /&gt;
// *_3: measures at 3 cms&lt;br /&gt;
const uint16_t SAMPLES[][3] = {&lt;br /&gt;
    { 297,  83,  56 }, // RED_1&lt;br /&gt;
    {  43,  20,  17 }, // RED_3&lt;br /&gt;
    {  35, 142, 193 }, // BLUE_1&lt;br /&gt;
    {  35,  94, 116 }, // BLUE_3&lt;br /&gt;
    {  86, 257, 257 }, // CYAN_1&lt;br /&gt;
    {  36,  98,  97 }, // CYAN_3&lt;br /&gt;
    { 120, 141,  46 }, // YELLOW_1&lt;br /&gt;
    {  72,  73,  30 }, // YELLOW_3&lt;br /&gt;
    { 338, 373, 120 }, // YELLOW_PLQ_1&lt;br /&gt;
    { 159, 267, 201 }, // WHITE_1&lt;br /&gt;
    {  87, 126, 102 }, // WHITE_3&lt;br /&gt;
    {  89, 322, 163 }, // GREEN_1&lt;br /&gt;
    {  58, 106,  68 }, // GREEN_3&lt;br /&gt;
    { 103, 189,  57 }, // GREEN_LIGHT_1&lt;br /&gt;
    {  51,  77,  33 }, // GREEN_LIGHT_3&lt;br /&gt;
    {  26,  34,  28 }  // BLACK_1&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
const uint8_t SAMPLES_MAP[] = {&lt;br /&gt;
    COLOR_RED,    COLOR_RED,&lt;br /&gt;
    COLOR_BLUE,   COLOR_BLUE,&lt;br /&gt;
    COLOR_BLUE,   COLOR_BLUE,&lt;br /&gt;
    COLOR_YELLOW, COLOR_YELLOW,COLOR_YELLOW,&lt;br /&gt;
    COLOR_WHITE,  COLOR_WHITE,&lt;br /&gt;
    COLOR_GREEN,  COLOR_GREEN,&lt;br /&gt;
    COLOR_GREEN,  COLOR_GREEN,&lt;br /&gt;
    COLOR_BLACK&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// Number of samples&lt;br /&gt;
const uint8_t samplesCount = sizeof(SAMPLES) / sizeof(SAMPLES[0]);&lt;br /&gt;
&lt;br /&gt;
uint8_t detectColor(const uint16_t &amp;amp;red, const uint16_t &amp;amp;green, const uint16_t &amp;amp;blue) {&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
    uint16_t minDist = 10000;&lt;br /&gt;
    uint16_t expDist;&lt;br /&gt;
#else&lt;br /&gt;
    float minDist = 3;&lt;br /&gt;
    float expDist;&lt;br /&gt;
#endif&lt;br /&gt;
    uint8_t bestSampleIndex = 0;&lt;br /&gt;
&lt;br /&gt;
    for (uint8_t i = 0; i &amp;lt; samplesCount; i++) {&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
        expDist = abs(static_cast&amp;lt;int16_t&amp;gt;(red - SAMPLES[i][0]))&lt;br /&gt;
                  + abs(static_cast&amp;lt;int16_t&amp;gt;(green - SAMPLES[i][1]))&lt;br /&gt;
                  + abs(static_cast&amp;lt;int16_t&amp;gt;(blue - SAMPLES[i][2]));&lt;br /&gt;
#else&lt;br /&gt;
        // Yeah it's ugly but abs() of Arduino is a macro different from the stl implementation&lt;br /&gt;
        // moreover the parameter must be explicitly signed.&lt;br /&gt;
        // The numerator or denominator must be a float.&lt;br /&gt;
        // https://www.best-microcontroller-projects.com/arduino-absolute-value.html&lt;br /&gt;
        // https://github.com/arduino/reference-en/issues/362&lt;br /&gt;
        expDist = (abs(static_cast&amp;lt;int16_t&amp;gt;(red - SAMPLES[i][0])) / static_cast&amp;lt;float&amp;gt;(red + SAMPLES[i][0]))&lt;br /&gt;
                  + (abs(static_cast&amp;lt;int16_t&amp;gt;(green - SAMPLES[i][1])) / static_cast&amp;lt;float&amp;gt;(green + SAMPLES[i][1]))&lt;br /&gt;
                  + (abs(static_cast&amp;lt;int16_t&amp;gt;(blue - SAMPLES[i][2])) / static_cast&amp;lt;float&amp;gt;(blue + SAMPLES[i][2]));&lt;br /&gt;
#endif&lt;br /&gt;
        if (expDist &amp;lt; minDist) {&lt;br /&gt;
            bestSampleIndex = i;&lt;br /&gt;
            minDist         = expDist;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Arbitrary threshold to avoid erroneous identifications&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
    if (minDist &amp;gt; 100) {&lt;br /&gt;
#else&lt;br /&gt;
    if (minDist &amp;gt; 1.9) { // Red color is quite difficult to identify even with this high threashold&lt;br /&gt;
#endif&lt;br /&gt;
        // Matching is not acceptable&lt;br /&gt;
        return COLOR_NONE;&lt;br /&gt;
    }&lt;br /&gt;
    // Get color value expected by the hub&lt;br /&gt;
    return SAMPLES_MAP[bestSampleIndex];&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Color_sensor.ino&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/* This file is taken from MyOwnBricks project.&lt;br /&gt;
 * MyOwnBricks is a library for the emulation of LEGO PoweredUp sensors on microcontrollers&lt;br /&gt;
 * Copyright (C) 2021-2022 Ysard - &amp;lt;ysard@users.noreply.github.com&amp;gt;&lt;br /&gt;
 *&lt;br /&gt;
 * This program is free software: you can redistribute it and/or modify&lt;br /&gt;
 * it under the terms of the GNU General Public License as published by&lt;br /&gt;
 * the Free Software Foundation, either version 3 of the License, or&lt;br /&gt;
 * (at your option) any later version.&lt;br /&gt;
 *&lt;br /&gt;
 * This program is distributed in the hope that it will be useful,&lt;br /&gt;
 * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 * GNU General Public License for more details.&lt;br /&gt;
 *&lt;br /&gt;
 * You should have received a copy of the GNU General Public License&lt;br /&gt;
 * along with this program.  If not, see &amp;lt;https://www.gnu.org/licenses/&amp;gt;.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 *   Sensor   Pro Micro&lt;br /&gt;
 *   SCL      SCL pin 3&lt;br /&gt;
 *   SDA      SDA pin 2&lt;br /&gt;
 *   INT      PCINT4, port PB4, pin 8&lt;br /&gt;
 *   VIN      VCC (3.3V)&lt;br /&gt;
 *   GND      GND&lt;br /&gt;
 *&lt;br /&gt;
 *   LED pin of the sensor can be connected to its INT pin.&lt;br /&gt;
 *   By doing this the leds will turn off when the measurements are done.&lt;br /&gt;
 *&lt;br /&gt;
 *   Pro Micro:&lt;br /&gt;
 *   Serial: UART via USB&lt;br /&gt;
 *   Serial1: pin 1 (TX), pin 0 (RX)&lt;br /&gt;
 */&lt;br /&gt;
#include &amp;lt;Wire.h&amp;gt;&lt;br /&gt;
#include &amp;lt;tcs34725.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define MANHATTAN&lt;br /&gt;
#include &amp;quot;color_detection_methods.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#define RGB_SENSOR_INTERRUPT_PIN     8&lt;br /&gt;
#define RGB_SENSOR_INTERRUPT_PORT    PB4 // Port alias of pin 8 to be used in tstPin()&lt;br /&gt;
// Equivalent of digitalRead but for PORTB pins &amp;amp; much more quicker for a use in an ISR&lt;br /&gt;
// https://www.arduino.cc/en/Reference/PortManipulation&lt;br /&gt;
#define tstPin(b)                             ((PINB &amp;amp; (1 &amp;lt;&amp;lt; (b))) != 0)&lt;br /&gt;
#define LUX_TO_PERCENTAGE(val)                (getPercentage(val, 0.0105, -0.0843))&lt;br /&gt;
#define REFLECTED_LIGHT_TO_PERCENTAGE(val)    (getPercentage(val, 0.0017, -8))&lt;br /&gt;
&lt;br /&gt;
uint8_t       sensorColor;&lt;br /&gt;
uint8_t       reflectedLight;&lt;br /&gt;
uint8_t       ambientLight;&lt;br /&gt;
uint16_t      red, green, blue, clear, lux;&lt;br /&gt;
volatile bool sensorReady;&lt;br /&gt;
&lt;br /&gt;
// Default settings: TCS34725_GAIN_4X,  TCS34725_INTEGRATIONTIME_154MS&lt;br /&gt;
TCS34725      rgb_sensor;&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Callback for PCINT4 interrupt (PCINT0 - PCINT7)&lt;br /&gt;
 */&lt;br /&gt;
ISR(PCINT0_vect) {&lt;br /&gt;
    // If RGB_SENSOR_INTERRUPT_PORT is LOW, sensor is ready&lt;br /&gt;
    if (!tstPin(RGB_SENSOR_INTERRUPT_PORT))&lt;br /&gt;
        sensorReady = true;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Map lux/reflected light values to percentages&lt;br /&gt;
 *    Weights of the equation must be calculated empirically&lt;br /&gt;
 *    Map equation: y = ax + b&lt;br /&gt;
 *    System to solve:&lt;br /&gt;
 *      100% = MaxRawValue * a + b&lt;br /&gt;
 *      0% = MinRawValue * a + b&lt;br /&gt;
 *&lt;br /&gt;
 *    See macros LUX_TO_PERCENTAGE and REFLECTED_LIGHT_TO_PERCENTAGE.&lt;br /&gt;
 */&lt;br /&gt;
uint8_t getPercentage(const uint16_t rawValue, const float&amp;amp; a_coef, const float&amp;amp; b_coef) {&lt;br /&gt;
    int8_t percent = static_cast&amp;lt;int8_t&amp;gt;(rawValue * a_coef + b_coef);&lt;br /&gt;
    if (percent &amp;gt; 100)&lt;br /&gt;
        return 100;&lt;br /&gt;
    if (percent &amp;lt; 0)&lt;br /&gt;
        return 0;&lt;br /&gt;
    return static_cast&amp;lt;uint8_t&amp;gt;(percent);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
    Serial.begin(115200);&lt;br /&gt;
    while (!Serial) {&lt;br /&gt;
        // Wait for serial port to connect.&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Device config&lt;br /&gt;
    sensorColor = COLOR_NONE;&lt;br /&gt;
&lt;br /&gt;
    // Colour sensor config&lt;br /&gt;
    // Configure PinChange Interrupt&lt;br /&gt;
    // See https://github.com/NicoHood/PinChangeInterrupt&lt;br /&gt;
    // Note: INT-0,1,2,3 are occupied by UART and i2c transmissions on pro-micro&lt;br /&gt;
    // /!\ DO NOT activate pullup from the arduino, the INT pin is usually already&lt;br /&gt;
    // pulled up into the sensor board itself to 3.3V. These pins (SCL, SDA, INT)&lt;br /&gt;
    // ARE NOT tolerant to more than VDD + 0.5V. Note that I2C pins are connected&lt;br /&gt;
    // to level shifters, but not the others.&lt;br /&gt;
    pinMode(RGB_SENSOR_INTERRUPT_PIN, INPUT); // TCS interrupt output is Active-LOW and Open-Drain&lt;br /&gt;
    cli();                                    // Disable all interrupts: Avoid first and not wanted trigger of the interrupt&lt;br /&gt;
    PCICR  |= 0b00000001;                     // enable PORTB pin change interrupt&lt;br /&gt;
    PCMSK0 |= 0b00010000;                     // enable PB4, PCINT4, pin 8&lt;br /&gt;
    sei();                                    // Enable all interrupts&lt;br /&gt;
&lt;br /&gt;
    while (!rgb_sensor.begin()) {&lt;br /&gt;
        Serial.println(F(&amp;quot;TCS34725 NOT found&amp;quot;));&lt;br /&gt;
        delay(200);&lt;br /&gt;
    }&lt;br /&gt;
    Serial.println(F(&amp;quot;Found sensor&amp;quot;));&lt;br /&gt;
&lt;br /&gt;
    // Set persistence filter to generate an interrupt for every RGB Cycle,&lt;br /&gt;
    // regardless of the integration limits&lt;br /&gt;
    rgb_sensor.tcs.write8(TCS34725_PERS, TCS34725_PERS_NONE);&lt;br /&gt;
    // RGBC interrupt enable. When asserted, permits RGBC interrupts to be generated.&lt;br /&gt;
    rgb_sensor.tcs.setInterrupt(true);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void loop()&lt;br /&gt;
{&lt;br /&gt;
    if (sensorReady) {&lt;br /&gt;
        // Data measurement&lt;br /&gt;
        // noDelay param set to true: Asynchronous mode, must be used with interrupt configured.&lt;br /&gt;
        bool status = rgb_sensor.updateData(true);&lt;br /&gt;
&lt;br /&gt;
        if (status) {&lt;br /&gt;
            // Ambient light (lux) computation&lt;br /&gt;
            rgb_sensor.updateLux();&lt;br /&gt;
&lt;br /&gt;
            int16_t lux = lround(rgb_sensor.lux);&lt;br /&gt;
&lt;br /&gt;
            // Sometimes lux values are below 0; this coincides with erroneous data&lt;br /&gt;
            // Moreover, we discard data taken below 40 lux.&lt;br /&gt;
            if ((lux &amp;gt;= 40) &amp;amp;&amp;amp; (static_cast&amp;lt;uint16_t&amp;gt;(lux) &amp;lt;= rgb_sensor.maxlux)) {&lt;br /&gt;
                // Set ambient light (lux) - map 0-100&lt;br /&gt;
                //ambientLight = map(rgb_sensor.lux, 0, rgb_sensor.maxlux, 0, 100);&lt;br /&gt;
                ambientLight = LUX_TO_PERCENTAGE(lux); // cast ?&lt;br /&gt;
&lt;br /&gt;
                // RGBC Channels are usable&lt;br /&gt;
                // Map values to max ~440;&lt;br /&gt;
                // Continuous values from 0-65535 (16bits) to 0-1023 (10bits)&lt;br /&gt;
                red   = rgb_sensor.r_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
                green = rgb_sensor.g_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
                blue  = rgb_sensor.b_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
&lt;br /&gt;
                // Set clear channel as reflected light - map 0-100&lt;br /&gt;
                reflectedLight = REFLECTED_LIGHT_TO_PERCENTAGE(rgb_sensor.c_comp);&lt;br /&gt;
&lt;br /&gt;
                // Set detected color&lt;br /&gt;
                sensorColor = detectColor(red, green, blue);&lt;br /&gt;
            } else {&lt;br /&gt;
                sensorColor = COLOR_NONE;&lt;br /&gt;
            }&lt;br /&gt;
            clear = rgb_sensor.c_comp &amp;gt;&amp;gt; 6;&lt;br /&gt;
            /*&lt;br /&gt;
            // Human readable debugging&lt;br /&gt;
            Serial.print(&amp;quot;Lux: &amp;quot;); Serial.print(rgb_sensor.lux, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; max: &amp;quot;); Serial.print(rgb_sensor.maxlux);&lt;br /&gt;
            Serial.print(&amp;quot;; R: &amp;quot;); Serial.print(red, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; G: &amp;quot;); Serial.print(green, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; B: &amp;quot;); Serial.print(blue, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; C: &amp;quot;); Serial.println(clear, DEC);&lt;br /&gt;
            */&lt;br /&gt;
&lt;br /&gt;
            // Spreadsheet debugging&lt;br /&gt;
            Serial.print(rgb_sensor.lux, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(rgb_sensor.maxlux); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(red, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(green, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(blue, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.println(clear, DEC);&lt;br /&gt;
        } else {&lt;br /&gt;
            sensorColor = COLOR_NONE;&lt;br /&gt;
            Serial.println(F(&amp;quot;not valid data! wait next measure&amp;quot;));&lt;br /&gt;
        }&lt;br /&gt;
        // Interrupt tear down&lt;br /&gt;
        rgb_sensor.tcs.clearInterrupt();&lt;br /&gt;
        sensorReady = false;&lt;br /&gt;
        PCIFR      &amp;amp;= ~(1 &amp;lt;&amp;lt; PCIF0); // clear PC interrupt flag in case of bounce&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Fini1.jpeg&amp;diff=22077</id>
		<title>Fichier:Fini1.jpeg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Fini1.jpeg&amp;diff=22077"/>
				<updated>2023-01-26T14:13:31Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Protection.jpeg&amp;diff=22073</id>
		<title>Fichier:Protection.jpeg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Protection.jpeg&amp;diff=22073"/>
				<updated>2023-01-26T14:11:01Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Fini2.jpeg&amp;diff=22072</id>
		<title>Fichier:Fini2.jpeg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Fini2.jpeg&amp;diff=22072"/>
				<updated>2023-01-26T14:09:44Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22071</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22071"/>
				<updated>2023-01-26T14:08:17Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : /* Code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
* colle à bois&lt;br /&gt;
* peintures et pinceaux&lt;br /&gt;
* cutter&lt;br /&gt;
* pic à broque&lt;br /&gt;
* scotch &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:colle1.jpeg|600px]] —&amp;gt; [[Fichier:colle2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 11:'''&lt;br /&gt;
Creer une petite protection pour le capteur de couleur afin de pouvoir le déplacer dans le labyrinthe. &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
prog.cpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
#include &amp;quot;enigme.hpp&amp;quot;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;random&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
	//variable initiale&lt;br /&gt;
	int erreur=-1;&lt;br /&gt;
	int test=1;&lt;br /&gt;
	int bonneReponse=0;&lt;br /&gt;
&lt;br /&gt;
	//liste des couleurs disponible pour les drapeaux &lt;br /&gt;
	deb::Color rouge{1024, 0, 0};&lt;br /&gt;
	deb::Color bleu{0, 0, 1024};&lt;br /&gt;
	deb::Color blanc{1024, 1024, 1024};&lt;br /&gt;
	deb::Color noir{0, 0, 0};&lt;br /&gt;
	deb::Color vert{0, 1024 ,0};&lt;br /&gt;
	deb::Color orange{0, 0, 1024};&lt;br /&gt;
	deb::Color jaune{0, 0, 1024};&lt;br /&gt;
&lt;br /&gt;
	//liste des enigmes &lt;br /&gt;
	deb::Enigme ea{bleu, blanc, rouge, &amp;quot;Pays du champagne&amp;quot;};&lt;br /&gt;
	deb::Enigme eb{vert, blanc, rouge, &amp;quot;Pays des pâtes&amp;quot;};&lt;br /&gt;
	deb::Enigme ec{vert, blanc, orange, &amp;quot;Pays des moutons &amp;quot;};&lt;br /&gt;
	deb::Enigme ed{rouge, blanc, rouge, &amp;quot;Pays d’origine de Marie Antoinette&amp;quot;};&lt;br /&gt;
	deb::Enigme ee{noir, rouge, jaune, &amp;quot;Pays d’origine des knödels &amp;quot;};&lt;br /&gt;
	deb::Enigme ef{jaune, vert, rouge, &amp;quot;Quel est ce pays ? Mjubojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eg{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? .-.. ..- -..- . -- -... --- ..- .-. --.&amp;quot;};&lt;br /&gt;
	deb::Enigme eh{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? Ozxr-Azr&amp;quot;};&lt;br /&gt;
	deb::Enigme ei{noir, jaune, rouge, &amp;quot;Pays de la gaufre&amp;quot;};&lt;br /&gt;
	deb::Enigme ej{vert, jaune, bleu, &amp;quot;Mon premier est un mec. Mon second qualifie quelque chose d’agréable.&amp;quot;};&lt;br /&gt;
	deb::Enigme ek{blanc, bleu, noir, &amp;quot;Quel est ce pays ? . ... - --- -. .. .&amp;quot;};&lt;br /&gt;
	deb::Enigme el{rouge, blanc, rouge, &amp;quot;Quel est ce pays ? 53886643&amp;quot;};&lt;br /&gt;
	deb::Enigme em{rouge, blanc, vert, &amp;quot;Mon premier est un pronom personnel indéfini. Mon second contient autant de rouge que de vert que de bleu.&amp;quot;};&lt;br /&gt;
	deb::Enigme en{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? Spvnbojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eo{bleu, jaune, rouge, &amp;quot;Ma capitale est vieille &amp;quot;};&lt;br /&gt;
	deb::Enigme ep{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? - -.-. .... .- -..&amp;quot;};&lt;br /&gt;
	deb::Enigme eq{rouge, bleu, orange, &amp;quot;Son papier sent bon &amp;quot;};&lt;br /&gt;
	deb::Enigme er{bleu, rouge, vert, &amp;quot;Quel est ce pays ? 2937224526&amp;quot;};&lt;br /&gt;
	deb::Enigme es{rouge, jaune, vert, &amp;quot;Ma capitale est La Paz&amp;quot;};&lt;br /&gt;
	deb::Enigme et{rouge, jaune, vert, &amp;quot;Mon premier est la plante sous laquelle il faut s’embrasser. Mon second est l’arrivée en ce monde.&amp;quot;};&lt;br /&gt;
	deb::Enigme eu{blanc, vert, rouge, &amp;quot;Mon premier est une sphère d’une substance dans une autre. Mon second est un mec. Mon troisième peut être cantonais, thai ou basmati. &amp;quot;};&lt;br /&gt;
	deb::Enigme ev{jaune, bleu, rouge, &amp;quot;Ma capitale est Bogota&amp;quot;};&lt;br /&gt;
	deb::Enigme ew{orange, blanc, vert, &amp;quot;Quel est ce pays ? Dpuf e’Jwpjsf&amp;quot;};&lt;br /&gt;
	deb::Enigme ex{vert, jaune, rouge, &amp;quot;Quel est ce pays ? -- .- .-.. ..&amp;quot;};&lt;br /&gt;
	deb::Enigme ey{vert, blanc, vert, &amp;quot;Quel est ce pays ? 6443742&amp;quot;};&lt;br /&gt;
	deb::Enigme ez{rouge, blanc, rouge, &amp;quot;Pays du Macchu Picchu&amp;quot;};&lt;br /&gt;
	deb::Enigme eea{blanc, bleu, rouge, &amp;quot;Pays du Kremlin&amp;quot;};&lt;br /&gt;
	deb::Enigme eeb{rouge, blanc, noir, &amp;quot;Quel est ce pays ? Xdldm&amp;quot;};&lt;br /&gt;
	std::vector&amp;lt;deb::Enigme&amp;gt; vectEnigme{ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ez,eea,eeb};&lt;br /&gt;
&lt;br /&gt;
	//loop&lt;br /&gt;
	&lt;br /&gt;
	if (appui sur bouton acquisition)  //on enregistre la couleur actuelle&lt;br /&gt;
	{	&lt;br /&gt;
		int a,b,c = 10,10,1024; //on recupere les valeurs du capteur&lt;br /&gt;
		&lt;br /&gt;
		if (test==4) &lt;br /&gt;
		{&lt;br /&gt;
			bonneReponse=0; //il y a trop de reponse le resultat sera faut&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if (test==3)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.trois.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=4;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==2)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.deux.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=3;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==1)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.un.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=2;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
		&lt;br /&gt;
	if (appui sur le bouton validé and erreur!=-1)//on regarde le resultat final&lt;br /&gt;
	{&lt;br /&gt;
		if (bonneReponse==3) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Victoire ! Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==0) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as fait une erreur. Repars de zéro et essaye encore. \n&amp;quot;;&lt;br /&gt;
			erreur =1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==1) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as perdu. Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	if (appui sur bouton validé and erreur==-1) //lancement nouvelle enigme&lt;br /&gt;
	{	&lt;br /&gt;
		srand((unsigned) time(NULL));&lt;br /&gt;
		deb::Enigme enigmeEnCours=vectEnigme[rand() % 28];&lt;br /&gt;
		std::cout &amp;lt;&amp;lt; enigmeEnCours.question &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
		erreur=0;&lt;br /&gt;
		test=1;&lt;br /&gt;
		bonneReponse=0;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.cpp:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb &lt;br /&gt;
{&lt;br /&gt;
	bool Color::isitme(int r,int g,int b) const&lt;br /&gt;
	{&lt;br /&gt;
		if (r&amp;lt;(red-200)) {return false;}&lt;br /&gt;
		if (r&amp;gt;(red+200)) {return false;}&lt;br /&gt;
		if (g&amp;lt;(green-200)) {return false;}&lt;br /&gt;
		if (g&amp;gt;(green+200)) {return false;}&lt;br /&gt;
		if (b&amp;lt;(blue-200)) {return false;}&lt;br /&gt;
		if (b&amp;gt;(blue+200)) {return false;}	&lt;br /&gt;
		return true;&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}// namespace deb&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.hpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_COLOR_HPP&lt;br /&gt;
#define DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Color&lt;br /&gt;
  {&lt;br /&gt;
    int red,green,blue;&lt;br /&gt;
&lt;br /&gt;
    Color(int red, int green, int blue): red{std::move(red)}, green{std::move(green)}, blue{std::move(blue)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
    bool isitme(int r,int g,int b) const;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
enigme.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_ENIGME_HPP&lt;br /&gt;
#define DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Enigme&lt;br /&gt;
  {&lt;br /&gt;
    Color un,deux,trois;&lt;br /&gt;
    std::string question;&lt;br /&gt;
&lt;br /&gt;
    Enigme(Color u, Color d, Color t, std::string q): un{std::move(u)}, deux{std::move(d)}, trois{std::move(t)}, question{std::move(q)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''code BP :'''&lt;br /&gt;
&lt;br /&gt;
Les_petits_voyageurs.ino&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;Test_BP.h&amp;quot;&lt;br /&gt;
#include &amp;quot;Arduino.h&amp;quot;&lt;br /&gt;
int lancement=0;&lt;br /&gt;
&lt;br /&gt;
void setup()&lt;br /&gt;
{&lt;br /&gt;
  Serial.begin(115200);&lt;br /&gt;
  setup_BP();&lt;br /&gt;
  //constantes générées aussi en dehors de la loop&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void loop()&lt;br /&gt;
{&lt;br /&gt;
  lancement=BP(lancement);&lt;br /&gt;
  if (lancement==1)&lt;br /&gt;
  {&lt;br /&gt;
    delay(20);&lt;br /&gt;
    Serial.println(&amp;quot;Bonjour ! &amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Test_BP.cpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#include &amp;quot;Test_BP.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
//BP1&lt;br /&gt;
const int BP1=4;&lt;br /&gt;
&lt;br /&gt;
int boutonState = 0;&lt;br /&gt;
int lastBoutonState = 0;&lt;br /&gt;
&lt;br /&gt;
void setup_BP()&lt;br /&gt;
{&lt;br /&gt;
  //setup fonction bouton&lt;br /&gt;
  pinMode(BP1, INPUT);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int BP(int lancement) //permet de détecter les FM/FD du BP&lt;br /&gt;
{&lt;br /&gt;
  /*&lt;br /&gt;
  Serial.print(&amp;quot;etat bouton : &amp;quot;);&lt;br /&gt;
  Serial.println(boutonState);&lt;br /&gt;
  Serial.print(&amp;quot;etat bouton precedent : &amp;quot;);&lt;br /&gt;
  Serial.println(lastBoutonState);&lt;br /&gt;
  */&lt;br /&gt;
&lt;br /&gt;
  boutonState=digitalRead(BP1);&lt;br /&gt;
  Serial.println(boutonState);&lt;br /&gt;
  if (boutonState==HIGH)&lt;br /&gt;
  {&lt;br /&gt;
    if (boutonState != lastBoutonState)&lt;br /&gt;
    {&lt;br /&gt;
      lancement=1;&lt;br /&gt;
      //Serial.println(&amp;quot;00&amp;quot;);&lt;br /&gt;
      lastBoutonState=boutonState;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      lancement=0; //état récurrent de lancement, on reste appuyé sur BP&lt;br /&gt;
      //Serial.println(&amp;quot;10&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  else&lt;br /&gt;
  {&lt;br /&gt;
    if (boutonState != lastBoutonState)&lt;br /&gt;
    {&lt;br /&gt;
      //Serial.println(&amp;quot;01&amp;quot;);&lt;br /&gt;
      lancement=0;&lt;br /&gt;
      lastBoutonState=boutonState;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      //Serial.println(&amp;quot;11&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  //Serial.println(lancement);&lt;br /&gt;
&lt;br /&gt;
  return lancement;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#ifndef TEST_BP_H&lt;br /&gt;
#define TEST_BP_H&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup_BP();&lt;br /&gt;
int BP(int lancement);&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''code capteur:'''&lt;br /&gt;
&lt;br /&gt;
color_detection_methods.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/* This file is taken from MyOwnBricks project.&lt;br /&gt;
 * MyOwnBricks is a library for the emulation of LEGO PoweredUp sensors on microcontrollers&lt;br /&gt;
 * Copyright (C) 2021-2022 Ysard - &amp;lt;ysard@users.noreply.github.com&amp;gt;&lt;br /&gt;
 *&lt;br /&gt;
 * This program is free software: you can redistribute it and/or modify&lt;br /&gt;
 * it under the terms of the GNU General Public License as published by&lt;br /&gt;
 * the Free Software Foundation, either version 3 of the License, or&lt;br /&gt;
 * (at your option) any later version.&lt;br /&gt;
 *&lt;br /&gt;
 * This program is distributed in the hope that it will be useful,&lt;br /&gt;
 * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 * GNU General Public License for more details.&lt;br /&gt;
 *&lt;br /&gt;
 * You should have received a copy of the GNU General Public License&lt;br /&gt;
 * along with this program.  If not, see &amp;lt;https://www.gnu.org/licenses/&amp;gt;.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Discretize colors and return uint8_t color code.&lt;br /&gt;
 *    Available colors: COLOR_NONE, COLOR_BLACK, COLOR_BLUE,&lt;br /&gt;
 *    COLOR_GREEN, COLOR_RED, COLOR_WHITE.&lt;br /&gt;
 *&lt;br /&gt;
 *    Generally speaking, stable measuring conditions are required, i.e.,&lt;br /&gt;
 *    a stable measuring distance not exceeding 4 cm, no interfering light&lt;br /&gt;
 *    reaching the side of the sensor. Think about matt black sensor shroud.&lt;br /&gt;
 *&lt;br /&gt;
 *    Metrics:&lt;br /&gt;
 *      - BASIC_RGB: Simple comparison between channels;&lt;br /&gt;
 *          Very fast but is likely to produce errors.&lt;br /&gt;
 *      - MANHATTAN: Sum of absolute values of distances.&lt;br /&gt;
 *          Quite heavy, but quite accurate if the reference values have been&lt;br /&gt;
 *          measured seriously and if the measurement environment is controlled&lt;br /&gt;
 *          (reproducible). Distance between the sensor and the object should be&lt;br /&gt;
 *          the same as during learning.&lt;br /&gt;
 *          https://fr.wikipedia.org/wiki/Distance_de_Manhattan&lt;br /&gt;
 *     - CANBERRA: A weighted version of Manhattan distance;&lt;br /&gt;
 *          Very heavy but brings a higher accuracy and more tolerance/stability to variations&lt;br /&gt;
 *          in the measurement environment.&lt;br /&gt;
 *          Note: The manipulation of decimal numbers should be avoided&lt;br /&gt;
 *          on microcontrollers... Does it worth it? Probably not.&lt;br /&gt;
 *          https://en.wikipedia.org/wiki/Canberra_distance&lt;br /&gt;
 */&lt;br /&gt;
//#define BASIC_RGB&lt;br /&gt;
//#define MANHATTAN&lt;br /&gt;
//#define CANBERRA&lt;br /&gt;
&lt;br /&gt;
// Colors (detected &amp;amp; LED (except NONE for this last one)) expected values&lt;br /&gt;
#define COLOR_NONE      0xFF&lt;br /&gt;
#define COLOR_BLACK     0&lt;br /&gt;
#define COLOR_PINK      1&lt;br /&gt;
#define COLOR_PURPLE    2&lt;br /&gt;
#define COLOR_BLUE      3&lt;br /&gt;
#define COLOR_LIGHTBLUE 4&lt;br /&gt;
#define COLOR_CYAN      5&lt;br /&gt;
#define COLOR_GREEN     6&lt;br /&gt;
#define COLOR_YELLOW    7&lt;br /&gt;
#define COLOR_ORANGE    8&lt;br /&gt;
#define COLOR_RED       9&lt;br /&gt;
#define COLOR_WHITE     10&lt;br /&gt;
&lt;br /&gt;
extern uint16_t red, green, blue;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#ifdef BASIC_RGB&lt;br /&gt;
uint8_t detectColor(const uint16_t &amp;amp;red, const uint16_t &amp;amp;green, const uint16_t &amp;amp;blue) {&lt;br /&gt;
    if ((red &amp;gt; green) &amp;amp;&amp;amp; (red &amp;gt; blue)) {&lt;br /&gt;
        return COLOR_RED;&lt;br /&gt;
    } else if ((green &amp;gt; red) &amp;amp;&amp;amp; (green &amp;gt; blue)) {&lt;br /&gt;
        return COLOR_GREEN;&lt;br /&gt;
    } else if ((blue &amp;gt; red) &amp;amp;&amp;amp; (blue &amp;gt; green)) {&lt;br /&gt;
        return COLOR_BLUE;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#if (defined(MANHATTAN) || defined(CANBERRA))&lt;br /&gt;
// *_1: measures at 1 cm&lt;br /&gt;
// *_3: measures at 3 cms&lt;br /&gt;
const uint16_t SAMPLES[][3] = {&lt;br /&gt;
    { 297,  83,  56 }, // RED_1&lt;br /&gt;
    {  43,  20,  17 }, // RED_3&lt;br /&gt;
    {  35, 142, 193 }, // BLUE_1&lt;br /&gt;
    {  35,  94, 116 }, // BLUE_3&lt;br /&gt;
    {  86, 257, 257 }, // CYAN_1&lt;br /&gt;
    {  36,  98,  97 }, // CYAN_3&lt;br /&gt;
    { 120, 141,  46 }, // YELLOW_1&lt;br /&gt;
    {  72,  73,  30 }, // YELLOW_3&lt;br /&gt;
    { 338, 373, 120 }, // YELLOW_PLQ_1&lt;br /&gt;
    { 159, 267, 201 }, // WHITE_1&lt;br /&gt;
    {  87, 126, 102 }, // WHITE_3&lt;br /&gt;
    {  89, 322, 163 }, // GREEN_1&lt;br /&gt;
    {  58, 106,  68 }, // GREEN_3&lt;br /&gt;
    { 103, 189,  57 }, // GREEN_LIGHT_1&lt;br /&gt;
    {  51,  77,  33 }, // GREEN_LIGHT_3&lt;br /&gt;
    {  26,  34,  28 }  // BLACK_1&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
const uint8_t SAMPLES_MAP[] = {&lt;br /&gt;
    COLOR_RED,    COLOR_RED,&lt;br /&gt;
    COLOR_BLUE,   COLOR_BLUE,&lt;br /&gt;
    COLOR_BLUE,   COLOR_BLUE,&lt;br /&gt;
    COLOR_YELLOW, COLOR_YELLOW,COLOR_YELLOW,&lt;br /&gt;
    COLOR_WHITE,  COLOR_WHITE,&lt;br /&gt;
    COLOR_GREEN,  COLOR_GREEN,&lt;br /&gt;
    COLOR_GREEN,  COLOR_GREEN,&lt;br /&gt;
    COLOR_BLACK&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// Number of samples&lt;br /&gt;
const uint8_t samplesCount = sizeof(SAMPLES) / sizeof(SAMPLES[0]);&lt;br /&gt;
&lt;br /&gt;
uint8_t detectColor(const uint16_t &amp;amp;red, const uint16_t &amp;amp;green, const uint16_t &amp;amp;blue) {&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
    uint16_t minDist = 10000;&lt;br /&gt;
    uint16_t expDist;&lt;br /&gt;
#else&lt;br /&gt;
    float minDist = 3;&lt;br /&gt;
    float expDist;&lt;br /&gt;
#endif&lt;br /&gt;
    uint8_t bestSampleIndex = 0;&lt;br /&gt;
&lt;br /&gt;
    for (uint8_t i = 0; i &amp;lt; samplesCount; i++) {&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
        expDist = abs(static_cast&amp;lt;int16_t&amp;gt;(red - SAMPLES[i][0]))&lt;br /&gt;
                  + abs(static_cast&amp;lt;int16_t&amp;gt;(green - SAMPLES[i][1]))&lt;br /&gt;
                  + abs(static_cast&amp;lt;int16_t&amp;gt;(blue - SAMPLES[i][2]));&lt;br /&gt;
#else&lt;br /&gt;
        // Yeah it's ugly but abs() of Arduino is a macro different from the stl implementation&lt;br /&gt;
        // moreover the parameter must be explicitly signed.&lt;br /&gt;
        // The numerator or denominator must be a float.&lt;br /&gt;
        // https://www.best-microcontroller-projects.com/arduino-absolute-value.html&lt;br /&gt;
        // https://github.com/arduino/reference-en/issues/362&lt;br /&gt;
        expDist = (abs(static_cast&amp;lt;int16_t&amp;gt;(red - SAMPLES[i][0])) / static_cast&amp;lt;float&amp;gt;(red + SAMPLES[i][0]))&lt;br /&gt;
                  + (abs(static_cast&amp;lt;int16_t&amp;gt;(green - SAMPLES[i][1])) / static_cast&amp;lt;float&amp;gt;(green + SAMPLES[i][1]))&lt;br /&gt;
                  + (abs(static_cast&amp;lt;int16_t&amp;gt;(blue - SAMPLES[i][2])) / static_cast&amp;lt;float&amp;gt;(blue + SAMPLES[i][2]));&lt;br /&gt;
#endif&lt;br /&gt;
        if (expDist &amp;lt; minDist) {&lt;br /&gt;
            bestSampleIndex = i;&lt;br /&gt;
            minDist         = expDist;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Arbitrary threshold to avoid erroneous identifications&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
    if (minDist &amp;gt; 100) {&lt;br /&gt;
#else&lt;br /&gt;
    if (minDist &amp;gt; 1.9) { // Red color is quite difficult to identify even with this high threashold&lt;br /&gt;
#endif&lt;br /&gt;
        // Matching is not acceptable&lt;br /&gt;
        return COLOR_NONE;&lt;br /&gt;
    }&lt;br /&gt;
    // Get color value expected by the hub&lt;br /&gt;
    return SAMPLES_MAP[bestSampleIndex];&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Color_sensor.ino&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/* This file is taken from MyOwnBricks project.&lt;br /&gt;
 * MyOwnBricks is a library for the emulation of LEGO PoweredUp sensors on microcontrollers&lt;br /&gt;
 * Copyright (C) 2021-2022 Ysard - &amp;lt;ysard@users.noreply.github.com&amp;gt;&lt;br /&gt;
 *&lt;br /&gt;
 * This program is free software: you can redistribute it and/or modify&lt;br /&gt;
 * it under the terms of the GNU General Public License as published by&lt;br /&gt;
 * the Free Software Foundation, either version 3 of the License, or&lt;br /&gt;
 * (at your option) any later version.&lt;br /&gt;
 *&lt;br /&gt;
 * This program is distributed in the hope that it will be useful,&lt;br /&gt;
 * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 * GNU General Public License for more details.&lt;br /&gt;
 *&lt;br /&gt;
 * You should have received a copy of the GNU General Public License&lt;br /&gt;
 * along with this program.  If not, see &amp;lt;https://www.gnu.org/licenses/&amp;gt;.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 *   Sensor   Pro Micro&lt;br /&gt;
 *   SCL      SCL pin 3&lt;br /&gt;
 *   SDA      SDA pin 2&lt;br /&gt;
 *   INT      PCINT4, port PB4, pin 8&lt;br /&gt;
 *   VIN      VCC (3.3V)&lt;br /&gt;
 *   GND      GND&lt;br /&gt;
 *&lt;br /&gt;
 *   LED pin of the sensor can be connected to its INT pin.&lt;br /&gt;
 *   By doing this the leds will turn off when the measurements are done.&lt;br /&gt;
 *&lt;br /&gt;
 *   Pro Micro:&lt;br /&gt;
 *   Serial: UART via USB&lt;br /&gt;
 *   Serial1: pin 1 (TX), pin 0 (RX)&lt;br /&gt;
 */&lt;br /&gt;
#include &amp;lt;Wire.h&amp;gt;&lt;br /&gt;
#include &amp;lt;tcs34725.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define MANHATTAN&lt;br /&gt;
#include &amp;quot;color_detection_methods.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#define RGB_SENSOR_INTERRUPT_PIN     8&lt;br /&gt;
#define RGB_SENSOR_INTERRUPT_PORT    PB4 // Port alias of pin 8 to be used in tstPin()&lt;br /&gt;
// Equivalent of digitalRead but for PORTB pins &amp;amp; much more quicker for a use in an ISR&lt;br /&gt;
// https://www.arduino.cc/en/Reference/PortManipulation&lt;br /&gt;
#define tstPin(b)                             ((PINB &amp;amp; (1 &amp;lt;&amp;lt; (b))) != 0)&lt;br /&gt;
#define LUX_TO_PERCENTAGE(val)                (getPercentage(val, 0.0105, -0.0843))&lt;br /&gt;
#define REFLECTED_LIGHT_TO_PERCENTAGE(val)    (getPercentage(val, 0.0017, -8))&lt;br /&gt;
&lt;br /&gt;
uint8_t       sensorColor;&lt;br /&gt;
uint8_t       reflectedLight;&lt;br /&gt;
uint8_t       ambientLight;&lt;br /&gt;
uint16_t      red, green, blue, clear, lux;&lt;br /&gt;
volatile bool sensorReady;&lt;br /&gt;
&lt;br /&gt;
// Default settings: TCS34725_GAIN_4X,  TCS34725_INTEGRATIONTIME_154MS&lt;br /&gt;
TCS34725      rgb_sensor;&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Callback for PCINT4 interrupt (PCINT0 - PCINT7)&lt;br /&gt;
 */&lt;br /&gt;
ISR(PCINT0_vect) {&lt;br /&gt;
    // If RGB_SENSOR_INTERRUPT_PORT is LOW, sensor is ready&lt;br /&gt;
    if (!tstPin(RGB_SENSOR_INTERRUPT_PORT))&lt;br /&gt;
        sensorReady = true;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Map lux/reflected light values to percentages&lt;br /&gt;
 *    Weights of the equation must be calculated empirically&lt;br /&gt;
 *    Map equation: y = ax + b&lt;br /&gt;
 *    System to solve:&lt;br /&gt;
 *      100% = MaxRawValue * a + b&lt;br /&gt;
 *      0% = MinRawValue * a + b&lt;br /&gt;
 *&lt;br /&gt;
 *    See macros LUX_TO_PERCENTAGE and REFLECTED_LIGHT_TO_PERCENTAGE.&lt;br /&gt;
 */&lt;br /&gt;
uint8_t getPercentage(const uint16_t rawValue, const float&amp;amp; a_coef, const float&amp;amp; b_coef) {&lt;br /&gt;
    int8_t percent = static_cast&amp;lt;int8_t&amp;gt;(rawValue * a_coef + b_coef);&lt;br /&gt;
    if (percent &amp;gt; 100)&lt;br /&gt;
        return 100;&lt;br /&gt;
    if (percent &amp;lt; 0)&lt;br /&gt;
        return 0;&lt;br /&gt;
    return static_cast&amp;lt;uint8_t&amp;gt;(percent);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
    Serial.begin(115200);&lt;br /&gt;
    while (!Serial) {&lt;br /&gt;
        // Wait for serial port to connect.&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Device config&lt;br /&gt;
    sensorColor = COLOR_NONE;&lt;br /&gt;
&lt;br /&gt;
    // Colour sensor config&lt;br /&gt;
    // Configure PinChange Interrupt&lt;br /&gt;
    // See https://github.com/NicoHood/PinChangeInterrupt&lt;br /&gt;
    // Note: INT-0,1,2,3 are occupied by UART and i2c transmissions on pro-micro&lt;br /&gt;
    // /!\ DO NOT activate pullup from the arduino, the INT pin is usually already&lt;br /&gt;
    // pulled up into the sensor board itself to 3.3V. These pins (SCL, SDA, INT)&lt;br /&gt;
    // ARE NOT tolerant to more than VDD + 0.5V. Note that I2C pins are connected&lt;br /&gt;
    // to level shifters, but not the others.&lt;br /&gt;
    pinMode(RGB_SENSOR_INTERRUPT_PIN, INPUT); // TCS interrupt output is Active-LOW and Open-Drain&lt;br /&gt;
    cli();                                    // Disable all interrupts: Avoid first and not wanted trigger of the interrupt&lt;br /&gt;
    PCICR  |= 0b00000001;                     // enable PORTB pin change interrupt&lt;br /&gt;
    PCMSK0 |= 0b00010000;                     // enable PB4, PCINT4, pin 8&lt;br /&gt;
    sei();                                    // Enable all interrupts&lt;br /&gt;
&lt;br /&gt;
    while (!rgb_sensor.begin()) {&lt;br /&gt;
        Serial.println(F(&amp;quot;TCS34725 NOT found&amp;quot;));&lt;br /&gt;
        delay(200);&lt;br /&gt;
    }&lt;br /&gt;
    Serial.println(F(&amp;quot;Found sensor&amp;quot;));&lt;br /&gt;
&lt;br /&gt;
    // Set persistence filter to generate an interrupt for every RGB Cycle,&lt;br /&gt;
    // regardless of the integration limits&lt;br /&gt;
    rgb_sensor.tcs.write8(TCS34725_PERS, TCS34725_PERS_NONE);&lt;br /&gt;
    // RGBC interrupt enable. When asserted, permits RGBC interrupts to be generated.&lt;br /&gt;
    rgb_sensor.tcs.setInterrupt(true);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void loop()&lt;br /&gt;
{&lt;br /&gt;
    if (sensorReady) {&lt;br /&gt;
        // Data measurement&lt;br /&gt;
        // noDelay param set to true: Asynchronous mode, must be used with interrupt configured.&lt;br /&gt;
        bool status = rgb_sensor.updateData(true);&lt;br /&gt;
&lt;br /&gt;
        if (status) {&lt;br /&gt;
            // Ambient light (lux) computation&lt;br /&gt;
            rgb_sensor.updateLux();&lt;br /&gt;
&lt;br /&gt;
            int16_t lux = lround(rgb_sensor.lux);&lt;br /&gt;
&lt;br /&gt;
            // Sometimes lux values are below 0; this coincides with erroneous data&lt;br /&gt;
            // Moreover, we discard data taken below 40 lux.&lt;br /&gt;
            if ((lux &amp;gt;= 40) &amp;amp;&amp;amp; (static_cast&amp;lt;uint16_t&amp;gt;(lux) &amp;lt;= rgb_sensor.maxlux)) {&lt;br /&gt;
                // Set ambient light (lux) - map 0-100&lt;br /&gt;
                //ambientLight = map(rgb_sensor.lux, 0, rgb_sensor.maxlux, 0, 100);&lt;br /&gt;
                ambientLight = LUX_TO_PERCENTAGE(lux); // cast ?&lt;br /&gt;
&lt;br /&gt;
                // RGBC Channels are usable&lt;br /&gt;
                // Map values to max ~440;&lt;br /&gt;
                // Continuous values from 0-65535 (16bits) to 0-1023 (10bits)&lt;br /&gt;
                red   = rgb_sensor.r_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
                green = rgb_sensor.g_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
                blue  = rgb_sensor.b_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
&lt;br /&gt;
                // Set clear channel as reflected light - map 0-100&lt;br /&gt;
                reflectedLight = REFLECTED_LIGHT_TO_PERCENTAGE(rgb_sensor.c_comp);&lt;br /&gt;
&lt;br /&gt;
                // Set detected color&lt;br /&gt;
                sensorColor = detectColor(red, green, blue);&lt;br /&gt;
            } else {&lt;br /&gt;
                sensorColor = COLOR_NONE;&lt;br /&gt;
            }&lt;br /&gt;
            clear = rgb_sensor.c_comp &amp;gt;&amp;gt; 6;&lt;br /&gt;
            /*&lt;br /&gt;
            // Human readable debugging&lt;br /&gt;
            Serial.print(&amp;quot;Lux: &amp;quot;); Serial.print(rgb_sensor.lux, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; max: &amp;quot;); Serial.print(rgb_sensor.maxlux);&lt;br /&gt;
            Serial.print(&amp;quot;; R: &amp;quot;); Serial.print(red, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; G: &amp;quot;); Serial.print(green, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; B: &amp;quot;); Serial.print(blue, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; C: &amp;quot;); Serial.println(clear, DEC);&lt;br /&gt;
            */&lt;br /&gt;
&lt;br /&gt;
            // Spreadsheet debugging&lt;br /&gt;
            Serial.print(rgb_sensor.lux, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(rgb_sensor.maxlux); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(red, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(green, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(blue, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.println(clear, DEC);&lt;br /&gt;
        } else {&lt;br /&gt;
            sensorColor = COLOR_NONE;&lt;br /&gt;
            Serial.println(F(&amp;quot;not valid data! wait next measure&amp;quot;));&lt;br /&gt;
        }&lt;br /&gt;
        // Interrupt tear down&lt;br /&gt;
        rgb_sensor.tcs.clearInterrupt();&lt;br /&gt;
        sensorReady = false;&lt;br /&gt;
        PCIFR      &amp;amp;= ~(1 &amp;lt;&amp;lt; PCIF0); // clear PC interrupt flag in case of bounce&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22070</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22070"/>
				<updated>2023-01-26T14:06:38Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
* colle à bois&lt;br /&gt;
* peintures et pinceaux&lt;br /&gt;
* cutter&lt;br /&gt;
* pic à broque&lt;br /&gt;
* scotch &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:colle1.jpeg|600px]] —&amp;gt; [[Fichier:colle2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 11:'''&lt;br /&gt;
Creer une petite protection pour le capteur de couleur afin de pouvoir le déplacer dans le labyrinthe. &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
prog.cpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
#include &amp;quot;enigme.hpp&amp;quot;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;random&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
	//variable initiale&lt;br /&gt;
	int erreur=-1;&lt;br /&gt;
	int test=1;&lt;br /&gt;
	int bonneReponse=0;&lt;br /&gt;
&lt;br /&gt;
	//liste des couleurs disponible pour les drapeaux &lt;br /&gt;
	deb::Color rouge{1024, 0, 0};&lt;br /&gt;
	deb::Color bleu{0, 0, 1024};&lt;br /&gt;
	deb::Color blanc{1024, 1024, 1024};&lt;br /&gt;
	deb::Color noir{0, 0, 0};&lt;br /&gt;
	deb::Color vert{0, 1024 ,0};&lt;br /&gt;
	deb::Color orange{0, 0, 1024};&lt;br /&gt;
	deb::Color jaune{0, 0, 1024};&lt;br /&gt;
&lt;br /&gt;
	//liste des enigmes &lt;br /&gt;
	deb::Enigme ea{bleu, blanc, rouge, &amp;quot;Pays du champagne&amp;quot;};&lt;br /&gt;
	deb::Enigme eb{vert, blanc, rouge, &amp;quot;Pays des pâtes&amp;quot;};&lt;br /&gt;
	deb::Enigme ec{vert, blanc, orange, &amp;quot;Pays des moutons &amp;quot;};&lt;br /&gt;
	deb::Enigme ed{rouge, blanc, rouge, &amp;quot;Pays d’origine de Marie Antoinette&amp;quot;};&lt;br /&gt;
	deb::Enigme ee{noir, rouge, jaune, &amp;quot;Pays d’origine des knödels &amp;quot;};&lt;br /&gt;
	deb::Enigme ef{jaune, vert, rouge, &amp;quot;Quel est ce pays ? Mjubojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eg{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? .-.. ..- -..- . -- -... --- ..- .-. --.&amp;quot;};&lt;br /&gt;
	deb::Enigme eh{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? Ozxr-Azr&amp;quot;};&lt;br /&gt;
	deb::Enigme ei{noir, jaune, rouge, &amp;quot;Pays de la gaufre&amp;quot;};&lt;br /&gt;
	deb::Enigme ej{vert, jaune, bleu, &amp;quot;Mon premier est un mec. Mon second qualifie quelque chose d’agréable.&amp;quot;};&lt;br /&gt;
	deb::Enigme ek{blanc, bleu, noir, &amp;quot;Quel est ce pays ? . ... - --- -. .. .&amp;quot;};&lt;br /&gt;
	deb::Enigme el{rouge, blanc, rouge, &amp;quot;Quel est ce pays ? 53886643&amp;quot;};&lt;br /&gt;
	deb::Enigme em{rouge, blanc, vert, &amp;quot;Mon premier est un pronom personnel indéfini. Mon second contient autant de rouge que de vert que de bleu.&amp;quot;};&lt;br /&gt;
	deb::Enigme en{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? Spvnbojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eo{bleu, jaune, rouge, &amp;quot;Ma capitale est vieille &amp;quot;};&lt;br /&gt;
	deb::Enigme ep{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? - -.-. .... .- -..&amp;quot;};&lt;br /&gt;
	deb::Enigme eq{rouge, bleu, orange, &amp;quot;Son papier sent bon &amp;quot;};&lt;br /&gt;
	deb::Enigme er{bleu, rouge, vert, &amp;quot;Quel est ce pays ? 2937224526&amp;quot;};&lt;br /&gt;
	deb::Enigme es{rouge, jaune, vert, &amp;quot;Ma capitale est La Paz&amp;quot;};&lt;br /&gt;
	deb::Enigme et{rouge, jaune, vert, &amp;quot;Mon premier est la plante sous laquelle il faut s’embrasser. Mon second est l’arrivée en ce monde.&amp;quot;};&lt;br /&gt;
	deb::Enigme eu{blanc, vert, rouge, &amp;quot;Mon premier est une sphère d’une substance dans une autre. Mon second est un mec. Mon troisième peut être cantonais, thai ou basmati. &amp;quot;};&lt;br /&gt;
	deb::Enigme ev{jaune, bleu, rouge, &amp;quot;Ma capitale est Bogota&amp;quot;};&lt;br /&gt;
	deb::Enigme ew{orange, blanc, vert, &amp;quot;Quel est ce pays ? Dpuf e’Jwpjsf&amp;quot;};&lt;br /&gt;
	deb::Enigme ex{vert, jaune, rouge, &amp;quot;Quel est ce pays ? -- .- .-.. ..&amp;quot;};&lt;br /&gt;
	deb::Enigme ey{vert, blanc, vert, &amp;quot;Quel est ce pays ? 6443742&amp;quot;};&lt;br /&gt;
	deb::Enigme ez{rouge, blanc, rouge, &amp;quot;Pays du Macchu Picchu&amp;quot;};&lt;br /&gt;
	deb::Enigme eea{blanc, bleu, rouge, &amp;quot;Pays du Kremlin&amp;quot;};&lt;br /&gt;
	deb::Enigme eeb{rouge, blanc, noir, &amp;quot;Quel est ce pays ? Xdldm&amp;quot;};&lt;br /&gt;
	std::vector&amp;lt;deb::Enigme&amp;gt; vectEnigme{ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ez,eea,eeb};&lt;br /&gt;
&lt;br /&gt;
	//loop&lt;br /&gt;
	&lt;br /&gt;
	if (appui sur bouton acquisition)  //on enregistre la couleur actuelle&lt;br /&gt;
	{	&lt;br /&gt;
		int a,b,c = 10,10,1024; //on recupere les valeurs du capteur&lt;br /&gt;
		&lt;br /&gt;
		if (test==4) &lt;br /&gt;
		{&lt;br /&gt;
			bonneReponse=0; //il y a trop de reponse le resultat sera faut&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if (test==3)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.trois.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=4;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==2)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.deux.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=3;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==1)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.un.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=2;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
		&lt;br /&gt;
	if (appui sur le bouton validé and erreur!=-1)//on regarde le resultat final&lt;br /&gt;
	{&lt;br /&gt;
		if (bonneReponse==3) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Victoire ! Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==0) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as fait une erreur. Repars de zéro et essaye encore. \n&amp;quot;;&lt;br /&gt;
			erreur =1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==1) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as perdu. Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	if (appui sur bouton validé and erreur==-1) //lancement nouvelle enigme&lt;br /&gt;
	{	&lt;br /&gt;
		srand((unsigned) time(NULL));&lt;br /&gt;
		deb::Enigme enigmeEnCours=vectEnigme[rand() % 28];&lt;br /&gt;
		std::cout &amp;lt;&amp;lt; enigmeEnCours.question &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
		erreur=0;&lt;br /&gt;
		test=1;&lt;br /&gt;
		bonneReponse=0;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.cpp:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb &lt;br /&gt;
{&lt;br /&gt;
	bool Color::isitme(int r,int g,int b) const&lt;br /&gt;
	{&lt;br /&gt;
		if (r&amp;lt;(red-200)) {return false;}&lt;br /&gt;
		if (r&amp;gt;(red+200)) {return false;}&lt;br /&gt;
		if (g&amp;lt;(green-200)) {return false;}&lt;br /&gt;
		if (g&amp;gt;(green+200)) {return false;}&lt;br /&gt;
		if (b&amp;lt;(blue-200)) {return false;}&lt;br /&gt;
		if (b&amp;gt;(blue+200)) {return false;}	&lt;br /&gt;
		return true;&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}// namespace deb&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.hpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_COLOR_HPP&lt;br /&gt;
#define DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Color&lt;br /&gt;
  {&lt;br /&gt;
    int red,green,blue;&lt;br /&gt;
&lt;br /&gt;
    Color(int red, int green, int blue): red{std::move(red)}, green{std::move(green)}, blue{std::move(blue)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
    bool isitme(int r,int g,int b) const;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
enigme.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_ENIGME_HPP&lt;br /&gt;
#define DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Enigme&lt;br /&gt;
  {&lt;br /&gt;
    Color un,deux,trois;&lt;br /&gt;
    std::string question;&lt;br /&gt;
&lt;br /&gt;
    Enigme(Color u, Color d, Color t, std::string q): un{std::move(u)}, deux{std::move(d)}, trois{std::move(t)}, question{std::move(q)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''code BP :'''&lt;br /&gt;
Les_petits_voyageurs.ino&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;Test_BP.h&amp;quot;&lt;br /&gt;
#include &amp;quot;Arduino.h&amp;quot;&lt;br /&gt;
int lancement=0;&lt;br /&gt;
&lt;br /&gt;
void setup()&lt;br /&gt;
{&lt;br /&gt;
  Serial.begin(115200);&lt;br /&gt;
  setup_BP();&lt;br /&gt;
  //constantes générées aussi en dehors de la loop&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void loop()&lt;br /&gt;
{&lt;br /&gt;
  lancement=BP(lancement);&lt;br /&gt;
  if (lancement==1)&lt;br /&gt;
  {&lt;br /&gt;
    delay(20);&lt;br /&gt;
    Serial.println(&amp;quot;Bonjour ! &amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Test_BP.cpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#include &amp;quot;Test_BP.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
//BP1&lt;br /&gt;
const int BP1=4;&lt;br /&gt;
&lt;br /&gt;
int boutonState = 0;&lt;br /&gt;
int lastBoutonState = 0;&lt;br /&gt;
&lt;br /&gt;
void setup_BP()&lt;br /&gt;
{&lt;br /&gt;
  //setup fonction bouton&lt;br /&gt;
  pinMode(BP1, INPUT);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int BP(int lancement) //permet de détecter les FM/FD du BP&lt;br /&gt;
{&lt;br /&gt;
  /*&lt;br /&gt;
  Serial.print(&amp;quot;etat bouton : &amp;quot;);&lt;br /&gt;
  Serial.println(boutonState);&lt;br /&gt;
  Serial.print(&amp;quot;etat bouton precedent : &amp;quot;);&lt;br /&gt;
  Serial.println(lastBoutonState);&lt;br /&gt;
  */&lt;br /&gt;
&lt;br /&gt;
  boutonState=digitalRead(BP1);&lt;br /&gt;
  Serial.println(boutonState);&lt;br /&gt;
  if (boutonState==HIGH)&lt;br /&gt;
  {&lt;br /&gt;
    if (boutonState != lastBoutonState)&lt;br /&gt;
    {&lt;br /&gt;
      lancement=1;&lt;br /&gt;
      //Serial.println(&amp;quot;00&amp;quot;);&lt;br /&gt;
      lastBoutonState=boutonState;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      lancement=0; //état récurrent de lancement, on reste appuyé sur BP&lt;br /&gt;
      //Serial.println(&amp;quot;10&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  else&lt;br /&gt;
  {&lt;br /&gt;
    if (boutonState != lastBoutonState)&lt;br /&gt;
    {&lt;br /&gt;
      //Serial.println(&amp;quot;01&amp;quot;);&lt;br /&gt;
      lancement=0;&lt;br /&gt;
      lastBoutonState=boutonState;&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      //Serial.println(&amp;quot;11&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  //Serial.println(lancement);&lt;br /&gt;
&lt;br /&gt;
  return lancement;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#ifndef TEST_BP_H&lt;br /&gt;
#define TEST_BP_H&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup_BP();&lt;br /&gt;
int BP(int lancement);&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''code capteur:'''&lt;br /&gt;
&lt;br /&gt;
color_detection_methods.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/* This file is taken from MyOwnBricks project.&lt;br /&gt;
 * MyOwnBricks is a library for the emulation of LEGO PoweredUp sensors on microcontrollers&lt;br /&gt;
 * Copyright (C) 2021-2022 Ysard - &amp;lt;ysard@users.noreply.github.com&amp;gt;&lt;br /&gt;
 *&lt;br /&gt;
 * This program is free software: you can redistribute it and/or modify&lt;br /&gt;
 * it under the terms of the GNU General Public License as published by&lt;br /&gt;
 * the Free Software Foundation, either version 3 of the License, or&lt;br /&gt;
 * (at your option) any later version.&lt;br /&gt;
 *&lt;br /&gt;
 * This program is distributed in the hope that it will be useful,&lt;br /&gt;
 * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 * GNU General Public License for more details.&lt;br /&gt;
 *&lt;br /&gt;
 * You should have received a copy of the GNU General Public License&lt;br /&gt;
 * along with this program.  If not, see &amp;lt;https://www.gnu.org/licenses/&amp;gt;.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Discretize colors and return uint8_t color code.&lt;br /&gt;
 *    Available colors: COLOR_NONE, COLOR_BLACK, COLOR_BLUE,&lt;br /&gt;
 *    COLOR_GREEN, COLOR_RED, COLOR_WHITE.&lt;br /&gt;
 *&lt;br /&gt;
 *    Generally speaking, stable measuring conditions are required, i.e.,&lt;br /&gt;
 *    a stable measuring distance not exceeding 4 cm, no interfering light&lt;br /&gt;
 *    reaching the side of the sensor. Think about matt black sensor shroud.&lt;br /&gt;
 *&lt;br /&gt;
 *    Metrics:&lt;br /&gt;
 *      - BASIC_RGB: Simple comparison between channels;&lt;br /&gt;
 *          Very fast but is likely to produce errors.&lt;br /&gt;
 *      - MANHATTAN: Sum of absolute values of distances.&lt;br /&gt;
 *          Quite heavy, but quite accurate if the reference values have been&lt;br /&gt;
 *          measured seriously and if the measurement environment is controlled&lt;br /&gt;
 *          (reproducible). Distance between the sensor and the object should be&lt;br /&gt;
 *          the same as during learning.&lt;br /&gt;
 *          https://fr.wikipedia.org/wiki/Distance_de_Manhattan&lt;br /&gt;
 *     - CANBERRA: A weighted version of Manhattan distance;&lt;br /&gt;
 *          Very heavy but brings a higher accuracy and more tolerance/stability to variations&lt;br /&gt;
 *          in the measurement environment.&lt;br /&gt;
 *          Note: The manipulation of decimal numbers should be avoided&lt;br /&gt;
 *          on microcontrollers... Does it worth it? Probably not.&lt;br /&gt;
 *          https://en.wikipedia.org/wiki/Canberra_distance&lt;br /&gt;
 */&lt;br /&gt;
//#define BASIC_RGB&lt;br /&gt;
//#define MANHATTAN&lt;br /&gt;
//#define CANBERRA&lt;br /&gt;
&lt;br /&gt;
// Colors (detected &amp;amp; LED (except NONE for this last one)) expected values&lt;br /&gt;
#define COLOR_NONE      0xFF&lt;br /&gt;
#define COLOR_BLACK     0&lt;br /&gt;
#define COLOR_PINK      1&lt;br /&gt;
#define COLOR_PURPLE    2&lt;br /&gt;
#define COLOR_BLUE      3&lt;br /&gt;
#define COLOR_LIGHTBLUE 4&lt;br /&gt;
#define COLOR_CYAN      5&lt;br /&gt;
#define COLOR_GREEN     6&lt;br /&gt;
#define COLOR_YELLOW    7&lt;br /&gt;
#define COLOR_ORANGE    8&lt;br /&gt;
#define COLOR_RED       9&lt;br /&gt;
#define COLOR_WHITE     10&lt;br /&gt;
&lt;br /&gt;
extern uint16_t red, green, blue;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#ifdef BASIC_RGB&lt;br /&gt;
uint8_t detectColor(const uint16_t &amp;amp;red, const uint16_t &amp;amp;green, const uint16_t &amp;amp;blue) {&lt;br /&gt;
    if ((red &amp;gt; green) &amp;amp;&amp;amp; (red &amp;gt; blue)) {&lt;br /&gt;
        return COLOR_RED;&lt;br /&gt;
    } else if ((green &amp;gt; red) &amp;amp;&amp;amp; (green &amp;gt; blue)) {&lt;br /&gt;
        return COLOR_GREEN;&lt;br /&gt;
    } else if ((blue &amp;gt; red) &amp;amp;&amp;amp; (blue &amp;gt; green)) {&lt;br /&gt;
        return COLOR_BLUE;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#if (defined(MANHATTAN) || defined(CANBERRA))&lt;br /&gt;
// *_1: measures at 1 cm&lt;br /&gt;
// *_3: measures at 3 cms&lt;br /&gt;
const uint16_t SAMPLES[][3] = {&lt;br /&gt;
    { 297,  83,  56 }, // RED_1&lt;br /&gt;
    {  43,  20,  17 }, // RED_3&lt;br /&gt;
    {  35, 142, 193 }, // BLUE_1&lt;br /&gt;
    {  35,  94, 116 }, // BLUE_3&lt;br /&gt;
    {  86, 257, 257 }, // CYAN_1&lt;br /&gt;
    {  36,  98,  97 }, // CYAN_3&lt;br /&gt;
    { 120, 141,  46 }, // YELLOW_1&lt;br /&gt;
    {  72,  73,  30 }, // YELLOW_3&lt;br /&gt;
    { 338, 373, 120 }, // YELLOW_PLQ_1&lt;br /&gt;
    { 159, 267, 201 }, // WHITE_1&lt;br /&gt;
    {  87, 126, 102 }, // WHITE_3&lt;br /&gt;
    {  89, 322, 163 }, // GREEN_1&lt;br /&gt;
    {  58, 106,  68 }, // GREEN_3&lt;br /&gt;
    { 103, 189,  57 }, // GREEN_LIGHT_1&lt;br /&gt;
    {  51,  77,  33 }, // GREEN_LIGHT_3&lt;br /&gt;
    {  26,  34,  28 }  // BLACK_1&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
const uint8_t SAMPLES_MAP[] = {&lt;br /&gt;
    COLOR_RED,    COLOR_RED,&lt;br /&gt;
    COLOR_BLUE,   COLOR_BLUE,&lt;br /&gt;
    COLOR_BLUE,   COLOR_BLUE,&lt;br /&gt;
    COLOR_YELLOW, COLOR_YELLOW,COLOR_YELLOW,&lt;br /&gt;
    COLOR_WHITE,  COLOR_WHITE,&lt;br /&gt;
    COLOR_GREEN,  COLOR_GREEN,&lt;br /&gt;
    COLOR_GREEN,  COLOR_GREEN,&lt;br /&gt;
    COLOR_BLACK&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// Number of samples&lt;br /&gt;
const uint8_t samplesCount = sizeof(SAMPLES) / sizeof(SAMPLES[0]);&lt;br /&gt;
&lt;br /&gt;
uint8_t detectColor(const uint16_t &amp;amp;red, const uint16_t &amp;amp;green, const uint16_t &amp;amp;blue) {&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
    uint16_t minDist = 10000;&lt;br /&gt;
    uint16_t expDist;&lt;br /&gt;
#else&lt;br /&gt;
    float minDist = 3;&lt;br /&gt;
    float expDist;&lt;br /&gt;
#endif&lt;br /&gt;
    uint8_t bestSampleIndex = 0;&lt;br /&gt;
&lt;br /&gt;
    for (uint8_t i = 0; i &amp;lt; samplesCount; i++) {&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
        expDist = abs(static_cast&amp;lt;int16_t&amp;gt;(red - SAMPLES[i][0]))&lt;br /&gt;
                  + abs(static_cast&amp;lt;int16_t&amp;gt;(green - SAMPLES[i][1]))&lt;br /&gt;
                  + abs(static_cast&amp;lt;int16_t&amp;gt;(blue - SAMPLES[i][2]));&lt;br /&gt;
#else&lt;br /&gt;
        // Yeah it's ugly but abs() of Arduino is a macro different from the stl implementation&lt;br /&gt;
        // moreover the parameter must be explicitly signed.&lt;br /&gt;
        // The numerator or denominator must be a float.&lt;br /&gt;
        // https://www.best-microcontroller-projects.com/arduino-absolute-value.html&lt;br /&gt;
        // https://github.com/arduino/reference-en/issues/362&lt;br /&gt;
        expDist = (abs(static_cast&amp;lt;int16_t&amp;gt;(red - SAMPLES[i][0])) / static_cast&amp;lt;float&amp;gt;(red + SAMPLES[i][0]))&lt;br /&gt;
                  + (abs(static_cast&amp;lt;int16_t&amp;gt;(green - SAMPLES[i][1])) / static_cast&amp;lt;float&amp;gt;(green + SAMPLES[i][1]))&lt;br /&gt;
                  + (abs(static_cast&amp;lt;int16_t&amp;gt;(blue - SAMPLES[i][2])) / static_cast&amp;lt;float&amp;gt;(blue + SAMPLES[i][2]));&lt;br /&gt;
#endif&lt;br /&gt;
        if (expDist &amp;lt; minDist) {&lt;br /&gt;
            bestSampleIndex = i;&lt;br /&gt;
            minDist         = expDist;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Arbitrary threshold to avoid erroneous identifications&lt;br /&gt;
#ifdef MANHATTAN&lt;br /&gt;
    if (minDist &amp;gt; 100) {&lt;br /&gt;
#else&lt;br /&gt;
    if (minDist &amp;gt; 1.9) { // Red color is quite difficult to identify even with this high threashold&lt;br /&gt;
#endif&lt;br /&gt;
        // Matching is not acceptable&lt;br /&gt;
        return COLOR_NONE;&lt;br /&gt;
    }&lt;br /&gt;
    // Get color value expected by the hub&lt;br /&gt;
    return SAMPLES_MAP[bestSampleIndex];&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Color_sensor.ino&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/* This file is taken from MyOwnBricks project.&lt;br /&gt;
 * MyOwnBricks is a library for the emulation of LEGO PoweredUp sensors on microcontrollers&lt;br /&gt;
 * Copyright (C) 2021-2022 Ysard - &amp;lt;ysard@users.noreply.github.com&amp;gt;&lt;br /&gt;
 *&lt;br /&gt;
 * This program is free software: you can redistribute it and/or modify&lt;br /&gt;
 * it under the terms of the GNU General Public License as published by&lt;br /&gt;
 * the Free Software Foundation, either version 3 of the License, or&lt;br /&gt;
 * (at your option) any later version.&lt;br /&gt;
 *&lt;br /&gt;
 * This program is distributed in the hope that it will be useful,&lt;br /&gt;
 * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 * GNU General Public License for more details.&lt;br /&gt;
 *&lt;br /&gt;
 * You should have received a copy of the GNU General Public License&lt;br /&gt;
 * along with this program.  If not, see &amp;lt;https://www.gnu.org/licenses/&amp;gt;.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 *   Sensor   Pro Micro&lt;br /&gt;
 *   SCL      SCL pin 3&lt;br /&gt;
 *   SDA      SDA pin 2&lt;br /&gt;
 *   INT      PCINT4, port PB4, pin 8&lt;br /&gt;
 *   VIN      VCC (3.3V)&lt;br /&gt;
 *   GND      GND&lt;br /&gt;
 *&lt;br /&gt;
 *   LED pin of the sensor can be connected to its INT pin.&lt;br /&gt;
 *   By doing this the leds will turn off when the measurements are done.&lt;br /&gt;
 *&lt;br /&gt;
 *   Pro Micro:&lt;br /&gt;
 *   Serial: UART via USB&lt;br /&gt;
 *   Serial1: pin 1 (TX), pin 0 (RX)&lt;br /&gt;
 */&lt;br /&gt;
#include &amp;lt;Wire.h&amp;gt;&lt;br /&gt;
#include &amp;lt;tcs34725.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define MANHATTAN&lt;br /&gt;
#include &amp;quot;color_detection_methods.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#define RGB_SENSOR_INTERRUPT_PIN     8&lt;br /&gt;
#define RGB_SENSOR_INTERRUPT_PORT    PB4 // Port alias of pin 8 to be used in tstPin()&lt;br /&gt;
// Equivalent of digitalRead but for PORTB pins &amp;amp; much more quicker for a use in an ISR&lt;br /&gt;
// https://www.arduino.cc/en/Reference/PortManipulation&lt;br /&gt;
#define tstPin(b)                             ((PINB &amp;amp; (1 &amp;lt;&amp;lt; (b))) != 0)&lt;br /&gt;
#define LUX_TO_PERCENTAGE(val)                (getPercentage(val, 0.0105, -0.0843))&lt;br /&gt;
#define REFLECTED_LIGHT_TO_PERCENTAGE(val)    (getPercentage(val, 0.0017, -8))&lt;br /&gt;
&lt;br /&gt;
uint8_t       sensorColor;&lt;br /&gt;
uint8_t       reflectedLight;&lt;br /&gt;
uint8_t       ambientLight;&lt;br /&gt;
uint16_t      red, green, blue, clear, lux;&lt;br /&gt;
volatile bool sensorReady;&lt;br /&gt;
&lt;br /&gt;
// Default settings: TCS34725_GAIN_4X,  TCS34725_INTEGRATIONTIME_154MS&lt;br /&gt;
TCS34725      rgb_sensor;&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Callback for PCINT4 interrupt (PCINT0 - PCINT7)&lt;br /&gt;
 */&lt;br /&gt;
ISR(PCINT0_vect) {&lt;br /&gt;
    // If RGB_SENSOR_INTERRUPT_PORT is LOW, sensor is ready&lt;br /&gt;
    if (!tstPin(RGB_SENSOR_INTERRUPT_PORT))&lt;br /&gt;
        sensorReady = true;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * @brief Map lux/reflected light values to percentages&lt;br /&gt;
 *    Weights of the equation must be calculated empirically&lt;br /&gt;
 *    Map equation: y = ax + b&lt;br /&gt;
 *    System to solve:&lt;br /&gt;
 *      100% = MaxRawValue * a + b&lt;br /&gt;
 *      0% = MinRawValue * a + b&lt;br /&gt;
 *&lt;br /&gt;
 *    See macros LUX_TO_PERCENTAGE and REFLECTED_LIGHT_TO_PERCENTAGE.&lt;br /&gt;
 */&lt;br /&gt;
uint8_t getPercentage(const uint16_t rawValue, const float&amp;amp; a_coef, const float&amp;amp; b_coef) {&lt;br /&gt;
    int8_t percent = static_cast&amp;lt;int8_t&amp;gt;(rawValue * a_coef + b_coef);&lt;br /&gt;
    if (percent &amp;gt; 100)&lt;br /&gt;
        return 100;&lt;br /&gt;
    if (percent &amp;lt; 0)&lt;br /&gt;
        return 0;&lt;br /&gt;
    return static_cast&amp;lt;uint8_t&amp;gt;(percent);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
    Serial.begin(115200);&lt;br /&gt;
    while (!Serial) {&lt;br /&gt;
        // Wait for serial port to connect.&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // Device config&lt;br /&gt;
    sensorColor = COLOR_NONE;&lt;br /&gt;
&lt;br /&gt;
    // Colour sensor config&lt;br /&gt;
    // Configure PinChange Interrupt&lt;br /&gt;
    // See https://github.com/NicoHood/PinChangeInterrupt&lt;br /&gt;
    // Note: INT-0,1,2,3 are occupied by UART and i2c transmissions on pro-micro&lt;br /&gt;
    // /!\ DO NOT activate pullup from the arduino, the INT pin is usually already&lt;br /&gt;
    // pulled up into the sensor board itself to 3.3V. These pins (SCL, SDA, INT)&lt;br /&gt;
    // ARE NOT tolerant to more than VDD + 0.5V. Note that I2C pins are connected&lt;br /&gt;
    // to level shifters, but not the others.&lt;br /&gt;
    pinMode(RGB_SENSOR_INTERRUPT_PIN, INPUT); // TCS interrupt output is Active-LOW and Open-Drain&lt;br /&gt;
    cli();                                    // Disable all interrupts: Avoid first and not wanted trigger of the interrupt&lt;br /&gt;
    PCICR  |= 0b00000001;                     // enable PORTB pin change interrupt&lt;br /&gt;
    PCMSK0 |= 0b00010000;                     // enable PB4, PCINT4, pin 8&lt;br /&gt;
    sei();                                    // Enable all interrupts&lt;br /&gt;
&lt;br /&gt;
    while (!rgb_sensor.begin()) {&lt;br /&gt;
        Serial.println(F(&amp;quot;TCS34725 NOT found&amp;quot;));&lt;br /&gt;
        delay(200);&lt;br /&gt;
    }&lt;br /&gt;
    Serial.println(F(&amp;quot;Found sensor&amp;quot;));&lt;br /&gt;
&lt;br /&gt;
    // Set persistence filter to generate an interrupt for every RGB Cycle,&lt;br /&gt;
    // regardless of the integration limits&lt;br /&gt;
    rgb_sensor.tcs.write8(TCS34725_PERS, TCS34725_PERS_NONE);&lt;br /&gt;
    // RGBC interrupt enable. When asserted, permits RGBC interrupts to be generated.&lt;br /&gt;
    rgb_sensor.tcs.setInterrupt(true);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void loop()&lt;br /&gt;
{&lt;br /&gt;
    if (sensorReady) {&lt;br /&gt;
        // Data measurement&lt;br /&gt;
        // noDelay param set to true: Asynchronous mode, must be used with interrupt configured.&lt;br /&gt;
        bool status = rgb_sensor.updateData(true);&lt;br /&gt;
&lt;br /&gt;
        if (status) {&lt;br /&gt;
            // Ambient light (lux) computation&lt;br /&gt;
            rgb_sensor.updateLux();&lt;br /&gt;
&lt;br /&gt;
            int16_t lux = lround(rgb_sensor.lux);&lt;br /&gt;
&lt;br /&gt;
            // Sometimes lux values are below 0; this coincides with erroneous data&lt;br /&gt;
            // Moreover, we discard data taken below 40 lux.&lt;br /&gt;
            if ((lux &amp;gt;= 40) &amp;amp;&amp;amp; (static_cast&amp;lt;uint16_t&amp;gt;(lux) &amp;lt;= rgb_sensor.maxlux)) {&lt;br /&gt;
                // Set ambient light (lux) - map 0-100&lt;br /&gt;
                //ambientLight = map(rgb_sensor.lux, 0, rgb_sensor.maxlux, 0, 100);&lt;br /&gt;
                ambientLight = LUX_TO_PERCENTAGE(lux); // cast ?&lt;br /&gt;
&lt;br /&gt;
                // RGBC Channels are usable&lt;br /&gt;
                // Map values to max ~440;&lt;br /&gt;
                // Continuous values from 0-65535 (16bits) to 0-1023 (10bits)&lt;br /&gt;
                red   = rgb_sensor.r_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
                green = rgb_sensor.g_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
                blue  = rgb_sensor.b_comp &amp;gt;&amp;gt; 6,&lt;br /&gt;
&lt;br /&gt;
                // Set clear channel as reflected light - map 0-100&lt;br /&gt;
                reflectedLight = REFLECTED_LIGHT_TO_PERCENTAGE(rgb_sensor.c_comp);&lt;br /&gt;
&lt;br /&gt;
                // Set detected color&lt;br /&gt;
                sensorColor = detectColor(red, green, blue);&lt;br /&gt;
            } else {&lt;br /&gt;
                sensorColor = COLOR_NONE;&lt;br /&gt;
            }&lt;br /&gt;
            clear = rgb_sensor.c_comp &amp;gt;&amp;gt; 6;&lt;br /&gt;
            /*&lt;br /&gt;
            // Human readable debugging&lt;br /&gt;
            Serial.print(&amp;quot;Lux: &amp;quot;); Serial.print(rgb_sensor.lux, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; max: &amp;quot;); Serial.print(rgb_sensor.maxlux);&lt;br /&gt;
            Serial.print(&amp;quot;; R: &amp;quot;); Serial.print(red, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; G: &amp;quot;); Serial.print(green, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; B: &amp;quot;); Serial.print(blue, DEC);&lt;br /&gt;
            Serial.print(&amp;quot;; C: &amp;quot;); Serial.println(clear, DEC);&lt;br /&gt;
            */&lt;br /&gt;
&lt;br /&gt;
            // Spreadsheet debugging&lt;br /&gt;
            Serial.print(rgb_sensor.lux, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(rgb_sensor.maxlux); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(red, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(green, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.print(blue, DEC); Serial.print(&amp;quot;;&amp;quot;);&lt;br /&gt;
            Serial.println(clear, DEC);&lt;br /&gt;
        } else {&lt;br /&gt;
            sensorColor = COLOR_NONE;&lt;br /&gt;
            Serial.println(F(&amp;quot;not valid data! wait next measure&amp;quot;));&lt;br /&gt;
        }&lt;br /&gt;
        // Interrupt tear down&lt;br /&gt;
        rgb_sensor.tcs.clearInterrupt();&lt;br /&gt;
        sensorReady = false;&lt;br /&gt;
        PCIFR      &amp;amp;= ~(1 &amp;lt;&amp;lt; PCIF0); // clear PC interrupt flag in case of bounce&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22064</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22064"/>
				<updated>2023-01-26T13:49:35Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : /* Matériels et machines utilisés */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
* colle à bois&lt;br /&gt;
* peintures et pinceaux&lt;br /&gt;
* cutter&lt;br /&gt;
* pic à broque&lt;br /&gt;
* scotch &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:colle1.jpeg|600px]] —&amp;gt; [[Fichier:colle2.jpeg|600px]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
prog.cpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
#include &amp;quot;enigme.hpp&amp;quot;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;random&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
	//variable initiale&lt;br /&gt;
	int erreur=-1;&lt;br /&gt;
	int test=1;&lt;br /&gt;
	int bonneReponse=0;&lt;br /&gt;
&lt;br /&gt;
	//liste des couleurs disponible pour les drapeaux &lt;br /&gt;
	deb::Color rouge{1024, 0, 0};&lt;br /&gt;
	deb::Color bleu{0, 0, 1024};&lt;br /&gt;
	deb::Color blanc{1024, 1024, 1024};&lt;br /&gt;
	deb::Color noir{0, 0, 0};&lt;br /&gt;
	deb::Color vert{0, 1024 ,0};&lt;br /&gt;
	deb::Color orange{0, 0, 1024};&lt;br /&gt;
	deb::Color jaune{0, 0, 1024};&lt;br /&gt;
&lt;br /&gt;
	//liste des enigmes &lt;br /&gt;
	deb::Enigme ea{bleu, blanc, rouge, &amp;quot;Pays du champagne&amp;quot;};&lt;br /&gt;
	deb::Enigme eb{vert, blanc, rouge, &amp;quot;Pays des pâtes&amp;quot;};&lt;br /&gt;
	deb::Enigme ec{vert, blanc, orange, &amp;quot;Pays des moutons &amp;quot;};&lt;br /&gt;
	deb::Enigme ed{rouge, blanc, rouge, &amp;quot;Pays d’origine de Marie Antoinette&amp;quot;};&lt;br /&gt;
	deb::Enigme ee{noir, rouge, jaune, &amp;quot;Pays d’origine des knödels &amp;quot;};&lt;br /&gt;
	deb::Enigme ef{jaune, vert, rouge, &amp;quot;Quel est ce pays ? Mjubojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eg{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? .-.. ..- -..- . -- -... --- ..- .-. --.&amp;quot;};&lt;br /&gt;
	deb::Enigme eh{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? Ozxr-Azr&amp;quot;};&lt;br /&gt;
	deb::Enigme ei{noir, jaune, rouge, &amp;quot;Pays de la gaufre&amp;quot;};&lt;br /&gt;
	deb::Enigme ej{vert, jaune, bleu, &amp;quot;Mon premier est un mec. Mon second qualifie quelque chose d’agréable.&amp;quot;};&lt;br /&gt;
	deb::Enigme ek{blanc, bleu, noir, &amp;quot;Quel est ce pays ? . ... - --- -. .. .&amp;quot;};&lt;br /&gt;
	deb::Enigme el{rouge, blanc, rouge, &amp;quot;Quel est ce pays ? 53886643&amp;quot;};&lt;br /&gt;
	deb::Enigme em{rouge, blanc, vert, &amp;quot;Mon premier est un pronom personnel indéfini. Mon second contient autant de rouge que de vert que de bleu.&amp;quot;};&lt;br /&gt;
	deb::Enigme en{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? Spvnbojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eo{bleu, jaune, rouge, &amp;quot;Ma capitale est vieille &amp;quot;};&lt;br /&gt;
	deb::Enigme ep{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? - -.-. .... .- -..&amp;quot;};&lt;br /&gt;
	deb::Enigme eq{rouge, bleu, orange, &amp;quot;Son papier sent bon &amp;quot;};&lt;br /&gt;
	deb::Enigme er{bleu, rouge, vert, &amp;quot;Quel est ce pays ? 2937224526&amp;quot;};&lt;br /&gt;
	deb::Enigme es{rouge, jaune, vert, &amp;quot;Ma capitale est La Paz&amp;quot;};&lt;br /&gt;
	deb::Enigme et{rouge, jaune, vert, &amp;quot;Mon premier est la plante sous laquelle il faut s’embrasser. Mon second est l’arrivée en ce monde.&amp;quot;};&lt;br /&gt;
	deb::Enigme eu{blanc, vert, rouge, &amp;quot;Mon premier est une sphère d’une substance dans une autre. Mon second est un mec. Mon troisième peut être cantonais, thai ou basmati. &amp;quot;};&lt;br /&gt;
	deb::Enigme ev{jaune, bleu, rouge, &amp;quot;Ma capitale est Bogota&amp;quot;};&lt;br /&gt;
	deb::Enigme ew{orange, blanc, vert, &amp;quot;Quel est ce pays ? Dpuf e’Jwpjsf&amp;quot;};&lt;br /&gt;
	deb::Enigme ex{vert, jaune, rouge, &amp;quot;Quel est ce pays ? -- .- .-.. ..&amp;quot;};&lt;br /&gt;
	deb::Enigme ey{vert, blanc, vert, &amp;quot;Quel est ce pays ? 6443742&amp;quot;};&lt;br /&gt;
	deb::Enigme ez{rouge, blanc, rouge, &amp;quot;Pays du Macchu Picchu&amp;quot;};&lt;br /&gt;
	deb::Enigme eea{blanc, bleu, rouge, &amp;quot;Pays du Kremlin&amp;quot;};&lt;br /&gt;
	deb::Enigme eeb{rouge, blanc, noir, &amp;quot;Quel est ce pays ? Xdldm&amp;quot;};&lt;br /&gt;
	std::vector&amp;lt;deb::Enigme&amp;gt; vectEnigme{ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ez,eea,eeb};&lt;br /&gt;
&lt;br /&gt;
	//loop&lt;br /&gt;
	&lt;br /&gt;
	if (appui sur bouton acquisition)  //on enregistre la couleur actuelle&lt;br /&gt;
	{	&lt;br /&gt;
		int a,b,c = 10,10,1024; //on recupere les valeurs du capteur&lt;br /&gt;
		&lt;br /&gt;
		if (test==4) &lt;br /&gt;
		{&lt;br /&gt;
			bonneReponse=0; //il y a trop de reponse le resultat sera faut&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if (test==3)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.trois.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=4;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==2)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.deux.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=3;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==1)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.un.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=2;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
		&lt;br /&gt;
	if (appui sur le bouton validé and erreur!=-1)//on regarde le resultat final&lt;br /&gt;
	{&lt;br /&gt;
		if (bonneReponse==3) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Victoire ! Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==0) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as fait une erreur. Repars de zéro et essaye encore. \n&amp;quot;;&lt;br /&gt;
			erreur =1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==1) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as perdu. Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	if (appui sur bouton validé and erreur==-1) //lancement nouvelle enigme&lt;br /&gt;
	{	&lt;br /&gt;
		srand((unsigned) time(NULL));&lt;br /&gt;
		deb::Enigme enigmeEnCours=vectEnigme[rand() % 28];&lt;br /&gt;
		std::cout &amp;lt;&amp;lt; enigmeEnCours.question &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
		erreur=0;&lt;br /&gt;
		test=1;&lt;br /&gt;
		bonneReponse=0;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.cpp:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb &lt;br /&gt;
{&lt;br /&gt;
	bool Color::isitme(int r,int g,int b) const&lt;br /&gt;
	{&lt;br /&gt;
		if (r&amp;lt;(red-200)) {return false;}&lt;br /&gt;
		if (r&amp;gt;(red+200)) {return false;}&lt;br /&gt;
		if (g&amp;lt;(green-200)) {return false;}&lt;br /&gt;
		if (g&amp;gt;(green+200)) {return false;}&lt;br /&gt;
		if (b&amp;lt;(blue-200)) {return false;}&lt;br /&gt;
		if (b&amp;gt;(blue+200)) {return false;}	&lt;br /&gt;
		return true;&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}// namespace deb&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.hpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_COLOR_HPP&lt;br /&gt;
#define DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Color&lt;br /&gt;
  {&lt;br /&gt;
    int red,green,blue;&lt;br /&gt;
&lt;br /&gt;
    Color(int red, int green, int blue): red{std::move(red)}, green{std::move(green)}, blue{std::move(blue)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
    bool isitme(int r,int g,int b) const;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
enigme.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_ENIGME_HPP&lt;br /&gt;
#define DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Enigme&lt;br /&gt;
  {&lt;br /&gt;
    Color un,deux,trois;&lt;br /&gt;
    std::string question;&lt;br /&gt;
&lt;br /&gt;
    Enigme(Color u, Color d, Color t, std::string q): un{std::move(u)}, deux{std::move(d)}, trois{std::move(t)}, question{std::move(q)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22063</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22063"/>
				<updated>2023-01-26T13:47:09Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : /* Code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:colle1.jpeg|600px]] —&amp;gt; [[Fichier:colle2.jpeg|600px]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
prog.cpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
#include &amp;quot;enigme.hpp&amp;quot;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;random&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
	//variable initiale&lt;br /&gt;
	int erreur=-1;&lt;br /&gt;
	int test=1;&lt;br /&gt;
	int bonneReponse=0;&lt;br /&gt;
&lt;br /&gt;
	//liste des couleurs disponible pour les drapeaux &lt;br /&gt;
	deb::Color rouge{1024, 0, 0};&lt;br /&gt;
	deb::Color bleu{0, 0, 1024};&lt;br /&gt;
	deb::Color blanc{1024, 1024, 1024};&lt;br /&gt;
	deb::Color noir{0, 0, 0};&lt;br /&gt;
	deb::Color vert{0, 1024 ,0};&lt;br /&gt;
	deb::Color orange{0, 0, 1024};&lt;br /&gt;
	deb::Color jaune{0, 0, 1024};&lt;br /&gt;
&lt;br /&gt;
	//liste des enigmes &lt;br /&gt;
	deb::Enigme ea{bleu, blanc, rouge, &amp;quot;Pays du champagne&amp;quot;};&lt;br /&gt;
	deb::Enigme eb{vert, blanc, rouge, &amp;quot;Pays des pâtes&amp;quot;};&lt;br /&gt;
	deb::Enigme ec{vert, blanc, orange, &amp;quot;Pays des moutons &amp;quot;};&lt;br /&gt;
	deb::Enigme ed{rouge, blanc, rouge, &amp;quot;Pays d’origine de Marie Antoinette&amp;quot;};&lt;br /&gt;
	deb::Enigme ee{noir, rouge, jaune, &amp;quot;Pays d’origine des knödels &amp;quot;};&lt;br /&gt;
	deb::Enigme ef{jaune, vert, rouge, &amp;quot;Quel est ce pays ? Mjubojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eg{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? .-.. ..- -..- . -- -... --- ..- .-. --.&amp;quot;};&lt;br /&gt;
	deb::Enigme eh{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? Ozxr-Azr&amp;quot;};&lt;br /&gt;
	deb::Enigme ei{noir, jaune, rouge, &amp;quot;Pays de la gaufre&amp;quot;};&lt;br /&gt;
	deb::Enigme ej{vert, jaune, bleu, &amp;quot;Mon premier est un mec. Mon second qualifie quelque chose d’agréable.&amp;quot;};&lt;br /&gt;
	deb::Enigme ek{blanc, bleu, noir, &amp;quot;Quel est ce pays ? . ... - --- -. .. .&amp;quot;};&lt;br /&gt;
	deb::Enigme el{rouge, blanc, rouge, &amp;quot;Quel est ce pays ? 53886643&amp;quot;};&lt;br /&gt;
	deb::Enigme em{rouge, blanc, vert, &amp;quot;Mon premier est un pronom personnel indéfini. Mon second contient autant de rouge que de vert que de bleu.&amp;quot;};&lt;br /&gt;
	deb::Enigme en{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? Spvnbojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eo{bleu, jaune, rouge, &amp;quot;Ma capitale est vieille &amp;quot;};&lt;br /&gt;
	deb::Enigme ep{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? - -.-. .... .- -..&amp;quot;};&lt;br /&gt;
	deb::Enigme eq{rouge, bleu, orange, &amp;quot;Son papier sent bon &amp;quot;};&lt;br /&gt;
	deb::Enigme er{bleu, rouge, vert, &amp;quot;Quel est ce pays ? 2937224526&amp;quot;};&lt;br /&gt;
	deb::Enigme es{rouge, jaune, vert, &amp;quot;Ma capitale est La Paz&amp;quot;};&lt;br /&gt;
	deb::Enigme et{rouge, jaune, vert, &amp;quot;Mon premier est la plante sous laquelle il faut s’embrasser. Mon second est l’arrivée en ce monde.&amp;quot;};&lt;br /&gt;
	deb::Enigme eu{blanc, vert, rouge, &amp;quot;Mon premier est une sphère d’une substance dans une autre. Mon second est un mec. Mon troisième peut être cantonais, thai ou basmati. &amp;quot;};&lt;br /&gt;
	deb::Enigme ev{jaune, bleu, rouge, &amp;quot;Ma capitale est Bogota&amp;quot;};&lt;br /&gt;
	deb::Enigme ew{orange, blanc, vert, &amp;quot;Quel est ce pays ? Dpuf e’Jwpjsf&amp;quot;};&lt;br /&gt;
	deb::Enigme ex{vert, jaune, rouge, &amp;quot;Quel est ce pays ? -- .- .-.. ..&amp;quot;};&lt;br /&gt;
	deb::Enigme ey{vert, blanc, vert, &amp;quot;Quel est ce pays ? 6443742&amp;quot;};&lt;br /&gt;
	deb::Enigme ez{rouge, blanc, rouge, &amp;quot;Pays du Macchu Picchu&amp;quot;};&lt;br /&gt;
	deb::Enigme eea{blanc, bleu, rouge, &amp;quot;Pays du Kremlin&amp;quot;};&lt;br /&gt;
	deb::Enigme eeb{rouge, blanc, noir, &amp;quot;Quel est ce pays ? Xdldm&amp;quot;};&lt;br /&gt;
	std::vector&amp;lt;deb::Enigme&amp;gt; vectEnigme{ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ez,eea,eeb};&lt;br /&gt;
&lt;br /&gt;
	//loop&lt;br /&gt;
	&lt;br /&gt;
	if (appui sur bouton acquisition)  //on enregistre la couleur actuelle&lt;br /&gt;
	{	&lt;br /&gt;
		int a,b,c = 10,10,1024; //on recupere les valeurs du capteur&lt;br /&gt;
		&lt;br /&gt;
		if (test==4) &lt;br /&gt;
		{&lt;br /&gt;
			bonneReponse=0; //il y a trop de reponse le resultat sera faut&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if (test==3)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.trois.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=4;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==2)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.deux.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=3;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==1)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.un.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=2;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
		&lt;br /&gt;
	if (appui sur le bouton validé and erreur!=-1)//on regarde le resultat final&lt;br /&gt;
	{&lt;br /&gt;
		if (bonneReponse==3) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Victoire ! Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==0) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as fait une erreur. Repars de zéro et essaye encore. \n&amp;quot;;&lt;br /&gt;
			erreur =1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==1) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as perdu. Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	if (appui sur bouton validé and erreur==-1) //lancement nouvelle enigme&lt;br /&gt;
	{	&lt;br /&gt;
		srand((unsigned) time(NULL));&lt;br /&gt;
		deb::Enigme enigmeEnCours=vectEnigme[rand() % 28];&lt;br /&gt;
		std::cout &amp;lt;&amp;lt; enigmeEnCours.question &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
		erreur=0;&lt;br /&gt;
		test=1;&lt;br /&gt;
		bonneReponse=0;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.cpp:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb &lt;br /&gt;
{&lt;br /&gt;
	bool Color::isitme(int r,int g,int b) const&lt;br /&gt;
	{&lt;br /&gt;
		if (r&amp;lt;(red-200)) {return false;}&lt;br /&gt;
		if (r&amp;gt;(red+200)) {return false;}&lt;br /&gt;
		if (g&amp;lt;(green-200)) {return false;}&lt;br /&gt;
		if (g&amp;gt;(green+200)) {return false;}&lt;br /&gt;
		if (b&amp;lt;(blue-200)) {return false;}&lt;br /&gt;
		if (b&amp;gt;(blue+200)) {return false;}	&lt;br /&gt;
		return true;&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}// namespace deb&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.hpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_COLOR_HPP&lt;br /&gt;
#define DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Color&lt;br /&gt;
  {&lt;br /&gt;
    int red,green,blue;&lt;br /&gt;
&lt;br /&gt;
    Color(int red, int green, int blue): red{std::move(red)}, green{std::move(green)}, blue{std::move(blue)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
    bool isitme(int r,int g,int b) const;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
enigme.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_ENIGME_HPP&lt;br /&gt;
#define DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Enigme&lt;br /&gt;
  {&lt;br /&gt;
    Color un,deux,trois;&lt;br /&gt;
    std::string question;&lt;br /&gt;
&lt;br /&gt;
    Enigme(Color u, Color d, Color t, std::string q): un{std::move(u)}, deux{std::move(d)}, trois{std::move(t)}, question{std::move(q)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22060</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22060"/>
				<updated>2023-01-26T13:45:28Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : /* Code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:colle1.jpeg|600px]] —&amp;gt; [[Fichier:colle2.jpeg|600px]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
prog.cpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
#include &amp;quot;enigme.hpp&amp;quot;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;random&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
	//variable initiale&lt;br /&gt;
	int erreur=-1;&lt;br /&gt;
	int test=1;&lt;br /&gt;
	int bonneReponse=0;&lt;br /&gt;
&lt;br /&gt;
	//liste des couleurs disponible pour les drapeaux &lt;br /&gt;
	deb::Color rouge{1024, 0, 0};&lt;br /&gt;
	deb::Color bleu{0, 0, 1024};&lt;br /&gt;
	deb::Color blanc{1024, 1024, 1024};&lt;br /&gt;
	deb::Color noir{0, 0, 0};&lt;br /&gt;
	deb::Color vert{0, 1024 ,0};&lt;br /&gt;
	deb::Color orange{0, 0, 1024};&lt;br /&gt;
	deb::Color jaune{0, 0, 1024};&lt;br /&gt;
&lt;br /&gt;
	//liste des enigmes &lt;br /&gt;
	deb::Enigme ea{bleu, blanc, rouge, &amp;quot;Pays du champagne&amp;quot;};&lt;br /&gt;
	deb::Enigme eb{vert, blanc, rouge, &amp;quot;Pays des pâtes&amp;quot;};&lt;br /&gt;
	deb::Enigme ec{vert, blanc, orange, &amp;quot;Pays des moutons &amp;quot;};&lt;br /&gt;
	deb::Enigme ed{rouge, blanc, rouge, &amp;quot;Pays d’origine de Marie Antoinette&amp;quot;};&lt;br /&gt;
	deb::Enigme ee{noir, rouge, jaune, &amp;quot;Pays d’origine des knödels &amp;quot;};&lt;br /&gt;
	deb::Enigme ef{jaune, vert, rouge, &amp;quot;Quel est ce pays ? Mjubojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eg{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? .-.. ..- -..- . -- -... --- ..- .-. --.&amp;quot;};&lt;br /&gt;
	deb::Enigme eh{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? Ozxr-Azr&amp;quot;};&lt;br /&gt;
	deb::Enigme ei{noir, jaune, rouge, &amp;quot;Pays de la gaufre&amp;quot;};&lt;br /&gt;
	deb::Enigme ej{vert, jaune, bleu, &amp;quot;Mon premier est un mec. Mon second qualifie quelque chose d’agréable.&amp;quot;};&lt;br /&gt;
	deb::Enigme ek{blanc, bleu, noir, &amp;quot;Quel est ce pays ? . ... - --- -. .. .&amp;quot;};&lt;br /&gt;
	deb::Enigme el{rouge, blanc, rouge, &amp;quot;Quel est ce pays ? 53886643&amp;quot;};&lt;br /&gt;
	deb::Enigme em{rouge, blanc, vert, &amp;quot;Mon premier est un pronom personnel indéfini. Mon second contient autant de rouge que de vert que de bleu.&amp;quot;};&lt;br /&gt;
	deb::Enigme en{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? Spvnbojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eo{bleu, jaune, rouge, &amp;quot;Ma capitale est vieille &amp;quot;};&lt;br /&gt;
	deb::Enigme ep{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? - -.-. .... .- -..&amp;quot;};&lt;br /&gt;
	deb::Enigme eq{rouge, bleu, orange, &amp;quot;Son papier sent bon &amp;quot;};&lt;br /&gt;
	deb::Enigme er{bleu, rouge, vert, &amp;quot;Quel est ce pays ? 2937224526&amp;quot;};&lt;br /&gt;
	deb::Enigme es{rouge, jaune, vert, &amp;quot;Ma capitale est La Paz&amp;quot;};&lt;br /&gt;
	deb::Enigme et{rouge, jaune, vert, &amp;quot;Mon premier est la plante sous laquelle il faut s’embrasser. Mon second est l’arrivée en ce monde.&amp;quot;};&lt;br /&gt;
	deb::Enigme eu{blanc, vert, rouge, &amp;quot;Mon premier est une sphère d’une substance dans une autre. Mon second est un mec. Mon troisième peut être cantonais, thai ou basmati. &amp;quot;};&lt;br /&gt;
	deb::Enigme ev{jaune, bleu, rouge, &amp;quot;Ma capitale est Bogota&amp;quot;};&lt;br /&gt;
	deb::Enigme ew{orange, blanc, vert, &amp;quot;Quel est ce pays ? Dpuf e’Jwpjsf&amp;quot;};&lt;br /&gt;
	deb::Enigme ex{vert, jaune, rouge, &amp;quot;Quel est ce pays ? -- .- .-.. ..&amp;quot;};&lt;br /&gt;
	deb::Enigme ey{vert, blanc, vert, &amp;quot;Quel est ce pays ? 6443742&amp;quot;};&lt;br /&gt;
	deb::Enigme ez{rouge, blanc, rouge, &amp;quot;Pays du Macchu Picchu&amp;quot;};&lt;br /&gt;
	deb::Enigme eea{blanc, bleu, rouge, &amp;quot;Pays du Kremlin&amp;quot;};&lt;br /&gt;
	deb::Enigme eeb{rouge, blanc, noir, &amp;quot;Quel est ce pays ? Xdldm&amp;quot;};&lt;br /&gt;
	std::vector&amp;lt;deb::Enigme&amp;gt; vectEnigme{ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ez,eea,eeb};&lt;br /&gt;
&lt;br /&gt;
	//loop&lt;br /&gt;
	&lt;br /&gt;
	if (appui sur bouton acquisition)  //on enregistre la couleur actuelle&lt;br /&gt;
	{	&lt;br /&gt;
		int a,b,c = 10,10,1024; //on recupere les valeurs du capteur&lt;br /&gt;
		&lt;br /&gt;
		if (test==4) &lt;br /&gt;
		{&lt;br /&gt;
			bonneReponse=0; //il y a trop de reponse le resultat sera faut&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if (test==3)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.trois.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=4;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==2)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.deux.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=3;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==1)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.un.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=2;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
		&lt;br /&gt;
	if (appui sur le bouton validé and erreur!=-1)//on regarde le resultat final&lt;br /&gt;
	{&lt;br /&gt;
		if (bonneReponse==3) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Victoire ! Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==0) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as fait une erreur. Repars de zéro et essaye encore. \n&amp;quot;;&lt;br /&gt;
			erreur =1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==1) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as perdu. Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	if (appui sur bouton validé and erreur==-1) //lancement nouvelle enigme&lt;br /&gt;
	{	&lt;br /&gt;
		srand((unsigned) time(NULL));&lt;br /&gt;
		deb::Enigme enigmeEnCours=vectEnigme[rand() % 28];&lt;br /&gt;
		std::cout &amp;lt;&amp;lt; enigmeEnCours.question &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
		erreur=0;&lt;br /&gt;
		test=1;&lt;br /&gt;
		bonneReponse=0;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.cpp:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb &lt;br /&gt;
{&lt;br /&gt;
	bool Color::isitme(int r,int g,int b) const&lt;br /&gt;
	{&lt;br /&gt;
		if (r&amp;lt;(red-200)) {return false;}&lt;br /&gt;
		if (r&amp;gt;(red+200)) {return false;}&lt;br /&gt;
		if (g&amp;lt;(green-200)) {return false;}&lt;br /&gt;
		if (g&amp;gt;(green+200)) {return false;}&lt;br /&gt;
		if (b&amp;lt;(blue-200)) {return false;}&lt;br /&gt;
		if (b&amp;gt;(blue+200)) {return false;}	&lt;br /&gt;
		return true;&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}// namespace deb&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.hpp:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_COLOR_HPP&lt;br /&gt;
#define DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Color&lt;br /&gt;
  {&lt;br /&gt;
    int red,green,blue;&lt;br /&gt;
&lt;br /&gt;
    Color(int red, int green, int blue): red{std::move(red)}, green{std::move(green)}, blue{std::move(blue)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
    bool isitme(int r,int g,int b) const;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
enigme.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_ENIGME_HPP&lt;br /&gt;
#define DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Enigme&lt;br /&gt;
  {&lt;br /&gt;
    Color un,deux,trois;&lt;br /&gt;
    std::string question;&lt;br /&gt;
&lt;br /&gt;
    Enigme(Color u, Color d, Color t, std::string q): un{std::move(u)}, deux{std::move(d)}, trois{std::move(t)}, question{std::move(q)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22058</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22058"/>
				<updated>2023-01-26T13:44:34Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : /* Code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:colle1.jpeg|600px]] —&amp;gt; [[Fichier:colle2.jpeg|600px]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
prog.cpp:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
#include &amp;quot;enigme.hpp&amp;quot;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;random&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
	//variable initiale&lt;br /&gt;
	int erreur=-1;&lt;br /&gt;
	int test=1;&lt;br /&gt;
	int bonneReponse=0;&lt;br /&gt;
&lt;br /&gt;
	//liste des couleurs disponible pour les drapeaux &lt;br /&gt;
	deb::Color rouge{1024, 0, 0};&lt;br /&gt;
	deb::Color bleu{0, 0, 1024};&lt;br /&gt;
	deb::Color blanc{1024, 1024, 1024};&lt;br /&gt;
	deb::Color noir{0, 0, 0};&lt;br /&gt;
	deb::Color vert{0, 1024 ,0};&lt;br /&gt;
	deb::Color orange{0, 0, 1024};&lt;br /&gt;
	deb::Color jaune{0, 0, 1024};&lt;br /&gt;
&lt;br /&gt;
	//liste des enigmes &lt;br /&gt;
	deb::Enigme ea{bleu, blanc, rouge, &amp;quot;Pays du champagne&amp;quot;};&lt;br /&gt;
	deb::Enigme eb{vert, blanc, rouge, &amp;quot;Pays des pâtes&amp;quot;};&lt;br /&gt;
	deb::Enigme ec{vert, blanc, orange, &amp;quot;Pays des moutons &amp;quot;};&lt;br /&gt;
	deb::Enigme ed{rouge, blanc, rouge, &amp;quot;Pays d’origine de Marie Antoinette&amp;quot;};&lt;br /&gt;
	deb::Enigme ee{noir, rouge, jaune, &amp;quot;Pays d’origine des knödels &amp;quot;};&lt;br /&gt;
	deb::Enigme ef{jaune, vert, rouge, &amp;quot;Quel est ce pays ? Mjubojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eg{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? .-.. ..- -..- . -- -... --- ..- .-. --.&amp;quot;};&lt;br /&gt;
	deb::Enigme eh{rouge, blanc, bleu, &amp;quot;Quel est ce pays ? Ozxr-Azr&amp;quot;};&lt;br /&gt;
	deb::Enigme ei{noir, jaune, rouge, &amp;quot;Pays de la gaufre&amp;quot;};&lt;br /&gt;
	deb::Enigme ej{vert, jaune, bleu, &amp;quot;Mon premier est un mec. Mon second qualifie quelque chose d’agréable.&amp;quot;};&lt;br /&gt;
	deb::Enigme ek{blanc, bleu, noir, &amp;quot;Quel est ce pays ? . ... - --- -. .. .&amp;quot;};&lt;br /&gt;
	deb::Enigme el{rouge, blanc, rouge, &amp;quot;Quel est ce pays ? 53886643&amp;quot;};&lt;br /&gt;
	deb::Enigme em{rouge, blanc, vert, &amp;quot;Mon premier est un pronom personnel indéfini. Mon second contient autant de rouge que de vert que de bleu.&amp;quot;};&lt;br /&gt;
	deb::Enigme en{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? Spvnbojf&amp;quot;};&lt;br /&gt;
	deb::Enigme eo{bleu, jaune, rouge, &amp;quot;Ma capitale est vieille &amp;quot;};&lt;br /&gt;
	deb::Enigme ep{bleu, jaune, rouge, &amp;quot;Quel est ce pays ? - -.-. .... .- -..&amp;quot;};&lt;br /&gt;
	deb::Enigme eq{rouge, bleu, orange, &amp;quot;Son papier sent bon &amp;quot;};&lt;br /&gt;
	deb::Enigme er{bleu, rouge, vert, &amp;quot;Quel est ce pays ? 2937224526&amp;quot;};&lt;br /&gt;
	deb::Enigme es{rouge, jaune, vert, &amp;quot;Ma capitale est La Paz&amp;quot;};&lt;br /&gt;
	deb::Enigme et{rouge, jaune, vert, &amp;quot;Mon premier est la plante sous laquelle il faut s’embrasser. Mon second est l’arrivée en ce monde.&amp;quot;};&lt;br /&gt;
	deb::Enigme eu{blanc, vert, rouge, &amp;quot;Mon premier est une sphère d’une substance dans une autre. Mon second est un mec. Mon troisième peut être cantonais, thai ou basmati. &amp;quot;};&lt;br /&gt;
	deb::Enigme ev{jaune, bleu, rouge, &amp;quot;Ma capitale est Bogota&amp;quot;};&lt;br /&gt;
	deb::Enigme ew{orange, blanc, vert, &amp;quot;Quel est ce pays ? Dpuf e’Jwpjsf&amp;quot;};&lt;br /&gt;
	deb::Enigme ex{vert, jaune, rouge, &amp;quot;Quel est ce pays ? -- .- .-.. ..&amp;quot;};&lt;br /&gt;
	deb::Enigme ey{vert, blanc, vert, &amp;quot;Quel est ce pays ? 6443742&amp;quot;};&lt;br /&gt;
	deb::Enigme ez{rouge, blanc, rouge, &amp;quot;Pays du Macchu Picchu&amp;quot;};&lt;br /&gt;
	deb::Enigme eea{blanc, bleu, rouge, &amp;quot;Pays du Kremlin&amp;quot;};&lt;br /&gt;
	deb::Enigme eeb{rouge, blanc, noir, &amp;quot;Quel est ce pays ? Xdldm&amp;quot;};&lt;br /&gt;
	std::vector&amp;lt;deb::Enigme&amp;gt; vectEnigme{ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,ez,eea,eeb};&lt;br /&gt;
&lt;br /&gt;
	//loop&lt;br /&gt;
	&lt;br /&gt;
	if (appui sur bouton acquisition)  //on enregistre la couleur actuelle&lt;br /&gt;
	{	&lt;br /&gt;
		int a,b,c = 10,10,1024; //on recupere les valeurs du capteur&lt;br /&gt;
		&lt;br /&gt;
		if (test==4) &lt;br /&gt;
		{&lt;br /&gt;
			bonneReponse=0; //il y a trop de reponse le resultat sera faut&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if (test==3)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.trois.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=4;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==2)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.deux.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=3;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if (test==1)&lt;br /&gt;
		{&lt;br /&gt;
			if (enigmeEnCours.un.isitme(a,b,c)) {bonneReponse=bonneReponse+1} //on compare a la couleur du drapeau&lt;br /&gt;
			test=2;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
		&lt;br /&gt;
	if (appui sur le bouton validé and erreur!=-1)//on regarde le resultat final&lt;br /&gt;
	{&lt;br /&gt;
		if (bonneReponse==3) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Victoire ! Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==0) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as fait une erreur. Repars de zéro et essaye encore. \n&amp;quot;;&lt;br /&gt;
			erreur =1;&lt;br /&gt;
		}&lt;br /&gt;
		if (bonneReponse!=3 and erreur==1) &lt;br /&gt;
		{&lt;br /&gt;
			std::cout &amp;lt;&amp;lt;&amp;quot;Tu as perdu. Si tu veux rejouer, clique sur JSP.\n&amp;quot;;&lt;br /&gt;
			erreur =-1;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	if (appui sur bouton validé and erreur==-1) //lancement nouvelle enigme&lt;br /&gt;
	{	&lt;br /&gt;
		srand((unsigned) time(NULL));&lt;br /&gt;
		deb::Enigme enigmeEnCours=vectEnigme[rand() % 28];&lt;br /&gt;
		std::cout &amp;lt;&amp;lt; enigmeEnCours.question &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
		erreur=0;&lt;br /&gt;
		test=1;&lt;br /&gt;
		bonneReponse=0;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.cpp:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb &lt;br /&gt;
{&lt;br /&gt;
	bool Color::isitme(int r,int g,int b) const&lt;br /&gt;
	{&lt;br /&gt;
		if (r&amp;lt;(red-200)) {return false;}&lt;br /&gt;
		if (r&amp;gt;(red+200)) {return false;}&lt;br /&gt;
		if (g&amp;lt;(green-200)) {return false;}&lt;br /&gt;
		if (g&amp;gt;(green+200)) {return false;}&lt;br /&gt;
		if (b&amp;lt;(blue-200)) {return false;}&lt;br /&gt;
		if (b&amp;gt;(blue+200)) {return false;}	&lt;br /&gt;
		return true;&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}// namespace deb&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color.hpp:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_COLOR_HPP&lt;br /&gt;
#define DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Color&lt;br /&gt;
  {&lt;br /&gt;
    int red,green,blue;&lt;br /&gt;
&lt;br /&gt;
    Color(int red, int green, int blue): red{std::move(red)}, green{std::move(green)}, blue{std::move(blue)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
    bool isitme(int r,int g,int b) const;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_COLOR_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
enigme.hpp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
#ifndef DEB_ENIGME_HPP&lt;br /&gt;
#define DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;quot;color.hpp&amp;quot;&lt;br /&gt;
&lt;br /&gt;
namespace deb {&lt;br /&gt;
&lt;br /&gt;
struct Enigme&lt;br /&gt;
  {&lt;br /&gt;
    Color un,deux,trois;&lt;br /&gt;
    std::string question;&lt;br /&gt;
&lt;br /&gt;
    Enigme(Color u, Color d, Color t, std::string q): un{std::move(u)}, deux{std::move(d)}, trois{std::move(t)}, question{std::move(q)}&lt;br /&gt;
    {/* nothing to do */}&lt;br /&gt;
&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
} // namespace deb&lt;br /&gt;
&lt;br /&gt;
#endif // DEB_ENIGME_HPP&lt;br /&gt;
&lt;br /&gt;
//----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22052</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22052"/>
				<updated>2023-01-26T13:36:10Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : /* Code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:colle1.jpeg|600px]] —&amp;gt; [[Fichier:colle2.jpeg|600px]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#define brocheS0 2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#define brocheS1 3&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#define brocheS2 4&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#define brocheS3 5&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#define brocheLecture 6&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#define brocheLED 7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// valeur mesurée pour chaque couleur&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int rouge, vert, bleu, 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;
void setup() {&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 pinMode(brocheS0, OUTPUT);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 pinMode(brocheS1, OUTPUT);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 pinMode(brocheS2, OUTPUT);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 pinMode(brocheS3, OUTPUT);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 pinMode(brocheLED, OUTPUT);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 pinMode(brocheLecture, INPUT);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 // éteignons les LEDs pour l'instant&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 digitalWrite(brocheLED, LOW);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 // Réglage de l'échelle de fréquence à 2% (plus facile à lire avec pulseIn)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 digitalWrite(brocheS0, LOW);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 digitalWrite(brocheS1, HIGH);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 // pour affichage des résultats dans le moniteur série&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Serial.begin(9600);&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;br /&gt;
&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;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 digitalWrite(brocheLED, HIGH);  // on allume les LEDs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 digitalWrite(brocheS2, LOW); // rouge&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 digitalWrite(brocheS3, LOW);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 rouge = pulseIn(brocheLecture, LOW);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Serial.print(&amp;quot;rouge: &amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Serial.print(rouge);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 digitalWrite(brocheS2, HIGH); // vert&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 digitalWrite(brocheS3, HIGH);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 vert = pulseIn(brocheLecture, LOW);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Serial.print(&amp;quot;  vert: &amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Serial.print(vert);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 digitalWrite(brocheS2, LOW); // bleu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 digitalWrite(brocheS3, HIGH);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 bleu = pulseIn(brocheLecture, LOW);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Serial.print(&amp;quot; bleu: &amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Serial.print(bleu);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 digitalWrite(brocheS2, HIGH); // lumière complète, sans filtre&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 digitalWrite(brocheS3, LOW);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 total = pulseIn(brocheLecture, LOW);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Serial.print(&amp;quot;  total: &amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Serial.println(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;
 digitalWrite(brocheLED, LOW);   // on éteint les LEDs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 delay(1000); // pause avant la prochaine mesure&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22038</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22038"/>
				<updated>2023-01-26T13:24:02Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:colle1.jpeg|600px]] —&amp;gt; [[Fichier:colle2.jpeg|600px]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22036</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22036"/>
				<updated>2023-01-26T13:22:33Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : /* Réalisation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22034</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22034"/>
				<updated>2023-01-26T13:22:20Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : /* Réalisation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
[[Fichier:Colle1.jpeg|600px]]  —&amp;gt; [[Fichier:Colle2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Colle2.jpeg&amp;diff=22032</id>
		<title>Fichier:Colle2.jpeg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Colle2.jpeg&amp;diff=22032"/>
				<updated>2023-01-26T13:21:44Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Colle1.jpeg&amp;diff=22031</id>
		<title>Fichier:Colle1.jpeg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Colle1.jpeg&amp;diff=22031"/>
				<updated>2023-01-26T13:19:16Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22030</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22030"/>
				<updated>2023-01-26T13:17:05Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : /* Réalisation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22029</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22029"/>
				<updated>2023-01-26T13:16:25Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : /* Réalisation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Media:Decoupe laser.svg|téléchargez le svg]]&lt;br /&gt;
[[Fichier:Decoupe laser.JPG|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22026</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22026"/>
				<updated>2023-01-26T13:13:16Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Decoupe laser.svg]]&lt;br /&gt;
[[Fichier:Decoupe laser.JPG|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Decoupe_laser.svg&amp;diff=22024</id>
		<title>Fichier:Decoupe laser.svg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Decoupe_laser.svg&amp;diff=22024"/>
				<updated>2023-01-26T13:12:51Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : L0cazard a téléversé une nouvelle version de Fichier:Decoupe laser.svg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22023</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22023"/>
				<updated>2023-01-26T13:11:31Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
Ci dessous la liste de nos énigmes&lt;br /&gt;
[[Fichier:Liste des énigmes.docx]] &lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Decoupe laser.JPG|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Liste_des_%C3%A9nigmes.docx&amp;diff=22020</id>
		<title>Fichier:Liste des énigmes.docx</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Liste_des_%C3%A9nigmes.docx&amp;diff=22020"/>
				<updated>2023-01-26T13:10:13Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22004</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=22004"/>
				<updated>2023-01-26T12:53:11Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Decoupe laser.JPG|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
Astuce : Mettre du scotch pour avoir des bords lisses&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21999</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21999"/>
				<updated>2023-01-26T12:51:00Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Decoupe laser.JPG|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  —&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21998</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21998"/>
				<updated>2023-01-26T12:49:23Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Decoupe laser.JPG|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]  --&amp;gt; [[Fichier:Peinture2.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Peinture2.jpeg&amp;diff=21996</id>
		<title>Fichier:Peinture2.jpeg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Peinture2.jpeg&amp;diff=21996"/>
				<updated>2023-01-26T12:48:38Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21993</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21993"/>
				<updated>2023-01-26T11:27:13Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Decoupe laser.JPG|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21992</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21992"/>
				<updated>2023-01-26T11:25:51Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Decoupe_laser.svg]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21991</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21991"/>
				<updated>2023-01-26T11:25:24Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Decoupe_laser.svg]&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21988</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21988"/>
				<updated>2023-01-26T11:08:30Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Decoupe laser.JPG|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21987</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21987"/>
				<updated>2023-01-26T11:07:40Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Decoupe laser.JPG|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Murs.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
[[Fichier:Peinture.jpeg|600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Peinture.jpeg&amp;diff=21986</id>
		<title>Fichier:Peinture.jpeg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Peinture.jpeg&amp;diff=21986"/>
				<updated>2023-01-26T11:07:05Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Murs.jpeg&amp;diff=21985</id>
		<title>Fichier:Murs.jpeg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Murs.jpeg&amp;diff=21985"/>
				<updated>2023-01-26T11:06:07Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21983</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21983"/>
				<updated>2023-01-26T11:03:40Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Decoupe laser.JPG|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser.&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
A l'aide de la colle à bois, coller les murs du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Decoupe_laser.JPG&amp;diff=21979</id>
		<title>Fichier:Decoupe laser.JPG</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Decoupe_laser.JPG&amp;diff=21979"/>
				<updated>2023-01-26T10:59:15Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Decoupe_laser.svg&amp;diff=21978</id>
		<title>Fichier:Decoupe laser.svg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Decoupe_laser.svg&amp;diff=21978"/>
				<updated>2023-01-26T10:53:10Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21977</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21977"/>
				<updated>2023-01-26T10:47:41Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21976</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21976"/>
				<updated>2023-01-26T10:47:02Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit voyageurs2.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
[[Fichier:Petit voyageurs3.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés / graver.&lt;br /&gt;
&lt;br /&gt;
'''Etape 8:'''&lt;br /&gt;
Découper et graver les murs du labyrinthe à la découpe laser&lt;br /&gt;
&lt;br /&gt;
'''Etape 9:'''&lt;br /&gt;
Peindre certaines cases du labyrinthe en fonction des couleurs nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 10:'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Petit_voyageurs3.jpg&amp;diff=21975</id>
		<title>Fichier:Petit voyageurs3.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Petit_voyageurs3.jpg&amp;diff=21975"/>
				<updated>2023-01-26T10:46:22Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Petit_voyageurs2.jpg&amp;diff=21974</id>
		<title>Fichier:Petit voyageurs2.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Petit_voyageurs2.jpg&amp;diff=21974"/>
				<updated>2023-01-26T10:43:31Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21973</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21973"/>
				<updated>2023-01-26T10:34:38Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : /* Matériels et machines utilisés */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de Cork de 30cm x 30cm &lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés.&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21961</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21961"/>
				<updated>2023-01-25T15:00:09Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de plexi-glace ( 25cm x 25cm)&lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires.&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes.&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code. (cf code ci dessous)&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton.&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois.&lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
Sur inskape, creer un fichier avec toutes les murs du labyrinthe qui doivent être découpés.&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21956</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21956"/>
				<updated>2023-01-25T14:36:10Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de plexi-glace ( 25cm x 25cm)&lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petits voyageurs 1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois &lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21955</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21955"/>
				<updated>2023-01-25T14:34:12Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : /* Réalisation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de plexi-glace ( 25cm x 25cm)&lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe &lt;br /&gt;
&lt;br /&gt;
Fichier:Petits voyageurs 1.jpg&lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois &lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Petits_voyageurs_1.jpg&amp;diff=21954</id>
		<title>Fichier:Petits voyageurs 1.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=Fichier:Petits_voyageurs_1.jpg&amp;diff=21954"/>
				<updated>2023-01-25T14:32:08Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : L0cazard a téléversé une nouvelle version de Fichier:Petits voyageurs 1.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21953</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21953"/>
				<updated>2023-01-25T14:17:40Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de plexi-glace ( 25cm x 25cm)&lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
'''Etape 1:'''&lt;br /&gt;
Souder les composants si nécessaires&lt;br /&gt;
&lt;br /&gt;
'''Etape 2:'''&lt;br /&gt;
Créer les énigmes&lt;br /&gt;
&lt;br /&gt;
'''Etape 3:'''&lt;br /&gt;
Ecrire le code&lt;br /&gt;
&lt;br /&gt;
'''Etape 4:'''&lt;br /&gt;
Etablir un plan du labyrinthe &lt;br /&gt;
&lt;br /&gt;
'''Etape 5:'''&lt;br /&gt;
Faire un prototype du labyrinthe en carton&lt;br /&gt;
&lt;br /&gt;
'''Etape 6:'''&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois &lt;br /&gt;
&lt;br /&gt;
'''Etape 7:'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21952</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21952"/>
				<updated>2023-01-25T14:15:31Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de plexi-glace ( 25cm x 25cm)&lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;quot;Etape 1:&amp;quot;&amp;quot;&lt;br /&gt;
Souder les composants si nécessaires&lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;quot;Etape 2:&amp;quot;&amp;quot;&lt;br /&gt;
Créer les énigmes&lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;quot;Etape 3:&amp;quot;&amp;quot; &lt;br /&gt;
Ecrire le code&lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;quot;Etape 4:&amp;quot;&amp;quot;&lt;br /&gt;
Etablir un plan du labyrinthe &lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;quot;Etape 5:&amp;quot;&amp;quot;&lt;br /&gt;
Faire un prototype du labyrinthe en carton&lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;quot;Etape 6:&amp;quot;&amp;quot;&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois &lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;quot;Etape 7:&amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	<entry>
		<id>http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21949</id>
		<title>ENIB 2023 : Les petits voyageurs</title>
		<link rel="alternate" type="text/html" href="http://wiki.lesfabriquesduponant.net/index.php?title=ENIB_2023_:_Les_petits_voyageurs&amp;diff=21949"/>
				<updated>2023-01-25T14:05:10Z</updated>
		
		<summary type="html">&lt;p&gt;L0cazard : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Les petits voyageurs:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Description courte==&lt;br /&gt;
Résoudre une énigme faisant deviner un pays. &lt;br /&gt;
&lt;br /&gt;
Déplacer le capteur de couleur dans le labyrinthe pour faire une suite de couleur correspondant au drapeau du pays.&lt;br /&gt;
&lt;br /&gt;
==Matériels et machines utilisés==&lt;br /&gt;
&lt;br /&gt;
* plaque de bois de 30cm x 30cm                           &lt;br /&gt;
* 2 boutons poussoirs                                      &lt;br /&gt;
* 1 capteur RGB TCS3200                                    &lt;br /&gt;
* carte Arduino                                   &lt;br /&gt;
* cartons ( pour créer le prototype)&lt;br /&gt;
* câbles Dupont&lt;br /&gt;
* plaque de plexi-glace ( 25cm x 25cm)&lt;br /&gt;
&lt;br /&gt;
* découpeuse laser&lt;br /&gt;
* poste à souder&lt;br /&gt;
* pistolet a colle&lt;br /&gt;
&lt;br /&gt;
== Réalisation==&lt;br /&gt;
&lt;br /&gt;
Etape 1:&lt;br /&gt;
Souder les composants si nécessaires&lt;br /&gt;
&lt;br /&gt;
Etape 2:&lt;br /&gt;
Créer les énigmes&lt;br /&gt;
&lt;br /&gt;
Etape 3: &lt;br /&gt;
Ecrire le code&lt;br /&gt;
&lt;br /&gt;
Etape 4:&lt;br /&gt;
Etablir un plan du labyrinthe &lt;br /&gt;
&lt;br /&gt;
Etape 5:&lt;br /&gt;
Faire un prototype du labyrinthe en carton&lt;br /&gt;
&lt;br /&gt;
Etape 6:&lt;br /&gt;
tracer le labyrinthe sur la plaque de bois &lt;br /&gt;
&lt;br /&gt;
Etape 7:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ici je pose mon code documenté !&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catégories==&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Enib2023]]&lt;/div&gt;</summary>
		<author><name>L0cazard</name></author>	</entry>

	</feed>