1-Prise en main du bouclier Open-Smart Rich.

CC by julien bernard

Le bouclier OPEN SMART Rich est une carte électronique de type bouclier (shield), il s’insère sur une carte  Arduino UNO.

Le principal intérêt pédagogique et le regroupement sans câblage des nombreux composants électroniques. En contextualisant les utilisations via des scénarios pédagogiques vous pourrez exploiter ce bouclier en classe notamment dans le cours de technologie, mathématiques et sciences du numérique…

Le bouclier regroupe différents capteurs et actionneurs.

 

Liste des actionneurs:

CC by Julien Bernard

– Une led jaune.
– Une led bleue.
– Une led Verte.
– Une led Rouge.
– Un potentiomètre.
– Quatre afficheurs 7 segments.
– Un buzzer.

Liste des capteurs:

– Deux boutons poussoirs.
– Un capteur de température et d’humidité.
– Un capteur de température.
– Un capteur de lumière.
– Un récepteur infrarouge.

 

Scénarios faciles, (Utilisation des 4 LEDS)

La led rouge est connecté sur la broche 4
La led bleue est connecté sur la broche 5
La led verte est connecté sur la broche 6
La led jaune est connecté sur la broche 7

Notez au passage que la led bleue et verte sont connectés sur une broche PWM

Scénario 1:
Étude d’une alarme factice de voiture.

CC BY
Raito Akehanareru

Dans cette activité, nous allons réaliser une alarme factice de voiture, un signal lumineux rouge clignotant faussera l’appréciation d’éventuels voleurs.
Pour ce faire, nous allons utiliser la LED rouge du bouclier, elle est connecté à la broche 4.

L’organigramme de fonctionnement.

Nous allons mettre la broche 4 à l’état HAUT pendant 500ms puis mettre l’état logique de la broche 4 à l’état BAS pendant 500ms et répéter les instructions à l’infini…

CC BY Julien bernard

Le code en C++

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
const int ledrouge=4;

void setup() {

pinMode(ledrouge,OUTPUT);

}

void loop() {
 
digitalWrite(ledrouge,HIGH);
delay(500);

digitalWrite(ledrouge,LOW);
delay(500);

}
Le résultat en vidéo:
Continuité pédagogique

Une fois l’exercice maîtrisé, vous pouvez proposer aux étudiants  d’expérimenter le montage avec les 4 LEDS (La led bleue est connecté sur la broche 5,  la led verte est connecté sur la broche 6, la led jaune est connecté sur la broche 7).

La démarche pourrait être la suivante:

  1. Scénariser l’activité (feu de circulation, guirlande de fête, signaux de bateau…)
  2. Inventer l’organigramme et le faire valider par l’enseignant.
  3. Coder le programme.
  4. Tester avec la plateforme.

Un exemple de programme utilisant les 4 LEDS:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
const int ledrouge=4;
const int ledvert=5;
const int ledbleu=6;
const int ledjaune=7;


void setup() {
pinMode(ledvert,OUTPUT);
pinMode(ledbleu,OUTPUT);
pinMode(ledjaune,OUTPUT);
pinMode(ledrouge,OUTPUT);
}

void loop() {
 
digitalWrite(ledvert,HIGH);
digitalWrite(ledbleu,HIGH);
digitalWrite(ledjaune,HIGH);
digitalWrite(ledrouge,HIGH);
delay(50);
digitalWrite(ledrouge,LOW);
delay(50);
digitalWrite(ledjaune,LOW);
delay(50);
digitalWrite(ledvert,LOW);
delay(50);
digitalWrite(ledbleu,LOW);
delay(50);

}

 

 

Activité

Les objectifs validés par le professeur:

  • Reconnaître et choisir les bons composants
  • Réaliser le câblage d’un capteur
  • Comprendre comment fonctionne le capteur à Ultrasons.
  • Réaliser votre programme en C++
  • Réaliser une vidéo en LOW RESOLUTION
  • Rédiger un article avec une photo, une vidéo et du texte
  • Aller plus loin en rédigeant un paragraphe sur les leds

Répartition des rôles

Deux élèves font le câblage.
Deux élèves font le programme.

Une fois testé, un élève fait la vidéo, un fait l’article, deux élèves travaillent ensemble sur la partie aller plus loin.

Reconnaître et choisir les bons composants

Tu dois choisir pour ce montage:

  • Trois leds
  • trois résistance de 330 Ohms (à toi de trouver les couleurs)
  • des câbles.
  • l’arduino UNO et une platine de prototypage.

Pour commencer, regarder la vidéo

Réaliser votre second câblage avec 3 LEDS

Définir les rôles dans l’îlot

Autant être clair, vous serez noté sur votre travail en équipe.
Travailler en équipe c’est se faire confiance, se répartir les tâches et s’entraider.

La réalisation du robot est découpée en activité vous permettant de progresser à votre rythme. Vous devez vous répartir des rôles à chaque début de scéance. Cependant je vous impose de changer de rôle à chaque activité.

Exemple:

Activité 1, l’élève A et B seront programmeur et l’élève C et D seront webmaster.

Activité 2, l’élève C et D seront programmeur et l’élève A et B seront webmaster.

Travailler en autonomie…

Travailler en autonomie signifie que vous avez réfléchi et échanger ensemble avant de consulter le professeur.

 

 

Activité 1

Les objectifs validés par le professeur:

  • Répartition des rôles.
  • Reconnaître et choisir les bons composants
  • Réaliser votre premier câblage.
  • Réaliser votre programme en C++
  • Tranférer le programme
  • Réaliser une vidéo en LOW RESOLUTION
  • Rédiger un article avec une photo, une vidéo et du texte
  • Aller plus loin en rédigeant un paragraphe sur les leds

Répartition des rôles

Deux élèves font le câblage.
Deux élèves font le programme.

Une fois testé, un élève fait la vidéo, un fait l’article, deux élèves travaillent ensemble sur la partie aller plus loin.

Reconnaître et choisir les bons composants

Tu dois choisir pour ce montage:

  • Trois leds
  • trois résistances de 330 Ohms (à toi de trouver les couleurs)
  • des câbles.
  • Un arduino UNO et une platine de prototypage.

Réaliser votre premier câblage avec 3 LEDS

La led est polarisé, cela signifie quelle a un sens de branchement. Le courant ne peut passer que dans un sens, de l’anode vers la cathode. Dans l’autre sens, le courant ne passe pas. Observe bien le schéma de câblage pour savoir dans quel sens se connecte la led.

La résistance n’est pas polarisé.

Résultats de recherche d'images pour « led anode cathode »

Fait valider ton montage.

 

Conseils: Pensez à connecter la carte dans Outils/port et à choisir le bon type de carte (UNO) dans Outils/type de carte…

Réaliser votre programme en C++

Pour vous aider, vous trouverez le programme pour une seule led.

Clique pour voir le fonctionnement des fonctions abordés dans cette partie:

digitalWrite(,);

delay();

Le code pour une seule led:

Résultats de recherche d'images pour « soft arduino »

Fait valider ton programme

 

Transférer votre programme.

Rappel, pour réussir un transfert de programme il faut:

  • Avoir un programme sans faute.
  • Connecter l’arduino UNO via USB à l’ordinateur
  • Choisir la bonne carte dans le logiciel (Outils/type de carte/arduino UNO)
  • Sélectionner dans le logiciel le bon port COM (Outils/port et à choisir le bon type de carte (UNO) dans Outils/type de carte…)
  • Cliquer sur la petite flèche pour tranférer…

Réaliser une vidéo en LOW RESOLUTION

Une fois que les leds clignotent, rapellez-vous, vous devez vous répartir le travail.
Un des élèves doit réaliser une vidéo des leds.

Attention, cette vidéo va être déposé dans un article de votre site. Elle ne doit pas être lourde.

Pour cela:

  • La vidéo doit être courte 4-5s
  • Votre appareil devra être configurer en prise de vidéo  base résolution.
  • Peut-être devrez-vous compresser votre vidéo en ligne avec par exemple : http://www.videosmaller.com/fr/

Rédiger un article avec une photo, une vidéo et du texte

Titre de l’article: Activité 1 ICN

  1. Insérer la vidéo.
  2. Insérer une capture d’écran du code.
  3. Insérer un paragraphe sur les leds…

Votre paragraphe sur les leds

Vous devez rédiger en français un court paragraphe (200mots) sur les avantages des leds dans une utilisation quotidienne (maison, voiture, lampe de poche, flash de cellulaire…)

 

Un kit pour toute l’année…

Vous allez recevoir un kit dont vous êtes responsables, les composants électroniques sont fragiles et dispendieux, ainsi une partie de vos évaluations tiendront compte du soins apporté au matériel. Dans le kit vous trouverez:

  • Un automate arduino UNO
  • Un shield de prototypage ou une plaque de prototypage
  • Des câbles – Deux moteurs pas à pas
  • Deux contrôleurs de moteur ULN 2003
  • Des résistances – Un module bluetooth
  • Un capteur Ultrasons
  • Des leds

Vous allez apprendre pendant cette année, à câbler les composants, ce n’est pas très difficile mais vous faire attention car les erreurs sont fréquentes…

L’automate arduino UNO: Une plateforme open source

cc nc sa baldiri

L’automate programmable arduino Uno sert à exécuter un programme téléverser dans sa mémoire, il met en relation des capteurs et des actionneurs par le biais d’un code de C++ et d’un logiciel arduino IDE.

Les entrées/sorties

un périphérique d’entrée est un élément qui envoie des informations vers l’automate programmable…donc l’arduino.

Un périphérique de sortie est un élément qui reçoit une information depuis l’automate programmable.

Il faut déclarer soit en entrée ou soit en sortie la ou les broche(s) au début du programme (void setup)

par exemple:

pour déclarer la broche 1,4 et 5 en entrée et 7,8 et 3 en sortie:

pinMode(1,INPUT);
pinMode(4,INPUT);
pinMode(5,INPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(3,OUTPUT);

Les capteurs:

Leurs rôles est de mesurer une grandeur physique (température, pression, lumière, niveau, humidité…) et de la transformer en signal lisible par une entrée analogique  (A0,A1,A2…).

Un exemple de capteur analogique, le capteur de flexion, CC By Sparkfun electronique.

Les actionneurs:

ils réalisent une action physique en fonction des ordres que lui envoi le programme. Allumer un LED, faire tourner un moteur…

Plus généralement les actionneurs reçoivent un ordre leurs permettant de mettre en action (donc 1 logique) un transformateur d’énergie.

un exemple d’actionneur, un moteur Pas a Pas. Image by TIMOR CC By

0 ou 1, HIGH/LOW, TRUE/FALSE bref c’est Noir ou blanc…

Un automate de type Arduino UNO est plutôt binaire, il ne peut apprécier que deux états logiques, 1 ou 0, vrai ou faux… pour lui c’est blanc ou noir, il ne connaît pas le gris et encore moins le gris clair ou le gris foncé…
Le vocabulaire utilisé par la famille Arduino est HIGH pour l’état HAUT et LOW pour l’état BAS.

une commande utilisée courante:

digitalWrite(12,HIGH);

Envoyer un 1 logique (HIGH) via la broche 12 de l’arduino.

Mais comment faire avec un capteur analogique?

Prenons un exemple de capteur de température, nous ne pouvons nous contenter de dire: il fait chaud ou il fait froid…
Les capteurs analogiques renvoient une infinité de valeurs…

Ces valeurs seront donc lues par les entrées analogiques (A0,A1,A2…) et interprétées par le programme…

Une commande utile :

analogRead(0);

Lire la valeur de la broche analogique 0.

Le shield de prototypage ou une plaque de prototypage

Une plaque de prototypage sert à réaliser des circuits électronique sans soudure.
Avant de faire votre premier câblage, vous devez comprendre et connaître les connections électriques de la plaque.

à savoir:

  • Le + est le 5V, il faut donc mettre un connecter le Vcc ou 5V de l’arduino vers un des connecteur de la plaque, nous le verrons plus tard, vous pouvez connecter le 5V  dans n’importe quel trou pour obtenir du 5V dans toute la ligne +
  • Le – est le 0V ou ground ou GND, vous devez connecter un câble entre le GND de l’arduino et cette ligne, même remarque que pour le +, vous pouvez connecter un câble dans n’importe quelle broche pour obtenir du 0V sur toute la ligne…
  • Les numéros sur la plaque n’ont pas de rapport avec les numéros sur l’arduino.

Des broches connectées

CC JB

Certaines broches sont reliées électriquement, c’est le cas de la ligne + et – comme nous venons de le voir…

La zone centrale est divisée en deux, (ligne verte sur le schéma), nous utiliserons souvent ce séparateur pour mettre “à cheval” des composants électroniques.

les colonnes sont connectés, il faut donc ne pas mettre de composant sur une colonne car ils seront en court-circuit.

Prenons l’exemple de la led…

La led ou del (diode électroluminescente) est un composant électronique très utile, elle permet de visualiser de suite le bon fonctionnement d’un circuit.

Observez bien le câblage, l’idéal est de la connecter à cheval en utilisant le moins de place possible, comme sur le premier schéma, si cela est difficile, vous pouvez aussi utiliser plus de place comme sur le seconde schéma.

Le troisième exemple met la led en court-circuit, car les colonnes sont connectées, dans ce cas la led va griller.

Le dernier cas n’est pas conseillé même s’il fonctionne…

Votre projet.

Vous allez cette année en ICN réaliser entièrement un robot. Selon votre avancement il sera peut-être même piloté avec un téléphone et/ou autonome. Pour réaliser votre projet, vous allez avoir à disposition un kit programmable Arduino.

Kit programmable arduino

Le fonctionnement de l’année.

Vous allez créer un robot par groupe et chacun doit être responsable d’une partie, bien sûr tout le monde va faire de la programmation, design et de la fabrication…

les quatre grandes parties sont:

  • La programmation.
    Dans cette partie, vous allez apprendre progressivement à coder un robot en C++, les premiers exercices sont simplistes mais ne brûler pas les étapes car ils sont très importants…
  • Le design.
    Cette partie est assez difficile puisque vous devez imaginer le robot et le dessiner en 3D, ensuite nous l’imprimerons.
  • La fabrication.
    Vous devez acquérir des compétences en câblage et en implantation de composants électriques, dans un second temps vous serez responsable de l’assemblage du robot.
  • La partie web et application.
    Cette partie est crucial puisqu’elle permet au professeur de suivre votre projet via votre page web, ensuite nous développerons pour les groupes les plus avancés une application pour piloter votre robot.

Votre groupe avance de façon autonome et doit faire valider des étapes via votre site web par le professeur pour avancer à la prochaine.
Un document de suivi de projet tel que celui-ci sera utilisé :

Les outils utiles à maîtriser

Logiciel: (vous pouvez télécharger les logiciels sur votre ordinateur).

Arduino

Le logiciel Arduino sert à créer le programme qui va faire fonctionner le robot.

Il est composée de deux parties (fonctions):

  1. la fonction void setup() { }
    S’exécute une seule fois au démarrage
  2. la fonction void loop() { }
    S’exécute en boucle après le void setup

Nous pouvons déjà observer plusieurs choses au lancement du programme:

  • Les couleurs, Arduino reconnaît les fonctions et les mots en les changeant de couleur.
  • Une fonction commence toujours pas { et se termine par le caractère }
  • vous pouvez commenter une ligne en ajoutant // devant le texte

De Sketchup vers l’impression 3D

Le Logiciel Sketchup est un modeleur 3D, il te permettra de dessiner les pièces de ton robot.

Pour commencer tu dois respecter les règles de base de dessin afin que tes pièces s’impriment correctement.

  1. Ne faire formes pleines, ils mettraient trop de temps à s’imprimer et nous utiliserons du PLA pour rien. (vider les formes)

    julien bernard CC

  2. Essayer d’éviter les impressions dans le vide.
    En effet l’imprimante a du mal à imprimer des formes qui me s’appuient pas sur du plastique, il a tendance à couler et le résultat n’est pas bon.
  3. Dessiner une seule pièce par fichier…
    Par exemple si vous devez imprimer deux roues et un boitier, il faudra donc créer trois fichiers.

    CC by julien bernard

La chaîne d’information.

Commençons par regarder cette vidéo et interrogeons-nous sur les différents sous-ensembles de notre magnifique robot réalisé en enseignement d’exploration ICN en seconde…

Nous pouvons, assez facilement identifier les parties suivantes:

  • Le capteur à ultrasons
  • Le cerveau de notre robot ( içi un automate programmable arduino Uno)
  • Une partie qui stocke de l’énergie, des piles rechargeables
  • Deux convertisseurs d’énergie ( les moteurs)
  • Des câbles électriques qui véhiculent de l’énergie ou des informations

CC by julien bernard

Un capteur à ultrasons, jamais entendu parler…?

Et bien cela est normal, notre oreille n’est pas capable d’entendre les ultrasons… contrairement à nos amis les animaux, en effet les chiens ou les chauves souris les percoivent…
Le capteur à ultrasons comme son nom l’indique envoit des ultrasons dans l’espace et mesure le temps de retour des ondes lorsqu’il rebondissent contre un obstacle.

Ainsi nous pouvons facilement déterminer la distance avec un obstacle.

Retenons comme vitesse du son:  340m/s, nous pouvons trouver la distance avec la formule V=d/t, il ne faut pas oublier de diviser le temps par 2 (aller et retour).

La chaîne d’information

La chaîne d’information se compose souvent de trois parties:

  • Acquérir
  • Traîter
  • Communiquer

Acquérir: Souvent composée de capteur(s), cette partie mesure des grandeurs physiques, afin de donner des informations à la partie “traîter”, nous pouvons les comparer à nos cinq sens.

Traîter: On peut le comparer au cerveau de notre corps, c’est l’élèment central du système. Il traîte les informations grâce au programme dans sa mémoire et aux informations (acquéries des capteurs) , en conséquence il va communiquer des actions à réaliser à la partie énergie.

Communiquer: Cette partie sert à véhiculer les informations et les actions à réaliser par la partie énergie.

CC julien bernard

La chaîne d’énergie

Cette partie exécute les ordres de la partie information, nous pouvons les comparer à nos muscles.
Globalement, nous pouvons diviser la chaîne d’énergie en quatre parties:

  • Alimenter
  • Distribuer
  • Convertir
  • Transmettre

Alimenter: C’est la partie énergie, d’abord en stockage puisque cette partie est aussi un réservoir à énergie. (batteries rechargeables).

Distribuer: Des conducteurs électriques (câble en cuivre) véhiculent l’énergie vers les convertisseurs.

Convertir: Cette partie convertit une énergie en une autre, dans le cas des moteurs électriques, nous tranformons l’énergie électrique en énergie cinétique.

Transmettre: Cette partie ne fait pas que transmettre l’énergie d’un point A vers un point B du robot, elle amplifie ou diminue la vitesse et le couple (force en rotation).

Comment se déplace un robot “base tank”?

Nous définissons une base tank en robotique par la structure de sa base. On retrouve des convertisseurs d’énergie de chaque coté. Chaque côté est indépendant et il suffit d’actionner l’un ou l’autre pour faire déplacer le robot.

CC julien bernard

À quoi servent les engrenages ? (partie transmettre)

Nous avons vu que les engrenages (association de deux ou plusieurs roues dentées) servent à transmettre un mouvement et modifier une vitesse et un couple. Entrons dans les détails:

Considérons deux roues: La roue 1 en bleue et la roue deux en rouge. La roue 1 est deux fois plus petite que la 2. Nous comprenons facilement que lorsqu’une roue tourne dans un sens (sens horaire pour la bleue), l’autre tourne dans le sens inverse (sens trigonométrique).

Nous pouvons aussi nous dire que si la roue 1 fait un tour, alors la roue 2 n’aura fait qu’un demi-tour, nous avons donc réduit la vitesse.

Cependant il y a un autre effet, le couple (force en rotation) sera augmentée de façon inverse et proportionnelle… donc x2, nous avons un robot qui va donc monter plus facilement les pentes (mais plus doucement 🙂 ).

CC julien bernard

Chaîne d’énergie, chaîne d’information

Pour finir, nous allons réunir les deux chaînes…

CC julien bernard

Pour finir vous trouverez la fiche synthèse en cliquant sur le lien synthèse Chaine info nrj

Le cycle de vie en fonction des ventes

Un produit a une vie, depuis l’extraction des matières premières à sa mise sur le marché puis à la valorisation de l’objet inusité, nous pouvons à chaque étapes de la vie du produit mesurer des informations comme sont impact environnemental ou son volume de vente et tenter de les améliorer.

Comme introduction au domaine du marketing, lors d’un lancement de produit sur le marché une  courbe de vente «type» est obeservable en fonction du temps.

Nous pouvons ainsi donc découper le graphique en 4:

  1. la phase de lancement
  2. la phase de croissance
  3. la phase de maturité
  4. la phase de déclin

 

Chaque étape est plus ou moins longue en fonction du marché et du produit.

En effet le cycle de vie lors du lancement d’un téléphone intelligent n’est pas le même que celui d’un vélo.

Il est important pour une entreprise de savoir se situer et d’anticiper les phases de vie du produit en adoptant différentes stratégies. (Politique de prix, évolution du produit, stratégie de différenciation.

 

Si nous prenons du recul en observant la vie de l’objet dans sont intégralité, nous pouvons observé le schéma suivant.

Le schéma du cycle de vie présente de façon simplifié les étapes prises en compte lors de l’établissement des Déclarations environnementales de produits. Si 16 étapes sont définies par la norme européenne NF EN 15804, elles sont ici regroupées et réduites à sept.

 

le pdf sur le cycle de vie:

Cycle de vie.structuration et exo

 

Un incontournable : SCRATCH.

Pour débuter.

Le logiciel pour acquérir les compétences de programmation du cycle 4 est Scratch. (le lien pour le télécharger)

Scratch est un logiciel qui permet d’apprendre la programmation avec des blocs que l’on déplace à la souris. Ces instructions sont directement visibles grâce à un lutin qui devient animé.

Mblock pour la technologie.

Mblock est un fork de scratch, vous trouverez l’instalation en suivant ce lien…

Mblock ajoute une bibliothèque de fonction “automate programmable” à Scratch. Il tranforme également les blocks en C++ (édition/mode arduino).

La limite, les mauvaises habitudes chez les étudiants!

Apprendre à utiliser Mblock/Arduino est assez facile. Les pré-requis sont:

  • Comprendre la différence entre un 1 logique et un 0 logique.
  • Comprendre la différence entre une entrée et une sortie numérique.
  • Comprendre la différence entre un signal analogique et numérique.

Pour donner du sens au apprentissage, il convient de contextualiser les montages et de l’inclure dans la démarche de projet d’un projet de l’année.

Cependant, Scratch ou Mblock sont des incontournables dans le sens où ils sont préconisé pour la préparation au DNB. En ce sens il convient de commencer par un des deux logiciels et de basculer vers le C++ plus tard.