Inhoudsopgave:

Object volgen - Bediening cameramontage - Ajarnpa
Object volgen - Bediening cameramontage - Ajarnpa

Video: Object volgen - Bediening cameramontage - Ajarnpa

Video: Object volgen - Bediening cameramontage - Ajarnpa
Video: Sony ZV-E10 Settings for Video | Every Menu for Video 2024, Juli-
Anonim
Image
Image

Dag iedereen, In deze Instructable zal ik je de vorderingen laten zien die zijn gemaakt voor mijn Object Tracking Project. Hier kun je de vorige Instructable vinden: https://www.instructables.com/id/Object-Tracking/en hier vind je een YouTube-afspeellijst met alle de video's en code-uitleg:

Dus we zijn eindelijk in staat om van de puur software- en coderingswereld naar de echte wereld te gaan, door de camera op een houder te plaatsen en de houder te verplaatsen om het object te volgen, laten we eens kijken hoe!

Stap 1: Camerabevestiging:

Camerabevestiging
Camerabevestiging

Dit is de camerabevestiging die we gaan gebruiken. Het is niet volledig compatibel met de webcam en de manier waarop ik de camera op de houder heb bevestigd, is op zijn zachtst gezegd EEN WEINIG rudimentair:D

Maar voor nu is het voldoende en in de toekomst zal ik waarschijnlijk een soort van adapter 3D printen of het helemaal opnieuw bouwen.

Dit soort montage wordt vaak "pan-and-tilt-montage" genoemd, omdat ze 2 motoren hebben om de pan (rotatie op het horizontale vlak) en tilt (rotatie rond de y-as of "up-down") te regelen, zoals weergegeven in De foto.

Stap 2: Arduino en RC-servomotoren:

Arduino en RC-servomotoren
Arduino en RC-servomotoren

Om de mount te besturen gaan we 2 RC-Servo Motors en een Arduino Uno gebruiken.

Op de afbeelding ziet u de benodigde aansluitingen:

Kantelservo: grond -- breadboard grond

VCC -- breadboard VCC

signaal -- pin D6

Pan servo: grond -- breadboard grond

VCC -- breadboard VCC

signaal -- pin D5

Stap 3: Matlab-code:

Matlab-code
Matlab-code

De Arduino wordt volledig bestuurd met Matlab, met behulp van de arduino-toolbox van Matlab.

In dit gedeelte vind je de code:

blueCircleFollow2.m is de "hoofd"-functie, K_proportional1.m is een hulpscript dat wordt aangeroepen vanuit het andere script, het bevat in feite de proportionele controller.

De gebruikte besturingsbenadering wordt weergegeven in de afbeelding: de referentiepositie die we willen dat de objectcirkel is, is het midden van het scherm, de proportionele controller zal op het servobesturingssignaal werken om de fout te krijgen, gedefinieerd als midden van beeld - cirkel centrum, naar 0.

Stap 4: Optredens:

Hier vind je twee video's die laten zien hoe het algoritme en de controller presteerden.

In de eerste, langere video worden de code, structuur en besturingsstrategie dieper uitgelegd, de tweede video is een uittreksel van de eerste die alleen de video bevat van het systeem dat het object volgt.

Zoals je kunt zien, is het algoritme meer dan in staat om het object te volgen wanneer het wordt verplaatst, maar ik geloof dat er ruimte is voor verbeteringen, door een complexere controller te introduceren dan alleen proportioneel (coff PID coff coff) en een paar andere ideeën.

Als je vragen hebt, aarzel dan niet om ze in de reacties te stellen, en als je de volgende stappen wilt zien, abonneer je dan op mijn YouTube-kanaal, ik zal alles daar blijven plaatsen!

Aanbevolen: