Satura rādītājs:

Veidojiet žestu vadītu robotu: 4 soļi (ar attēliem)
Veidojiet žestu vadītu robotu: 4 soļi (ar attēliem)

Video: Veidojiet žestu vadītu robotu: 4 soļi (ar attēliem)

Video: Veidojiet žestu vadītu robotu: 4 soļi (ar attēliem)
Video: Leap Motion SDK 2024, Novembris
Anonim
Image
Image

Šajā instrukcijā mēs veidojam Arcbotics Sparki robotu, kuru var vadīt ar 3D žestiem. Šī projekta jaukā iezīme ir tāda, ka robota vadīšanai nav nepieciešama papildu ierīce, piemēram, viedtālrunis vai cimds. Vienkārši pārvietojiet roku virs elektroda (jutīga vieta 95 x 60 mm). 3D žestu ievades sensoru sistēmām tiek izmantots mikroshēmas MGC3130 Hillstar attīstības komplekts.

1. darbība. Nepieciešamās sastāvdaļas

Nepieciešamas sastāvdaļas
Nepieciešamas sastāvdaļas
Nepieciešamas sastāvdaļas
Nepieciešamas sastāvdaļas
Nepieciešamas sastāvdaļas
Nepieciešamas sastāvdaļas
  1. Arcbotics Sparki, uz Arduino balstīts robots. Darbosies arī citi uz Arduino balstīti roboti.
  2. MGC3130 Hillstar attīstības komplekts no mikroshēmas, citi 3D žestu dēļi, piemēram, oriģināls Hover vai Hover 2.0 From Hover Labs, vai Flick! vajadzētu arī strādāt.
  3. Dažas Knex daļas (ne tik daudz kā attēlā)
  4. Santehnikas līmlente
  5. Jumper vadi

2. solis: montāža

Montāža
Montāža
Montāža
Montāža
Montāža
Montāža

Hillstar 3D žestu komplekts sastāv no trim dēļiem:

  1. MGC3130 modulis. šī ir galvenā Hillstar žestu vadības ierīce, no vienas puses tā ir savienota ar elektrodu, bet otrā - ar barošanu un I2C saskarni.
  2. Četru slāņu atsauces elektrods ar jutīgu laukumu 85x60 mm šīs plāksnes apakšā ir savienotājs MGC3130 plates pieslēgšanai.
  3. I2C uz USB tilta plati. Izmantojot šo plati, MGC3130 moduli var viegli savienot ar datoru, izmantojot USB.

I2C uz USB tilta plāksne nav nepieciešama, jo mēs savienojam MGC3130 moduļa I2C tieši ar robota IO portiem, kā parādīts shematiskajā diagrammā iepriekš.

Tika izgatavots mazs Knex ratiņi, lai atbalstītu atsauces elektrodu plāksni. Dēlis ir piestiprināts pie ratiņiem ar kādu līmlenti, bet pabeigtais ratiņš ir piestiprināts robotam ar Ty-wrap. Visbeidzot, MGC3130 modulis ir savienots ar robota IO portiem ar džemperu vadiem.

3. darbība: kods

Kods
Kods

Programmatūras pamatā ir Hover Labs bibliotēka Hover, un to var atrast vietnē Github (https://github.com/jspark311/hover_arduino).

Zemāk ir Arduino skice, kuru var lejupielādēt vietnē Sparki.

Ir pieejams īpašs Sparki IDE ar nosaukumu SparkiDuino, taču es labprātāk izmantoju tikai standarta Arduino IDE un instalēju Sparki Arduino bibliotēku, kuru var lejupielādēt no lejupielādes lapas: https://arcbotics.com/downloads Tas nav tik vienkārši kā SparkiDuino, un tam nav sava draivera instalētāja (Sparki draivera instalētājs ir arī lejupielāžu lapā), taču tas izmanto visus tos pašus piemērus un bibliotēkas kodu, un tas ir vieglāk kopā ar citām bibliotēkām, piemēram, gadījumā.

#include // iekļaut sparki bibliotēku

#include #include // Piespraust deklarācijas Hover int ts = 0; int reset = 1; Virziet kursoru virs kursora = Virziet kursoru (); baitu pasākums; String output_string = ""; bool driving_forward = nepatiess; void setup () {kavēšanās (4000); sparki.clearLCD (); sparki.println ("Inicializējot kursoru… lūdzu, uzgaidiet."); sparki.updateLCD (); hover.begin (ts, reset); sparki.clearLCD (); sparki.println ("Gatavs žestiem !."); sparki.updateLCD (); } void loop (void) {// Pārbaudiet, vai kursors ir gatavs sūtīt žestu vai pieskārienu notikumus, ja (hover.getStatus (ts) == 0) {// Iegūstiet notikumu, izmantojot i2c, un izdrukājiet to event = hover.getEvent (); // Šo sadaļu var komentēt, ja nevēlaties redzēt notikumu teksta formātā output_string = hover.getEventString (notikums); if (output_string! = "") {sparki.print (notikums); sparki.println ("=" + output_string); sparki.updateLCD (); } slēdzis (notikums) {40. gadījums: braukšanas_uz priekšu = true; pārtraukums; 80. gadījums: sparki.moveBackward (); pārtraukums; 36. gadījums: sparki.moveLeft (); kavēšanās (500); sparki.moveStop (); pārtraukums; 34. gadījums: sparki.moveRight (); kavēšanās (500); sparki.moveStop (); pārtraukums; 72. gadījums: sparki.gripperOpen (); pārtraukums; 66. gadījums: sparki.gripperClose (); pārtraukums; 68. gadījums: sparki.servo (80); pārtraukums; 65. gadījums: sparki.servo (-80); pārtraukums; 48. gadījums: braukšana_uz priekšu = nepatiesa; sparki.gripperStop (); sparki.servo (0); pārtraukums; } ja (braucot_uz priekšu) {sparki.moveForward (); } cits {sparki.moveStop (); } // Atiestatīt kursoru uz nākamo notikumu hover.setRelease (ts); }}

4. solis: izbaudiet

Image
Image

Komandu saraksts:

  • Velciet uz augšu - brauciet uz priekšu
  • Velciet atpakaļ - pārtrauciet visas kustības
  • Velciet pa kreisi - pagriezieties pa kreisi
  • Velciet pa labi - pagriezieties pa labi
  • Pieskarieties augšpusē - pagrieziet sensoru par 90 grādiem
  • Pieskarieties apakšai - pagrieziet sensoru par 90 grādiem ccw
  • Pieskarieties pa kreisi - aizveriet satvērēju
  • Pieskarieties pa labi - atveriet satvērēju

Ieteicams: