Étape 1: Théorie du projet + explication
La première partie et peut-être majoritairement étranger de ce projet pour certains est la main suivi de la part des choses. Heureusement, nous n’avons pas à développer la main suivi logiciel ou matériel nous-mêmes. Nos bons amis au saut du mouvement ont inventé un contrôleur très astucieux pour faire tout ce que nous voulons. Nous voulons être en mesure de contrôler nos bras sans toucher n’importe quelle sorte de contrôleur et nous pouvons faire tout cela avec un bond de commande de mouvement. Si vous n’êtes pas familier avec ce contrôleur s’il vous plaît de tête sur le site Motion Leap et découvrez quelques uns de leurs vidéos https://www.leapmotion.com/. Le contrôleur de mouvement de saut est composé de 3 LEDS infrarouges qui émettent environ 850 nanomètres et il a 2 caméras infrarouges pour la capture de mouvement. L’idée du contrôleur est que la lumière émise par les LED IR reflète sur nos mains et est capturée par les deux caméras IR sur l’appareil. L’appareil diffuse ensuite les données qu'il capturé à la Motion de Leap dépistant le logiciel sur votre ordinateur. Le logiciel de suivi utilise probablement une sorte d’effet de parallaxe et d’autres algorithmes de reconstituer une représentation 3D de ce que voit l’appareil. L’algorithme de tracking interprète ensuite les données telles que ce qui est de l’orientation et la position de vos mains et vos doigts. Lorsque l’algorithme détermine au mieux de ses possibilités, où est la main, les données sont exportées à l’API qui est prêt pour vous à l’interface avec et extraire des données de. La chose soignée est le mouvement de saut contrôleur peut s’interfacer avec une variété de langages de programmation, donc, si ne sais pas Python ou ne peut pas déchiffrer mon code, vous pouvez utiliser votre propre langage de programmation de choix.
Nous finirons par écrit un petit morceau de logiciel qui écoute les données de commande de mouvement de saut. Dès que nous recevons les données nous il normalisera par la taille de la zone d’interaction du Leap Motion controller sorte que nous pouvons obtenir une fraction de combien de temps à l’espace qu'est notre main. Dès que nous aurons cette fraction nous pouvons multiplier par la gamme de certains moteur et dire notre Arduino pour déplacer notre moteur d’asservissement à ce poste. Nous serons en mesure de synchroniser notre motion de main en 3 dimensions de 3 moteurs différents. Se déplaçant autour de chaque axe commandera un moteur différent. C’est logique parce que lorsque nous passons la main vers le haut plus loin le Leap Motion controller nous voulons que de monter nos bras, que nous pouvons faire arriver.
Si vous êtes familier avec la façon dont fonctionne un Arduino, vous savez qu’il faut télécharger un croquis sur la planche avant que nous pouvons faire usage de l’appareil. Afin que nous puissions interagir dynamiquement avec la carte Arduino, nous avons besoin d’écrire un petit morceau de logiciel tel que nous pouvons contrôler notre Arduino sans devoir constamment garder téléchargement sketches sur elle. Heureusement, j’ai un petit bout de code qui facilitera ce processus. J’ai écrit deux tutoriels instructable précédents sur la façon d’interfacer votre Arduino avec Python sur communication série. C’est juste une façon élégante de dire que nous allons avoir notre Python code envoyer un peu message à notre dispositif d’Arduino et puis notre Arduino interprètera le message et ensuite les tâches envoyées. Ne vous inquiétez pas, je vais à pied les gars à travers un exemple de base de la façon de mettre en place la bibliothèque de Pyduino sur votre périphérique de l’Arduino et sur votre ordinateur afin que nous puissions commencer à parler à notre Arduino. Et si vous ne savez pas Python j’ai une solution pour vous ! L’esquisse que nous téléchargeons sur notre Arduino dispositif est suffisamment polyvalent pour l’interface avec l’aide de n’importe quelle langue capable d’envoyer des messages de série donc si ne voulez pas utiliser Python pour envoyer des messages à notre Arduino, vous n’avez pas à ! Mais vous devrez écrire un peu de code supplémentaire.
Permettez-moi d’attirer votre attention sur maintenant la figure ci-dessus. Permet de définir certains termes afin que vous puissiez comprendre ce que je vous parle plus tard. À la base de nos bras, nous avons 2 servo-moteurs, nous appellerons ces moteurs l’azimutale moteur/angle et moteur/angle d’Altitude. Si vous êtes à jour sur votre terminologie astronomie observationnelle l’angle azimutal fait généralement référence à des points cardinaux (N,W,E.S) donc c’est le moteur qui se déplacera à gauche et à droite et l’angle d’Altitude est ce qui commence à l’horizon et s’étend vers le haut à une étoile. Le bras principal, c’est que qui est attaché au moteur d’Altitude. Le bras secondaire est attaché à ce que j’aime à appeler le moteur de poignet qui est attaché au bras principal. Enfin, nous avons la griffe. (insérer Toy story clip ici) La griffe est responsable de l’accaparement des choses et est actionnée par un moteur aussi bien.