====== Atlier LPH, Ruban LED: décembre 2019 ======
===== Introduction =====
Atelier LPH de décembre
L'objectif de cet atelier est de réaliser une ruban LED piloté par un ESP32 (Module NodeMCU ESP32).
^ Public cible | 10 jeunes |
^ Date | 7, 14 et 21 décembre |
^ Lieu | **PLMCB** |
===== Modalités =====
Atelier réservé au LPH déjà inscrit.
===== Planning et contenu =====
* Vérification de la faisabilité du projet (en compétences, en temps, en matériels si besoin et en coût matériel)
* Validation inscription et devis matériel
* Planification du projet
===== Achat matériel pour le stage =====
Voici une première liste de matériel pour le stage:
^ Intitulé ^ Quantité acheté ^ A commander/produire ^
| Module NodeMCU ESP32 | 10 (https://www.gotronic.fr/art-module-nodemcu-esp32-28407.htm) | |
| Bobine Ruban LED 5 mètres à microcontrôleur | 10 (https://www.couleurs-et-led.fr/rubans-rgb-programmables/1800-bobine-5-metres-a-microcontroleur-720-wm.html) | |
| Alimentation 220v -> 12v | 10 (https://www.gotronic.fr/art-alimentation-lrs35-12-26275.htm) | |
| Interrupteur DS12A | 10 (https://www.gotronic.fr/art-interrupteur-ds12a-4432.htm) | |
| Régulateur 3,3V 3A | 10 (https://www.gotronic.fr/art-lm1085it3-3-14311.htm) | |
| Câble/cordon microUSB | | 10 cordons à trouver |
| Câble prise électrique 220v | | 10 (prendre les vieux cordons des anciens PC fixes ?) |
| Boîtier | | 10 (à imprimer ?) |
Sur place:
^ Intitulé ^ Quantité acheté ^ A commander/produire ^
| écran pour le vidéo-projecteur |
| vidéo-projecteur |
| 2 rallonges |
| 4 multiprises |
| 10 PCs portables avec Arduino IDE pour ESP32 |
| alimentations PC |
| souris PC |
| fils de connexion |
| 3/4 fers à souder |
| 4 tapis pour fer à souder |
| 4 support fer à souder |
| étain |
| fils |
===== Liste de tâches =====
^ Tâche ^ Qui ^ Opération ^
| Faire l'état du stock| Christian et Stéphane | |
| Commande matériel | Christian et Stéphane | |
| Planification du projet | | |
| Partie électronique | Stéphane | |
| Partie programmation | Stéphane et Christian | |
| Partie boîtier | Stéphane et Christian | |
===== Présent pour animer =====
Animation de l'atelier:
* Stéphane Blanc
* Christian Jacolot
* Benjamin
===== Préparation du boîtier =====
Code OpenSCAD pour contenir l'alimentation et la carte ESP32:
{{:projets:2019:mdl_lph_stage_led_boitier.png?400|}}
// ESP 32
color("blue")
translate([80,-15,0]) {
cube([48,11.5, 26]);
}
// alim
color("black")
cube([99,82,30]);
// boitier
translate([-2.5,-17,-2.5]) {
#cube([135,100,40]);
}
Paramètres du boîtier à partir du modèle: https://www.thingiverse.com/thing:1355018/files:
// - Longueur - Length
Length = 135;
// - Largeur - Width
Width = 100;
// - Hauteur - Height
Height = 40;
// - Epaisseur - Wall thickness
Thick = 2;//[2:5]
Export des fichiers STL de chaque partie et préparation du gcode pour l'Ultimaker 3 extended:
* Face avant/arrière, partie haute: UM3E_mdl_lph_stage_led_boxcase_real.gcode (6 heures)
* Partie basse: UM3E_mdl_lph_stage_led_boxcase_real_bshell.gcode (5 heures)
===== Déroulé du projet =====
* Présentation du projet
* Validation du matériel (kit ESP32) et des logiciels installés sur le PC
* Principes de pilotage d'une LED RGB (puis deux)
* Montages: Alimentation, régulateur, ruban, interrupteur
* programmation ESP32
===== Contacts =====
^ Structure ^ Nom Prénom ^ Rôle sur le projet / poste ^
| Maison du libre | Stéphane Blanc | Logistique et animation |
| Maison du libre | Christian JACOLOT | Logistique et animation |
=== Remerciements ===
Nous remercions les bénévoles de la MDL/PLMCB.
=== Préparation des PC ===
Installation de xubuntu 18.04 (64 bits) sur les PC, iso sur clé USB.
Mise à jour et installation des logiciels/paquets nécessaires:
$ sudo apt update
$ sudo apt upgrade
$ sudo apt install git mercurial build-essential arduino-core arduino-mk gcc-avr avr-libc openjdk-8-jdk
$ sudo apt install squeak-vm squeak-plugins-scratch
$ sudo apt install nodejs npm
$ id
$ sudo usermod -a -G dialout $USER
$ more /etc/group
# télécharger arduino sur arduino.cc / linux 32 bits
$ cd Téléchargements/
$ tar xf arduino-1.8.10-linux64.tar.xz
$ cd arduino-1.8.10/
$ ./install.sh
$ cd
# démarrer arduino IDE
# menu Outils / Gérer les bibliothèques
# installer: circuit playground, unified sensor, DHT sensor library
$ sudo npm install -g --unsafe-perm node-red
$ node-red
# navigateur web sur localhost:1880
# installer via palette: node-red-node-serialport et node-red-dashboard
$ sudo apt install logisim openssh-server
$ sudo apt install gcc-avr avr-libc flashplugin-installer algobox blender python3-dev python3-setuptools python3-numpy
$ sudo apt install python3-opengl ffmpeg libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libsmpeg-dev libsdl1.2-dev libportmidi-dev libswscale-dev libavformat-dev libavcodec-dev libtiff5-dev libx11-6 libx11-dev fluid-soundfont-gm timgm6mb-soundfont xfonts-base xfonts-100dpi xfonts-75dpi xfonts-cyrillic fonts-freefont-ttf libfreetype6-dev
$ java -version
$ javac -version
$ sudo update-alternatives --config java
# choisir java 8
$ java -version
$ sudo add-apt-repository ppa:openscad/releases
$ sudo apt update
$ sudo apt install openscad
$ sudo apt install fritzing fritzing-parts gimp
=== Présentation ===
== Documents ==
Fichier de présentation
* Module NodeMCU ESP32
* ESP 32, arduino IDE, blink
* une LED RGB, connexion à l'ESP32
* deux LED RGB, programmation de l'ESP32
* ruban LED RGB, connexion et programmation del'ESP32
* Télécommande ESP32 du ruban de LED:
* Wifi (page web de pilotage)
* Bluetooth (application bluetooth)
=== Code ===
Code ESP32 pour piloter une LED:
/*
* ESP32 LED Blink Example
* Board Module NodeMCU ESP32
*
* ON Board LED GPIO 2
*/
#define LED 2
void setup() {
// Set pin mode
pinMode(LED,OUTPUT);
}
void loop() {
delay(500);
digitalWrite(LED,HIGH);
delay(500);
digitalWrite(LED,LOW);
}