NSI
Numérique et Sciences Informatiques
L’enseignement de spécialité de numérique et sciences informatiques du cycle terminal de la voie générale vise l’appropriation des fondements de l’informatique pour préparer les élèves à une poursuite d’études dans l’enseignement supérieur, en les formant à la pratique d’une démarche scientifique et en développant leur appétence pour des activités de recherche.
L’objectif de cet enseignement, non professionnalisant, est l’appropriation des concepts et des méthodes qui fondent l’informatique, dans ses dimensions scientifiques et techniques....
Vous trouverez ici mes activités (cours/TP) de première spécialité NSI au lycée Alphonse Benoît.
The Things Network et Node Red
Dans le précédent article, nous avons mis en œuvre un objet connecté au travers du réseau IOT The Things Network. Nous avons utilisé Cayenne my devices pour la construction du Front End. Je vous propose dans cet article de le construire à l'aide de Node Red. L'objet connecté sera le capteur de température et d'humidité construit autours d'une carte THE THINGS UNO et d'un DHT11 vu dans le précédent article.
Node red et MySql
Dans cet article, je vous propose de mettre en oeuvre une solution de sauvegarde de données dans une base de données MySql. Nous utiliserons les informations issues du capteur de température du CPU de notre Raspberry Pi toutes les minutes pour peupler la base de données. Nous utiliserons Node Red pour les lire et les présenter sous forme d'un tableau et d'un graphique retraçant l'évolution des dernières mesures. Pour cela il nous faudra procéder à l'installation de MySql sur notre Raspberry. Pour faciliter la gestion des bases de données MySql, nous installerons également un serveur Apache et phpMyAdmin en suivant au choix un de ces tutoriels :
Tutoriel Node-Red
Dans de nombreux projets, l'IHM est constituée d'une application web accessible depuis un navigateur. Il n'est pas toujours aisé de programmer le lien entre le matériel (capteurs et/ou actionneurs) et la page web fournie à l'utilisateur. Une solution consiste à utiliser un script Python dont l'exécution peut être planifiée avec Cron, pour interagir avec le matériel, lire les données des capteurs et les stocker dans une base de données comme MySQL. Un serveur web comme Apache2, via une page web php, met à disposition des utilisateurs les informations. Cette solution décrite dans un précédant article nécessite la mobilisation de nombreuses technologies et plusieurs langages de programmation, contraignant les développeurs du projet à retarder la mise œuvre d'un prototype pour se former.
Combiné avec une solution matérielle constituée d'une Raspberry et éventuellement une carte Arduino, Node Red se révèle être une alternative très intéressante :
Node-RED est un outil puissant pour construire des applications de l'Internet des Objets (IoT) en mettant l'accent sur la simplification de la programmation qui se fait grâce à des blocs de code prédéfinis, appelés «nodes» pour effectuer des tâches. Il utilise une approche de programmation visuelle qui permet aux développeurs de connecter les blocs de code ensemble. Les nœuds connectés, généralement une combinaison de nœuds d'entrée, de nœuds de traitement et de nœuds de sortie, lorsqu'ils sont câblés ensemble, constituent un «flow».
Créer un graphique en php à partir de données de MySQL
Bien souvent, les données collectées grâce aux capteurs sont enregistrées dans une base de données. Considérons que nous disposons du gestionnaire de base de données MySQL, d'un serveur web Apache2, du langage de script php5 et de phpmyadmin.
Nous disposons d'un système de mesure de masse d'une ruche et nous enregistrons tous les jours la masse de cette ruche.
Structure d’un premier objet communicant
Le but de ce tutoriel est de mettre en œuvre une structure type d'un objet communicant basé sur l'utilisation d'une carte Arduino pour la partie acquisition/actionneurs et d'une carte PC embarqué (pcDuino, Raspberry Pi, ...) pour la partie traitement (script Python, programme C/C++, ...), connexion au réseau (filaire ou wifi), stockage local des données (serveur de bases de données SQLigth, MySQL, ...), mise à disposition des données (serveur web Apache2, lighttpd, ginx, ...). La connexion entre ces deux carte se fait naturellement par une liaison série sur USB. Le synoptique ci-dessous représente par exemple un système de surveillance de la hauteur et de la qualité de l'eau d'un cours d'eau. La température, le Ph et la hauteur de l'eau sont mesurés sur demande par la carte Arduino. Le pcDuino via un scritp Python dont l'exécution peut être planifiée avec Cron, effectue la demande puis lit les réponses et les stockent dans la base de données MySQL. Apache2, via une page web php, met à disposition des utilisateurs les informations.
OS Linux et Systèmes embarqués
Cours, TP et devoir dispensés en master informatique au CERI d'Avignon sur les systèmes embarqués et plus précisément sur linux dans les systèmes embarqués au premier semestre 2015/2016.
Cours : Systèmes d'exploitations et Linux pour l'embarqué
Formation SIN
La formation SIN (Système d'Information Numérique) débute ce mois de juin dans l'académie d'Aix-Marseille.
Au programme :
- Développement d'applications pour Android (Eclipse), par Sylvain Grimal du lycée Pierre Gilles de Gennes à Digne les Bains.
- Les systèmes communicants par moi-même.
- Les systèmes embarqués, linux dans l'embarqué et la virtualisation.
- Le système d'exploitation, les commandes shell de bases et le développement en C sous linux.
- Le serveur web embarqué, langage HTML et php.
- La carte système embarqué Foxboard G20
- Exploitations pédagogiques, projets
Formation ISN
ISN est la nouvelle spécialité de terminale S qui sera mise en oeuvre la rentrée 2012.
Les professeurs de mathématiques, de Sciences Physiques et de Sciences de l'Ingénieur pourront l'enseigner à la condition d'avoir suivit une formation sur deux ans, dispensée par des enseignants-chercheurs de l'université d'Aix-Marseille et par des enseignants du secondaire en Sciences de l'Ingénieur.
J’interviens dans le cadre de cette formation sur les parties "initiation aux réseaux" et "initiation à la pédagogie de projet".
Projet autour de la Fox Board G20
Le projet à pour but de contrôler à distance quelques fonctions classiques d'une habitation au travers d'une application web implantée dans une carte système embarqué.
Les fonctions de confort choisies sont :
- Le chauffage (radiateurs électriques)
- Le refroidissement (climatiseur ou ventilateur)
- Éclairage extérieur (applique extérieur)
- Volets roulants
- Arrosage automatique
- Vidéo surveillance
Chaque fonction fait l'objet d'une commande de type tout ou rien. La commande tient compte de la valeur d'une grandeur physique caractéristique de la fonction à commander.
L’utilisateur utilise un ordinateur, une tablette PC ou un web phone connecter au réseau pour accéder au système de contrôle par l’intermédiaire d’un simple navigateur internet.
La carte de contrôle choisie est la platine Foxboard G20 de chez Acme System.
Ce projet est mis en oeuvre avec des élèves de première STI2D en spécialité SIN au cours du premier trimestre.