Inhaltsverzeichnis:

Prototyp Kamerastabilisator (2DOF) - Gunook
Prototyp Kamerastabilisator (2DOF) - Gunook

Video: Prototyp Kamerastabilisator (2DOF) - Gunook

Video: Prototyp Kamerastabilisator (2DOF) - Gunook
Video: Simple 3D Printed Camera Stabilizer 2024, Juli
Anonim
Prototyp Kamerastabilisator (2DOF)
Prototyp Kamerastabilisator (2DOF)

Autoren:

Robert de Mello und Souza, Jacob Paxton, Moises Farias

Danksagungen:

Ein großes Dankeschön an die Maritime Academy der California State University, ihr Engineering Technology-Programm und Dr. Chang-Siu, die uns geholfen haben, unser Projekt in solch komplizierten Zeiten zum Erfolg zu führen.

Einführung:

Ein Kamerastabilisator oder Kamera-Gimbal ist eine Halterung, die Kameraerschütterungen und andere ungerechtfertigte Bewegungen verhindert. Einer der ersten Stabilisatoren, die jemals erfunden wurden, verwendete Stoßdämpfer/Federn, um plötzliche Bewegungsänderungen der Kamera zu dämpfen. Andere Arten von Stabilisatoren verwenden Gyroskope oder Drehpunkte, um dieselbe Aufgabe zu erfüllen. Diese Geräte stabilisieren ungewollte Bewegungen in bis zu drei verschiedenen Achsen oder Dimensionen. Dazu gehören die x-, y- und z-Achse. Dies bedeutet, dass ein Stabilisator Bewegungen in drei verschiedene Richtungen dämpfen kann: Wanken, Nicken und Gieren. Dies wird normalerweise mit 3 Motoren erreicht, die mit einer elektronischen Steuerung gesteuert werden, von denen jeder einer anderen Achse entgegenwirkt.

Wir waren aus mehreren Gründen außerordentlich an diesem Projekt interessiert. Wir alle genießen verschiedene Outdoor-Aktivitäten wie Snowboarden und andere Sportarten. Aufgrund der erforderlichen Bewegung ist es schwierig, qualitativ hochwertiges Filmmaterial von diesen Aktivitäten zu erhalten. Ein paar von uns besitzen einen echten Kamerastabilisator, der im Laden gekauft wurde, und deshalb wollten wir untersuchen, was es braucht, um so etwas zu erstellen. In unseren Labor- und Vorlesungsklassen haben wir gelernt, wie man mit Servomotoren mit Arduino interagiert, die erforderliche Codierung, um sie zum Laufen zu bringen, und die Theorie hinter der elektronischen Schaltung, die uns beim Design der Schaltungen hilft.

*HINWEIS: Aufgrund von COVID-19 konnten wir dieses Projekt nicht vollständig abschließen. Dieses anweisbare ist eine Anleitung für die Schaltung und den Code, die für den Prototyp des Stabilisators erforderlich sind. Wir beabsichtigen, das Projekt abzuschließen, wenn die Schule wieder aufgenommen wird und wir wieder Zugang zu 3D-Druckern haben. Die fertige Version wird einen Batteriekreis und ein 3D-gedrucktes Gehäuse mit Stabilisatoren haben (siehe unten). Bitte beachten Sie auch, dass das Ausschalten der Servomotoren über das Arduino 5V-Netzteil im Allgemeinen eine schlechte Praxis ist. Wir tun dies lediglich, um das Testen des Prototyps zu ermöglichen. Ein separates Netzteil wird im endgültigen Projekt mitgeliefert und ist im Schaltplan unten dargestellt.

Lieferungen

-Arduino UNO-Mikrocontroller

-Breadboard

-Draht-Jumper-Kit

-MPU6050 Trägheitsmesseinheit

-MG995 Servomotor (x2)

-LCD1602-Modul

-Joystick-Modul

Schritt 1: Projektübersicht

Image
Image

Oben ist ein Video unseres Projekts und zeigt auch eine funktionierende Demonstration.

Schritt 2: Theorie und Betrieb

Zustands-/Logikdiagramm
Zustands-/Logikdiagramm

Zur Stabilisierung unserer Kamera haben wir zwei Servomotoren verwendet, um die Nick- und Rollachse zu stabilisieren. Eine Inertial Measurement Unit (IMU) erfasst Beschleunigung, Winkelbeschleunigung und Magnetkraft, mit der wir den Winkel der Kamera bestimmen können. Mit einer an der Baugruppe angebrachten IMU können wir die erfassten Daten verwenden, um der Änderung der Bewegung des Griffs mit den Servos automatisch entgegenzuwirken. Darüber hinaus können wir mit einem Arduino Joystick zwei Drehachsen manuell steuern, einen Motor für jede Achse.

In Abbildung 1 sehen Sie, dass der Rollwiderstand durch den Rollservomotor entgegengewirkt wird. Wenn der Griff in Rollrichtung bewegt wird, dreht sich der Rollservomotor in eine gleiche, aber entgegengesetzte Richtung.

In Abbildung 2 sehen Sie, dass der Nickwinkel von einem separaten Servomotor gesteuert wird, der ähnlich wie der Rollservomotor wirkt.

Servomotoren sind eine gute Wahl für dieses Projekt, da sie den Motor, einen Positionssensor, einen kleinen eingebauten Mikrocontroller und eine H-Brücke kombinieren, mit der wir die Motorposition manuell und automatisch über das Arduino steuern können. Das ursprüngliche Design sah nur einen Servomotor vor, aber nach einiger Überlegung entschieden wir uns für zwei. Weitere hinzugefügte Komponenten waren ein Arduino-LCD-Bildschirm und ein Joystick. Der LCD-Bildschirm dient dazu, den aktuellen Status des Stabilisators und den aktuellen Winkel jedes Servos während der manuellen Steuerung anzuzeigen.

Um das Gehäuse für alle elektrischen Komponenten zu erstellen, haben wir Computer-Aided Design (CAD) verwendet und werden einen 3D-Drucker verwenden. Um die elektrischen Komponenten zu halten, haben wir einen Körper entworfen, der auch als Griff dient. Hier werden der IMU-Sensor und der Joystick montiert. Für die Doppelachssteuerung haben wir Halterungen für die Motoren entwickelt.

Schritt 3: Zustands-/Logikdiagramm

Der Code besteht aus drei Zuständen, von denen jeder auf dem LCD-Bildschirm angezeigt wird. Wenn der Arduino mit Strom versorgt wird, druckt der LCD-Bildschirm „Initializing…“und die I2C-Kommunikation mit der MPU-6050 wird gestartet. Die Anfangsdaten des MPU-6050 werden aufgezeichnet, um den Durchschnitt zu ermitteln. Danach wechselt der Arduino in den manuellen Steuerungsmodus. Hier können beide Servomotoren manuell mit dem Joystick verstellt werden. Wenn der Joystick-Knopf gedrückt wird, wechselt er in den Zustand „Auto Level“und die Stabilisierungsplattform bleibt in Bezug auf die Erde waagerecht. Jeder Bewegung in Roll- oder Nickrichtung wird von den Servomotoren entgegengewirkt und so die Plattform waagerecht gehalten. Mit einem weiteren Drücken der Joystick-Taste wechselt der Arduino in einen "Do Nothing State", in dem die Servomotoren gesperrt werden. In dieser Reihenfolge ändern sich die Zustände mit jedem Drücken der Joystick-Taste.

Schritt 4: Schaltplan

Schaltplan
Schaltplan

Das obige Bild zeigt unseren Projektschaltplan im AUS-Modus. Der Arduino-Mikrocontroller bietet die notwendigen Verbindungen zum Betrieb der MPU-6050 IMU, des Joysticks und des LCD-Displays. Die LiPo-Zellen sind direkt mit dem Wechsler verbunden und versorgen sowohl den Arduino Microcontroller als auch beide Servomotoren mit Strom. Während dieser Betriebsart werden die Batterien mit einem 3-Punkt-Doppelschalter (3PDT) parallel geschaltet. Der Schalter ermöglicht es uns, die Last zu trennen, während gleichzeitig das Ladegerät angeschlossen und die Zellen von einer Reihen- auf eine Parallelkonfiguration umgeschaltet werden. Dadurch kann auch der Akku gleichzeitig geladen werden.

Wenn der Schalter in den ON-Modus geschaltet wird, versorgen zwei 3,7-V-Zellen die Arduino- und Servomotoren mit Strom. Während dieser Betriebsart werden die Batterien unter Verwendung eines 3-Punkt-Double-Throw-Schalters (3PDT) in Reihe geschaltet. Dadurch können wir 7,4 V aus unserer Stromquelle beziehen. Sowohl der LCD-Bildschirm als auch der IMU-Sensor verwenden die I2C-Kommunikation. SDA wird verwendet, um die Daten zu übertragen, während SCL die Taktleitung ist, die verwendet wird, um Datenübertragungen zu synchronisieren. Die Servomotoren haben jeweils drei Leitungen: Strom, Masse und Daten. Der Arduino kommuniziert mit den Servos über die Pins 3 und 5; Diese Pins verwenden Pulsweitenmodulation (PWM), um die Daten mit sanfteren Übergängen zu übertragen.

*Batterieladeschaltung ist von Adafruit.com

Schritt 5: Konstruktion

Konstruktion
Konstruktion
Konstruktion
Konstruktion
Konstruktion
Konstruktion

Das grundlegende Design eines Kamera-Gimbals ist recht einfach, da es sich im Wesentlichen nur um einen Griff und eine Halterung für eine Kamera handelt. Der Gimbal besteht aus zwei Servomotoren, um jeder Bewegung in Roll- und Nickrichtung entgegenzuwirken. Die Verwendung eines Arduino Uno erfordert viel Platz, daher haben wir auch ein Gehäuse an der Unterseite des Griffs hinzugefügt, um alle elektrischen Komponenten aufzunehmen. Das Gehäuse, der Griff und die Servomotorhalterungen werden alle in 3D gedruckt, sodass wir die Kosten und die Gesamtgröße minimieren können, da wir die volle Kontrolle über das Design haben. Es gibt mehrere Möglichkeiten, den Gimbal zu entwerfen, aber der größte zu berücksichtigende Faktor besteht darin, zu vermeiden, dass sich ein Servomotor in einen anderen dreht. Im Prototyp ist im Wesentlichen ein Servomotor mit dem anderen verbunden. Wenn wir wieder Zugang zu 3D-Druckern haben, werden wir den oben gezeigten Arm und die Plattform in 3D drucken.

*Die Designs für Arm und Plattform stammen von

Schritt 6: Gesamtergebnisse und mögliche Verbesserungen

Die anfänglichen Recherchen, die wir zu Kamera-Gimbals durchgeführt haben, waren sehr einschüchternd. Obwohl es eine Fülle von Quellen und Informationen zu diesem Thema gab, schien es ein Projekt zu sein, das außerhalb unserer Liga liegen würde. Wir fingen langsam an, recherchierten so viel wie möglich, nahmen aber wenig auf. Jede Woche trafen wir uns und arbeiteten zusammen. Während wir arbeiteten, gewannen wir immer mehr an Schwung und wurden letztendlich weniger ängstlich und mehr begeistert von dem Projekt. Obwohl wir einen zusätzlichen Joystick und einen LCD-Bildschirm hinzugefügt haben, können wir dem Projekt noch viel mehr hinzufügen. Es gibt auch einige Verbesserungen, die hinzugefügt werden könnten, wie z. B. Einschränkungen der manuellen Steuerung, die den Benutzer daran hindern würden, einen Servomotor in den anderen zu drehen. Dies ist ein kleines Problem und könnte auch mit einem anderen Befestigungsdesign behoben werden. Wir haben auch die Möglichkeiten besprochen, eine Pan-Funktion hinzuzufügen. Dies würde es dem Benutzer ermöglichen, mit den Servomotoren in einer bestimmten Zeit über einen Bereich zu schwenken.

Als Team haben wir alle sehr gut zusammengearbeitet. Trotz der Umstände und nur der Möglichkeit, uns virtuell zu treffen, haben wir das Beste daraus gemacht und uns regelmäßig ausgetauscht. Alle Teile und Komponenten wurden einer Person übergeben, was es für den Rest der Gruppe etwas schwieriger machte, bei auftretenden Problemen zu helfen. Wir konnten die aufgetretenen Probleme abarbeiten, aber hätten wir alle die gleichen Materialien gehabt, wäre es etwas einfacher gewesen, zu helfen. Insgesamt war der größte Beitrag zum Abschluss unseres Projekts die Möglichkeit für jedes Mitglied, Verfügbarkeit und Bereitschaft zu haben, sich zu treffen und über das Projekt zu sprechen.