Home > Technologie > Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

0
Advertisement

Computergesteuertes quadrotor: Der einfachste Weg

In diesem Projekt verwandle ich ein Radio Controlled (RC) Quadrotor in eine computergesteuerte Drohne. Ähnlich meinem vorherigen Projekt "Kontrolle ein RC Auto mit dem Computer", ist mein zukünftiges Ziel, eine billige experimentelle autonome Quadratur für Control / SLAM / Navigation Algorithmus Forschungszweck zu machen. In der Zukunft denke ich, eine Überkopf-Webcam zu verwenden, um die Position des Quadrotors zu erkennen und diese Position an den Computer zu senden, der den Quadrotor gemäß verschiedenen Navigationsalgorithmen steuert. Da meine Arbeit in der Robotik auf MATLAB basiert, entwickelte ich einen MATLAB-Code, der es dem Benutzer erlaubt, den Quadrotor über die Tastatur zu steuern.

Der Hauptbeitrag dieses Projektes ist, dass es nicht sehr gute Hardware und Programmierkenntnisse zu verwirklichen braucht. Grundlegende Elektronik und MATLAB / Arduino Kodierung ist genug, um Ihr RC quadrotor / Hubschrauber / Flugzeug in eine computergesteuerte Drohne umzuwandeln. Ich habe ähnliche Projekte gesehen, die regelmäßige RC Hubschrauber / Quadroters zu computergesteuert umwandeln, aber die meisten von ihnen erfordern gute Kenntnisse der Kommunikationsprotokolle (Bluetooth, SPI, etc.) und / oder das Lesen / Entschlüsseln der Befehle, die durch den Mikrocontroller des Senders gesendet werden. Diese Befehle werden dann von einem Mikrocontroller gesendet, der seine Befehle vom Computer empfängt. Beispiele für diese (kühlen) Projekte sind:

Http: //www.instructables.com/id/Fly-a-Mini-drone-W ...

Http: //www.instructables.com/id/Easy-Android-contr ...

Http: //www.instructables.com/id/Brain-Controlled-R ...

https://github.com/alvarop/protox

Http: //dzlsevilgeniuslair.blogspot.com/2013/11/mor ...

Allerdings sollte es ein einfacher Weg, um das endgültige Ziel zu realisieren. Darüber hinaus verwandelt die meisten der verfügbaren Projekte die Quadro / Hubschrauber / Flugzeug in eine Computer-nur kontrollierte Drohne. In diesem Projekt bleibt der ursprüngliche Sender im Einsatz, und das Drücken einer Taste schaltet das Projekt zwischen einer computergesteuerten oder einer manuell gesteuerten Drohne um.

Dieses Projekt besteht aus einem leichten Tiefpassfilter (LPF), der zwischen dem Sender und einem Arduino Mikrocontroller angeschlossen ist. Wenn die Drohne im manuellen Modus ist, wird der Übermittler benutzt, um die Drohne ähnlich jedem RC quadrotor / Hubschrauber / Flugzeug zu steuern. Wenn die Drohne im PC-Modus ist, empfängt das Arduino Steuerungen vom Computer und gibt die geeigneten PWM-Signale aus, die durch die LPF-Schaltung in analoge Signale umgewandelt werden. Die LPF-Schaltung ist so mit der Sendeschaltung verbunden, dass analoge Signale die Ausgänge der Joysticks erreichen. Ein manueller / PC-Schalter trennt die LPF-Anschlüsse, so dass die Drohne von den Ausgängen der Joysticks erneut gesteuert wird.

In der Zukunft denke ich, ein System ähnlich dem folgenden zu entwickeln:

Http: //www.prweb.com/releases/VECPAV/Draganflyer/p ...

Schritt 1: Verstehen Sie, wie der Sender arbeitet

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Zunächst müssen Sie verstehen, wie funktioniert der Sender Schaltung. Der Sender besteht aus einem Mikrocontroller, der mit einem 2,4 Ghz Sender, vier Potentiometern und einer Reihe von Drucktasten verbunden ist. Die Potentiometer erkennen die Joystick-Befehle und senden diese als analoge Spannungen an den Mikrocontroller. Der Mikrocontroller sendet dann digitale Pakete als Befehle an den Quadrotor unter Verwendung des 2,4 GHz-Senders. Die Drucktasten dienen zum Zuschneiden und Zurücksetzen.

Wir können den Quadrotor unter Verwendung des Computers steuern, sogar durch Erfassen der digitalen Paketbefehle, die durch den Controller gesendet werden und sie durch den 2,4-GHz-Sender mit dem Computer senden; Oder indem die entsprechenden analogen Spannungen der Joysticks an den Mikrocontroller gesendet werden. Das erste Verfahren erfordert die Verwendung eines digitalen Datenanalysators zum Lesen und Kopieren der vom Mikrocontroller gesendeten Pakete. Das zweite Verfahren erfordert die Verwendung eines Mikrocontrollers, der Befehle vom PC empfängt und die entsprechenden analogen Spannungen direkt an die Mikrocontroller-Joystick-Eingänge ausgibt.

Ich habe die zweite Methode gewählt, da ich keinen digitalen Datenanalysator habe. Zuerst müssen Sie die Joystickverbindungsstifte finden; Sie befinden sich unterhalb des Joysticks auf der anderen Seite der Platine. Die vierten und fünften Figuren zeigen, wie die Ausgangsstifte der Joystick-Potentiometer zu finden sind.

Lassen Sie uns nun die analogen Spannungsbefehle überprüfen, die von den Joysticks gesendet werden. Lötdrähte an den Potentiometerstiften und an Masse (- Leistungsklemmen) anschließen und ein Voltmeter zwischen Potentiometerausgang und Masse anschließen und die Ausgangsspannung für verschiedene Joystickkonfigurationen überprüfen (Bild 6, 7 und 8). Für meinen Quadrotor variiert die Spannung zwischen 0 und 3,26 Volt, mit einem Mittelpunkt von 1,7 Volt.

Werbung

Schritt 2: Nehmen Sie die Änderungen vor

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Nach dem wesentlichen Prüfschritt beginnen wir mit der Änderung des Senders. Zuerst müssen wir die Verbindung zwischen den Potentiometerausgängen und dem Mikrocontroller schneiden. Dies ist wichtig, da im PC-Modus nur die vom PC gesendeten analogen Befehle vom Mikrocontroller erkannt werden müssen. So mit einer Rasierklinge, schneiden Sie die Verbindung zwischen dem Potentiometer Mittelstift und dem Mikrocontroller. Als nächstes öffnen Sie ein kleines Fenster hinter dem Schnitt in der grünen Malerei, die die Verbindung zwischen dem Potentiometer Pin und dem Mikrocontroller abdeckt. Wenn wir das Fenster mit dem Potentiometerstift verbinden, erhält der Mikrocontroller Befehle von den Joysticks. Wenn diese Verbindung entfernt wird und eine analoge Spannung an das kleine Fenster angeschlossen wird, nimmt der Sender diese Spannung als Befehl an. Der Handschalter / PC-Schalter sollte zwischen dem kleinen Fenster und dem Potentiometerstift angeschlossen werden.

Lötdrähte an den Mittelpins der Potentiometer anschließen. Durch das Senden analoger Spannung über diese Drähte, kann der Quadrotor über PC und / oder Arduino gesteuert werden. Beachten Sie, dass in den Abbildungen oben, lötete ich die Drähte, bevor Sie den Schnitt und das Fenster unter Verwendung der Rasierklinge durchführen.

Führen Sie diese Änderungen an allen Potentiometern durch. Verbinden Sie auch ein Stromkabel mit dem Bohrloch. Dadurch können Sie einen externen Adapter anschließen, um die Batterien loszuwerden, wenn die Drohne vom Computer gesteuert wird

Schritt 3: Stellen Sie die Schaltung

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Sobald die Änderungen am Sender durchgeführt werden, ist es an der Zeit, die Tiefpaßfilterschaltung herzustellen. Das Tiefpaßfilter ist sehr wichtig, da das Arduino keine analoge Spannung erzeugen kann. Um analoge Spannung mit Arduino zu erzeugen, erzeugen wir Pulsweitenmodulierte (PWM) Signale und passieren sie durch die Passfilterschaltung. Die Frequenz des PWM-Signals ist konstant, und die Tastverhältnisse der PWM-Signale, die durch die LPF-Schaltung geleitet werden, bestimmen die Größe der resultierenden analogen Spannung.

Ich habe Tests mit vielen Widerstand und Kondensator-Werte, um die beste Schaltungskonfiguration zu wählen. Ich habe die Schaltung auf einem Prototyp Board, und verwendet Pins, um es möglich, dass die Schaltung direkt über die Arduino-Platine angeschlossen werden.

Schritt 4: Die Codes: MATLAB + Arduino

Computergesteuertes quadrotor: Der einfachste Weg

Nach Abschluss der Hardware ist es an der Zeit, die Codes zu schreiben.

Ich verwendete MATLAB Programm, um den Code zu schreiben, der die Steuerbefehle von der Tastatur empfängt und die erforderlichen Befehle zum Arduino über den USB-Hafen des Computers (serielle Schnittstelle für das Arduino) sendet.

Warum MATLAB?

Tatsächlich können Sie jede Programmiersprache wie Java, C-Programmierung, Visual Basic etc .. Ich habe MATLAB gewählt, weil ich es verwendet, um Programme für Boden-Roboter zu entwickeln, und ich denke, diese Programme verwenden, um eine autonome Version des Quadrotors zu entwickeln .

Tastaturpfeile werden verwendet, um die Vorwärtsbewegung (Bewegung entlang der x-Achse) und links-rechts (Bewegung entlang der y-Achse) durchzuführen. Buchstabe W wird für oben verwendet, und Buchstabe S für unten; D Buchstabe wird für die Gierrechtsdrehung verwendet, und Ein Buchstabe für die Gier Linksdrehung. Schließlich schließt ENTER die serielle Schnittstelle und das Programm und stoppt alle Rotoren.

Das Haupt-MATLAB-Programm ist "RC_QuadrotorControl.m", führen Sie es, um den Quadrotor zu steuern. Die Funktion "getkey.m" wird von dem Code verwendet, um die gedrückten Tasten der Tastatur zu erhalten, und sie sollte sich im gleichen Ordner mit dem Hauptcode befinden.

Der Arduino-Code "PCQuadrotor.ino" ist einfach: er gibt für jede Variable (Höhe, x, y, Gier) ein entsprechendes PWM-Signal aus (entsprechend umgewandelt in das analoge Signal des Tiefpaßfilters).

Die Kommentare in den MATLAB- und Arduino-Codes reichen aus, um zu erklären, wie die Codes funktionieren.

Schritt 5: Hinzufügen der Schalter

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Computergesteuertes quadrotor: Der einfachste Weg

Ich habe lange gewartet, bis ich dieses Projekt beendete, weil ich keine geeigneten Schalter finden konnte. Ich noch nicht in der Lage, gute Schalter zu finden, so versuchte ich, am Ende mit einer schönen Fernbedienung mit verfügbaren Schaltern und meine Kinder Plastik spielen Ziegelsteine ​​... sorry Kinder.

Schritt 6: Testen (Video) - zukünftige Arbeit

Computergesteuertes quadrotor: Der einfachste Weg

Dieser Schritt zeigt, wie dieses Projekt funktioniert. Die Wahl des manuellen Modus ermöglicht es dem Benutzer, den Quadrotor mit der Fernbedienung zu steuern, indem er die Joysticks manipuliert. Durch Anwahl des PC-Modus werden die Joysticks deaktiviert und der Quadrotor kann nur über den Arduino / Computer / seriellen Port gesteuert werden.

Das folgende Video zeigt das Testen dieses Projekts. Nun ist es möglich, einen MATLAB-Code zu schreiben, der den Quadrotor autonom steuert, um einem gegebenen Pfad zu folgen oder eine spezielle Aufgabe gemäß vordefinierten Funktionen auszuführen. Dies bleibt für die zukünftige Arbeit. Beachten Sie, dass eine Overhead-Kamera für Positionsrückmeldung verwendet werden soll. Dies ist notwendig, weil der Computer Position und Position Rückkopplung aus dem Quadrotor benötigt, um die Quadrotorsteuerung durchzuführen.

Hinweis: Mein Quadrotor wird manchmal unerwartet zurückgesetzt, wenn Sie den manuellen oder PC-Modus verwenden.

Related Reading