Table des matières:

Suivi d'objet - Contrôle du support de caméra : 4 étapes
Suivi d'objet - Contrôle du support de caméra : 4 étapes

Vidéo: Suivi d'objet - Contrôle du support de caméra : 4 étapes

Vidéo: Suivi d'objet - Contrôle du support de caméra : 4 étapes
Vidéo: Détection et suivi d’un objet en mouvement à l’aide d’une webcam contrôlée par Arduino 2024, Juillet
Anonim
Image
Image

Bonjour à tous, Dans cet Instructable, je vais vous montrer les progrès réalisés pour mon projet de suivi d'objets. les vidéos et explications du code:

Ainsi, nous sommes enfin capables de passer du monde purement logiciel et du codage au monde réel, en mettant la caméra sur une monture et en déplaçant la monture pour suivre l'objet, voyons comment !

Étape 1: Montage de la caméra:

Support de caméra
Support de caméra

C'est le support de caméra que nous allons utiliser. Elle n'est pas totalement compatible avec la webcam et la façon dont j'ai fixé la caméra à la monture est pour le moins rudimentaire:D

Mais cela ira pour le moment et à l'avenir, j'imprimerai probablement en 3D une sorte d'adaptateur ou le construirai complètement à partir de zéro.

Ce type de monture est souvent appelé "montage panoramique et inclinaison" car ils ont 2 moteurs pour contrôler le panoramique (rotation sur le plan horizontal) et l'inclinaison (rotation autour de l'axe y ou "haut-bas"), comme indiqué dans l'image.

Étape 2: moteurs Arduino et RC-Servo:

Moteurs Arduino et RC-Servo
Moteurs Arduino et RC-Servo

Pour contrôler la monture, nous allons utiliser 2 servomoteurs RC et un Arduino Uno.

Dans l'image, vous pouvez voir les connexions nécessaires:

Servo d'inclinaison: sol - sol de la planche à pain

VCC -- maquette VCC

signal -- broche D6

Servo panoramique: sol - sol de la planche à pain

VCC -- maquette VCC

signal -- broche D5

Étape 3: Code Matlab:

Code Matlab
Code Matlab

L'Arduino sera entièrement contrôlé avec Matlab, en utilisant la boîte à outils arduino de Matlab.

Dans cette section, vous pouvez trouver le code:

blueCircleFollow2.m est la fonction "principale", K_proportional1.m est un script auxiliaire appelé depuis l'autre script, il contient essentiellement le contrôleur proportionnel.

L'approche de contrôle utilisée est illustrée dans l'image: la position de référence à laquelle nous voulons que le cercle de l'objet soit au centre de l'écran, le contrôleur proportionnel agira sur le signal de commande des servos pour obtenir l'erreur, définie comme centre de l'image - cercle centre, à 0.

Étape 4: Spectacles:

Vous trouverez ici deux vidéos montrant les performances de l'algorithme et du contrôleur.

Dans la première vidéo, plus longue, le code, la structure et la stratégie de contrôle sont expliqués plus en détail, la seconde vidéo est un extrait de la première ne contenant que la vidéo du système traquant l'objet.

Comme vous pouvez le voir, l'algorithme est plus que capable de suivre l'objet lorsqu'il est déplacé, mais je pense qu'il y a place pour des améliorations, en introduisant un contrôleur plus complexe que simplement proportionnel (coff PID coff coff) et quelques autres idées.

Si vous avez des questions n'hésitez pas à les poser en commentaire, et si vous voulez voir les prochaines étapes abonnez-vous à ma chaîne youtube, je continuerai à tout mettre là-bas !

Conseillé: