Sisällysluettelo:

Heiluta kättäsi ohjataksesi OWI -robotti Ei jousia: 10 vaihetta (kuvilla)
Heiluta kättäsi ohjataksesi OWI -robotti Ei jousia: 10 vaihetta (kuvilla)

Video: Heiluta kättäsi ohjataksesi OWI -robotti Ei jousia: 10 vaihetta (kuvilla)

Video: Heiluta kättäsi ohjataksesi OWI -robotti Ei jousia: 10 vaihetta (kuvilla)
Video: Кочевники Ирана: вдохновляющая выносливость женщин-кочевников: стойкие воины-кочевники, #семья 2024, Marraskuu
Anonim
Image
Image
Osat
Osat

AJATUS:

Instructables.com -sivustossa on vähintään 4 muuta projektia (13.5.2015 alkaen), jotka liittyvät OWI Robotic Arm -laitteen muuttamiseen tai hallintaan. Ei ole yllättävää, koska se on niin loistava ja edullinen robottisarja, jolla voi pelata. Tämä projekti on hengessä samanlainen (eli ohjaa robottivartta Arduinolla), mutta lähestymistavassa erilainen. [video]

Ajatuksena on pystyä ohjaamaan robottivartta langattomasti eleillä. Yritin myös pitää robotin käsivarren muutokset mahdollisimman vähäisinä, joten sitä voidaan silti käyttää alkuperäisen ohjaimen kanssa.

Kuulostaa yksinkertaiselta.

Se päätyi kolmeosaiseen projektiin:

  1. Käsine, jossa on riittävästi antureita LEDin ja 5 moottorin ohjaamiseen
  2. Arduino Nano -lähetinlaite, joka hyväksyy ohjauskomennot käsineestä ja lähettää sen langattomasti käsiohjainlaitteeseen
  3. Arduino Uno -pohjainen langaton vastaanotin ja moottorin ohjauslaite, joka on kiinnitetty OWI-robottivarsiin

OMINAISUUDET

  1. Tukee kaikkia 5 vapausastetta (DOF) ja LEDiä
  2. Iso punainen painike - pysäyttää varren moottorit välittömästi vaurioiden estämiseksi
  3. Kannettava modulaarinen rakenne

Mobiilikäyttäjille: tämän hankkeen "mainosvideo" on YouTubessa täällä.

Vaihe 1: Osat

KÄSINE:

Tarvitset käsineohjaimen rakentamiseen seuraavat asiat:

  1. Isotoner Smartouch Tech Stretch Stitched Glove (tai vastaava) - Amazon.comissa
  2. Spectra Symboflex Sensor 2.2 " - Amazon.comissa
  3. GY -521 6DOF MPU6050 3 -akselinen gyroskooppi + kiihtyvyysanturimoduuli - sivustolla Fasttech.com
  4. 2X5 BOX HEADER STRAIGHT - Phoenixent.comissa
  5. 2X5 IDC SOCKET -RECEPTACLE - Phoenixent.comissa
  6. FLAT RIBBON CABLE 10 Johdin.050 "Pitch - Phoenixent.comissa
  7. 2 x 5 mm: n LEDit - vihreä ja keltainen
  8. 2 x pienet napit
  9. Vastukset, johdot, neula, musta lanka, liimapistooli, juotospistooli, juote jne.

VOIMANSIIRTOKOTELO:

  1. Arduino -yhteensopiva Nano v3.0 ATmega328P -20AU -kortti - Fasttech.com
  2. nRF24L01+ 2,4 GHz: n langaton lähetinvastaanotin Arduino -yhteensopiva - Amazon.comissa
  3. Gymboss WRISTBAND - Amazon.comissa
  4. 9 V: n paristokotelon kotelo, jossa on johdin ON/OFF -kytkin - Amazon.com
  5. 2X5 BOX HEADER STRAIGHT - Phoenixent.comissa
  6. 9v akku
  7. 47uF (50v) kondensaattori
  8. Vastukset, johdot, liimapistooli, juotospistooli, juote jne.

OWI ROBOTIC ARM CONTROLLER BOX:

  1. Arduino -yhteensopiva Uno R3 Rev3 -kehityskortti - Fasttech.comissa
  2. Prototype Shield DIY KIT Arduinolle (tai vastaavalle) - Amazon.comissa
  3. nRF24L01+ 2,4 GHz: n langaton lähetinvastaanotin Arduino -yhteensopiva - Amazon.comissa
  4. 3 x L293D 16 -nastainen integroidun piirin IC -moottorin ohjain - sivustolla Fasttech.com
  5. 1 x SN74HC595 74HC595 8-bittinen siirtorekisteri, jossa on 3-tilan lähtörekisterit DIP16-Amazon.com
  6. 47uF (50v) kondensaattori
  7. Laatikko Arduinolle - Amazon.comissa
  8. On / off kytkin
  9. 2 x 13 mm painiketta (yksi punainen ja yksi vihreä korkki)
  10. 2 x 2X7 BOX HEADER STRAIGHT - sama kuin yllä Phoenixent.comissa
  11. FLAT RIBBON CABLE 14 Johdin.050 "Pitch - sama kuin yllä Phoenixent.comissa
  12. 9V akku + kiinnitettävä liitin
  13. Vastukset, johdot, liimapistooli, juotospistooli, juote jne.

… Ja tietenkin:

OWI Robotic Arm Edge - Robottivarsi - OWI -535 - Adafruit.com -sivustolla

Vaihe 2: PROTOTYYPPI

PROTOTYYPPI
PROTOTYYPPI
PROTOTYYPPI
PROTOTYYPPI

Suosittelen vahvasti prototyyppien tekemistä jokaiselle ohjainlaitteelle ennen kaikkien komponenttien juottamista yhteen.

Tämä projekti käyttää muutamia haastavia laitteistoja:

nRF24L01

Kesti jonkin aikaa saada kaksi nRF24: tä puhumaan keskenään. Ilmeisesti Nano tai Uno eivät tarjoa tarpeeksi vakaata 3,3 V: n virtaa, jotta moduulit toimivat johdonmukaisesti. Minun tapauksessani ratkaisu oli 47uF: n kondensaattori molempien nRF24 -moduulien nastan poikki. RF24-kirjaston käyttäminen IRQ- ja ei-IRQ-tiloissa sisältää myös muutamia omituisuuksia, joten suosittelen tutkimaan esimerkkejä todella huolellisesti.

Pari hienoa resurssia:

nRF24L01 Erittäin pienitehoinen 2,4 GHz: n RF -lähetinvastaanottimen IC -tuotesivu

RF24 -ohjainkirjastosivu

Vain googlaamalla nRF24 + arduino tuottaa paljon linkkejä. Kannattaa tutkia

74HC595 SHIFT -REKISTERÖINTI

Ei ole yllättävää, että jouduin ohjaamaan 5 moottoria, LED -valoa, kahta painiketta ja langatonta moduulia. Unon nastat loppuivat suhteellisen nopeasti. Tunnettu tapa "pidentää" pin -lukumäärääsi on käyttää siirtorekisteriä. Koska nRF24 käytti jo SPI -käyttöliittymää, päätin käyttää SPI: tä myös siirtorekisteriohjelmointiin (nopeuden ja nastojen säästämiseksi) shiftout () -toiminnon sijasta. Yllätyksekseni se toimi kuin viehätys ensimmäisellä kerralla. Voit tarkistaa sen nastojen määrityksessä ja luonnoksissa.

Leipälauta ja hyppyjohdot ovat ystäväsi.

Vaihe 3: KÄSINE

KÄSINE
KÄSINE
KÄSINE
KÄSINE
KÄSINE
KÄSINE
KÄSINE
KÄSINE

OWI Robotic ARM sisältää 6 kohdetta ohjattavaksi (OWI Robotic Arm Edge Picture)

  1. LED -valo, joka sijaitsee laitteen GRAIPERISSA
  2. GRIPPER
  3. RANNE
  4. KYYNÄR - on osa RANNEESEEN kiinnitettyä robottivartta
  5. RAVA on robottiosan osa, joka on kiinnitetty pohjaan
  6. PERUSTA

Käsine on suunniteltu ohjaamaan Robotic Armin LED -valoa ja kaikkia 5 moottoria (vapausastetta).

Minulla on yksittäiset anturit merkitty kuviin ja kuvaus alla:

  1. GRIPPERiä ohjataan keskisormen painikkeilla ja vaaleanpunaisella. Kahva suljetaan painamalla etu- ja keskisormia yhteen. Kahva avataan painamalla rengasta ja pinkkiä yhdessä.
  2. WRIST: ää ohjaa indeksin etsimen joustava vastus. Sormen kiertäminen puoliväliin saa ranteen laskemaan alas ja sen kiertäminen kokonaan nostaa ranteen ylös. Etusormen pitäminen suorana pysäyttää ranteen.
  3. KYYNÄRÄÄ ohjataan kiihtyvyysmittarilla - kämmenen kallistaminen ylös ja alas siirtää kyynärpäätä ylös ja alas
  4. Olkapäitä ohjataan kiihtyvyysmittarilla - kallistuva kämmen oikealle ja vasemmalle (ei ylösalaisin!) Liikuttaa olkapäätä ylöspäin ja alaspäin
  5. BASEa ohjataan myös kiihtyvyysmittarilla, kuten olkapää - kallistuva kämmen oikealle ja vasemmalle ylösalaisin (kämmen ylöspäin) liikuttaa jalkaa oikealle ja vasemmalle
  6. Tarttimen LED -valo syttyy/sammuu painamalla molempia tartuntapainikkeita yhdessä.

Kaikki painikkeiden vastaukset viivästyvät 1/4 sekunnista värinän välttämiseksi.

Käsineen kokoaminen vaatii juotosta ja paljon ompelua. Pohjimmiltaan se kiinnittää vain 2 painiketta, joustavan vastuksen, Accel/Gyro -moduulin käsineen kankaaseen ja reitittää johdot liitäntärasiaan.

Liitäntäkotelossa on kaksi LEDiä:

  1. VIHREÄ - virta päällä
  2. KELTAINEN - vilkkuu, kun tietoja siirretään käsivarren ohjauslaatikkoon.

Vaihe 4: LÄHETYSLAATIKKO

LÄHETINLAATIKKO
LÄHETINLAATIKKO
LÄHETINLAATIKKO
LÄHETINLAATIKKO
LÄHETINLAATIKKO
LÄHETINLAATIKKO

Lähetinrasia on pääasiassa Arduino Nano, langaton nRF24-moduuli, joustava johdinliitin ja 3 vastusta: 2 alasvedettävää 10 kOhm: n vastusta hansikkaan tarttumispainikkeille ja jännitejako 20 kOhm: n vastus rannetta ohjaavalle joustavalle anturille.

Kaikki juotetaan yhteen vero-levylle. Huomaa, että nRF24 "roikkuu" nanon päällä. Pelkäsin, että tämä saattaa aiheuttaa häiriöitä, mutta se toimii.

9 V: n akun käyttäminen tekee hihnaosasta hieman tilaa vievän, mutta en halunnut sotkea LiPo-akkuja. Ehkä myöhemmin.

Katso juotosohjeet nastan kohdistusvaiheesta

Vaihe 5: ARM CONTROL BOX

VARSIOHJAUSLAATIKKO
VARSIOHJAUSLAATIKKO
ARM CONTROL BOX
ARM CONTROL BOX
VARSIOHJAUSLAATIKKO
VARSIOHJAUSLAATIKKO
VARSIOHJAUSLAATIKKO
VARSIOHJAUSLAATIKKO

Käsivarren ohjauslaatikko perustuu Arduino Unoon. Se vastaanottaa komentoja käsineeltä langattomasti nRF24 -moduulin kautta ja ohjaa OWI Robotoc Armia 3 L293D -ohjainsirun kautta.

Koska lähes kaikki Uno -nastat käytettiin, laatikon sisällä on paljon johtoja - se tuskin sulkeutuu!

Suunnittelun mukaan laatikko käynnistyy OFF -tilassa (ikään kuin punapysäytyspainiketta painettaisiin), jolloin käyttäjälle annetaan aikaa laittaa käsine päälle ja valmistautua. Kun valmistaja on valmis, käyttäjä painaa vihreää painiketta, ja hansikkaan ja ohjauslaatikon välinen yhteys on muodostettava välittömästi (kuten hansikkaan keltainen LED ja ohjauslaatikon punainen LED).

YHTEYTTÄ OWIIN

Liitäntä robotivarsiin tehdään 14 -nastaisen kaksirivisen otsikon kautta (yllä olevan kuvan mukaisesti) 14 -johtimisen litteän kaapelin kautta.

  • LED-liitännät ovat yhteiseen maahan (-) ja arduino-nastaan A0 220 ohmin vastuksen kautta
  • Kaikki moottorin johdot on kytketty L293D-nastoihin 3/6 tai 11/14 (+/-). Jokainen L293D tukee kahta moottoria ja siten kahta paria nastoja.
  • OWI -voimajohdot ovat keltaisen yläosan takana olevan 7 -nastaisen liittimen vasemmanpuoleiset (+6v) ja oikeimmat (GND) -nastat. (Näet johdot kytkettyinä yllä olevasta kuvasta). Nämä kaksi on kytketty nastoihin 8 (+) ja 4, 5, 12, 13 (GND) kaikissa kolmessa L293D: ssä.

Katso loput nastamääritykset seuraavassa vaiheessa

Vaihe 6: PIN -ASENNUS

PIN -ASETUKSET
PIN -ASETUKSET
PIN -ASETUKSET
PIN -ASETUKSET
PIN -ASETUKSET
PIN -ASETUKSET

NANO:

  • 3.3v - 3.3v - nRF24L01 -siru (nasta 2)
  • 5v - 5v kiihtyvyysmittarilevyyn, painikkeet, joustava anturi
  • a0 - joustava vastustulo
  • a1 - keltainen "comms" LED -ohjaus
  • a4 - SDA kiihtyvyysanturiin
  • a5 - SCL kiihtyvyysanturiin
  • d02 - nRF24L01 -sirun keskeytystappi (nasta 8)
  • d03 - tarttujan avauspainikkeen tulo
  • d04 - tarttujan painikkeen syöttö
  • d09 - SPI CSN -nasta nRF24L01 -sirulle (nasta 4)
  • d10 - SPI CS -nasta nRF24L01 -sirulle (nasta 3)
  • d11 - SPI MOSI - nRF24L01 -siru (nasta 6)
  • d12 - SPI MISO - nRF24L01 -siru (nasta 7)
  • d13 - SPI SCK nRF24L01 -sirulle (nasta 5)
  • Vin - 9v +
  • GND - yhteinen perusta

UNO:

  • 3.3v - 3.3v - nRF24L01 -siru (nasta 2)
  • 5v - 5v painikkeille
  • Vin - 9v +
  • GND - yhteinen perusta
  • a0 - Ranne -LED +
  • a1 - SPI SS -tappi siirtorekisterille Valitse - nasta 12 siirtorekisterissä
  • a2 - PUNAINEN painikkeen syöttö
  • a3 - VIHREÄ -painikkeen syöttö
  • a4 - suuntainen pohja oikea - tappi 15 mallissa L293D
  • a5 - comms led
  • d02 - nRF24L01 IRQ -tulo (nasta 8)
  • d03 - ota käyttöön peruspalvelun (pwm) nasta 1 tai 9 L293D: ssä
  • d04 - suuntapohja vasen - nasta 10 vastaavalla L293D: llä
  • d05 - ota olkapään servo (pwm) -tappi 1 tai 9 käyttöön L293D: ssä
  • d06 - ota kyynärpääservo (pwm) -tappi 1 tai 9 käyttöön L293D: ssä
  • d07 - SPI CSN -nasta nRF24L01 -sirulle (nasta 4)
  • d08 - SPI CS -nasta nRF24L01 -sirulle (nasta 3)
  • d09 - ota ranneservon (pwm) nasta 1 tai 9 käyttöön L293D: ssä
  • d10 - ota otteen servo (pwm) -tappi 1 tai 9 käyttöön L293D: ssä
  • d11 - SPI MOSI - nRF24L01 -siru (nasta 6) ja nasta 14 siirtorekisterissä
  • d12 - SPI MISO - nRF24L01 -siru (nasta 7)
  • d13 - SPI SCK nRF24L01 -sirulle (nasta 5) ja nasta 11 siirtorekisterissä

SHIFT -REKISTERI JA L293D: t:

  • pin QA (15) of 74HC595 to pin 2 L293D #1
  • nasta QB (1) 74HC595 - nasta 7, L293D #1
  • nasta QC (2) 74HC595 - nasta L293D #1
  • nasta QD (3) 74HC595 - nasta L293D #1
  • pin QE (4) of 74HC595 to pin 2 of L293D #2
  • nasta QF (5) 74HC595 - nasta L293D #2
  • nasta QG (6) 74HC595 - nasta L293D #2
  • nasta QH (7) 74HC595 - nasta L293D #2

Vaihe 7: Viestintä

VIESTINTÄ
VIESTINTÄ

Glove lähettää 2 tavua dataa ohjauslaatikkoon 10 kertaa sekunnissa tai aina kun signaali joltakin anturilta vastaanotetaan.

2 tavua riittää kuuteen ohjaukseen, koska meidän tarvitsee lähettää vain:

  • PÄÄLLE/POIS LEDille (1 bitti) - Käytin itse asiassa 2 bittiä ollakseni yhteensopivia moottoreiden kanssa, mutta yksi riittää
  • OFF/OIKEA/VASEN 5 moottorille: 2 bittiä kukin = 10 bittiä

Yhteensä 11 tai 12 bittiä riittää.

Suuntakoodit:

  • POIS: 00
  • OIKEA: 01
  • VASEN: 10

Ohjaussana näyttää tältä (vähän viisaasti):

Tavu 2 ---------------- Tavu 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 - tarttuja
  • M2 - ranne
  • M3 - kyynärpää
  • M4 - olkapää
  • M5 - pohja

Tavu 1 voidaan syöttää kätevästi suoraan siirtorekisteriin, koska se ohjaa moottoreiden 1-4 oikeaa/vasenta suuntaa.

2 sekunnin aikakatkaisu on käytössä viestinnässä. Jos aikakatkaisu tapahtuu, kaikki moottorit pysäytetään ikään kuin PUNAISTA painiketta painettaisiin.

Vaihe 8: luonnoksia ja muuta…

SKETCHES ja lisää…
SKETCHES ja lisää…

KÄSINE

Glove -luonnos käyttää seuraavia kirjastoja:

  • DirectIO - saatavana Githubista
  • I2Cdev - saatavana Githubista
  • Lanka - osa Arduino IDE: tä
  • MPU6050 - saatavana Githubista
  • SPI - osa Arduino IDE: tä
  • RF24 - saatavana Githubista

ja kolme kehittämääni kirjastoa:

  • AvgFilter - saatavana Githubista
  • DhpFilter - saatavana Githubista
  • TaskScheduler - saatavana Githubista

Käsinepiirros on saatavilla täältä: Glove Sketch v1.3

VARSIOHJAUSLAATIKKO

Arm -luonnos käyttää seuraavia kirjastoja:

  • DirectIO - saatavana Githubista
  • PinChangeInt - saatavana Githubissa
  • SPI - osa Arduino IDE: tä
  • RF24 - saatavana Githubista

ja kehittämäni kirjasto:

TaskScheduler - saatavana Githubista

Varren luonnos on saatavilla täältä: Arm Sketch v1.3

Käytettyjen laitteiden tietolomakkeet

  • 74HC595 shift register - tietolomake
  • L293D -moottoriajuri - tietolomake
  • Langaton nRF24 -moduuli - tietolomake
  • MPU6050 kiihtyvyysmittari/gyroskooppimoduuli - tietolomake

31.5.2015 PÄIVITYS:

Uusi versio käsineiden ja käsivarsien ohjauslaatikon luonnoksista on saatavana täältä: Käsine- ja käsivarsiluonnokset v1.5

Ne sijaitsevat myös githubissa täällä.

Muutokset

  • Lisätty kaksi tavua kommunikaatiorakenteeseen lähettämään pyydetty moottorin nopeus ranne-, kyynär-, olkapää- ja perusmoottoreille 5 -bittisenä arvona (0.. 31) käsineestä suhteessa ohjauseleen kulmaan (katso alla). Arm Control Box yhdistää arvot [0.. 31] kunkin moottorin vastaaviin PWM -arvoihin. Tämä mahdollistaa nopeuden asteittaisen ohjauksen kuljettajan toimesta ja tarkemman käsivarren käsittelyn.
  • Uusi eleiden sarja:

1. LED: Painikkeiden ohjaus -LED - keskisormen painike - PÄÄLLÄ, pinkie -sormen painike - POIS

2. GRIPPER: Joustavat nauhaohjaimet Tarttuja - puoliksi taivutettu sormi - AUKI, täysin taivutettu sormi - SULJE

3. RANNE: Rannetta ohjataan kallistamalla kämmentä täysin vaakasuorasta asennosta YLÖS ja ALAS. Lisää kallistus lisää nopeutta

4. ARM: Käsiä ohjataan kallistamalla kämmentä täysin vaakasuorasta asennosta VASEN ja OIKEA. Lisää kallistus lisää nopeutta

5. Olkapää: Olkaa ohjataan kiertämällä kämmentä OIKEALLE ja VASEMMALLE kämmenestä suoraan ylöspäin. Kämmen kiertyy kyynärpääakselia pitkin (kuten kättä heiluttaen)

6. PERUS: Pohjaa ohjataan samalla tavalla kuin olkapää kämmenellä suoraan alaspäin.

Vaihe 9: MITÄ MUUTA?

MITÄ MUUTA?
MITÄ MUUTA?

KUVAUS TYÖSSÄ

Kuten tavallista tällaisissa järjestelmissä, ne voitaisiin ohjelmoida tekemään paljon enemmän.

Esimerkiksi nykyinen suunnittelu sisältää jo lisäominaisuuksia, jotka eivät ole mahdollisia tavallisella kaukosäätimellä:

  • Nopeuden asteittainen lisäys: jokainen moottorin liike aloitetaan ennalta määrätyllä miniminopeudella, jota lisätään vähitellen 1 sekunnin välein, kunnes saavutetaan suurin nopeus. Tämä mahdollistaa jokaisen moottorin (erityisesti ranteen ja tarttujan) tarkemman hallinnan
  • Nopeampi liikkeen peruutus: kun käsivarsikotelo vastaanottaa käskyn pysäyttää moottori, se peruuttaa moottorin hetkellisesti noin 50 ms, mikä "katkaisee" liikkeen ja mahdollistaa tarkemman ohjauksen.

MITÄ MUUTA?

Ehkä kehittyneempiä ohjauseleitä voitaisiin toteuttaa. Tai samanaikaisia eleitä voitaisiin käyttää kehittyneisiin ohjauksiin. Osaako Arm tanssia?

Jos sinulla on idea käsineen uudelleenohjelmointiin tai sinulla on versio luonnoksesta, jonka haluat minun testaavan - kerro minulle: [email protected]

Vaihe 10: *** VOITIME !!! ***

*** VOITIMME !!! ***
*** VOITIMME !!! ***

Tämä projekti voitti ensimmäisen palkinnon Microsoftin sponsoroimassa Coded Creations -kilpailussa.

Tarkista se! WOO-HOO !!!

Koodatut luomukset
Koodatut luomukset
Koodatut luomukset
Koodatut luomukset

Toinen palkinto koodatuissa luomuksissa

Suositeltava: