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

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=539</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=539"/>
				<updated>2011-04-06T11:45:24Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Partie Informatique */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
&lt;br /&gt;
==== '''Partie Informatique''' ====&lt;br /&gt;
&lt;br /&gt;
*Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
*Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
*Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
*Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
*Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
*Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
&lt;br /&gt;
==== '''Partie Électronique''' ====&lt;br /&gt;
&lt;br /&gt;
*Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
Note : Dans un premier temps, les tests sont fait avec un petit exécutable développé pour récupérer et envoyer des octets avec un adaptateur USB-Série sur un ordinateur. Dans un second temps, il faudra adapter ce code C pour faire deux fonctions intégrées à l'Arduino.&lt;br /&gt;
&lt;br /&gt;
* Architecture matérielle '''FAIT'''&lt;br /&gt;
* Émission seule '''FAIT'''&lt;br /&gt;
** Récupération d'un paquet Ethernet '''FAIT'''&lt;br /&gt;
** Émission du paquet sur la liaison série '''FAIT'''&lt;br /&gt;
* Réception seule&lt;br /&gt;
** Récupération d'un paquet Ethernet en série '''FAIT'''&lt;br /&gt;
** Émission de la requête sur la liaison Ethernet '''FAIT'''&lt;br /&gt;
* E/R simultanés&lt;br /&gt;
** Processus Multithreadé '''FAIT'''&lt;br /&gt;
** Éventuellement : Gestion de la ressource avec un sémaphore&lt;br /&gt;
* Réception sur l'Arduino&lt;br /&gt;
** Portage du code C de réception sur l'Arduino&lt;br /&gt;
** Gestion de la simultanéité E/R&lt;br /&gt;
*Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=538</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=538"/>
				<updated>2011-04-06T11:44:53Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Partie Électronique */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
&lt;br /&gt;
==== '''Partie Informatique''' ====&lt;br /&gt;
&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
&lt;br /&gt;
==== '''Partie Électronique''' ====&lt;br /&gt;
&lt;br /&gt;
*Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
Note : Dans un premier temps, les tests sont fait avec un petit exécutable développé pour récupérer et envoyer des octets avec un adaptateur USB-Série sur un ordinateur. Dans un second temps, il faudra adapter ce code C pour faire deux fonctions intégrées à l'Arduino.&lt;br /&gt;
&lt;br /&gt;
* Architecture matérielle '''FAIT'''&lt;br /&gt;
* Émission seule '''FAIT'''&lt;br /&gt;
** Récupération d'un paquet Ethernet '''FAIT'''&lt;br /&gt;
** Émission du paquet sur la liaison série '''FAIT'''&lt;br /&gt;
* Réception seule&lt;br /&gt;
** Récupération d'un paquet Ethernet en série '''FAIT'''&lt;br /&gt;
** Émission de la requête sur la liaison Ethernet '''FAIT'''&lt;br /&gt;
* E/R simultanés&lt;br /&gt;
** Processus Multithreadé '''FAIT'''&lt;br /&gt;
** Éventuellement : Gestion de la ressource avec un sémaphore&lt;br /&gt;
* Réception sur l'Arduino&lt;br /&gt;
** Portage du code C de réception sur l'Arduino&lt;br /&gt;
** Gestion de la simultanéité E/R&lt;br /&gt;
*Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=537</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=537"/>
				<updated>2011-04-06T11:44:21Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* *Partie Électronique */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
&lt;br /&gt;
==== '''Partie Informatique''' ====&lt;br /&gt;
&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
&lt;br /&gt;
==== '''Partie Électronique''' ====&lt;br /&gt;
&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
Note : Dans un premier temps, les tests sont fait avec un petit exécutable développé pour récupérer et envoyer des octets avec un adaptateur USB-Série sur un ordinateur. Dans un second temps, il faudra adapter ce code C pour faire deux fonctions intégrées à l'Arduino.&lt;br /&gt;
&lt;br /&gt;
** Architecture matérielle '''FAIT'''&lt;br /&gt;
** Émission seule '''FAIT'''&lt;br /&gt;
*** Récupération d'un paquet Ethernet '''FAIT'''&lt;br /&gt;
*** Émission du paquet sur la liaison série '''FAIT'''&lt;br /&gt;
** Réception seule&lt;br /&gt;
*** Récupération d'un paquet Ethernet en série '''FAIT'''&lt;br /&gt;
*** Émission de la requête sur la liaison Ethernet '''FAIT'''&lt;br /&gt;
** E/R simultanés&lt;br /&gt;
*** Processus Multithreadé '''FAIT'''&lt;br /&gt;
*** Éventuellement : Gestion de la ressource avec un sémaphore&lt;br /&gt;
** Réception sur l'Arduino&lt;br /&gt;
*** Portage du code C de réception sur l'Arduino&lt;br /&gt;
*** Gestion de la simultanéité E/R&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=536</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=536"/>
				<updated>2011-04-06T11:44:09Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* *Partie Électronique */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
&lt;br /&gt;
==== '''Partie Informatique''' ====&lt;br /&gt;
&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
&lt;br /&gt;
==== *'''Partie Électronique''' ====&lt;br /&gt;
&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
Note : Dans un premier temps, les tests sont fait avec un petit exécutable développé pour récupérer et envoyer des octets avec un adaptateur USB-Série sur un ordinateur. Dans un second temps, il faudra adapter ce code C pour faire deux fonctions intégrées à l'Arduino.&lt;br /&gt;
&lt;br /&gt;
** Architecture matérielle '''FAIT'''&lt;br /&gt;
** Émission seule '''FAIT'''&lt;br /&gt;
*** Récupération d'un paquet Ethernet '''FAIT'''&lt;br /&gt;
*** Émission du paquet sur la liaison série '''FAIT'''&lt;br /&gt;
** Réception seule&lt;br /&gt;
*** Récupération d'un paquet Ethernet en série '''FAIT'''&lt;br /&gt;
*** Émission de la requête sur la liaison Ethernet '''FAIT'''&lt;br /&gt;
** E/R simultanés&lt;br /&gt;
*** Processus Multithreadé '''FAIT'''&lt;br /&gt;
*** Éventuellement : Gestion de la ressource avec un sémaphore&lt;br /&gt;
** Réception sur l'Arduino&lt;br /&gt;
*** Portage du code C de réception sur l'Arduino&lt;br /&gt;
*** Gestion de la simultanéité E/R&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=535</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=535"/>
				<updated>2011-04-06T11:43:58Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Partie Informatique */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
&lt;br /&gt;
==== '''Partie Informatique''' ====&lt;br /&gt;
&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
&lt;br /&gt;
=== *'''Partie Électronique''' ===&lt;br /&gt;
&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
Note : Dans un premier temps, les tests sont fait avec un petit exécutable développé pour récupérer et envoyer des octets avec un adaptateur USB-Série sur un ordinateur. Dans un second temps, il faudra adapter ce code C pour faire deux fonctions intégrées à l'Arduino.&lt;br /&gt;
&lt;br /&gt;
** Architecture matérielle '''FAIT'''&lt;br /&gt;
** Émission seule '''FAIT'''&lt;br /&gt;
*** Récupération d'un paquet Ethernet '''FAIT'''&lt;br /&gt;
*** Émission du paquet sur la liaison série '''FAIT'''&lt;br /&gt;
** Réception seule&lt;br /&gt;
*** Récupération d'un paquet Ethernet en série '''FAIT'''&lt;br /&gt;
*** Émission de la requête sur la liaison Ethernet '''FAIT'''&lt;br /&gt;
** E/R simultanés&lt;br /&gt;
*** Processus Multithreadé '''FAIT'''&lt;br /&gt;
*** Éventuellement : Gestion de la ressource avec un sémaphore&lt;br /&gt;
** Réception sur l'Arduino&lt;br /&gt;
*** Portage du code C de réception sur l'Arduino&lt;br /&gt;
*** Gestion de la simultanéité E/R&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=534</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=534"/>
				<updated>2011-04-06T11:43:33Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* *Partie Électronique */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
&lt;br /&gt;
=== '''Partie Informatique''' ===&lt;br /&gt;
&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
&lt;br /&gt;
=== *'''Partie Électronique''' ===&lt;br /&gt;
&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
Note : Dans un premier temps, les tests sont fait avec un petit exécutable développé pour récupérer et envoyer des octets avec un adaptateur USB-Série sur un ordinateur. Dans un second temps, il faudra adapter ce code C pour faire deux fonctions intégrées à l'Arduino.&lt;br /&gt;
&lt;br /&gt;
** Architecture matérielle '''FAIT'''&lt;br /&gt;
** Émission seule '''FAIT'''&lt;br /&gt;
*** Récupération d'un paquet Ethernet '''FAIT'''&lt;br /&gt;
*** Émission du paquet sur la liaison série '''FAIT'''&lt;br /&gt;
** Réception seule&lt;br /&gt;
*** Récupération d'un paquet Ethernet en série '''FAIT'''&lt;br /&gt;
*** Émission de la requête sur la liaison Ethernet '''FAIT'''&lt;br /&gt;
** E/R simultanés&lt;br /&gt;
*** Processus Multithreadé '''FAIT'''&lt;br /&gt;
*** Éventuellement : Gestion de la ressource avec un sémaphore&lt;br /&gt;
** Réception sur l'Arduino&lt;br /&gt;
*** Portage du code C de réception sur l'Arduino&lt;br /&gt;
*** Gestion de la simultanéité E/R&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=533</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=533"/>
				<updated>2011-04-06T11:42:43Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* *Partie Informatique */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
&lt;br /&gt;
=== '''Partie Informatique''' ===&lt;br /&gt;
&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
&lt;br /&gt;
== *'''Partie Électronique''' ==&lt;br /&gt;
&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
Note : Dans un premier temps, les tests sont fait avec un petit exécutable développé pour récupérer et envoyer des octets avec un adaptateur USB-Série sur un ordinateur. Dans un second temps, il faudra adapter ce code C pour faire deux fonctions intégrées à l'Arduino.&lt;br /&gt;
&lt;br /&gt;
** Architecture matérielle '''FAIT'''&lt;br /&gt;
** Émission seule '''FAIT'''&lt;br /&gt;
*** Récupération d'un paquet Ethernet '''FAIT'''&lt;br /&gt;
*** Émission du paquet sur la liaison série '''FAIT'''&lt;br /&gt;
** Réception seule&lt;br /&gt;
*** Récupération d'un paquet Ethernet en série '''FAIT'''&lt;br /&gt;
*** Émission de la requête sur la liaison Ethernet '''FAIT'''&lt;br /&gt;
** E/R simultanés&lt;br /&gt;
*** Processus Multithreadé '''FAIT'''&lt;br /&gt;
*** Éventuellement : Gestion de la ressource avec un sémaphore&lt;br /&gt;
** Réception sur l'Arduino&lt;br /&gt;
*** Portage du code C de réception sur l'Arduino&lt;br /&gt;
*** Gestion de la simultanéité E/R&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=532</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=532"/>
				<updated>2011-04-06T11:41:44Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
&lt;br /&gt;
== *'''Partie Informatique''' ==&lt;br /&gt;
&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
&lt;br /&gt;
== *'''Partie Électronique''' ==&lt;br /&gt;
&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
Note : Dans un premier temps, les tests sont fait avec un petit exécutable développé pour récupérer et envoyer des octets avec un adaptateur USB-Série sur un ordinateur. Dans un second temps, il faudra adapter ce code C pour faire deux fonctions intégrées à l'Arduino.&lt;br /&gt;
&lt;br /&gt;
** Architecture matérielle '''FAIT'''&lt;br /&gt;
** Émission seule '''FAIT'''&lt;br /&gt;
*** Récupération d'un paquet Ethernet '''FAIT'''&lt;br /&gt;
*** Émission du paquet sur la liaison série '''FAIT'''&lt;br /&gt;
** Réception seule&lt;br /&gt;
*** Récupération d'un paquet Ethernet en série '''FAIT'''&lt;br /&gt;
*** Émission de la requête sur la liaison Ethernet '''FAIT'''&lt;br /&gt;
** E/R simultanés&lt;br /&gt;
*** Processus Multithreadé '''FAIT'''&lt;br /&gt;
*** Éventuellement : Gestion de la ressource avec un sémaphore&lt;br /&gt;
** Réception sur l'Arduino&lt;br /&gt;
*** Portage du code C de réception sur l'Arduino&lt;br /&gt;
*** Gestion de la simultanéité E/R&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=531</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=531"/>
				<updated>2011-04-06T11:38:08Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
*'''Partie Informatique'''&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
*'''Partie Électronique'''&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
Note : Dans un premier temps, les tests sont fait avec un petit exécutable développé pour récupérer et envoyer des octets avec un adaptateur USB-Série sur un ordinateur. Dans un second temps, il faudra adapter ce code C pour faire deux fonctions intégrées à l'Arduino.&lt;br /&gt;
&lt;br /&gt;
** Architecture matérielle '''FAIT'''&lt;br /&gt;
** Émission seule '''FAIT'''&lt;br /&gt;
*** Récupération d'un paquet Ethernet '''FAIT'''&lt;br /&gt;
*** Émission du paquet sur la liaison série '''FAIT'''&lt;br /&gt;
** Réception seule&lt;br /&gt;
*** Récupération d'un paquet Ethernet en série '''FAIT'''&lt;br /&gt;
*** Émission de la requête sur la liaison Ethernet '''FAIT'''&lt;br /&gt;
** E/R simultanés&lt;br /&gt;
*** Processus Multithreadé '''FAIT'''&lt;br /&gt;
*** Éventuellement : Gestion de la ressource avec un sémaphore&lt;br /&gt;
** Réception sur l'Arduino&lt;br /&gt;
*** Portage du code C de réception sur l'Arduino&lt;br /&gt;
*** Gestion de la simultanéité E/R&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=530</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=530"/>
				<updated>2011-04-06T11:36:02Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
*'''Partie Informatique'''&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
*'''Partie Électronique'''&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
Dans un premier temps, les tests sont fait avec un petit exécutable développé pour récupérer et envoyer des octets avec un adaptateur USB-Série sur un ordinateur. Dans un second temps, il faudra adapter ce code C pour faire deux fonctions intégrées à l'Arduino.&lt;br /&gt;
&lt;br /&gt;
** Architecture matérielle '''FAIT'''&lt;br /&gt;
** Émission seule '''FAIT'''&lt;br /&gt;
*** Récupération d'un paquet Ethernet '''FAIT'''&lt;br /&gt;
*** Émission du paquet sur la liaison série '''FAIT'''&lt;br /&gt;
** Réception seule&lt;br /&gt;
*** Récupération d'un paquet Ethernet en série '''FAIT'''&lt;br /&gt;
*** Émission de la requête sur la liaison Ethernet '''FAIT'''&lt;br /&gt;
** E/R simultanés&lt;br /&gt;
*** Processus Multithreadé '''FAIT'''&lt;br /&gt;
*** Éventuellement : Gestion de la ressource avec un sémaphore&lt;br /&gt;
** Réception sur l'Arduino&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=529</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=529"/>
				<updated>2011-04-06T11:35:18Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
*'''Partie Informatique'''&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
*'''Partie Électronique'''&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
Dans un premier temps, les tests sont fait avec un petit exécutable développé pour récupérer et envoyer des octets avec un adaptateur USB-Série sur un ordinateur. Dans un second temps, il faudra adapter ce code C pour faire deux fonctions intégrées à l'Arduino.&lt;br /&gt;
** Architecture matérielle '''FAIT'''&lt;br /&gt;
** Émission seule '''FAIT'''&lt;br /&gt;
*** Récupération d'un paquet Ethernet '''FAIT'''&lt;br /&gt;
*** Émission du paquet sur la liaison série '''FAIT'''&lt;br /&gt;
** Réception seule&lt;br /&gt;
*** Récupération d'un paquet Ethernet en série '''FAIT'''&lt;br /&gt;
*** Émission de la requête sur la liaison Ethernet '''FAIT'''&lt;br /&gt;
** E/R simultanés&lt;br /&gt;
*** Processus Multithreadé '''FAIT'''&lt;br /&gt;
*** Éventuellement : Gestion de la ressource avec un sémaphore&lt;br /&gt;
** Réception sur l'Arduino&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=528</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=528"/>
				<updated>2011-04-06T11:28:29Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
*'''Partie Informatique'''&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
*'''Partie Électronique'''&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
** Émission seule '''FAIT'''&lt;br /&gt;
***   =&amp;gt; Architecture matérielle '''FAIT'''&lt;br /&gt;
***   =&amp;gt; Récupération d'un paquet Ethernet '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
** Réception seule&lt;br /&gt;
***   =&amp;gt; E/R simultanés (processus multithreadé)&lt;br /&gt;
***   =&amp;gt; Réception sur l'Arduino&lt;br /&gt;
&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=527</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=527"/>
				<updated>2011-04-06T11:23:55Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Difficultes rencontrees */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
*'''Partie Informatique'''&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
*'''Partie Électronique'''&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
**   =&amp;gt; Émission seule '''FAIT'''&lt;br /&gt;
**   =&amp;gt; Réception seule&lt;br /&gt;
**   =&amp;gt; E/R simultanés (processus multithreadé)&lt;br /&gt;
**   =&amp;gt; Réception sur l'Arduino&lt;br /&gt;
&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultés rencontrées ===&lt;br /&gt;
* '''Partie Informatique'''&lt;br /&gt;
** Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
** Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;br /&gt;
&lt;br /&gt;
* '''Partie Électronique'''&lt;br /&gt;
** Conception de l'architecture matérielle avec un buffer associé à la liaison Ethernet&lt;br /&gt;
** Décomposition de la taille du paquet Ethernet (short int = 2 octets) en deux paquets d'un octet chacun, et récupération des deux premiers paquets sur l'arduino pour reconstruire la taille du paquet.&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=526</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=526"/>
				<updated>2011-04-06T11:20:06Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
*'''Partie Informatique'''&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
*'''Partie Électronique'''&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
**   =&amp;gt; Émission seule '''FAIT'''&lt;br /&gt;
**   =&amp;gt; Réception seule&lt;br /&gt;
**   =&amp;gt; E/R simultanés (processus multithreadé)&lt;br /&gt;
**   =&amp;gt; Réception sur l'Arduino&lt;br /&gt;
&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultes rencontrees ===&lt;br /&gt;
* Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
* Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=525</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=525"/>
				<updated>2011-04-06T11:19:43Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
*Partie Informatique&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets Ethernet&lt;br /&gt;
**Créer une fonction de renvoi des paquets Ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l’exécution du programme sur l'arduino&lt;br /&gt;
**Vérifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
*Partie Électronique&lt;br /&gt;
**Concevoir le module d'émission/réception de la plate-forme altium vers l'arduino des trames Ethernet.&lt;br /&gt;
**   =&amp;gt; Émission seule '''FAIT'''&lt;br /&gt;
**   =&amp;gt; Réception seule&lt;br /&gt;
**   =&amp;gt; E/R simultanés (processus multithreadé)&lt;br /&gt;
**   =&amp;gt; Réception sur l'Arduino&lt;br /&gt;
&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultes rencontrees ===&lt;br /&gt;
* Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
* Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=473</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=473"/>
				<updated>2011-03-28T14:39:17Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
*Partie Informatique&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets ethernet&lt;br /&gt;
**Creer une fonction de renvoi des paquets ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l'xécution du programme sur l'arduino&lt;br /&gt;
**Verifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
*Partie Electronique&lt;br /&gt;
**Concevoir le module d'émission/réception de la plateforme altium vers l'arduino des trames Ethernet. Emission : '''FAIT'''&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultes rencontrees ===&lt;br /&gt;
* Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
* Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=472</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=472"/>
				<updated>2011-03-28T14:39:00Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
*Partie Informatique&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets ethernet&lt;br /&gt;
**Creer une fonction de renvoi des paquets ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l'xécution du programme sur l'arduino&lt;br /&gt;
**Verifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
*Partie Electronique&lt;br /&gt;
**Concevoir le module d'émission/réception de la plateforme altium vers l'arduino des trames Ethernet. Emission : '&amp;quot;FAIT'&amp;quot;&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultes rencontrees ===&lt;br /&gt;
* Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
* Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=471</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=471"/>
				<updated>2011-03-28T14:38:47Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
*Partie Informatique&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets ethernet&lt;br /&gt;
**Creer une fonction de renvoi des paquets ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l'xécution du programme sur l'arduino&lt;br /&gt;
**Verifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
*Partie Electronique&lt;br /&gt;
**Concevoir le module d'émission/réception de la plateforme altium vers l'arduino des trames Ethernet. Emission : '&amp;quot;FAIT&amp;quot;'&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultes rencontrees ===&lt;br /&gt;
* Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
* Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=470</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=470"/>
				<updated>2011-03-28T14:38:23Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?). Vous devez aussi vous préoccuper de la commande des moteurs, ce qui impactera l'architecture à implémenter sous Altium.&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100). '''FAIT'''&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés pas les élèves (les encadrants y ont droit de modification) ===&lt;br /&gt;
*Partie Informatique&lt;br /&gt;
**Faire du profiling d'utilisation d'espace mémoire afin de voir de quelle taille il faudrait réduire le programme pour qu'il soit portable sur un arduino '''FAIT'''&lt;br /&gt;
**Tester une ou deux fonctions sur l'arduino pour savoir qu'est-ce-qu'il faut changer dans le code '''FAIT'''&lt;br /&gt;
**Inclure les fichiers en-tête ainsi que le Makefile arduino et vérifier qu'on peut bien créer une machine virtuelle sur l'arduino '''FAIT'''&lt;br /&gt;
**Vérifier qu'avec la machine virtuelle créée sur l'arduino on peut bien envoyer et recevoir des paquets ethernet&lt;br /&gt;
**Creer une fonction de renvoi des paquets ethernet reçus qui contiendra une variable Packet dans laquelle seront stockés les en-têtes dudit paquet pour l'optimisation d'espace mémoire sur à l'xécution du programme sur l'arduino&lt;br /&gt;
**Verifier et tester le renvoi correct du/des paquet(s) reçu(s)&lt;br /&gt;
*Partie Electronique&lt;br /&gt;
**Concevoir le module d'émission/réception de la plateforme altium vers l'arduino des trames Ethernet. Emission : &amp;quot;FAIT&amp;quot;&lt;br /&gt;
**Concevoir le module de réception des commandes actionneur de l'arduino&lt;br /&gt;
&lt;br /&gt;
=== Difficultes rencontrees ===&lt;br /&gt;
* Comprendre le code fourni et savoir se servir des fonctions&lt;br /&gt;
* Comprendre la syntaxe d'un makefile et maîtriser la compilation modulaire sur l'arduino&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=285</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=285"/>
				<updated>2011-03-03T10:00:17Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Matériel requis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des switch ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?).&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100).&lt;br /&gt;
&lt;br /&gt;
=== Difficultes rencontrees ===&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=284</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=284"/>
				<updated>2011-03-03T09:59:53Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Matériel requis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*moulins à vent avec moteur à courant continu : nous augmenterons la tension d'alimentation des moteurs proportionnellement à l'occupation des serveurs ;&lt;br /&gt;
*câbles ;&lt;br /&gt;
*plateforme Altium ;&lt;br /&gt;
*un module ELZ50 [http://www.atmicroprog.com/realisations/elz50/elz50.php] (commande en cours).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Préciser le dispositif &amp;quot;moulin à vent&amp;quot;. En particulier, ils doivent être motorisés (comment ?).&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ; '''FAIT'''&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ; '''FAIT'''&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ; '''FAIT'''&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ; '''FAIT'''&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ; '''FAIT'''&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn). '''FAIT'''&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100).&lt;br /&gt;
&lt;br /&gt;
=== Difficultes rencontrees ===&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=220</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=220"/>
				<updated>2011-02-28T17:08:48Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Matériel requis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*Moulins à vent&lt;br /&gt;
*câbles;&lt;br /&gt;
*Plateforme Altium ;&lt;br /&gt;
*un module ELZ50 (http://www.atmicroprog.com/realisations/elz50/elz50.php) (à commander).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Je ne comprend pas pourquoi vous parlez de matériel Wifi et de modem soft !?&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ;&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ;&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ;&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ;&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ;&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn).&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100).&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	<entry>
		<id>https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=219</id>
		<title>Système embarqué TCP/IP</title>
		<link rel="alternate" type="text/html" href="https://wiki-ima.plil.fr/mediawiki//index.php?title=Syst%C3%A8me_embarqu%C3%A9_TCP/IP&amp;diff=219"/>
				<updated>2011-02-28T17:08:13Z</updated>
		
		<summary type="html">&lt;p&gt;Rproyart : /* Matériel requis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Présentation ==&lt;br /&gt;
&lt;br /&gt;
Le but de ce projet est principalement de réaliser un système embarqué TCP/IP, qui pourrait représenter grâce aux LEDs ou à des moulins à vent la charge sur les différents commutateurs de l'école, décrivant ainsi l'activité de ces derniers.&lt;br /&gt;
&lt;br /&gt;
== Préparation du projet ==&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
=== Matériel requis ===&lt;br /&gt;
*microcontroleur [[http://www.robotshop.com/microcontroleur-arduino-uno-usb-2.html Arduino Duemilanove]] (disponible) ;&lt;br /&gt;
*LEDs multicolores (disponibles) ;&lt;br /&gt;
*câbles;&lt;br /&gt;
*Plateforme Altium ;&lt;br /&gt;
*un module ELZ50 (http://www.atmicroprog.com/realisations/elz50/elz50.php) (à commander).&lt;br /&gt;
&lt;br /&gt;
=== Commentaires des encadrants sur le matériel ===&lt;br /&gt;
Je ne comprend pas pourquoi vous parlez de matériel Wifi et de modem soft !?&lt;br /&gt;
&lt;br /&gt;
== Avancement du projet ==&lt;br /&gt;
&lt;br /&gt;
=== Objectifs suggérés par les encadrants ===&lt;br /&gt;
&lt;br /&gt;
* Ecrire un programme avec les fichiers fournis permettant dans un premier temps de créer une machine virtuelle répondant à la commande ping :&lt;br /&gt;
** nettoyer les fichiers fournis pour enlever toute référence aux sockets Unix ou Internet ;&lt;br /&gt;
** réaliser des fonctions de lecture et d'écriture pour une interface TAP ;&lt;br /&gt;
** écrire une procedure main réalisant les actions suivantes :&lt;br /&gt;
*** initialisation d'une variables de pile TCP/IP (type netstack) ;&lt;br /&gt;
*** création d'une interface de type TAP avec les fichiers libtap.c et libtab.h fournis ;&lt;br /&gt;
*** écriture d'un &amp;quot;pilote&amp;quot; pour cette interface (c'est à dire remplissage d'une structure avec le descripteur lié à l'interface et les fonctions de lecture et d'écriture sur l'interface TAP) ;&lt;br /&gt;
*** ajout d'une interface réseau et d'une adresse IP à cette pile (par exemple 192.168.0.100/24) ;&lt;br /&gt;
*** démarrage de la fonction de gestion de la pile (stackOn).&lt;br /&gt;
* Test de votre programme; lancement du programme, ajout d'une adresse IP (par exemple 192.168.0.200/24) sur l'interface tap0 créée par le programme, test de réponse de la pile par la commande ping (par exemple sur l'adresse 192.168.0.100).&lt;/div&gt;</summary>
		<author><name>Rproyart</name></author>	</entry>

	</feed>