Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds

Onderdelen en benodigdheden

Infrarood LED1
Infrarood ontvanger1
Arduino UNO1
Raspberry Pi 2 Model B1
RF24-module1
RGB-led (common cathode)1
L293D motorstuur-IC1
Breadboard1
Draadjes (jumper wires)1
Batterijhouder1
AA-batterijen (herlaadbare NiMH)1
Lego-stenen1
Balroller (3/8")1
Leap Motion Controller1

Over dit project

Het doel van dit project was om een set robotische tanks te maken die tegen elkaar vechten, waarbij de operators een realistisch gevoel krijgen voor het besturen van de voertuigen via de Leap Motion-controller. Ik wilde de robot-tanks zo goedkoop mogelijk maken, zodat anderen het project gemakkelijk kunnen nabouwen.

De tank-kolom is gemaakt van gewone Lego-stenen en -platen. De voeding is een eenvoudig blok van 4 herlaadbare AA-batterijen. De controller is een Arduino Uno R3. De voortbeweging wordt verzorgd door twee DC-motoren met wielen achterin en een enkele caster voorin, aangedreven door één L293D IC. Het wapen is een enkele IR-led, de pantser bestaat uit IR-sensoren die treffers van de tegenstander detecteren. Het heads-up display is een enkele RGB-led die de status van de tank weergeeft (bijv. pantserstatus). De besturing verloopt draadloos via een Raspberry Pi 2 met Node.js, verbonden met een RF24-draadloze module die elke tank ook heeft.

Met de handen van de operator stuurt de Leap Motion de tank via de Leap Motion JavaScript SDK. De SDK detecteert handbewegingen, JavaScript communiceert met de Node.js-server op de Raspberry Pi, die op zijn beurt via de RF24-module met de tank communiceert. Beide handen vooruit: tank rijdt vooruit. Beide handen achteruit: tank rijdt achteruit. Linkerhand vooruit, rechterhand achteruit: tank draait rechts. Rechterhand vooruit, linkerhand achteruit: tank draait links. Beide handen in neutrale positie: tank stopt. Eén hand vooruit (links of rechts) terwijl de ander wordt neergehaald: tank vuurt zijn wapen.

Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds

Projectopzetstappen

  1. Monteer de tanks en wire ze volgens de schema's hieronder. Download de benodigde Arduino-bibliotheken (zie README in GitHub-repository), compileer en upload de Arduino-sketch voor tank1 naar de ene tank en tank2 naar de andere.
  2. Sluit de RF24-transceiver aan op de Raspberry Pi. Installeer Raspbian OS en Node.js op de Pi.
  3. Download, configureer en bouw de RF24-bibliotheek op de Pi (zie README in GitHub-repository).
  4. Download de Node.js-serversoftware van de GitHub-site, configureer en start de App Server/Webserver (zie README).
  5. Installeer de Leap Motion en drivers op je computer. Open een browser en laad de URL naar de Raspberry Pi REST/Webserver om de webpagina te laden (zie README) voor het besturen van tank 1 of tank 2.
  6. Klik op de kalibreerknop en houd je handen boven de Leap Motion zodat deze twee handen detecteert en je neutrale positie leert. Na kalibratie kun je de tank met je handen besturen.

Let op: tankchassis

De tanklichamen zijn samengesteld uit simpele Legostenen die met 'gorilla lijm' aan onderdelen (motoren, breadboards, etc.) zijn gelijmd om het geheel stevig te houden. Hieronder een diashow van de bouw:

Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds

Over infrarood LED's

Infrarood zenders zijn ontworpen om het licht in zoveel mogelijke richtingen te straalen voor brede dekking. Als je de bundel wilt vernauwen voor precisie (zoals in een tankgevecht), is dat lastiger. Door een eenvoudig vergrootglaslens aan het einde van een buis te plaatsen, kun je de infraroodbundel focussen. Hieronder een diagram:

Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds

Ik kocht een goedkope zakvergrootglas, haalde de lens eruit, bouwde er een buis omheen en plaatste de IR-led aan het andere uiteinde. Dit werkte perfect voor het vernauwen van de bundel.

Over 360-graden infraroodsensoren

Een infraroodsensor detecteert signalen van een IR-led die recht voor hem ligt (ongeveer 90 graden). Een led achter de sensor wordt niet gedetecteerd. Voor 360-graden detectie heb je vier sensoren nodig. Je kunt de infraroodbibliotheek aanpassen om vier pinnen te gebruiken, of een hardware-oplossing maken waarbij vier sensoren in serie op één pin worden aangesloten via een AND-poort (74HCT21). Wanneer een van de sensoren een IR-signaal detecteert, wordt dit op die pin gerapporteerd. Dit geeft 360-graden detectie zonder bibliotheekwijzigingen of extra pinnen.

Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds

Code

Alle aangepaste codebestanden voor het Leap Motion Laser Tanks-project vind je op GitHub:
https://github.com/corky/LaserTanks

Schema's

De schema's tonen de IR-led (wapen), IR-sensor (pantser), 4 sensoren met AND-poort voor 360° detectie, RGB-led (statusdisplay), L293D motorsturing, RF24-transceiver (draadloze communicatie) en Raspberry Pi 2 met Node.js (REST API voor operator).

Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds
Een Leap Motion-gestuurde lasertank bouwen – Arduino, Raspberry Pi, RGB-leds

Productieproces

  1. Expert Gids voor Aluminium Lasermarkering: Precisie, Duurzaamheid en Toepassingen
  2. Uitgebreide Gids voor Lasermarkering: Typen, Voordelen en Toepassingen
  3. Vezel Laser Markering: Precisie, Snelheid en Veelzijdigheid voor Moderne Industrieën
  4. Laser Pointer: Ontwerp, Productie en Veiligheidsoverzicht
  5. Semiconductor Lasers: Precieze Lichtgeneratie voor Moderne Technologie
  6. Solid State Lasers: Technologie, Toepassingen en Toekomsttrends
  7. Geïntegreerde Schakelingen (IC's): Compacte, Krachtige Chips die Moderne Elektronica Aandrijven
  8. Een DIY Infrarood Bewegingssensor Bouwen voor Raspberry Pi – Stapsgewijze Handleiding
  9. Een LED Besturen met een PIR-bewegingssensor op Raspberry Pi
  10. MOSMusic Project Kit: MOSFET, Arduino en meer
  11. Kerncomponenten van een laser marquering machine: begrijp de kernonderdelen voor levensduur