Indholdsfortegnelse:
- Trin 1: Dele
- Trin 2: PROTOTYPING
- Trin 3: HANDSKE
- Trin 4: TRANSMITTER BOX
- Trin 5: ARM CONTROL BOX
- Trin 6: PIN -OPGAVE
- Trin 7: KOMMUNIKATION
- Trin 8: SKETSER og mere …
- Trin 9: HVAD ANDET?
- Trin 10: *** VI VANDT !!! ***
Video: Vift din hånd med at styre OWI robotarm Ingen snore vedhæftet: 10 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
IDEEN:
Der er mindst 4 andre projekter på Instructables.com (pr. 13. maj 2015) omkring ændring eller kontrol af OWI Robotic Arm. Ikke overraskende, da det er et så godt og billigt robotkit at lege med. Dette projekt er ens i ånden (dvs. styr den robotarm med Arduino), men anderledes i tilgangen. [video]
Ideen er at kunne styre robotarmen trådløst ved hjælp af bevægelser. Jeg forsøgte også at holde ændringer af robotarmen til et minimum, så den stadig kunne bruges med den originale controller.
Lyder enkelt.
Hvad det endte med at være, er et tredelt projekt:
- En handske udstyret med nok sensorer til at styre en LED og 5 motorer
- En Arduino Nano -baseret senderenhed til at acceptere kontrolkommandoer fra handsken og sende den trådløst til Arm controller -enheden
- En Arduino Uno-baseret trådløs modtager og motorstyringsenhed fastgjort til OWI Robotic Arm
FUNKTIONER
- Understøttelse af alle 5 frihedsgrader (DOF) og LED'en
- Stor rød knap - for øjeblikkeligt at stoppe motorerne på armen og forhindre skader
- Bærbart modulært design
For mobilbrugere: "reklamevideoen" af dette projekt er på YouTube her.
Trin 1: Dele
HANDSKE:
Du skal bruge følgende for at bygge en handskecontroller:
- Isotoner Smartouch Tech Stretch Stitched Handske (eller lignende) - på Amazon.com
- Spectra Symboflex Sensor 2.2 " - på Amazon.com
- GY -521 6DOF MPU6050 3 -akset gyroskop + accelerometer -modul - på Fasttech.com
- 2X5 BOX HEADER STRAIGHT - på Phoenixent.com
- 2X5 IDC SOCKET -RECEPTACLE - på Phoenixent.com
- FLAT RIBBON CABLE 10 Conductor.050 "pitch - på Phoenixent.com
- 2 x 5 mm lysdioder - grøn og gul
- 2 x små knapper
- Modstande, ledninger, nål, sort tråd, limpistol, loddepistol, lodning osv.
TRANSMISSION STRAP-ON BOX:
- Arduino -kompatibelt Nano v3.0 ATmega328P -20AU -kort - på Fasttech.com
- nRF24L01+ 2,4 GHz trådløs transceiver Arduino -kompatibel - på Amazon.com
- Gymboss WRISTBAND - på Amazon.com
- 9V batteriholder boks etui med Wire Lead ON/OFF switch - på Amazon.com
- 2X5 BOX HEADER STRAIGHT - på Phoenixent.com
- 9v batteri
- 47uF (50v) kondensator
- Modstande, ledninger, limpistol, loddepistol, lodning osv.
OWI ROBOTIC ARM CONTROLLER BOX:
- Arduino -kompatibelt Uno R3 Rev3 Development Board - på Fasttech.com
- Prototype Shield DIY KIT til Arduino (eller lignende) - på Amazon.com
- nRF24L01+ 2,4 GHz trådløs transceiver Arduino -kompatibel - på Amazon.com
- 3 x L293D 16 -bens integreret kredsløb IC -motordriver - på Fasttech.com
- 1 x SN74HC595 74HC595 8-bit skiftregister med 3-staters outputregistre DIP16-på Amazon.com
- 47uF (50v) kondensator
- Kasse til Arduino - på Amazon.com
- Tænd/sluk -kontakt
- 2 x 13 mm knapper (en rød og en grøn kasket)
- 2 x 2X7 BOX HEADER STRAIGHT - samme som ovenfor på Phoenixent.com
- FLAT RIBBON CABLE 14 Conductor.050 "pitch - samme som ovenfor på Phoenixent.com
- 9v batteri + clip-on stik
- Modstande, ledninger, limpistol, loddepistol, lodning osv.
… og selvfølgelig:
OWI Robotic Arm Edge - Robotarm - OWI -535 - på Adafruit.com
Trin 2: PROTOTYPING
Jeg foreslår på det kraftigste at prototypere hver af controllerenhederne, før alle lodde komponenter loddes sammen.
Dette projekt bruger et par udfordrende stykker hardware:
nRF24L01
Det tog mig et stykke tid at få de to nRF24 til at tale med hinanden. Tilsyneladende leverer hverken Nano eller Uno nok af stabiliseret 3.3v effekt til, at modulerne kan fungere konsekvent. En løsning i mit tilfælde var en 47uF kondensator på tværs af strømstifterne på begge nRF24 -moduler. Der er også et par særheder ved brug af RF24-bibliotek i IRQ- og ikke-IRQ-tilstande, så jeg anbefaler at studere eksemplerne virkelig omhyggeligt.
Et par store ressourcer:
nRF24L01 Ultra lav effekt 2,4 GHz RF -transceiver IC produktside
RF24 Driver biblioteksside
Bare at google nRF24 + arduino vil producere en masse links. Det er værd at undersøge
74HC595 SKIFTREGISTER
Ikke overraskende at skulle styre 5 motorer, en LED, to knapper og et trådløst modul, jeg løb relativt hurtigt tør for stifter på Uno. Den velkendte måde at "forlænge" dit pinkode er at bruge et skiftregister. Da nRF24 allerede brugte SPI -grænsefladen, besluttede jeg også at bruge SPI til programmering af skiftregister (for hastighed og for at gemme ben) i stedet for funktionen shiftout (). Til min overraskelse virkede det som en charme fra første gang. Du kan tjekke det ud i pin -tildelingen og i skitserne.
Breadboard og jumperwires er dine venner.
Trin 3: HANDSKE
OWI Robotic ARM har 6 elementer at styre (OWI Robotic Arm Edge Picture)
- En LED på enhedens GRIPPER
- EN GRIPPER
- EN HÅNDLED
- En ELBOW - er den del af robotarmen, der er fastgjort til HÅNDLEDET
- En SKULDER er den del af robotarmen, der er fastgjort til BASE
- EN BASE
Handsken er designet til at styre Robotic Arms LED og alle 5 motorer (frihedsgrader).
Jeg har individuelle sensorer markeret på billederne samt en beskrivelse herunder:
- GRIPPEREN styres af knapperne på langfingeren og pinky. Griberen lukkes ved at trykke indeks og langfingre sammen. Griberen åbnes ved at trykke ringen og lyserød sammen.
- WRIST styres af den fleksible modstand på indeksfinderen. Krølning af fingeren halvvejs får håndleddet til at gå ned, og krølle det hele vejen får håndleddet til at gå op. Ved at holde pegefingeren lige stopper håndleddet.
- ELBÅEN styres af accelerometer - vippe håndfladen op og ned flytter albuen henholdsvis op og ned
- SKULDEN styres af accelerometer - vippe håndfladen til højre og til venstre (dog ikke på hovedet!) Bevæger skulderen henholdsvis op og ned
- BASE'en styres også af accelerometer, svarende til skulder -vippende håndflade til højre og til venstre helt på hovedet (håndfladen opad) flytter basen henholdsvis til højre og venstre
- Lysdioden på griberen tændes/slukkes ved at trykke begge griberkontrolknapper sammen.
Alle knappersvar er forsinket med 1/4 sekund for at undgå rystelser.
Montering af handsken kræver lidt lodning og meget syning. Grundlæggende er det bare at vedhæfte 2 knapper, fleksibel modstand, Accel/Gyro -modul til handskens stof og kabelføring til forbindelsesboksen.
To lysdioder på tilslutningsboksen er:
- GRØN - tænd for strømmen
- GUL - blinker, når data overføres til armkontrolboksen.
Trin 4: TRANSMITTER BOX
Senderkassen er i det væsentlige Arduino Nano, nRF24 trådløst modul, fleksibelt ledningsstik og 3 modstande: 2 pull-down 10 kOhm modstande til griberkontrolknapperne på handsken og en spændingsdeling 20 kOhm modstand til den fleksible sensor, der styrer håndleddet.
Alt er loddet sammen på et vero-board. Bemærk, at nRF24 "hænger" over Nano. Jeg var bekymret for, at dette kunne forårsage interferens, men det virker.
Brug af 9v-batteriet gør rem-on-delen lidt omfangsrig, men jeg ville ikke rode med LiPo-batterier. Måske senere.
Se trin til tildeling af stifter for lodningsinstruktioner
Trin 5: ARM CONTROL BOX
Arm kontrolboks er baseret på Arduino Uno. Den modtager kommandoer fra handsken trådløst via nRF24 -modul og styrer OWI Robotoc -armen via 3 L293D -driverchips.
Da næsten alle Uno -ben blev brugt, er der mange ledninger inde i kassen - den lukker knap nok!
Efter design starter boksen i OFF -tilstand (som om der trykkes på en rød stopknap), hvilket giver operatøren tid til at tage handsken på og gøre sig klar. Når den er klar, trykker operatøren på den grønne knap, og forbindelsen mellem handsken og kontrolboksen skal straks etableres (som angivet med den gule LED på handsken og den røde LED på kontrolboksen).
TILKOBLER TIL OWI
Tilslutning til robotarmen foretages via 14 -pins dobbeltrækkeoverskrift (ifølge billedet ovenfor) via et 14 -tråds fladt kabel.
- LED-forbindelser er til fælles jord (-) og arduino pin A0 via 220 Ohm modstand
- Alle motorkabler er forbundet til L293D-stifter 3/6 eller 11/14 (+/- henholdsvis). Hver L293D understøtter 2 motorer, derfor to stifter.
- OWI -strømledninger er venstre (+6v) og højre (GND) ben på det 7 -polede stik på bagsiden af den gule top. (Du kan se ledningerne tilsluttet på billedet ovenfor). Disse to er forbundet til ben 8 (+) og 4, 5, 12, 13 (GND) på alle tre L293D'er.
Se resten af pin -tildelingen i næste trin
Trin 6: PIN -OPGAVE
NANO:
- 3.3v - 3.3v til nRF24L01 chip (pin 2)
- 5v - 5v til accelerometerkort, knapper, fleksibel sensor
- a0 - fleksibel modstandsindgang
- a1 - gul "comms" LED -kontrol
- a4 - SDA til accelerometer
- a5 - SCL til accelerometer
- d02 - nRF24L01 chip Afbryd pin (pin 8)
- d03 - åbn griberknapindgang
- d04 - luk griberknapindgang
- d09 - SPI CSN pin til nRF24L01 chip (pin 4)
- d10 - SPI CS pin til nRF24L01 chip (pin 3)
- d11 - SPI MOSI til nRF24L01 chip (pin 6)
- d12 - SPI MISO til nRF24L01 chip (pin 7)
- d13 - SPI SCK til nRF24L01 chip (pin 5)
- Vin - 9v +
- GND - fælles grundlag
UNO:
- 3.3v - 3.3v til nRF24L01 chip (pin 2)
- 5v - 5v til knapper
- Vin - 9v +
- GND - fælles grundlag
- a0 - LED ved håndled +
- a1 - SPI SS pin til skiftregister Vælg - til pin 12 på skiftregister
- a2 - RØD knapindgang
- a3 - GRØN knapindgang
- a4 - retning base højre - pin 15 på L293D
- a5 - komm. led
- d02 - nRF24L01 IRQ input (pin 8)
- d03 - aktiver baseservo (pwm) pin 1 eller 9 på L293D
- d04 - retning base venstre - pin 10 på respektive L293D
- d05 - aktiver skulder servo (pwm) pin 1 eller 9 på L293D
- d06 - aktiver albue servo (pwm) pin 1 eller 9 på L293D
- d07 - SPI CSN pin til nRF24L01 chip (pin 4)
- d08 - SPI CS pin til nRF24L01 chip (pin 3)
- d09 - aktiver håndledsservo (pwm) pin 1 eller 9 på L293D
- d10 - aktiver griber servo (pwm) pin 1 eller 9 på L293D
- d11 - SPI MOSI til nRF24L01 chip (pin 6) og pin 14 på Shift Register
- d12 - SPI MISO til nRF24L01 chip (pin 7)
- d13 - SPI SCK til nRF24L01 chip (pin 5) og pin 11 på Shift Register
SKIFTREGISTER OG L293D'er:
- pin QA (15) af 74HC595 til pin 2 i L293D #1
- pin QB (1) af 74HC595 til pin 7 i L293D #1
- pin QC (2) af 74HC595 til pin 10 i L293D #1
- pin QD (3) af 74HC595 til pin 15 i L293D #1
- pin QE (4) af 74HC595 til pin 2 i L293D #2
- pin QF (5) af 74HC595 til pin 7 i L293D #2
- pin QG (6) af 74HC595 til pin 10 i L293D #2
- pin QH (7) af 74HC595 til pin 15 i L293D #2
Trin 7: KOMMUNIKATION
Handske sender 2 bytes data til kontrolboksen 10 gange i sekundet eller når der modtages et signal fra en af sensorerne.
2 bytes er tilstrækkeligt til 6 kontroller, fordi vi kun skal sende:
- ON/OFF for LED (1 bit) - Jeg brugte faktisk 2 bit for at være i overensstemmelse med motorerne, men en er nok
- FRA/HØJRE/VENSTRE for 5 motorer: 2 bit hver = 10 bit
I alt 11 eller 12 bit er tilstrækkeligt.
Retningskoder:
- FRA: 00
- HØJRE: 01
- VENSTRE: 10
Kontrolord ser sådan ud (bitvis):
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 - griber
- M2 - håndled
- M3 - albue
- M4 - skulder
- M5 - bund
Byte 1 kunne bekvemt føres direkte ind i skifteregistret, da den styrer højre/venstre retning for motorerne 1 til 4.
En timeout på 2 sekunder er aktiveret for kommunikation. Hvis der opstår timeout, stoppes alle motorer, som om der blev trykket på en RØD knap.
Trin 8: SKETSER og mere …
HANDSKE
Handske -skitse bruger følgende biblioteker:
- DirectIO - tilgængelig på Github
- I2Cdev - tilgængelig på Github
- Wire - en del af Arduino IDE
- MPU6050 - tilgængelig på Github
- SPI - en del af Arduino IDE
- RF24 - tilgængelig på Github
og tre biblioteker udviklet af mig:
- AvgFilter - tilgængelig fra Github
- DhpFilter - tilgængelig på Github
- TaskScheduler - tilgængelig på Github
Handskeskitse er tilgængelig her: Handskeskitse v1.3
ARMKONTROLBOKS
Arm sketch anvender følgende biblioteker:
- DirectIO - tilgængelig på Github
- PinChangeInt - tilgængelig på Github
- SPI - en del af Arduino IDE
- RF24 - tilgængelig på Github
og et bibliotek udviklet af mig:
TaskScheduler - tilgængelig på Github
Armskitse er tilgængelig her: Armskitse v1.3
Dataark for brugt hardware
- 74HC595 skiftregister - datablad
- L293D motor driver - datablad
- nRF24 trådløst modul - datablad
- MPU6050 accelerometer/gyroskopmodul - datablad
31. maj 2015 OPDATERING:
En ny version af handsker og arm kontrol boks skitser er tilgængelig her: Handske og arm skitser v1.5
De er også placeret på github her.
Ændringer
- Tilføjet yderligere to bytes til kommunikationsstrukturen for at sende den ønskede motorhastighed for håndled, albue, skulder og basismotorer som en 5 bit værdi (0.. 31) fra handsken i forhold til vinklen på kontrolbevægelsen (se nedenfor). Arm Control Box kortlægger værdier [0.. 31] til respektive PWM -værdier for hver af motorerne. Dette muliggør gradvis hastighedsregulering af operatøren og mere præcis armhåndtering.
- Nyt sæt gestus:
1. LED: Knapper styrer LED - langfingerknap - ON, pinkie finger -knap - OFF
2. GRIPPER: Fleksibel båndkontrol Gripper - halvbøjet finger - ÅBEN, fuldt bøjet finger - LUK
3. HÅNDLED: Håndleddet styres ved at vippe håndfladen fra henholdsvis fuldt vandret position OP og NED. Mere tilt giver mere fart
4. ARM: Armen styres ved at vippe håndfladen fra fuldstændig vandret position VENSTRE og HØJRE. Mere tilt giver mere fart
5. SKULDER: Skulderen styres ved at dreje håndfladen HØJRE og VENSTRE fra håndfladen og peger lige op. Håndfladen drejes langs albueaksen (som det er at vinke din hånd)
6. BASE: Basen styres på samme måde som skulderen med håndfladen pegende nedad.
Trin 9: HVAD ANDET?
BILLEDE PÅ ARBEJDE
Som sædvanlig med sådanne systemer kunne de programmeres til at gøre meget mere.
For eksempel inkorporerer det nuværende design allerede yderligere evner, ikke muligt med standardfjernbetjeningen:
- Gradvis hastighedsforøgelse: hver motorbevægelse startes med en foruddefineret minimal hastighed, som øges gradvist hvert 1. sekund, indtil der opnås en maksimal hastighed. Dette tillader mere præcis styring af hver af motorerne (især håndled og griber)
- Hurtigere bevægelsesafbrydelse: Når kommandoen modtages af armboksen for at stoppe en motor, vender den øjeblikkeligt motoren i cirka 50 ms, hvilket "bryder" bevægelsen og muliggør en mere præcis kontrol.
HVAD ELLERS?
Måske kunne en mere udførlig kontrolbevægelse implementeres. Eller samtidige bevægelser kan bruges til detaljerede kontroller. Kan armen danse?
Hvis du har en idé om, hvordan du omprogrammerer handsken, eller har en version af en skitse, du vil have mig til at teste - lad mig vide det: [email protected]
Trin 10: *** VI VANDT !!! ***
Dette projekt vandt førstepræmien i konkurrencen Coded Creations sponsoreret af Microsoft.
Tjek det ud! WOO-HOO !!!
Anden pris i de kodede kreationer
Anbefalede:
Lav en let Infinity Mirror Cube - INGEN 3D -udskrivning og INGEN programmering: 15 trin (med billeder)
Lav en let Infinity Mirror Cube | INGEN 3D -udskrivning og INGEN programmering: Alle kan lide en god uendelig terning, men de ser ud til at være svære at lave. Mit mål for denne Instructable er at vise dig trin for trin, hvordan du laver en. Ikke kun det, men med de instruktioner, jeg giver dig, kan du lave en
Ingen Makey Makey? Ingen problemer ! Sådan laver du din makey derhjemme !: 3 trin
Ingen Makey Makey? Ingen problemer ! Sådan laver du din Makey Makey derhjemme !: Har du nogensinde ønsket at deltage i Makey Makey -konkurrencen om Instructables, men du har aldrig haft en Makey Makey?! NU kan du! Med den følgende guide vil jeg vise dig, hvordan du opretter din egen Makey Makey med nogle enkle komponenter, som du kan b
Brug Cortana og en Arduino til at styre RGB -lysdioder eller Ledstrips med din stemme !: 4 trin (med billeder)
Brug Cortana og en Arduino til at styre RGB -lysdioder eller Ledstrips med din stemme !: I denne instruktive vil jeg vise dig, hvordan du kan styre din RGB -LED eller LED -strip med din stemme. Dette gøres af CoRGB -appen, som er tilgængelig gratis i Windows App Store. Denne app er en del af mit CortanaRoom -projekt. Når du er færdig med
Pakkeløst snore uden slips eller tangles: 5 trin (med billeder)
Pakkeløst snore uden slips eller tangles: Målet: en måde at pakke snore (hovedtelefoner, strøm osv.) Op uden slips eller velcrobånd, der er hurtige, ikke fortrydes og er hurtige til at fortryde. Her er en metode, nogle bedre forslag? Flere vejledninger: http://www.curiousinventor.com/guidesVideo viser
Laptop -køler / stativ uden omkostninger (ingen lim, ingen boring, ingen møtrikker og bolte, ingen skruer): 3 trin
Nul omkostninger bærbar køler / stativ (ingen lim, ingen boring, ingen møtrikker og bolte, ingen skruer): OPDATERING: VENLIGST STEMNING FOR MIN & INSTRUKTABEL, TAK ^ _ ^ DU KAN OGSÅ LIGE STEMME FOR MINE ANDRE TILMELD DIG PÅ www.instructables.com/id/Zero-Cost-Aluminum-Furnace-No-Propane-No-Glue-/ ELLER KAN STEMME FOR MIN BEDSTE VENNES