====== 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); }