Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Sprungbewegungs-Laserpanzer!

Komponenten und Verbrauchsmaterialien

Infrarot-LED
× 1
Infrarotempfänger
× 1
Arduino UNO
× 1
Raspberry Pi 2 Model B
× 1
RF24-Modul
× 1
LED-RGB-Common Cathode
× 1
L293D-Motortreiber mit integrierter Schaltung
× 1
Breadboard (generisch)
× 1
Jumper (generisch)
× 1
Batteriehalter
× 1
AA-Batterien
Wiederaufladbare NiMH-Akkus
× 1
Lego Bricks
× 1
Ball Caster Metal - 3/8"
× 1
Leap Motion Controller
× 1

Über dieses Projekt

Das Ziel dieses Projekts war es, eine Reihe von Roboterpanzern für den Kampf zu entwickeln, bei denen die Bediener ein realistischeres Gefühl für die Steuerung der Fahrzeuge mit dem Leap Motion-Controller bekommen. Ich wollte die Robotertanks kostengünstig herstellen, damit die Leute das Projekt so einfach wie möglich nachbilden können.

Der Panzerkörper besteht aus generischen Legosteinen und -platten. Die Stromquelle ist ein einfacher Block von 4 wiederaufladbaren AA-Batterien. Der Controller für den Tank ist ein Arduino Uno R3. "Propulsion" besteht aus zwei einfachen Gleichstrommotoren mit Rädern hinten und einer einzelnen Laufrolle vorne mit einer einzigen integrierten L293D-Schaltung. Die "Waffe" ist ein einzelnes IR-LED-Licht und die "Rüstung" ist eine Reihe von IR-Sensoren, die Treffer von den IR-LEDs des gegnerischen Panzers erkennen. Das "Heads-Up-Display" ist eine einzelne mehrfarbige LED, die Sie über alle Aktionen am Panzer informiert, einschließlich Ihres Panzerungsstatus. Schließlich erfolgt die "Steuerung" des Tanks drahtlos über einen Raspberry Pi 2 mit NodeJS, der über ein RF24-Funkmodul verbunden ist, mit dem auch jeder Tank ausgestattet ist.

Mit den Händen des Bedieners steuert Leap Motion den Tank mit dem Leap Motion Javascript SDK. Über das SDK zur Erkennung von Handbewegungen kommuniziert Javascript mit dem NodeJS-Server auf dem Raspberry PI 2, der wiederum über das RF24-Modul mit dem Tank kommuniziert. Beide Hände nach vorn, der Panzer bewegt sich nach vorne. Beide Hände zurück, der Panzer bewegt sich nach hinten. Linke Hand vorwärts, rechte Hand rückwärts, der Panzer dreht sich nach rechts. Rechte Hand vorwärts, linke Hand rückwärts, der Panzer dreht sich nach links. Beide Hände in der „Nuetral“-Position stoppen den Tank. Eine Hand nach vorne (links oder rechts), während Sie die andere Hand fallen lassen, "feuert" die Waffe des Panzers ab.

Hier ist eine kurze Demonstration der Waffen, Rüstung und des Heads-Up-Displays des Panzers.



Mit der omnidirektionalen fortschrittlichen Panzerung und den Kartons als Unterschlupf wird Laser Tanks zu einem Jagd- und Ausweichspiel.



Schritte zur Projekteinrichtung:

1) Bauen Sie die Tanks zusammen und verdrahten Sie sie gemäß den folgenden Schemata. Laden Sie die benötigten Arduino-Bibliotheken herunter (siehe README im Github-Repository), kompilieren und laden Sie die Arduino-Skizze für Tank1 in einen Tank und Tank2 in den anderen Tank hoch.

2) Verdrahten Sie den RF24-Transceiver mit dem Raspberry Pi. Installieren Sie Raspbian OS und den Knoten JS auf dem Pi.

3) Laden Sie die RF24-Bibliothek auf dem Pi herunter, konfigurieren Sie sie und erstellen Sie sie (siehe README im github-Repository).

4) Laden Sie die NodeJS-Serversoftware von der github-Site herunter, konfigurieren und starten Sie den App-Server/Webserver (siehe README im githubrepository).

5)Installieren Sie Leap Motion und die Treiber auf Ihrem Computer. Öffnen Sie einen Browser und laden Sie die URL zum Raspberry Pi Rest/Webserver, um die Webseite zu laden (siehe README im Github-Repository), um Tank eins oder Tanktwo zu steuern.

6) Klicken Sie auf die Schaltfläche Kalibrieren und halten Sie Ihre Hände über der Sprungbewegung, damit sie zwei Hände erkennt und Ihre neutrale Position kennt. Sobald die Kalibrierung abgeschlossen ist, können Sie den Tank mit Ihren Händen steuern.

Kurzer Hinweis zum Panzerchassis:

Der Körper der Tanks besteht aus einfachen Legos, die auf Teile (Motoren, Steckbretter usw.) des Tanks "gorillageklebt" wurden, um ihn zusammenzuhalten. Hier ist eine Diashow, um zu zeigen, wie das gemacht wurde.

Kurzer Hinweis zu Infrarot-LEDs:

Infrarot-Fernbedienungen sind sehr praktisch, wenn Sie auf der Couch, dem Boden oder dem Stuhl sitzen und von überall aus den Kanal Ihres Fernsehers wechseln möchten. Infrarot-LEDs sind so gebaut, dass der Lichtstrahl in so viele Richtungen wie möglich geht, um die Abdeckung zu verbessern. Wenn Sie jedoch den Strahl der LED kleiner einstellen möchten, um das Treffen des Fernbedienungssensors zu erschweren (wie in einem Panzerschlachtspiel), ist dies etwas schwieriger. Bei meiner Lektüre habe ich herausgefunden, dass man mit einer sehr einfachen Lupe am Ende einer Röhre den Infrarotstrahl fokussieren kann. Hier ist ein Diagramm, das zeigt, wovon ich spreche:

Am Ende kaufte ich eine sehr günstige Taschenlupe in einer Drogerie, nahm die Linse heraus und baute eine Röhre um sie herum und hatte die Infrarot-LED am anderen Ende der Röhre, und dies funktionierte perfekt, um den Strahl der Röhre zu verengen IR-LED um genauer zu sein.


Eine kurze Anmerkung zu 360-Grad-Infrarotsensoren

Ein Infrarotsensor ist in der Lage, Signale von einer Infrarot-LED zu erkennen, wenn sich diese LED direkt davor befindet oder etwa 90 Grad fokussiert ist. Wenn sich hinter dem Sensor eine Infrarot-LED befindet, kann er das gesendete Signal nicht erkennen.

Um einen Erfassungswinkel von vollen 360 Grad zu erreichen, mussten Sie entweder die Infrarotbibliothek ändern, um Signale an 4 verschiedenen Pins von 4 verschiedenen Sensoren zu erkennen, oder eine Hardwarelösung erstellen, die es ermöglichte, 4 Sensoren in Reihe zu schalten, um über einen einzigen zu berichten Stift. Ich habe einige Online-Artikel gefunden, die zeigten, wie Sie dies mit einer einfachen UND-integrierten Schaltung erreichen können, um 4 Sensoren an einen einzigen Eingangspin anzuschließen. Wenn einer der Infrarotsensoren ein Infrarotsignal erkannt hat, wird es an diesem Pin gemeldet. Dies ermöglichte eine 360-Grad-Erkennung, ohne die Infrarotbibliothek modifizieren oder 4 Eingangspins verbrauchen zu müssen.


Code

Laserpanzer Github
Alle benutzerdefinierten Codedateien für das Leap Motion Laser Tanks-Projekthttps://github.com/corky/LaserTanks

Schaltpläne

Mit einer Infrarot-LED schießt der Panzer "Codes", die die anderen Panzer als Treffer identifizieren. Mit einem einzigen Infrarotsensor kann der Panzer erkennen, wenn Infrarotsignale von gegnerischen Panzern kommen, und diese als . registrieren trifft Unter Verwendung von 4 Infrarotsensoren, die mit einer einfachen integrierten UND-Gatter-Schaltung (74HCT21) verkettet sind, ist ein Panzer in der Lage um Infrarotsignale von der LED des gegnerischen Panzers als Treffer aus 360 Grad um ihn herum zu identifizieren. Mit Hilfe einer RGB-LED identifiziert der Panzer seinen aktuellen Status (wie viele Treffer er gemacht hat) durch Ändern der Farbe der LED. Außerdem ändert der Panzer die Farbe der LED für jeden Schuss, den er abfeuert, auf Grün. Mit einer integrierten L293D-Schaltung und einigen einfachen Gleichstrommotoren kann sich der Panzer vorwärts, rückwärts und drehen bewegen links oder rechts. Mit einem einfachen und kostengünstigen RF24-Transciever kann der Panzer kommunizieren und Befehle vom Bediener empfangen. Mit einem Raspberry Pi2, einem einfachen und kostengünstigen RF24-Transciever und Node JS kann der Operator mit jeden Tank über REST-API-Aufrufe.

Herstellungsprozess

  1. Leitfaden zur Laserbeschriftung mit Aluminium
  2. Leitfaden zur Laserbeschriftung
  3. Was ist Faserlasermarkierung?
  4. Laserpointer
  5. Halbleiterlaser
  6. Festkörperlaser
  7. DIY Infrarot-Bewegungssensorsystem für Raspberry Pi
  8. Bewegungssensor mit Raspberry Pi
  9. MOSMusic
  10. Drei Kernkomponenten der Laserbeschriftungsmaschine