Créez un curseur de caméra motorisée contrôlée par Arduino !: 13 étapes (avec photos)

Créez un curseur de caméra motorisée contrôlée par Arduino !: 13 étapes (avec photos)

Table des matières:

Anonim

Ce projet vous montre comment convertir un curseur ordinaire en un curseur motorisé contrôlé par Arduino. Le curseur peut se déplacer très rapidement à 6m / min, mais aussi incroyablement lent.

Je vous recommande de regarder la vidéo pour avoir une bonne introduction.

Choses dont tu as besoin:

  • Tout curseur de caméra. J'ai utilisé celui-ci.
  • Un Arduino Micro
  • 4 petits commutateurs à bascule
  • Une batterie 12 volts
  • Une courroie de distribution et 2 poulies
  • Un peu dril
  • Un fer à souder. Je peux totalement recommander celui-ci.C'est un investissement, mais c'est rentable à long terme.
  • Pilote pas à pas A4988. En théorie, vous n’avez besoin que d’un seul, mais il est plus facile de résoudre les problèmes si vous en avez plusieurs. Ils sont bon marché quand même.
  • Un moteur pas à pas 12V
  • Un coup de poing central
  • Une scie à métaux ou une meuleuse d'angle
  • Une perceuse ou une perceuse portative

Provisions:

Étape 1: Percez les trous de montage du moteur pas à pas.

Le moteur pas à pas doit être monté sous la piste. Plus vous approchez de la fin, plus votre voyage est long. Le moyen le plus simple de transférer le motif de trous du moteur à la piste consiste à le tracer avec de la peinture pour peintres. Ceci est une astuce très utile pour tous types d'applications.

Les poulies étaient assez hautes, j'ai donc dû percer de grands trous pour tenir compte de leur hauteur dans la piste. Cela peut être facilement fait avec une perceuse et un foret à gradins.

Assurez-vous que vous utilisez un poinçon central pour marquer les emplacements des trous. Cela rend leur forage plus facile et plus précis.

Un foret à chanfreiner à 90 ° nettoie bien les bords.

Étape 2: Montez le moteur sur la piste.

Les moteurs Nema 17 ont généralement des trous filetés de 3 mm en haut. J'ai utilisé des rondelles pour atteindre la hauteur idéale pour la ceinture. La courroie doit être assez basse dans la piste pour dégager le chariot.

Les poulies sont fixées à l'arbre avec une vis de réglage.

Sur mon curseur, les trous se sont un peu heurtés aux surfaces arrondies de la piste. Je devais faire un peu de limage pour obtenir les vis correctement. Si vous planifiez à l’avance et que vous faites tourner le moteur de quelques degrés, cela devrait aller. Deux vis suffisent quand même.

Étape 3: Fabriquer une petite monture pour la poulie folle.

La poulie de renvoi, tout comme la poulie pas à pas, doit être montée légèrement sous la surface de la voie. J'ai utilisé un petit morceau de métal que j'avais laissé d'un projet précédent. Vous trouverez quelque chose de similaire dans n'importe quel magasin de matériel.

J'ai utilisé des vis à tête fraisée. Ils ont l’air génial, mais seulement quand ils sont bien assis dans leurs trous. Pour y parvenir, j'ai commencé par un trou, inséré la vis puis percé le second. Cela garantit un ajustement parfait. Un bit de chanfreinage est utilisé pour créer le puits du compteur.

Pour un look supplémentaire, vous devriez peindre le métal. Utiliser un apprêt est toujours une bonne idée. Le mien ne fonctionnait pas très bien à -10 ° C.

Étape 4: Assemblez la poulie de renvoi!

La poulie de tension doit être à la même hauteur que la poulie du moteur. J'ai utilisé des rondelles pour cela. Je recommande fortement d'utiliser des noix nylock! Ils ont un petit insert en plastique qui se lie au fil et l'empêche de se détacher par les vibrations.

Étape 5: Modifiez le chariot pour tenir les extrémités de la courroie de distribution.

Vos ceintures auront probablement une longueur de 5 m que vous pourrez couper sur mesure. Cela signifie que les deux extrémités doivent être fixées au chariot.

J'ai essayé quelques méthodes pour les attacher au chariot avant de trouver une solution très simple. Je viens de caler la ceinture contre une surface parallèle en utilisant une vis à tête fraisée M3. J'ai percé un certain nombre de trous pour m'assurer que l'on aurait la bonne distance pour maintenir la ceinture serrée.

Étape 6: Admirez votre matériel!

Vous devriez maintenant avoir une courroie qui est connectée au chariot et qui fait une boucle autour du moteur et de la poulie de renvoi. Ensuite vient l'électronique!

Étape 7: Aperçu de l'électronique

J'utilise un Arduino Micro. Ceci est un excellent petit appareil avec un petit facteur de forme et beaucoup de matériel de support en ligne. L'arduino est alimenté par une batterie 12V composée de 8 piles AA. Je trouve cela plus pratique que d'utiliser un LiPo. La batterie est également connectée directement au pilote pas à pas, car elle nécessite une tension et un courant de commande de moteur supérieurs à ceux fournis par Arduino. Le pilote pas à pas reçoit les signaux de l’Arduino via 2 câbles et commande le moteur. L'Arduino commence à donner des instructions au conducteur dès qu'il est alimenté. 4 commutateurs sont utilisés comme une sorte de serrure à combinaison pour régler la vitesse du mouvement.

Voici le code. Malheureusement, le code circuits.io a été supprimé lors de la vente du site. Le code ci-dessous fonctionne bien.

Étape 8: Câblage des commutateurs sur l'Arduino

Malheureusement, le schéma a été perdu parce que les circuits.io ont été supprimés. Comment puis-je expliquer le mieux le shematic? L’Arduino utilise la batterie 12V comme source de tension. Il produit lui-même une tension de 5 V qui peut être utilisée pour vérifier l'état des 4 commutateurs. Ils sont utilisés pour changer la vitesse du curseur. Donc, vous avez un peu 2 tensions sur le conseil. 12V pour alimenter le matériel et 5V pour le circuit de contrôle. Vous devez connecter votre source 12V au signal Vin et GND de l’Arduino. Vin représente la tension. Cette partie est facile.

Ensuite, vous devez ajouter les 4 commutateurs. Pour cela, vous pouvez utiliser le schéma utilisé ici et le copier 4 fois pour les 4 commutateurs. Désolé que le vrai film ait été perdu. Utilisez la pin2 à la pin5 que vous trouverez également dans le code ci-dessous. N'utilisez pas la broche 1, cela ne fonctionne pas. A quoi servent les résistances? Eh bien, un Arduino ne peut pas mesurer le courant, mais il peut mesurer la tension. Donc, le commutateur à bascule connecte 5v à la broche ou le laisse court-circuiter à GND. La résistance juste avant GND est là pour maintenir la tension proche de zéro. Vous avez besoin de résistances individuelles 10k pour chaque commutateur! Si vous suivez le tutoriel ci-dessus, qui est assez simple et constitue l’une des bases de l’Arduino, l’Arduino vérifiera en permanence l’état actuel des commutateurs et réagira en conséquence. J'espère que ça aide.

Une fois que ce circuit fonctionne, vous pouvez le transférer sur une planche à pain et le souder.

Câblez des câbles minces aux 4 commutateurs. J'ai utilisé les câbles que j'ai trouvés à l'intérieur d'un ancien câble Ethernet. Je suis sûr que vous avez beaucoup de ceux qui traînent. Protégez les bornes nues avec une gaine thermorétractable.

Vous devriez maintenant avoir 4 commutateurs connectés à un Arduino et le Arduino devrait fonctionner et enregistrer que ces commutateurs sont enfoncés.

Étape 9: Câblage du pilote pas à pas A4988

Le pilote pas à pas est un A4988. Il reçoit les signaux de l’Arduino et les transmet au Stepper. Vous avez besoin de cette partie.

Au lieu de vous expliquer le circuit, vous pouvez plutôt regarder ce tutoriel, car il l’explique très bien. Ceci est ma référence lorsque j'utilise un A4988. Mon code utilise exactement les mêmes pins. Ajoutez donc ce didacticiel youtubers au tableau avec les commutateurs de l’étape précédente et cela fonctionnera.

Étape 10: Ajoutez le code!

Voici le code complet et le circuit pour le curseur. Vous pouvez le tester en ligne, mais uniquement sans le pilote pas à pas.

Lien alternatif

Le code vérifie l'état des 4 commutateurs de la boucle. Après cela, il passe en revue certaines instructions if et sélectionne le délai souhaité entre les étapes pour parcourir toute la longueur du curseur dans la valeur entrée. Tous les calculs sont inclus dans le code sous forme de notes.

Vous devez entrer la longueur de votre curseur et le diamètre de la poulie pour vous assurer que le moteur s'arrête lorsqu'il atteint la fin de la course. Mesurez simplement ces valeurs vous-même. Les formules sont incluses dans le code.

Le tableau ci-dessous vous indique ce que vous souhaitez appuyer pendant une période donnée. Par exemple, si vous souhaitez que le curseur se déplace sur toute la longueur en 2 minutes, vous devez activer les commutateurs 1 et 2. Vous pouvez bien sûr modifier ces valeurs selon vos préférences.

Étape 11: imprimez le boîtier.

J'ai conçu le boîtier avec Fusion 360. Vous pouvez télécharger les fichiers ici et les imprimer sur une imprimante 3D. Aucun support n'est requis. J'ai rempli les détails des lettres avec du vernis à ongles rose pour le rendre plus facile à lire. Vous pouvez remplir la lettre entière puis effacer l’accès. Cette astuce peut être utilisée pour tout type de retrait.

Si vous voulez une option plus facile, vous pouvez simplement en créer une à la main en utilisant une petite boîte à lunch.

Étape 12: Assemblage final

Il est temps de tout mettre en place. Placez tous les composants à l'intérieur du boîtier et montez-le sur le curseur à l'aide d'un ruban adhésif double face en mousse. Ce matériau est assez fort et adhère bien aux surfaces inégales.

J'ai également ajouté un support antivibration avec un support de caméra universel au-dessus. Le support de vibration est relativement bon marché et arrête les vibrations pour atteindre la caméra. Ceci n'est nécessaire que pour le mouvement à grande vitesse. Dans mon cas, le mouvement à grande vitesse est compris entre 10 et 30 secondes pour la longueur du curseur.

J'ai ajouté une table avec toutes les combinaisons de commutateurs sur le dessous.

Étape 13: Admirez votre travail et filmez des vidéos cool!

Météo sa vidéo ou timelapse, ce curseur peut tout faire! Si vous en construisez un vous-même, j'aimerais bien en savoir plus!

Runner Up dans le

Concours de microcontrôleurs 2017

2 personnes ont réalisé ce projet!

  • infecté le fait!

  • infecté le fait!

Avez-vous réalisé ce projet? Partagez le avec nous!

Recommandations

  • Classe Internet des objets

  • Défi IoT

  • Concours Arduino 2019

  • Concours Couleurs de l'arc-en-ciel

60 discussions

0

ArdiK3

il y a 6 jours

Comment les curseurs reviennent au point de départ avec ce code? Comment cela fonctionne-t-il lorsque vous souhaitez annuler le glissement actuel au milieu?

0

sinitsinmike

Question il y a 4 mois

Quelle combinaison d’interrupteurs est-ce que j’utilise pour inverser le mouvement du curseur?

0

GregP52

Question il y a 5 mois

Toute chance que vous pourriez mettre un meilleur schéma de câblage, y compris le câblage de l'a4988 et du commutateur. Besoin mal

0

RajivK10

il y a 8 mois

Où puis-je obtenir le code et le câblage? Aidez-moi, je ne comprends pas la programmation.

0

Gruuz

Question 1 an auparavant sur Introduction

Bonjour MAX

mon appareil photo + chariot + fluide viedo tête pèse 2 kg. Et je voudrais soulever cet ensemble verticalement (70 cm). Ces composants de didacticiel sont-ils suffisamment puissants? Je vous remercie

PS: photo de mon profil en aluminium et du nouveau kart.

0

VladimirP66

il y a 1 an

Eh bien je viens d’essayer avec a4988 et j’ai le même problème, le moteur bouge mais bégaie. J'ai essayé un code de test simple et cela fonctionne parfaitement …. Je ne comprends pas pourquoi cela ne fonctionne pas avec votre code.

0

VladimirP66

il y a 1 an

Salut ! Je viens de faire cela et je dois dire que son design avec le commutateur est génial! C'était difficile de trouver le câblage exact cependant …

Quoi qu'il en soit, j'ai un problème avec le code car je n'avais pas de pilotes A4988, mais uniquement du DRV8825; le mouvement est donc saccadé et assez bruyant. Que dois-je changer dans le code pour l'adapter à mon pilote?

Je vous remercie !

0

kelly46864

il y a 1 an

Dans Arduino, il semble qu'il manque un guillemet dans votre code. (Il est écrit "caractère manquant"). Est-ce que je l'ai mal copié et collé?

0

polavaram46361

il y a 1 an

Je suis un peu confus sur la façon dont je devrais faire le circuit. La page Circuits Autodesk semble comporter un Arduino Uno (je ne sais pas si cela fera une différence) et des écrans LCD jaunes. Il semble également un peu difficile de copier l’emplacement du câblage à partir de ces pages. J'essaie actuellement de copier le circuit de la photo de votre circuit. Je suis sûr qu'il existe un meilleur moyen. Est-ce que je manque quelque chose?

Merci.

1 réponse 0

Max Maker polavaram46361

Répondre il y a 1 année

Hé, les écrans jaunes ne sont là que pour vérifier le code en ligne. Vous pouvez voir leurs valeurs changer au fur et à mesure que vous simulez le code. C'est un outil de débogage.

Le circuit est correct, mais il manque les pièces qui exécutent le A4988. Vous pouvez prendre cette partie du didacticiel de l’autre utilisateur et l’ajouter à mon dessin. Comme Autodesk Circuits n’a pas de A4988, je n’ai pas pu l’ajouter.

Vous pouvez utiliser un Arduino UNO ou un Micro. Les deux ont exactement les mêmes épingles. Il y a bien sûr des différences, mais aucune ne nous concerne pour ce projet. Le Micro est juste une taille physique plus petite (plus quelques aspects techniques).

Ill ajouter 2 autres photos de mon circuit à l'instructable. J'espère que cela pourra aider.

0

Kelay2

il y a 1 an

Quel est le nom de la peinture en aérosol avant la peinture noire, s'il vous plaît

2 réponses 0

Max Maker Kelay2

Répondre il y a 1 année

J'utilise un apprêt de pulvérisation automobile hors marque bon marché. Tout le monde devrait aller bien.

0

Kelay2 Max Maker

Répondre il y a 1 année

Merci beaucoup:)

0

ejohn

il y a 1 an

Excusez-moi, j'essaie encore de comprendre

la formule, StepDelay = ((TravelTime / Steps) -

0.0008)*1000;

StepDelay = ((TravelTime / Steps) - 0.002)

* 1000;

Puis-je dire que 0,0008 provient du TWO «delayMicroseconds (400);» de MoveStepper ()

mais quel est 0.002 dans les autres options de temps?

Désolé pour mes pauvres maths.

Merci

3 réponses 0

Max Maker ejohn

Répondre il y a 1 année

Je suppose que.002 serait au cas où vous auriez des retards plus faibles de 100 microsecondes. S'il est présent dans certains des "cas de commutation", je les aurais peut-être copiés ou mal oubliés, mais ils ne devraient pas avoir beaucoup d'importance pour des intervalles de temps plus longs. L'importance du délai diminue avec le temps.

0

ejohn Max Maker

Répondre il y a 1 année

Merci max.

Je le testerai quand j'aurai tous les articles quelques jours plus tard.

0

Max Maker ejohn

Répondre il y a 1 année

Bien repéré cependant!

0

Zburhop

il y a 1 an

J'en ai fait un. Les moteurs pas à pas sont bien pires pour cela que je ne le pensais. Même un laps de temps a toutes sortes d'artefacts géniaux de la marche. Je vais probablement me débarrasser de ce contrôleur et l'utiliser comme un contrôleur pas à pas à usage général pour les expériences. Quelqu'un at-il trouvé un moteur qui se monte sur un nema 17 stepper mount? Ce serait vraiment bien si je montais un moteur comme celui-là et utilisais un variateur de vitesse.

Zach

0

Mvelentzas

il y a 1 an

Le concept est génial, mais un schéma complet (incluant le pilote pas à pas et les connexions de commutateur) aurait été bien pour nous, noobs, là-bas:(

1 réponse 0

Max Maker Mvelentzas

Répondre il y a 1 année

Tu as raison. Désolé, mais je travaille sur une solution plus simple.