Inhaltsverzeichnis:

Erschwinglicher telefongesteuerter Rover - Gunook
Erschwinglicher telefongesteuerter Rover - Gunook

Video: Erschwinglicher telefongesteuerter Rover - Gunook

Video: Erschwinglicher telefongesteuerter Rover - Gunook
Video: 125 INNOVATIVSTE ELEKTROFAHRZEUGE UND PERSÖNLICHE TRANSPORTE 2024, November
Anonim
Image
Image
Erstellen Sie die GUI
Erstellen Sie die GUI

Vor einiger Zeit habe ich mit dem MotorAir einen telefongesteuerten Rover gebaut. Ich wollte die Grundidee überdenken, aber billigere, allgemein verfügbarere Teile verwenden. Da dies auch auf Arduino basiert, ist es ein großartiges Sprungbrett für mehr als nur einen Rover, der herumfährt. Sie könnten Sensoren, Servos usw. hinzufügen, um dieses Projekt wirklich in jede gewünschte Richtung zu fahren (sehen Sie, was ich dort gemacht habe?).

Schritt 1: Erstellen Sie die GUI

Erstellen Sie die GUI
Erstellen Sie die GUI
Erstellen Sie die GUI
Erstellen Sie die GUI

Dieses Projekt verwendet remotexy.com, einen wirklich coolen Service, der Ihnen einen Drag-and-Drop-GUI-Ersteller bietet, um Ihre eigene App zu erstellen, um Ihr Robotikprojekt von Ihrem mobilen Gerät aus zu steuern. Dies macht dieses Projekt für viele Menschen machbar, für die es sonst außerhalb der Reichweite wäre. Es kann mit einer Vielzahl von Mikrocontrollern (meistens Arduino) und drahtlosen Techniken (Bluetooth, WiFi, Cloud, Ethernet - ok, das ist nicht drahtlos) arbeiten.

Ich ging mit einem 5V Arduino Pro Mini und HC-05, weil ich sie bereits aus anderen Projekten hatte. Obwohl der HC-05 nur Android-kompatibel ist, können Sie, wenn Sie ein Apple-Gerät haben, stattdessen den HM-10 verwenden. Zum Glück fasst ihre Bibliothek alle Besonderheiten der Arbeit mit all diesen verschiedenen Technologien zusammen und kapselt sie ein, sodass Sie sich auf die GUI und die einzigartigen Teile Ihres Projekts konzentrieren können!

Also habe ich zuerst die gewünschte Konfiguration ausgewählt (welche Boards ich verwendet habe). Als nächstes habe ich die gewünschten Steuerelemente aus der linken Spalte gezogen und in der rechten Spalte einige Eigenschaften dafür festgelegt. Dann habe ich auf den grünen Get Source Code Button geklickt und voila, der Großteil der Arbeit war für mich erledigt. Ich installierte ihre Bibliothek in meiner Arduino-IDE, lud den generierten Code herunter und begann, lokal in meiner IDE daran zu arbeiten.

Schritt 2: Passen Sie den Code an

Der Code, den RemoteXY für uns erstellt hat, nimmt die Koordinaten eines virtuellen Joysticks und macht ihn unserer Arduino-Skizze zugänglich.

Jetzt müssen wir zusätzlichen Code hinzufügen, um etwas basierend auf der Position des Joysticks zu tun. Grundsätzlich beinhaltet die Skizze…

  • der RemoteXY-Code, der alles ist, was Sie brauchen, um die virtuellen Joystick-Koordinaten zu erhalten
  • eine Mischfunktion zum Mischen der X- und Y-Koordinaten
  • eine Bewegungsfunktion zum Senden von Befehlen an die Motorsteuerung

In der Schleifenfunktion erhält der Code die aktuellen X- und Y-Joystick-Koordinaten, mischt sie, um die Geschwindigkeit zu bestimmen, die jeder Motorkanal fahren sollte, und sendet dann einen Befehl an die Motorsteuerung, um in dieser Geschwindigkeit und Richtung zu rotieren.

Wenn Sie einen Arduino Pro Mini verwenden, benötigen Sie ein FTDI-Breakout-Board, bevor Sie Ihre Skizze auf Ihren Arduino hochladen können, da der Arduino Pro Mini keinen USB-Anschluss hat. Verwenden Sie einfach den FTDI als Vermittler zwischen dem USB und Ihrem Arduino.

Den von mir verwendeten Code erhalten Sie hier:

Schritt 3: Die Elektronik & Verkabelung

Die Elektronik & Verkabelung
Die Elektronik & Verkabelung
Die Elektronik & Verkabelung
Die Elektronik & Verkabelung
Die Elektronik & Verkabelung
Die Elektronik & Verkabelung

In diesem Projekt habe ich einen Arduino Pro Mini (5V), einen TB6612FNG-Motorcontroller und einen HC-05-Bluetooth-Adapter verwendet. Alles in allem habe ich für diese Teile weniger als 13 US-Dollar ausgegeben… obwohl ich sie vor etwa 1,5 Jahren gekauft habe und der Ort, an dem ich sie gekauft habe, sie nicht mehr trägt. Aber nehmen Sie sich ein Herz, sie sind immer noch recht günstig bei Amazon und anderen Online-Shops zu finden, wenn Sie sich umschauen. Sie erhalten natürlich einen besseren Preis pro Board, wenn Sie ein Multipack finden, das gut funktioniert, wenn Sie ein benutzerdefiniertes Board erstellen, in das Sie alle einstecken können, da es in einem 3er Pack erhältlich ist. Außerdem sind all diese Boards sehr vielseitig und es lohnt sich meiner Meinung nach, ein paar zusätzliche Boards herumzulegen (oder als Ersatz zu verwenden, wenn Sie den Rauch rauslassen).

Der Motorcontroller TB6612FNG ist ein großartiger Motorcontroller für jedes Runt Rover-Chassis, da die in ihnen verwendeten Motoren beim Stillstand nur 0,25 A ziehen und dieser Motorcontroller 1,5 A pro Kanal verarbeiten kann.

Ich habe dies ursprünglich mit Überbrückungsdrähten getestet, die in ein lötfreies Steckbrett eingesteckt waren, aber dann aufgeräumt, indem ich eine Platine im OSH Park herstellen ließ. Dadurch wurde es sauberer, kompakter und langlebiger. Jetzt muss ich meine Komponenten nur noch einstecken, wenn ich sie verwenden möchte, oder ich kann sie einfach herausziehen, um sie für ein anderes Projekt auszuleihen.

Schritt 4: Das Chassis

Das Fahrgestell
Das Fahrgestell
Das Fahrgestell
Das Fahrgestell
Das Fahrgestell
Das Fahrgestell

Ich war aufgeregt, das 6xAA-Batteriefach zu verwenden, das oben einen 9-V-Batterieanschluss hat, da 9V direkt in der Butterzone der meisten Arduino-Boards liegt. Ich wollte es aus dem Weg, aber leicht zugänglich. Ich entschied mich, einige Magnete zu verwenden, um das Batteriefach zu montieren. Also habe ich ein Loch in das Batteriefach gebohrt, um einen Magneten fest zu befestigen, ich habe die Vierkantmutter in einer der Federn versteckt… sie ist ein wenig eng, funktioniert aber sehr gut.

Um den anderen Magneten an der Innenseite des Chassis zu montieren, fand ich (ausgerechnet) eine Zahnriemenhalterung perfekt. Da sich Gegensätze anziehen, habe ich einen Magneten verwendet, der auf der Nordseite versenkt ist, und einen, der auf der Südseite versenkt ist. Die Flachkopfschrauben, mit denen ich sie montiert habe, passen perfekt zum Senker. Ich bedeckte den Magneten auf dem Batteriefach mit ein paar Schichten Isolierband. Dies verringert die Stärke der Anziehung ein wenig und gibt ihr nur ein wenig Dämpfung, wenn sie zusammengehen, und wenn aus irgendeinem Grund einer der Magnete bricht, sollte dies die Reinigung erleichtern.

Schritt 5: Koppeln Sie die App mit Ihrem Projekt

So wird Ihre GUI erstellt, Ihr Code geschrieben und auf Ihr Arduino hochgeladen, und Ihr Projekt ist verdrahtet. Jetzt ist es an der Zeit, Ihr Projekt mit Strom zu versorgen, indem Sie die Batterie anschließen. Als nächstes müssen Sie Ihr Projekt wie bei jedem Bluetooth-Gerät mit Ihrem Telefon koppeln. Auf meinem Android-Telefon (mit Android OxygenOS) musste ich zweimal vom oberen Bildschirmrand nach unten streichen, auf das Zahnrad und dann auf Bluetooth klicken und HC-05 aus der Liste der verfügbaren Geräte auswählen. Dann habe ich die PIN 1234 eingegeben.

Schritt 6: Öffnen Sie die App und fahren Sie

Sobald Sie Ihr Telefon und Ihr Bluetooth-Projekt gekoppelt haben, öffnen Sie die Remote XY Free App (falls Sie dies noch nicht getan haben, ist jetzt ein guter Zeitpunkt, sie aus dem Google Play Store zu installieren). Wenn Sie es zum ersten Mal ausführen, müssen Sie oben rechts auf die Schaltfläche + klicken, Bluetooth auswählen und dann den HC-05 aus der Liste auswählen. In Zukunft sehen Sie beim Öffnen der Remote XY-App eine blaue HC-05-Schaltfläche, auf die Sie tippen, um die Projektoberfläche aufzurufen.

Sobald Sie die zuvor entworfene GUI aufgerufen haben, können Sie den Joystick herumziehen und Ihr Rover sollte sich in Bewegung setzen! Herzliche Glückwünsche! Sie wissen, dass Sie Ihren eigenen telefongesteuerten Rover entwickelt haben! Sobald Sie mit diesem Setup vertraut sind, können Sie Ideen für Ihre eigenen Add-Ons und Verbesserungen sammeln, um diesen einfachen Rover auf die nächste Stufe zu heben.

Empfohlen: