Sommaire : Le déroulement de l’année Les mini-projets Gestion des projets Langage choisi La programmation processing La programmation arduino La programmation android Exemple d’applications sur android
Le déroulement de l’année Fichier Vacances : Toussaint Noël Hiver Pâques Choix des projets Bac TP sur les connaissances théoriques. Initiation à la programmation Suite des TPs et début des exposés sur les thèmes sociétaux 1h projet par séance et fin des exposés et Tps Projet Projet
Les mini-projets Deux mini-projets : Le premier durant les vacances de noël : Mascotte pour l’ISN (corrigé) Travaux des élèves 1 et 2. Un deuxième durant les vacances de la toussaint : Jeu SIMON (corrigé) L’application.
Gestion des projets Le semaine avant les vacances de noël, les élèves font les groupes et me rédigent un A4 avec ce qu’ils veulent faire. Pendant les vacances, je rédige le cahier des charges avec un planning prévisionnel. Exemple de projet des années précédentes 1, 2, 3 et 4. Les résultats :1, 2, 3 et 4. La première séance après les vacances, on valide la répartition des tâches, le sujet et le planning avec les élèves. Après cette date, on ne fera plus de modification sur le cahier des charges. En général, j’ai deux-trois projets à leurs proposer.
Le langage choisi : Processing sait gérer facilement des entrées variées (souris, clavier, kinect, webcam, son, vidéos, images, fichiers textes…) et permet de générer facilement de nombreuses sorties (images, son, pdf, images 3D…) et d’obtenir un logiciel indépendant, de s’exporter sous forme d’application javascript pour s’intégrer à une page HTML, voire vers un téléphone Android. Processing est constitué d’un dossier qu’il suffit de dézipper. Il comprend un compilateur java intégré, donc il est se suffit à lui-même.
La programmation processing: Deux procédures sont importantes : Les variables globales se positionnent avant les fonctions. setup() qui permet d’initialiser le programme, avec généralement en première ligne l’instruction size(largeur,hauteur); pour ouvrir une fenêtre de la taille demandée. Elle ne s’exécute qu’une fois. draw() qui est la procédure principale et qui va se répéter jusqu’à l’arrêt du programme. Il est possible de travailler sans setup() et draw(), mais dans ce cas vous ne pouvez appeler de procédures.
une fenêtre de programmation Barre d'actions : Démarrer le programme. Arrêter le programme Nouveau programme Ouvrir Enregistrer Exporter l'application Mode en cours (Java, Python, Anrdoid....) Menu une fenêtre de programmation une console qui affiche les informations et erreurs de compilation du programme On peut rajouter des onglets pour des sous-fonctions
Gestion de la souris : DEMO Gestion du clavier : DEMO Gestion des images : DEMO Jouer de la musique : DEMO Programmation procédurale : DEMO Programmation orienté objet : DEMO Les animations : DEMO
La programmation arduino C’est un logiciel libre (Arduino) de développement basé sur Java. Les variables globales se positionnent ces deux procédures. Deux procédures sont importantes : setup() qui permet d’initialiser le programme. Elle ne s’exécute qu’une fois. loop() qui est la procédure principale et qui va se répéter jusqu’à l’arrêt du programme. Il était destiné à l'origine principalement mais pas exclusivement à la programmation multimédia interactive en vue de spectacle ou d'animations artistiques. C'est une partie de l'explication de la descendance de son interface de programmation de Processing
Vérifier si la compilation se passe bien. Barre d'actions : Vérifier si la compilation se passe bien. Transfert le programme sur l'arduino. Nouveau programme Ouvrir Enregistrer Menu une fenêtre de programmation une console qui affiche les informations et erreurs de compilation et de transfert du programme Transfert le programme sur l'arduino: attention il faut avoir sélectionné l'arduino qui est branché dans Outils/Type de carte. une fenêtre de programmation
Coloration syntaxique: En orange, apparaissent les mots-clés reconnus par le langage Arduino comme des fonctions existantes. En bleu, apparaissent les mots-clés reconnus par le langage Arduino comme des constantes. En gris, apparaissent les commentaires qui ne seront pas exécutés dans le programme. L'on peut déclarer un commentaire de deux manières différentes : dans une ligne de code, tout ce qui se trouve après « // » sera un commentaire. l'on peut encadrer des commentaires sur plusieurs lignes entre « /* » et « */ ».
DEMO Exemple de programme : void clignote() int brocheLED = 2; digitalWrite (brocheLED, HIGH) ; delay (1000) ; void setup() digitalWrite (brocheLED, LOW) ; { pinMode(brocheLED, OUTPUT); //on configure la brocheLED en sortie pinMode(5, OUTPUT);//on configure la broche 5 en sortie void clignote(int broche, int vitesse) pinMode(3, OUTPUT);//on configure la broche 7 en sortie digitalWrite (broche, HIGH) ; delay (1000 / vitesse) ; } digitalWrite (broche, LOW) ; void loop() //clignote(); clignote(5, 30); //la sortie 5 clignotera vite clignote(3, 1); //la sortie 7 clignotera lentement DEMO
Projet : La harpe laser : prototype de programmation
Déroulement du projet : Après les vacances d’octobre : distribution du document suivant : ISN_Projet.pdf Avant les vacances de noël choix des groupes et du sujet Après les vacances de noël : début du projet avec la distribution du cahier des charges : CDC_HARPE.pdf
Répartition des tâches : Un élève a créé une page html pour présenter le projet L’autre élève a créé le programme sur l’arduino pour détecter la corde coupée et jouer une note. Le troisième à crée le programme qui permet de jouer une mélodie lorsque deux cordes sont coupées.
Algorithme :
La programmation android Installer le Java Development Kit d’Oracle Installer le SDK de google Installer le mode Android dans Processing et le sélectionner Installer les drivers USB pour votre telephone Mettre votre téléphone en mode débogage USB Le brancher à votre ordinateur Cliquer play Notice détaillée
Exemple d’applications sur android Application simple : DEMO Rotation, translation et glissement d’un rectangle : DEMO Utilisation de l’accéléromètre : DEMO La programmation orientée objet : DEMO Utilisation de la caméra : DEMO Remarque pour la dernière démo, il faut copier le répertoire Ketai dans Documents\Processing\libraries
Merci pour votre attention Pour toutes questions futures, vous pouvez me contacter à l’adresse : gisele.bareux@ac-strasbourg.fr