Sadržaj:

Mahnite rukom da kontrolirate OWI robotsku ruku Nema vezanih žica: 10 koraka (sa slikama)
Mahnite rukom da kontrolirate OWI robotsku ruku Nema vezanih žica: 10 koraka (sa slikama)

Video: Mahnite rukom da kontrolirate OWI robotsku ruku Nema vezanih žica: 10 koraka (sa slikama)

Video: Mahnite rukom da kontrolirate OWI robotsku ruku Nema vezanih žica: 10 koraka (sa slikama)
Video: Множество разноцветных и бесцветных карт из издания Time Spiral Remastered 2024, Studeni
Anonim
Image
Image
Dijelovi
Dijelovi

IDEJA:

Na Instructables.com (od 13. svibnja 2015.) postoje još najmanje 4 druga projekta oko izmjene ili kontrole OWI Robotic Arm. Nije iznenađujuće jer je to sjajan i jeftin robotski komplet za igru. Ovaj je projekt sličan po duhu (tj. Upravljanje robotskom rukom s Arduinom), ali različit u pristupu. [video]

Ideja je omogućiti bežičnim upravljanjem robotskom rukom pokretima. Također, pokušao sam svesti izmjene Robotske ruke na minimum, tako da se i dalje može koristiti s originalnim kontrolerom.

Zvuči jednostavno.

Ono što je na kraju bio trodijelni projekt:

  1. Rukavica opremljena s dovoljno senzora za upravljanje LED diodama i 5 motora
  2. Uređaj za odašiljanje zasnovan na Arduinu Nanou koji prihvaća upravljačke naredbe iz rukavice i bežično ih šalje na uređaj za upravljanje rukom
  3. Bežični prijamnik i uređaj za upravljanje motorom baziran na Arduinu Uno priključen na OWI Robotic Arm

OSOBINE

  1. Podrška za svih 5 stupnjeva slobode (DOF) i LED diode
  2. Veliko crveno dugme - za trenutno zaustavljanje motora na ruci sprječavajući oštećenja
  3. Prijenosni modularni dizajn

Za korisnike mobilnih uređaja: "promotivni video" ovog projekta nalazi se na YouTubeu ovdje.

Korak 1: Dijelovi

RUKAVICA:

Za izradu kontrolera rukavica trebat će vam sljedeće:

  1. Isotoner Smartouch Tech Stretch Stvitch Glove (ili slično) - na Amazon.com
  2. Spectra Symboflex senzor 2.2 " - na Amazon.com
  3. GY -521 6DOF MPU6050 3 -osi žiroskop + modul ubrzanja - na Fasttech.com
  4. 2X5 GLAVA KUTIJE RAVNA - na Phoenixent.com
  5. 2X5 IDC utičnica -PRIJEMNICA - na Phoenixent.com
  6. PLOČASTI TRAKOVNI KABL 10 Vodič.050 "Nagib - na Phoenixent.com
  7. 2 x 5 mm LED diode - zelena i žuta
  8. 2 x Mali gumbi
  9. Otpornici, žice, igla, crni konac, pištolj za ljepilo, pištolj za lemljenje, lemljenje itd.

KUTIJA ZA TRANSMISSION STRAP-ON:

  1. Arduino kompatibilna Nano v3.0 ATmega328P -20AU ploča - na Fasttech.com
  2. nRF24L01+ 2,4 GHz bežični primopredajnik Kompatibilan - na Amazon.com
  3. GYmboss WRISTBAND - na Amazon.com
  4. 9V kućište držača baterije s prekidačem za uključivanje/isključivanje žičanih vodova - na Amazon.com
  5. 2X5 GLAVA KUTIJE RAVNA - na Phoenixent.com
  6. 9v baterija
  7. 47uF (50v) kondenzator
  8. Otpornici, žice, pištolj za ljepilo, pištolj za lemljenje, lemljenje itd.

OWI ROBOTSKA KONTROLA ZA RUKOVANJE:

  1. Arduino kompatibilna Uno R3 Rev3 razvojna ploča - na Fasttech.com
  2. Prototip Shield DIY KIT za Arduino (ili slično) - na Amazon.com
  3. nRF24L01+ 2,4 GHz bežični primopredajnik Kompatibilan - na Amazon.com
  4. 3 x L293D 16 -pinski integrirani sklop upravljačkog programa motora motora - na Fasttech.com
  5. 1 x SN74HC595 74HC595 8-bitni registar pomaka s izlaznim registrima s 3 stanja DIP16-na Amazon.com
  6. 47uF (50v) kondenzator
  7. Kutija za Arduino - na Amazon.com
  8. Prekidač za uključivanje/isključivanje
  9. 2 gumba od 13 mm (jedan crveni i jedan zeleni poklopac)
  10. 2 x 2X7 GLAVA KUTIJE RAVNA - isto kao gore na Phoenixent.com
  11. PLOČASTI TRAKOVNI KABL 14 Vodič.050 "Nagib - isto kao gore na Phoenixent.com
  12. 9v baterija + utični konektor
  13. Otpornici, žice, pištolj za ljepilo, pištolj za lemljenje, lemljenje itd.

… i naravno:

OWI Robotic Arm Edge - Robotska ruka - OWI -535 - na Adafruit.com

Korak 2: PROTOTIPIRANJE

PROTOTIPIRANJE
PROTOTIPIRANJE
PROTOTIPIRANJE
PROTOTIPIRANJE

Snažno predlažem izradu prototipova svakog od upravljačkih uređaja prije lemljenja svih komponenti zajedno.

Ovaj projekt koristi nekoliko izazovnih dijelova hardvera:

nRF24L01

Trebalo mi je neko vrijeme da natjeram dva nRF24 da razgovaraju. Očigledno da niti Nano, niti Uno ne pružaju dovoljno stabilizirane snage od 3,3 V da bi moduli radili dosljedno. Rješenje u mom slučaju bio je kondenzator od 47uF preko pinova za napajanje na oba nRF24 modula. Postoji i nekoliko poteškoća u korištenju RF24 biblioteke u IRQ i ne-IRQ načinima, pa preporučujem da pažljivo proučite primjere.

Nekoliko sjajnih resursa:

nRF24L01 Stranica proizvoda IC proizvoda IC RF primopredajnika iznimno male snage 2,4 GHz

Stranica knjižnice upravljačkih programa RF24

Samo guglanje nRF24 + arduino proizvest će mnogo veza. Vrijedi istražiti

74HC595 REGISTAR MJENJA

Nije iznenađujuće što sam morao kontrolirati 5 motora, LED diodu, dva gumba i bežični modul, pa sam relativno brzo ostao bez pinova na Uno -u. Poznati način "proširenja" broja pin -ova je upotreba registra pomaka. Budući da je nRF24 već koristio SPI sučelje, odlučio sam koristiti SPI i za programiranje registara pomaka (za brzinu i spremanje pinova) umjesto funkcije shiftout (). Na moje iznenađenje, od prvog je puta djelovao kao šarm. To možete provjeriti u dodjeli pinova i u skicama.

Oglasna ploča i kratkospojne žice vaši su prijatelji.

Korak 3: RUKAVICA

RUKAVICA
RUKAVICA
RUKAVICA
RUKAVICA
RUKAVICA
RUKAVICA
RUKAVICA
RUKAVICA

OWI Robotic ARM ima 6 stavki za kontrolu (slika OWI Robotic Arm Edge)

  1. LED dioda koja se nalazi na GRIPPER -u uređaja
  2. GRIPAR
  3. ZGLOB
  4. KOLJENJAK - je dio robotske ruke pričvršćen na ZGLOB
  5. RAČA je dio robotske ruke pričvršćen na BAZU
  6. BAZA

Rukavica je dizajnirana za upravljanje LED diodom robota i svih 5 motora (stupnjevi slobode).

Imam pojedinačne senzore označene na slikama, kao i donji opis:

  1. GRIPPER -om se upravlja pomoću tipki na srednjem prstu i ružičaste boje. Hvatač se zatvara pritiskom kažiprsta i srednjeg prsta zajedno. Gripper se otvara pritiskom prstena i pinky zajedno.
  2. WRIST -om upravlja fleksibilni otpornik na tražilici indeksa. Uvijanje prsta do polovice čini zglob spuštenim, a uvijanje do kraja čini zglob gore. Držanjem kažiprsta ravno zglobovi se zaustavljaju.
  3. KOLJENOM se upravlja akcelerometrom - naginjanje dlana prema gore i dolje pomiče lakat prema gore i dolje
  4. RAČU se kontrolira akcelerometrom - naginjanje dlana udesno i ulijevo (ne naopako!) Pomiče rame gore, odnosno dolje
  5. BASE -om se upravlja i akcelerometrom, slično nagibu ramena - naginjanje dlana udesno i ulijevo skroz naopako (dlan prema gore) pomiče bazu desno odnosno lijevo
  6. LED dioda na hvataljki uključuje se/isključuje pritiskom zajedno na obje tipke za upravljanje hvataljkom.

Svi odgovori gumba odgađaju se za 1/4 sekunde kako bi se izbjeglo podrhtavanje.

Sklapanje rukavice zahtijeva malo lemljenja i puno šivanja. U osnovi je samo pričvršćivanje 2 gumba, fleksibilnog otpornika, Accel/žiroskopskog modula na tkaninu rukavice i usmjeravanje žica do kutije za konektore.

Dvije LED diode na priključnoj kutiji su:

  1. ZELENO - uključeno
  2. ŽUTO - treperi kada se podaci prenose u upravljačku kutiju za ruku.

Korak 4: KUTIJA ZA PRIJEMNIK

PRIJEMNIK KUTIJA
PRIJEMNIK KUTIJA
PRIJEMNIK KUTIJA
PRIJEMNIK KUTIJA
PRIJEMNIK KUTIJA
PRIJEMNIK KUTIJA

Kutija odašiljača je u osnovi Arduino Nano, bežični modul nRF24, fleksibilni žičani konektor i 3 otpornika: 2 otporna otpornika od 10 kOhm za upravljačke tipke hvataljke na rukavici i otpornik podjele napona od 20 kOhm za fleksibilni senzor koji kontrolira zglob.

Sve je lemljeno zajedno na vero-ploči. Imajte na umu da nRF24 "visi" nad Nanom. Brinuo sam se da bi to moglo uzrokovati smetnje, ali radi.

Korištenje 9v baterije čini dio za pričvršćivanje malo glomaznim, ali nisam se želio petljati s LiPo baterijama. Možda kasnije.

Upute za lemljenje potražite u koraku dodjele pinova

Korak 5: KONTROLNA KUTIJA ZA RUKU

KUTIJA ZA UPRAVLJANJE RUKOM
KUTIJA ZA UPRAVLJANJE RUKOM
KUTIJA ZA UPRAVLJANJE RUKOM
KUTIJA ZA UPRAVLJANJE RUKOM
KUTIJA ZA UPRAVLJANJE RUKOM
KUTIJA ZA UPRAVLJANJE RUKOM
KUTIJA ZA UPRAVLJANJE RUKOM
KUTIJA ZA UPRAVLJANJE RUKOM

Upravljačka kutija za ruke temelji se na Arduino Uno. Bežično prima naredbe od rukavice putem nRF24 modula i kontrolira OWI Robotoc Arm putem 3 upravljačka čipa L293D.

Budući da su iskorištene gotovo sve Uno pinove, unutar kutije ima puno žica - jedva se zatvara!

Po dizajnu, kutija se pokreće u načinu rada ISKLJUČENO (kao da je pritisnuta tipka za zaustavljanje), dajući rukovatelju vremena da stavi rukavicu i pripremi se. Nakon što je spreman, rukovatelj pritisne zeleni gumb, a veza između rukavice i upravljačke kutije trebala bi se odmah uspostaviti (što pokazuje žuta LED dioda na rukavici i crvena LED dioda na upravljačkoj kutiji).

POVEZIVANJE NA OWI

Povezivanje s robotskom rukom vrši se putem 14 -polnog dvorednog zaglavlja (prema gornjoj slici) putem 14 -žičnog ravnog kabela.

  • LED priključci su na zajedničko uzemljenje (-) i arduino pin A0 preko otpornika od 220 Ohma
  • Sve žice motora spojene su na pinove L293D 3/6 ili 11/14 (+/-). Svaki L293D podržava 2 motora, dakle dva para pinova.
  • OWI vodovi su krajnji lijevi (+6v) i krajnji desni (GND) pinovi 7 -polnog konektora na stražnjoj strani žutog vrha. (Na gornjoj slici možete vidjeti priključene žice). Ova su dva spojena na pinove 8 (+) i 4, 5, 12, 13 (GND) na sva tri L293D.

Ostatak dodjele pinova pogledajte u sljedećem koraku

Korak 6: DODJELA PIN -a

DODJELA PIN -a
DODJELA PIN -a
DODJELA PIN -a
DODJELA PIN -a
DODJELA PIN -a
DODJELA PIN -a

NANO:

  • 3.3v - 3.3v na nRF24L01 čip (pin 2)
  • 5v - 5v na ploču za akcelerometar, gumbi, fleksibilni senzor
  • a0 - ulaz fleksibilnog otpornika
  • a1 - žuta "comms" LED kontrola
  • a4 - SDA na mjerač ubrzanja
  • a5 - SCL na mjerač ubrzanja
  • d02 - čip nRF24L01 Prekidni pin (pin 8)
  • d03 - otvoren ulaz tipke hvataljke
  • d04 - zatvori ulaz tipke hvataljke
  • d09 - SPI CSN pin na čip nRF24L01 (pin 4)
  • d10 - SPI CS pin na čip nRF24L01 (pin 3)
  • d11 - SPI MOSI na čip nRF24L01 (pin 6)
  • d12 - SPI MISO na čip nRF24L01 (pin 7)
  • d13 - SPI SCK prema nRF24L01 čipu (pin 5)
  • Vin - 9v +
  • GND - zajedničko tlo

UNO:

  • 3.3v - 3.3v na nRF24L01 čip (pin 2)
  • Tipke 5v - 5v na
  • Vin - 9v +
  • GND - zajedničko tlo
  • a0 - LED za zglob +
  • a1 - SPI SS pin za Shift Register Odaberite - za pin 12 na Shift Register
  • a2 - ULAZ CRVENIM tipkama
  • a3 - ULAZ ZELENOM tipkom
  • a4 - baza smjera desno - pin 15 na L293D
  • a5 - vodila za komunikaciju
  • d02 - nRF24L01 IRQ ulaz (pin 8)
  • d03 - omogućite osnovni servo (pwm) pin 1 ili 9 na L293D
  • d04 - baza smjera lijevo - pin 10 na odgovarajućem L293D
  • d05 - omogućite rameni servo (pwm) pin 1 ili 9 na L293D
  • d06 - omogućite servo (pwm) koljeno pin 1 ili 9 na L293D
  • d07 - SPI CSN pin na čip nRF24L01 (pin 4)
  • d08 - SPI CS pin na čip nRF24L01 (pin 3)
  • d09 - omogućite servo (pwm) pin 1 ili 9 na L293D
  • d10 - omogućite servo (pwm) servo hvataljke pin 1 ili 9 na L293D
  • d11 - SPI MOSI na čip nRF24L01 (pin 6) i pin 14 na registru pomaka
  • d12 - SPI MISO na čip nRF24L01 (pin 7)
  • d13 - SPI SCK na čip nRF24L01 (pin 5) i pin 11 na registru pomaka

REGISTAR POMJENE I L293D:

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

Korak 7: KOMUNIKACIJA

KOMUNIKACIJA
KOMUNIKACIJA

Rukavica šalje 2 bajta podataka u upravljačku kutiju 10 puta u sekundi ili kad god se primi signal s jednog od senzora.

2 bajta dovoljna su za 6 kontrola jer samo moramo poslati:

  • ON/OFF za LED (1 bit) - Zapravo sam koristio 2 bita kako bih bio u skladu s motorima, ali jedan je dovoljan
  • OFF/DESNO/LIJEVO za 5 motora: svaki po 2 bita = 10 bita

Ukupno je dovoljno 11 ili 12 bitova.

Kodovi smjerova:

  • ISKLJUČENO: 00
  • DESNO: 01
  • LIJEVO: 10

Kontrolna riječ izgleda ovako (pomalo):

Bajt 2 ---------------- Bajt 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 - hvataljka
  • M2 - ručni zglob
  • M3 - lakat
  • M4 - rame
  • M5 - baza

Bajt 1 može se prikladno unijeti izravno u registar pomaka, budući da kontrolira smjer desno/lijevo motora 1 do 4.

Za komunikaciju je omogućen prekid od 2 sekunde. Ako dođe do isteka vremena, svi motori se zaustavljaju kao da je pritisnuta CRVENA tipka.

Korak 8: SKETKE i više …

SKETKE i više…
SKETKE i više…

RUKAVICA

Skica rukavica koristi sljedeće biblioteke:

  • DirectIO - dostupno na Githubu
  • I2Cdev - dostupno na Githubu
  • Žica - dio Arduino IDE -a
  • MPU6050 - dostupno na Githubu
  • SPI - dio Arduino IDE -a
  • RF24 - dostupno na Githubu

i tri biblioteke koje sam razvio:

  • AvgFilter - dostupno na Githubu
  • DhpFilter - dostupno na Githubu
  • TaskScheduler - dostupno na Githubu

Skica rukavica dostupna je ovdje: Skica rukavica v1.3

KUTIJA ZA UPRAVLJANJE RUKOM

Skica ruke koristi sljedeće biblioteke:

  • DirectIO - dostupno na Githubu
  • PinChangeInt - dostupno na Githubu
  • SPI - dio Arduino IDE -a
  • RF24 - dostupno na Githubu

i biblioteku koju sam razvio:

TaskScheduler - dostupno na Githubu

Skica ruke dostupna je ovdje: Skica ruke v1.3

Tehnički listovi za korišteni hardver

  • 74HC595 registar pomaka - tehnički list
  • Pogonski program motora L293D - tehnički list
  • bežični modul nRF24 - tehnički list
  • MPU6050 akcelerometar/modul žiroskopa - tehnički list

31. svibnja 2015. AŽURIRAJ:

Nova verzija skica kontrolne kutije za rukavice i ruke dostupna je ovdje: Skice za rukavice i ruke v1.5

Ovdje se također nalaze na githubu.

Promjene

  • U komunikacijsku strukturu dodana su još dva bajta za slanje tražene brzine motora za zglobne, lakatne, ramene i bazne motore kao 5 -bitnu vrijednost (0.. 31) iz rukavice proporcionalno kutu upravljačke geste (vidi dolje). Arm Control Box preslikava vrijednosti [0.. 31] na odgovarajuće vrijednosti PWM za svaki od motora. To omogućuje postupnu kontrolu brzine od strane rukovatelja i preciznije rukovanje rukom.
  • Novi skup gesta:

1. LED: Gumbi za upravljanje tipkama - tipka srednjeg prsta - UKLJUČENA, tipka sa malim prstima - ISKLJUČENA

2. GRIPPER: Fleksibilne komande za hvatanje hvataljke - polusavijeni prst - OTVOREN, potpuno savijeni prst - ZATVORENO

3. ZGLON: Zglob se kontrolira naginjanjem dlana iz potpuno vodoravnog položaja prema gore i dolje. Više nagiba proizvodi veću brzinu

4. ARM: Rukom se upravlja naginjanjem dlana iz potpuno vodoravnih položaja LIJEVO i DESNO. Više nagiba proizvodi veću brzinu

5. RAČA: Rame se kontrolira rotiranjem dlana DESNO i LIJEVO od dlana usmjerenog ravno prema gore. Dlan se okreće duž osi lakta (kao i mahanje rukom)

6. BAZA: Baza se kontrolira na isti način kao i rame s dlanom usmjerenim prema dolje.

Korak 9: ŠTO JOŠ?

ŠTO DRUGO?
ŠTO DRUGO?

MAŠTA NA RADU

Kao i obično s takvim sustavima, mogli bi se programirati da učine puno više.

Na primjer, trenutni dizajn već uključuje dodatne sposobnosti, što nije moguće sa standardnim daljinskim upravljačem:

  • Postupno povećanje brzine: svaki pokret motora započinje unaprijed definiranom minimalnom brzinom, koja se postupno povećava svakih 1 sekundu dok se ne postigne maksimalna brzina. To omogućuje precizniju kontrolu svakog od motora (osobito zgloba i hvataljke)
  • Brže poništavanje kretanja: kada okvir za naoružanje primi naredbu da se zaustavi motor, on trenutačno preokreće motor za oko 50 ms, čime se "prekida" kretanje i omogućuje preciznija kontrola.

ŠTO DRUGO?

Možda bi se mogle provesti složenije geste kontrole. Ili bi se istovremene geste mogle koristiti za složene kontrole. Može li Arm plesati?

Ako imate ideju kako ponovno programirati rukavicu ili imate verziju skice koju želite testirati - obavijestite me: [email protected]

Korak 10: *** POBJEDILI SMO !!! ***

*** POBIJEDILI SMO !!! ***
*** POBIJEDILI SMO !!! ***

Ovaj je projekt osvojio prvu nagradu na natječaju Kodirane kreacije koje sponzorira Microsoft.

Provjerite! WOO-HOO !!!

Kodirane kreacije
Kodirane kreacije
Kodirane kreacije
Kodirane kreacije

Druga nagrada u kodiranim kreacijama

Preporučeni: