Différences entre les pages « Code minimal des capteurs pour Arduino » et « Le DebrouilloKit - Multipliez les expériences ! »

 
 
Ligne 1 : Ligne 1 :
 
{{Tuto Details
 
{{Tuto Details
|Main_Picture=Group-Initiation_à_Arduino_arduino.jpg
+
|Main_Picture=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Anim1.gif
 
|Licences=Attribution (CC-BY)
 
|Licences=Attribution (CC-BY)
|Description=Ici nous faisons la liste de tous les capteurs pour Arduino décrit dans wikidebrouillard
+
|Description=Le "DebrouilloKit"  est composé d'un boitier de commande, d'un bloc servomoteur, et d'un bloc de leds. Sous sa forme "mallette pédagogique", leurs dimensions ont été calculées pour faciliter le transport d'un ensemble de 6 kits, comme on peut le voir dans l'animation à gauche. Le boitier de commande comporte 1 potentiomètre, deux boutons, et trois entrées/sorties numériques (via des borniers à vis), ce qui est largement suffisant pour de nombreuses applications. Les faces avant des éléments accueillent des fiches imprimées, à placer en fonction de l'application choisie.
|Disciplines scientifiques=Arduino, Computing
+
|Disciplines scientifiques=Arduino, Computing, Electricity
 
|Difficulty=Technical
 
|Difficulty=Technical
|Duration=35
+
|Duration=4
 
|Duration-type=hour(s)
 
|Duration-type=hour(s)
 +
|Tags=Wemos D1 mini, découpe laser
 
}}
 
}}
 
{{Introduction
 
{{Introduction
|Introduction=Utiliser un capteur c'est parfois un peu technique, alors, comme pour [[Code minimal des actionneurs pour Arduino|les actionneurs]], on a créé "Le code minimal".  
+
|Introduction=L'idée de ce DebrouilloKit a germé suite au hackathon "Rudi", organisé par Les Petits Débrouillards Grand Ouest et L'Edulab de l'Université de Rennes 2 en décembre 2021, dans le  cadre d'un appel à projet eRudi porté par le Réseau Canopé. L'objet du hackathon était de développer des POCL (Petits Objets Connectés Ludiques), sur base Arduino ou Wemos D1 mini, mettant à profit des données libres ("''Open Data''"). L'appel à projet indiquait également que Les Petits Débrouillards devaient ensuite concevoir et développer une mallette pédagogique sur la base des ces POCL.
  
C'est le code minimal pour utiliser un capteur avec le logiciel Arduino et une carte compatible (Arduino UNO, Wemos D1 mini, etc.).
+
 
 +
Nous avons alors conçu un '''DebrouilloKit générique''', utilisable en dehors de ce besoin particulier. Il est aujourd'hui composé de trois boitiers : <br />
 +
 
 +
*la '''DebrouilloBox''' (boitier de commande), basée sur un Wemos D1 mini, un potentiomètre et deux boutons ;
 +
*la '''DebrouilloLight''', composée d'une bande de 12 leds multicolores ;
 +
*le '''DebrouilloServo''', composé d'un mini servomoteur
 +
 
 +
 
 +
A titre d'exemple, nous proposons 5 applications (les trois dernières étant issues du hackathon Rudi) :<br />
 +
 
 +
*une application de test, permettant de s'assurer que les utilisateurs ont réalisé les bonnes connexions entre les différents éléments
 +
*une application de ping-pong individuel
 +
*une application météo, affichant le temps des 5 prochains jours sur Rennes
 +
*une application exploitant les données de trafic de la Rocade de Rennes
 +
*une application "pokou", étendue à un jeu Pierre-Feuille-Ciseaux entre deux DebrouilloKits
 +
 
 +
Le passage d'une application à une autre est simple : on positionne le potentiomètre sur un n° d'application, et on appuie simultanément sur les deux boutons pendant plus de 3 secondes.               
 +
 
 +
Le coût de chaque kit (Box+Light+Servo) est inférieur à 10 €. En fonction des ateliers, on pourra proposer de réaliser un nouveau kit de bout en bout (électronique, découpage laser des boites, impression 3D des boutons, utilisation des applications existantes), ou utilisation de kits existants et réalisation de nouvelles applications. On peut également envisager la réalisation d'éléments complémentaires (à base de capteurs par exemple). A vous de jouer ! 
 +
 
 +
<br />
 
}}
 
}}
 
{{Materials
 
{{Materials
 
|ItemList={{ItemList
 
|ItemList={{ItemList
|Item=Bouton poussoir
+
|Item=Servomoteur
 
}}{{ItemList
 
}}{{ItemList
|Item=BME280
+
|Item=Ruban de Led - WS2812B
 
}}{{ItemList
 
}}{{ItemList
|Item=Capteur BME 680 de qualité de l'air (température, humidité, pression, gaz)
+
|Item=D1 mini
}}{{ItemList}}{{ItemList
 
|Item=Capteur d'humidité-Température DHT22
 
 
}}{{ItemList
 
}}{{ItemList
|Item=Capteur de température et d'humidité DHT11
+
|Item=Potentiomètre
 
}}{{ItemList
 
}}{{ItemList
|Item=Capteur de particules SDS011
+
|Item=Bouton poussoir
 
}}{{ItemList
 
}}{{ItemList
|Item=Capteur de température infrarouge
+
|Item=Découpeuse laser
 
}}{{ItemList
 
}}{{ItemList
|Item=Capteur infrarouge
+
|Item=Imprimante 3D
}}{{ItemList
+
}}
|Item=NFC RFID Controller Shield pour Arduino
+
|Prerequisites={{Prerequisites
}}{{ItemList
+
|Prerequisites=Installer l'environnement Arduino sur votre système
|Item=RFID-RC522
+
}}{{Prerequisites
}}{{ItemList
+
|Prerequisites=Premiers pas avec Arduino
|Item=Interrupteur à bascule
+
}}{{Prerequisites
}}{{ItemList
+
|Prerequisites=Utiliser le D1 mini avec Arduino
|Item=Capteur de pression
+
}}
}}{{ItemList}}{{ItemList
+
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks
|Item=Capteur de température
+
|ExternalAttachmentsLinks=https://cloud.debrouillonet.org/s/Sk7K3rCMaqPNYdH
}}{{ItemList
+
}}
|Item=Capteur de distance à ultrasons HC-SR04
+
}}
}}{{ItemList
+
{{Tuto Step
|Item=Capteur de CO2 SENSEAIR S8
+
|Step_Title=Récupération et usage des fichiers
}}{{ItemList
+
|Step_Content=L'ensemble des informations utiles à la fabrication de ce kit, se trouve dans un dossier compressé '''Debrouillokit-V01.zip''', disponible dans le lien indiqué dans la rubrique "fichiers" ci-avant. Bon, allez, je le remets également ici : [https://cloud.debrouillonet.org/s/Sk7K3rCMaqPNYdH DebrouilloKit-V01.zip].
|Item=Capteur Mi Flora
+
 
}}{{ItemList
+
 
|Item=Microphone MAX9814
+
Ce fichier compressé contient les répertoires suivants :
 +
 
 +
 
 +
{| class="wikitable"
 +
!Dossier
 +
!Utilisation
 +
|-
 +
|A - Circuit Imprimé (projet Kicad)
 +
|Fichiers Kicad de définition du circuit imprimé. Le fichier '''DK_PCB.zip''' évoqué à l'étape 2 se trouve dans le répertoire JLCPCB.
 +
|-
 +
|B - Découpe Laser (boites)
 +
|Fichiers au format svg, pour la découpe laser des boitiers, à utiliser à l'étape 3.
 +
|-
 +
|C - Impression 3D (boutons)
 +
|Fichiers Blender et STL pour l'impression en 3D des boutons et de la molette du potentiomètre, à utiliser à l'étape 4.
 +
|-
 +
|D - Applications (code Arduino)
 +
|Contient le répertoire '''DebrouilloBox''', qui lui-même contient 8 modules de programmation Arduino. Voir étape 8 pour plus de détails.
 +
|-
 +
|E - Fiches Applicatives
 +
|Fiches à imprimer (et éventuellement modifier) pour les poser sur les boitiers du kit, en fonction de l'application que l'on souhaite utiliser.
 +
|}
 +
<br />
 +
}}
 +
{{Tuto Step
 +
|Step_Title=Boitier de commande : partie électronique
 +
|Step_Content=L'électronique du boitier de commande est basé sur un Wemos D1 Mini, auquel on ajoute deux boutons, un potentiomètre, une led multi-couleurs et quelques connecteurs. Afin de faciliter - et fiabiliser - le montage, nous avons conçu un circuit intégré (*) qui accueillera tous ces composants. (Cf. figure 1).
 +
 
 +
#Positionnez le jeu de borniers '''au verso''' du circuit intégré, les trous vers l'extérieur  (Cf. Figure 2), et soudez-les (au recto, donc). ''Les modèles de borniers utilisés se clipsent les uns aux autres pour composer un bornier de la longueur voulue, ici 9 connexions.''
 +
#Positionnez les deux boutons, et les supports du D1 mini '''au recto''' du circuit imprimé (Cf. figure 3), et soudez-les (au verso).
 +
#Soudez le potentiomètre (Cf. figure 4), en prévoyant 5 cm de fils souples. En regardant le potentiomètre sur le dessus (côté bouton), avec ses connexions vers soi, on doit connecter '''GND''' à la '''connexion de gauche , A0''' à la '''connexion centrale''', et '''3,3V''' à la '''connexion de droite'''.
 +
#Soudez un élément du ruban de leds (Cf. figure 5) conformément aux indications du circuit imprimé. Prévoir là aussi 5 cm de fil souple.
 +
#Soudez les petits connecteurs au D1 mini, et placez le sur les supports soudés - avec l'entrée USB située côté extérieur (Cf. figure 6).
 +
 
 +
 
 +
''(*) Si ce circuit imprimé n'est pas disponible sur place, demandez à d'autres antennes Petits Debrouillards s'ils n'en n'ont pas en trop; et sinon, vous pouvez en recommander sur le site '''JLPCB.com''' en y téléchargeant le fichier '''DK_PCB.zip''' disponible dans la section "Fichiers" ci-dessus.''
 +
|Step_Picture_00=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img101.jpg
 +
|Step_Picture_00_annotation={"version":"3.5.0","objects":[{"type":"image","version":"3.5.0","originX":"left","originY":"top","left":0,"top":0,"width":800,"height":600,"fill":"rgb(0,0,0)","stroke":null,"strokeWidth":0,"strokeDashArray":null,"strokeLineCap":"butt","strokeDashOffset":0,"strokeLineJoin":"miter","strokeMiterLimit":4,"scaleX":0.75,"scaleY":0.75,"angle":0,"flipX":false,"flipY":false,"opacity":1,"shadow":null,"visible":true,"clipTo":null,"backgroundColor":"","fillRule":"nonzero","paintFirst":"fill","globalCompositeOperation":"source-over","transformMatrix":null,"skewX":0,"skewY":0,"crossOrigin":"","cropX":0,"cropY":0,"src":"https://www.wikidebrouillard.org/images/d/d4/Le_DebrouilloKit_-_Multipliez_les_exp_riences_DK_Img101.jpg","filters":[]}],"height":450,"width":600}
 +
|Step_Picture_01=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img102.jpg
 +
|Step_Picture_02=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img103.jpg
 +
|Step_Picture_03=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img104.jpg
 +
|Step_Picture_04=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img105.jpg
 +
|Step_Picture_05=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img106.jpg
 +
}}
 +
{{Tuto Step
 +
|Step_Title=Découpe et montage de base des boitiers
 +
|Step_Content=Les boitiers sont réalisés en bois, par découpe laser. Les découpes de chaque boitier sont définies dans un ou deux fichiers "svg",  disponibles dans la section "Fichiers" ci-dessus. Il faut prendre du bois d''''épaisseur 3 mm'''. Lors du transfert du fichier svg vers le logiciel de la découpeuse laser, il faudra spécifier :<br />
 +
 
 +
*couleur rouge --> découpe laser,
 +
*couleur noire --> gravure.
 +
 
 +
Le montage des trois boitiers se fait de la même façon. <u>A cette étape 2 ne monter ensemble que le fond, les côtés des boites, et les cales intérieures.</u> '''Quelques point d'attention cependant''' (voir également photos à gauche) :
 +
 
 +
*Boitier de commande : l'encoche (qui accueillera les borniers de connexion)  dans le fond du boitier, doit être mise en correspondance avec le côté gravé ("USB", "- + L ..."), dont les inscriptions doivent bien sûr être à l'extérieur
 +
*Boitiers DebrouilloLight et DebrouilloServo : ils comportent une encoche sur le côté, et un trou dans la base, qui servent à faire passer les fils. Il faut mettre le trou du côté de l'encoche. Il faut également coller à l'intérieur de ces boitiers les cales qui empêcheront leurs façades de s'enfoncer.
 +
*Boitier DebrouilloLight : l'intérieur du boitier doit faire 10mm de profondeur, tandis que le fond du boitier fera 6mm de profondeur.
 +
 
 +
Il est impératif de mettre de la bonne colle entre les éléments, car on pourra avoir à forcer un peu lors de la finalisation des boitiers (en particulier le boitier de commande).
 +
 
 +
 
 +
''Les boites de base ont été créés sur le site [https://www.festi.info/boxes.py/?language=fr https://www.festi.info/boxes.py/?language=fr,] puis adaptées à notre besoin.''
 +
|Step_Picture_00=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img201.jpg
 +
|Step_Picture_01=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img202.jpg
 +
|Step_Picture_02=Le_DebrouilloKit_-_Multipliez_les_exp_riences_DK_Img203.jpg
 +
}}
 +
{{Tuto Step
 +
|Step_Title=Finalisation du boitier de commande
 +
|Step_Content=<u>Montage de la structure intérieure</u> :
 +
 
 +
*Sélectionnez les pièces affichées en figure 1.A
 +
*Insérez les deux petites pièces dans le support inférieur (1.B), puis placez le support supérieur (1.C)
 +
*Insérez le tout dans l'une des cales intérieures (1.D), puis placez la seconde cale intérieure (2.E)
 +
*Insérez et vissez le potentiomètre, en tenant compte de la petite encoche (2.F)
 +
 
 +
<u>Finalisation du montage</u> :
 +
 
 +
*Placez la cale inférieure sous le circuit imprimé (2.G)
 +
*Insérez le circuit avec sa cale dans le boitier, assurez-vous que les borniers soient bien en place, avec leurs connexions en face des trous ""- + L ...", puis insérez la structure intérieure (2.H)
 +
*Collez la led sous la façade du boitier (3.I). Attention, contrairement à la photo, assurez-vous que la colle soit à plus de 3mm du bord - afin d'assurer un bon positionnement de la façade dans le boitier
 +
*Insérez la façade dans la boitier (4.J)
 +
 
 +
<u>Réalisation des boutons</u> (dernière photo) :
 +
 
 +
*Ceux-ci ont été réalisés en impression 3D, à partir du fichier '''DK_3D.stl''' disponible dans la section "Fichiers" ci-dessus. Si vous souhaitez améliorer les boutons, le fichier Blender '''DK_3D.blend''' est également disponible.
 +
|Step_Picture_00=Le_DebrouilloKit_-_Multipliez_les_exp_riences_DK_Img301.jpg
 +
|Step_Picture_01=Le_DebrouilloKit_-_Multipliez_les_exp_riences_DK_Img302.jpg
 +
|Step_Picture_02=Le_DebrouilloKit_-_Multipliez_les_exp_riences_DK_Img303.jpg
 +
|Step_Picture_03=Le_DebrouilloKit_-_Multipliez_les_exp_riences_DK_Img304.jpg
 +
|Step_Picture_04=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img305.jpg
 +
}}
 +
{{Tuto Step
 +
|Step_Title=Finalisation de la DebrouilloLight
 +
|Step_Content=<u>1/ Montage du dérouleur</u> (photo 1 à gauche)<br />
 +
 
 +
*Le dérouleur est constitué des deux rectangles arrondis, le plus petit étant le plus proche de la face arrière du boitier.
 +
*Nous avons utilisé des petites vis à bois, de longueur 10mm .
 +
 
 +
 
 +
<u>2/ Soudure du ruban de leds</u> (photo 2 à gauche)
 +
 
 +
*Le ruban de leds est de type '''Adafruit NeoPixel''' (60 leds / mètre). Couper ce ruban de façon à garder 12 leds.
 +
*Prendre un ensemble de trois fils, idéalement rouge, noir, et autre couleur bien différenciée), d'une longueur de 40 à 60cm. souder le fil rouge sur le 5V, le fil noir sur le GND, et l'autre couleur sur le DIn.
 +
 
 +
 
 +
<u>3/ Mise en place du ruban de leds</u> (photos 3 et 4 à gauche)<br />
 +
 
 +
*Mettre les leds sur le côté opposé à la face gravée de la façade. La première led (la plus proche des soudures des fils) doit se mettre dans le trou numéroté "1" sur la face opposée.
 +
*Pour pouvoir faire tenir 12 leds dans un boitier pas trop long, les trous de la face avant ont un écartement inférieur à l'écartement réel des leds. Ceci oblige à mettre le ruban en accordéon. Au fur et à mesure de l'installation des leds, mettre un petit bout de scotch fort, puis finir en mettant du scotch tout du long.
 +
*faire passer les fils dans le trou de la face arrière du boitier, et les enrouler autour du dérouleur en attendant une utilisation du DebrouilloLight.
 +
 
 +
Pour terminer (photo 5), insérer la façade dans le boitier. Si elle ne tient pas toute seule, on peut mettre des bouts de scotch double face - de faible épaisseur - sur la tranche des deux cales intérieures.
 +
|Step_Picture_00=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img401.jpg
 +
|Step_Picture_01=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img402.png
 +
|Step_Picture_02=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img403.jpg
 +
|Step_Picture_03=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img404.jpg
 +
|Step_Picture_04=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img405.jpg
 
}}
 
}}
 +
{{Tuto Step
 +
|Step_Title=Finalisation du DebrouilloServo
 +
|Step_Content=<u>1/ Montage du dérouleur</u> (photo 1 à gauche)<br />
 +
 +
*Montage similaire à celui de la DebrouilloLight, avec les deux pièces circulaires.
 +
 +
<u>2/ Montage du servomoteur</u> (photos 2 et 3 à gauche)<br />
 +
 +
*Apposer les deux pièces supportant le servomoteur l'une contre l'autre
 +
*Insérer le servomoteur et le visser (la longueur des vis fournies avec les servo moteur devraient permettre de coller ensemble les deux pièces en bois)
 +
*Connecter ou souder 40 à 60 cm de fils (idéalement rouge, noir, et autre couleur bien différenciée), aux fils sortant du servomoteur.
 +
*Faire passer ces fils dans le trou situé à la base du boitier, et les enrouler autour du dérouleur en attendant une utilisation du DebrouilloServo.
 +
 +
Pour terminer (photo 4), insérez la façade dans le boitier (comme précédemment, un petit bout de scotch double face peut aider à la maintenir).
 +
|Step_Picture_00=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DBK_Servo_Ph2.png
 +
|Step_Picture_01=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DBK_Servo_Ph3.png
 +
|Step_Picture_02=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DBK_Servo_Ph4.png
 +
|Step_Picture_03=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img504.jpg
 
}}
 
}}
 
{{Tuto Step
 
{{Tuto Step
|Step_Title=Mais au fait, c'est quoi un capteur ?
+
|Step_Title=Réalisation des fiches applicatives
|Step_Content=Il existe deux catégories de capteurs :
+
|Step_Content=Des fiches sont associées à chaque application, et destinées à être placées sur les faces de la DebrouilloBox, du DebrouilloServo et du DebrouilloLight. A titre d'exemple, photo 1 : fiches de l'application "Météo", et photo 2 : "Rocade de Rennes". Dans le cadre d'un atelier ou d'un hackathon, les fiches peuvent être dessinées à la main ou sur un logiciel de dessin, puis imprimées sur du papier  épais.  Si on veut des fiches plus pérennes, voici comment on peut procéder :
 +
 
  
* Les capteurs Analogiques
+
<u>Cas 1 : pour réaliser les fiches actuelles</u> :
* Les capteurs Numériques
 
  
Les capteurs Analogiques :
+
#Imprimer le fichier '''DK_Fiches.pdf'''  (Cf. photo 3) au format A4 ; plastifier la feuille, puis couper les bords à environ 2mm (côté extérieur) du centre des croix bleues (Cf. photo 4)
 +
#Placer et fixer un carton de grand format dans la découpeuse laser ; charger le fichier '''DK_Fiches.svg''' (Cf. photo 5), et configurez la gravure du calque "couleur bleue" en faible puissance de gravure,  suffisante pour que les croix soient visibles sur le carton). La couleur rouge doit être ignorée (ie, pas de gravure).
 +
#Positionner et fixer la feuille plastifiée sur le carton, afin de faire correspondre les guides bleus avec le carton ; relancer la gravure du même fichier '''DK_Fiches.svg''', mais cette fois-ci avec l'utilisation du calque associé à la couleur rouge.
  
Ils renvoient du courant à l'Arduino.
 
  
Ils sont reliés aux broches Analogiques de la carte qui sont capables de transformer le courant en information (un signal numérique).
+
<u>Cas 2 : pour réaliser de nouvelles fiches</u> :
  
 +
#Ouvrir le fichier '''DK_Fiches.xcf''' (avec le logiciel libre GIMP); supprimer tous les calques sauf les deux du bas.
 +
#Définir de nouveaux calques, en respectant les limites de chaque fiche, définies par le calque DK_Fiches.svg
 +
#Sauvegardez vos modifications ; exportez le résultat dans un fichier pdf, et repartez à l'étape 1 du cas n° 1.<br />
  
Les capteurs Numériques :
+
''Notes :''
  
Il renvoient un 1 ou un 0 à l'Arduino
+
*''un fichier DK_Fiches.jpg est également disponible pour imprimer les fiches sur du papier photo (mode "A4 sans marges").''
 +
*''Le jeu de fiches a été mis à jour, afin d'ajouter une fiche "DebrouilloLed" pour le jeu Pierre/Ciseaux/Feuille. Les photos à gauche montrent le jeu de fiches initial.''<big><br /></big>
 +
|Step_Picture_00=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img605.jpg
 +
|Step_Picture_01=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img603.jpg
 +
|Step_Picture_02=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img601.jpg
 +
|Step_Picture_03=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img604.jpg
 +
|Step_Picture_04=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img602.jpg
 +
}}
 +
{{Tuto Step
 +
|Step_Title=Téléchargement des applications
 +
|Step_Content=Nous supposons ici que la programmation d'un D1 mini et l’utilisation de l'environnement de développement Arduino n'a plus de secrets pour vous, Cf. "Expériences pré-requises" en début de cette page :-).
 +
 
 +
 
 +
Les modules de base (DebrouilloBox.ino et DebrouilloNet.ino), et toutes les applications déjà développées sont disponibles dans le répertoire DebrouilloBox (photo n° 1)
 +
 
 +
 
 +
Dans  l'environnement de développement Arduino, chargez le module principal (DebrouilloBox.ino). Assurez-vous que que le gestionnaire de carte "Lolin D1 Mini"  est prise en compte (photo n°2). Branchez la Débrouillobox à l'ordinateur (câble USB) et vérifiez que  le port est visible (toujours photo n° 2).
 +
 
 +
Téléverser ensuite les modules (photo n°3).
  
 
<br />
 
<br />
 +
|Step_Picture_00=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img801.jpg
 +
|Step_Picture_01=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img803.jpg
 +
|Step_Picture_02=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img804.jpg
 
}}
 
}}
 
{{Tuto Step
 
{{Tuto Step
|Step_Title=Comment utiliser un bouton poussoir ?
+
|Step_Title=Branchement des éléments
|Step_Content=Un bouton poussoir est un composant qui ouvre (le courant ne passe plus) ou ferme (le courant passe) un circuit électrique.
+
|Step_Content=Sous forme de mallette pédagogique, les éléments ne seront pas connectés. La connexion fera partie du travail réalisé par le public.
 +
 
 +
<br />
 +
 
 +
*Branchez la DebrouilloLight à la première série de trois connecteurs (la plus à gauche lorsqu'on  regarde la face gravée). <u>Tenir compte de codes de couleur adoptés lors de la fabrication de la DebrouilloLight</u> à l'étape 4. Dans notre cas (photo 1), nous n'avions plus de fil noir, qui a été remplacé par du fil bleu.
 +
 
 +
<br />
 +
 
 +
*Faites de même pour le branchement du DebrouilloServo sur les trois connecteurs centraux.
 +
 
 +
<br />
  
 +
*Sélectionnez  l'application n°1  (positionnez le potentiomètre sur le "1", puis appuyez simultanément sur les deux boutons pendant plus de trois secondes).
  
{| class="wikitable" cellspacing="0" border="0"
+
<br />
| height="17" bgcolor="#999999" align="left" |
+
 
| valign="middle" bgcolor="#999999" align="center" |
+
*Placez la fiche "Vérification Câblage" sur la DébrouilloBox,
| bgcolor="#999999" align="center" |Bouton poussoir
 
|-
 
| rowspan="2" valign="middle" height="49" bgcolor="#999999" align="center" |Avant le Setup
 
| valign="middle" bgcolor="#999999" align="center" |Importation de la bibliothèque
 
| valign="middle" align="left" |
 
|-
 
| valign="middle" bgcolor="#999999" align="center" |Création de l’objet
 
| valign="middle" align="left" |
 
|-
 
| valign="middle" height="17" bgcolor="#999999" align="center" |Dans le Setup
 
| valign="middle" bgcolor="#999999" align="center" |Démarrage de l’objet
 
| valign="middle" align="left" |pinMode(num_broche,INPUT_PULLUP) ;
 
|-
 
| valign="middle" height="41" bgcolor="#999999" align="center" |Dans le Loop
 
| valign="middle" bgcolor="#999999" align="center" |Utilisation
 
| valign="middle" align="left" |int val_bouton = digitalRead(num_broche);<br />
 
|}<br /><syntaxhighlight lang="arduino" line="1">
 
////////////////////////
 
//  *Code Minimal*  //
 
//    -Le Bouton-    //
 
////////////////////////
 
/*Les programmes "Code Minimal" des petits débrouillards sont conçu pour
 
permettre la prise en main rapide d'un composant électronique.
 
A retrouver sur https://www.wikidebrouillard.org
 
  
-Le Bouton-
+
<br />
  
Matériel :
+
*Jouez avec les boutons et le potentiomètre comme indiqué sur la fiche (photo n° 2).
- un D1 mini
+
|Step_Picture_00=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img701.jpg
- un bouton
+
|Step_Picture_01=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img702.gif
 +
}}
 +
{{Tuto Step
 +
|Step_Title=Connexion Wi-Fi
 +
|Step_Content=Les deux premières applications n'ont pas besoin du Wi-Fi, au démarrage la led de la DebrouilloBox doit directement passer au vert. 
  
le bouton branché à la broche D3 du D1 mini
 
car la broche D3 possède une résistance de pullup interne
 
Une résistance de pullup c'est lorsque la broche est branchée a une résistance reliée au niveau haut de la carte(HIGH)
 
dans le D1 mini il y a donc une résistance de 10Kohm qui relie la broche D3 au +3,3V
 
D3---^/\/v---+3V3
 
 
  ___
 
/ ___ \
 
|_|  | |
 
    /_/
 
    _  ___  _
 
    |_| |___|_| |_
 
        ___|_  _|
 
        |___| |_|
 
Les petits Débrouillards - décembre 2020 - CC-By-Sa http://creativecommons.org/licenses/by-nc-sa/3.0/
 
*/
 
  
// Déclaration des variables constantes
+
Les autres applications vont chercher à se connecter (clignotement de la led en bleu). Nous avons ensuite deux possibilités :
const int brocheBouton = D3; // Broche où est connectée le bouton
 
const int brocheLed =  D4;  // Broche D4, où la led interne au wemos est connectée
 
  
// Boucle d'initialisation
+
*La led passe au vertce qui signifie que la DebrouilloBox a réussi à se connecter sur un Wi-Fi qui était déjà connu.
void setup() {
 
  pinMode(brocheLed, OUTPUT); // Initialisation de la broche de la led en sortie
 
  
  pinMode(brocheBouton, INPUT_PULLUP); // Initialisation de la broche du bouton en entrée et activation du pull-up interne
+
<br />
}
 
  
//Boucle principale
+
*La Led passe en rouge, ce qui signifie que la maquette n'a pas trouvé de réseau connu.  Dans ce cas, elle s'est elle-même positionnée comme un point d'accès Wi-Fi, sur lequel il faudra d’abord se connecter (voir photo n° 1) :
void loop() {
+
*#Avec un téléphone ou ordinateur, connectez vous au point d'accès "DebrouilloBox_nnnn''"''. Il n'y a pas de mot de passe. Il y aura peut-être un message indiquant qu'Internet n'est pas disponible, c'est normal, ne pas en tenir compte.
// Lecture de l'état du bouton et stockage dans la variable etatBouton
+
*#Sur votre navigateur préféré, tapez "192.168.4.1". Vous aurez alors l’interface du Wi-Fi Manager. Cliquez sur "Configure WiFi", vous arrivez sur le choix du point d'accès.
// Déclaration de variable d'état locale (dite locale car déclarée dans la boucle "loop").
+
*#Choisissez alors votre point d'accès Wi-Fi préféré avec son mot de passe, et cliquez sur Save.
  bool etatBouton = digitalRead(brocheBouton); //// Variable permettant de récupérer l'état du bouton
 
  
  // Si le bouton est appuyé, on éteins la led
+
Si tout se passe bien, la led repasse alors au vert.
  if (etatBouton == HIGH) {
+
|Step_Picture_00=Le_DebrouilloKit_-_Multipliez_les_exp_riences_DK_Img802.jpg
    // extinction de la led
 
    digitalWrite(brocheLed, HIGH);
 
  } else {
 
    // sinon allumage de la led
 
    digitalWrite(brocheLed, LOW);
 
  }
 
}
 
</syntaxhighlight><br />
 
|Step_Picture_00=Item-Bouton_poussoir_Boutonpoussoir2_bb.jpg
 
|Step_Picture_01=Item-Bouton_poussoir_boutonpoussoir.jpg
 
 
}}
 
}}
 
{{Tuto Step
 
{{Tuto Step
|Step_Title=Utiliser le capteur BME 280 (pression, humidité et température)
+
|Step_Title=Comment développer de nouvelles applications ?
|Step_Content===Bibliothèque : ==
+
|Step_Content=Une nouvelle application (n° 123 par exemple) devra être définie dans un nouveau module '''Module_123_MonAppli.ino'''. Au sein de ce module, on devra trouver au moins une fonction '''M123_Event,''' lui permettant de réagir à cinq types d’événements :                                                                                                                                               
Pour utiliser facilement ce capteur, nous vous conseillons d'utiliser la bibliothèque Grove BME280 (présente dans le gestionnaire de bibliothèques arduino)
 
  
plus d'infos pour [https://www.wikidebrouillard.org/w/Importer_des_biblioth%C3%A8ques_dans_l'interface_Arduino Importer des bibliothèques dans l'interface Arduino]{{#annotatedImageLight:Fichier:Item-BME280 Capture decran du 2020-12-11 14-37-37.png|0=828px|hash=|jsondata=|mediaClass=Image|type=frameless|align=center|src=https://www.wikidebrouillard.org/images/9/94/Item-BME280_Capture_decran_du_2020-12-11_14-37-37.png|href=./Fichier:Item-BME280 Capture decran du 2020-12-11 14-37-37.png|resource=./Fichier:Item-BME280 Capture decran du 2020-12-11 14-37-37.png|caption=|size=828px}}La bibliothèque est disponible ici : https://github.com/Seeed-Studio/Grove_BME280
+
*'''GL_EVENT_SETUP''' : appelé une seule fois, à l'initialisation de l'application. C'est là où votre nouvelle application va initialiser ses propres données, demander l'utilisation si Wifi si elle le souhaite, etc...
==Câblage : ==
+
*'''GL_EVENT_POT''', lorsque la valeur du potentiomètre a changé
{{#annotatedImageLight:Fichier:Item-BME280 Capture decran du 2020-12-11 14-42-46.png|0=400px|hash=|jsondata=|mediaClass=Image|type=frameless|alt=Item-BME280 Capture decran du 2020-12-11 14-42-46.png|align=center|src=https://www.wikidebrouillard.org/images/3/33/Item-BME280_Capture_decran_du_2020-12-11_14-42-46.png|href=./Fichier:Item-BME280 Capture decran du 2020-12-11 14-42-46.png|resource=./Fichier:Item-BME280 Capture decran du 2020-12-11 14-42-46.png|caption=|size=400px}}
+
*'''GL_EVENT_LEFT''', lorsque l'état du bouton gauche a changé
 +
*'''GL_EVENT_RIGHT''', lorsque l'état du bouton droit a changé
 +
*'''GL_EVENT_LOOP''', appelé régulièrement pour "réactiver" votre application
  
 +
Le kit met à disposition un certain nombre de fonctions de base (utilisation du WiFi, interrogation d'un serveur, utilisation de la DebrouilloLight et du DebrouilloServo, ...) utilisables par votre nouvelle application.
  
==Le code minimal : ==
+
 
{| class="wikitable" cellspacing="0" border="0"
+
Pour plus de détails, voir les explications fournies dans le module '''Module_999_Exemple.ino'''. qui servira de base à votre propre module.
| height="17" bgcolor="#999999" align="left" |
+
|Step_Picture_00=Le_DebrouilloKit_-_Multipliez_les_exp_riences___DK_Img901.jpg
| valign="middle" bgcolor="#999999" align="center" |
 
| bgcolor="#999999" align="center" |BME280
 
|-
 
| rowspan="2" valign="middle" height="49" bgcolor="#999999" align="center" |Avant le Setup
 
| valign="middle" bgcolor="#999999" align="center" |Importation de la bibliothèque
 
| valign="middle" align="left" |#include "Seeed_BME280.h"
 
<nowiki>#</nowiki>include <Wire.h>
 
|-
 
| valign="middle" bgcolor="#999999" align="center" |Création de l’objet
 
| valign="middle" align="left" |BME280 bme280; // je crée l'objet "bme280" (qui est un BME280)
 
|-
 
| valign="middle" height="17" bgcolor="#999999" align="center" |Dans le Setup
 
| valign="middle" bgcolor="#999999" align="center" |Démarrage de l’objet
 
| valign="middle" align="left" |bme280.init(); // ou bme280.init(0x76); ou bme280.init(0x77);
 
|-
 
| valign="middle" height="41" bgcolor="#999999" align="center" |Dans le Loop
 
| valign="middle" bgcolor="#999999" align="center" |Utilisation
 
| valign="middle" align="left" |bme280.getTemperature()
 
|}
 
==Autres fonctionnalités==
 
{| class="wikitable"
 
|+
 
! colspan="2" |Fonction
 
|-
 
|bme280.getPressure()
 
|Récupère la pression en pascal
 
|-
 
|bme280.getHumidity()
 
|Récupère l'humidité en %
 
|}<br />
 
==Exemple : ==
 
<syntaxhighlight lang="arduino" line="1" start="1">
 
#include "Seeed_BMP280.h" // import de la bibliothèque BMP280
 
#include <Wire.h> // Import de la bibliothèque I2C
 
BMP280 bmp280; // création de l'objet
 
void setup()
 
{
 
Serial.begin(9600); //initialisation de la liaison série
 
bmp280.init(); //initialisation du capteur
 
}
 
void loop()
 
 
float temp = bmp280.getTemperature(); //récupération de la température
 
Serial.print("Température : "); // affichage de la température dans le terminal série
 
Serial.println(temp);
 
}
 
</syntaxhighlight><br />
 
|Step_Picture_00=Item-BME280_Bmp280.jpg
 
|Step_Picture_01=Item-BME280_Capture_decran_du_2020-12-11_14-42-46.png
 
 
}}
 
}}
 
{{Tuto Step
 
{{Tuto Step
|Step_Title=Utiliser le microphone MAX9814
+
|Step_Title=Comment développer de nouveaux boitiers ?
|Step_Content===Le code minimal : ==
+
|Step_Content=Comme on a pu le voir, il reste une entrée/sortie disponible sur le boitier de commande. Elle est utilisable pour activer un autre élément (2ème servo moteur par exemple). On pourrait également envisager des données en entrée, par exemple fournies par un capteur (température, CO2, ...).
{| class="wikitable" cellspacing="0" border="0"
 
| height="17" bgcolor="#999999" align="left" |
 
| valign="middle" bgcolor="#999999" align="center" |
 
| bgcolor="#999999" align="center" |MAX9814
 
|-
 
| rowspan="2" valign="middle" height="49" bgcolor="#999999" align="center" |Avant le Setup
 
| valign="middle" bgcolor="#999999" align="center" |pas de bibliothèque
 
| valign="middle" align="left" |
 
|-
 
| valign="middle" bgcolor="#999999" align="center" |Création d'une variable
 
| valign="middle" align="left" |int valeurCapteur; // On prépare une variable pour stocker les valeurs du capteur
 
|-
 
| valign="middle" height="17" bgcolor="#999999" align="center" |Dans le Setup
 
| valign="middle" bgcolor="#999999" align="center" |Démarrage de l’objet
 
| valign="middle" align="left" |Serial.begin(9600); // on démarre la communication série
 
|-
 
| valign="middle" height="41" bgcolor="#999999" align="center" |Dans le Loop
 
| valign="middle" bgcolor="#999999" align="center" |Utilisation
 
| valign="middle" align="left" |valeurCapteur = analogRead(A0); // On lit la valuer mesurée par le capteur sur la broche A0
 
Serial.println(valeurCapteur);  // On publie sur le moniteur série la valeur récupérée
 
|}<br />
 
==Exemple : ==
 
<syntaxhighlight lang="arduino" line="1">
 
/////////////////
 
// Microphone  //
 
//  MAX9814    //
 
/////////////////
 
  
/*
 
* Un programme pour tester le fonctionnement du microphone MAX9814
 
* Il utilise le traceur série pour visualiser les signaux récupérés
 
* pour utiliser le traceur série : cliquez sur Outils/Traceur série
 
  ___
 
/ ___ \
 
|_|  | |
 
    /_/
 
    _  ___  _
 
    |_| |___|_| |_
 
        ___|_  _|
 
        |___| |_|
 
Les petits Débrouillards - Novembre 2022 - CC-By-Sa http://creativecommons.org/licenses/by-nc-sa/3.0/
 
*/
 
  
int valeurCapteur; // On prépare une variable pour stocker les valeurs du capteur
+
Idéalement le nouvel élément devra être intégré dans le même type de boitier en bois que ceux qui existent (la documentation devra alors fournir les fichiers svg). Les dimensions du nouveau boitier devront si possible être compatibles avec ceux existants (Cf. animation en tout début de page), par exemple un capteur pourrait facilement être intégré dans une boite de même taille qu'un DebrouilloServo.
  
void setup() {
 
  // on démarre la communication série
 
  Serial.begin(9600);
 
}
 
  
void loop() {
+
Il faudrait également fournir au moins un exemple d'application du nouveau boitier, et les fiches cartonnées associées aux boitiers utilisés par cette nouvelle application.
  // On lit la valeur mesurée par le capteur sur la broche A0
 
  valeurCapteur = analogRead(A0);
 
  // On publie sur le traceur série la valeur récupérée
 
  Serial.println(valeurCapteur);
 
  }
 
</syntaxhighlight>
 
|Step_Picture_00=Item-microphone_MAX9814_max9814.jpg
 
|Step_Picture_01=Item-microphone_MAX9814.png
 
 
}}
 
}}
 
{{Notes}}
 
{{Notes}}
 
{{Tuto Status
 
{{Tuto Status
|Complete=Published
+
|Complete=Draft
 
}}
 
}}

Version du 9 novembre 2022 à 17:25

Auteur avatarPhilippe Blusseau | Dernière modification 21/11/2022 par Philby

Le DebrouilloKit - Multipliez les exp riences DK Anim1.gif
Le "DebrouilloKit" est composé d'un boitier de commande, d'un bloc servomoteur, et d'un bloc de leds. Sous sa forme "mallette pédagogique", leurs dimensions ont été calculées pour faciliter le transport d'un ensemble de 6 kits, comme on peut le voir dans l'animation à gauche. Le boitier de commande comporte 1 potentiomètre, deux boutons, et trois entrées/sorties numériques (via des borniers à vis), ce qui est largement suffisant pour de nombreuses applications. Les faces avant des éléments accueillent des fiches imprimées, à placer en fonction de l'application choisie.
Licence : Attribution (CC-BY)

Introduction

L'idée de ce DebrouilloKit a germé suite au hackathon "Rudi", organisé par Les Petits Débrouillards Grand Ouest et L'Edulab de l'Université de Rennes 2 en décembre 2021, dans le cadre d'un appel à projet eRudi porté par le Réseau Canopé. L'objet du hackathon était de développer des POCL (Petits Objets Connectés Ludiques), sur base Arduino ou Wemos D1 mini, mettant à profit des données libres ("Open Data"). L'appel à projet indiquait également que Les Petits Débrouillards devaient ensuite concevoir et développer une mallette pédagogique sur la base des ces POCL.


Nous avons alors conçu un DebrouilloKit générique, utilisable en dehors de ce besoin particulier. Il est aujourd'hui composé de trois boitiers :

  • la DebrouilloBox (boitier de commande), basée sur un Wemos D1 mini, un potentiomètre et deux boutons ;
  • la DebrouilloLight, composée d'une bande de 12 leds multicolores ;
  • le DebrouilloServo, composé d'un mini servomoteur


A titre d'exemple, nous proposons 5 applications (les trois dernières étant issues du hackathon Rudi) :

  • une application de test, permettant de s'assurer que les utilisateurs ont réalisé les bonnes connexions entre les différents éléments
  • une application de ping-pong individuel
  • une application météo, affichant le temps des 5 prochains jours sur Rennes
  • une application exploitant les données de trafic de la Rocade de Rennes
  • une application "pokou", étendue à un jeu Pierre-Feuille-Ciseaux entre deux DebrouilloKits

Le passage d'une application à une autre est simple : on positionne le potentiomètre sur un n° d'application, et on appuie simultanément sur les deux boutons pendant plus de 3 secondes.

Le coût de chaque kit (Box+Light+Servo) est inférieur à 10 €. En fonction des ateliers, on pourra proposer de réaliser un nouveau kit de bout en bout (électronique, découpage laser des boites, impression 3D des boutons, utilisation des applications existantes), ou utilisation de kits existants et réalisation de nouvelles applications. On peut également envisager la réalisation d'éléments complémentaires (à base de capteurs par exemple). A vous de jouer !


  • Expériences pré-requises
  • Fichiers

Étape 1 - Récupération et usage des fichiers

L'ensemble des informations utiles à la fabrication de ce kit, se trouve dans un dossier compressé Debrouillokit-V01.zip, disponible dans le lien indiqué dans la rubrique "fichiers" ci-avant. Bon, allez, je le remets également ici : DebrouilloKit-V01.zip.


Ce fichier compressé contient les répertoires suivants :


Dossier Utilisation
A - Circuit Imprimé (projet Kicad) Fichiers Kicad de définition du circuit imprimé. Le fichier DK_PCB.zip évoqué à l'étape 2 se trouve dans le répertoire JLCPCB.
B - Découpe Laser (boites) Fichiers au format svg, pour la découpe laser des boitiers, à utiliser à l'étape 3.
C - Impression 3D (boutons) Fichiers Blender et STL pour l'impression en 3D des boutons et de la molette du potentiomètre, à utiliser à l'étape 4.
D - Applications (code Arduino) Contient le répertoire DebrouilloBox, qui lui-même contient 8 modules de programmation Arduino. Voir étape 8 pour plus de détails.
E - Fiches Applicatives Fiches à imprimer (et éventuellement modifier) pour les poser sur les boitiers du kit, en fonction de l'application que l'on souhaite utiliser.


Étape 2 - Boitier de commande : partie électronique

L'électronique du boitier de commande est basé sur un Wemos D1 Mini, auquel on ajoute deux boutons, un potentiomètre, une led multi-couleurs et quelques connecteurs. Afin de faciliter - et fiabiliser - le montage, nous avons conçu un circuit intégré (*) qui accueillera tous ces composants. (Cf. figure 1).

  1. Positionnez le jeu de borniers au verso du circuit intégré, les trous vers l'extérieur (Cf. Figure 2), et soudez-les (au recto, donc). Les modèles de borniers utilisés se clipsent les uns aux autres pour composer un bornier de la longueur voulue, ici 9 connexions.
  2. Positionnez les deux boutons, et les supports du D1 mini au recto du circuit imprimé (Cf. figure 3), et soudez-les (au verso).
  3. Soudez le potentiomètre (Cf. figure 4), en prévoyant 5 cm de fils souples. En regardant le potentiomètre sur le dessus (côté bouton), avec ses connexions vers soi, on doit connecter GND à la connexion de gauche , A0 à la connexion centrale, et 3,3V à la connexion de droite.
  4. Soudez un élément du ruban de leds (Cf. figure 5) conformément aux indications du circuit imprimé. Prévoir là aussi 5 cm de fil souple.
  5. Soudez les petits connecteurs au D1 mini, et placez le sur les supports soudés - avec l'entrée USB située côté extérieur (Cf. figure 6).


(*) Si ce circuit imprimé n'est pas disponible sur place, demandez à d'autres antennes Petits Debrouillards s'ils n'en n'ont pas en trop; et sinon, vous pouvez en recommander sur le site JLPCB.com en y téléchargeant le fichier DK_PCB.zip disponible dans la section "Fichiers" ci-dessus.

Étape 3 - Découpe et montage de base des boitiers

Les boitiers sont réalisés en bois, par découpe laser. Les découpes de chaque boitier sont définies dans un ou deux fichiers "svg", disponibles dans la section "Fichiers" ci-dessus. Il faut prendre du bois d'épaisseur 3 mm. Lors du transfert du fichier svg vers le logiciel de la découpeuse laser, il faudra spécifier :

  • couleur rouge --> découpe laser,
  • couleur noire --> gravure.

Le montage des trois boitiers se fait de la même façon. A cette étape 2 ne monter ensemble que le fond, les côtés des boites, et les cales intérieures. Quelques point d'attention cependant (voir également photos à gauche) :

  • Boitier de commande : l'encoche (qui accueillera les borniers de connexion) dans le fond du boitier, doit être mise en correspondance avec le côté gravé ("USB", "- + L ..."), dont les inscriptions doivent bien sûr être à l'extérieur
  • Boitiers DebrouilloLight et DebrouilloServo : ils comportent une encoche sur le côté, et un trou dans la base, qui servent à faire passer les fils. Il faut mettre le trou du côté de l'encoche. Il faut également coller à l'intérieur de ces boitiers les cales qui empêcheront leurs façades de s'enfoncer.
  • Boitier DebrouilloLight : l'intérieur du boitier doit faire 10mm de profondeur, tandis que le fond du boitier fera 6mm de profondeur.

Il est impératif de mettre de la bonne colle entre les éléments, car on pourra avoir à forcer un peu lors de la finalisation des boitiers (en particulier le boitier de commande).


Les boites de base ont été créés sur le site https://www.festi.info/boxes.py/?language=fr, puis adaptées à notre besoin.


Étape 4 - Finalisation du boitier de commande

Montage de la structure intérieure :

  • Sélectionnez les pièces affichées en figure 1.A
  • Insérez les deux petites pièces dans le support inférieur (1.B), puis placez le support supérieur (1.C)
  • Insérez le tout dans l'une des cales intérieures (1.D), puis placez la seconde cale intérieure (2.E)
  • Insérez et vissez le potentiomètre, en tenant compte de la petite encoche (2.F)

Finalisation du montage :

  • Placez la cale inférieure sous le circuit imprimé (2.G)
  • Insérez le circuit avec sa cale dans le boitier, assurez-vous que les borniers soient bien en place, avec leurs connexions en face des trous ""- + L ...", puis insérez la structure intérieure (2.H)
  • Collez la led sous la façade du boitier (3.I). Attention, contrairement à la photo, assurez-vous que la colle soit à plus de 3mm du bord - afin d'assurer un bon positionnement de la façade dans le boitier
  • Insérez la façade dans la boitier (4.J)

Réalisation des boutons (dernière photo) :

  • Ceux-ci ont été réalisés en impression 3D, à partir du fichier DK_3D.stl disponible dans la section "Fichiers" ci-dessus. Si vous souhaitez améliorer les boutons, le fichier Blender DK_3D.blend est également disponible.

Étape 5 - Finalisation de la DebrouilloLight

1/ Montage du dérouleur (photo 1 à gauche)

  • Le dérouleur est constitué des deux rectangles arrondis, le plus petit étant le plus proche de la face arrière du boitier.
  • Nous avons utilisé des petites vis à bois, de longueur 10mm .


2/ Soudure du ruban de leds (photo 2 à gauche)

  • Le ruban de leds est de type Adafruit NeoPixel (60 leds / mètre). Couper ce ruban de façon à garder 12 leds.
  • Prendre un ensemble de trois fils, idéalement rouge, noir, et autre couleur bien différenciée), d'une longueur de 40 à 60cm. souder le fil rouge sur le 5V, le fil noir sur le GND, et l'autre couleur sur le DIn.


3/ Mise en place du ruban de leds (photos 3 et 4 à gauche)

  • Mettre les leds sur le côté opposé à la face gravée de la façade. La première led (la plus proche des soudures des fils) doit se mettre dans le trou numéroté "1" sur la face opposée.
  • Pour pouvoir faire tenir 12 leds dans un boitier pas trop long, les trous de la face avant ont un écartement inférieur à l'écartement réel des leds. Ceci oblige à mettre le ruban en accordéon. Au fur et à mesure de l'installation des leds, mettre un petit bout de scotch fort, puis finir en mettant du scotch tout du long.
  • faire passer les fils dans le trou de la face arrière du boitier, et les enrouler autour du dérouleur en attendant une utilisation du DebrouilloLight.

Pour terminer (photo 5), insérer la façade dans le boitier. Si elle ne tient pas toute seule, on peut mettre des bouts de scotch double face - de faible épaisseur - sur la tranche des deux cales intérieures.

Étape 6 - Finalisation du DebrouilloServo

1/ Montage du dérouleur (photo 1 à gauche)

  • Montage similaire à celui de la DebrouilloLight, avec les deux pièces circulaires.

2/ Montage du servomoteur (photos 2 et 3 à gauche)

  • Apposer les deux pièces supportant le servomoteur l'une contre l'autre
  • Insérer le servomoteur et le visser (la longueur des vis fournies avec les servo moteur devraient permettre de coller ensemble les deux pièces en bois)
  • Connecter ou souder 40 à 60 cm de fils (idéalement rouge, noir, et autre couleur bien différenciée), aux fils sortant du servomoteur.
  • Faire passer ces fils dans le trou situé à la base du boitier, et les enrouler autour du dérouleur en attendant une utilisation du DebrouilloServo.

Pour terminer (photo 4), insérez la façade dans le boitier (comme précédemment, un petit bout de scotch double face peut aider à la maintenir).


Étape 7 - Réalisation des fiches applicatives

Des fiches sont associées à chaque application, et destinées à être placées sur les faces de la DebrouilloBox, du DebrouilloServo et du DebrouilloLight. A titre d'exemple, photo 1 : fiches de l'application "Météo", et photo 2 : "Rocade de Rennes". Dans le cadre d'un atelier ou d'un hackathon, les fiches peuvent être dessinées à la main ou sur un logiciel de dessin, puis imprimées sur du papier épais. Si on veut des fiches plus pérennes, voici comment on peut procéder :


Cas 1 : pour réaliser les fiches actuelles :

  1. Imprimer le fichier DK_Fiches.pdf (Cf. photo 3) au format A4 ; plastifier la feuille, puis couper les bords à environ 2mm (côté extérieur) du centre des croix bleues (Cf. photo 4)
  2. Placer et fixer un carton de grand format dans la découpeuse laser ; charger le fichier DK_Fiches.svg (Cf. photo 5), et configurez la gravure du calque "couleur bleue" en faible puissance de gravure, suffisante pour que les croix soient visibles sur le carton). La couleur rouge doit être ignorée (ie, pas de gravure).
  3. Positionner et fixer la feuille plastifiée sur le carton, afin de faire correspondre les guides bleus avec le carton ; relancer la gravure du même fichier DK_Fiches.svg, mais cette fois-ci avec l'utilisation du calque associé à la couleur rouge.


Cas 2 : pour réaliser de nouvelles fiches :

  1. Ouvrir le fichier DK_Fiches.xcf (avec le logiciel libre GIMP); supprimer tous les calques sauf les deux du bas.
  2. Définir de nouveaux calques, en respectant les limites de chaque fiche, définies par le calque DK_Fiches.svg
  3. Sauvegardez vos modifications ; exportez le résultat dans un fichier pdf, et repartez à l'étape 1 du cas n° 1.

Notes :

  • un fichier DK_Fiches.jpg est également disponible pour imprimer les fiches sur du papier photo (mode "A4 sans marges").
  • Le jeu de fiches a été mis à jour, afin d'ajouter une fiche "DebrouilloLed" pour le jeu Pierre/Ciseaux/Feuille. Les photos à gauche montrent le jeu de fiches initial.

Étape 8 - Téléchargement des applications

Nous supposons ici que la programmation d'un D1 mini et l’utilisation de l'environnement de développement Arduino n'a plus de secrets pour vous, Cf. "Expériences pré-requises" en début de cette page :-).


Les modules de base (DebrouilloBox.ino et DebrouilloNet.ino), et toutes les applications déjà développées sont disponibles dans le répertoire DebrouilloBox (photo n° 1)


Dans l'environnement de développement Arduino, chargez le module principal (DebrouilloBox.ino). Assurez-vous que que le gestionnaire de carte "Lolin D1 Mini" est prise en compte (photo n°2). Branchez la Débrouillobox à l'ordinateur (câble USB) et vérifiez que le port est visible (toujours photo n° 2).

Téléverser ensuite les modules (photo n°3).



Étape 9 - Branchement des éléments

Sous forme de mallette pédagogique, les éléments ne seront pas connectés. La connexion fera partie du travail réalisé par le public.


  • Branchez la DebrouilloLight à la première série de trois connecteurs (la plus à gauche lorsqu'on regarde la face gravée). Tenir compte de codes de couleur adoptés lors de la fabrication de la DebrouilloLight à l'étape 4. Dans notre cas (photo 1), nous n'avions plus de fil noir, qui a été remplacé par du fil bleu.


  • Faites de même pour le branchement du DebrouilloServo sur les trois connecteurs centraux.


  • Sélectionnez l'application n°1 (positionnez le potentiomètre sur le "1", puis appuyez simultanément sur les deux boutons pendant plus de trois secondes).


  • Placez la fiche "Vérification Câblage" sur la DébrouilloBox,


  • Jouez avec les boutons et le potentiomètre comme indiqué sur la fiche (photo n° 2).



Étape 10 - Connexion Wi-Fi

Les deux premières applications n'ont pas besoin du Wi-Fi, au démarrage la led de la DebrouilloBox doit directement passer au vert.


Les autres applications vont chercher à se connecter (clignotement de la led en bleu). Nous avons ensuite deux possibilités :

  • La led passe au vert, ce qui signifie que la DebrouilloBox a réussi à se connecter sur un Wi-Fi qui était déjà connu.


  • La Led passe en rouge, ce qui signifie que la maquette n'a pas trouvé de réseau connu. Dans ce cas, elle s'est elle-même positionnée comme un point d'accès Wi-Fi, sur lequel il faudra d’abord se connecter (voir photo n° 1) :
    1. Avec un téléphone ou ordinateur, connectez vous au point d'accès "DebrouilloBox_nnnn". Il n'y a pas de mot de passe. Il y aura peut-être un message indiquant qu'Internet n'est pas disponible, c'est normal, ne pas en tenir compte.
    2. Sur votre navigateur préféré, tapez "192.168.4.1". Vous aurez alors l’interface du Wi-Fi Manager. Cliquez sur "Configure WiFi", vous arrivez sur le choix du point d'accès.
    3. Choisissez alors votre point d'accès Wi-Fi préféré avec son mot de passe, et cliquez sur Save.

Si tout se passe bien, la led repasse alors au vert.




Étape 11 - Comment développer de nouvelles applications ?

Une nouvelle application (n° 123 par exemple) devra être définie dans un nouveau module Module_123_MonAppli.ino. Au sein de ce module, on devra trouver au moins une fonction M123_Event, lui permettant de réagir à cinq types d’événements :

  • GL_EVENT_SETUP : appelé une seule fois, à l'initialisation de l'application. C'est là où votre nouvelle application va initialiser ses propres données, demander l'utilisation si Wifi si elle le souhaite, etc...
  • GL_EVENT_POT, lorsque la valeur du potentiomètre a changé
  • GL_EVENT_LEFT, lorsque l'état du bouton gauche a changé
  • GL_EVENT_RIGHT, lorsque l'état du bouton droit a changé
  • GL_EVENT_LOOP, appelé régulièrement pour "réactiver" votre application

Le kit met à disposition un certain nombre de fonctions de base (utilisation du WiFi, interrogation d'un serveur, utilisation de la DebrouilloLight et du DebrouilloServo, ...) utilisables par votre nouvelle application.


Pour plus de détails, voir les explications fournies dans le module Module_999_Exemple.ino. qui servira de base à votre propre module.




Étape 12 - Comment développer de nouveaux boitiers ?

Comme on a pu le voir, il reste une entrée/sortie disponible sur le boitier de commande. Elle est utilisable pour activer un autre élément (2ème servo moteur par exemple). On pourrait également envisager des données en entrée, par exemple fournies par un capteur (température, CO2, ...).


Idéalement le nouvel élément devra être intégré dans le même type de boitier en bois que ceux qui existent (la documentation devra alors fournir les fichiers svg). Les dimensions du nouveau boitier devront si possible être compatibles avec ceux existants (Cf. animation en tout début de page), par exemple un capteur pourrait facilement être intégré dans une boite de même taille qu'un DebrouilloServo.


Il faudrait également fournir au moins un exemple d'application du nouveau boitier, et les fiches cartonnées associées aux boitiers utilisés par cette nouvelle application.


Dernière modification 21/11/2022 par user:Philby.

Commentaires

Draft