Taula de continguts:
- Pas 1: parts
- Pas 2: PROTOTIPACIÓ
- Pas 3: GUANTAR-SE
- Pas 4: CAIXA DEL TRANSMISSOR
- Pas 5: CAIXA DE CONTROL DEL BRAÇ
- Pas 6: ASSIGNACIÓ DE PIN
- Pas 7: COMUNICACIÓ
- Pas 8: esbossos i molt més …
- Pas 9: QUÈ MÉS?
- Pas 10: *** VAM GUANYAR !!! ***
Vídeo: Agita la mà per controlar el braç robòtic OWI Sense cordes: 10 passos (amb imatges)
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:13
LA IDEA:
Hi ha almenys altres 4 projectes a Instructables.com (a partir del 13 de maig de 2015) al voltant de modificar o controlar OWI Robotic Arm. No és d’estranyar, ja que és un kit robòtic tan fantàstic i econòmic per jugar. Aquest projecte té un esperit similar (és a dir, controla el braç robòtic amb Arduino), però diferent en el plantejament. [vídeo]
La idea és poder controlar el braç robòtic sense fils mitjançant gestos. A més, vaig intentar reduir al mínim les modificacions del braç robòtic, de manera que encara es podria utilitzar amb el controlador original.
Sembla simple.
El que va acabar sent un projecte en tres parts:
- Un guant equipat amb prou sensors per controlar un LED i 5 motors
- Un dispositiu transmissor basat en Arduino Nano per acceptar ordres de control del guant i enviar-lo sense fils al dispositiu controlador Arm
- Dispositiu de control i motor del receptor sense fils basat en Arduino Uno connectat al braç robòtic OWI
CARACTERÍSTIQUES
- Suport per als 5 graus de llibertat (DOF) i el LED
- Gran botó vermell: per aturar immediatament els motors del braç evitant danys
- Disseny modular portàtil
Per a usuaris de mòbils: el "vídeo promocional" d'aquest projecte es troba a YouTube aquí.
Pas 1: parts
GUANT:
Necessiteu el següent per construir un controlador de guants:
- Guant cosit Isotoner Smartouch Tech Stretch (o similar): a Amazon.com
- Sensor Spectra Symboflex 2.2 ": a Amazon.com
- GY-521 6DOF MPU6050 Mòdul de giroscopi de 3 eixos + acceleròmetre - a Fasttech.com
- CAPÇAL 2X5 RECTA: a Phoenixent.com
- 2X5 IDC SOCKET-RECEPTACLE - a Phoenixent.com
- CABLE DE CINTA PLANA 10 Conductor.050 "Pitch - a Phoenixent.com
- 2 LEDs de 5 mm: verd i groc
- 2 botons petits
- Resistències, cables, agulla, fil negre, pistola de colar, pistola de soldar, soldar, etc.
CAIXA CINTURA DE TRANSMISSIÓ:
- Placa Nano v3.0 ATmega328P-20AU compatible Arduino: a Fasttech.com
- Compatible amb transceptor sense fils nRF24L01 + 2,4 GHz Arduino - a Amazon.com
- Gymboss WRISTBAND: a Amazon.com
- Caixa de la caixa del suport de la bateria de 9V amb interruptor ON / OFF de cable, a Amazon.com
- CAPÇAL 2X5 RECTA: a Phoenixent.com
- Bateria de 9v
- Condensador de 47uF (50v)
- Resistències, cables, pistola de cola, pistola de soldar, soldadura, etc.
CAIXA OWI ROBOTIC ARM CONTROLLER:
- Taula de desenvolupament Uno R3 Rev3 compatible Arduino - a Fasttech.com
- Prototype Shield DIY KIT per a Arduino (o similar): a Amazon.com
- Compatible amb transceptor sense fils nRF24L01 + 2,4 GHz Arduino - a Amazon.com
- 3 x L293D Controlador de motor de circuit integrat de 16 pins de circuit integrat - a Fasttech.com
- 1 x SN74HC595 74HC595 Registre de canvis de 8 bits amb registres de sortida de 3 estats DIP16: a Amazon.com
- Condensador de 47uF (50v)
- Caixa per a Arduino: a Amazon.com
- Interruptor d'encès / apagat
- 2 botons de 13 mm (un de tap vermell i un de verd)
- 2 x 2X7 CAPÇAL CAIXA RECTA: igual que l'anterior a Phoenixent.com
- CABLE DE CINTA PLANA 14 Conductor.050 "Pitch - igual que l'anterior a Phoenixent.com
- Bateria de 9v + connector de clip
- Resistències, cables, pistola de cola, pistola de soldar, soldadura, etc.
… i per suposat:
OWI Robotic Arm Edge - Braç de robot - OWI-535 - a Adafruit.com
Pas 2: PROTOTIPACIÓ
Us recomano encaridament prototipar cadascun dels dispositius del controlador abans de soldar tots els components junts.
Aquest projecte utilitza algunes peces de maquinari desafiadores:
nRF24L01
Em va trigar una estona a fer parlar els dos nRF24. Pel que sembla, ni Nano ni Uno proporcionen prou potència estabilitzada de 3,3 v perquè els mòduls funcionin de manera constant. Una solució en el meu cas era un condensador de 47uF a través dels pins de potència dels dos mòduls nRF24. També hi ha algunes peculiaritats amb l’ús de la biblioteca RF24 en modes IRQ i no IRQ, així que recomano estudiar els exemples amb molta cura.
Un parell de recursos fantàstics:
nRF24L01 Pàgina del producte IC de transceptor de RF de 2,4 GHz de molt baixa potència
Pàgina de la biblioteca del controlador RF24
Només cal buscar google nRF24 + arduino per produir molts enllaços. Val la pena investigar-ho
74HC595 REGISTRE DE MAJES
No és sorprenent haver de controlar cinc motors, un LED, dos botons i un mòdul sense fil, em vaig quedar sense pins a l’Uno relativament ràpidament. La forma ben coneguda per "ampliar" el recompte de pins és utilitzar un registre de torns. Com que nRF24 ja feia servir la interfície SPI, vaig decidir utilitzar SPI també per a la programació del registre de desplaçaments (per a la velocitat i per desar pins) en lloc de la funció shiftout (). Per a la meva sorpresa, va funcionar com un encant des de la primera vegada. Podeu comprovar-ho a l'assignació de pins i als esbossos.
La filera i els cables de pont són els vostres amics.
Pas 3: GUANTAR-SE
OWI Robotic ARM té 6 elements per controlar (imatge OWI Robotic Arm Edge)
- Un LED situat a la pinça del dispositiu
- UNA GRIPPER
- UN CANELL
- Un COLZE: és la part del braç robòtic unida al CANELL
- Una ESPATLLA és la part del braç robot unit a la BASE
- UNA BASE
El guant està dissenyat per controlar el LED de Robotic Arm i els 5 motors (graus de llibertat).
Tinc els sensors individuals marcats a les imatges, així com una descripció a continuació:
- El GRIPPER està controlat pels botons situats al dit mig i de color rosa. La pinça es tanca pressionant els dits índex i mitjà. La pinça s'obre pressionant l'anell i el rosat junts.
- El WRIST està controlat per la resistència flexible del cercador d’índexs. Arroscar el dit a la meitat del camí fa que el canell baixi i, si s’arrossega tot el camí, el canell puja. Mantenir el dit índex recte atura el canell.
- El CODE es controla mitjançant un acceleròmetre: la inclinació del palmell cap amunt i cap avall mou el colze cap amunt i cap avall respectivament
- L'ESPATLLA es controla mitjançant un acceleròmetre: inclina la palma cap a la dreta i cap a l'esquerra (però no cap per avall!) Mou l'espatlla cap amunt i cap avall respectivament
- La BASE també es controla mitjançant un acceleròmetre, de manera similar a la palanca inclinada a l’espatlla cap a la dreta i cap a l’esquerra tot cap amunt (el palmell cap amunt) mou la base cap a la dreta i cap a l’esquerra respectivament
- El LED de la pinça s’encén / apaga prement tots dos botons de control de la pinça.
Totes les respostes dels botons es retarden 1/4 de segon per evitar fluctuacions.
El muntatge del guant requereix una mica de soldadura i molta costura. Bàsicament, només es connecten 2 botons, resistència flexible, mòdul Accel / Gyro a la tela del guant i enrutament de cables a la caixa del connector.
Hi ha dos LEDs al quadre de connexió:
- VERD: encén
- GROC: parpelleja quan es transmeten dades al quadre de control del braç.
Pas 4: CAIXA DEL TRANSMISSOR
La caixa del transmissor és essencialment Arduino Nano, mòdul sense fils nRF24, connector de cable flexible i 3 resistències: 2 resistències desplegables de 10 kOhm per als botons de control de la pinça del guant i una divisió de tensió de 20 kOhm per al sensor flexible que controla el canell.
Tot es solda junt en un tauler vero. Tingueu en compte que nRF24 està "penjat" sobre Nano. Em preocupava que això pogués causar interferències, però funciona.
L’ús de la bateria de 9v fa que la part de corretja sigui una mica voluminosa, però no em volia embolicar amb les bateries LiPo. Potser després.
Consulteu el pas d’assignació de pins per obtenir instruccions de soldadura
Pas 5: CAIXA DE CONTROL DEL BRAÇ
La caixa de control de braços es basa en Arduino Uno. Rep comandaments del guant sense fils a través del mòdul nRF24 i controla el braç OWI Robotoc mitjançant 3 xips de controladors L293D.
Com que es van utilitzar gairebé tots els pins Uno, hi ha molts cables dins de la caixa; amb prou feines es tanca.
Per disseny, la caixa s'inicia en mode OFF (com si es premés un botó de parada vermella), donant temps a l'operador per posar-se el guant i preparar-se. Un cop llest, l’operador prem el botó verd i s’hauria d’establir immediatament la connexió entre el guant i la caixa de control (tal com s’indica amb el LED groc del guant i el LED vermell al quadre de control).
CONNEXIÓ A OWI
La connexió al braç robòtic es realitza mitjançant capçalera de dues files de 14 pins (segons la imatge anterior) mitjançant un cable pla de 14 fils.
- Les connexions LED són a terra comuna (-) i al pin arduino A0 mitjançant una resistència de 220 Ohm
- Tots els cables del motor estan connectats als pins L293D 3/6 o 11/14 (+/- respectivament). Cada L293D admet 2 motors, per tant dos parells de pins.
- Les línies d’alimentació OWI són pins situats a l’esquerra (+ 6v) i a la dreta (GND) del connector de 7 pins de la part posterior de la part superior groga. (Podeu veure els cables endollats a la imatge superior). Aquests dos estan connectats als pins 8 (+) i 4, 5, 12, 13 (GND) dels tres L293D.
Consulteu la resta d’assignació de pins al següent pas
Pas 6: ASSIGNACIÓ DE PIN
NANO:
- 3,3v - 3,3v a xip nRF24L01 (pin 2)
- 5v - 5v a la placa acceleròmetre, botons, sensor flexible
- a0 - entrada de resistència flexible
- a1 - control LED "comms" groc
- a4 - SDA a acceleròmetre
- a5 - SCL a acceleròmetre
- d02 - Pin d'interrupció del xip nRF24L01 (pin 8)
- d03: entrada del botó de pinça oberta
- d04: tancar l'entrada del botó de la pinça
- d09: PIN SPI CSN al xip nRF24L01 (pin 4)
- d10: PIN SPI CS al xip nRF24L01 (pin 3)
- d11: xip SPI MOSI a nRF24L01 (pin 6)
- d12: xip SPI MISO a nRF24L01 (pin 7)
- d13: xip SPI SCK a nRF24L01 (pin 5)
- Vin - 9v +
- GND: terreny comú
UNO:
- 3,3v - 3,3v a xip nRF24L01 (pin 2)
- 5v - 5v als botons
- Vin - 9v +
- GND: terreny comú
- a0 - Canell LED +
- a1 - Pin SPI SS per al registre de majúscules Seleccioneu - per fixar 12 al registre de majúscules
- a2 - Entrada del botó VERMELL
- a3 - Entrada del botó VERD
- a4 - base de direcció dreta - pin 15 a L293D
- a5 - comunicacions dirigides
- d02 - entrada IRQ nRF24L01 (pin 8)
- d03: activeu el pin 1 o 9 del servo base (pwm) a L293D
- d04 - base de direcció esquerra - pin 10 del L293D respectiu
- d05: activeu el pin 1 o 9 del servo servo (pwm) a L293D
- d06: activeu el pin 1 o 9 del servo colze (pwm) a L293D
- d07 - PIN SPI CSN al xip nRF24L01 (pin 4)
- d08 - PIN SPI CS al xip nRF24L01 (pin 3)
- d09: activeu el pin 1 o 9 del servo canell (pwm) al L293D
- d10 - habilitar el pin 1 o 9 del servo de pinça (pwm) a L293D
- d11: SPI MOSI a xip nRF24L01 (pin 6) i pin 14 a Shift Register
- d12: xip SPI MISO a nRF24L01 (pin 7)
- d13: SPI SCK al xip nRF24L01 (pin 5) i pin 11 al registre de canvis
REGISTRE DE MAJES I L293D:
- pin QA (15) de 74HC595 al pin 2 de L293D # 1
- pin QB (1) de 74HC595 al pin 7 de L293D # 1
- pin QC (2) de 74HC595 al pin 10 de L293D # 1
- el pin QD (3) de 74HC595 al pin 15 de L293D # 1
- el pin QE (4) de 74HC595 al pin 2 de L293D # 2
- el pin QF (5) de 74HC595 al pin 7 de L293D # 2
- el pin QG (6) de 74HC595 al pin 10 de L293D # 2
- pin QH (7) de 74HC595 al pin 15 de L293D # 2
Pas 7: COMUNICACIÓ
Glove envia 2 bytes de dades a la caixa de control 10 vegades per segon o sempre que es rep un senyal d’un dels sensors.
2 bytes són suficients per a 6 controls perquè només necessitem enviar:
- ON / OFF per LED (1 bit): en realitat vaig utilitzar 2 bits per ser coherent amb els motors, però n'hi ha prou
- OFF / DRETA / ESQUERRA per a 5 motors: 2 bits cadascun = 10 bits
N’hi ha prou amb un total d’11 o 12 bits.
Codis de direcció:
- DESACTIVAT: 00
- DRETA: 01
- ESQUERRA: 10
La paraula de control té aquest aspecte (en termes de bits):
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 - pinça
- M2: canell
- M3 - colze
- M4: espatlla
- M5: base
El byte 1 es podria alimentar convenientment directament al registre de desplaçament, ja que controla la direcció dreta / esquerra dels motors 1 a 4.
S'ha habilitat un temps d'espera de 2 segons per a les comunicacions. Si es produeix un temps d'espera, tots els motors s'aturen com si es premés un botó VERMELL.
Pas 8: esbossos i molt més …
GUANT
Glove sketch utilitza les biblioteques següents:
- DirectIO: disponible a Github
- I2Cdev: disponible a Github
- Cable: part d'Arduino IDE
- MPU6050: disponible a Github
- SPI: part d'Arduino IDE
- RF24: disponible a Github
i tres biblioteques desenvolupades per mi:
- AvgFilter: disponible de Github
- DhpFilter: disponible a Github
- TaskScheduler: disponible a Github
Esbós de guants està disponible aquí: Glove Sketch v1.3
CAIXA DE CONTROL DEL BRAÇ
Esbós de braços utilitza les biblioteques següents:
- DirectIO: disponible a Github
- PinChangeInt: disponible a Github
- SPI: part d'Arduino IDE
- RF24: disponible a Github
i una biblioteca desenvolupada per mi:
TaskScheduler: disponible a Github
Esbós de braços disponible aquí: Arm Sketch v1.3
Fulls de dades del maquinari utilitzat
- Registre de torns 74HC595: full de dades
- Controlador de motor L293D - fitxa tècnica
- Mòdul sense fils nRF24: full de dades
- Mòdul acceleròmetre / giroscopi MPU6050 - fitxa tècnica
ACTUALITZACIÓ del 31 de maig de 2015:
Hi ha disponible una nova versió dels esbossos de la caixa de control de guants i braços: Glove and Arm Sketches v1.5
També es troben a github aquí.
Canvis
- S'han afegit dos bytes més a l'estructura de comunicació per enviar la velocitat del motor sol·licitada per als motors de canell, colze, espatlla i base com a valor de 5 bits (0.. 31) del guant proporcional a l'angle del gest de control (vegeu més avall). Arm Control Box assigna els valors [0.. 31] als valors PWM respectius de cadascun dels motors. Això permet un control de velocitat gradual per part de l’operador i una manipulació més precisa dels braços.
- Nou conjunt de gestos:
1. LED: LED de control de botons - botó del dit mig - ACTIVAT, botó del dit rosat - APAGAT
2. PINÇA: controls de tires flexibles Pinça - dit mig doblegat - OBRIT, dit completament doblegat - TANCAR
3. CANELL: El canell es controla inclinant la palma des de la posició totalment horitzontal AMUNT i ABAIX, respectivament. Més inclinació produeix més velocitat
4. BRAÇ: el braç es controla inclinant la palma des de la posició totalment horitzontal ESQUERRA i DRETA. Més inclinació produeix més velocitat
5. ESPATLLA: l’espatlla es controla girant el palmell DARRERA i ESQUERRA des del palmell apuntant cap amunt. La palma es gira al llarg de l'eix del colze (igual que agita la mà)
6. BASE: la base es controla de la mateixa manera que l'espatlla amb el palmell apuntant cap avall.
Pas 9: QUÈ MÉS?
IMAGINACIÓ A LA FEINA
Com és habitual amb aquests sistemes, es podrien programar per fer molt més.
Per exemple, el disseny actual ja incorpora capacitats addicionals, no possibles amb el comandament a distància estàndard:
- Augment gradual de la velocitat: cada moviment del motor s’inicia a una velocitat mínima predefinida, que s’incrementa gradualment cada 1 segon fins que s’aconsegueix una velocitat màxima. Això permet un control més precís de cadascun dels motors (especialment el canell i la pinça)
- Cancel·lació més ràpida del moviment: quan Arm Box rep l'ordre de parar un motor, inverteix momentàniament el motor durant uns 50 ms, "trencant" el moviment i permetent un control més precís.
QUÈ MÉS?
Potser es podrien implementar gestos de control més elaborats. O es podrien utilitzar gestos simultanis per a controls elaborats. Pot ballar el braç?
Si teniu una idea de com tornar a programar el guant o teniu una versió d’un esbós que vulgueu que provi, feu-m’ho saber: [email protected]
Pas 10: *** VAM GUANYAR !!! ***
Aquest projecte va guanyar el primer premi del concurs Coded Creations patrocinat per Microsoft.
Comprova-ho! WOO-HOO !!!
Accèssit a les creacions codificades
Recomanat:
Com fer un braç robòtic sense fils amb bales Airsoft: 9 passos
Com fer un braç robòtic sense fils amb bales Airsoft: Hola amics, en aquest instructiu us mostraré com fer un braç robot sense fils que es pugui balancejar, moure en direcció amunt i avall i disparar bales airsoft amb el control del comandament a distància sense fils
Controlar un braç robòtic amb mòduls Zio Part 1: 8 passos
Controlar un braç robòtic amb mòduls Zio Part 1: aquesta entrada al bloc forma part de la sèrie Zio Robotics. Introducció En aquest tutorial, construirem un projecte on utilitzarem els mòduls Zio per controlar el braç robotitzat. Aquest projecte us ensenyarà a fer que la vostra arpa del braç robòtic s’obri i es tanqui. Aquest n
LÀMPARA SOLAR SENSE FILS AMB BRAÇ FLEXIBLE MAGNÈTIC: 8 passos (amb imatges)
LÀMPARA SOLAR SENSE FIL AMB BRAÇ FLEXIBLE MAGNÈTIC: Aquest projecte es va fer a partir d’un llum & nodeMCU. Aquesta làmpada decorativa es pot ajustar en qualsevol direcció & fixat sobre materials magnètics o posat sobre la taula. Es pot controlar en dos modes de la següent manera: - Mode de control sense fils, com
Com controlar el braç del robot amb un reproductor servo de 6 canals sense codificar: 5 passos
Com controlar el braç del robot amb un reproductor servo de 6 canals sense codificar: aquest tutorial mostra com controlar el braç del robot amb un reproductor servo de 6 canals sense codificar
Refredador / suport per a portàtils de cost zero (sense cola, sense perforació, sense femelles i cargols, sense cargols): 3 passos
Refredador / suport per a portàtils de cost zero (sense cola, sense perforació, sense femelles i cargols, sense cargols): ACTUALITZACIÓ: SI US PLAU VOT PER EL MEU INSTRUCTABLE, GRÀCIES ^ _ ^ TAMBÉ POTS AGRADAR-ME ENTRADA A www.instructables.com/id/Zero-Cost-Aluminum-Furnace-No-Propane-No-Glue-/ O POTS VOTAR ELS MEUS MILLORS AMICS