2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
V tomto Instructable stavíme robota Arcbotics Sparki, který lze ovládat pomocí 3D gest. Pěknou vlastností tohoto projektu je, že k ovládání robota není potřeba žádné další zařízení, jako je smartphone nebo rukavice. Stačí přejet rukou po elektrodě (citlivá oblast 95 x 60 mm). Pro systémy snímání vstupů 3D gest se používá vývojová sada MGC3130 Hillstar od společnosti Microchip.
Krok 1: Požadované součásti
- Arcbotics Sparki, robot na bázi Arduina. Fungovat budou i další roboti na bázi Arduina.
- Vývojová sada MGC3130 Hillstar od společnosti Microchip, dalších 3D panelů s gesty, jako je originál Hover nebo Hover 2.0 od Hover Labs, nebo Flick! by měl také fungovat.
- Několik dílů Knex (ne tolik jako na obrázku)
- Lepící páska
- Propojovací vodiče
Krok 2: Sestavení
Sada 3D gest pro Hillstar se skládá ze tří desek:
- Modul MGC3130. toto je hlavní jednotka ovládání gest Hill Hill, která je na jedné straně propojena s elektrodou a na druhé straně s napájením a rozhraním I2C.
- Čtyřvrstvá referenční elektroda s citlivou oblastí 85x60 mm, na spodní straně této desky je konektor pro připojení desky MGC3130.
- Mostová deska I2C na USB. S touto deskou lze modul MGC3130 snadno připojit k počítači pomocí USB.
Deska můstku I2C na USB není nutná, protože I2C modulu MGC3130 připojujeme přímo k portům IO robota, jak je znázorněno na schematickém diagramu výše.
Na podporu desky referenčních elektrod byl vyroben malý vozík Knex. Deska je k vozíku připevněna lepicí páskou a dokončený vozík je k robotu připevněn Ty-wrapem. Nakonec je modul MGC3130 propojen propojovacími vodiči s IO porty robota.
Krok 3: Kód
Software je založen na knihovně Hover od Hover Labs a najdete jej na Githubu (https://github.com/jspark311/hover_arduino).
Níže je náčrt Arduina, který lze stáhnout do Sparki.
K dispozici je konkrétní ID Sparki, nazvané SparkiDuino, ale já dávám přednost použití pouze standardního IDE Arduino a instalace knihovny Sparki Arduino, kterou lze stáhnout ze stránky pro stahování: https://arcbotics.com/downloads Není to tak snadné jako SparkiDuino a není dodáván s vlastním instalačním programem ovladačů (instalační program ovladače Sparki je také na stránce pro stahování), ale používá všechny stejné příklady a kód knihovny a je jednodušší v kombinaci s jinými knihovnami, jako je Hover v tomto případ.
#include // zahrnout knihovnu sparki
#include #include // Deklarace pinů pro Hover int ts = 0; int reset = 1; Hover hover = Hover (); bajtová událost; Řetězec output_string = ""; bool driving_forward = false; void setup () {delay (4000); sparki.clearLCD (); sparki.println („Inicializace kurzoru … počkejte prosím.“); sparki.updateLCD (); hover.begin (ts, reset); sparki.clearLCD (); sparki.println („Připraven na gesta !.“); sparki.updateLCD (); } void loop (void) {// Zkontrolujte, zda je Hover připraven odesílat události gesty nebo dotyky if (hover.getStatus (ts) == 0) {// Získejte událost přes i2c a vytiskněte ji event = hover.getEvent (); // Tuto sekci lze okomentovat, pokud nechcete událost vidět v textovém formátu output_string = hover.getEventString (event); if (output_string! = "") {sparki.print (event); sparki.println ("=" + řetězec_výstupu); sparki.updateLCD (); } přepínač (událost) {případ 40: driving_forward = true; přestávka; případ 80: sparki.moveBackward (); přestávka; případ 36: sparki.moveLeft (); zpoždění (500); sparki.moveStop (); přestávka; případ 34: sparki.moveRight (); zpoždění (500); sparki.moveStop (); přestávka; případ 72: sparki.gripperOpen (); přestávka; případ 66: sparki.gripperClose (); přestávka; případ 68: sparki.servo (80); přestávka; případ 65: sparki.servo (-80); přestávka; případ 48: driving_forward = false; sparki.gripperStop (); sparki.servo (0); přestávka; } if (driving_forward) {sparki.moveForward (); } else {sparki.moveStop (); } // Reset Hover pro další událost hover.setRelease (ts); }}
Krok 4: Užijte si to
Seznam příkazů:
- Přejeďte prstem nahoru - jeďte vpřed
- Přejetím zpět - zastavte všechny pohyby
- Přejeďte doleva - odbočte doleva
- Přejeďte doprava - odbočte doprava
- Tap top - otočit senzor o 90 stupňů cw
- Klepněte dole - otočte snímač o 90 stupňů ccw
- Klepněte doleva - zavřete chapadlo
- Klepněte pravým tlačítkem - otevřete chapadlo