Proyecto Brazo Robótico
Proyecto Brazo Robótico
Proyecto Brazo Robótico
Meca trnica
Materia: Cinemtica de Robots
Maestro:
Grupo: 180801
Proyecto Brazo Robtico
Alumnos:
Contenido
1.
Introduccin ................................................................................................................................ 3
2.
Objetivo ....................................................................................................................................... 4
3.
4.
4.1.
Arduino .................................................................................................................................... 7
4.2.
5.
4.2.1.
4.2.2.
4.2.3.
Esfrico ........................................................................................................................ 9
4.2.4.
4.2.5.
4.2.6.
4.2.7.
Cinemtica ................................................................................................................. 11
4.2.8.
Desarrollo .................................................................................................................................. 13
5.1.
5.2.
Programa ........................................................................................................................... 21
5.3.
Fisico ...................................................................................................................................... 23
6.
Conclusin ................................................................................................................................. 25
7.
Bibliografa ................................................................................................................................ 26
1. Introduccin
Un brazo manipulador o brazo robtico se puede definir como el conjunto de elementos
electromecnicos que propician el movimiento de un elemento terminal (Gripper o herramienta) .
La constitucin fsica de la mayor parte de estos manipuladores guarda cierta similitud con la
anatoma de las extremidades superiores del cuerpo humano, por lo que, en ocasiones, para hacer
referencia a los distintos elementos que componen al robot, se usan trminos como: cintura,
hombro brazo, codo, mueca, etc. Como se muestra en la Fig. 1
Fig. 1
Una especificacin general de un brazo robtico comprende: sus grados de libertad, su
configuracin y su cinemtica directa e inversa. Estas especificaciones son dadas desde el diseo
propio de cada robot y su aplicacin. Hay una clasificacin de robots manipuladores la cual presenta
las diferencias de diseo, precisin, precio, etc.
La cinemtica del robot estudia el movimiento del mismo con respecto a un sistema de referencia,
as mismo se interesa por la descripcin analtica del movimiento espacial del robot como una
funcin del tiempo y en particular por las relaciones entre la posicin y la orientacin del extremo
final del robot con los valores que toman sus coordenadas articulares.
Existen dos problemas fundamentales a resolver en la cinemtica del robot:
Primero de ellos se conoce como el problema cinemtico directo (C-D) el cual consiste en
determinar la orientacin y la posicin del extremo final del robot, con respecto a un
sistema de coordenadas que se toma como referencia, conocidos los valores de las
articulaciones y los parmetros geomtricos que se toma como referencia , conocidos los
valores de las articulaciones y los parmetros geomtricos de los elementos del robot
2. Objetivo
El objetivo de este proyecto consiste en el diseo y puesta en marcha de un brazo robtico
aplicando con los conocimientos que se llegaron a aprender en la materia de Cinemtica de Robots.
En torno a este objetivo principal, se proponen los siguientes subjetivos:
Dotar a los diferentes mdulos del brazo robtico de los actuadores necesarios para su
movimiento.
Controlar por ordenador las diferentes posiciones que el robot es capaz de alcanzar. Se
implementar una solucin para coger un objeto y posicionarlo en otro lugar. Adems, se
propone un programa de control que utilice teclas de acceso rpido utilizando un Nunchuk
para que realice los movimientos.
Realimentacin de la posicin y utilizacin de la misma para el movimiento del robot
aplicando la Cinemtica de Robots
Robot Association (BRA) y otras. Todas ellas coinciden en dos puntos: la capacidad de
reprogramacin y la multifuncionalidad de los robots.
Fig. 2
4. Marco Terico
4.1. Arduino
Arduino es una plataforma de electrnica abierta, lo que se corresponde con la categora de
Hardware OpenSource. De esta manera, las placas pueden ser fabricadas por uno mismo o
compradas montadas de fbrica, pero el software siempre ser descargado de manera gratuita.
Adems, debido a la licencia abierta del mismo, cada usuario podr adaptarlo a sus necesidades.
El lenguaje de programacin a utilizar es propio y existen infinidad de tutoriales sobre el montaje de
la placa, ejemplos de control de actuadores y las diferentes libreras.
Adems, la comunidad de usuarios de Arduino ha creado un foro donde se proponen soluciones a
los problemas de aquellos menos experimentados. De esta manera se ofrece un soporte tcnico
donde la propia comunidad de desarrollo se encarga de mejorar y afianzar los conceptos,
promoviendo la difusin de esta plataforma.
Existen multitud de diferentes versiones de placas Arduino. Se diferencian entre s en potencia,
tamao, pines de control e incluso aplicaciones (por ejemplo, la placa LilyPad est diseada para
aplicaciones sobre prendas). Para este proyecto se utilizar una placa Arduino Uno cuyas
caractersticas son:
Microcontrolador: ATmega328.
Pines digitales de entrada/salida: 14 (6 de los cuales pueden ser usados como salidas PWM)
Voltaje de operacin: 5 V
Voltaje de entrada recomendado: 7 - 12 V
Voltaje de entrada: 6 - 20 V
Pines analgicos: 6
Intensidad DC por cada pin E/S: 40 mA
Intensidad DC por cada pin 3.3V: 50 mA
Memoria Flash: 32 kB (ATmega328)
SRAM: 2 KB (ATmega328)
EEPROM: 1 KB (ATmega328)
Frecuencia de reloj: 16 mHz
Esta placa contiene todas las caractersticas para aprovechar al mximo la capacidad del
microcontrolador. Tambin dispone de una conexin USB, una conexin de alimentacin y un
botn de reset.
La alimentacin de la placa se puede realizar tanto por conexin USB como de manera externa
(adaptador AC-DC o pilas). La diferencia reside en que por USB, la intensidad que se obtiene es de
0.5 A, debido a la restriccin del puerto USB, mientras que con una fuente de alimentacin externa
conectada al pin VIN, uno se asegura de que la intensidad recibida es la proporcionada por la
fuente.
En cuanto a las entradas o salidas, es interesante comentar que cada uno de los 14 pines digitales
disponibles trabaja a 5V. Los pines con funcionalidades ms importantes son los siguientes:
Por otro lado, cada uno de los 6 pines analgicos (A0 - A5) permite una resolucin de 10 bits (1024
valores diferentes). Por defecto trabajan a 5V, aunque se puede cambiar su rango superior
mediante el pin de AREF. Los pines con funcionalidades ms importantes son los siguientes:
Por ltimo, Arduino permite su comunicacin con otro ordenador, otra placa Arduino u otros
microcontroladores. Esto se debe a que el ATmega328 habilita la comunicacin serie UART TTL (5V),
disponible tambin en los pines digitales o RX y TX. De esta manera, al conectar la placa mediante
USB a un ordenador, los les de RX y TX parpadearn cuando se reciba o transmita informacin.
Tambin se soporta la comunicacin mediante I2C o SPI.
Sistema de Coordenadas
4.2.2.
Coordenadas Cartesianas
4.2.3.
Esfrico
4.2.4.
Representacin de la Orientacin
Matrices de Rotacin
En el espacio del algebra matricial, encontramos el nicho adecuado que contiene todos los
ingredientes esenciales, los cuales hacen posible que podamos adentrarnos en la tarea de la
descripcin de las orientaciones.
Los dos sistemas de referencia arriba mencionados son:
y
.
El sistema
es el de referencia fija, y el sistema OUV es el mvil solidario al objeto. Los vectores
unitarios del sistema
son en tanto que los del sistema
son:
.
La representacin en ambos sistemas del vector p en el plano, se registra de la siguiente manera:
4.2.6.
4.2.7.
Cinemtica
Un robot se puede considerar como una cadena cinemtica formada por eslabones unidos por
articulaciones
Se establece un sistema de referencia fijo solidario a la base
Se describe la localizacin de cada uno de los eslabones con respecto a dicho sistema de
referencia
Es funcin de las coordenadas articulares.
Para sistemas de hasta 3 grados de libertad se puede usar un mtodo trigonomtrico
4.2.8.
Cinemtica Inversa
El problema cinemtico inverso consiste en encontrar los valores que debe adoptar las
coordenadas articulares del robot para que su extremo se posicione y oriente segn una
determinada localizacin espacial
5. Desarrollo
Para el desarrollo vamos a considerar el brazo de robot que se muestra en la siguiente FIg.3
Fig. 3
),
Vemos en la Fig.3 los eslabones los cuales efectan 4 rotaciones angulares (
realizando los clculos para obtener la Cinemtica Directa e Inversa del Robot son las siguientes:
5.1.
Cinemtica Directa
Articulaciones
1
2
3
4
q1
(q2+90)
(q3-90)
q4
d
d1
0
0
0
a
0
d2
d3
0
90
0
-90
0
d3
X2
Z2
Y1
Y2
X2
d2
Z2
Y1
X1
Z1
d1
Z0
Y0
X0
Si consideramos lo siguiente
)
(
( (
))
( )
(
)
(
( (
))
((
)
( )
))
Fig.4
Consideramos:
Fig.5
Tenemos:
No
Si multiplicamos en ambas
( )(
Despejando
(
)
)
(
Por motivos de ventaja es conveniente utilizar la expresin de arcotangente en lugar del arcoseno
1=
Luego
Con
(
Podemos observar que se tienen dos soluciones, esto dependiendo de si el codo est arriba o
abajo.
Fig.6
Para el clculo de
Si sabemos que:
(
Y si
Donde
( )
5.2.
) (
Programa
Para reproducir el movimiento del brazo del robot utilizamos la placa Arduino y el interface Arduino
para poder controlar los servos, y posteriormente reproducirlos es el siguiente
#include <Wiichuck.h>
#include <Wire.h>
#include <Servo.h>
Wiichuck chuck;
char leer;
int conta=0;
int pos[30][6];
Servo myservo[5];
void setup() {
myservo[0].attach(8);
myservo[1].attach(9);
myservo[2].attach(10);
myservo[3].attach(11);
myservo[4].attach(12);
chuck.init(0,0);
chuck.calibrate();
Serial.begin(9600);
myservo[0].write(90);
myservo[2].write(90);
myservo[3].write(90);
myservo[4].write(90);
myservo[1].write(90);
}
void loop() {
leer=Serial.read();
}
else {
Serial.print("Reproducir los Movimiento: ");
int h=conta-1;
Serial.println(h);
if(conta>0)
{
for(int i=0;i<=conta;i++)
{
for(int j=0;j<6;j++)
{
myservo[j].write(pos[i][j]);
delay(500);
}
}
}
conta=0;
delay(1000);
}
}
5.3. Fisico
En las siguientes imgenes podemos ver los movimientos del brazo del robot los cuales se guardan
y se reproducen
6. Conclusin
()
Diseamos el brazo robtico de cuatro grados de libertad con un Gripper y lo acoplamos a las
necesidades para poder realizar diferentes aplicaciones o usos al brazo robtico, aplicamos los
conocimientos de Cinemtica de Robots para poder calcular sus movimientos por medio de
cinemtica inversa y cinemtica Directa, utilizamos una placa Arduino y la librera de Nunchuk
poder controlar el brazo robtico con el Nunchuk y desde el teclado de la computadora podemos
guardar y reproducir los movimientos que se puede registrar de brazo robtico.
()
En nuestro proyecto hicimos un brazo con 4 grados de libertad similar al que se ocupamos para
realizar las prcticas, con el objetivo que realice una secuencia de funciones como las de las del
Moto-man, tuvimos problemas porque se program con arduino y la memoria de este se saturaba y
no quera generar los movimientos y guardar las secuencias pero al final se modific el programa y
el proyecto logro cumplir con el objetivo.
()
7. Bibliografa
Antonio Barrientos, Luis Felipe Pen; Fundamentos de Robtica; Mc Graw Hill; 1997
Subir Kumar Saha. (2008). Introduccin a la robtica. Mexico: McGRAW-HILL.
John J. Craig; Robtica 3a; Pearson Prentice Hall; 2006
Rafael Kelly, Vctor Santibez; Control de movimiento de robots manipuladores; Pearson
Mark W. Spong, ;. Vidyasagar; Robot Dynamics and Control; Hohn Wiley & Sons