Câblage DSLR Hotshoe vers Arduino

8

Je veux câbler la griffe de mon reflex numérique (Nikon D5100) à ma carte Arduino afin de réagir au déclencheur de l'appareil photo.

Schéma de Nikon Hotshoe

J'ai mesuré un signal de 5 à 8 volts entre la gâchette et les cosses de terre lorsque j'appuie sur le déclencheur. Donc ma question est, si je câble la cosse de déclenchement à une entrée numérique de l'Arduino, où dois-je câbler la cosse de terre? Et question suivante, pensez-vous que je devrais craindre pour mon appareil photo avec le courant / la tension impliqués?

Je suis assez nouveau dans l'électronique, donc j'espère que ma question ne semble pas trop stupide.

Duom
la source
Êtes-vous sûr d'avoir mesuré 8 volts? Il doit s'agir de tensions TTL standard (<5 V). Voir cet article: dptnt.com/2010/04/nikon-flash-interface
JYelton
1
Et votre question ne semble pas stupide. Pour un débutant, c'est une question assez réfléchie.
Passerby
@JYelton: Merci pour l'article, je vais devoir faire plus de mesures pour confirmer que la valeur 8v semble.
Duom

Réponses:

3

Bien que l'optocoupleur suggéré soit certainement une chose sûre à essayer, vous constaterez peut-être qu'il ne fonctionne pas. Traditionnellement, les sabots SLR étaient un simple interrupteur pour déclencher le flash et tandis que les systèmes DSLR modernes n'utilisent plus les hautes tensions que certains flashs plus anciens présentés à l'appareil photo utilisent beaucoup d'un transistor pour tirer la ligne à la terre.

Toute tension présente sur la broche peut être via un pull-up de haute valeur ou peut-être une fuite de courant très faible et ne pas être en mesure de fournir l'impair de 5 mA requis pour entraîner un optocoupleur. Cela peut expliquer vos lectures quelque peu variables qui, je m'attendrais à être stables si la ligne était conduite durement.

Voici un exemple du circuit utilisé dans le système de déclenchement de caméra / flash Camera Axe qui peut être indicatif de ce que vous trouveriez dans la caméra:

Pilote de sortie Camera Axe

Je n'avais pas de D5100 disponible pour les tests, mais mesurant le Nikon D7000 d'un membre de la famille et mon Canon 5D Mark III, aucune tension n'était présente sur la griffe. Dans les deux cas, la mesure du flash lorsqu'il était détaché de l'appareil photo, mais sous tension, a donné une lecture d'environ 5 V, il est donc apparu que les deux systèmes utilisaient un pull-up dans le flash. Je suggère un circuit tel que le suivant que je viens d'essayer avec les deux:

schématique

simuler ce circuit - Schéma créé à l'aide de CircuitLab

R2 pourrait être omis si vous utilisez le pull-up interne sur la ligne d'entrée tandis que les diodes donnent juste un peu de protection supplémentaire contre les situations ESD et de surtension plutôt que de compter uniquement sur les pinces de l'AVR. Voici un exemple du signal mesuré pour une exposition de 1/10 seconde en utilisant ce circuit:

Signal mesuré par la griffe flash

PeterJ
la source
Merci pour la réponse! J'ai cependant plusieurs questions à vous poser ... - J'ai du mal à comprendre le circuit, j'ai placé des bulles sur le schéma où je ne suis pas vraiment sûr où les fils sont censés aller, pourriez-vous m'aider à comprendre cela?: Circuitlab .com / circuit / 8hnshs / ​​dslr-to-arduino - Vous faites référence au pull-up, je ne connais pas ce concept, vous voulez dire "pull up resitor"? comme dans electronics.stackexchange.com/questions/7423/…
Duom
Oui c'est pareil. Un AVR utilisé sur l'Arduino peut être programmé pour utiliser un AVR interne, mais si vous ne savez pas comment le faire pour le bien d'une résistance, l'externe fera le même travail.
PeterJ
D'accord, je vais aller avec la solution externe. Donc, si je comprends bien le circuit, lorsque le flash est déclenché, le courant passera par R1 puis D2 et R2, ce qui produira la chute de tension.
Duom
R2 ne baisse pas la tension, cela s'appelle un pull-up (vous trouverez ici des questions sur la façon dont cela fonctionne) et cela signifie que lorsque l'entrée est ouverte, la ligne d'E / S est un état connu, mais peut toujours être tiré bas par la caméra. R1 limite un peu le courant afin que D1 / D2 puisse faire face à une surtension, comme statique ou si la caméra émet une tension supérieure / inférieure à la tension AVR (on l'appelle une pince). Je pense que la confusion consiste à imaginer le sabot comme sortie de tension. Je suppose que ce que vous mesurez est un petit courant de fuite, pensez-y comme un simple interrupteur et il devrait être plus clair.
PeterJ
J'ai lu quelques explications sur le pull-up, je pense que je le comprends mieux maintenant. Pourtant, si je vois la caméra comme un interrupteur, je devrais alors lire haut sur l'arduino et bas lorsque la caméra est déclenchée, non? J'ai fait le schéma dans un simulateur et c'est ce que j'ai lu: goo.gl/ljHdN
Duom
4

Un simple optocoupleur serait la meilleure solution pour protéger les deux côtés. Le côté led serait connecté à la gâchette et à la masse de la griffe, tandis que l'autre côté est connecté à l'arduino.

entrez la description de l'image ici

La résistance du côté Arduino est une faible traction vers l'alimentation Arduino. Vous pouvez le sauter si vous activez le pullup interne à la place, auquel cas vous ne câblez pas la partie vcc / résistance.

Dans ce cas, lorsque la griffe est déclenchée, l'optocoupleur active son transistor et l'arduino enregistrerait un changement de logique élevée à logique faible.

Passant
la source
Cela semble être une bonne chose à essayer, je me demande bien si l'appareil photo finit par la force du pull-up et s'il serait suffisant pour piloter l'optocoupleur? Je ne suis pas sûr mais je connais quelqu'un avec un D5100 et je pourrais avoir une chance de le mesurer au cours du week-end.
PeterJ
Merci beaucoup pour la réponse rapide! Je n'aurais pas pensé à ça, je vais l'essayer dès que possible.
Duom
@PeterJ Je suis sûr que vous pouvez obtenir le 5ma ou plus nécessaire pour déclencher l'optocoupleur sans problème.
Passerby