Baton de lightpainting avec Arduino : Différence entre versions
(→Sources et ressources utiles) |
|||
(22 révisions intermédiaires par 4 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
{{ProjetENIB}} | {{ProjetENIB}} | ||
− | == | + | == Bâton de lightpainting Arduino == |
− | '' | + | Ce projet consiste à réaliser un bâton de LED pour faire du ''Lightpainting'' (dessiner des formes avec de la lumières sur une photo). L'intérêt du bâton est que l'on peut faire des images plus complexes qu'avec une simple lampe de poche. |
− | + | <CENTER> [[Fichier:exemplelightpainting.jpg|500px]] </CENTER> | |
− | |||
== Auteurs == | == Auteurs == | ||
Ont participé à la rédaction de cette fiche : | Ont participé à la rédaction de cette fiche : | ||
− | * [[Utilisateur:Ronsegseg|Ronsegseg]] | + | * [[Utilisateur:Ronsegseg|Ronsegseg]] (Ronan Segalen) |
− | * [[Utilisateur:Océcloclo|Océcloclo]] | + | * [[Utilisateur:Océcloclo|Océcloclo]] (Océane Cloarec) |
− | * [[Utilisateur:Maxschlschl|Maxschlschl]] | + | * [[Utilisateur:Maxschlschl|Maxschlschl]] (Maxime Schlosser) |
− | * [[Utilisateur: | + | * [[Utilisateur:J6zanatt|J6zanatt]] (Jérôme Zanatta) |
− | + | ||
[[Catégorie:GroupeB]] | [[Catégorie:GroupeB]] | ||
− | |||
− | |||
== Outils et matériaux == | == Outils et matériaux == | ||
==== Liste du Matériel ==== | ==== Liste du Matériel ==== | ||
− | * Arduino Uno | + | * Arduino Uno |
− | * Adafruit Data Logging Shield ( | + | * Adafruit Data Logging Shield (ou un shield pour lire les cartes SD / micro SD) |
+ | * SD card (or microSD with adapter), FAT-formatted | ||
+ | <CENTER> [[Fichier:arduno+shield.jpg|500px]] </CENTER> | ||
+ | |||
* NeoPixel strip, sticks or pixels (up to 170 pixels maximum — a 1 meter 144 LED strip works great!) | * NeoPixel strip, sticks or pixels (up to 170 pixels maximum — a 1 meter 144 LED strip works great!) | ||
− | * UBEC DC-to-DC converter | + | <CENTER> [[Fichier:pixelstrip.jpg|500px]] </CENTER> |
+ | |||
+ | * UBEC DC-to-DC converter (12V DC -> 5V DC) | ||
* 8xAA battery holder and AA cells (NiMH rechargeable recommended) | * 8xAA battery holder and AA cells (NiMH rechargeable recommended) | ||
− | |||
* Camera with a long-exposure mode, plus a tripod | * Camera with a long-exposure mode, plus a tripod | ||
* Imaging editing software that can output 24-bit BMP files (e.g. Photoshop, GIMP, Pixelmator) | * Imaging editing software that can output 24-bit BMP files (e.g. Photoshop, GIMP, Pixelmator) | ||
* Wire: 20 to 22 gauge or thereabouts, stranded | * Wire: 20 to 22 gauge or thereabouts, stranded | ||
* Soldering iron and related paraphernalia | * Soldering iron and related paraphernalia | ||
− | * | + | |
− | + | * Un support (nous avons utilisé un manche à balai en métal creux, pour faire passer les câbles) | |
− | + | * Deux boites : | |
− | * | + | - une contenant les piles et le converter, à mettre dans la poche |
− | + | - une contenant l'arduino, le shield, la carte SD et le bouton | |
+ | <CENTER> [[Fichier:boitearduino.jpg|500px]] </CENTER> | ||
+ | |||
+ | * un tube de PVC pour fabriquer une boite de rangement | ||
+ | |||
==== Outils ==== | ==== Outils ==== | ||
− | |||
* soudure | * soudure | ||
+ | * pinces à dénuder | ||
+ | * découpeuse laser | ||
+ | |||
+ | ... | ||
+ | |||
+ | == Réaliser le projet == | ||
− | ''( | + | === Alimenter l'Arduino === |
+ | En théorie, c'est très simple, il suffit de souder la sortie de la banque de pile sur l'UBEC (le convertisseur 12V DC vers 5V DC) et d'alimenter l'Arduino sur les prises d'alimentation. | ||
− | + | <CENTER> [[Fichier:UBEC.png|200px]] </CENTER> | |
− | ' | + | Le convertisseur ne nous ayant pas été fourni, nous avons bricolé une alimentation à partir d'un transformateur secteur 230V AC vers 5V DC de disque dur. |
+ | Nous avons aussi essayé avec une transformateur allume cigare vers USB mais cela ne fonctionne pas car il ne débite pas assez de courant. | ||
− | ... | + | === Lire les informations de la carte SD === |
+ | Tout d'abord, il faut formater la carte SD en FAT16 ou FAT32 à l'aide d'un ordinateur pour que celle-ci soit lisible par l'arduino. | ||
+ | Ensuite il suffit de mettre le shield sur l'arduino et d'insérer la carte SD. Arduino fournit un code de test avec la bibliothèque SD, c'est une bonne manière de vérifier que la carte est lue par l'arduino. | ||
+ | Nous avons dû toutefois rétrograder la version de la bibliothèque SD car la dernière version ne fonctionnait pas. | ||
− | == | + | ===Connecter les LEDs et l'arduino=== |
− | ' | + | Pour cette étape, on peut soit souder le bandeau de LEDs directement sur le shield ou juste les insérer dans les ports du shield et repiquer la sortie du transformateur, l'arduino ne débitant pas assez de courant. Il faut procéder de la manière suivante : |
− | + | <CENTER> [[Fichier:cablage.jpg]] </CENTER> | |
− | |||
− | |||
− | + | Pour vérifier la bonne connexion du bandeau, Adafruit fourni des codes de test avec ses bibliothèques qui sont bien commodes pour s'assurer que tout fonctionne bien. | |
− | |||
+ | ===Le code=== | ||
+ | Cela consiste à charger une image présente sur la carte SD d'une hauteur de 144 pixels (le nombre de LEDs sur notre bandeau) et de faire défiler pixel par pixel selon un certain pas de temps. | ||
+ | Cela semble simple mais ce code implique de maîtriser le C++, or aucun des membres de notre groupe n'en avait jamais fait. Nous n'avons donc pas pu réaliser le code. | ||
== Comment ça marche ? == | == Comment ça marche ? == | ||
=== Observations === | === Observations === | ||
− | ' | + | Nous n'avons pas réussi à faire fonctionner le montage sur pile et converter, seulement sur secteur. |
− | + | <CENTER> [[Fichier:cablagefonctionnement.jpg|500px]] </CENTER> | |
− | |||
− | |||
− | + | Voici un zoom sur le montage : | |
− | + | <CENTER> [[Fichier:zoomcablage.jpg|500px]] </CENTER> | |
− | |||
− | |||
+ | === Explications === | ||
+ | Un pixel sur le bandeau est composé de trois petites lampes très rapprochées, l'une rouge, la seconde verte et la troisième bleue. Pour afficher l'image avec le bâton, il faut donc convertir chaque pixel du fichier image en 3 nombres entre 0 et 255, qui seront transformés en une tension électrique par l'Arduino. Cette tension permettra d'allumer plus ou moins chacune des petites lampes, le tout affichera la bonne couleur. ([https://fr.wikipedia.org/wiki/Synth%C3%A8se_additive Synthèse additive]) | ||
== Et dans la vie de tous les jours ? == | == Et dans la vie de tous les jours ? == | ||
− | + | Ceci ne sert pas tout les jours, mais ravira les photographes. | |
− | |||
− | |||
== Vous aimerez aussi == | == Vous aimerez aussi == | ||
− | + | Tutoriel utilisé pour mettre en place ce projet : | |
https://cdn-learn.adafruit.com/downloads/pdf/neopixel-painter.pdf | https://cdn-learn.adafruit.com/downloads/pdf/neopixel-painter.pdf | ||
Ligne 90 : | Ligne 101 : | ||
== Sources et ressources utiles == | == Sources et ressources utiles == | ||
''Liens vers les ressources pédagogiques + quelques mots de description si besoin'' | ''Liens vers les ressources pédagogiques + quelques mots de description si besoin'' | ||
+ | |||
+ | |||
+ | |||
+ | [[Catégorie:Arduino]] |
Version actuelle datée du 15 janvier 2024 à 15:52
Cette page est une fiche écrite dans le cadre de l'Inter Semestre ENIB 2017
Le contenu de cette fiche est en cours de rédaction, elle va s'étoffer pendant tout le mois de janvier !
Sommaire
Bâton de lightpainting Arduino
Ce projet consiste à réaliser un bâton de LED pour faire du Lightpainting (dessiner des formes avec de la lumières sur une photo). L'intérêt du bâton est que l'on peut faire des images plus complexes qu'avec une simple lampe de poche.
Auteurs
Ont participé à la rédaction de cette fiche :
- Ronsegseg (Ronan Segalen)
- Océcloclo (Océane Cloarec)
- Maxschlschl (Maxime Schlosser)
- J6zanatt (Jérôme Zanatta)
Outils et matériaux
Liste du Matériel
- Arduino Uno
- Adafruit Data Logging Shield (ou un shield pour lire les cartes SD / micro SD)
- SD card (or microSD with adapter), FAT-formatted
- NeoPixel strip, sticks or pixels (up to 170 pixels maximum — a 1 meter 144 LED strip works great!)
- UBEC DC-to-DC converter (12V DC -> 5V DC)
- 8xAA battery holder and AA cells (NiMH rechargeable recommended)
- Camera with a long-exposure mode, plus a tripod
- Imaging editing software that can output 24-bit BMP files (e.g. Photoshop, GIMP, Pixelmator)
- Wire: 20 to 22 gauge or thereabouts, stranded
- Soldering iron and related paraphernalia
- Un support (nous avons utilisé un manche à balai en métal creux, pour faire passer les câbles)
- Deux boites :
- une contenant les piles et le converter, à mettre dans la poche - une contenant l'arduino, le shield, la carte SD et le bouton
- un tube de PVC pour fabriquer une boite de rangement
Outils
- soudure
- pinces à dénuder
- découpeuse laser
...
Réaliser le projet
Alimenter l'Arduino
En théorie, c'est très simple, il suffit de souder la sortie de la banque de pile sur l'UBEC (le convertisseur 12V DC vers 5V DC) et d'alimenter l'Arduino sur les prises d'alimentation.
Le convertisseur ne nous ayant pas été fourni, nous avons bricolé une alimentation à partir d'un transformateur secteur 230V AC vers 5V DC de disque dur. Nous avons aussi essayé avec une transformateur allume cigare vers USB mais cela ne fonctionne pas car il ne débite pas assez de courant.
Lire les informations de la carte SD
Tout d'abord, il faut formater la carte SD en FAT16 ou FAT32 à l'aide d'un ordinateur pour que celle-ci soit lisible par l'arduino. Ensuite il suffit de mettre le shield sur l'arduino et d'insérer la carte SD. Arduino fournit un code de test avec la bibliothèque SD, c'est une bonne manière de vérifier que la carte est lue par l'arduino. Nous avons dû toutefois rétrograder la version de la bibliothèque SD car la dernière version ne fonctionnait pas.
Connecter les LEDs et l'arduino
Pour cette étape, on peut soit souder le bandeau de LEDs directement sur le shield ou juste les insérer dans les ports du shield et repiquer la sortie du transformateur, l'arduino ne débitant pas assez de courant. Il faut procéder de la manière suivante :
Pour vérifier la bonne connexion du bandeau, Adafruit fourni des codes de test avec ses bibliothèques qui sont bien commodes pour s'assurer que tout fonctionne bien.
Le code
Cela consiste à charger une image présente sur la carte SD d'une hauteur de 144 pixels (le nombre de LEDs sur notre bandeau) et de faire défiler pixel par pixel selon un certain pas de temps. Cela semble simple mais ce code implique de maîtriser le C++, or aucun des membres de notre groupe n'en avait jamais fait. Nous n'avons donc pas pu réaliser le code.
Comment ça marche ?
Observations
Nous n'avons pas réussi à faire fonctionner le montage sur pile et converter, seulement sur secteur.
Voici un zoom sur le montage :
Explications
Un pixel sur le bandeau est composé de trois petites lampes très rapprochées, l'une rouge, la seconde verte et la troisième bleue. Pour afficher l'image avec le bâton, il faut donc convertir chaque pixel du fichier image en 3 nombres entre 0 et 255, qui seront transformés en une tension électrique par l'Arduino. Cette tension permettra d'allumer plus ou moins chacune des petites lampes, le tout affichera la bonne couleur. (Synthèse additive)
Et dans la vie de tous les jours ?
Ceci ne sert pas tout les jours, mais ravira les photographes.
Vous aimerez aussi
Tutoriel utilisé pour mettre en place ce projet : https://cdn-learn.adafruit.com/downloads/pdf/neopixel-painter.pdf
Sources et ressources utiles
Liens vers les ressources pédagogiques + quelques mots de description si besoin