<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
		<id>https://projets-ima.plil.fr/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Yhu</id>
		<title>Wiki de Projets IMA - Contributions de l’utilisateur [fr]</title>
		<link rel="self" type="application/atom+xml" href="https://projets-ima.plil.fr/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Yhu"/>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php/Sp%C3%A9cial:Contributions/Yhu"/>
		<updated>2026-05-13T19:11:25Z</updated>
		<subtitle>Contributions de l’utilisateur</subtitle>
		<generator>MediaWiki 1.29.2</generator>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20952</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20952"/>
				<updated>2015-05-10T19:42:19Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 5 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tâches sur le bus sérial &lt;br /&gt;
* tâche1: envoyer en boucle le caractère ‘!’&lt;br /&gt;
* tâche 2: envoyer en boucle le message &amp;quot;Bienvenue chez Polytech'Lille&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Semaine4===&lt;br /&gt;
Réaliser des sémaphores&lt;br /&gt;
*Comme les deux tâches sont sur le port série et le bus SPI, il est nécessaire de gérer l'accès concurrent au port entre deux tâches. Il faut donc mettre en place un mécanisme de sémaphores permettant d'assurer l'accès exculsif au port série et le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:sema.jpg]]&lt;br /&gt;
&lt;br /&gt;
La fonction P() permet de vérifier si le port série ou le bus SPI est disponible, si oui le prend, si non la tâche l'exécutant est suspendue. La fonction V() sert à rendre le port série ou le bus SPI et, si besoin, rend active la tâche suspendue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine 5===&lt;br /&gt;
Concevoir l’ordonnanceur &lt;br /&gt;
&lt;br /&gt;
J’ai réalisé un ordonnanceur à partir des ressources fournies par le professeur. Cette ordonnanceur utilisait l’algorithme de Round Robin avec une intervalle de 20ms. Il fallait que l’Arduino ordonnance six tâches. &lt;br /&gt;
Ici, il a été nécessaire d’utiliser un système d'exploitation temps réel “avr(RTOS)” afin d’ exécuter les tâches simultanément.&lt;br /&gt;
&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le mBlock avec language Scratch.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led allumé ou éteinte en fonction de la luminosité &lt;br /&gt;
*affichage de la température, luminosité&lt;br /&gt;
&lt;br /&gt;
Voici un des programme pour faire led allumée ou éteinte en fonction de la luminosité. Dans un premier temps, j’ai programmé sur scratch( le détail des opérations est dans la documentation). Après, j’ai écrit le programme correspondant à scratch sur arduino pour faire apprendre la programmation de Arduino aux enfants.&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:scratch.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Sources de documentation ===&lt;br /&gt;
*TP système &lt;br /&gt;
http://vantroys.polytech-lille.net/enseignement/IMA4_OS/tp_scheduler/&lt;br /&gt;
*I2c &lt;br /&gt;
http://www.embedds.com/programming-avr-i2c-interface/&lt;br /&gt;
*Scratch&lt;br /&gt;
http://fr.wikipedia.org/wiki/Scratch_%28langage%29&lt;br /&gt;
*Ordonnancementdans les systèmes d'exploitation&lt;br /&gt;
http://fr.wikipedia.org/wiki/Ordonnancement_dans_les_syst%C3%A8mes_d%27exploitation&lt;br /&gt;
*Guide de référence pour scratch &lt;br /&gt;
http://scratchfr.free.fr/k1n8g7/ScratchRefGuidefrv14A4.pdf&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20951</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20951"/>
				<updated>2015-05-10T19:37:04Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Sources de documentation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tâches sur le bus sérial &lt;br /&gt;
* tâche1: envoyer en boucle le caractère ‘!’&lt;br /&gt;
* tâche 2: envoyer en boucle le message &amp;quot;Bienvenue chez Polytech'Lille&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Semaine4===&lt;br /&gt;
Réaliser des sémaphores&lt;br /&gt;
*Comme les deux tâches sont sur le port série et le bus SPI, il est nécessaire de gérer l'accès concurrent au port entre deux tâches. Il faut donc mettre en place un mécanisme de sémaphores permettant d'assurer l'accès exculsif au port série et le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:sema.jpg]]&lt;br /&gt;
&lt;br /&gt;
La fonction P() permet de vérifier si le port série ou le bus SPI est disponible, si oui le prend, si non la tâche l'exécutant est suspendue. La fonction V() sert à rendre le port série ou le bus SPI et, si besoin, rend active la tâche suspendue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine 5===&lt;br /&gt;
Concevoir l’ordonnanceur &lt;br /&gt;
&lt;br /&gt;
J’ai réalisé un ordonnanceur à partir des ressources fournies par le professeur. Cette ordonnanceur utilisait l’algorithme de Round Robin avec une intervalle de 20ms. Il fallait que l’Arduino ordonnance six tâches. &lt;br /&gt;
Ici, il a été nécessaire d’utiliser un système d'exploitation temps réel “avr(RTOS)” afin d’ exécuter les tâches simultanément. Comme un ordinateur ne peut exécuter qu’une tâche à la fois, pour que les tâches soit exécutées de manière simultanée, il faut le noyau commute rapidement entre le contexte d'exécution des tâches. Et ceci, de manière à ce qu’une seule tâche soit exécutée à la fois mais que globalement toutes les tâches soient exécutées.&lt;br /&gt;
&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le mBlock avec language Scratch.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led allumé ou éteinte en fonction de la luminosité &lt;br /&gt;
*affichage de la température, luminosité&lt;br /&gt;
&lt;br /&gt;
Voici un des programme pour faire led allumée ou éteinte en fonction de la luminosité. Dans un premier temps, j’ai programmé sur scratch( le détail des opérations est dans la documentation). Après, j’ai écrit le programme correspondant à scratch sur arduino pour faire apprendre la programmation de Arduino aux enfants.&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:scratch.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Sources de documentation ===&lt;br /&gt;
*TP système &lt;br /&gt;
http://vantroys.polytech-lille.net/enseignement/IMA4_OS/tp_scheduler/&lt;br /&gt;
*I2c &lt;br /&gt;
http://www.embedds.com/programming-avr-i2c-interface/&lt;br /&gt;
*Scratch&lt;br /&gt;
http://fr.wikipedia.org/wiki/Scratch_%28langage%29&lt;br /&gt;
*Ordonnancementdans les systèmes d'exploitation&lt;br /&gt;
http://fr.wikipedia.org/wiki/Ordonnancement_dans_les_syst%C3%A8mes_d%27exploitation&lt;br /&gt;
*Guide de référence pour scratch &lt;br /&gt;
http://scratchfr.free.fr/k1n8g7/ScratchRefGuidefrv14A4.pdf&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20950</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20950"/>
				<updated>2015-05-10T19:36:34Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Avancement du Projet */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tâches sur le bus sérial &lt;br /&gt;
* tâche1: envoyer en boucle le caractère ‘!’&lt;br /&gt;
* tâche 2: envoyer en boucle le message &amp;quot;Bienvenue chez Polytech'Lille&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Semaine4===&lt;br /&gt;
Réaliser des sémaphores&lt;br /&gt;
*Comme les deux tâches sont sur le port série et le bus SPI, il est nécessaire de gérer l'accès concurrent au port entre deux tâches. Il faut donc mettre en place un mécanisme de sémaphores permettant d'assurer l'accès exculsif au port série et le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:sema.jpg]]&lt;br /&gt;
&lt;br /&gt;
La fonction P() permet de vérifier si le port série ou le bus SPI est disponible, si oui le prend, si non la tâche l'exécutant est suspendue. La fonction V() sert à rendre le port série ou le bus SPI et, si besoin, rend active la tâche suspendue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine 5===&lt;br /&gt;
Concevoir l’ordonnanceur &lt;br /&gt;
&lt;br /&gt;
J’ai réalisé un ordonnanceur à partir des ressources fournies par le professeur. Cette ordonnanceur utilisait l’algorithme de Round Robin avec une intervalle de 20ms. Il fallait que l’Arduino ordonnance six tâches. &lt;br /&gt;
Ici, il a été nécessaire d’utiliser un système d'exploitation temps réel “avr(RTOS)” afin d’ exécuter les tâches simultanément. Comme un ordinateur ne peut exécuter qu’une tâche à la fois, pour que les tâches soit exécutées de manière simultanée, il faut le noyau commute rapidement entre le contexte d'exécution des tâches. Et ceci, de manière à ce qu’une seule tâche soit exécutée à la fois mais que globalement toutes les tâches soient exécutées.&lt;br /&gt;
&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le mBlock avec language Scratch.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led allumé ou éteinte en fonction de la luminosité &lt;br /&gt;
*affichage de la température, luminosité&lt;br /&gt;
&lt;br /&gt;
Voici un des programme pour faire led allumée ou éteinte en fonction de la luminosité. Dans un premier temps, j’ai programmé sur scratch( le détail des opérations est dans la documentation). Après, j’ai écrit le programme correspondant à scratch sur arduino pour faire apprendre la programmation de Arduino aux enfants.&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:scratch.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Sources de documentation ===&lt;br /&gt;
TP système &lt;br /&gt;
http://vantroys.polytech-lille.net/enseignement/IMA4_OS/tp_scheduler/&lt;br /&gt;
I2c &lt;br /&gt;
http://www.embedds.com/programming-avr-i2c-interface/&lt;br /&gt;
Scratch&lt;br /&gt;
http://fr.wikipedia.org/wiki/Scratch_%28langage%29&lt;br /&gt;
Ordonnancementdans les systèmes d'exploitation&lt;br /&gt;
http://fr.wikipedia.org/wiki/Ordonnancement_dans_les_syst%C3%A8mes_d%27exploitation&lt;br /&gt;
Guide de référence pour scratch &lt;br /&gt;
http://scratchfr.free.fr/k1n8g7/ScratchRefGuidefrv14A4.pdf&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Scratch.jpg&amp;diff=20949</id>
		<title>Fichier:Scratch.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Scratch.jpg&amp;diff=20949"/>
				<updated>2015-05-10T19:33:27Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20948</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20948"/>
				<updated>2015-05-10T19:32:37Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 10 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tâches sur le bus sérial &lt;br /&gt;
* tâche1: envoyer en boucle le caractère ‘!’&lt;br /&gt;
* tâche 2: envoyer en boucle le message &amp;quot;Bienvenue chez Polytech'Lille&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Semaine4===&lt;br /&gt;
Réaliser des sémaphores&lt;br /&gt;
*Comme les deux tâches sont sur le port série et le bus SPI, il est nécessaire de gérer l'accès concurrent au port entre deux tâches. Il faut donc mettre en place un mécanisme de sémaphores permettant d'assurer l'accès exculsif au port série et le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:sema.jpg]]&lt;br /&gt;
&lt;br /&gt;
La fonction P() permet de vérifier si le port série ou le bus SPI est disponible, si oui le prend, si non la tâche l'exécutant est suspendue. La fonction V() sert à rendre le port série ou le bus SPI et, si besoin, rend active la tâche suspendue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine 5===&lt;br /&gt;
Concevoir l’ordonnanceur &lt;br /&gt;
&lt;br /&gt;
J’ai réalisé un ordonnanceur à partir des ressources fournies par le professeur. Cette ordonnanceur utilisait l’algorithme de Round Robin avec une intervalle de 20ms. Il fallait que l’Arduino ordonnance six tâches. &lt;br /&gt;
Ici, il a été nécessaire d’utiliser un système d'exploitation temps réel “avr(RTOS)” afin d’ exécuter les tâches simultanément. Comme un ordinateur ne peut exécuter qu’une tâche à la fois, pour que les tâches soit exécutées de manière simultanée, il faut le noyau commute rapidement entre le contexte d'exécution des tâches. Et ceci, de manière à ce qu’une seule tâche soit exécutée à la fois mais que globalement toutes les tâches soient exécutées.&lt;br /&gt;
&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le mBlock avec language Scratch.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led allumé ou éteinte en fonction de la luminosité &lt;br /&gt;
*affichage de la température, luminosité&lt;br /&gt;
&lt;br /&gt;
Voici un des programme pour faire led allumée ou éteinte en fonction de la luminosité. Dans un premier temps, j’ai programmé sur scratch( le détail des opérations est dans la documentation). Après, j’ai écrit le programme correspondant à scratch sur arduino pour faire apprendre la programmation de Arduino aux enfants.&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:scratch.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20947</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20947"/>
				<updated>2015-05-10T19:32:14Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 10 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tâches sur le bus sérial &lt;br /&gt;
* tâche1: envoyer en boucle le caractère ‘!’&lt;br /&gt;
* tâche 2: envoyer en boucle le message &amp;quot;Bienvenue chez Polytech'Lille&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Semaine4===&lt;br /&gt;
Réaliser des sémaphores&lt;br /&gt;
*Comme les deux tâches sont sur le port série et le bus SPI, il est nécessaire de gérer l'accès concurrent au port entre deux tâches. Il faut donc mettre en place un mécanisme de sémaphores permettant d'assurer l'accès exculsif au port série et le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:sema.jpg]]&lt;br /&gt;
&lt;br /&gt;
La fonction P() permet de vérifier si le port série ou le bus SPI est disponible, si oui le prend, si non la tâche l'exécutant est suspendue. La fonction V() sert à rendre le port série ou le bus SPI et, si besoin, rend active la tâche suspendue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine 5===&lt;br /&gt;
Concevoir l’ordonnanceur &lt;br /&gt;
&lt;br /&gt;
J’ai réalisé un ordonnanceur à partir des ressources fournies par le professeur. Cette ordonnanceur utilisait l’algorithme de Round Robin avec une intervalle de 20ms. Il fallait que l’Arduino ordonnance six tâches. &lt;br /&gt;
Ici, il a été nécessaire d’utiliser un système d'exploitation temps réel “avr(RTOS)” afin d’ exécuter les tâches simultanément. Comme un ordinateur ne peut exécuter qu’une tâche à la fois, pour que les tâches soit exécutées de manière simultanée, il faut le noyau commute rapidement entre le contexte d'exécution des tâches. Et ceci, de manière à ce qu’une seule tâche soit exécutée à la fois mais que globalement toutes les tâches soient exécutées.&lt;br /&gt;
&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le mBlock avec language Scratch.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led allumé ou éteinte en fonction de la luminosité &lt;br /&gt;
*affichage de la température, luminosité&lt;br /&gt;
&lt;br /&gt;
Voici un des programme pour faire led allumée ou éteinte en fonction de la luminosité. Dans un premier temps, j’ai programmé sur scratch( le détail des opérations est dans la documentation). Après, j’ai écrit le programme correspondant à scratch sur arduino pour faire apprendre la programmation de Arduino aux enfants.&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:exemple.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20946</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20946"/>
				<updated>2015-05-10T19:30:27Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 10 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tâches sur le bus sérial &lt;br /&gt;
* tâche1: envoyer en boucle le caractère ‘!’&lt;br /&gt;
* tâche 2: envoyer en boucle le message &amp;quot;Bienvenue chez Polytech'Lille&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Semaine4===&lt;br /&gt;
Réaliser des sémaphores&lt;br /&gt;
*Comme les deux tâches sont sur le port série et le bus SPI, il est nécessaire de gérer l'accès concurrent au port entre deux tâches. Il faut donc mettre en place un mécanisme de sémaphores permettant d'assurer l'accès exculsif au port série et le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:sema.jpg]]&lt;br /&gt;
&lt;br /&gt;
La fonction P() permet de vérifier si le port série ou le bus SPI est disponible, si oui le prend, si non la tâche l'exécutant est suspendue. La fonction V() sert à rendre le port série ou le bus SPI et, si besoin, rend active la tâche suspendue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine 5===&lt;br /&gt;
Concevoir l’ordonnanceur &lt;br /&gt;
&lt;br /&gt;
J’ai réalisé un ordonnanceur à partir des ressources fournies par le professeur. Cette ordonnanceur utilisait l’algorithme de Round Robin avec une intervalle de 20ms. Il fallait que l’Arduino ordonnance six tâches. &lt;br /&gt;
Ici, il a été nécessaire d’utiliser un système d'exploitation temps réel “avr(RTOS)” afin d’ exécuter les tâches simultanément. Comme un ordinateur ne peut exécuter qu’une tâche à la fois, pour que les tâches soit exécutées de manière simultanée, il faut le noyau commute rapidement entre le contexte d'exécution des tâches. Et ceci, de manière à ce qu’une seule tâche soit exécutée à la fois mais que globalement toutes les tâches soient exécutées.&lt;br /&gt;
&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le mBlock avec language Scratch.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20945</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20945"/>
				<updated>2015-05-10T19:29:39Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 5 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tâches sur le bus sérial &lt;br /&gt;
* tâche1: envoyer en boucle le caractère ‘!’&lt;br /&gt;
* tâche 2: envoyer en boucle le message &amp;quot;Bienvenue chez Polytech'Lille&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Semaine4===&lt;br /&gt;
Réaliser des sémaphores&lt;br /&gt;
*Comme les deux tâches sont sur le port série et le bus SPI, il est nécessaire de gérer l'accès concurrent au port entre deux tâches. Il faut donc mettre en place un mécanisme de sémaphores permettant d'assurer l'accès exculsif au port série et le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:sema.jpg]]&lt;br /&gt;
&lt;br /&gt;
La fonction P() permet de vérifier si le port série ou le bus SPI est disponible, si oui le prend, si non la tâche l'exécutant est suspendue. La fonction V() sert à rendre le port série ou le bus SPI et, si besoin, rend active la tâche suspendue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine 5===&lt;br /&gt;
Concevoir l’ordonnanceur &lt;br /&gt;
&lt;br /&gt;
J’ai réalisé un ordonnanceur à partir des ressources fournies par le professeur. Cette ordonnanceur utilisait l’algorithme de Round Robin avec une intervalle de 20ms. Il fallait que l’Arduino ordonnance six tâches. &lt;br /&gt;
Ici, il a été nécessaire d’utiliser un système d'exploitation temps réel “avr(RTOS)” afin d’ exécuter les tâches simultanément. Comme un ordinateur ne peut exécuter qu’une tâche à la fois, pour que les tâches soit exécutées de manière simultanée, il faut le noyau commute rapidement entre le contexte d'exécution des tâches. Et ceci, de manière à ce qu’une seule tâche soit exécutée à la fois mais que globalement toutes les tâches soient exécutées.&lt;br /&gt;
&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20944</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20944"/>
				<updated>2015-05-10T19:28:45Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Avancement du Projet */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tâches sur le bus sérial &lt;br /&gt;
* tâche1: envoyer en boucle le caractère ‘!’&lt;br /&gt;
* tâche 2: envoyer en boucle le message &amp;quot;Bienvenue chez Polytech'Lille&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Semaine4===&lt;br /&gt;
Réaliser des sémaphores&lt;br /&gt;
*Comme les deux tâches sont sur le port série et le bus SPI, il est nécessaire de gérer l'accès concurrent au port entre deux tâches. Il faut donc mettre en place un mécanisme de sémaphores permettant d'assurer l'accès exculsif au port série et le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:sema.jpg]]&lt;br /&gt;
&lt;br /&gt;
La fonction P() permet de vérifier si le port série ou le bus SPI est disponible, si oui le prend, si non la tâche l'exécutant est suspendue. La fonction V() sert à rendre le port série ou le bus SPI et, si besoin, rend active la tâche suspendue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine 5===&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20943</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20943"/>
				<updated>2015-05-10T19:27:50Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 2===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tâches sur le bus sérial &lt;br /&gt;
* tâche1: envoyer en boucle le caractère ‘!’&lt;br /&gt;
* tâche 2: envoyer en boucle le message &amp;quot;Bienvenue chez Polytech'Lille&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Réaliser des sémaphores&lt;br /&gt;
*Comme les deux tâches sont sur le port série et le bus SPI, il est nécessaire de gérer l'accès concurrent au port entre deux tâches. Il faut donc mettre en place un mécanisme de sémaphores permettant d'assurer l'accès exculsif au port série et le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:sema.jpg]]&lt;br /&gt;
&lt;br /&gt;
La fonction P() permet de vérifier si le port série ou le bus SPI est disponible, si oui le prend, si non la tâche l'exécutant est suspendue. La fonction V() sert à rendre le port série ou le bus SPI et, si besoin, rend active la tâche suspendue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Sema.jpg&amp;diff=20942</id>
		<title>Fichier:Sema.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Sema.jpg&amp;diff=20942"/>
				<updated>2015-05-10T19:26:10Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20941</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20941"/>
				<updated>2015-05-10T19:25:39Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine5 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tâches sur le bus sérial &lt;br /&gt;
* tâche1: envoyer en boucle le caractère ‘!’&lt;br /&gt;
* tâche 2: envoyer en boucle le message &amp;quot;Bienvenue chez Polytech'Lille&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Réaliser des sémaphores&lt;br /&gt;
*Comme les deux tâches sont sur le port série et le bus SPI, il est nécessaire de gérer l'accès concurrent au port entre deux tâches. Il faut donc mettre en place un mécanisme de sémaphores permettant d'assurer l'accès exculsif au port série et le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:sema.jpg]]&lt;br /&gt;
&lt;br /&gt;
La fonction P() permet de vérifier si le port série ou le bus SPI est disponible, si oui le prend, si non la tâche l'exécutant est suspendue. La fonction V() sert à rendre le port série ou le bus SPI et, si besoin, rend active la tâche suspendue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20940</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20940"/>
				<updated>2015-05-10T19:23:27Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine5 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tâches sur le bus sérial &lt;br /&gt;
* tâche1: envoyer en boucle le caractère ‘!’&lt;br /&gt;
* tâche 2: envoyer en boucle le message &amp;quot;Bienvenue chez Polytech'Lille&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Réaliser des sémaphores&lt;br /&gt;
*Comme les deux tâches sont sur le port série et le bus SPI, il est nécessaire de gérer l'accès concurrent au port entre deux tâches. Il faut donc mettre en place un mécanisme de sémaphores permettant d'assurer l'accès exculsif au port série et le bus SPI.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20939</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20939"/>
				<updated>2015-05-10T19:21:57Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 4 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tâches sur le bus sérial &lt;br /&gt;
* tâche1: envoyer en boucle le caractère ‘!’&lt;br /&gt;
* tâche 2: envoyer en boucle le message &amp;quot;Bienvenue chez Polytech'Lille&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:I2c.jpg&amp;diff=20938</id>
		<title>Fichier:I2c.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:I2c.jpg&amp;diff=20938"/>
				<updated>2015-05-10T19:20:47Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:I2c.png&amp;diff=20937</id>
		<title>Fichier:I2c.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:I2c.png&amp;diff=20937"/>
				<updated>2015-05-10T19:16:25Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20936</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20936"/>
				<updated>2015-05-10T19:13:37Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 4 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
Pour utiliser le bus i2c, il faut les fonctions suivantes:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:i2c.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20935</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20935"/>
				<updated>2015-05-10T19:12:06Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 4 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tâche sur le bus I2C&lt;br /&gt;
*tâche 1: envoyer en bouble des dessins sur une matrice monocolore via le bus I2C.&lt;br /&gt;
&lt;br /&gt;
Le paquet de la communication I2C se compose de plusieurs parties.&lt;br /&gt;
 - le signal START&lt;br /&gt;
 - l’adresse de paquet&lt;br /&gt;
 - data de paquet&lt;br /&gt;
 - le signal STOP&lt;br /&gt;
&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:SPI.png&amp;diff=20934</id>
		<title>Fichier:SPI.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:SPI.png&amp;diff=20934"/>
				<updated>2015-05-10T19:10:24Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20933</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20933"/>
				<updated>2015-05-10T19:10:02Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20932</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20932"/>
				<updated>2015-05-10T19:09:39Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
[[Fichier:SPI.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20931</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20931"/>
				<updated>2015-05-10T19:06:57Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20930</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20930"/>
				<updated>2015-05-10T19:06:24Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
réaliser les Tâches sur le bus SPI&lt;br /&gt;
*tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
*tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
[[Fichier:1.png]]&lt;br /&gt;
&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20929</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20929"/>
				<updated>2015-05-10T18:59:45Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
*réaliser les Tâches sur le bus SPI&lt;br /&gt;
-tâche 1: envoyer en double différents colonnes de couleurs sur une matrice de LED communiquent via le bus SPI. &lt;br /&gt;
-tâche 2: envoyer en boucle des chiffres sur un afficheur de 7 segments communiquent via le bus SPI. &lt;br /&gt;
Le figure ci-dessous montre la principe de la fonctionnement pour le bus SPI.&lt;br /&gt;
&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Partie2.zip&amp;diff=20928</id>
		<title>Fichier:Partie2.zip</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Partie2.zip&amp;diff=20928"/>
				<updated>2015-05-10T18:56:31Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Partie1.zip&amp;diff=20927</id>
		<title>Fichier:Partie1.zip</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Partie1.zip&amp;diff=20927"/>
				<updated>2015-05-10T18:56:02Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20926</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20926"/>
				<updated>2015-05-10T18:55:44Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Fichiers Rendus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
*Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
*Code Source Partie1:[[Fichier:partie1.zip]]&lt;br /&gt;
*Code Source Partie2:[[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20925</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20925"/>
				<updated>2015-05-10T18:54:57Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Fichiers Rendus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
Code Source Partie1:&lt;br /&gt;
 &amp;gt; [[Fichier:partie1.zip]]&lt;br /&gt;
Code Source Partie2:&lt;br /&gt;
 &amp;gt; [[Fichier:partie2.zip]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:PROJET_IMA4.pdf&amp;diff=20924</id>
		<title>Fichier:PROJET IMA4.pdf</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:PROJET_IMA4.pdf&amp;diff=20924"/>
				<updated>2015-05-10T18:52:20Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20923</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20923"/>
				<updated>2015-05-10T18:51:46Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Fichiers Rendus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
Le rapport de projet est disponible ici : [[Fichier:PROJET_IMA4.pdf]]&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20344</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20344"/>
				<updated>2015-04-20T12:33:11Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine 10 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
*led qui s’allume quand on appuie&lt;br /&gt;
*led de couleur différente allumé en fonction de la température&lt;br /&gt;
*affichage de la température&lt;br /&gt;
*bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20342</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20342"/>
				<updated>2015-04-20T12:32:37Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine10 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
===Semaine 10===&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
*Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
-led qui s’allume quand on appuie&lt;br /&gt;
-led de couleur différente allumé en fonction de la température&lt;br /&gt;
-affichage de la température&lt;br /&gt;
-bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20341</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=20341"/>
				<updated>2015-04-20T12:30:44Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Avancement du Projet */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet. Mehmet Ilter a demandé à réaliser 4 jeux :&lt;br /&gt;
&lt;br /&gt;
Le premier jeu est le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué ».&lt;br /&gt;
&lt;br /&gt;
Le jeu est décomposé en parties :&lt;br /&gt;
* Partie LED : afin d'allumer les LEDs au hasard, j’ai utilisé une fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt; qui retourne des chiffres aléatoires entre 0 à 4 correspondant aux E/S des différentes LEDs. Pour augmenter les niveaux de difficultés, le temps d'attente diminue chaque fois.&lt;br /&gt;
&lt;br /&gt;
* Partie bouton : si le bouton est appuyé avant que la LED s’allume, le nombre de points est incrémenté.&lt;br /&gt;
&lt;br /&gt;
* Partie évaluation : selon le nombre de points, le jeu va afficher un message de résultat au joueur.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
&lt;br /&gt;
Le second jeu est le casse-tête : l’appui sur un bouton changera l’état d’une ou plusieurs LEDs, l’objectif sera d’allumer toutes les LEDs. L'algorithme consiste à changer l'état des LEDs quand un bouton est appuyé. Le jeu s'arrête quans toutes les LEDs sont allumées.&lt;br /&gt;
&lt;br /&gt;
Le troisième jeu est le piano : il consiste à associer à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur. La bibliothèque de l’IDE Arduino inclut la fonction &amp;lt;tt&amp;gt;tone(pin, frequency, duration)&amp;lt;/tt&amp;gt; qui peut être utilisée directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
&lt;br /&gt;
Le quatrième jeu est le &amp;quot;répète après-moi&amp;quot; : il s’agit de programmer une séquence d’allumage des LEDs de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Ce jeu est décomposé en plusieurs parties :&lt;br /&gt;
&lt;br /&gt;
* Partie LED : la séquence d’allumage des LEDs est programmée par la fonction &amp;lt;tt&amp;gt;random()&amp;lt;/tt&amp;gt;, il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable est définie pour stocker la séquence.&lt;br /&gt;
* Partie bouton : après que la séquence soit jouée, le joueur appuye sur les boutons correspondants, sa séquence est stockée dans une autre variable.&lt;br /&gt;
* Partie évaluation : si les deux variables sont mêmes, le niveau monte.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
&lt;br /&gt;
il y a des problèmes comme le rebond des touches. J'ai passé beaucoup de temps à déboguer les programmes. Ils fonctionnent tous mais nécessitent des améliorations et des simplifications.&lt;br /&gt;
&lt;br /&gt;
==Semaine10==&lt;br /&gt;
réaliser la  troisième carte avec le ARDUBLOCK.&lt;br /&gt;
*Il faudra coder chaque composant individuellement puis faire interagir les composants :&lt;br /&gt;
-led qui s’allume quand on appuie&lt;br /&gt;
-led de couleur différente allumé en fonction de la température&lt;br /&gt;
-affichage de la température&lt;br /&gt;
-bouton qui change affichage : heure, température&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19919</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19919"/>
				<updated>2015-04-12T21:23:50Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Avancement du Projet */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet.&lt;br /&gt;
Selon les règles que mehmet a défini des jeux, il faut réalisé les 4 jeux:&lt;br /&gt;
&lt;br /&gt;
1- Le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué »&lt;br /&gt;
&lt;br /&gt;
2-étape à réaliser:&lt;br /&gt;
*Partie led : afin de allumer les leds par hasard, j’ai utilisé une fonction random() qui peux fabriquer des chiffres aléatoire entre 0 à 4 correspondant aux pins des différents leds. Pour augmenter les niveau de difficultés, les intervalles du temps entre les led diminuent chaque 20 fois .&lt;br /&gt;
&lt;br /&gt;
*Partie bouton: si le bouton est appuyé avant le prochain led s’allume, le variable right++.&lt;br /&gt;
&lt;br /&gt;
*Partie évaluation: selon le valeur de right, le jeu vas donner des résultats aux joueurs.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
-le casse-tête : l’appuie sur un bouton changera l’état d’une ou plusieurs LED, l’objectif sera d’allumer toutes les LED&lt;br /&gt;
*Partie bouton: si le bouton est appuyé, certains leds changent état ( éteint -&amp;gt;allumé , allumé -&amp;gt;éteint ), le jeu s’arrêt jusqu’à tous les leds s’allument.&lt;br /&gt;
&lt;br /&gt;
-le piano : La programmation de ce dernier sera de lié à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur.&lt;br /&gt;
*Partie bouton: différents boutons sont appuyés, différentes notes sont créés par le haut-parleur. Ici, comme la libraire a déjà intégré dans l’IDE arduino, la fonction tone(pin, frequency, duration) peut être utilisé directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
-répète après-moi : Il s’agira de programmer une séquence d’allumage de LED de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
*Partie led: la  séquence d’allumage de LED est programmé par la fonction random (), il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable défini pour stocker la séquence.&lt;br /&gt;
*Partie bouton: après les allumés des leds terminent, le joueur appuye les boutons correspondants, la séquence va stocker dans une autre variable.&lt;br /&gt;
*Partie évaluation: si les deux variables sont mêmes, il va passer au niveau plus haut.&lt;br /&gt;
&lt;br /&gt;
===Semaine9===&lt;br /&gt;
il existe des problèmes comme la instable de bouton, donc j'ai utilisé beaucoup de temps pour déboguer les programmes. enfin, ils tout fonctionnent, mais il faut encore des améliorations et simplifications.&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19918</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19918"/>
				<updated>2015-04-12T21:16:35Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine8 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet.&lt;br /&gt;
Selon les règles que mehmet a défini des jeux, il faut réalisé les 4 jeux:&lt;br /&gt;
&lt;br /&gt;
1- Le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué »&lt;br /&gt;
&lt;br /&gt;
2-étape à réaliser:&lt;br /&gt;
*Partie led : afin de allumer les leds par hasard, j’ai utilisé une fonction random() qui peux fabriquer des chiffres aléatoire entre 0 à 4 correspondant aux pins des différents leds. Pour augmenter les niveau de difficultés, les intervalles du temps entre les led diminuent chaque 20 fois .&lt;br /&gt;
&lt;br /&gt;
*Partie bouton: si le bouton est appuyé avant le prochain led s’allume, le variable right++.&lt;br /&gt;
&lt;br /&gt;
*Partie évaluation: selon le valeur de right, le jeu vas donner des résultats aux joueurs.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
-le casse-tête : l’appuie sur un bouton changera l’état d’une ou plusieurs LED, l’objectif sera d’allumer toutes les LED&lt;br /&gt;
*Partie bouton: si le bouton est appuyé, certains leds changent état ( éteint -&amp;gt;allumé , allumé -&amp;gt;éteint ), le jeu s’arrêt jusqu’à tous les leds s’allument.&lt;br /&gt;
&lt;br /&gt;
-le piano : La programmation de ce dernier sera de lié à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur.&lt;br /&gt;
*Partie bouton: différents boutons sont appuyés, différentes notes sont créés par le haut-parleur. Ici, comme la libraire a déjà intégré dans l’IDE arduino, la fonction tone(pin, frequency, duration) peut être utilisé directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
-répète après-moi : Il s’agira de programmer une séquence d’allumage de LED de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
*Partie led: la  séquence d’allumage de LED est programmé par la fonction random (), il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable défini pour stocker la séquence.&lt;br /&gt;
*Partie bouton: après les allumés des leds terminent, le joueur appuye les boutons correspondants, la séquence va stocker dans une autre variable.&lt;br /&gt;
*Partie évaluation: si les deux variables sont mêmes, il va passer au niveau plus haut.&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19917</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19917"/>
				<updated>2015-04-12T21:16:13Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine7 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet.&lt;br /&gt;
Selon les règles que mehmet a défini des jeux, il faut réalisé les 4 jeux:&lt;br /&gt;
&lt;br /&gt;
1- Le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué »&lt;br /&gt;
&lt;br /&gt;
2-étape à réaliser:&lt;br /&gt;
*Partie led : afin de allumer les leds par hasard, j’ai utilisé une fonction random() qui peux fabriquer des chiffres aléatoire entre 0 à 4 correspondant aux pins des différents leds. Pour augmenter les niveau de difficultés, les intervalles du temps entre les led diminuent chaque 20 fois .&lt;br /&gt;
&lt;br /&gt;
*Partie bouton: si le bouton est appuyé avant le prochain led s’allume, le variable right++.&lt;br /&gt;
&lt;br /&gt;
*Partie évaluation: selon le valeur de right, le jeu vas donner des résultats aux joueurs.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
-le casse-tête : l’appuie sur un bouton changera l’état d’une ou plusieurs LED, l’objectif sera d’allumer toutes les LED&lt;br /&gt;
*Partie bouton: si le bouton est appuyé, certains leds changent état ( éteint -&amp;gt;allumé , allumé -&amp;gt;éteint ), le jeu s’arrêt jusqu’à tous les leds s’allument.&lt;br /&gt;
&lt;br /&gt;
-le piano : La programmation de ce dernier sera de lié à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur.&lt;br /&gt;
*Partie bouton: différents boutons sont appuyés, différentes notes sont créés par le haut-parleur. Ici, comme la libraire a déjà intégré dans l’IDE arduino, la fonction tone(pin, frequency, duration) peut être utilisé directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
-répète après-moi : Il s’agira de programmer une séquence d’allumage de LED de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Partie led: la  séquence d’allumage de LED est programmé par la fonction random (), il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable défini pour stocker la séquence.&lt;br /&gt;
Partie bouton: après les allumés des leds terminent, le joueur appuye les boutons correspondants, la séquence va stocker dans une autre variable.&lt;br /&gt;
Partie évaluation: si les deux variables sont mêmes, il va passer au niveau plus haut.&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19916</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19916"/>
				<updated>2015-04-12T21:15:45Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine6 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet.&lt;br /&gt;
Selon les règles que mehmet a défini des jeux, il faut réalisé les 4 jeux:&lt;br /&gt;
&lt;br /&gt;
1- Le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué »&lt;br /&gt;
&lt;br /&gt;
2-étape à réaliser:&lt;br /&gt;
*Partie led : afin de allumer les leds par hasard, j’ai utilisé une fonction random() qui peux fabriquer des chiffres aléatoire entre 0 à 4 correspondant aux pins des différents leds. Pour augmenter les niveau de difficultés, les intervalles du temps entre les led diminuent chaque 20 fois .&lt;br /&gt;
&lt;br /&gt;
*Partie bouton: si le bouton est appuyé avant le prochain led s’allume, le variable right++.&lt;br /&gt;
&lt;br /&gt;
*Partie évaluation: selon le valeur de right, le jeu vas donner des résultats aux joueurs.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
-le casse-tête : l’appuie sur un bouton changera l’état d’une ou plusieurs LED, l’objectif sera d’allumer toutes les LED&lt;br /&gt;
 Partie bouton: si le bouton est appuyé, certains leds changent état ( éteint -&amp;gt;allumé , allumé -&amp;gt;éteint ), le jeu s’arrêt jusqu’à tous les leds s’allument.&lt;br /&gt;
&lt;br /&gt;
-le piano : La programmation de ce dernier sera de lié à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur.&lt;br /&gt;
 Partie bouton: différents boutons sont appuyés, différentes notes sont créés par le haut-parleur. Ici, comme la libraire a déjà intégré dans l’IDE arduino, la fonction tone(pin, frequency, duration) peut être utilisé directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
-répète après-moi : Il s’agira de programmer une séquence d’allumage de LED de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Partie led: la  séquence d’allumage de LED est programmé par la fonction random (), il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable défini pour stocker la séquence.&lt;br /&gt;
Partie bouton: après les allumés des leds terminent, le joueur appuye les boutons correspondants, la séquence va stocker dans une autre variable.&lt;br /&gt;
Partie évaluation: si les deux variables sont mêmes, il va passer au niveau plus haut.&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19915</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19915"/>
				<updated>2015-04-12T21:10:55Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Avancement du Projet */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet.&lt;br /&gt;
Selon les règles que mehmet a défini des jeux, il faut réalisé les 4 jeux:&lt;br /&gt;
&lt;br /&gt;
1- Le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué »&lt;br /&gt;
&lt;br /&gt;
2-étape à réaliser:&lt;br /&gt;
    -Partie led : afin de allumer les leds par hasard, j’ai utilisé une fonction random() qui peux fabriquer des chiffres aléatoire entre 0 à 4 correspondant aux pins des différents leds. Pour augmenter les niveau de difficultés, les intervalles du temps entre les led diminuent chaque 20 fois .&lt;br /&gt;
&lt;br /&gt;
    -Partie bouton: si le bouton est appuyé avant le prochain led s’allume, le variable right++.&lt;br /&gt;
&lt;br /&gt;
    -Partie évaluation: selon le valeur de right, le jeu vas donner des résultats aux joueurs.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
-le casse-tête : l’appuie sur un bouton changera l’état d’une ou plusieurs LED, l’objectif sera d’allumer toutes les LED&lt;br /&gt;
 Partie bouton: si le bouton est appuyé, certains leds changent état ( éteint -&amp;gt;allumé , allumé -&amp;gt;éteint ), le jeu s’arrêt jusqu’à tous les leds s’allument.&lt;br /&gt;
&lt;br /&gt;
-le piano : La programmation de ce dernier sera de lié à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur.&lt;br /&gt;
 Partie bouton: différents boutons sont appuyés, différentes notes sont créés par le haut-parleur. Ici, comme la libraire a déjà intégré dans l’IDE arduino, la fonction tone(pin, frequency, duration) peut être utilisé directement.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
-répète après-moi : Il s’agira de programmer une séquence d’allumage de LED de plus en plus difficile à suivre. Le joueur essaiera de refaire la séquence. Deux bips sonores différents permettront de savoir si c’est un échec ou une réussite.&lt;br /&gt;
&lt;br /&gt;
Partie led: la  séquence d’allumage de LED est programmé par la fonction random (), il est de plus en plus difficile car la séquence est de plus en plus difficile. Une variable défini pour stocker la séquence.&lt;br /&gt;
Partie bouton: après les allumés des leds terminent, le joueur appuye les boutons correspondants, la séquence va stocker dans une autre variable.&lt;br /&gt;
Partie évaluation: si les deux variables sont mêmes, il va passer au niveau plus haut.&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19914</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19914"/>
				<updated>2015-04-12T21:08:54Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine7 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet.&lt;br /&gt;
Selon les règles que mehmet a défini des jeux, il faut réalisé les 4 jeux:&lt;br /&gt;
&lt;br /&gt;
1- Le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué »&lt;br /&gt;
&lt;br /&gt;
2-étape à réaliser:&lt;br /&gt;
    -Partie led : afin de allumer les leds par hasard, j’ai utilisé une fonction random() qui peux fabriquer des chiffres aléatoire entre 0 à 4 correspondant aux pins des différents leds. Pour augmenter les niveau de difficultés, les intervalles du temps entre les led diminuent chaque 20 fois .&lt;br /&gt;
&lt;br /&gt;
    -Partie bouton: si le bouton est appuyé avant le prochain led s’allume, le variable right++.&lt;br /&gt;
&lt;br /&gt;
    -Partie évaluation: selon le valeur de right, le jeu vas donner des résultats aux joueurs.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
-le casse-tête : l’appuie sur un bouton changera l’état d’une ou plusieurs LED, l’objectif sera d’allumer toutes les LED&lt;br /&gt;
 Partie bouton: si le bouton est appuyé, certains leds changent état ( éteint -&amp;gt;allumé , allumé -&amp;gt;éteint ), le jeu s’arrêt jusqu’à tous les leds s’allument.&lt;br /&gt;
&lt;br /&gt;
-le piano : La programmation de ce dernier sera de lié à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur.&lt;br /&gt;
 Partie bouton: différents boutons sont appuyés, différentes notes sont créés par le haut-parleur. Ici, comme la libraire a déjà intégré dans l’IDE arduino, la fonction tone(pin, frequency, duration) peut être utilisé directement.&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19913</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19913"/>
				<updated>2015-04-12T21:08:31Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine7 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet.&lt;br /&gt;
Selon les règles que mehmet a défini des jeux, il faut réalisé les 4 jeux:&lt;br /&gt;
&lt;br /&gt;
1- Le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué »&lt;br /&gt;
&lt;br /&gt;
2-étape à réaliser:&lt;br /&gt;
    -Partie led : afin de allumer les leds par hasard, j’ai utilisé une fonction random() qui peux fabriquer des chiffres aléatoire entre 0 à 4 correspondant aux pins des différents leds. Pour augmenter les niveau de difficultés, les intervalles du temps entre les led diminuent chaque 20 fois .&lt;br /&gt;
&lt;br /&gt;
    -Partie bouton: si le bouton est appuyé avant le prochain led s’allume, le variable right++.&lt;br /&gt;
&lt;br /&gt;
    -Partie évaluation: selon le valeur de right, le jeu vas donner des résultats aux joueurs.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
-le casse-tête : l’appuie sur un bouton changera l’état d’une ou plusieurs LED, l’objectif sera d’allumer toutes les LED&lt;br /&gt;
-Partie bouton: si le bouton est appuyé, certains leds changent état ( éteint -&amp;gt;allumé , allumé -&amp;gt;éteint ), le jeu s’arrêt jusqu’à tous les leds s’allument.&lt;br /&gt;
&lt;br /&gt;
-le piano : La programmation de ce dernier sera de lié à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur.&lt;br /&gt;
-Partie bouton: différents boutons sont appuyés, différentes notes sont créés par le haut-parleur. Ici, comme la libraire a déjà intégré dans l’IDE arduino, la fonction tone(pin, frequency, duration) peut être utilisé directement.&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19912</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19912"/>
				<updated>2015-04-12T21:07:56Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine7 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet.&lt;br /&gt;
Selon les règles que mehmet a défini des jeux, il faut réalisé les 4 jeux:&lt;br /&gt;
&lt;br /&gt;
1- Le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué »&lt;br /&gt;
&lt;br /&gt;
2-étape à réaliser:&lt;br /&gt;
    -Partie led : afin de allumer les leds par hasard, j’ai utilisé une fonction random() qui peux fabriquer des chiffres aléatoire entre 0 à 4 correspondant aux pins des différents leds. Pour augmenter les niveau de difficultés, les intervalles du temps entre les led diminuent chaque 20 fois .&lt;br /&gt;
&lt;br /&gt;
    -Partie bouton: si le bouton est appuyé avant le prochain led s’allume, le variable right++.&lt;br /&gt;
&lt;br /&gt;
    -Partie évaluation: selon le valeur de right, le jeu vas donner des résultats aux joueurs.&lt;br /&gt;
&lt;br /&gt;
===Semaine7===&lt;br /&gt;
-le casse-tête : l’appuie sur un bouton changera l’état d’une ou plusieurs LED, l’objectif sera d’allumer toutes les LED&lt;br /&gt;
    -Partie bouton: si le bouton est appuyé, certains leds changent état ( éteint -&amp;gt;allumé , allumé -&amp;gt;éteint ), le jeu s’arrêt jusqu’à tous les leds s’allument.&lt;br /&gt;
&lt;br /&gt;
-le piano : La programmation de ce dernier sera de lié à chaque bouton un son (fréquence, amplitude) qui sera joué par le haut-parleur.&lt;br /&gt;
    -Partie bouton: différents boutons sont appuyés, différentes notes sont créés par le haut-parleur. Ici, comme la libraire a déjà intégré dans l’IDE arduino, la fonction tone(pin, frequency, duration) peut être utilisé directement.&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19911</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19911"/>
				<updated>2015-04-12T21:04:20Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine6 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet.&lt;br /&gt;
Selon les règles que mehmet a défini des jeux, il faut réalisé les 4 jeux:&lt;br /&gt;
&lt;br /&gt;
1- Le tape-taupe : une des six LED s’allumera pendant un certain temps pendant lequel il faudra appuyer sur le bouton correspondant. Un signal sonore indiquera si « le point a été marqué »&lt;br /&gt;
&lt;br /&gt;
2-étape à réaliser:&lt;br /&gt;
    -Partie led : afin de allumer les leds par hasard, j’ai utilisé une fonction random() qui peux fabriquer des chiffres aléatoire entre 0 à 4 correspondant aux pins des différents leds. Pour augmenter les niveau de difficultés, les intervalles du temps entre les led diminuent chaque 20 fois .&lt;br /&gt;
&lt;br /&gt;
    -Partie bouton: si le bouton est appuyé avant le prochain led s’allume, le variable right++.&lt;br /&gt;
&lt;br /&gt;
    -Partie évaluation: selon le valeur de right, le jeu vas donner des résultats aux joueurs.&lt;br /&gt;
&lt;br /&gt;
===Semaine8===&lt;br /&gt;
Réaliser les programmes sur la carte PROGRAMME AND PLAY et les tester. Il y a 4 jeux sur cette carte: &lt;br /&gt;
Le tape-taupe, le casse-tête, répète après-moi, le piano, tous les 4 jeux est autour de 6 LED et 6 boutons,&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19583</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=19583"/>
				<updated>2015-03-31T08:04:48Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine6 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse au développement de logiciels et des bibliothèque associées.  &lt;br /&gt;
&lt;br /&gt;
La première partie de ce projet consiste à concevoir l'ordonnanceur pour le Shield &amp;quot;TP système&amp;quot; conçu et réalisé dans un autre projet.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un Arduino,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignants.&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de l'ordonnanceur de démonstration du Shield pour les TP système d'ordonnancement. Ce shield comporte une matrice 8*8 RGB SPI, une LED rouge, une LED jaune, un afficheur 4*7 segments SPI et une matrice 8*8 monocouleur utilisant le bus I2C.&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
Discussion autour du projet, détailler le cahier des charges et préciser le but du projet. &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
Recherches documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
Ecriture des programmes pour faire fonctionner la matrice de LEDs I2C, l'afficheur de 7-segments SPI et la matrice RGB SPI.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
Tests des programmes sur le matériel.&lt;br /&gt;
===Semaine5===&lt;br /&gt;
Ecrire la bibliothèque pour le timer, celle pour le bus SPI ,celle pour bus I2C, celle pour le port série et celle pour les sémaphores. Commencer à réaliser l'ordonnanceur à partir de sources fournies.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
Commencer la seconde partie du projet.&lt;br /&gt;
Le seconde Shield comporte surtout des LEDs. Comme il s'agit d'un Shield éducatif, on commence par les programmes les plus faciles à réaliser&lt;br /&gt;
Les trois programmes à concevoir sont :&lt;br /&gt;
* Simulation de feu rouge.&lt;br /&gt;
[[Fichier:feurouge .png]]&lt;br /&gt;
* Contrôle de LED avec un bouton.&lt;br /&gt;
[[Fichier:bouton .png]]&lt;br /&gt;
* Le jeu tape taupe (combine LEDs et boutons) : 4 LEDs représentent les taupes, 4 boutons permettent les tapes. Une LED s’allume au hasard chaque 0.6 seconde (chaque fois le temps diminue de 0.01s). Si la taupe n'est pas tapée, on va perdre un point. La led s’allume 50 fois. Enfin, un afficheur donne le résultat.&lt;br /&gt;
===Semaine8===&lt;br /&gt;
Réaliser les programmes sur la carte PROGRAMME AND PLAY et les tester. Il y a 4 jeus sur cette carte: &lt;br /&gt;
Le tape-taupe, le casse-tête, répète après-moi, le piano, tous les 4 jeus est autour de 6 LED et 6 boutons,&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=18999</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=18999"/>
				<updated>2015-03-18T22:48:45Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine6 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Travail a réaliser&lt;br /&gt;
- Réaliser un shield pour les TP système d'ordonnancement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse à la fabrication de shields spécifiques pour Arduino et au développement de logiciels / bibliothèque associés.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La première partie consiste à développer un shield pour les TP système en IMA4. Il devra comporter tous les éléments nécessaires au TP (matrice de LED, LED, boutons, ...) et sera compact. Le code associé permettant de simplifier la prise en main du TP sera mis au point.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un arduino,&lt;br /&gt;
* des cartes d'extensions spécialement pensées pour des expérimentations simple et sécurisées,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignats.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la conception des shields nous allons utiliser Altium designer&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C et Arduino.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Des circuits imprimés pour réaliser des PCB [des plaques d'essai ou pour réaliser les PCB ?] [&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt; Faites des PCB &amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
Matériel de production :&lt;br /&gt;
&lt;br /&gt;
* LED rouge [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;50 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED jaune [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;50 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED verte [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;20 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED orange [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;20 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Barettes 36 pins [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;30 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Boutons-poussoirs [&amp;lt;span style=&amp;quot;color: red;&amp;quot;&amp;gt;pas de référence au 18/2/2015&amp;lt;/span&amp;gt;] référence envoyé avant 16h00&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de réaliser un shield pour les TP système d'ordonnancement. Ce shield devra comporter une matrice 8*8 RGB, une LED rouge, une LED jaune, un afficheur 4*7 segments et une matrice 8*8 monocolore utilisant le bus i2c. [&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt; pas d'interrupteur ? &amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
1  Discussion du projet, détailler le cahier des charges et projet préciser le but du projet &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
1  recherches des documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
1  écrire les programmes pour faire fonctionner la matrice de LEDs i2c, l'afficheur de 7-segments spi et la matrice RGB spi.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
1 réaliser les programmes et les rester sur le matériel&lt;br /&gt;
===Semaine5===&lt;br /&gt;
1 écrire la bibliothèque pour le timer, celle pour spi ,celle pour i2c, celle pour le port série et celle pour les sémaphores.et réaliser l'ordonnanceur à partir de sources de l'ordonnanceur de professeur.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
1 commencer à la deuxième sheild &lt;br /&gt;
La deuxième sheild fonctionne autour de leds, comme il est un sheild éducatif, on commence par les plus faciles ensuite aux difficiles. Il y a trois parties sur ce sheild.&lt;br /&gt;
&lt;br /&gt;
- simuler le feu rouge&lt;br /&gt;
&lt;br /&gt;
- contrôler un led avec un bouton&lt;br /&gt;
&lt;br /&gt;
- le jeu tape taupe (combiner leds et boutons)&lt;br /&gt;
4 leds représente les taupes, 4 boutons représente la tape&lt;br /&gt;
Un led s’allume par hasard chaque 0.6 seconde(chaque fois le temps diminue 0.01s), s’il on ne peut pas appuyer le bouton pendant le temps, on va perdre un point. Le led s’allume 50 fois. Enfin, un afficheur va affiche le résultat.&lt;br /&gt;
&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:feurouge .png]]&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:bouton .png]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt;Non présents aux séances de 28/1/2015 et 4/2/2015, pas de contact avec les encadrants au 5/2/2015. Pas de mise à jour du Wiki.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:ordonnancer.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of shield&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibshield.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of afficheur 7 segment * 4&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibafficheur.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
schématique library of matrice rgb 8x8&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibmatricergb.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of matrice i2c&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibmatricei2c.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
empreinte :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of shield&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibshield.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of afficheur 7 segment * 4&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibafficheur.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of matrice RGB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:PcblibmatriceRGB.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of matrice i2c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibmatrice_i2c.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Schématique et PCB complet====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet1sch.png]][[Fichier:Projet1pcb.png]]&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=18998</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=18998"/>
				<updated>2015-03-18T22:47:48Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* - le jeu tape taupe (combiner leds et boutons) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Travail a réaliser&lt;br /&gt;
- Réaliser un shield pour les TP système d'ordonnancement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse à la fabrication de shields spécifiques pour Arduino et au développement de logiciels / bibliothèque associés.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La première partie consiste à développer un shield pour les TP système en IMA4. Il devra comporter tous les éléments nécessaires au TP (matrice de LED, LED, boutons, ...) et sera compact. Le code associé permettant de simplifier la prise en main du TP sera mis au point.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un arduino,&lt;br /&gt;
* des cartes d'extensions spécialement pensées pour des expérimentations simple et sécurisées,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignats.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la conception des shields nous allons utiliser Altium designer&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C et Arduino.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Des circuits imprimés pour réaliser des PCB [des plaques d'essai ou pour réaliser les PCB ?] [&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt; Faites des PCB &amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
Matériel de production :&lt;br /&gt;
&lt;br /&gt;
* LED rouge [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;50 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED jaune [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;50 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED verte [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;20 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED orange [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;20 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Barettes 36 pins [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;30 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Boutons-poussoirs [&amp;lt;span style=&amp;quot;color: red;&amp;quot;&amp;gt;pas de référence au 18/2/2015&amp;lt;/span&amp;gt;] référence envoyé avant 16h00&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de réaliser un shield pour les TP système d'ordonnancement. Ce shield devra comporter une matrice 8*8 RGB, une LED rouge, une LED jaune, un afficheur 4*7 segments et une matrice 8*8 monocolore utilisant le bus i2c. [&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt; pas d'interrupteur ? &amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
1  Discussion du projet, détailler le cahier des charges et projet préciser le but du projet &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
1  recherches des documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
1  écrire les programmes pour faire fonctionner la matrice de LEDs i2c, l'afficheur de 7-segments spi et la matrice RGB spi.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
1 réaliser les programmes et les rester sur le matériel&lt;br /&gt;
===Semaine5===&lt;br /&gt;
1 écrire la bibliothèque pour le timer, celle pour spi ,celle pour i2c, celle pour le port série et celle pour les sémaphores.et réaliser l'ordonnanceur à partir de sources de l'ordonnanceur de professeur.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
1 commencer à la deuxième sheild &lt;br /&gt;
La deuxième sheild fonctionne autour de leds, comme il est un sheild éducatif, on commence par les plus faciles ensuite aux difficiles. Il y a trois parties sur ce sheild.&lt;br /&gt;
- simuler le feu rouge&lt;br /&gt;
&lt;br /&gt;
- contrôler un led avec un bouton&lt;br /&gt;
&lt;br /&gt;
- le jeu tape taupe (combiner leds et boutons)&lt;br /&gt;
4 leds représente les taupes, 4 boutons représente la tape&lt;br /&gt;
Un led s’allume par hasard chaque 0.6 seconde(chaque fois le temps diminue 0.01s), s’il on ne peut pas appuyer le bouton pendant le temps, on va perdre un point. Le led s’allume 50 fois. Enfin, un afficheur va affiche le résultat.&lt;br /&gt;
&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:feurouge .png]]&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:bouton .png]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt;Non présents aux séances de 28/1/2015 et 4/2/2015, pas de contact avec les encadrants au 5/2/2015. Pas de mise à jour du Wiki.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:ordonnancer.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of shield&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibshield.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of afficheur 7 segment * 4&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibafficheur.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
schématique library of matrice rgb 8x8&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibmatricergb.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of matrice i2c&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibmatricei2c.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
empreinte :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of shield&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibshield.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of afficheur 7 segment * 4&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibafficheur.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of matrice RGB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:PcblibmatriceRGB.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of matrice i2c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibmatrice_i2c.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Schématique et PCB complet====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet1sch.png]][[Fichier:Projet1pcb.png]]&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=18997</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=18997"/>
				<updated>2015-03-18T22:47:19Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* - contrôler un led avec un bouton */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Travail a réaliser&lt;br /&gt;
- Réaliser un shield pour les TP système d'ordonnancement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse à la fabrication de shields spécifiques pour Arduino et au développement de logiciels / bibliothèque associés.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La première partie consiste à développer un shield pour les TP système en IMA4. Il devra comporter tous les éléments nécessaires au TP (matrice de LED, LED, boutons, ...) et sera compact. Le code associé permettant de simplifier la prise en main du TP sera mis au point.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un arduino,&lt;br /&gt;
* des cartes d'extensions spécialement pensées pour des expérimentations simple et sécurisées,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignats.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la conception des shields nous allons utiliser Altium designer&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C et Arduino.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Des circuits imprimés pour réaliser des PCB [des plaques d'essai ou pour réaliser les PCB ?] [&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt; Faites des PCB &amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
Matériel de production :&lt;br /&gt;
&lt;br /&gt;
* LED rouge [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;50 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED jaune [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;50 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED verte [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;20 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED orange [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;20 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Barettes 36 pins [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;30 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Boutons-poussoirs [&amp;lt;span style=&amp;quot;color: red;&amp;quot;&amp;gt;pas de référence au 18/2/2015&amp;lt;/span&amp;gt;] référence envoyé avant 16h00&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de réaliser un shield pour les TP système d'ordonnancement. Ce shield devra comporter une matrice 8*8 RGB, une LED rouge, une LED jaune, un afficheur 4*7 segments et une matrice 8*8 monocolore utilisant le bus i2c. [&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt; pas d'interrupteur ? &amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
1  Discussion du projet, détailler le cahier des charges et projet préciser le but du projet &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
1  recherches des documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
1  écrire les programmes pour faire fonctionner la matrice de LEDs i2c, l'afficheur de 7-segments spi et la matrice RGB spi.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
1 réaliser les programmes et les rester sur le matériel&lt;br /&gt;
===Semaine5===&lt;br /&gt;
1 écrire la bibliothèque pour le timer, celle pour spi ,celle pour i2c, celle pour le port série et celle pour les sémaphores.et réaliser l'ordonnanceur à partir de sources de l'ordonnanceur de professeur.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
1 commencer à la deuxième sheild &lt;br /&gt;
La deuxième sheild fonctionne autour de leds, comme il est un sheild éducatif, on commence par les plus faciles ensuite aux difficiles. Il y a trois parties sur ce sheild.&lt;br /&gt;
- simuler le feu rouge&lt;br /&gt;
&lt;br /&gt;
- contrôler un led avec un bouton&lt;br /&gt;
&lt;br /&gt;
==- le jeu tape taupe (combiner leds et boutons)==&lt;br /&gt;
==4 leds représente les taupes, 4 boutons représente la tape&lt;br /&gt;
Un led s’allume par hasard chaque 0.6 seconde(chaque fois le temps diminue 0.01s), s’il on ne peut pas appuyer le bouton pendant le temps, on va perdre un point. Le led s’allume 50 fois. Enfin, un afficheur va affiche le résultat.==&lt;br /&gt;
&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:feurouge .png]]&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:bouton .png]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt;Non présents aux séances de 28/1/2015 et 4/2/2015, pas de contact avec les encadrants au 5/2/2015. Pas de mise à jour du Wiki.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:ordonnancer.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of shield&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibshield.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of afficheur 7 segment * 4&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibafficheur.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
schématique library of matrice rgb 8x8&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibmatricergb.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of matrice i2c&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibmatricei2c.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
empreinte :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of shield&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibshield.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of afficheur 7 segment * 4&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibafficheur.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of matrice RGB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:PcblibmatriceRGB.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of matrice i2c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibmatrice_i2c.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Schématique et PCB complet====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet1sch.png]][[Fichier:Projet1pcb.png]]&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=18996</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=18996"/>
				<updated>2015-03-18T22:46:51Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* - simuler le feu rouge */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Travail a réaliser&lt;br /&gt;
- Réaliser un shield pour les TP système d'ordonnancement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse à la fabrication de shields spécifiques pour Arduino et au développement de logiciels / bibliothèque associés.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La première partie consiste à développer un shield pour les TP système en IMA4. Il devra comporter tous les éléments nécessaires au TP (matrice de LED, LED, boutons, ...) et sera compact. Le code associé permettant de simplifier la prise en main du TP sera mis au point.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un arduino,&lt;br /&gt;
* des cartes d'extensions spécialement pensées pour des expérimentations simple et sécurisées,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignats.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la conception des shields nous allons utiliser Altium designer&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C et Arduino.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Des circuits imprimés pour réaliser des PCB [des plaques d'essai ou pour réaliser les PCB ?] [&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt; Faites des PCB &amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
Matériel de production :&lt;br /&gt;
&lt;br /&gt;
* LED rouge [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;50 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED jaune [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;50 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED verte [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;20 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED orange [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;20 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Barettes 36 pins [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;30 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Boutons-poussoirs [&amp;lt;span style=&amp;quot;color: red;&amp;quot;&amp;gt;pas de référence au 18/2/2015&amp;lt;/span&amp;gt;] référence envoyé avant 16h00&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de réaliser un shield pour les TP système d'ordonnancement. Ce shield devra comporter une matrice 8*8 RGB, une LED rouge, une LED jaune, un afficheur 4*7 segments et une matrice 8*8 monocolore utilisant le bus i2c. [&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt; pas d'interrupteur ? &amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
1  Discussion du projet, détailler le cahier des charges et projet préciser le but du projet &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
1  recherches des documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
1  écrire les programmes pour faire fonctionner la matrice de LEDs i2c, l'afficheur de 7-segments spi et la matrice RGB spi.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
1 réaliser les programmes et les rester sur le matériel&lt;br /&gt;
===Semaine5===&lt;br /&gt;
1 écrire la bibliothèque pour le timer, celle pour spi ,celle pour i2c, celle pour le port série et celle pour les sémaphores.et réaliser l'ordonnanceur à partir de sources de l'ordonnanceur de professeur.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
1 commencer à la deuxième sheild &lt;br /&gt;
La deuxième sheild fonctionne autour de leds, comme il est un sheild éducatif, on commence par les plus faciles ensuite aux difficiles. Il y a trois parties sur ce sheild.&lt;br /&gt;
- simuler le feu rouge&lt;br /&gt;
&lt;br /&gt;
==- contrôler un led avec un bouton== &lt;br /&gt;
==- le jeu tape taupe (combiner leds et boutons)==&lt;br /&gt;
==4 leds représente les taupes, 4 boutons représente la tape&lt;br /&gt;
Un led s’allume par hasard chaque 0.6 seconde(chaque fois le temps diminue 0.01s), s’il on ne peut pas appuyer le bouton pendant le temps, on va perdre un point. Le led s’allume 50 fois. Enfin, un afficheur va affiche le résultat.==&lt;br /&gt;
&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:feurouge .png]]&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:bouton .png]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt;Non présents aux séances de 28/1/2015 et 4/2/2015, pas de contact avec les encadrants au 5/2/2015. Pas de mise à jour du Wiki.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:ordonnancer.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of shield&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibshield.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of afficheur 7 segment * 4&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibafficheur.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
schématique library of matrice rgb 8x8&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibmatricergb.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of matrice i2c&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibmatricei2c.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
empreinte :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of shield&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibshield.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of afficheur 7 segment * 4&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibafficheur.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of matrice RGB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:PcblibmatriceRGB.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of matrice i2c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibmatrice_i2c.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Schématique et PCB complet====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet1sch.png]][[Fichier:Projet1pcb.png]]&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=18995</id>
		<title>Malette Arduino éducative I</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Malette_Arduino_%C3%A9ducative_I&amp;diff=18995"/>
				<updated>2015-03-18T22:46:12Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : /* Semaine6 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Travail a réaliser&lt;br /&gt;
- Réaliser un shield pour les TP système d'ordonnancement.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
===Présentation générale du projet=== &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Contexte====&lt;br /&gt;
&lt;br /&gt;
Ce projet est réalisé dans le cadre de notre quatrième année en IMA, alors que la question de comment intéresser les plus jeunes à la programmation se pose, et encore plus difficile : comment faire pour que les prochaines promotions d'IMA réussissent à comprendre quelque chose en système.&lt;br /&gt;
&lt;br /&gt;
====Objectif du projet====&lt;br /&gt;
&lt;br /&gt;
L'objectif de notre projet est de concevoir des shields Arduino pour les TP système en IMA4 et pour une mallette à vocation pédagogique (fin de primaire / collège) pour l'initiation à la programmation sur Arduino &lt;br /&gt;
&lt;br /&gt;
====Description du projet====&lt;br /&gt;
&lt;br /&gt;
Ce projet s'intéresse à la fabrication de shields spécifiques pour Arduino et au développement de logiciels / bibliothèque associés.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La première partie consiste à développer un shield pour les TP système en IMA4. Il devra comporter tous les éléments nécessaires au TP (matrice de LED, LED, boutons, ...) et sera compact. Le code associé permettant de simplifier la prise en main du TP sera mis au point.&lt;br /&gt;
&lt;br /&gt;
La seconde partie est à destination d'enfants. Polytech est engagée dans la sensibilisation aux sciences des enfants de primaire et du collège. Cela s'est traduit par exemple à la mise en place d'une compétition de robotique pour les élèves de primaire&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin d'aller plus vers l'apprentissage de la programmation, nous envisageons d'initier des élèves à la plateforme Arduino.&lt;br /&gt;
&lt;br /&gt;
Il est demandé de concevoir et réaliser :&lt;br /&gt;
* une mallette avec un arduino,&lt;br /&gt;
* des cartes d'extensions spécialement pensées pour des expérimentations simple et sécurisées,&lt;br /&gt;
* des exemples de projets réalisables par des enfants, soit en autonomie (collège) soit accompagnés (primaire),&lt;br /&gt;
* une documentation claire et didactique pour les enfants,&lt;br /&gt;
* une documentation plus approfondie pour les enseignats.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Choix techniques : matériel et logiciel====&lt;br /&gt;
&lt;br /&gt;
Logiciel:&lt;br /&gt;
&lt;br /&gt;
* Pour la conception des shields nous allons utiliser Altium designer&lt;br /&gt;
* Pour la programmation, nous allons utiliser le langage C et Arduino.&lt;br /&gt;
&lt;br /&gt;
Matériel de développement :&lt;br /&gt;
&lt;br /&gt;
* Un arduino Uno [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;] &lt;br /&gt;
* Des circuits imprimés pour réaliser des PCB [des plaques d'essai ou pour réaliser les PCB ?] [&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt; Faites des PCB &amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une matrice RGB 8*8 [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Matrice 8*8 monocolore utilisant le bus i2c [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Un afficheur 4*7 segments [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED rouge [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Une LED jaune [&amp;lt;span style=&amp;quot;color: green;&amp;quot;&amp;gt;disponible au 29/1/2015 en E306 (dans votre casier)&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
Matériel de production :&lt;br /&gt;
&lt;br /&gt;
* LED rouge [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;50 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED jaune [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;50 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED verte [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;20 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* LED orange [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;20 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Barettes 36 pins [&amp;lt;span style=&amp;quot;color: orange;&amp;quot;&amp;gt;30 commandées le 18/2/2015&amp;lt;/span&amp;gt;]&lt;br /&gt;
* Boutons-poussoirs [&amp;lt;span style=&amp;quot;color: red;&amp;quot;&amp;gt;pas de référence au 18/2/2015&amp;lt;/span&amp;gt;] référence envoyé avant 16h00&lt;br /&gt;
&lt;br /&gt;
===Etapes du projet===&lt;br /&gt;
&lt;br /&gt;
La première étape du projet sera de réaliser un shield pour les TP système d'ordonnancement. Ce shield devra comporter une matrice 8*8 RGB, une LED rouge, une LED jaune, un afficheur 4*7 segments et une matrice 8*8 monocolore utilisant le bus i2c. [&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt; pas d'interrupteur ? &amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
== Planning prévisionnel de l'avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
Semaine 1 : réalisation du programme correspondant au premier shield : ordonnanceur, conception de la carte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
semaine 2 : fabrication du shield et prise de rendez-vous avec tuteur pour la suite du projet.&lt;br /&gt;
&lt;br /&gt;
==Avancement du Projet==&lt;br /&gt;
===Semaine 1===&lt;br /&gt;
1  Discussion du projet, détailler le cahier des charges et projet préciser le but du projet &lt;br /&gt;
===Semaine 2===&lt;br /&gt;
1  recherches des documentaires sur les bus SPI et I2C&lt;br /&gt;
===Semaine 3===&lt;br /&gt;
1  écrire les programmes pour faire fonctionner la matrice de LEDs i2c, l'afficheur de 7-segments spi et la matrice RGB spi.&lt;br /&gt;
===Semaine 4===&lt;br /&gt;
1 réaliser les programmes et les rester sur le matériel&lt;br /&gt;
===Semaine5===&lt;br /&gt;
1 écrire la bibliothèque pour le timer, celle pour spi ,celle pour i2c, celle pour le port série et celle pour les sémaphores.et réaliser l'ordonnanceur à partir de sources de l'ordonnanceur de professeur.&lt;br /&gt;
===Semaine6===&lt;br /&gt;
1 commencer à la deuxième sheild &lt;br /&gt;
La deuxième sheild fonctionne autour de leds, comme il est un sheild éducatif, on commence par les plus faciles ensuite aux difficiles. Il y a trois parties sur ce sheild.&lt;br /&gt;
==- simuler le feu rouge==&lt;br /&gt;
==- contrôler un led avec un bouton== &lt;br /&gt;
==- le jeu tape taupe (combiner leds et boutons)==&lt;br /&gt;
==4 leds représente les taupes, 4 boutons représente la tape&lt;br /&gt;
Un led s’allume par hasard chaque 0.6 seconde(chaque fois le temps diminue 0.01s), s’il on ne peut pas appuyer le bouton pendant le temps, on va perdre un point. Le led s’allume 50 fois. Enfin, un afficheur va affiche le résultat.==&lt;br /&gt;
&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:feurouge .png]]&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:bouton .png]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: blue;&amp;quot;&amp;gt;Non présents aux séances de 28/1/2015 et 4/2/2015, pas de contact avec les encadrants au 5/2/2015. Pas de mise à jour du Wiki.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fichiers Rendus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bibliothèque ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Schématique :&lt;br /&gt;
[[Fichier:ordonnancer.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of shield&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibshield.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of afficheur 7 segment * 4&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibafficheur.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
schématique library of matrice rgb 8x8&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibmatricergb.png]]&lt;br /&gt;
&lt;br /&gt;
schématique library of matrice i2c&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Schlibmatricei2c.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
empreinte :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of shield&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibshield.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of afficheur 7 segment * 4&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibafficheur.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of matrice RGB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:PcblibmatriceRGB.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
pcb library of matrice i2c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcblibmatrice_i2c.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Schématique et PCB complet====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet1sch.png]][[Fichier:Projet1pcb.png]]&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Bouton_.png&amp;diff=18994</id>
		<title>Fichier:Bouton .png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Bouton_.png&amp;diff=18994"/>
				<updated>2015-03-18T22:44:50Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Feurouge_.png&amp;diff=18993</id>
		<title>Fichier:Feurouge .png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Feurouge_.png&amp;diff=18993"/>
				<updated>2015-03-18T22:42:58Z</updated>
		
		<summary type="html">&lt;p&gt;Yhu : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Yhu</name></author>	</entry>

	</feed>