Cet article décrit la création d'un prototype de plate-forme mobile programmable avec plusieurs degrés de liberté pour prendre des photos avec un appareil photo reflex - pour l'installation ultérieure de la vidéo en accéléré. Il est recommandé qu'ils ne comprennent rien en électronique et microcontrôleurs, "développeurs professionnels" de solutions sur Arduino et leurs vendeurs, il n'y a rien d'utile ici.
En bref pourquoi j'en avais besoin. , — .
. . , PCMCIA-, -? , , WiFi , -? . , .
, . — -, . . — -. , , //, , . .
, , . - . . --- (360° 24 ;) ). — . , . . . GoPro. - — , . — , . , ! , . , timelapse dolly .
.
, , , . , , , — . , . . , . , , , - .
. ?
Peut-être que tout le monde n'imagine pas les capacités des microcontrôleurs les plus simples. Particulièrement mal détenu par des gens de «professions créatives». Designers, photographes, cameramen - ils apprennent souvent le «processus» et ont des opinions conservatrices sur le sujet de leur profession, ne voulant rien changer. Surtout lorsque le mouvement sur le côté (pas nécessairement ce mouvement vers l'avant) est associé à des efforts notables pour étudier quelque chose de nouveau, qui n'est pas nécessairement utile dans l'activité principale. Dis, eh bien, pourquoi ai-je besoin de ça - je ferais mieux d'aller enlever une autre fille nue. Bien sûr, cette activité ne dérange rarement personne. Et même si les gens pensent à se déplacer latéralement, ils ont souvent les moyens de payer. Pourquoi construire un morceau de fer si vous pouvez acheter un morceau de fer?Mais s'il n'y a rien pour acheter un morceau de fer, de plus, cela ne sera jamais payant et vous voulez juste jouer avec l'idée? Si nous considérons les microcontrôleurs comme un remplacement pour Tanchiki, capable de délivrer quelque chose d'intéressant IRL? Alors motivez-vous et faites un pas. Soudain, il s'avère que même pour un photographe (ci-après dénommé utilisateur de robot, il est appelé photographe, bien qu'il fasse des vidéos avec lui. La vie est une chose étrange), tout ne semble pas si effrayant et compliqué. Surtout si vous restez à ce niveau très élevé.Pour moi, la motivation pour creuser plus profondément était le désir de construire une plate-forme mobile pour mon reflex numérique. La vidéo en accéléré peut être considérablement animée et rendue plus intéressante par le mouvement du point de prise de vue. Un simple mouvement séquentiel, un panoramique et une combinaison de ces mouvements et d'autres mouvements.En conséquence, pour moi, la tâche a été formulée comme suit - pour fournir plusieurs degrés de liberté pour un appareil photo reflex lourd - avec la précision et la stabilité de mouvement requises pour le laps de temps. Et, bien sûr, une prise de vue entièrement automatisée. Et tout cela avec peu de sang, c'est-à-dire une petite quantité de roubles et une perte de temps tolérable. Autrement dit, le plus rapidement possible. Et donc mon projet 4DOF Timelapse Robot est né.Faites un pas. Et puis pour ceux qui n'ont jamais été impliqués dans la programmation et l'assemblage d'appareils électroniques, un monde merveilleux et réfléchi s'ouvre. Là où franchi devient le maître des perspectives illimitées. Tu peux faire ça? Tu peux. Et alors? Tu peux. Et je le veux - puis-je? Oui, c'est possible, regardez comment c'est fait ... Letexte de ce texte deCommentaires sur le jeu dans le programmateur du microcontrôleur (oui, vous l'avez bien lu - ils y jouent même!):avr 35 : ( ) , , , 8- , 16- , , ( , , /, wdt), -, 8 , , ( , — , !), , , — , , 0 1, -, , . — .
, ! , , , , . . — //- .
, — :
, , . — . , , , .
, , ( - 5 ), . : , ( ), , , , . . — , .
, . , , , , — : 35 , , , - .
avr' , , 10 , stm' arm', , — arm' .
— ! .
— , , - , , . , , , , , ...
Pour les néophytes, l'univers Arduino le plus annoncé semble être le plus attractif et le plus facilement accessible. Cela peut être traité de différentes manières, mais on ne peut que l'admettre - c'est la disponibilité et la prévalence de solutions basées sur toutes sortes de variations avec atmega328 qui permet au néophyte d'obtenir facilement des résultats tolérables, sans comprendre la plupart des détails du microcontrôleur et sa communication avec les périphériques. Noob ne comprendra pas du tout comment cela fonctionne à l'intérieur, mais l'engin fonctionnera et se déplacera selon ses souhaits, et c'est tout de même que les Chinois l'ont fait moins cher depuis longtemps et imprimé un million d'exemplaires. Oui, même s'il s'agit d'une répétition du chemin parcouru depuis longtemps par des milliers d'autres - c'est toujours un plaisir de la mise en œuvre indépendante de la tâche. Pourquoi collecter Lego selon les instructions - après tout, d'autres ont déjà collecté? Du plaisir.Pourquoi tirer sur des galaxies avec une technique extrêmement simple s'il y a un Hubble? Du plaisir. Pourquoi assembler un chariot sur roues avec une télécommande si le magasin en a des centaines dans de belles boîtes? Du plaisir.C'est ainsi que nous devons aborder Arduino - nous allons nous amuser, et le fait que les Chinois, Italiens et commerçants locaux entreprenants gagnent de l'argent avec nous en même temps - eh bien, vous devez payer pour le plaisir! Eh bien, et les professionnels de l'électronique peuvent à juste titre cracher en direction de l'artisanat Arduino et plus encore.Donc, dans cet article, nous apprécions le plaisir sans précédent - notre reflex numérique roule tout seul et prend des images à une fréquence donnée, tandis que nous, satisfaits, buvons du café et lisons des geektimes.Ce que nous voulons de l'artisanat:- Contrôle de l'appareil photo - effectuer sur l'appareil photo l'exposition que nous avons définie et maintenir la pause souhaitée entre les images;- Se déplacer d'avant en arrière à une distance arbitraire - sans les exigences d'une longue installation ou préparation de la base;- Rotation de la caméra de gauche à droite avec pas arbitraire;- Faites pivoter la caméra de haut en bas avec une étape arbitraire;- La rotation de la bague de zoom ou la mise au point de l'objectif - bien sûr, la même chose avec l'intensité que nous choisissons.Cet ensemble de fonctionnalités implique une grande liberté de création lors de la prise de vue de vidéos en accéléré. Vous pouvez résoudre presque tous les problèmes - en combinant le mouvement de l'appareil photo dans différentes proportions et en contrôlant la vitesse d'obturation-pause. Seul le contrôle d'exposition arbitraire en fonction de l'éclairage reste indisponible - ici, vous ne pouvez faire confiance qu'au programme de posemètre de l'appareil photo ou vous limiter à un petit écart. Tous ceux qui ont filmé le temps qui passe le matin et le soir comprennent parfaitement à quelle vitesse les conditions d'éclairage changent.Malheureusement, jusqu'à présent, la rotation de la caméra vers le haut et vers le bas n'a pas été implémentée non plus - enfin, par rapport au châssis. Je ne peux toujours pas imaginer par quels moyens accomplir cela dans les dimensions de mon prototype. Jusqu'à présent, vous devez faire avec l'angle d'élévation de la caméra initialement défini lors du montage - et la différence par rapport à la position horizontale rend impossible le contrôle de la mise au point du zoom.Le premier problème est la question - sur quoi déplacer la caméra? Le miroir est une chose lourde. La recherche d'un compromis commence - vous ne voulez pas porter la gravité comme une voiture électrique pour enfants et la caméra serait stable et ne l'emporterait pas en raison du centre de gravité élevé. Les photographes avec des jouets GoPro peuvent très bien être satisfaits des voitures buggy à quatre roues. Pour mon reflex numérique, je voudrais quelque chose de plus stable. Après avoir étudié le problème et les solutions existantes, je me suis installé sur la plateforme suivie.Les plates-formes suivies spécialisées et prêtes à l'emploi coûtent un montant gênant. Il était plus sage d'utiliser un jouet pour notre but. Comme la famille possède déjà un char radiocommandé (Leopard 1:20), la première chose que j'ai regardée dans sa direction. Mais c'est devenu dommage - qu'il continue à monter et à cracher des balles pour le plaisir des enfants. Que pouvez-vous acheter et démonter rapidement et à peu de frais? En fouillant sur Avito, nous avons découvert que les réservoirs étaient trop petits ou trop chers. Mais il y a des enfants peu demandés et donc pas si chers, mais en aucun cas inférieurs à mes fins de pelles. Mais, comme par hasard, dans ma ville, il n'y avait rien de convenable à vendre. Commandez par courrier? Peut-être alors voir les chinois? Je suis donc venu sur le site du "marchand de robots" Ning aka SINONING. Voulez-vous un châssis "tank" cool en aluminium pour 138 $ - pas de problème! Voulez-vous la même taille, mais l'ensemble du châssis "pelle" en plastique pour trente? S'il te plait! Absolument gourmand? Ici, vous avez un châssis de réservoir pour 14 $, et même avec un moteur. Vous pouvez également acheter de l'arduinki là-bas, mais j'en ai beaucoup dans la ville, donc un châssis en plastique bon marché SN1000 est passé du chinois à moi.
Pour arduino, j'ai profité des offres de Make Robots ( https://vk.com/makerobot66 ) où la jonque suivante utilisée dans ce projet a été achetée:- DCcduino UNO (avec câble USB) ... 480 x 1 = 480
- Module GY-273 HMC5883L ... 170 x 1 = 170
- Kit de démarrage Arduino ... 480 x 1 = 480
- Module de relais 1 voie 5V ... 180 x 1 = 180
- LCD 2004 I2C bleu ... 610 x 1 = 610
- Bouclier d'entraînement du moteur L293D ... 360 x 1 = 360
- Module joystick KY-023 ... 170 x 1 = 170
- Courroie de distribution GT2 6 mm ... 120 x 1 = 120
- Poulie dentée GT2 16t 6mm ... 140 x 1 = 140
- 10pcs 30cm fils de saut 1f1f ... 55 x 1 = 55
- 10pcs 30cm fils de saut 1m1f ... 55 x 1 = 55
- Moteur pas à pas 28BYJ-48 + pilote ULN2003 ... 260 x 1 = 260
- Support de batterie 18650 x2 ... 60 x 1 = 60
Total 3140 frotter.De plus, il était nécessaire:- deux batteries 18650
- panneaux de fibres minces contreplaqués.
- un tas de boulons et d'écrous M4
- six vis 3,5x51 un peu comme.
- 10 douilles M5 et 2 M8 - tout comme les entretoises.
- Quelques détails du constructeur "mécanique".
- interrupteur à souder
- Prise jack à souder 3,5 mm
- Prise d'alimentation 2.1x5.5
- et trombone
Du côté de l'équipement photo, ils étaient utiles:- un reflex numérique- une télécommande chinoise "sans fil" - en tant que donneur du câble pour la connexion à la télécommande de l'appareil photo- le support de caméra le plus simple à partir d'un boulon de trépied avec des entretoises. Une tête de trépied normale serait beaucoup mieux, mais le moins serait un centre de gravité plus élevé.Il n'y avait pas beaucoup de bruit de la part des mécaniciens. Le SN1000 résultant a deux moteurs CC de «taille 130» pour entraîner les chenilles, et un autre moteur CC est installé dans la boîte de vitesses pour faire tourner la plate-forme sur ce châssis chenillé. Tout est collecté. Donc, tout est presque prêt. Il ne reste plus qu'à fixer la caméra et l'électronique sur la plateforme. La solution traditionnelle que j'ai vue était de placer des déchets électroniques sur le châssis sous l'avion sur lequel la charge utile ou les commandes sont placées. L'avion est séparé du châssis par des entretoises de la hauteur souhaitée. Certains parviennent à construire plusieurs étages.D'accord, j'ai scié le contreplaqué, percé des trous pour les attaches, j'ai acheté des bagues et des vis - tout est prêt. Il n'y a rien de compliqué à cela même pour un photographe. Le châssis de la «pelle» offre une rigidité suffisante de la plate-forme et des points d'attache.Avec l'électronique, les tracas sont plus, mais c'est nettement plus amusant. Non, vraiment, c'est très amusant. Mais pas difficile. Malgré une formation très spécialisée, je ne comprends pas l'électronique, la loi d'Ohm ne rebondit pas du tout, j'ai programmé C pour la dernière fois il y a environ douze ans et des tâches purement pédagogiques, pas de vente, et je ne sais vraiment pas comment travailler avec mes mains. Mais pas si effrayant. Même un programmeur aussi mauvais que moi, complètement inconnu des composants électroniques utilisés, a été capable de lancer rapidement et facilement quelque chose de réalisable. De plus, le moyen de clignoter une LED pour résoudre des tâches est très rapide et facile - grâce à de nombreuses ressources Web Arduino, où tout est mâché pour commenter passablement le code et les images commentés avec commutation. Il y a aussi de bons livres (parfois même en russe),où les fonctionnalités les plus populaires de la plate-forme Arduino sont constamment et assez accessibles. Donc, après avoir avalé plusieurs livres et enregistré une dizaine de signets dans les navigateurs pour des solutions intéressantes, j'ai assez rapidement écrit et débogué le programme (croquis) du projet pour Arduino en quelques jours seulement. Il n'y a pas non plus tellement de bruit avec le fer à souder et tout cela se limite à souder purement le câblage à l'écharpe ou à l'interrupteur. Il s'est avéré, bien sûr, moche, mais cela fonctionne assez bien sur le genou. Pour un photographe, le perfectionnisme de la soudure ou d'un programme n'est significatif que lorsque leur manque gêne la réalisation de ses objectifs.en quelques jours, il a écrit et débogué le programme (croquis) du projet pour Arduino. Il n'y a pas non plus tellement de bruit avec le fer à souder et tout cela se limite à souder purement le câblage à l'écharpe ou à l'interrupteur. Il s'est avéré, bien sûr, moche, mais cela fonctionne assez bien sur le genou. Pour un photographe, le perfectionnisme de la soudure ou d'un programme n'est significatif que lorsque leur manque gêne la réalisation de ses objectifs.en quelques jours, il a écrit et débogué le programme (croquis) du projet pour Arduino. Il n'y a pas non plus tellement de bruit avec le fer à souder et tout cela se limite à souder purement le câblage à l'écharpe ou à l'interrupteur. Il s'est avéré, bien sûr, moche, mais cela fonctionne assez bien sur le genou. Pour un photographe, le perfectionnisme de la soudure ou d'un programme n'est significatif que lorsque leur manque gêne la réalisation de ses objectifs.Revenons une fois de plus à la liste des composants - je commenterai le but et l'interaction entre eux.Le cerveau du prototype est DCcduino UNO. Il s'agit d'un Arduino UNO R3 classique dans une implémentation chinoise. Je note, en aucun cas inférieur à l'original. Il existe le même Atmega328P avec sa liaison, sauf que le pilote de port série virtuel pour USB nécessite une puce CH340 différente, mais facile à trouver, et dans Win8, il semble même être complet. Cet arduinka est le plus souvent le premier et le plus simple qui sélectionne les noobs et je n'ai pas fait exception. Et, tu sais, ça me suffisait. C'est-à-dire des contraintes avec les ressources sont apparues, mais, néanmoins, mon simple microcontrôleur 8 bits était plus que capable de remplir mes tâches.Les cerveaux contrôlent les moteurs à travers un autre châle, le soi-disant «Shield» - d'une carte insérée dans les connecteurs de l'arduino sur laquelle une charge utile est appliquée et soudée. Il faut le distinguer d'un simple «module». Les "modules" - une solution clé en main avec tout le câblage et les composants soudés - sont connectés à l'arduino via des fils coincés dans les connecteurs de l'arduino, parfois avec un intermédiaire sous la forme d'une planche à pain sans soudure. Et le «blindage» est un tel «module» qui est installé au-dessus de l'arduino, car ce dernier a une taille et une position normalisées des connecteurs.Dans mon cas, j'ai trouvé nécessaire d'acheter le Motor Drive Shield L293D - c'est un module pour contrôler quatre moteurs à courant continu (ou deux moteurs pas à pas) avec des courants jusqu'à 600mA pour chaque moteur à courant continu. Autrement dit, pour les petites voitures fera l'affaire. Pour les moteurs de mon châssis, le courant de décrochage de 800 mA prescrit par les Chinois - la consommation maximale du moteur, j'ai donc suggéré que j'en avais assez. Un peu mal. Maintenant, je préfère choisir Adafruit Motor Shield V2 - cette écharpe est beaucoup mieux adaptée à la tâche et libère beaucoup de ressources que ma première version sélectionne. Il n'y a même pas de manque de courant - avec la première carte, cela est également résolu en installant un autre jumeau au-dessus de chaque puce L293D ou, en général, en les remplaçant par une puce SN754410 similaire en câblage. J'attire également l'attention sur le fait que les moteurs doivent être conçus pour 6 V ou plus. Les Chinois disentque j'ai des moteurs 6V là-bas et que je suis trop paresseux pour grimper pour vérifier. Parce que les moteurs 3V fonctionneront également, mais pas si longtemps. Dans tous les cas, ils sont de taille standard et faciles à changer. Soit dit en passant, vous vous dites qu'avant le début de l'agitation avec le projet, je n'avais aucune idée de ce qui était écrit ci-dessus, mais tout cela est facilement trouvé, maîtrisé et appliqué.Le «bouclier» est connecté à la puissance de l'ensemble du système. De lui sont alimentés et moteurs et Arduinka et autres cerclages. La puissance de ce projet est de deux batteries Li-Ion 18650, produisant environ 7,4 V avec un courant allant jusqu'à 3 A (peut-être plus, mais je ne vérifierai pas mieux). En tant qu'alimentation de secours, la sortie vers une alimentation externe via le connecteur 2.1x5.5mm est également soudée au commutateur. Bien sûr, n'oubliez pas de retirer les piles avant de connecter une source externe, car rien de bon ne viendra d'une utilisation parallèle. Certainement. Néanmoins, il est nécessaire de fournir une alimentation externe, car dans le froid des batteries Li-Ion s'épuisent très, très, très rapidement et peuvent même durablement.L'arduinka communique avec la caméra via le module relais. Il est clair que tout ce qu'elle peut faire est de fermer le «bouton» de la télécommande. Et là, cela dépend de l'appareil photo quel type d'exposition cela fonctionne (plus précisément, quel type d'exposition le photographe a défini). Bien sûr, si l'appareil photo est en mode Bulb, nous contrôlons l'exposition pendant la durée de la bobine «bouton». Pour la prise de vue nocturne, il n'y a rien à faire sans cela.Par conséquent, dans le programme, nous définissons non seulement la libération de la bobine, mais également la possibilité de tenir la bobine incluse dans le temps dont le photographe a besoin. J'ai Nikon, il a donc fallu un connecteur de télécommande spécifique, que j'ai emprunté à la console de prise de vue en accéléré chinoise. Les heureux supporters de Canon le font avec de simples fiches jack, je les envie.Pour que le photographe puisse communiquer avec le programme, des organes directs et de rétroaction sont conçus - LCD 2004 I2C bleu et module joystick KY-023. Le premier est un écran LCD avec rétro-éclairage bleu avec une matrice de 20 caractères sur 4 lignes et un alphabet latin dans le générateur de caractères. Son adaptateur I2C a sensiblement augmenté de prix - il s'agit d'une charnière, vous permettant de communiquer avec l'arduinka en seulement deux fils. Plus précisément, même un à la fois, mais le câblage est tout un deux et, bien sûr, deux de plus pour la mise à la terre (+ et -, oui). Étant donné que la plupart des ports Arduino ont été mangés par le bouclier - «bouclier» pour la commande du moteur (ce qui est l'avantage du bouclier V2 - il communique également via I2C, laissant les ports libres), nous n'avons pas d'autre choix. Trois ports supplémentaires (deux entrées analogiques et une numérique) ont un joystick pour manger. Ceci est un appareil assez simple dans lequel en faisant pivoter le joystick le long de deux axes, nous changeons leur résistance,et l'arduinka dessus peut dire assez précisément au programme où et combien nous l'avons rejeté, et même en appuyant sur le joystick, nous fermons le contact du bouton. Au total, nous avons au moins cinq possibilités de dire quelque chose au programme en utilisant seulement trois ports (mais il y a cinq câbles, alimentation à la terre, oui). Le joystick lui-même, cependant, ne provoque pas d'émotions agréables. Très sensible, peu pratique à installer, mais ... ça marche, d'accord.Enfin, un moteur pas à pas (pas à pas) 28BYJ-48 est impliqué dans l'objectif de la caméra de ce prototype. Il a également besoin d'un pilote - une puce qui alimente un gros courant à une commande à faible courant de l'arduinka. Il s'agit ici d'un module module avec ULN2003. Étant donné que le mouvement des bagues d'objectif doit être très précis et reproductible - un moteur à courant continu conventionnel n'est pas applicable. Le moteur pas à pas vous permet de tourner un peu l'objectif avec une précision parfaite, et la prochaine fois un peu plus - très précisément et sans secousses qui gâchent tout laps de temps. Bien sûr, il n'est pas intégré à l'objectif, et c'est là que le problème commence. Il se tord à travers une courroie de distribution de taille GT2 de 6 mm de large. Comme on pourrait le supposer, la fiabilité de la torsion dépend de la tension de la courroie et de son adhérence à la surface caoutchoutée des anneaux de lentille. Mais je n'imaginais pas et croyais qu'il n'y aurait pas de problèmes. Sera.Étant donné que sur ce prototype, la marche est située à gauche de la caméra, une ceinture bien tendue provoque la chute de la caméra du boulon du trépied dès qu'elle n'est pas serrée. S'il avait été à droite, au contraire, il aurait retardé, mais la tristesse est là ... Et l'embrayage est en quelque sorte instable. Vous pouvez l'augmenter en collant sur l'anneau une sorte de revêtement avec une meilleure adhérence. Ou réorganisez le moteur de l'autre côté. Jusqu'à ce que je décide quel est le meilleur.Je vais maintenant parler de la logique de tout cela. En logique, tout est très primitif - si vous n'essayez pas d'explorer comment tout fonctionne. Ainsi, notre microprocesseur «sans prétention» (atmega328) possède un kilo-octet de mémoire morte réinscriptible (je veux dire EEPROM) qui stocke les valeurs des paramètres de prise de vue en accéléré. Il y a 32 Ko de mémoire flash non volatile pour le stockage du programme et le réamorçage du chargeur de démarrage. Il y a 2 Ko de RAM que notre programme utilise pour stocker des variables pendant le fonctionnement. Bien sûr, il y a encore un tas de registres, de minuteries et même un thermomètre à l'intérieur, mais il n'est pas nécessaire de le savoir maintenant.Lorsque l'alimentation est appliquée, le bootloader en flash lance notre programme écrit par celui-ci. Tout d'abord, il place dans la RAM toutes les variables et constantes qui y sont écrites, y lit les paramètres de prise de vue de l'EEPROM et affiche sur l'écran LCD les alternatives pour les actions futures proposées au photographe. Après la conclusion, il tourne dans un cycle d'attente pour toute réaction du photographe - jusqu'à ce que les batteries soient complètement déchargées. Les actions suivantes sont disponibles:- contrôle direct des entraînements du robot - pour vérifier l'opérabilité des connexions, évaluer le calibrage de travail des moteurs et mettre le châssis en position de départ.- programmation du time-lapse de prise de vue - modification des mêmes paramètres de prise de vue définis par le photographe.- tester les performances de prise de vue - exécution pas à pas d'une prise de vue programmée qui n'inclut pas l'exposition et les pauses entre les étapes («images»).- démarrer la photographie en accéléré - exécution pas à pas du programme de prise de vue en fonction des paramètres saisis.Le cycle d'exécution du programme de prise de vue consiste à répéter les étapes-images - leur nombre est égal au nombre d'images dans la vidéo définie par le photographe. Elle estexécutée dans l'ordre suivant: 0) affichage sur l'écran LCD des paramètres de prise de vue actuels et de sa progression.1) exposition. Commutez le relais et attendez le temps spécifié dans les paramètres.2) mouvement d'avant en arrière. Nous allumons les moteurs et nous nous déplaçons à la distance spécifiée dans les paramètres.3) rotation de la caméra de gauche à droite. Nous faisons pivoter la caméra vers la gauche ou la droite aux degrés spécifiés dans les paramètres. La rotation peut se produire non pas à chaque image, mais peut-être à chaque seconde, troisième, cinquième, dixième - dépend du photographe réalisant ses fantasmes.4) rotation de la bague d'objectif selon l'angle spécifié par les paramètres. Plus précisément, les paramètres spécifient le nombre d'étapes pour l'étape, et combien d'étapes conduisent à l'angle de rotation souhaité de la bague que le photographe calcule à l'avance - dans le mode de contrôle direct de l'étape.5) attendre une pause entre les trames. Si le cadre a été réglé pour se déplacer, il est logique de faire une pause d'au moins deux secondes, car la plate-forme doit se calmer.Et puis, si l'utilisateur n'a pas interrompu l'exécution, nous passons au début de la prochaine étape.En général, pas de mathématiques brutales ou d'algorithmes incompréhensibles pour un simple photographe.Pourquoi est-ce que j'appelle cela un prototype, et non pas courir pour établir la production industrielle, les brevets, la certification et les ventes internationales?Premièrement, c'est toujours un jouet. Je me suis laissé aller, satisfait ma curiosité en étudiant le microcontrôleur et son harnais, j'ai eu quelques idées en tête sur la mise en place de certains appareils électroménagers, mais, hélas, je n'ai pas appris à gagner de l'argent. Mais le coût était assez bon - à un prix pouvant atteindre une centaine de dollars, c'est un appareil assez décent qui tire un reflex numérique sur lui-même.Deuxièmement, il y a suffisamment de problèmes et il y a quelque chose à finir. Je vais énumérer brièvement:- à propos de la ceinture shagovik et de l'objectif ont déjà été écrits ci-dessus.- alimenter le moteur à partir d'un canal L293D est suffisant pour que le robot fonctionne avec désinvolture sur une surface plane, même inclinée à un angle notable vers le haut, mais ce n'est catégoriquement pas suffisant sur des routes impraticables - pour conduire un robot à travers l'herbe et le sable ... ce n'est pas bon. En partie, j'ai décidé cela en ajoutant des moteurs à un autre canal du deuxième L293D. Il décide de manière décisive de remplacer les moteurs de l'entraînement sur chenilles par des moteurs plus puissants et de les utiliser avec un pilote qui produit un bon courant.- avec la rotation de la plate-forme n'est pas non plus la glace. Tourner moins d'un degré est difficile à terminer. Besoin d'un moteur pas à pas. La boîte de vitesses, encore une fois, a un jeu complètement jouet - n'oubliez pas l'origine et le but du châssis! Étant donné que la rotation pendant la prise de vue en accéléré est effectuée dans une direction - le jeu est sélectionné rapidement et plus loin n'est pas si critique, mais s'il y a des mouvements de va-et-vient, des mouvements de plateforme involontaires sont possibles - dans le jeu.- Je ne pensais pas à la façon de réaliser tourner l’appareil photo de haut en bas. Ainsi, bien que le projet s'appelle 4DoF, nous n'avons en fait que trois degrés de liberté.- les moteurs et leurs entraînements sur chenilles ont des caractéristiques différentes. Pas exactement identique. Par conséquent, avec un mouvement formellement rectiligne du robot conduira un peu sur le côté. Selon mes estimations - environ 10 cm sur cinq mètres. J'ai supposé cela et j'avais l'intention d'introduire une correction de cap en appliquant un retour basé sur le module GY-273 HMC5883L mentionné dans la liste des magnétomètres.Il a été supposé que, après avoir mémorisé la valeur du champ dans la direction du mouvement avant de commencer le mouvement dans le cadre, le robot, à la fin du mouvement prescrit, travaillera avec une piste pour corriger le parcours à la similitude des valeurs mesurées pendant la correction du champ et stockées. Il n'est pas clair à l'avance si la précision du magnétomètre est suffisante pour cela ou au lieu de la rétroaction, il vous suffit d'entrer la correction calculée empiriquement pour ce prototype pour la durée de fonctionnement d'un moteur. Tout simplement parce que le module acheté s'est avéré ne pas être entièrement opérationnel - au lieu des valeurs du capteur, il y a un bruit, mais je n'ai pas encore reçu de remplacement. Et aussi sur ce capteur, je voulais accélérer la détection de retournement lors du déplacement - pour arrêter la prise de vue. Bien que cela soit utile pour cela.- L'interface est très terne. Joystick peu pratique, inertie du contrôle du robot (plus de détails plus tard), manque de beaux graphismes, boutons, boucles, gadgets et fanfare - certains personnages obscurs et ceux en latin. En général, un produit à but non lucratif, c'est sûr ...est une horreur générale du genou du produit. Beaucoup de fils, un mouchoir en quelque sorte poussé, fixé et dépassant ça et là. Ce n'est clairement pas comme un beau jouet blanc pour un magasin.
Troisièmement, il y a encore plus à développer le projet! En plus de résoudre ces problèmes et de créer un look commercial. Vraiment! Par exemple, l'inertie de l'interface mentionnée ci-dessus a été prise du désir de mettre en œuvre la télécommande et de recevoir la télémétrie d'un robot. Oui oui Le microcontrôleur, même une chose vraiment très puissante, fonctionne simplement de manière inefficace entre mes mains. Tout pouvait voler, mais les lacunes de la programmation et l'utilisation des bibliothèques standard conduisent au fait que, en contrôlant le joystick, il faut attendre un certain temps pour que le robot réponde à l'action. En cours de route, le robot est prêt à le contrôler à partir d'autres appareils. Vrai, vrai. Déjà au stade d'un tel prototype, il est tout à fait possible de le contrôler depuis un smartphone ou un ordinateur. Pilotez, ajustez les paramètres de prise de vue, suivez les performances - tout cela peut maintenant être fait de n'importe où.Étonnamment, pour cela, je n'avais même pas besoin d'être un gourou des microcontrôleurs - en quelque sorte, mais cela fonctionne déjà. Bien qu'il vaut mieux ne pas me demander exactement comment. Gloire à Arduino, quoi.Et ensuite? Je vais tirer. Profitez du cliché ou de la motivation pour le remake-altération. Pour cela, cela a été fait, non? Je n'ai pas l'habitude d'utiliser des outils qui ne sont pas si faciles à utiliser. Et ici, personne ne peut se plaindre, sauf vous.J'espère que j'ai été impressionné par les lecteurs que ce n'est pas si compliqué et même intéressant d'essayer pendant votre temps libre cette petite idée qui se cachait dans le coin du cerveau du lecteur. Cependant, c'est même juste "c'est ce genre de distorsions qui se produisent!" ce sera suffisant pour moi. Merci d'avoir lu et de votre temps.Si quelqu'un n'est pas trop paresseux pour passer encore plus de temps - vous pouvez vous familiariser avec le code écrit. Il n'y a rien d'intéressant ou de bon dedans, mais ça marche. Je vous préviens à l'avance qu'il y a 800 lignes.» 4DOF Timelapse Robot V1.2Oui! Et achetez-moi une maison d'été, enfin! Je suis terrifiée de voir à quel point j'attends l'acheteur!En conclusion, voici à quoi ressemble le robot «en direct»: