Pages: [1] 2 3   Go Down
Author Topic: arduino et photo haute vitesse  (Read 5517 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 28
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,

Nouveau sur ce forum et tout nouveau en électronique, je vous demande donc par avance de bien vouloir excuser les maladresses que je ne manquerais pas de commettre. Cela dit, voici donc le projet que je souhaite mettre en oeuvre et pour lequel je sollicite vos lumières.
Je cherche á réaliser des photos haute vitesse c'est a dire irréalisable sans dispositif d' automatisation de la prise de vue. J'ai bien trainé un peu sur les forums mais les solutions en DIY sont souvent complexes ou peu accessibles aux néophytes de mon espèce. Mais il semble qu'il soit possible de réaliser assez simplement et á un prix raisonnable, un tel dispositif par le biais de l'arduino. Le but est donc de mettre  á disposition de tous un mode d'emploi clair tant hardware que software pour réaliser ce projet. Dans un premier temps, il s'agit donc de déclencher un flash photo grâce à un  faisceau infra rouge, le flash se déclenchant par le biais d'un court circuit entre le connecteur de déclenchement et la masse.
L'idée est donc la suivante: une led et un capteur infra rouge (2€ le tout) connectés á l'arduino (arduino uno dans les 25€)  par le biais d'un câble blindé (1€/mètre). La connexion led/câble étant noyé dans la colle chaude pour la rendre étanche. Ici, premières questions, est il possible de raccorder nos leds sur la carte par le biais de prises genre mini jack en vue de pouvoir changer facilement de type de capteur (micro ou laser etc.), peut on les brancher n'importe ou sur la carte et comment doit on alimenter le tout? Je sais que l arduino nécessite une alimentations, plutôt par piles pour pouvoir le transporter facilement, mais quelle puissance, combien et est il nécessaire de mettre des résistances quelque part?
Vient ensuite la partie programmation de la bête, nous y reviendront.
De l'autre coté donc, on vient brancher le câble qui ira déclencher le flash. Nouvelles questions, ou doit on brancher ce câble, est il possible de réaliser ce branchement directement ou doit on passer par le biais d'un opto-triac pour déclencher le court circuit et si oui, comment brancher le tout? Enfin, je sais qu'il est possible de timer le déclenchement par le biais du programme mais est il possible de placer un petit potard quelque part pour pouvoir affiner le réglage du délai entre la coupure du faisceau et le déclenchement du flash in situ (sans ordinateur)?
Reste á trouver un gentil pour nous écrire les quelques lignes de code qui feront turbiner tout ça!!

Merci á tous!
Logged

France
Online Online
Faraday Member
**
Karma: 39
Posts: 3626
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quelques pistes:
Une recherche sur le forum avec les mots "high speed photography" retourne pas mal d'informations
en particulier:
http://arduino.cc/forum/index.php/topic,101188.0.html
http://arduino.cc/forum/index.php/topic,55614.0.html

autrement il y a ça:
http://www.instructables.com/id/High-Speed-Photo-Arduino-HighSpeeduino-/
http://kavasmlikon.wordpress.com/2012/02/26/high-speed-photography-workshop-with-arduino/
http://www.glacialwanderer.com/hobbyrobotics/?p=11
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 16
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

autre piste : le Photoduino 3.0discuté et adapté ici  smiley-wink  où follet parle aussi d'un autre projet DIY mais il a fabriqué le Photoduino tout de même...

Bon courage.
« Last Edit: August 25, 2012, 08:40:20 am by cassiope34 » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 28
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour à tous et merci de votre aide.

Je vous fait donc un petit bilan d’étape, voici le schéma de la bestiole (oui je sais, ce n’est pas un dessin très électriquement académique dans sa représentation mais…)

Quelques questions tout de même :
Le récepteur IR peut il être actif si je le pose derrière le plexiglas du boitier ? (plexi transparent bien sur…)
L’alimentation peut elle être branchée ailleurs, sur les pins de l’arduino ? (question de positionnement dans le boitier avec la prise USB)
L’interrupteur à levier de puissance servira à agir sur le timer de l’arduino, chaque impulsion vers le haut décale le déclenchement de 1/20 seconde (a voir),  une impulsion vers le bas remet le timer à +0. Ce moyen me permet de jouer sur le timer en sachant ou j’en suis sans avoir à disposer un écran LCD dans le montage. Son branchement vous semble t’il correct ?

Allez, je me colle à la programmation…


* Shema.jpg (439.88 KB, 2452x1480 - viewed 267 times.)
Logged

France
Online Online
Faraday Member
**
Karma: 39
Posts: 3626
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
L’alimentation peut elle être branchée ailleurs, sur les pins de l’arduino ? (question de positionnement dans le boitier avec la prise USB)
Broche Vin sur l'arduino
Logged

Forum Moderator
Geneva
Offline Offline
Faraday Member
*****
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Broche Vin sur l'arduino

Celle dont l'icône est un tonneau ?  smiley-lol
Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Offline Offline
Newbie
*
Karma: 0
Posts: 16
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

le code du photoduino fait tout ça... il pourrait t'intéresser  smiley
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 28
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Que veux tu dire par la cassiope34?

De fait mon idée de timer par impulsions successives tombe à l'eau... Alors quelle solution pour retarder l'action de l'opto coupleur sans avoir recours au LCD qui complique le câblage et surtout la programmation...
Je pensais à un système genre potentiomètres multitours (genre 25 tours ce qui donne 9° pour 1/1000eme ou 40/1000eme au tour) mais je n'ai aucune idée de son mode de câblage et quand à la programmation...(et c'est assez cher en plus). Sinon pourquoi pas 2 monotours, un qui divise au 50eme de seconde et l'autre qui, redivisant ce 0.02s en 50 à son tour permet un accès relativement précis au 4/1000eme (6° par unité pour un monotour 300°)...
Après réflexion, il me semble que l'idée des potentiomètres multitours tombe à l'eau car je ne pense pas que l'arduino puisse mesurer une différence de résistance... Reste la solution des commutateurs mécanique mais je n'en trouve qu'a 12 positions alors qu'il en faudrait 50 (et autant de positions, autant de soudure...)
Bref je sèche un peu...
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 28
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hop-hop, bien content d'avoir peut être trouvé une solution ,l'encodeur à rotation infini lumineux RVB avec sortie "code Gray" COM-10982 !!! Quels poètes ces électronitiens... 24 impulsions / tour 41 tours pour une seconde avec un incrément d'1/1000eme mais divisible par 2 en réglant la babaz à 500/1000eme par défaut... Schéma dès demain...
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 16
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Que veux tu dire par la cassiope34?

Je voulais juste te montrer ce projet de photoduino dont tu peux trouver le schéma et le code, et où tu trouveras les réponses à toutes tes questions.
Je précise que je n'ai aucun intérêt dans ce projet Photoduino, mais je l'ai trouvé particulièrement bien pensé et construit.

Bon courage dans ton projet.
Logged

France
Online Online
Faraday Member
**
Karma: 39
Posts: 3626
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Hop-hop, bien content d'avoir peut être trouvé une solution ,l'encodeur à rotation infini
Le problème c'est que comme il n'y a pas de butée (rotation infinie) tu n'as aucun repère de la position et donc de fait il te faut un affichage.

Quote
sans avoir recours au LCD qui complique le câblage et surtout la programmation...
Oui et non. Si tu prends un LCD "standard" il est supporté par les librairies arduino et la programmation n'est pas très compliqué (envoyé des commandes d'effacement, et des chaines à afficher). Je peux me tromper mais je pense que tu vas rapidement avoir besoin d'un afficheur dès que ton montage va se compliquer un peu.
« Last Edit: August 30, 2012, 04:28:58 am by fdufnews » Logged

Offline Offline
Faraday Member
**
Karma: 34
Posts: 5180
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


Après réflexion, il me semble que l'idée des potentiomètres multitours tombe à l'eau car je ne pense pas que l'arduino puisse mesurer une différence de résistance... Reste la solution des commutateurs mécanique mais je n'en trouve qu'a 12 positions alors qu'il en faudrait 50 (et autant de positions, autant de soudure...)
Bref je sèche un peu...
bonjour
si si, on peut vérifier la position du curseur et donc mesurer la résistance d'un potentiomètre en utilisant une entrée analogique de l'arduino

l'echelle de mesure est de 1024 points, avec un 25 tours ça fait en gros 40 points par tour, mais d'une maniere ou d'une autre il faut lire/connaitre le positionnement
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 28
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Alors,

D'abord un bon merci à tous.
Artouste tu m'offre une information qui aurait pu m’empêcher de me creuser la tête une bonne partie de la nuit... Je garde dans un coin de ma tête mais le fameux encodeur évoqué hier à quelques qualités intéressantes à savoir le poussoir et la Led.
J'ai donc modifié mon schéma pour y coller cette bébête. Pas simple...
J'ai donc chopé les datasheet ici : https://www.sparkfun.com/products/10982? et me suis inspiré de ceci : http://bildr.org/2012/08/rotary-encoder-arduino/ 
A,C,B pour l'encodeur et 1,2,4,5 pour la LED RGB (voir le Dimensional Drawing sur le site de sparkfun)
Je n'ai cependant pas bien compris ou se plugait le poussoir, le 3? Mais ou est le Gray code alors?
Dernière questions, est il nécessaire de filtrer A et B comme indiqué sur le schéma 2 ou les pull up de l'arduino permettent il de faire cela?

Bref, si rien ne vous choque, je reste la dessus.
Le principe est donc le suivant,
- ON.
- Détection IR en fonction, état de retardement par défaut à 500/1000eme (pour une goutte par exemple, cela correspond grosso modo à une chute de 45cm mais ce réglage peut évoluer simplement en changeant la valeur dans le programme...)
- Si appui sur le poussoir, allumage de la Led (couleur rouge si 500/1000eme ou couleur du réglage précédent)
- Réglage, + ou - 1/1000eme par impulsion, 20 tours pour 500/1000eme (1/1000eme de seconde permet à la dite goutte de parcourir moins d'un mm et me parait donc suffisamment précis). Par défaut la led s'allume en bleu (bleu = 500/1000eme) elle vire au rouge si l'on diminue (rouge = 0/1000eme) et se met au vert à 1000/1000eme)
- Nouvel appuie sur le poussoir, enregistrement de la nouvelle valeur de retardement et extinction de la Led pour ne pas gêner la prise de vue.
- Détection IR en fonction.
- Coupure du faisceau et déclenchement.
- Retour à l'état détection IR en fonction avec dernière valeur de retardement et attente d'un nouveau déclenchement ou d'un appui sur le poussoir.
... ou OFF (ou - Passe un coup d'éponge y'a de l'eau partout!!)
 
Une remarque ou un conseil pour le programme? 

 


 



* Shema.jpg (472.77 KB, 2652x1216 - viewed 121 times.)

* Schema2.jpg (24.91 KB, 671x345 - viewed 83 times.)
Logged

Offline Offline
Faraday Member
**
Karma: 34
Posts: 5180
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


J'ai donc chopé les datasheet ici : https://www.sparkfun.com/products/10982? et me suis inspiré de ceci : http://bildr.org/2012/08/rotary-encoder-arduino/ 
A,C,B pour l'encodeur et 1,2,4,5 pour la LED RGB (voir le Dimensional Drawing sur le site de sparkfun)
Je n'ai cependant pas bien compris ou se plugait le poussoir, le 3? Mais ou est le Gray code alors?
Dernière questions, est il nécessaire de filtrer A et B comme indiqué sur le schéma 2 ou les pull up de l'arduino permettent il de faire cela?

bonsoir
C'est de l'encodeur en quadrature classique dephasage de 90°entre voie A/B
d'apres ce que j'ai compris pour le push button c'est la sortie C qui delivre un potentiel doublé , ça doit être possible de tester A=B en numerique , attention a prendre en compte le delta T de detente.
les pull up de l'arduino sont à priori suffisants, voir le bout de code issu du lien sparkfun


Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 28
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Merci Artouste mais moi pas tout bien compris...
Dois je séparer C et 3 pour pouvoir exploiter le signal du BP? Genre le 3 sur le pin 11 de l arduino et décaler les branchements de la led sur les pins 8, 9 et 10? Qu' entends tu par tester A=B en numérique? Vaut t il mieux les mettre sur les analogiques? Et C aussi? Et donc perdre l avantage des pull up intégrés dans les pins num. ...
Qu' appels tu delta T de détente?

 Aie aie aie que c est compliqué l électronique... Et dire que je n'ai pas commencé la prog...
« Last Edit: August 30, 2012, 04:43:58 pm by minms » Logged

Pages: [1] 2 3   Go Up
Jump to: