Contrôleur d'objectif Arduino - Zoom / Mise au point synchronisé avec le contrôleur Wii Classic: 11 étapes (avec photos)

Contrôleur d'objectif Arduino - Zoom / Mise au point synchronisé avec le contrôleur Wii Classic: 11 étapes (avec photos)

Table des matières:

Anonim

Mon appareil photo Lumix GH2 Micro Four Thirds tourne non seulement de superbes vidéos haute définition, mais avec des adaptateurs bon marché, je peux l'utiliser avec des objectifs manuels plus anciens, bon marché et souvent de très haute qualité. Je fais beaucoup de vidéos de performance pour le studio de danse de ma fille et j'utilise un objectif zoom f3.5 Nikon 28-85mm car il offre une bonne plage de zoom et une ouverture rapide pour un objectif zoom. Le problème avec cette configuration est que je dois zoomer et faire la mise au point manuellement, et bien que j'essaie de minimiser le zoom lors de la prise de vue, il est parfois essentiel de conserver un cadrage approprié et de montrer les compétences des danseurs. J'ai réussi à apprendre à zoomer manuellement sans introduire de gigue excessive de la caméra (généralement), mais comme je fais également la mise au point manuellement, il est un peu fastidieux de régler la mise au point rapidement et en douceur après un zoom avant ou arrière. Pour surmonter cette lacune, j'ai décidé de construire un contrôleur de zoom et de mise au point pour mon appareil photo (ce que beaucoup d'autres ont fait), avec pour objectif essentiel de pouvoir maintenir automatiquement la mise au point correcte lorsque l'objectif effectue un zoom avant et arrière en douceur. Après plusieurs mois de prototypage, je suis arrivé à une excellente solution qui utilise un clone Arduino qui accepte les entrées d’un contrôleur Wii Classic et qui utilise 2 servos de loisir pour déplacer l’objectif.Le coût total du produit final est inférieur à 100 $.

La conception que j'ai finalement mise en œuvre comporte un certain nombre de fonctionnalités avancées:

- 2 manettes permettent un contrôle d'objectif à vitesse continuellement variable. Déplacer la manette droite vers l'avant et l'arrière contrôle le zoom et la mise au point synchronisés, et déplacer la manette gauche d'un côté à l'autre des commandes se concentre juste. La mise en œuvre du contrôle de la vitesse permet également de limiter le bruit du servo à des niveaux acceptables.

- Il y a 6 réglages de zoom / mise au point "goto" programmables qui peuvent être programmés à la volée à partir de la Wii Classic, et qui déplaceront le zoom et la mise au point à la position désirée en appuyant simplement sur un bouton pour la plupart des zooms, et a, b, x et y pour n’importe quelle position de zoom / mise au point).

- Les paramètres de déplacement d'objectif maximum peuvent également être programmés à la volée pour s'assurer que les servos n'essayent pas de tourner au-delà des limites des positions de zoom et de mise au point de l'objectif.

- Le D-pad permet des mouvements de zoom de degré unique (pad haut et bas) et de mise au point (pad gauche et droit) pour effectuer des réglages précis pour la mise au point / zoom critique.

Voici une démonstration du fonctionnement du zoom synchronisé sur mon GH2 avec un objectif Nikon 28 - 85 mm:

Dans cette instruction, je couvrirai les bases de la construction de votre propre version de ce contrôleur, y compris le code Arduino et les instructions pour monter les servos sur une plate-forme de caméra sur rail. Je vais vous dire comment j'ai construit mon appareil, mais comme je n'en suis pas vraiment satisfait, je ne vais pas entrer dans les étapes détaillées à ce sujet et je vous laisse le soin de déterminer votre propre solution à partir des images de mon appareil. et quelques notes sur la façon dont je l'ai fait.

C’était ma première tentative de construire quelque chose avec Arduino, bien que j’aie une certaine expérience en programmation, il n’a donc pas été trop difficile pour moi d’apprendre les bases du code Arduino. Cependant, si vous souhaitez vous attaquer à ce projet et que vous n'êtes pas encore familiarisé avec la configuration et la programmation d'un Arduino, je vous recommande de parcourir les didacticiels du site Arduino, en particulier ceux de Servos.

Provisions:

Étape 1: Mise en route: outils et matériel

Vous pouvez compléter les composants électroniques de ce projet avec juste quelques pinces à dénuder et un fer à souder. Mais pour fabriquer les bras de montage du servo, il est utile d’avoir accès à une scie à ruban et à une perceuse à colonne (bien qu’un travail minutieux avec une perceuse à main puisse éliminer le besoin de cette dernière). J'ai également utilisé une scie à table pour couper la feuille de plastique et un routeur monté sur table avec un foret de boîte à noyau de 1/2 diamètre pour découper les rainures dans le plastique afin de correspondre aux rails de mon système de rail de caméra fait maison.

Voici une liste des principales fournitures dont vous aurez besoin pour mener à bien ce projet, mais veuillez parcourir l'ensemble des instructions avant d'acheter quoi que ce soit afin que vous compreniez ce qu'il faut acheter pour répondre à vos propres besoins.

- Clone Arduino ou Arduino (j'ai utilisé un Seeeduino car il était un peu moins cher que le Arduiino et fournit les mêmes fonctionnalités).

- Contrôleur Wii Classic. J'ai acheté le mien à eBay pour environ 10 $ expédiés.

- Adaptateur Wiichuck (un petit circuit imprimé qui se branche sur votre Wii Classic afin que vous n'ayez pas à couper le câble). Je l'ai reçu de FunGizmos pour 4 $:

- 2 servos de loisirs de taille standard avec engrenages en nylon et roulements à billes. Les engrenages en nylon sont plus silencieux et les roulements à billes offrent un meilleur support pour la tige lors de la manipulation de la lentille d'un zoom plus rigide. J'ai acheté des servos excédentaires dans un magasin RC local pour 5 $ chacun, mais je les remplace par des servos numériques à 360 degrés qui devraient être encore plus silencieux et plus précis, et ceux-ci me coûtent 20 $ chacun sur eBay.

- 2 vitesses d'objectif à monter sur les bagues de zoom et de mise au point de votre objectif. J'ai utilisé les flexibles que j'ai trouvés sur eBay pour 10 $ chacun et j'ai fabriqué mes propres bagues entretoises pour offrir une meilleure résolution et un avantage mécanique supplémentaire pour les servos. Vous pouvez également dépenser environ deux fois plus et obtenir des bagues d'objectif munies d'entretoises intégrées. Ces dernières sont également disponibles sur eBay. il suffit de rechercher "lentille suivre le focus".

- 2 Engrenages à monter sur les servos pour entraîner les engrenages. Ceux-ci doivent être au pas de 32p ou mod.8 (qui est le pas standard pour les engrenages d'objectif). J'ai façonné mes propres engrenages en ajustant des engrenages droits de 4 $ RC sur les bras de commande de servo d'origine, mais cela nécessitait quelques travaux sur un mini tour que tout le monde n'a pas. Une meilleure option consisterait à acheter les engrenages servo-montables à Servo City pour quelques dollars de plus: http://www.servocity.com/html/32_pitch_hitec_servo_gears.html. Pendant que vous les commandez, vous épargnerez des problèmes si vous achetez également une paire de câbles de servo mâles pour faciliter la connexion de vos servos à votre Arduino et pour les permuter en cas de besoin.

- Une feuille de plastique de 1/2 pouce d'épaisseur ou d'aluminium de 3/4 "d'épaisseur pour faire le montage du servo. J'ai utilisé une vieille planche à découper en plastique, mais si vous le faites, assurez-vous qu'il s'agit du type à crête plus dure (vous ne devriez pas pouvoir vous blesser). la surface avec votre vignette). Le type le plus doux est UHMW et ne s’usine pas assez bien à cette fin.

- des boutons et des boulons de carrosserie correspondants pour serrer les supports du servo sur les rails.

Étape 2: Choisir les engrenages et les servos pour vos objectifs

Avant d'acheter vos servos ou vos engrenages, vous devez comprendre certaines choses à propos des servos. Les servos ont une amplitude de mouvement limitée (typiquement 180), donc si vous voulez pouvoir contrôler votre objectif sur toute sa plage de zoom et de mise au point, vous devez effectuer un petit calcul en fonction du mouvement de la bague de votre objectif et du diamètre de l'objectif. vitesse que le servo va conduire. Je pense qu'il est préférable de simplement suivre le processus que j'ai suivi, afin que vous puissiez suivre la même approche pour les besoins de votre propre système.

Les bagues de mise au point et de zoom de mon objectif se déplacent d'environ 90 degrés d'un bout à l'autre et, avec les entretoises et l'engrenage de l'objectif, le diamètre total de l'engrenage entraîné par le servo est de 4,25 pouces. J'ai utilisé un calculateur de circonférence de ce site Web (http://math.about.com/library/blcirclecalculator.htm) pour obtenir une circonférence de 13,35 pouces. Puisque 90 degrés correspond à 1/4 de la 360, je peux calculer que mon servo doit fournir environ 3,4 pouces de débattement (13,35 / 4). J'utilisais des servos standard à 180 degrés. Je sais donc que la circonférence de mon engrenage de servomoteur devait être d'au moins 6,8 pouces (180 degrés correspond à la moitié de 360, de sorte que mes servos ne pourront fournir qu'un mouvement correspondant à la moitié de la circonférence totale de le servo engrenages). En utilisant à nouveau le calculateur de circonférence, je sais que j'ai besoin d'engrenages d'un diamètre d'au moins 2,2 pouces. En fait, j'ai utilisé un objectif légèrement plus petit parce que je n'avais pas besoin de toute la gamme de mouvements de la mise au point et que je souhaitais avoir un contrôle un peu plus précis de la mise au point, ce qui est plus important que le zoom pour moi. Il ne faut pas oublier non plus que cela est important: plus vous êtes près de 1: 1 entre l’engrenage d’entraînement et l’objectif de l’objectif, moins vous avez de résolution. Par exemple, dans ma configuration, un pas d'asservissement de 1 degré = un pas d'objectif de 1/2 degré, mais si le diamètre de mon engrenage d'entraînement était égal à celui de l'objectif, l'objectif se déplacerait de 1 degré pour chaque degré d'asservissement. Vous avez également besoin de plus de couple d'asservissement pour un rapport lecteur: objectif de 1: 1 que pour un rapport d'entraînement: 1: 2.

Vous devez également savoir qu’il existe une autre variable que vous pouvez introduire: la rotation du servo. Mon code de servocommande est écrit pour les servos standard qui pivotent à 180 degrés, mais j’ai commandé une paire de servos numériques qui pivotent à 360 degrés et qui permettront à mon contrôleur de gérer des objectifs nécessitant plus de débattement. Vous pouvez obtenir des servos qui tournent de 3 tours au maximum, ce qui devrait suffire à gérer la plupart des objectifs tout en maintenant un rapport de démultiplication faible. Bien sûr, vous devrez apporter quelques modifications mineures au code pour gérer la plage de degrés accrue, mais cela devrait être assez simple. Si vous voulez des servos à tour complet ou à tours multiples, recherchez "servo de treuil" sur eBay.

Étape 3: Préparez votre Arduino (ou votre clone)

Une fois que vous avez votre Arduino (ou équivalent), votre connecteur Wiichuck, vos servos et dérivations, ainsi que votre contrôleur Wii Classic, vous êtes prêt à commencer à rassembler les éléments et à charger le code sur votre Arduino. En voici les grandes lignes: connectez le connecteur Wiichuck et les câbles de servo pour pouvoir tout tester ensemble (cette étape nécessite une soudure). Une fois que tout est connecté, configurez l'IDE Arduino sur votre ordinateur, branchez votre Arduino et commencez à charger les bibliothèques et les exemples dont vous avez besoin. Ensuite, le plaisir commence.

Câblage de l'adaptateur WiiChuck:

Cette partie est assez facile, si vous ne faites pas ce que j'ai fait et perdez le petit en-tête à 4 broches qui l'accompagne. Vous venez de souder l’en-tête en place, puis de le brancher sur l’Arduino, comme illustré sur l’image du site Web de FunGizmos. Pour connecter votre contrôleur Classic, assurez-vous que l’indentation de la fiche du contrôleur est alignée sur le "nc" de l’adaptateur Wiichuck.

Câblage des servos:

Au départ, j'ai acheté une carte de contrôleur de moteur parce que j'avais d'abord essayé de construire ce projet avec des moteurs pas à pas plutôt que des servos (parce que je pensais qu'ils seraient plus silencieux, ce qui s'est avéré être assez erroné). La carte possède 2 connecteurs de servo passe-temps, je n'ai donc pas eu à souder pour connecter mes servos. Mais le processus est simple: vous connectez simplement les câbles d’alimentation des deux servos (le noir est négatif, le rouge est positif) à la masse et au VCC de votre carte. Vous avez le choix entre plusieurs endroits. Connectez ensuite l’un des fils de signal (jaune) d’un servo à la broche 9 et l’autre à la broche 10. Il s’agit des broches PWM par défaut qui fournissent les sorties de modulation de largeur d’impulsion par défaut nécessaires pour indiquer au servo quelle est la distance de rotation.

Une fois le câblage terminé, vous pouvez tout connecter, connecter votre Arduino à votre ordinateur via le câble USB et commencer à charger du code.

Étape 4: Programmez votre carte: récupérez les bibliothèques et mon code et commencez à jouer

Avant de charger le code que j'ai écrit pour mon contrôleur d'objectif, vous devez configurer l'IDE Arduino sur votre ordinateur et charger les bibliothèques dont vous avez besoin. La bibliothèque de contrôle Servo est incluse dans l'IDE Arduino, vous n'avez donc rien à faire pour cela. Cependant, mon code utilise également une bibliothèque Wii Classic Controller fournie par l'utilisateur, disponible sur le terrain de jeu Arduino.

Vous pouvez suivre les étapes de la page pour ajouter ceci à votre bibliothèque ou tout simplement télécharger le fichier zip que j'ai joint et le décompresser dans votre dossier de bibliothèques Arduino. Le mien est dans cette voie:

.. Documents Arduino arduino-1.0 libraries

J'ai créé un dossier appelé MiconoWiiClassic dans le dossier libararies et enregistré le fichier "WiiClassic.h" dans ce dossier. Vous pouvez simplement décompresser le fichier MiconoWiiClassic.zip que j'ai inclus ici dans votre dossier Arduino-1.9 libraries.

MISES À JOUR:

1) Depuis la première publication de cet Instructable, j'ai découvert comment doubler la résolution des servos, ce qui les rend plus fluides et plus précis. Je l'ai fait en modifiant la bibliothèque Servos installée par Arduino. Vous pouvez modifier vous-même la bibliothèque ou télécharger le fichier Servo.zip et extraire le fichier Servo.cpp dans votre dossier.. Arduino arduino-1.0 libraries Servo et écraser le fichier Servo.cpp présent. Si vous souhaitez modifier le fichier vous-même, vous pouvez simplement ouvrir le fichier de votre bibliothèque dans le Bloc-notes et remplacer toutes les occurrences de "180" par "360". Si vous avez téléchargé mon dessin avant la mise à jour, vous devez télécharger à nouveau FocusController_gp.zip et l'extraire dans votre dossier de dessin. Il ajoutera focus_zoom_controller_servo_final_2xresolution.ino à ce dossier.

2) Après avoir décompressé les fichiers, vous devez modifier quelque chose dans le fichier WiiClassic.h afin que la bibliothèque fonctionne comme prévu avec mon code.La bibliothèque WiiClassic.h contient une fonctionnalité DEFINE_ON_HOLD qui doit être décommentée pour que les pressions sur les boutons sont signalées une seule fois. Pour supprimer le commentaire, vous devez ouvrir le fichier.. arduino-1.0 libraries MiconoWiiClassic WiiClassic.h dans le Bloc-notes et modifier la ligne suivante:

// # define REPORT_ON_HOLD

à

#define REPORT_ON_HOLD

Si vous ne le faites pas, vous remarquerez que le fait d'appuyer sur le bouton D-pad continuera à déplacer les servos tant que vous le maintenez enfoncé, alors qu'il ne devrait déplacer le servo qu'une étape à la fois. Cette erreur peut également provoquer un comportement étrange suite à d'autres appuis de bouton.

3) Si vous branchez l’adaptateur WiiChuck sur les broches analogiques 2, 3, 4 et 5, vous devez configurer 2 et 3 en tant que masse et alimentation, en ajoutant ce qui suit dans la section configuration de votre code (merci à Phillip James pour attraper cette omission)

"pinMode (16, OUTPUT);" Définit la broche numérique 16 (appelée Analog 2) comme broche de masse

"digitalWrite (16, LOW);"

"pinMode (17, OUTPUT);" Définit la broche numérique 17 (aussi appelée Analog 3) en tant que broche + 5V

"digitalWrite (17, HIGH);"

Une fois cette bibliothèque en place, vous pouvez également télécharger le code de mon projet et le décompresser dans votre dossier Arduino principal. Au prochain lancement de l'EDI Arduino, mes projets s'afficheront dans votre dossier Sketchbook. Mon dossier Arduino est dans mon dossier de documents, comme ceci:

.. Documents Arduino

Étape 5: Testez les choses: contrôleur Wii Classic

Avec les composants électroniques connectés et votre code en place, il est temps de commencer à tester et à modifier le code, si nécessaire. Commencez par charger l'esquisse WiiClassicTestValues ​​à partir de votre carnet de croquis (Fichier> Carnet de croquis> WiiClassicTestValues). Avant de la charger sur votre carte, compilez-la pour vous assurer que vous avez correctement installée la bibliothèque WiiClassic.h (vous devriez également pouvoir la voir dans votre liste de bibliothèques (Sketch> Import Library). S'il est correctement compilé, chargez-le. sur votre tableau.

Le programme transmet la valeur de chacun de vos bâtons de la Wii Classic au moniteur série. Vous devez donc ouvrir le moniteur série (Outils> Moniteur série). Laissez le contrôleur fonctionner avec les baguettes au repos pour voir quelles sont les valeurs aux positions centrales, puis poussez méthodiquement les deux baguettes vers l'avant pendant quelques secondes, puis complètement vers le bas, puis complètement vers la gauche, puis complètement droite. Une fois que vous avez terminé, vous pouvez désactiver le défilement automatique dans la fenêtre du moniteur, copier les résultats dans le Bloc-notes et enregistrer le fichier pour un examen ultérieur. Vous êtes maintenant prêt à vous assurer que le code du contrôleur est calibré sur votre contrôleur Wii Classic.

Étape 6: Chargez le code du contrôleur d'objectif et réglez-le en fonction de votre contrôleur Wii.

Vous pouvez maintenant charger le code du contrôleur et vous assurer que les valeurs de contrôleur attendues correspondent à votre contrôleur Wii Classic. Commencez par charger l’esquisse de mon contrôleur depuis Fichier> Cahier à dessin> focus_zoom_controller_final.

Une fois qu'il est chargé, faites défiler jusqu'à la ligne 101 du code pour voir les paramètres pour les valeurs du stick de contrôleur, illustrés ci-dessous:

// le stick droit a la moitié de la résolution de gauche - ces valeurs peuvent varier d'un

// contrôleur à un autre, vous aurez donc besoin d'exécuter un programme de test pour discerner les valeurs de

// chaque position du manche

int yCenterRight = 15;

int yMinRight = 2;

int yMaxRight = 28;

int xCenterRight = 15;

int xMinRight = 3;

int xMaxRight = 28;

int centerOffsetRight = 3;

int endOffsetRight = 0;

int yCenterLeft = 32;

int yMinLeft = 6;

int yMaxLeft = 55;

int xCenterLeft = 31;

int xMinLeft = 6;

int xMaxLeft = 55;

int centerOffsetLeft = 6;

int endOffsetLeft = 0;

Vérifiez ces valeurs par rapport à la lecture de votre contrôleur et modifiez les valeurs si nécessaire. Assurez-vous de sauvegarder vos modifications.

Étape 7:

Il est temps de tester le code avec vos servos. Dans mon code, le servo Zoom est connecté à la broche 9 de l'Arduino et le servo Focus à la broche 10. Vous pouvez facilement changer cela dans le code en modifiant les numéros ici:

void setup() {

Serial.begin (9600); // configure la bibliothèque de série à 9600 bps

// attachez les servos et réglez-les sur les positions initiales pour monter les servos sur l'objectif

zoomServo.attach (9);

focusServo.attach (10);

Une fois que cela est fait et que vos servos sont connectés, branchez votre carte dans le port USB de votre ordinateur et téléchargez le code sur votre carte. Une fois le téléchargement et le démarrage terminés, le servo Zoom passera à 180 degrés et le servo Focus à 0. Vous pouvez maintenant commencer à jouer avec les manches et les boutons pour voir ce qui se passe et essayer de programmer les différentes positions du servo et la mise au point. rapport. Certains des boutons ont des valeurs par défaut, mais vous pouvez programmer n’importe quel bouton en appuyant sur, HOME, puis sur le bouton et le programme se souviendra du réglage jusqu’à ce que la carte soit réinitialisée ou mise hors tension.

Une fois que vous êtes certain que le contrôleur fonctionne correctement pour déplacer les servos, vous pouvez saisir votre caméra et votre objectif et évaluer si les directions du servo pour les mouvements du manche sont correctes. Pousser le manche droit en avant devrait faire tourner le servo dans la bonne direction pour zoomer l'objectif, et le tirer en arrière devrait faire l'inverse. Dans le même temps, il convient de déplacer la mise au point dans la direction nécessaire pour que la caméra reste nette lorsque le zoom est déplacé. Les miens sont configurés de telle sorte que lorsque je fais un zoom avant (pousse le levier droit vers l'avant), je dois déplacer le levier de mise au point vers la droite pour corriger la mise au point, et lorsque je fais un zoom arrière (redresser le bouton droit vers l'arrière), je dois déplacez la commande de mise au point vers la gauche pour corriger la mise au point. Cela semblait être l'arrangement le plus intuitif.

En plaçant les servos à côté de votre caméra et de votre objectif de la manière que vous prévoyez de les monter sur le support de caméra, vous pouvez savoir s'ils se déplacent dans la bonne direction, en fonction du déplacement de votre objectif. Si ce n'est pas le cas, le code indique comment changer la direction du mouvement du servo par rapport à chaque mouvement du manche. J'ai l'intention à l'avenir de pirater la bibliothèque Servo pour faciliter cela, mais pour l'instant, ce n'est pas aussi facile que de basculer un commutateur, mais ce n'est pas trop compliqué.

Étape 8: Assemblez-vous pour un vrai test

Voici où ça devient vraiment amusant. Une fois que vous êtes convaincu que les servos se déplacent dans la bonne direction pour votre appareil photo, il n’ya vraiment aucune raison de ne pas tout monter et voyez comment cela fonctionne avec votre appareil photo et votre objectif. Vous pouvez fabriquer des boîtiers et ajouter des commutateurs, des connecteurs d'alimentation et de jolies lumières lorsque tout fonctionne comme vous le souhaitez, mais il est inutile de le faire tant que vous ne verrez pas si votre configuration est capable de conduire votre objectif comme vous le souhaitez. Je l'ai fait avec plusieurs itérations de mon projet, y compris une version basée sur le moteur pas à pas qui a été un désastre complet et m'a amené à changer de cap et à passer aux servos. L’idée est d’échouer rapidement, avant d’avoir consacré trop de travail à un produit final qui doit encore être peaufiné.

Commencez par monter les engrenages du servo variateur et de l’objectif. Tout cela est assez simple, mais si vous constatez que votre équipement de lentille glisse (comme le mien), il peut être utile de savoir que vous pouvez augmenter l'adhérence de tout avec le support en caoutchouc qui se détache facilement du dos d'un appareil bon marché., mince tapis de souris. Le même matériel peut également être utilisé pour atténuer le bruit des servos. Dans ce sens, ajouter de la graisse sans danger pour le plastique à la boîte de vitesse servo peut également aider à réduire le bruit de la servo.J'ai utilisé de la graisse pour moulinet de pêche désignée comme étant sans danger pour le plastique et cela a vraiment calmé mon servo zoom.

Si vous n'avez pas de système ferroviaire, vous devrez en créer un en suivant ce que j'ai fait (je laisserai la photo vous guider) ou en trouvant un design encore meilleur sur le Web. Ma plate-forme a été mise en place rapidement à des fins de test et je prévois de remplacer la conception pavée par quelque chose de plus attrayant, rigide et facile à ajuster. Mes rails sont des bâtons de carbone de 1/2 diamètre de carbone que j'ai achetés à Goodwill pour 4 $ (la marque Goode n'est pas effilée, ils ont donc bien fonctionné). Le support de rail est fabriqué à partir d'une planche à découper en plastique dur de 1/2 "d'épaisseur que j'ai sciée en une bande de 2-1 / 2 pouces de large par 6" de long. Pour créer le "trou" du rail, j'ai acheminé deux rainures de 1/4 "de profondeur par 1/2" de diamètre avec un foret de noyau monté dans une table de toupie et guidé par une petite clôture. Je souhaiterais maintenant avoir élargi tout cela, mais je voulais le garder étroit pour pouvoir toujours me rendre à la porte de la batterie sans démonter l'appareil photo des rails. J'ai ensuite coupé la pièce en 2 dans le sens de la longueur, monté un bloc-entretoise en contreplaqué de bouleau baltique à une extrémité à l'aide de vis à bois, puis percé de deux trous de 1,4 "pour la fixer à l'appareil photo et à la plaque de dégagement rapide Manfrotto.

Une fois que vous avez une installation sur rail, vous pouvez fabriquer des blocs de montage de servo adaptés à vos rails. J'ai également fabriqué le mien à partir de débris de planche à découper en plastique dur que j'ai acheminés sur ma table de toupie. J'ai vissé une extrémité ensemble avec quelques petites vis pour cloison sèche et j'ai percé un trou de 1,4 "de l'autre côté du trou du rail pour tenir un boulon de carrosserie. Un petit bouton me permet de serrer le bloc de fixation pour un ajustement parfait sur les rails. Une fois sûr que tout allait bien, j'ai percé de minuscules trous pilotes pour les vis de montage du servo fournies avec mes servos et j'ai fixé les servos en place.Veuillez noter qu'avec cet agencement, le servo n'est fixé qu'au bord avant, soyez donc prudent. où vous exercez une pression lorsque vous montez le servo et le bloc sur les rails.

Étape 9: Faites un essai

Avec la caméra en place (et montée sur un trépied solide) et les servos montés sur les rails, il est temps de tout brancher pour un test. Ne mettez pas l'Arduino sous tension avec les engrenages engrenés. Au lieu de cela, commencez par les éloigner de l’engrenage de l’objectif afin que les servos puissent tourner sans déplacer l’objectif. Vous pouvez ensuite mettre votre conseil sous tension. Si vous ne le faites pas, vous constaterez peut-être que votre servo essaie de tourner l'objectif au-delà de ses limites, et ce n'est pas bien.

Programmez votre contrôleur pour votre objectif (ces instructions sont également dans le code Arduino)

Une fois que votre carte a démarré et que les servos ont cessé de bouger, déplacez la bague de zoom de l'objectif de sorte que le réglage maximal corresponde à la position du servo. Lorsque mon contrôleur démarre, mon servo de zoom se déplace vers la position de zoom la plus large. C'est donc à cet endroit que je déplace l'objectif avant d'engager le servo de zoom. Après avoir déplacé l'objectif, je règle le servo afin que l'engrenage d'entraînement engage simplement l'engrenage de l'objectif (si vous exercez une pression excessive sur l'objectif, vous risquez de le faire coller et d'obtenir un mouvement aussi doux que possible).. Je le programme ensuite comme réglage du zoom le plus large en appuyant sur "Accueil", puis sur "Épaule gauche" sur la manette Wii Classic. J'utilise ensuite le manche droit pour effectuer un zoom avant jusqu'à ce que l'appareil photo atteigne sa limite de zoom, et j'utilise le pavé tactile pour reculer d'un degré ou deux. Je programme ensuite cette position de zoom maximum en appuyant sur "Accueil", puis sur "Épaule droite" pour programmer le réglage de zoom maximal de l'objectif.

Je répète une procédure similaire pour le servo de focus, mais programmez les réglages de servo de focus les plus à droite et les plus à gauche à l'aide des boutons "Right Z" et "Left Z".

Une fois ces limites définies, il est temps d'allumer votre appareil photo, de choisir un sujet et de définir la mise au point pour les paramètres de zoom les plus larges et les plus proches. Le point de départ n’importe pas, mais j’utilise généralement le zoom maximal (il suffit d’appuyer sur le bouton Épaule de droite pour y accéder automatiquement). J'utilise ensuite le joystick gauche et le D-Pad gauche-droite pour obtenir le focus droit, puis appuyez sur "Accueil" puis sur "+" pour régler le focus pour le zoom maximal. Ensuite, zoomez au maximum sur votre objectif et utilisez le manche gauche et le D-Pad pour régler la mise au point sur votre sujet. Une fois que c'est bon, appuyez sur "Home" puis "-" pour régler la mise au point sur la position Zoom minimum (zoom le plus large). Chaque fois que vous programmez les boutons "-" ou "+", le code calcule le rapport correct pour déplacer la mise au point tout en effectuant un zoom afin de conserver la mise au point sur votre sujet. Vous pouvez modifier la mise au point à tout moment en utilisant le joystick gauche ou le D-Pad. Jusqu'à ce que vous reprogrammiez les touches "+" ou "-", la mise au point restera toujours synchronisée avec le zoom lorsque vous utilisez la droite. bâton pour zoomer votre objectif. C'est là que réside la magie de mon "engin" (comme l'appelle ma femme).

Vous pouvez également programmer les 4 boutons (x, y, a, b) avec des positions de zoom / mise au point dédiées. Il suffit de déplacer le zoom et de faire la mise au point sur la position désirée, puis d'appuyer sur "Accueil", puis sur l'un des boutons pour le programmer pour cette position. Si vous ne déplacez que le servo de mise au point lors de la programmation de chacun de ces boutons, vous pouvez faire fonctionner votre contrôleur comme une mise au point suivie avec 4 positions de mise au point prédéfinies qui ne déplacent absolument pas l'objectif du zoom.

Voici une vidéo démontrant ce processus avec le contrôleur monté sur ma caméra GH2:

Étape 10: Enveloppez-vous

Lorsque vous avez terminé de jouer et de jouer au teck et que vous êtes satisfait du fait que votre propre version de ma manette fonctionnera pour vous, il est temps de la rendre permanente, jolie et facile à monter et à démonter. Je vais vous laisser découvrir cette partie par vous-même (mais j'espère que vous partagerez vos résultats avec moi). J'ai quelques ajustements à apporter à mon contrôleur avant de le finaliser. Je pensais donc partager ici mes plans pour que vous réfléchissiez dans le même sens.

Boîtier et meilleurs montages de servo

Je n'ai pas encore trouvé la bonne enceinte, alors j'accepterais volontiers les suggestions. Je vais probablement acheter un Arduino plus petit, comme un mini, afin de pouvoir garder les choses petites et cela ouvrira mes options. Je vais aussi revenir sur les supports de servo en plastique avec des supports en aluminium usiné, maintenant que je sais à quel point cela fonctionne. Je vais aussi mettre à jour les servos eux-mêmes.

Source de courant

À l'heure actuelle, mon contrôleur fonctionne sur le secteur USB en branchant mon câble USB sur un chargeur iPod. Cependant, j’ai une batterie de DVD externe de 9 volts qui peut être chargée pendant qu’elle alimente un contrôleur. J’aime l’idée d’avoir l’option batterie seule. Une fois que j’ai trouvé un boîtier approprié, je vais câbler le câble adéquat. connecteur aux broches de poer externes de ma carte.

Indicateurs LED

Il Ce serait bien (et très facile d'ajouter un indicateur pour le "mode programme", donc j'ai des LED qui s'allumeront lorsque le contrôleur est en mode programme ou en mode exécution.

Inversion facile du servo

Comme je l'ai indiqué précédemment, il est un peu fastidieux de changer la direction du servo par rapport aux mouvements du bâton. J'ai donc commencé à travailler sur le piratage de la bibliothèque de servos Arduino pour accepter un indicateur de direction de servo.

Mémoire pour les réglages d'objectif

Il serait également agréable de ne pas avoir à reprogrammer les réglages de limite d'objectif chaque fois que le contrôle est hors tension, aussi je prévois d'ajouter un stockage sur carte SD pour chaque réglage d'objectif.

Étape 11: Commentaires et suivi

Un autre membre. Steve Dray a très bien construit ses propres versions de cette plate-forme et a généreusement partagé ses schémas de câblage et ses images. J'espère que cela inspire et aide les autres qui essaient de construire ce projet, d'autant plus que j'ai eu peu de temps pour répondre aux questions. Steve avait des problèmes qu'il avait diagnostiqués comme étant une alimentation électrique médiocre. Il a donc créé sa propre alimentation régulée et a également inclus le schéma correspondant. J'ai réussi à me débrouiller avec mon petit chargeur d'ipod cube.

Merci Steve!