Turinys:

Mojuojate ranka, kad valdytumėte OWI robotinę ranką Be jokių stygų: 10 žingsnių (su paveikslėliais)
Mojuojate ranka, kad valdytumėte OWI robotinę ranką Be jokių stygų: 10 žingsnių (su paveikslėliais)

Video: Mojuojate ranka, kad valdytumėte OWI robotinę ranką Be jokių stygų: 10 žingsnių (su paveikslėliais)

Video: Mojuojate ranka, kad valdytumėte OWI robotinę ranką Be jokių stygų: 10 žingsnių (su paveikslėliais)
Video: Аномально вкусно‼️ ЧЕХОСЛОВАЦКИЙ СУП ИЗ ФАРША. Жена Липована в шоке. 2024, Liepa
Anonim
Image
Image
Dalys
Dalys

IDĖJA:

„Instructables.com“yra bent 4 kiti projektai (2015 m. Gegužės 13 d.), Skirti modifikuoti ar valdyti „OWI Robotic Arm“. Nenuostabu, nes tai yra toks puikus ir nebrangus robotų rinkinys, su kuriuo galima žaisti. Šis projektas yra panašus savo dvasia (t. Y. Valdykite robotizuotą ranką su „Arduino“), tačiau skiriasi požiūriu. [vaizdo įrašas]

Idėja yra sugebėti valdyti robotų ranką belaidžiu būdu, naudojant gestus. Be to, stengiausi, kad robotų rankos modifikacijos būtų kuo mažesnės, todėl ją vis tiek būtų galima naudoti su originaliu valdikliu.

Skamba paprastai.

Galų gale tai buvo trijų dalių projektas:

  1. Pirštinė, kurioje yra pakankamai jutiklių, leidžiančių valdyti LED ir 5 variklius
  2. „Arduino Nano“siųstuvas, priimantis valdymo komandas iš pirštinės ir belaidžiu būdu siunčiamas į „Arm“valdiklio įrenginį
  3. „Arduino Uno“belaidis imtuvas ir variklio valdymo įtaisas, pritvirtintas prie „OWI Robotic Arm“

FUNKCIJOS

  1. Visų 5 laisvės laipsnių (DOF) ir šviesos diodų palaikymas
  2. Didelis raudonas mygtukas - nedelsiant sustabdyti rankos variklius, kad būtų išvengta žalos
  3. Nešiojamas modulinis dizainas

Mobiliesiems naudotojams: šio projekto „reklaminis vaizdo įrašas“yra „YouTube“čia.

1 žingsnis: dalys

PIRŠTINĖ:

Norėdami sukurti pirštinių valdiklį, jums reikės:

  1. „Isotoner Smartouch Tech Stretch Stitched Glove“(ar panaši) - „Amazon.com“
  2. „Spectra Symboflex Sensor 2.2“- „Amazon.com“
  3. GY -521 6DOF MPU6050 3 ašių giroskopas + akselerometro modulis - svetainėje Fasttech.com
  4. 2X5 BOX HEADER STRAIGHT - Phoenixent.com
  5. 2X5 IDC SOCKET -RECEPTACLE - Phoenixent.com
  6. FLAT RIBBON CABLE 10 Dirigentas.050 "Pitch - Phoenixent.com
  7. 2 x 5 mm šviesos diodai - žalia ir geltona
  8. 2 x maži mygtukai
  9. Rezistoriai, laidai, adata, juodas siūlas, klijų pistoletas, litavimo pistoletas, lydmetalis ir kt.

PERDAVIMO STRAP-ON BOX:

  1. „Arduino“suderinama „Nano v3.0 ATmega328P -20AU“plokštė - svetainėje Fasttech.com
  2. Suderinamas su nRF24L01+ 2,4 GHz belaidžiu siųstuvu -imtuvu „Arduino“- „Amazon.com“
  3. „Gymboss WRISTBAND“- „Amazon.com“
  4. 9V akumuliatoriaus laikiklio dėžės dėklas su vielos laido įjungimo/išjungimo jungikliu - „Amazon.com“
  5. 2X5 BOX HEADER STRAIGHT - Phoenixent.com
  6. 9v baterija
  7. 47uF (50v) kondensatorius
  8. Rezistoriai, laidai, klijų pistoletas, litavimo pistoletas, lydmetalis ir kt.

„OWI ROBOTIC ARM CONTROLLER BOX“:

  1. „Arduino“suderinama „Uno R3 Rev3“plėtros lenta - „Fasttech.com“
  2. „Prototype Shield DIY KIT“, skirtas „Arduino“(ar panašiai) - „Amazon.com“
  3. Suderinamas su nRF24L01+ 2,4 GHz belaidžiu siųstuvu -imtuvu „Arduino“- „Amazon.com“
  4. 3 x L293D 16 kontaktų integruoto grandyno IC variklio tvarkyklė - svetainėje Fasttech.com
  5. 1 x SN74HC595 74HC595 8 bitų poslinkių registras su 3 būsenų išvesties registrais DIP16-„Amazon.com“
  6. 47uF (50v) kondensatorius
  7. „Arduino“dėžutė - „Amazon.com“
  8. Įjungimo/išjungimo jungiklis
  9. 2 x 13 mm mygtukai (vienas raudonas ir vienas žalias dangteliai)
  10. 2 x 2X7 BOX HEADER STRAIGHT - tas pats, kas aukščiau Phoenixent.com
  11. FLAT RIBBON CABLE 14 Dirigentas.050 "žingsnis - tas pats, kas aukščiau Phoenixent.com
  12. 9 V baterija + prisegama jungtis
  13. Rezistoriai, laidai, klijų pistoletas, litavimo pistoletas, lydmetalis ir kt.

… ir žinoma:

„OWI Robotic Arm Edge“- roboto ranka - OWI -535 - „Adafruit.com“

2 žingsnis: PROTOTIPAVIMAS

PROTOTIPAVIMAS
PROTOTIPAVIMAS
PROTOTIPAVIMAS
PROTOTIPAVIMAS

Aš primygtinai siūlau prototipuoti kiekvieną valdiklio įrenginį prieš lituojant visus komponentus.

Šis projektas naudoja keletą sudėtingų aparatūros dalių:

nRF24L01

Prireikė šiek tiek laiko, kol abu nRF24 kalbėjosi tarpusavyje. Matyt, nei „Nano“, nei „Uno“nesuteikia pakankamai stabilizuotos 3,3 V galios, kad moduliai veiktų nuosekliai. Mano atveju sprendimas buvo 47uF kondensatorius per abiejų nRF24 modulių maitinimo kaiščius. Taip pat yra keletas keistenybių naudojant RF24 biblioteką IRQ ir ne IRQ režimais, todėl rekomenduoju tikrai atidžiai išnagrinėti pavyzdžius.

Pora puikių išteklių:

nRF24L01 Itin mažos galios 2,4 GHz radijo dažnio siųstuvo -imtuvo IC produkto puslapis

RF24 tvarkyklės bibliotekos puslapis

Tiesiog „google“nRF24 + arduino sukurs daugybę nuorodų. Tai verta ištirti

74HC595 PERJUNGIMO REGISTRAS

Nenuostabu, kad turėdamas valdyti 5 variklius, šviesos diodą, du mygtukus ir belaidį modulį, „Uno“kaiščiai baigėsi gana greitai. Gerai žinomas būdas „išplėsti“PIN kodų skaičių yra naudoti pamainų registrą. Kadangi nRF24 jau naudojo SPI sąsają, nusprendžiau naudoti SPI ir pamainos registravimo programavimui (greičiui ir kaiščių išsaugojimui), o ne „shiftout“() funkcijai. Mano nuostabai, tai pirmą kartą veikė kaip žavesys. Tai galite patikrinti smeigtuko priskyrime ir eskizuose.

Duonos lenta ir trumpieji laidai yra jūsų draugai.

3 žingsnis: PIRŠTINĖ

PIRŠTINĖ
PIRŠTINĖ
PIRŠTINĖ
PIRŠTINĖ
PIRŠTINĖ
PIRŠTINĖ
PIRŠTINĖ
PIRŠTINĖ

„OWI Robotic ARM“turi 6 valdomus elementus („OWI Robotic Arm Edge Picture“)

  1. Šviesos diodas, esantis ant prietaiso GRIPPER
  2. GRIPAS
  3. Riešas
  4. KELNĖ - tai robotinės rankos dalis, pritvirtinta prie RIEŠO
  5. PELTUVAS - tai robotinės rankos dalis, pritvirtinta prie PAGRINDO
  6. PAGRINDAS

Pirštinė skirta valdyti „Robotic Arm“šviesos diodą ir visus 5 variklius (Laisvės laipsniai).

Nuotraukose pažymėti atskiri jutikliai ir aprašymas žemiau:

  1. GRIPPER yra valdomas mygtukais, esančiais ant vidurinio piršto ir rausvos spalvos. Griebtuvas uždaromas spaudžiant rodomąjį ir vidurinįjį pirštus kartu. Griebtuvas atidaromas paspaudus žiedą ir rausvą spalvą.
  2. WRIST valdomas lanksčiu indekso ieškiklio rezistoriumi. Sulenkus pirštą iki pusės, riešas nusileidžia žemyn, o iki galo - riešas kyla aukštyn. Laikydami rodomąjį pirštą tiesiai, riešas sustoja.
  3. ELBOW valdomas akselerometru - pakreipus delną aukštyn ir žemyn, alkūnė atitinkamai juda aukštyn ir žemyn
  4. PETAS turi būti kontroliuojamas akselerometru - pakreipus delną į dešinę ir į kairę (bet ne aukštyn kojom!), Petys atitinkamai juda aukštyn ir žemyn
  5. „BASE“taip pat valdo akselerometras, panašiai kaip pečius - pakreipęs delną į dešinę ir į kairę aukštyn kojom (delnas nukreiptas į viršų) atitinkamai perkelia pagrindą į dešinę ir į kairę
  6. Šviesos diodas ant griebtuvo įjungiamas/išjungiamas paspaudus abu griebtuvo valdymo mygtukus.

Visi mygtukų atsakymai vėluoja 1/4 sekundės, kad nesijaudintų.

Surinkti pirštinę reikia šiek tiek lituoti ir daug siūti. Iš esmės tai tik 2 mygtukų, lankstaus rezistoriaus, „Accel/Gyro“modulio pritvirtinimas prie pirštinės audinio ir laidų nukreipimas prie jungčių dėžutės.

Ant jungties dėžutės yra du šviesos diodai:

  1. ŽALIA - įjunkite
  2. GELTONA - mirksi, kai duomenys perduodami į rankos valdymo dėžutę.

4 žingsnis: PERDAVIMO DĖŽUTĖ

PERDAVIMO DĖŽUTĖ
PERDAVIMO DĖŽUTĖ
PERDAVIMO DĖŽUTĖ
PERDAVIMO DĖŽUTĖ
PERDAVIMO DĖŽUTĖ
PERDAVIMO DĖŽUTĖ

Siųstuvo dėžutė iš esmės yra „Arduino Nano“, „nRF24“belaidis modulis, lanksti laido jungtis ir 3 rezistoriai: 2 ištraukiami 10 kOhm rezistoriai, skirti pirštinės griebtuvo valdymo mygtukams, ir įtampos padalijimo 20 kOhm rezistorius lanksčiam jutikliui, valdančiam riešą.

Viskas yra lituojama kartu ant vero lentos. Atminkite, kad nRF24 „kabo“virš „Nano“. Bijojau, kad tai gali sukelti trukdžių, bet tai veikia.

Naudojant 9 V bateriją, dirželis yra šiek tiek apimtas, tačiau aš nenorėjau maišytis su LiPo baterijomis. Galbūt vėliau.

Lituoklio instrukcijas rasite kaiščių priskyrimo žingsnyje

5 žingsnis: GARNŲ VALDYMO DĖŽĖ

GARNŲ VALDYMO DĖŽUTĖ
GARNŲ VALDYMO DĖŽUTĖ
GARNŲ VALDYMO DĖŽUTĖ
GARNŲ VALDYMO DĖŽUTĖ
GARNŲ VALDYMO DĖŽUTĖ
GARNŲ VALDYMO DĖŽUTĖ
GARNŲ VALDYMO DĖŽUTĖ
GARNŲ VALDYMO DĖŽUTĖ

Rankų valdymo dėžutė yra pagrįsta „Arduino Uno“. Jis gauna komandas iš pirštinės belaidžiu būdu per nRF24 modulį ir valdo „OWI Robotoc Arm“per 3 L293D tvarkyklės lustus.

Kadangi beveik visi „Uno“kaiščiai buvo panaudoti, dėžutės viduje yra daug laidų - jis vos užsidaro!

Pagal konstrukciją dėžutė prasideda išjungimo režimu (tarsi būtų paspaustas raudono sustabdymo mygtukas), suteikdamas operatoriui laiko užsimauti pirštinę ir pasiruošti. Kai pasiruošęs, operatorius paspaudžia žalią mygtuką ir turi būti nedelsiant užmegztas ryšys tarp pirštinės ir valdymo dėžutės (kaip rodo geltonas pirštinės šviesos diodas ir raudonas šviesos diodas valdymo skydelyje).

JUNGTIS SU OWI

Prijungimas prie robotinės rankos atliekamas per 14 kontaktų dviejų eilučių antraštę (pagal paveikslėlį aukščiau) per 14 laidų plokščią kabelį.

  • Šviesos diodų jungtys yra prie bendros žemės (-) ir arduino kaiščio A0 per 220 omų rezistorių
  • Visi variklio laidai yra prijungti prie L293D kaiščių 3/6 arba 11/14 (atitinkamai +/-). Kiekvienas L293D palaiko 2 variklius, taigi dvi poras kaiščių.
  • OWI maitinimo linijos yra kairėje (+6v) ir dešinėje (GND) 7 kontaktų jungties kaiščiai geltonos viršutinės dalies gale. (Aukščiau esančioje nuotraukoje galite pamatyti prijungtus laidus). Šie du yra prijungti prie 8 (+) ir 4, 5, 12, 13 (GND) kaiščių visuose trijuose L293D.

Žiūrėkite likusį kaiščio priskyrimą kitame žingsnyje

6 veiksmas: PIN kodo priskyrimas

PIN kodo paskyrimas
PIN kodo paskyrimas
PIN kodo paskyrimas
PIN kodo paskyrimas
PIN kodo paskyrimas
PIN kodo paskyrimas

NANO:

  • 3.3v - 3.3v į nRF24L01 mikroschema (2 kontaktas)
  • 5v - 5v iki akselerometro plokštės, mygtukai, lankstus jutiklis
  • a0 - lankstus rezistoriaus įėjimas
  • a1 - geltonas „comms“LED valdymas
  • a4 - SDA į akselerometrą
  • a5 - SCL į akselerometrą
  • d02 - nRF24L01 lusto pertraukimo kaištis (8 kontaktas)
  • d03 - atidaro griebtuvo mygtuko įvestis
  • d04 - uždaryti griebtuvo mygtuką
  • d09 - SPI CSN kaištis į lustą nRF24L01 (4 kaištis)
  • d10 - SPI CS kaištis į lizdą nRF24L01 (3 kaištis)
  • d11 - SPI MOSI į nRF24L01 mikroschema (6 kontaktas)
  • d12 - SPI MISO į nRF24L01 lustą (7 kontaktas)
  • d13 - SPI SCK į nRF24L01 lustą (5 kaištis)
  • Vin - 9v +
  • GND - bendras pagrindas

UNO:

  • 3.3v - 3.3v į nRF24L01 mikroschema (2 kontaktas)
  • 5–5 V mygtukai
  • Vin - 9v +
  • GND - bendras pagrindas
  • a0 - riešo šviesos diodas +
  • a1 - SPI SS kaištis poslinkių registrui Pasirinkite - prie 12 kaiščių pamainų registre
  • a2 - RAUDONO mygtuko įvestis
  • a3 - ŽALIO mygtuko įvestis
  • a4 - krypties pagrindas dešinėje - 15 kaištis ant L293D
  • a5 - vedami komsai
  • d02 - nRF24L01 IRQ įvestis (8 kontaktas)
  • d03 - įjunkite pagrindinį servo (pwm) 1 arba 9 kaištį L293D
  • d04 - kryptis bazė kairė - 10 kaištis atitinkamame L293D
  • d05 - įjunkite pečių servo (pwm) 1 arba 9 kaištį L293D
  • d06 - įjunkite alkūninio servo (pwm) 1 arba 9 kaištį L293D
  • d07 - SPI CSN kaištis į lustą nRF24L01 (4 kaištis)
  • d08 - SPI CS kaištis į lustą nRF24L01 (3 kaištis)
  • d09 - įjunkite riešo servo (pwm) 1 arba 9 kaištį L293D
  • d10 - įjunkite griebtuvo servo (pwm) 1 arba 9 kaištį L293D
  • d11 - SPI MOSI į nRF24L01 lustą (6 kaištis) ir 14 kaiščių poslinkių registre
  • d12 - SPI MISO į nRF24L01 lustą (7 kontaktas)
  • d13 - SPI SCK į nRF24L01 mikroschemą (5 kaištis) ir 11 kaištis poslinkių registre

PERJUNGIMO REGISTRAS IR L293D:

  • 74HC595 kaištis QA (15) į L293D #1 kaištį
  • 74HC595 QB (1) kaištis iki L293D #1 kaiščio
  • 74HC595 QC (2) kaištis iki L293D #1 kaiščio
  • 74HC595 QD (3) kaištis iki L293D #1 kaiščio
  • 74HC595 kaištis QE (4) į L293D #2 kaištį
  • 74HC595 QF (5) kaištis į L293D #2 kaištį 7
  • 74HC595 QG (6) kaištis iki L293D #2 kaiščio 10
  • 74HC595 QH (7) kaištis iki L293D #2 kaiščio 15

7 žingsnis: KOMUNIKACIJA

KOMUNIKACIJA
KOMUNIKACIJA

Pirštinė siunčia 2 baitus duomenų į valdymo dėžutę 10 kartų per sekundę arba kaskart, kai gaunamas vieno iš jutiklių signalas.

2 baitų pakanka 6 valdikliams, nes mums tereikia išsiųsti:

  • ĮJUNGTAS/IŠJUNGTAS šviesos diodams (1 bitas) - aš iš tikrųjų naudojau 2 bitus, kad atitiktų variklius, tačiau pakanka vieno
  • OFF/RIGHT/LEFT 5 varikliams: po 2 bitus = 10 bitų

Iš viso pakanka 11 arba 12 bitų.

Krypties kodai:

  • IŠJUNGTA: 00
  • TEISINGAI: 01
  • Kairė: 10

Kontrolinis žodis atrodo taip (šiek tiek):

2 baitas ---------------- 1 baitas ----------------

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 - griebtuvas
  • M2 - riešas
  • M3 - alkūnė
  • M4 - petys
  • M5 - bazė

1 baitas gali būti patogiai įvedamas tiesiai į poslinkių registrą, nes valdo 1–4 variklių dešinę/kairę kryptį.

Ryšiams įjungtas 2 sekundžių skirtasis laikas. Jei įvyksta skirtasis laikas, visi varikliai sustabdomi taip, lyg būtų paspaustas raudonas mygtukas.

8 veiksmas: eskizai ir dar daugiau …

Eskizai ir daugiau…
Eskizai ir daugiau…

PIRŠTINĖ

Pirštinių eskizas naudoja šias bibliotekas:

  • „DirectIO“- galima rasti „Github“
  • „I2Cdev“- galima rasti „Github“
  • Viela - „Arduino IDE“dalis
  • MPU6050 - galima rasti „Github“
  • SPI - „Arduino IDE“dalis
  • RF24 - galima rasti „Github“

ir trys mano sukurtos bibliotekos:

  • „AvgFilter“- yra „Github“
  • „DhpFilter“- galima rasti „Github“
  • „TaskScheduler“- galima rasti „Github“

Pirštinių eskizą rasite čia: Pirštinių eskizas v1.3

GARNŲ VALDYMO DĖŽUTĖ

Rankos eskizui naudojamos šios bibliotekos:

  • „DirectIO“- galima rasti „Github“
  • „PinChangeInt“- prieinama „Github“
  • SPI - „Arduino IDE“dalis
  • RF24 - galima rasti „Github“

ir mano sukurta biblioteka:

„TaskScheduler“- galima rasti „Github“

Rankos eskizą rasite čia: Rankos eskizas v1.3

Naudotos techninės įrangos duomenų lapai

  • 74HC595 pamainų registras - duomenų lapas
  • L293D variklio tvarkyklė - duomenų lapas
  • nRF24 belaidis modulis - duomenų lapas
  • Akselerometras/giroskopo modulis MPU6050 - duomenų lapas

2015 m. Gegužės 31 d. ATNAUJINIMAS:

Naują pirštinių ir rankų valdymo dėžės eskizų versiją rasite čia: Pirštinių ir rankų eskizai v1.5

Jie taip pat yra „github“čia.

Pakeitimai

  • Prie ryšio struktūros pridėta dar du baitai, kad būtų išsiųstas prašomas variklio greitis riešo, alkūnės, peties ir pagrindiniams varikliams kaip 5 bitų vertė (0.. 31) iš pirštinės proporcinga valdymo gesto kampui (žr. Toliau). „Arm Control Box“susieja kiekvieno variklio reikšmes [0.. 31] su atitinkamomis PWM reikšmėmis. Tai leidžia operatoriui laipsniškai valdyti greitį ir tiksliau valdyti ranką.
  • Naujas gestų rinkinys:

1. Šviesos diodas: mygtukų valdymo šviesos diodas - vidurinio piršto mygtukas - ĮJUNGTAS, rožinio piršto mygtukas - IŠJUNGTAS

2. GRIPPER: Lankstūs juostiniai valdikliai Griebtuvas - pusiau sulenktas pirštas - ATVIRAS, visiškai sulenktas pirštas - UŽDARYTI

3. Riešas: riešas valdomas pakreipiant delną iš visiškai horizontalios padėties Aukštyn ir žemyn. Daugiau pakreipimo sukuria didesnį greitį

4. ARM: Ranka valdoma pakreipiant delną iš visiškai horizontalios padėties į kairę ir į dešinę. Daugiau pakreipimo sukuria didesnį greitį

5. PETAS: petys valdomas sukant delną į dešinę ir į kairę nuo delno, nukreipto tiesiai į viršų. Delnas yra pasuktas išilgai alkūnės ašies (taip pat mojuoja ranka)

6. PAGRINDAS: Pagrindas valdomas taip pat, kaip ir petys, delnas nukreiptas tiesiai žemyn.

9 žingsnis: KAS KITAS?

KAS DAR?
KAS DAR?

VAIZDAVIMAS DARBE

Kaip įprasta naudojant tokias sistemas, jas būtų galima užprogramuoti daug daugiau.

Pavyzdžiui, dabartinis dizainas jau apima papildomas galimybes, kurių neįmanoma padaryti naudojant standartinį nuotolinio valdymo pultą:

  • Palaipsniui didinamas greitis: kiekvienas variklio judesys pradedamas iš anksto nustatytu minimaliu greičiu, kuris palaipsniui didinamas kas 1 sekundę, kol pasiekiamas maksimalus greitis. Tai leidžia tiksliau valdyti kiekvieną variklį (ypač riešą ir griebtuvą)
  • Greitesnis judesio atšaukimas: kai „Arm Box“gauna komandą sustabdyti variklį, ji akimirksniu apverčia variklį maždaug 50 ms, taip „nutraukdama“judesį ir leis tiksliau valdyti.

KAS DAR?

Galbūt būtų galima įgyvendinti sudėtingesnius valdymo gestus. Arba vienu metu gestai gali būti naudojami sudėtingiems valdikliams. Ar Arm gali šokti?

Jei turite idėją, kaip perprogramuoti pirštinę, ar turite eskizo versiją, kurią norite išbandyti - praneškite man: [email protected]

10 žingsnis: *** LAIMĖJAME !!! ***

*** MES LAIMĖJOME !!! ***
*** MES LAIMĖJOME !!! ***

Šis projektas laimėjo pirmąją premiją konkurse „Coded Creations“, kurį rėmė „Microsoft“.

Pasižiūrėk! WOO-HOO !!!

Koduoti kūriniai
Koduoti kūriniai
Koduoti kūriniai
Koduoti kūriniai

Antroji premija už užkoduotą kūrybą

Rekomenduojamas: