INHOUDSOPGAWE:

Swaai met u hand om die OWI -robotarm te beheer geen snare nie: 10 stappe (met foto's)
Swaai met u hand om die OWI -robotarm te beheer geen snare nie: 10 stappe (met foto's)

Video: Swaai met u hand om die OWI -robotarm te beheer geen snare nie: 10 stappe (met foto's)

Video: Swaai met u hand om die OWI -robotarm te beheer geen snare nie: 10 stappe (met foto's)
Video: Die Antwoord - Baita Jou Sabela feat. Slagysta (Official Video) 2024, Julie
Anonim
Image
Image
Dele
Dele

DIE IDEE:

Daar is ten minste 4 ander projekte op Instructables.com (vanaf 13 Mei 2015) rondom die wysiging of beheer van OWI Robotic Arm. Nie verrassend nie, want dit is so 'n wonderlike en goedkoop robotstel om mee te speel. Hierdie projek is soortgelyk in gees (dit wil sê, beheer die robotarm met Arduino), maar verskil in die benadering. [video]

Die idee is om die robotarm draadloos te kan beheer met behulp van gebare. Ek het ook probeer om die wysigings van die robotarm tot die minimum te beperk, sodat dit steeds met die oorspronklike beheerder gebruik kon word.

Klink eenvoudig.

Dit is uiteindelik 'n driedelige projek:

  1. 'N Handskoen met genoeg sensors om 'n LED en 5 motors te bestuur
  2. 'N Arduino Nano -sender -toestel om beheeropdragte uit die handskoen te aanvaar en draadloos na die armbeheerder -toestel te stuur
  3. 'N Arduino Uno-gebaseerde draadlose ontvanger en motorbeheertoestel wat aan die OWI Robotic Arm gekoppel is

KENMERKE

  1. Ondersteuning vir alle 5 grade van vryheid (DOF) en die LED
  2. Groot rooi knoppie - om die motors op die arm onmiddellik te stop om skade te voorkom
  3. Draagbare modulêre ontwerp

Vir mobiele gebruikers: die 'promosievideo' van hierdie projek is hier op YouTube.

Stap 1: Onderdele

HANDSKOEN:

U benodig die volgende om 'n handskoenbeheerder te bou:

  1. Isotoner Smartouch Tech Stretch Handschoen (of soortgelyk) - op Amazon.com
  2. Spectra Symboflex Sensor 2.2 " - op Amazon.com
  3. GY -521 6DOF MPU6050 3 -assige gyroscoop + versnellingsmeter module - op Fasttech.com
  4. 2X5 BOX HEADER RIGHT - op Phoenixent.com
  5. 2X5 IDC SOCKET -RECEPTACLE - op Phoenixent.com
  6. VLAK LINTKABEL 10 Geleier.050 "Pitch - op Phoenixent.com
  7. 2 x 5 mm LED's - groen en geel
  8. 2 x klein knoppies
  9. Weerstande, drade, naald, swart draad, gomgeweer, soldeergeweer, soldeer, ens.

TRANSMISSIE STRAP-ON BOX:

  1. Arduino -versoenbare Nano v3.0 ATmega328P -20AU -bord - op Fasttech.com
  2. nRF24L01+ 2,4 GHz draadlose ontvanger Arduino -versoenbaar - op Amazon.com
  3. Gymboss ARMBAND - op Amazon.com
  4. 9V -houer vir houers met houers met aan/uit -skakelaar vir draadkabel - op Amazon.com
  5. 2X5 BOX HEADER RIGHT - op Phoenixent.com
  6. 9v battery
  7. 47uF (50v) kapasitor
  8. Weerstande, drade, gomgeweer, soldeergeweer, soldeer, ens.

OWI ROBOTIC ARM CONTROLLER BOX:

  1. Arduino -versoenbare Uno R3 Rev3 -ontwikkelingsraad - op Fasttech.com
  2. Prototipe Shield DIY KIT vir Arduino (of soortgelyk) - op Amazon.com
  3. nRF24L01+ 2,4 GHz draadlose ontvanger Arduino -versoenbaar - op Amazon.com
  4. 3 x L293D 16 -pen geïntegreerde stroombaan -motorbestuurder - op Fasttech.com
  5. 1 x SN74HC595 74HC595 8-bis verskuiwingsregister met 3-state uitvoerregisters DIP16-op Amazon.com
  6. 47uF (50v) kapasitor
  7. Doos vir Arduino - op Amazon.com
  8. Aan/af skakelaar
  9. 2 x 13 mm knoppies (een rooi en een groen kappie)
  10. 2 x 2X7 BOX HEADER RIGHT - dieselfde as hierbo op Phoenixent.com
  11. VLAK LINTKABEL 14 geleier.050 "staanplek - dieselfde as hierbo op Phoenixent.com
  12. 9v battery + aansluiting
  13. Weerstande, drade, gomgeweer, soldeergeweer, soldeer, ens.

… en natuurlik:

OWI Robotic Arm Edge - Robotarm - OWI -535 - op Adafruit.com

Stap 2: PROTOTYPING

PROTOTYPING
PROTOTYPING
PROTOTYPING
PROTOTYPING

Ek stel sterk voor om elkeen van die kontroleerder -toestelle te prototipeer voordat ek al die komponente aanmekaar soldeer.

Hierdie projek gebruik 'n paar uitdagende hardeware:

nRF24L01

Dit het my 'n rukkie geneem om die twee nRF24 met mekaar te laat praat. Blykbaar bied nóg Nano, nóg Uno genoeg gestabiliseerde 3.3v -krag sodat die modules konsekwent kan werk. 'N Oplossing in my geval was 'n 47uF -kapasitor oor die kragpenne op albei nRF24 -modules. Daar is ook 'n paar eienaardighede oor die gebruik van RF24-biblioteek in IRQ- en nie-IRQ-modusse, dus ek beveel aan dat u die voorbeelde noukeurig bestudeer.

'N Paar wonderlike bronne:

nRF24L01 IC -produkbladsy met 'n lae krag van 2,4 GHz, RF -ontvanger

RF24 bestuurder biblioteek bladsy

As u net nRF24 + arduino gaan soek, sal dit baie skakels lewer. Dit is die moeite werd om te ondersoek

74HC595 SKAKEL REGISTREER

Dit was nie verbasend dat ek 5 motors, 'n LED, twee knoppies en 'n draadlose module moes beheer nie, en ek het relatief vinnig penne op die Uno gekry. Die bekende manier om u speldtelling te "verleng", is deur 'n skofregister te gebruik. Aangesien nRF24 reeds die SPI -koppelvlak gebruik, het ek besluit om ook SPI te gebruik vir programmering van skofregisters (vir spoed en om spelde te red) in plaas van die shiftout () -funksie. Tot my verbasing werk dit van die eerste keer af soos 'n sjarme. U kan dit in die penopdrag en in die sketse ondersoek.

Broodplank- en springdrade is u vriende.

Stap 3: HANDSKOEN

HANDSKOEN
HANDSKOEN
HANDSKOEN
HANDSKOEN
HANDSKOEN
HANDSKOEN
HANDSKOEN
HANDSKOEN

OWI Robotic ARM het 6 items om te beheer (OWI Robotic Arm Edge Picture)

  1. 'N LED op die GRIPPER van die toestel
  2. 'N GRIPPER
  3. 'N POLS
  4. 'N ELBOOG - is die deel van die robotarm wat aan die POLS vasgemaak is
  5. 'N SKOUER is die deel van die robotarm wat aan die BASE vasgemaak is
  6. 'N BASIS

Die handskoen is ontwerp om die LED van Robotic Arm en al 5 motors (grade van vryheid) te beheer.

Ek het individuele sensors op die foto's, asook 'n beskrywing hieronder:

  1. Die GRIPPER word beheer deur die knoppies op die middelvinger en pink. Die gryper word gesluit deur die wysvinger en middelvingers saam te druk. Gripper word oopgemaak deur die ring en die pinkie saam te druk.
  2. Die WRIST word beheer deur die buigsame weerstand op die indekszoeker. As u die vinger halfpad krul, laat u die pols sak en as u dit heeltemal krul, laat u die pols styg. Deur die wysvinger reguit te hou, stop die pols.
  3. Die ELBOW word beheer deur 'n versnellingsmeter - die kantel van die palm op en af beweeg die elmboog onderskeidelik op en af
  4. Die skouer word beheer deur 'n versnellingsmeter - die kantel van die palm na regs en na links (maar nie onderstebo nie!) Beweeg die skouer onderskeidelik op en af
  5. Die BASE word ook deur 'n versnellingsmeter beheer, soortgelyk aan die skouerpalm na regs en links onderstebo (palm na bo), beweeg die basis onderskeidelik regs en links
  6. Die LED op die gryper word aan/afgeskakel deur albei die knoppies van die grijper saam te druk.

Alle reaksies op die knoppies word met 1/4 van 'n sekonde vertraag om jitter te voorkom.

Om die handskoen te monteer, verg soldering en baie naaldwerk. Dit is eintlik net om twee knoppies, 'n buigsame weerstand, 'n Accel/Gyro -module aan die stof van die handskoen vas te maak en drade aan die aansluitkas te plaas.

Twee LED's op die aansluitkas is:

  1. GROEN - skakel aan
  2. GEEL - knip as data na die armbeheerkas oorgedra word.

Stap 4: SENDERBUS

SENDERSKAS
SENDERSKAS
SENDERSKAS
SENDERSKAS
SENDERSKAS
SENDERSKAS

Die senderkas is in wese Arduino Nano, draadlose nRF24-module, buigsame draadaansluiting en 3 weerstande: 2 aftrekbare 10 kOhm-weerstande vir die grijperknoppies op die handskoen en 'n spanningsverdeling van 20 kOhm vir die buigsame sensor wat die pols beheer.

Alles word aanmekaar gesoldeer op 'n vero-bord. Let daarop dat nRF24 oor Nano "hang". Ek was bekommerd dat dit inmenging kan veroorsaak, maar dit werk.

Die gebruik van die 9v-battery maak die bandjie 'n bietjie omvangryk, maar ek wou nie met LiPo-batterye mors nie. Miskien later.

Sien die pen -toewysingsstap vir soldeerinstruksies

Stap 5: ARMBEDIENINGSBUS

ARMBEDIENINGSBUS
ARMBEDIENINGSBUS
ARMBEDIENINGSBUS
ARMBEDIENINGSBUS
ARMBEDIENINGSBUS
ARMBEDIENINGSBUS
ARMBEDIENINGSBUS
ARMBEDIENINGSBUS

Armbeheerkas is gebaseer op Arduino Uno. Dit ontvang draadloos opdragte van die handskoen via die nRF24 -module en beheer die OWI Robotoc -arm via 3 L293D -bestuurderskyfies.

Aangesien byna alle Uno -penne gebruik is, is daar baie drade in die boks - dit sluit skaars!

Deur die ontwerp begin die boks in die af -modus (asof 'n rooi stopknoppie ingedruk word), wat die operateur tyd gee om die handskoen aan te trek en gereed te maak. Sodra dit gereed is, druk die operateur op die groen knoppie, en die verbinding tussen die handskoen en die kontrolekas moet onmiddellik tot stand kom (soos aangedui deur die geel LED op die handskoen en die rooi LED op die bedieningsboks).

Koppel aan OWI

Die verbinding met die robotarm word gemaak via 'n 14 -pins dubbele rye kop (volgens die prent hierbo) via 'n 14 -draads plat kabel.

  • LED-verbindings is op die gemeenskaplike grond (-) en die arduino-pen A0 via 'n weerstand van 220 Ohm
  • Alle motordrade is gekoppel aan L293D-penne 3/6 of 11/14 (+/- onderskeidelik). Elke L293D ondersteun 2 motors, dus twee pennetjies.
  • OWI -kraglyne is links (+6v) en regs (GND) penne van die 7 -pen -aansluiting aan die agterkant van die geel bokant. (U kan die drade op die foto hierbo sien aansluit). Hierdie twee is verbind met penne 8 (+) en 4, 5, 12, 13 (GND) op al drie L293D's.

Sien die res van die penopdragte in die volgende stap

Stap 6: PIN -OPDRAG

PIN OPDRAG
PIN OPDRAG
PIN OPDRAG
PIN OPDRAG
PIN OPDRAG
PIN OPDRAG

NANO:

  • 3.3v - 3.3v na nRF24L01 chip (pen 2)
  • 5v - 5v na versnellingsmeterbord, knoppies, buigsame sensor
  • a0 - buigsame weerstandsinvoer
  • a1 - geel "comms" LED -beheer
  • a4 - SDA na versnellingsmeter
  • a5 - SCL na versnellingsmeter
  • d02 - nRF24L01 -chip -onderbrekingspen (pen 8)
  • d03 - maak die invoer van die grypknoppie oop
  • d04 - sluit die invoer van die grypknoppie
  • d09 - SPI CSN -pen na nRF24L01 -chip (pen 4)
  • d10 - SPI CS -pen na nRF24L01 -chip (pen 3)
  • d11 - SPI MOSI na nRF24L01 chip (pen 6)
  • d12 - SPI MISO na nRF24L01 -chip (pen 7)
  • d13 - SPI SCK na nRF24L01 -chip (pen 5)
  • Vin - 9v +
  • GND - gemene saak

UNO:

  • 3.3v - 3.3v na nRF24L01 chip (pen 2)
  • 5v - 5v na knoppies
  • Vin - 9v +
  • GND - gemene saak
  • a0 - LED pols +
  • a1 - SPI SS -pen vir verskuiwingsregister Kies - om pen 12 op skofregister te pen
  • a2 - ROOI knoppie -invoer
  • a3 - GROEN knoppie -invoer
  • a4 - rigtingbasis regs - pen 15 op L293D
  • a5 - komms gelei
  • d02 - nRF24L01 IRQ -invoer (pen 8)
  • d03 - aktiveer bas servo (pwm) pen 1 of 9 op L293D
  • d04 - rigtingbasis links - pen 10 op die onderskeie L293D
  • d05 - aktiveer skouerservo (pwm) pen 1 of 9 op L293D
  • d06 - aktiveer elmboog servo (pwm) pen 1 of 9 op L293D
  • d07 - SPI CSN -pen na nRF24L01 -chip (pen 4)
  • d08 - SPI CS -pen na nRF24L01 -chip (pen 3)
  • d09 - aktiveer pols servo (pwm) pen 1 of 9 op L293D
  • d10 - aktiveer gryp servo (pwm) pen 1 of 9 op L293D
  • d11 - SPI MOSI na nRF24L01 chip (pen 6) en pen 14 op Shift Register
  • d12 - SPI MISO na nRF24L01 -chip (pen 7)
  • d13 - SPI SCK na nRF24L01 -chip (pen 5) en pen 11 op Shift Register

SKAKEL REGISTREER EN L293D's:

  • pen QA (15) van 74HC595 na pen 2 van L293D #1
  • pen QB (1) van 74HC595 na pen 7 van L293D #1
  • pen QC (2) van 74HC595 aan pen 10 van L293D #1
  • pen QD (3) van 74HC595 na pen 15 van L293D #1
  • pen QE (4) van 74HC595 na pen 2 van L293D #2
  • pen QF (5) van 74HC595 na pen 7 van L293D #2
  • pen QG (6) van 74HC595 aan pen 10 van L293D #2
  • pen QH (7) van 74HC595 na pen 15 van L293D #2

Stap 7: KOMMUNIKASIE

KOMMUNIKASIE
KOMMUNIKASIE

Glove stuur 2 grepe data 10 keer per sekonde na die bedieningsboks of wanneer 'n sein van een van die sensors ontvang word.

2 grepe is voldoende vir 6 kontroles, want ons hoef slegs te stuur:

  • AAN/UIT vir LED (1 bis) - ek het eintlik 2 bisse gebruik om in ooreenstemming met die motors te wees, maar een is genoeg
  • UIT/REGS/LINKS vir 5 motors: 2 bis elk = 10 bis

Totaal van 11 of 12 bisse is voldoende.

Rigtingkodes:

  • AF: 00
  • REGS: 01
  • LINKS: 10

Beheerwoord lyk so (bietjie wys):

Byte 2 ---------------- Byte 1 ----------------

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 0 0 0 LED-- M5-- M4-- M3-- M2-- M1--

  • M1 - grijper
  • M2 - pols
  • M3 - elmboog
  • M4 - skouer
  • M5 - basis

Byte 1 kan gerieflik direk in die skofregister ingevoer word, want dit is die regter-/linkerrigting van motors 1 tot 4.

'N Tydsduur van 2 sekondes is geaktiveer vir kommunikasie. As 'n time -out plaasvind, word alle motors gestop asof 'n ROOI -knoppie ingedruk word.

Stap 8: SKETSE en meer …

SKETSE en meer …
SKETSE en meer …

HANDSKOEN

Handske -skets gebruik die volgende biblioteke:

  • DirectIO - beskikbaar op Github
  • I2Cdev - beskikbaar op Github
  • Wire - deel van Arduino IDE
  • MPU6050 - beskikbaar op Github
  • SPI - deel van Arduino IDE
  • RF24 - beskikbaar op Github

en drie biblioteke wat deur my ontwikkel is:

  • AvgFilter - beskikbaar van Github
  • DhpFilter - beskikbaar op Github
  • TaskScheduler - beskikbaar op Github

Handskoenskets is hier beskikbaar: Glove Sketch v1.3

ARMBEDIENINGSBUS

Armskets gebruik die volgende biblioteke:

  • DirectIO - beskikbaar op Github
  • PinChangeInt - beskikbaar op Github
  • SPI - deel van Arduino IDE
  • RF24 - beskikbaar op Github

en 'n biblioteek wat deur my ontwikkel is:

TaskScheduler - beskikbaar op Github

Armskets is hier beskikbaar: Armskets v1.3

Gegewensblaaie vir hardeware wat gebruik word

  • 74HC595 skofregister - gegewensblad
  • Motorbestuurder L293D - gegewensblad
  • nRF24 draadlose module - gegewensblad
  • MPU6050 versnellingsmeter/gyroscoopmodule - gegewensblad

31 Mei 2015 UPDATE:

'N Nuwe weergawe van sketse oor handskoen en armbeheer is hier beskikbaar: Glove and Arm Sketches v1.5

Hulle is ook hier op github geleë.

Veranderinge

  • Nog twee grepe by die kommunikasiestruktuur gevoeg om die aangevraagde motorsnelheid vir pols-, elmboog-, skouer- en basismotors as 'n 5 -bitswaarde (0.. 31) van die handskoen af te stuur in verhouding tot die hoek van die beheergebaar (sien hieronder). Arm Control Box karteer waardes [0.. 31] aan die onderskeie PWM -waardes vir elk van die motors. Dit maak geleidelike snelheidsbeheer deur die operateur moontlik, en meer presiese armhantering.
  • Nuwe stel gebare:

1. LED: Knoppies beheer LED - middelvingerknoppie - AAN, pinkievingerknoppie - AF

2. GRIPPER: Buigsame strookkontroles Gripper - halfgeboë vinger - OPEN, volledig gebuig vinger - SLUIT

3. POLS: Die pols word beheer deur die palm van onderskeidelik ten volle horisontale posisie UP en DOWN te kantel. Meer kantel lewer meer spoed

4. ARM: Die arm word beheer deur die palm van die horisontale posisie LINKS en REGS te kantel. Meer kantel lewer meer spoed

5. SKOUER: Die skouer word beheer deur die palm REGS en LINKS te draai vanuit die palm wat reguit na bo wys. Palm word langs die elmboogas gedraai (net soos met jou hand gewaai)

6. BASIS: Die basis word op dieselfde manier as die skouer beheer, met die palm reguit af.

Stap 9: WAT ANDER?

WAT NOG?
WAT NOG?

VERBEELDING BY DIE WERK

Soos gewoonlik met sulke stelsels, kan hulle geprogrammeer word om nog baie meer te doen.

Byvoorbeeld, die huidige ontwerp bevat reeds ekstra vermoëns, wat nie moontlik is met die standaard afstandsbediening nie:

  • Geleidelike snelheidsverhoging: elke motorbeweging begin met 'n voorafbepaalde minimale snelheid, wat elke 1 sekonde geleidelik verhoog word totdat 'n maksimum snelheid bereik word. Dit laat meer presiese beheer van elk van die motors toe (veral die pols en grijper)
  • Vinniger bewegingsonderbreking: wanneer die opdrag deur die armkas ontvang word om 'n motor te stop, keer dit die motor vir ongeveer 50 ms om, en sodoende die beweging "verbreek" en 'n meer akkurate beheer moontlik te maak.

WAT NOG?

Miskien kan 'n meer uitgebreide beheergebaar geïmplementeer word. Of gelyktydige gebare kan gebruik word vir uitgebreide kontroles. Kan die Arm dans?

As u 'n idee het hoe u die handskoen herprogrammeer, of 'n weergawe van 'n skets het wat u wil hê ek moet toets - laat weet my asseblief: [email protected]

Stap 10: *** ONS WEN !!! ***

*** ONS HET GEWEN !!! ***
*** ONS HET GEWEN !!! ***

Hierdie projek het die eerste prys gewen in die Coded Creations -kompetisie wat deur Microsoft geborg is.

Kyk daarna! WOO-HOE !!!

Gekodeerde skeppings
Gekodeerde skeppings
Gekodeerde skeppings
Gekodeerde skeppings

Tweede prys in die gekodeerde skeppings

Aanbeveel: