Bygg en gestkontrollerad robot: 4 steg (med bilder)
Bygg en gestkontrollerad robot: 4 steg (med bilder)
Anonim
Image
Image

I denna Instructable bygger vi en Arcbotics Sparki -robot som kan styras med 3D -gester. Trevligt med det här projektet är att det inte behövs någon extra enhet som en smartphone eller handske för att styra roboten. För bara handen över elektroden (95 x 60 mm känsligt område). Ett MGC3130 Hillstar Development Kit från Microchip används för system för 3D -ingångsavkänning.

Steg 1: Komponenter krävs

Komponenter krävs
Komponenter krävs
Komponenter krävs
Komponenter krävs
Komponenter krävs
Komponenter krävs
  1. Arcbotics Sparki, Arduino -baserad robot. Andra Arduino -baserade robotar fungerar också.
  2. MGC3130 Hillstar Development Kit från Microchip, andra 3D -styrkort, till exempel Hover -originalet eller Hover 2.0 From Hover Labs, eller Flick! borde också fungera.
  3. Några Knex -delar (inte så mycket som på bilden)
  4. Silvertejp
  5. Bygelkablar

Steg 2: Montering

hopsättning
hopsättning
hopsättning
hopsättning
hopsättning
hopsättning

Hillstar 3D -gestkitet består av tre brädor:

  1. MGC3130 -modulen. detta är den viktigaste Hillstar gestkontrollenheten, den gränsar på ena sidan till en elektrod och på den andra sidan till ström och ett I2C -gränssnitt.
  2. En fyrlagersreferenselektrod med ett 85x60 mm känsligt område, på undersidan av denna platta är en kontakt för att ansluta MGC3130 -kortet.
  3. Ett I2C till USB -bryggkort. Med detta kort kan MGC3130 -modulen enkelt anslutas till en dator med USB.

I2C till USB -bryggkortet behövs inte, eftersom vi ansluter I2C på MGC3130 -modulen direkt till Robot IO -portarna, som visas i det schematiska diagrammet ovan.

En liten Knex -vagn gjordes för att stödja referenselektrodkortet. Brädet fästs på vagnen med lite tejp, och den färdiga vagnen fästs på roboten med en Ty-wrap. Slutligen är MGC3130 -modulen ansluten till robotens IO -portar med bygelkablarna.

Steg 3: Kod

Koda
Koda

Programvaran är baserad på Hover -biblioteket från Hover Labs och finns på Github (https://github.com/jspark311/hover_arduino).

Nedan är Arduino -skissen som kan laddas ner till Sparki.

Det finns en specifik Sparki IDE tillgänglig, kallad SparkiDuino, men jag föredrar att bara använda standard Arduino IDE och installera Sparki Arduino -biblioteket, som kan laddas ner från nedladdningssidan: https://arcbotics.com/downloads Det är inte lika lätt som SparkiDuino, och det kommer inte med en egen drivrutinsinstallation (Sparki -drivrutinsinstallatören finns också på nedladdningssidan), men den använder samma exempel och bibliotekskod och är lättare i kombination med andra bibliotek, som Hover i denna fall.

#inkludera // inkludera sparkibiblioteket

#include #include // Pin -deklarationer för Hover int ts = 0; int reset = 1; Hover hover = Hover (); bytehändelse; String output_string = ""; bool driving_forward = false; void setup () {delay (4000); sparki.clearLCD (); sparki.println ("Initierar Hover … vänta."); sparki.updateLCD (); hover.begin (ts, reset); sparki.clearLCD (); sparki.println ("Redo för gester !."); sparki.updateLCD (); } void loop (void) {// Kontrollera om Hover är redo att skicka gest eller peka på händelser om (hover.getStatus (ts) == 0) {// Hämta händelsen över i2c och skriv ut event = hover.getEvent (); // Det här avsnittet kan kommenteras om du inte vill se händelsen i textformat output_string = hover.getEventString (event); if (output_string! = "") {sparki.print (händelse); sparki.println ("=" + output_string); sparki.updateLCD (); } switch (händelse) {case 40: driving_forward = true; ha sönder; fall 80: sparki.moveBackward (); ha sönder; fall 36: sparki.moveLeft (); fördröjning (500); sparki.moveStop (); ha sönder; fall 34: sparki.moveRight (); fördröjning (500); sparki.moveStop (); ha sönder; fall 72: sparki.gripperOpen (); ha sönder; fall 66: sparki.gripperClose (); ha sönder; fall 68: sparki.servo (80); ha sönder; fall 65: sparki.servo (-80); ha sönder; fall 48: driving_forward = false; sparki.gripperStop (); sparki.servo (0); ha sönder; } if (driving_forward) {sparki.moveForward (); } annat {sparki.moveStop (); } // Återställ Hover för nästa händelse hover.setRelease (ts); }}

Steg 4: Njut

Image
Image

Lista över kommandon:

  • Svep uppåt - kör framåt
  • Svep bakåt - stoppa alla rörelser
  • Svep åt vänster - sväng vänster
  • Svep åt höger - sväng höger
  • Knacka uppifrån - rotera sensorn 90 grader cw
  • Tryck på botten - rotera sensorn 90 grader ccw
  • Knacka vänster - stäng griparen
  • Knacka till höger - öppna griparen