Inhaltsverzeichnis:

Bauen Sie einen über WLAN gesteuerten Telepräsenzroboter – Gunook
Bauen Sie einen über WLAN gesteuerten Telepräsenzroboter – Gunook

Video: Bauen Sie einen über WLAN gesteuerten Telepräsenzroboter – Gunook

Video: Bauen Sie einen über WLAN gesteuerten Telepräsenzroboter – Gunook
Video: Lifehack: Wlan verstärker in 1 min selber bauen - Wlan Empfang Signal verbessern 2024, November
Anonim
Image
Image

Bei diesem Projekt geht es darum, einen Roboter zu bauen, der mit einer entfernten Umgebung interagieren und von jedem Teil der Welt über Wifi gesteuert werden kann. Dies ist mein Ingenieurprojekt im letzten Jahr und ich habe dabei viel über Elektronik, IoT und Programmierung gelernt. Dieses Projekt konzentriert sich auf Menschen mit Bewegungsbehinderungen, da sie Schwierigkeiten haben, sich zu bewegen, sodass ein Telepräsenz-Roboter sie leicht unterstützen kann.

Es gibt 2 Systeme innerhalb des Projekts, um es erfolgreich zu machen. Bewegungssteuerung Ihrer Hand, um die Roboterhand und die mobile App zu bewegen, die die Basis des Motors steuert.

Nachfolgend finden Sie das Dokument und die Präsentation von Telepresence V1, damit Sie ein tieferes Verständnis erhalten.

Zeit, es zu bauen!

Lieferungen

Für dieses Projekt werden viele Werkzeuge und Komponenten benötigt. Es hat mich ungefähr 1000 AED (270 $) gekostet, also stellen Sie sicher, dass Sie dieses Budget haben. Hier sind die Komponenten, die Sie benötigen: -

  1. Knoten-MCU x 3
  2. L298N DC-Motortreiber x 1
  3. 12V Netzteil x 1
  4. LM2596 Abwärtsspannungsregler x 1
  5. MPU9250 IMU-Sensoren x 2
  6. Servomotoren (10-20kg Drehmoment) x 4
  7. Leichtholz 1x1m
  8. 8M Gewindestangen aus Metall 1m x 2
  9. 3D-Drucker (30x30cm)
  10. Holzfäller und Bohrer
  11. Elektrische Drähte, Überbrückungsdrähte und Steckbrett
  12. Vollarm-Ärmel
  13. 12V Gleichstrommotor (25kg.cm) x 2
  14. 3-Zoll-Lenkrad x 1
  15. 6cm Gummirad mit Schraubbefestigung x 2
  16. Lötkit

Schritt 1: Wie funktioniert es?

Entwurf
Entwurf

Dies ist das Kommunikationsflussdiagramm, damit Sie verstehen, wie Komponenten miteinander kommunizieren. Wir verwenden das Datenübertragungsnetzwerk PubNub als IoT-Plattform, die Echtzeitnachrichten in nur 0,5 Sekunden senden kann! Das ist die schnellste Reaktion, die wir bekommen können, und das ist in unserem Projekt noch wichtiger, da wir den Arm des Roboters in Echtzeit mit unserer Hand steuern werden.

Alle Nodemcu's werden zum Senden und Empfangen von Daten verwendet. Hier sind 2 einzelne Systeme beteiligt, bei denen Nodemcu on arm die Bewegungssensordaten an PubNub sendet und die von Nodemcu am Roboterarm empfangen werden. Für die Bewegung der Basis sendet die mobile App die Daten für die x-, y-Koordinate vom Joystick, die von Nodemcu auf der Basis empfangen werden, die den Motor über den Treiber steuern kann. Das ist alles für jetzt.

Schritt 2: Design

Das obige Design gibt Ihnen eine Vorstellung davon, wie die Struktur aussieht. Sie können die CAD-Dateien herunterladen, um einen besseren Überblick zu erhalten. Die Basis des Rovers wird von 3 Rädern getragen, von denen 2 ein Gleichstrommotor hinten und ein Laufrad vorne sind. Aufgrund der Bewegung des Roboterarms habe ich eine Instabilität an der Basis festgestellt, sodass Sie möglicherweise in Betracht ziehen, 2 Lenkrollen vorne hinzuzufügen. Untere und obere Holzbasis werden von Gewindestangen getragen, die von Muttern eingeklemmt werden. Stellen Sie sicher, dass Sie eine Kontermutter verwenden, da sie dadurch dauerhaft fest sitzt.

Design-Quelldatei herunterladen - Telepresence Design

Schritt 3: 3D-Druck der Arm- und Drehmomentberechnung

3D-Druck von Arm- und Drehmomentberechnung
3D-Druck von Arm- und Drehmomentberechnung

Der Arm des Telepräsenzroboters hat ein einfaches Design in Form der Box, so dass er mit minimaler Filamentmenge problemlos in 3D gedruckt werden kann. Seine Länge beträgt etwa 40 cm, was so lang wie ein menschlicher Arm ist. Die Länge des Roboterarms richtet sich nach dem von den Servomotoren aufgenommenen Drehmoment. Sie finden die Drehmomentberechnung auf dem obigen Bild zusammen mit den Spezifikationen des von mir verwendeten Servomotors, damit Sie das Design an Ihre Bedürfnisse anpassen können. Vermeiden Sie jedoch die Verwendung des maximalen Drehmoments des Servomotors, da dies auf lange Sicht zu einer Beschädigung des Motors führt.

Laden Sie die 3D-Druckdateien unten herunter, drucken Sie sie aus und machen Sie weiter.

Schritt 4: Herstellung und Montage der Basis

Herstellung & Montage der Basis
Herstellung & Montage der Basis
Herstellung & Montage der Basis
Herstellung & Montage der Basis
Herstellung & Montage der Basis
Herstellung & Montage der Basis

Hier sind die Schritte, die Sie für die Herstellung befolgen können:

  1. Schneiden Sie die Gewindestange in der Mitte mit der Säge
  2. Verwenden Sie einen Holzfäller, um 2 Holzstücke von 40x30cm. herzustellen
  3. Bohren Sie die notwendigen Löcher an der oberen und unteren Basis wie in der obigen Zeichnung
  4. Beginnen Sie mit dem Anbringen des Gleichstrommotors und der Laufräder an der unteren Basis
  5. Um ein rechteckiges Loch auf der oberen Basis zu machen, bohren Sie zuerst ein kreisförmiges Loch mit dem Bohrer und führen Sie dann einen Holzfäller durch das Loch und schneiden Sie es über die Kanten, um ein Rechteck zu machen.

Wenn Sie sich fragen, warum das rechte obere Loch nach hinten versetzt ist, liegt es daran, dass ich mir nicht sicher war, ob ich den Roboterarm in der rechten Ecke in der Mitte platzieren werde. Die Platzierung in der Mitte war aufgrund der Gewichtsbalance die bessere Wahl.

Schritt 5: Montage des Roboterarms

Montage des Roboterarms
Montage des Roboterarms

Die Montage des Roboterarms erfordert besondere Aufmerksamkeit. Abgesehen von der mechanischen Montage müssen Sie beim Zusammenbau darauf achten, dass der Servomotor im richtigen Winkel steht. Folgen Sie dem obigen Diagramm, um Ihnen eine Vorstellung davon zu geben, welchen Winkel der Servomotor an allen Motoren einstellen soll, bevor Sie etwas darauf montieren. Versuchen Sie, dieses Teil richtig zu machen, sonst werden Sie es am Ende wieder zusammenbauen.

Verwenden Sie die folgende Codevorlage, um den genauen Servowinkel mit Arduino oder Nodemcu einzustellen. Es gibt bereits viele Informationen dazu online, daher werde ich nicht ins Detail gehen.

#enthalten

Servo-Servo;

int-Pin =; // Setzen Sie die Pin-Nummer ein, an der der Servo-Daten-Pin auf arduino befestigt ist

Leere Einrichtung () {

servo.attach (Stift);

}

Leere Schleife () {

int-Winkel =; //Winkel, auf den Sie einstellen müssen

servo.write (Winkel);

}

Schritt 6: Schaltung des Arm-Controllers

Schaltung des Arm-Controllers
Schaltung des Arm-Controllers
Schaltung des Arm-Controllers
Schaltung des Arm-Controllers

Die Montage des Arm-Controllers ist einfach. Ich habe ein langes Ärmel verwendet und die Sensoren, Nodemcu & Steckbrett mit Nähen befestigt. Stellen Sie sicher, dass die Ausrichtung des Sensors in dieselbe Richtung wie das obige Controller-Bild ist. Folgen Sie abschließend dem Schaltplan und laden Sie den folgenden Code herunter.

Schritt 7: Schaltung des Telepräsenzroboters

Schaltung des Telepräsenzroboters
Schaltung des Telepräsenzroboters
Schaltung des Telepräsenzroboters
Schaltung des Telepräsenzroboters
Schaltung des Telepräsenzroboters
Schaltung des Telepräsenzroboters

Folgen Sie dem Schaltplan auf die gleiche Weise. Überprüfen Sie die Pinbelegung des verwendeten Netzteils, um Kurzschlüsse zu vermeiden. Stellen Sie die Ausgangsspannung des Abwärtswandlers auf 7 V ein, da dies die durchschnittliche Spannung aller Servomotoren ist. Die einzige Stelle, die Sie löten könnten, sind die Anschlüsse des Basis-Gleichstrommotors, da er viel Strom verbraucht und daher mit etwas dickerem Stromkabel dicht sein muss. Sobald die Schaltung abgeschlossen ist, werden Sie später die 'arm_subscriber.ino' auf Nodemcu hochladen, die mit arm und 'base.ino' verbunden ist, um auf die Basis-Nodemcu hochgeladen zu werden.

Schritt 8: Mobile App

App
App

Dies ist das Handy zur Steuerung der Fortbewegung. Wenn Sie den Joystick bewegen, sendet er die X-, Y-Koordinaten auf dem Joystick-Kreis an Pubnub und wird von Nodemcu an der Basis empfangen. Diese X-, Y-Koordinate wird in den Winkel umgewandelt und damit können wir herausfinden, in welche Richtung der Roboter gehen wird. Die Bewegung erfolgt durch Ein-/Ausschalten und Richtungswechsel der beiden Motoren. Wenn der Befehl Vorwärts ist, fahren beide Motoren mit voller Geschwindigkeit vorwärts, wenn er links ist, fährt der linke Motor rückwärts und der rechte Motor fährt vorwärts und so weiter.

Die obige Funktion kann auch einfach mit Tasten anstelle eines Joysticks ausgeführt werden, aber ich wähle Joystick, um auch die Geschwindigkeit des Motors zu steuern. Mein Aktivierungs-Pin funktionierte jedoch nicht mit Nodemcu, also habe ich diesen Teil verlassen. Ich habe in base.ino einen Geschwindigkeitskontrollcode für alle Fälle als Kommentar hinzugefügt.

Sie können die Quelldatei.aia unten abrufen, die mit dem MIT-App-Erfinder bearbeitet werden kann. Sie müssen in der App eine Grundkonfiguration vornehmen, die ich im nächsten Schritt mitteilen werde.

Schritt 9: Erstellen Sie ein Konto bei Pubnub und erhalten Sie die Schlüssel

Erstellen Sie ein Konto bei Pubnub und erhalten Sie die Schlüssel
Erstellen Sie ein Konto bei Pubnub und erhalten Sie die Schlüssel

Jetzt ist es an der Zeit, den letzten Schritt zu tun, nämlich Ihre IoT-Plattform zu konfigurieren. Pubnub ist das Beste, da die Datenübertragung in Echtzeit erfolgt und nur 0,5 Sekunden dauert. Darüber hinaus können Sie 1 Million Datenpunkte pro Monat senden, also ist es meine persönliche Lieblingsplattform.

Gehen Sie zu PubNub und erstellen Sie Ihr Konto. Gehen Sie dann zu den Apps-Menüs im linken Menü und klicken Sie rechts auf die Schaltfläche "+Neue App erstellen". Nachdem Sie Ihre App benannt haben, sehen Sie das obige Bild des Herausgebers und des Abonnentenschlüssels. Damit verbinden wir die Geräte.

Schritt 10: Fügen Sie die Schlüssel zum Code hinzu und laden Sie sie hoch

Fügen Sie die Schlüssel zum Code hinzu und laden Sie sie hoch
Fügen Sie die Schlüssel zum Code hinzu und laden Sie sie hoch
Fügen Sie die Schlüssel zum Code hinzu und laden Sie sie hoch
Fügen Sie die Schlüssel zum Code hinzu und laden Sie sie hoch

Wir brauchen 4 Dinge, damit die Geräte miteinander kommunizieren können: - Pubkey, Subkey, Channel & Wifi.

pubkey & subkey bleiben auf allen Nodemcu- und mobilen Apps gleich. 2 Geräte, die miteinander kommunizieren, sollten den gleichen Kanalnamen haben. Da die mobile App und die Basis miteinander kommunizieren, haben sie den gleichen Kanalnamen, der für Controller und Roboterhand ähnlich ist. Schließlich müssen Sie auf jedem Nodemcu WLAN-Anmeldeinformationen hinterlegen, damit er sich am Anfang mit dem WLAN verbinden kann. Ich habe den Kanalnamen bereits hinzugefügt, sodass Sie WLAN und Pub/Sub-Schlüssel von Ihrem Konto hinzufügen müssen.

Hinweis:- Nodemcu kann sich nur mit WLAN verbinden, auf das ohne Webseite als Zwischenstufe zugegriffen werden kann. Sogar für meine Abschlusspräsentation musste ich den mobilen Hotspot verwenden, da das Universitäts-WLAN schleppend war.

Schritt 11: Fazit

Abschluss
Abschluss

Wenn Sie bis hierher gekommen sind, dann AWESOME! Ich hoffe, dass Sie etwas Wertvolles aus diesem Artikel gewonnen haben. Dieses Projekt hat kleine Einschränkungen, die ich Ihnen mitteilen möchte, bevor Sie es ausführen. Hier sind einige unten:-

Abrupte Bewegung des Roboterarms:-

Es gibt viele plötzliche Bewegungen des Roboterarms. Dies liegt an einer Verzögerung von 0,5 Sekunden für die Übertragung der Sensorinformationen als Servobewegung. Ich habe sogar 2 des Servomotors beschädigt, also bewege deinen Arm nicht zu schnell. Sie können dieses Problem lösen, indem Sie Zwischenschritte zwischen den ursprünglichen Bewegungen hinzufügen, um eine reibungslose Bewegung zu erzielen.

Kein Anhalten der Basisbewegung:-

Wenn ich den Roboter über eine mobile App in eine Richtung bewegen lasse, bewegt sich der Roboter auch dann in dieselbe Richtung, wenn ich meine Finger hebe. Das war ärgerlich, da ich immer den Strom ausschalten musste, um die Bewegung zu stoppen. Ich habe den Stoppcode in die App eingefügt, aber es funktionierte immer noch nicht. Es könnte ein Problem in der App selbst sein. Vielleicht können Sie versuchen, es zu lösen, und lassen Sie es mich wissen.

Kein Video-Feed:-

Ohne den Video-Feed, der von Roboter zu Mensch kommt, können wir niemals weit vom Benutzer entfernt bereitstellen. Ich wollte dies anfangs hinzufügen, würde aber mehr Zeit und Investitionen erfordern, also habe ich es gelassen.

Sie können dieses Projekt weiterführen, indem Sie das obige Problem lösen. Wenn Sie das tun, lassen Sie es mich wissen. Abschied

Für weitere Projekte besuchen Sie meine Portfolio-Website

Robotik-Wettbewerb
Robotik-Wettbewerb
Robotik-Wettbewerb
Robotik-Wettbewerb

Zweiter im Robotik-Wettbewerb

Empfohlen: