Baton de lightpainting avec Arduino : Différence entre versions

De Les Fabriques du Ponant
Aller à : navigation, rechercher
(Sources et ressources utiles)
 
(24 révisions intermédiaires par 4 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
 
{{ProjetENIB}}
 
{{ProjetENIB}}
  
== Titre du projet de fabrication numérique ==
+
== Bâton de lightpainting Arduino ==
  
''« Chapeau » du projet de fabrication numérique :
+
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>
Expliciter le titre, donner envie de lire le reste de la fiche (question pour susciter l'intérêt, lien avec le quotidien, une histoire, un teaser...).''
 
  
 
== Auteurs ==
 
== Auteurs ==
 
Ont participé à la rédaction de cette fiche :
 
Ont participé à la rédaction de cette fiche :
* [[Utilisateur:Ronan|Ronsegseg]]
+
* [[Utilisateur:Ronsegseg|Ronsegseg]] (Ronan Segalen)
* [[Utilisateur:Océane|Océcloclo]]
+
* [[Utilisateur:Océcloclo|Océcloclo]] (Océane Cloarec)
* [[Utilisateur:Maxime|Maxschlschl]]
+
* [[Utilisateur:Maxschlschl|Maxschlschl]] (Maxime Schlosser)
* [[Utilisateur:Ronan|Ronsegseg]]
+
* [[Utilisateur:J6zanatt|J6zanatt]] (Jérôme Zanatta)
[[Catégorie:GroupeA]]
+
 
 
[[Catégorie:GroupeB]]
 
[[Catégorie:GroupeB]]
[[Catégorie:GroupeC]]
 
[[Catégorie:GroupeD]]
 
  
 
== Outils et matériaux ==
 
== Outils et matériaux ==
 
==== Liste du Matériel ====
 
==== Liste du Matériel ====
* Arduino Uno microcontroller (NOT Mega or Leonardo, see below)
+
* Arduino Uno  
* Adafruit Data Logging Shield (or other shield/breakout with SD or microSD card slot)
+
* 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)
* SD card (or microSD with adapter), FAT-formatted
 
 
* 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
* Optional: JST connectors, power blocks, etc.
+
 
* Support frame. 3/4" square pine molding works just dandy, or you can get all fancy using aluminum extrusion if you like.
+
* Un support (nous avons utilisé un manche à balai en métal creux, pour faire passer les câbles)
* 1 tasseau de bois minimum of 42 inches long
+
* Deux boites :
* 1 tasseau de bois 12 à 18 inches long
+
    - une contenant les piles et le converter, à mettre dans la poche
* une petite boite
+
    - 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 ====
  
* matériel travail bois (scie, perceuse, visseuse)
 
 
* soudure
 
* soudure
 +
* pinces à dénuder
 +
* découpeuse laser
 +
 +
...
 +
 +
== Réaliser le projet ==
  
''(photo) texte''
+
=== 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.
  
''(photo) texte''
+
<CENTER> [[Fichier:UBEC.png|200px]] </CENTER>
  
''(photo) texte''
+
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.
  
== Réaliser le projet ==
+
===Connecter les LEDs et l'arduino===
''Comment faire étapes par étapes ?''
+
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 :
  
''Il faut que cela soit visuel, intégrer au texte, des photos, des images, des dessins...''
+
<CENTER> [[Fichier:cablage.jpg]] </CENTER>
  
=== Faire ceci ===
 
...
 
  
=== Faire cela ===
+
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 ===
''Texte + images/photos''
+
Nous n'avons pas réussi à faire fonctionner le montage sur pile et converter, seulement sur secteur.
  
=== Explications ===
+
<CENTER> [[Fichier:cablagefonctionnement.jpg|500px]] </CENTER>
''Etre capable de vulgariser au maximum ces connaissances de façon simple et ludique, afin de les transmettre à un plus grand nombre.  
 
''
 
  
''Texte + images/photos''
+
Voici un zoom sur le montage :
  
=== Plus d'explications ===
+
<CENTER> [[Fichier:zoomcablage.jpg|500px]] </CENTER>
''Entrer dans des explications techniques et scientifiques plus complexes, mais toujours de manière ludique.''
 
  
''Texte + images/photos''
 
  
 +
=== 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.
''Mettre en avant le lien avec le quotidien.''
 
 
 
  
 
== Vous aimerez aussi ==
 
== Vous aimerez aussi ==
Tuto utilisé pour mettre en place ce projet :
+
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 !

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.

Exemplelightpainting.jpg

Auteurs

Ont participé à la rédaction de cette fiche :

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
Erreur lors de la création de la miniature : Fichier avec des dimensions supérieures à 12,5 MP
  • NeoPixel strip, sticks or pixels (up to 170 pixels maximum — a 1 meter 144 LED strip works great!)
Erreur lors de la création de la miniature : Fichier avec des dimensions supérieures à 12,5 MP
  • 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
Boitearduino.jpg
  • 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.

UBEC.png

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 :

Cablage.jpg


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.

Erreur lors de la création de la miniature : Fichier avec des dimensions supérieures à 12,5 MP

Voici un zoom sur le montage :

Zoomcablage.jpg


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