Niveau 5e :
Tâche : Modifier un programme existant pour changer la durée d’arrosage.
Critères : Identifier la ligne du code correspondante, tester la modification, et vérifier si elle fonctionne comme prévu.
Niveau 4e :
Tâche : Ajouter une condition pour déclencher l’arrosage seulement si le sol est sec.
Critères : Insérer une condition dans le code, utiliser une variable issue d’un capteur d’humidité, et tester le fonctionnement.
Niveau 3e :
Tâche : Automatiser complètement l’arrosage avec plusieurs capteurs (humidité, température) et ajouter une fonctionnalité pour notifier l’utilisateur.
Critères : Écrire un programme intégrant des capteurs multiples, programmer une alerte (ex. : envoi d’un message via un module Wi-Fi), tester et valider.
5e :
Projet : Commande d’une LED.
Tâche : Modifier le clignotement (fréquence ou durée) dans un programme Arduino.
Critères : Comprendre les paramètres existants et valider la modification via des tests.
4e :
Projet : Portail automatique.
Tâche : Programmer un capteur de proximité pour ouvrir le portail lorsqu’un obstacle est détecté.
Critères : Ajouter une condition au programme et valider l’ensemble via des tests pratiques.
3e :
Projet : Robot suiveur de ligne.
Tâche : Écrire un programme permettant au robot de suivre une trajectoire noire grâce à deux capteurs de couleur.
Critères : Intégrer les données des capteurs, tester le programme sur plusieurs parcours, et optimiser la vitesse.
Supports pédagogiques :
Fichiers de programmes simples à modifier.
Guides pour comprendre les éléments de base du code (variables, conditions, boucles).
Outils numériques :
Simulateurs (ex. : Tinkercad pour Arduino) pour tester les programmes avant la mise en pratique.
Grilles de suivi :
Document où les élèves expliquent leur démarche (objectifs, modifications, tests réalisés).
Souhaitez-vous des grilles personnalisées pour un autre projet ou une autre compétence ? Ou préférez-vous un exemple de cours détaillé basé sur ces critères ?
4o
Vous avez dit :
oui
ChatGPT a dit :
ChatGPT
Voici un exemple de cours détaillé basé sur la compétence "Comprendre et modifier un programme lié à un objet ou système technique", structuré autour d’un projet concret. Le projet est conçu pour être adaptable aux trois niveaux (5e, 4e, 3e) avec des activités progressives.
Les élèves apprendront à comprendre un programme simple, à y apporter des modifications pour répondre à un besoin, et à tester et valider ces changements. Ce projet intègre la programmation, la simulation et une mise en œuvre pratique.
L'objectif est de programmer un système d’éclairage automatique activé par un capteur de lumière. Le système doit :
Allumer une LED quand il fait sombre.
S’éteindre automatiquement en plein jour.
(Extension pour la 3e) Ajouter une temporisation et ajuster l’intensité de la lumière en fonction du niveau d’obscurité.
A. Introduction (5-10 minutes)
Présentation du système :
Démonstration d’un montage simple avec une LED et un capteur de lumière (photo-résistance).
Explication des principes de base : capteur, condition, actionneur.
Objectifs du projet :
Comprendre comment le programme contrôle le système.
Modifier et améliorer le programme.
B. Étapes du projet
Activité 1 : Comprendre le programme de base
Matériel : Arduino, LED, photo-résistance, résistances.
Programme de départ : Une LED s’allume dès qu’un seuil d’obscurité est atteint.
c
Copier le code
int sensorPin = A0; // Entrée capteur
int ledPin = 9; // Sortie LED
int threshold = 500; // Seuil de lumière
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
int lightLevel = analogRead(sensorPin);
if (lightLevel < threshold) {
digitalWrite(ledPin, HIGH); // Allume LED
} else {
digitalWrite(ledPin, LOW); // Éteint LED
}
}
Tâche des élèves :
Identifier le rôle de chaque ligne.
Relier les variables (sensorPin, ledPin, threshold) à leurs fonctions.
Dessiner un schéma simple du montage.
Activité 2 : Modifier le seuil d’obscurité
Objectif : Modifier la valeur de threshold pour ajuster la sensibilité du capteur.
Critères d’évaluation :
Insuffisant : La LED ne s’allume pas au bon moment.
Atteint : La LED s’allume et s’éteint correctement selon le seuil.
Activité 1 : Ajouter une temporisation
Objectif : Empêcher la LED de clignoter en cas de variations rapides de lumière.
Ajout au code :
c
Copier le code
delay(1000); // Temporisation d’une seconde
Tâche :
Identifier où insérer la temporisation.
Tester si la LED fonctionne sans clignoter intempestivement.
Activité 2 : Ajuster la luminosité avec la commande PWM
Extension du code pour varier l’intensité de la LED selon le niveau d’obscurité :
c
Copier le code
int brightness = map(lightLevel, 0, 1023, 0, 255);
analogWrite(ledPin, brightness);
Tâche des élèves :
Tester le programme.
Observer les variations de luminosité.
Activité 1 : Intégrer plusieurs capteurs
Ajouter un capteur de mouvement pour que la LED s’allume uniquement lorsqu’une personne passe.
Code :
c
Copier le code
int motionPin = 2; // Entrée capteur de mouvement
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(motionPin, INPUT);
}
void loop() {
int lightLevel = analogRead(sensorPin);
int motion = digitalRead(motionPin);
if (lightLevel < threshold && motion == HIGH) {
digitalWrite(ledPin, HIGH); // Allume LED
} else {
digitalWrite(ledPin, LOW); // Éteint LED
}
}
Tâche :
Comprendre la logique de double condition.
Tester le fonctionnement avec les deux capteurs.
Activité 2 : Ajouter une fonctionnalité avancée
Envoi d’une notification via un module Wi-Fi lorsque la LED s’allume.
Proposer une documentation simple pour expliquer cette fonctionnalité.
Critères
Insuffisant
Fragile
Atteint
Dépassé
Compréhension du code
Ne parvient pas à identifier les parties principales.
Identifie quelques éléments mais avec des erreurs.
Explique les éléments principaux.
Analyse le code dans son ensemble.
Modification fonctionnelle
Ne réalise pas de modification.
Modifie avec des erreurs fréquentes.
Réalise des modifications simples.
Apporte des modifications complexes.
Test et validation
Ne teste pas correctement.
Teste mais ne corrige pas toutes les erreurs.
Teste et valide le fonctionnement.
Optimise et propose des améliorations.
Création de nouvelles fonctions
Ne propose pas d’idée.
Ajoute une fonction incomplète.
Ajoute une fonctionnalité pertinente.
Propose une fonction avancée et innovante.
Matériel :
Arduino Uno, câbles, résistances, LEDs, capteurs (lumière, mouvement).
Outils logiciels :
IDE Arduino, simulateur comme Tinkercad pour tester virtuellement.
Documents supports :
Guide pour comprendre le code.
Tutoriels pour connecter les composants.
Souhaitez-vous une déclinaison similaire pour un autre projet ou des ressources spécifiques pour accompagner cette progression ?