Tarea Manipuladores

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 26

DISEÑO CONSTRUCCION Y CONTROL AVANZADO DE ROBOTS Y

MANIPULADORES

La construcción y control de robots manipuladores de alto rendimiento que


garanticen el seguimiento de trayectorias variantes el tiempo es un problema
actual de desarrollo e investigación. En la robótica interaccionan diferentes áreas
de la ingeniería como la mecánica, electrónica, control, etc., donde se deben de
considerar muchos aspectos de realización para la construcción de un robot,
como por ejemplo la selección de los motores de acuerdo al torque requerido, la
estructura del robot (diseño), las estrategias de control, etc. Los manipuladores
típicos transmiten torques de los actuadores a las uniones a través de sistemas de
engranes que pueden resultar de alta complejidad (lineal). Este sistema de
engranes presenta una dinámica indeterminable (no) con características
indeseables como backlash y tipos de fricción.
Mientras se eliminan las no linealidades de transmisión, los manipuladores de
transmisión directa llegan a ser cada vez más masivo y voluminoso conforme el
numero de grados de libertad aumenta. Adicionalmente, los manipuladores de
transmisión directa son más sensibles a acoplamiento dinámico que los
manipuladores acoplados por engranes, y además, también son más susceptibles
a errores de modelado dinámico y perturbaciones dinámicas. Las características
básicas de este robot son la obtención de un control de torque de unión de
altodesempeño, y la obtención de características dinámicas óptimas.

Definición del Robot Industrial 

Existen ciertas dificultades a la hora de establecer una


definición formal de lo que es un robot industrial. La primera de
ellas surge de la diferencia conceptual entre el mercado
japonés y el euro-americano de lo que es un robot y lo que es
un manipulador. Así, mientras que para los japoneses un robot
industrial es cualquier dispositivo mecánico dotado de
articulaciones móviles destinado a la manipulación, el mercado
occidental es más restrictivo, exigiendo una mayor
complejidad, sobre todo en lo relativo al control. En segundo
lugar, y centrándose ya en el concepto occidental, aunque
existe una idea común acerca de lo que es un robot industrial,
no es fácil ponerse de acuerdo a la hora de establecer una definición formal.
Además, la evolución de la robótica ha ido obligando a diferentes actualizaciones
de su definición.

La definición mas comúnmente aceptada posiblemente sea la de la Asociación de


Industrias Robóticas (RIA), según la cual:
Un robot industrial es un manipulador multifuncional reprogramable, capaz de
mover materias, piezas, herramientas, o dispositivos especiales, según
trayectorias variables, programadas para realizar tareas diversas.

Esta definición, ligeramente modificada, ha sido adoptada por la Organización


Internacional de Estándares (ISO) que define al robot industrial como:

Manipulador multifuncional reprogramable con varios grados de libertad, capaz de


manipular materias, piezas, herramientas o dispositivos especiales según
trayectorias variables programadas para realizar tareas diversas.

Se incluye en esta definición la necesidad de que el robot tenga varios grados de


libertad. Una definición más completa es la establecida por la Asociación Francesa
de Normalización (AFNOR), que define primero el manipulador y, basándose en
dicha definición, el robot:

Manipulador: mecanismo formado generalmente por elementos en serie,


articulados entre sí, destinado al agarre y desplazamiento de objetos. Es
multifuncional y puede ser gobernado directamente por un operador humano o
mediante dispositivo lógico.

Robot: manipulador automático servo-controlado, reprogramable, polivalente,


capaz de posicionar y orientar piezas, útiles o dispositivos especiales, siguiendo
trayectoria variables reprogramables, para la ejecución de tareas variadas.
Normalmente tiene la forma de uno o varios brazos terminados en una muñeca.
Su unidad de control incluye un dispositivo de memoria y ocasionalmente de
percepción del entorno. Normalmente su uso es el de realizar una tarea de
manera cíclica, pudiéndose adaptar a otra sin cambios permanentes en su
material.

Por ultimo, la Federación Internacional de Robótica (IFR) distingue entre robot


industrial de manipulación y otros robots:

Por robot industrial de manipulación se entiende una maquina de manipulación


automática, reprogramable y multifuncional con tres o más ejes que pueden
posicionar y orientar materias, piezas, herramientas o dispositivos especiales para
la ejecución de trabajos diversos en las diferentes etapas de la producción
industrial, ya sea en una posición fija o en movimiento.

En esta definición se debe entender que la reprogramabilidad y la multifunción se


consiguen sin modificaciones físicas del robot.

Común en todas las definiciones anteriores es la aceptación del robot industrial


como un brazo mecánico con capacidad de manipulación y que incorpora un
control más o menos complejo. Un sistema robotizado, en cambio, es un concepto
más amplio. Engloba todos aquellos dispositivos que realizan tareas de forma
automática en sustitución de un ser humano y que pueden incorporar o no a uno
ovarios robots, siendo esto ultimo lo mas frecuente.

Clasificación del robot industrial

La maquinaria para la automatización rígida dio paso al robot con el desarrollo de


controladores rápidos, basados en el microprocesador, así como un empleo de
servos en bucle cerrado, que permiten establecer con exactitud la posición real de
los elementos del robot y establecer el error con la posición deseada. Esta
evolución ha dado origen a una serie de tipos de robots, que se citan a
continuación:

 Manipuladores
 Robots de repetición y aprendizaje
 Robots con control por computador
 Robots inteligentes
 Micro-robots

Manipuladores

Son sistemas mecánicos multifuncionales, con un sencillo sistema de control, que


permite gobernar el movimiento de sus elementos, de los siguientes modos:

 Manual: Cuando el operario controla directamente la tarea del manipulador.

 De secuencia fija: cuando se repite, de forma invariable, el proceso de


trabajo preparado previamente.

 De secuencia variable: Se pueden alterar algunas características de los


ciclos de trabajo.
Existen muchas operaciones básicas que pueden ser realizadas óptimamente
mediante manipuladores, por lo que se debe considerar seriamente el empleo de
estos dispositivos, cuando las funciones de trabajo sean sencillas y repetitivas.

Robots de repetición o aprendizaje

Son manipuladores que se limitan a repetir una secuencia de movimientos,


previamente ejecutada por un operador humano, haciendo uso de un controlador
manual o un dispositivo auxiliar. En este tipo de robots, el operario en la fase de
enseñanza, se vale de una pistola de programación con diversos pulsadores o
teclas, o bien, de joystics, o bien utiliza un maniquí, o a veces, desplaza
directamente la mano del robot. Los robots de aprendizaje son los mas conocidos,
hoy día, en los ambientes industriales y el tipo de programación que incorporan,
recibe el nombre de "gestual".

Robots con control por computador

Son manipuladores o sistemas mecánicos multifuncionales, controlados por un


computador, que habitualmente suele ser un microordenador.
En este tipo de robots, el programador no necesita mover realmente el elemento
de la maquina, cuando la prepara para realizar un trabajo. El control por
computador dispone de un lenguaje especifico, compuesto por varias
instrucciones adaptadas al robot, con las que se puede confeccionar un programa
de aplicación utilizando solo el terminal del computador, no el brazo. A esta
programación se le denomina textual y se crea sin la intervención del manipulador.

Las grandes ventajas que ofrecen este tipo de robots, hacen que se vayan
imponiendo en el mercado rápidamente, lo que exige la preparación urgente de
personal cualificado, capaz de desarrollar programas similares a los de tipo
informático.

Robots inteligentes

Son similares a los del grupo anterior, pero, además, son capaces de relacionarse
con el mundo que les rodea a través de sensores y tomar decisiones en tiempo
real (auto programable).

De momento, son muy poco conocidos en el mercado y se encuentran en fase


experimental, en la que se esfuerzan los grupos investigadores por potenciarles y
hacerles más efectivos, al mismo tiempo que más asequibles.
La visión artificial, el sonido de maquina y la inteligencia artificial, son las ciencias
que más están estudiando para su aplicación en los robots inteligentes.

Micro-robots

Con fines educacionales, de entretenimiento o investigación, existen numerosos


robots de formación o micro-robots a un precio muy asequible y, cuya estructura y
funcionamiento son similares a los de aplicación industrial.

Por último y con el fin de dar una visión del posible futuro, se presentan en forma
clasificada, buena parte de los diversos tipos de robots que se puedan encontrar
hoy en día. Todos los robots presentados existen en la actualidad, aunque los
casos más futuristas están en estado de desarrollo en los centros de investigación
de robótica.

  Clasificación de los robots según la AFRI 


Tipo A Manipulador con control manual o telemando.

Manipulador automático con ciclos preajustados; regulacion


Tipo B mediante fines de carrera o topes; control por PLC;
accionamiento neumatico, electrico o hidraulico.

Tipo C Robot programable con trayectoria continua o punto a punto.


Carece de conocimiento sobre su entorno.

Robot capaz de adquirir datos de su entorno, readaptando su


Tipo D
tarea en función de estos.

(AFRI) Asociación Francesa de Robótica Industrial.

La IFR distingue entre cuatro tipos de robots:

1. Robot secuencial.
2. Robot de trayectoria controlable.
3. Robot adaptativo.
4. Robot tele manipulado.

  Clasificación de los robots industriales en generaciones


1ª Repite la tarea programada secuencialmente. No toma en
Generación cuenta las posibles alteraciones de su entorno.

Adquiere información limitada de su entorno y actúa en



consecuencia. Puede localizar, clasificar (visión) y detectar
Generación
esfuerzos y adaptar sus movimientos en consecuencia.

Su programación se realiza mediante el empleo de un lenguaje



natural. Posee la capacidad para la planificación automática de
Generación
sus tareas.

Clasificación de los robots según T. M. Knasel


Usos más
Tipo de Grado de
Generación Nombre  frecuente
Control movilidad 
s
Manipulaci
Fines de
ón,
1 (1982) Pick & place carrera, Ninguno
servicio de
aprendizaje
maquinas

2 (1984) Servo Servocontrol, Desplazamiento Soldadura,


trayectoria por vía pintura
continua, progr.
condicional

Ensambla
Servos de
do,
3 (1989) Ensamblado precisión, Guiado por vía
desbardad
visión, tacto,
o

Construcci
Sensores ón,
4 (2000) Móvil Patas, ruedas
inteligentes mantenimi
ento

Controlados
Andante, Militar,
5 (2010) Especiales con técnicas de
saltarín espacial
IA

A continuación se presentan dos artículos sobre la construcción de manipuladores

y los pasos que se siguieron para su construcción.

Resumen
El objetivo de este prototipo es lograr la clasificación de dos tipos diferentes de
fichas tanto en tamaño como en color, de un tablero de 40 × 40 cm.
La solución propuesta es un brazo articulado con 3 grados de libertad construido
con materiales ligeros, y controlado a través de un programa en Visual Basic que
envía las diferentes señales para el posicionamiento de los servomotores; la
traducción de estas señales se logra a través de un
micro controlador [1].
El álgebra que utilizaremos en este trabajo para modelar el manipulador es la de
los Quaterniones. Con este modelo se puede resolver la
cinemática directa o inversa del manipulador [2] [3].

1. Introducción
Los robots, la parte más atractiva en la era de la automatización, representan una
pieza fundamentalen el estudio de la ingeniería.
Un robot manipulador debe ser capaz de operar y manejar cierto tipo de piezas
con un grado alto de precisión y exactitud de acuerdo a la funciónpara la cual fue
creado y programado.
El presente robot manipulador es capaz de seleccionar de un tablero(40cm×40cm)
10 piezas dediámetro constante de 2.5 cm con alturas que varían entre 1.5 y 2.5
cm, y un peso máximo de 15 gramos.
Estas piezas deberán ser colocadas en dos contenedores distintos, dependiendo
del color de lapieza (blanco ó negro) que estarán colocados a los lados del tablero.

Estas piezas deben ser colocadas en el depósito correspondiente a su color, de la


forma más exacta posible y en el menor tiempo estimable.
El brazo manipulador articulado, consta de una base y tres articulaciones, y como
efector final utiliza un solenoide y un sensor óptico, ya que las piezas a recoger
tienen una tapa de fierro.
Las dimensiones del brazo se determinaron realizando un análisis con base en el
modelado del manipulador utilizando Quaterniones.

Figura 1. Manipulador 3GL.

El brazo se maneja por medio de un micro controlador, como interfaz entre la


computadora y los operadores, un programa basado en Visual Basic, tres
servomotores de dos diferentes tipos como actuadores y un solenoide como
efector final, utilizando un sensor óptico como identificador de
colores. El brazo fue construido en su mayor parte con material ligero y la base fue
construida en Nylamid. El conjunto fue cubierto de una capa de primer automotriz
color gris utilizado coma capa para homogenizar y cubierto con una capa de
pintura laca color anaranjada 2030.

2. Quaterniones

El modelo matemático a utilizar para el manipulador, está basado en el Álgebra de


los Quaterniones y sus propiedades son las siguientes:

2.1 Propiedades de los Quaterniones

2.1.1 Isomorfismo de los vectores de ? 3 al espacio


vectorial Q.

Un Quaternión p ? ( p , p , p , p ) 0 1 2 3 se puede descomponer en un Quaternión


Real ( ,0,0,0) 0 p p r ? y en un Quaternión Vectorial (0, , , ) 1 2 3 p p p p v ? .

Dentro de las propiedades de los Quaterniones existe


una transformación isomórfica (trasformación uno a uno) Tv: Qv? ? 3; entre el
subes pació de los Quaterniones vectoriales Qv y el espacio vectorial ? 3, tal que:
Tv(0,b,c,d) = (b,c,d) ? (0,b,c,d) ? Qv, (1)

Dado que esta transformación es un isomorfismo, existe una transformación


inversa
Tv
-1: ? 3? Qv , tal que :
Tv
-1(b,c,d) = (0,b,c,d) ? (b,c,d)? ? 3
,
Con esto podemos considerar a cualquier vector dado en ? 3 como un elemento
del espacio vectorial de los Quaterniones.
Es importante resaltar que el isomorfismo anterior permitirá trabajar los
elementos ? 3 utilizando las propiedades algebraicas del espacio de los
Quaterniones Q.
El conjugado de un Quaternion está dado
por: p ? ( p ,? p ,? p ,? p ) 0 1 2 3

2.1.2 Rotación de un sistema cartesiano de


referencia
En esta parte se presenta la forma de aplicar una rotación rígida con el álgebra de
los Quaterniones, con el propósito de utilizarla después
de vectores de ? 3. La transformación que utilizaremos en nuestra modelación
está dada por

? (p, ? ): Q? Q definida por:


?? ?p,q)= p*q*p ? q? Q?
?
-1
(2)
La cual es una rotación en el espacio vectorial de los Quaterniones.

*: Q? Q? Q es la operación multiplicativa de los Quaterniones.


? : Q? ? + es la norma en espacio vectorial Q.
? es la multiplicación escalar .
p ? Q es el conjugado de p.
Los componentes de p? Q están relacionados con los parámetros físicos de la
rotación, mediante las siguientes donde:
p0 = Cos
?
2
, pv = Sin
?
2
wv (3)
? es el ángulo de rotación
w =(w1, w2, w3) es el eje de rotación
Si p? Q es un Quaternión unitario, entonces
la rotación ? (p,? ): Q? Q se simplifica a la siguiente
forma:
? (p,q) ? ?p*q*p? 1? ? ?p *q* p ? ? q? ?Q
(4)
Esta operación es muy útil en la cinemática cuando tenemos que relacionar un
sistema de referencia a partir de otro, relacionando mediante rotaciones la base
que forma a cada uno de estos sistemas.

3. Servomotores
Los servomotores de modelismo consisten en un motor eléctrico que sólo se
puede mover en un ángulo de aproximadamente 180 grados. Dentro del
servomotor, una tarjeta controladora le dice a un pequeño motor de corriente
directa cuántas vueltas girar para acomodar la flecha en la posición que se le
ha pedido. El esquema antes descrito se presenta en la

Figura 2.
Figura 2. Elementos de un Servomotor
http://www.creaturoides.com/srvesp.htm

El potenciómetro, está sujeto a la flecha y mide hacia dónde está rotando en todo
momento. Es así como la tarjeta controladora sabe hacia dónde mover el motor.
La posición que se requiere se le proporciona al servomotor por medio de pulsos.
Siempre debe existir una señal de pulsos presente en ese cable. Un
ejemplo de la señal de control se da en la Figura 3.

Figura 3. Señal de control de los Servomotores


http://www.creaturoides.com/srvesp.htm

Como existen muchos tipos de servomotores, se deben realizar pruebas


preliminares para encontrar exactamente el período y la duración de los pulsos y
obtener su mejor funcionamiento (Ver Apéndice A). Para esto basta un
osciloscopio y un generador de señales.

4. Diseño Mecánico

Para lograr el fin anteriormente propuesto se eligió un diseño de manipulador tipo


articulado y que a su vez representa el modelo más comercial y práctico a
construir. Con base en el Álgebra de Quaterniones se calcula la ecuación del robot
utilizando el software “Mathematica 4.0” como se indica en la ecuación 5.

Lo1=4.45; Lo2=-3.77; Lo3=-1.1;


base={20,-19,0};
teta1=.;
PP=VeQu[teta1 Degree,{0,0,1}];
l1aa=Rota[{PP},{DD1,0,0}];
l1bb=Rota[{PP},{0,0, Lo1}];
l1=( l1aa+l1bb )//TrigReduce//Chop;
teta2=.;
eje2=Rota[{PP},{1,0,0}];
QQ=VeQu[teta2 Degree,eje2];
l2aa=Rota[{PP},{DD2,0,0}];
l2bb=Rota[{QQ,PP},{0, Lo2,0}];
l2=(l2aa+l2bb)//TrigReduce//Chop;
teta3=.;
eje3=eje2;
SS=VeQu[teta3 Degree,eje3];
l3aa=Rota[{PP},{DD3,0,0}];
l3bb=Rota[{SS,QQ,PP},{0, Lo3,0}];
l3=(l3aa+l3bb)//TrigReduce//Chop;

Donde:
Lo1 = longitud del hombro del manipulador
Lo2 = longitud de la primera articulación
Lo3 = longitud de la segunda articulación
Lo4 = longitud del eje que sostiene al solenoide
base = es el vector de la esquina de la base del
manipulador al origen del tablero
DD1 = es el desplazamiento de la cabeza del
servomotor con respecto al centro de la base
DD2 = es el desplazamiento de la primera
articulación con respecto al hombro
DD3 = es el desplazamiento de la segunda
articulación con respecto a la primera
teta 1 = Ángulo del hombro del manipulador
teta 2 Ángulo de la primera articulación
teta 3 = Ángulo de la segunda articulación
La ecuación de posición del manipulador
está dada por la ecuación 6.

posición = base+l1+l2+l3+{0,0,-DD4}
(6)

Las longitudes de las articulaciones del manipulador se calcularon de acuerdo a la


geometría del tablero Figura 4. Y probando con cinemática inversa se fue
interactuando hasta alcanzar los puntos extremos, de acuerdo a los resultados
obtenidos se iban modificando las dimensiones hasta llegar a las medidas de la
Tabla 1.

Figura 4. Simulación del manipulador3GL.

Base: 20 cm
Primera
Articulación: 37.7 cm
Segunda
Articulación: 26.4 cm
Distancia a
Solenoide: 26.1 cm

Tabla 1. Longitudes de Articulaciones

Para tomar las fichas del tablero se


seleccionó un solenoide, ya que las fichas en su parte superior tienen un pequeño
disco de metal. Como no se conoce exactamente la altura de cada ficha, solo se
sabe que puede ser de entre 1.5 a 2.5 cm. el eje del solenoide tiene una longitud
de 4.5cm. para así poder graduar a través del software la última posición, para
recoger la ficha, constante. Si la ficha tiene la máxima longitud, entonces empujará
al eje hacia arriba, sin causar ningún tipo de anomalía; si es la mínima longitud
entonces habrá una distancia de 3 mm ( 7.10 V con .8 A ) entre la ficha y el eje del
solenoide, suficiente para que lo pueda atraer ya que la distancia máxima que
debe de haber entre ellos es de 5 mm, ésta se puede aumentar si se aumenta el
voltaje del embobinado, pero por consiguiente aumenta la corriente, lo que
provoca que el solenoide se caliente y en un tiempo prolongado se puede
derretir el centro de éste.

Se seleccionaron dos tipos de servomotores como actuadores en base al torque


que se necesitaba en cada posición, en la primera articulación (hombro) se
necesitó un servomotor de 1/5 de escala que genera un par de 20 kg-cm, mientras
que en la base y la segunda articulación se utilizaron servomotores con
un par de 7.40 kg-cm. Estos servomotores no son de tipo industrial y manejan un
voltaje entre 4.8 y 6 V.
Las fotografías 2 y 3 nos muestran los servomotores de 1/5 de escala y otro de
torque de 7.40 kg-cm, respectivamente.

5. Diseño Electrónico

Para clasificar el color de las fichas se seleccionó un sensor óptico (8839), que
consiste en un diodo emisor y un fototransistor.
La señal que manda el sensor a través de cable plano, llega directamente al pin 2
del puerto D del microcontrolador. Los servomotores también van conectados
directamente al microcontrolador a los pines 0, 1 y 2 del puerto B. A su vez la base
del transistor que controla el relevador va conectada a través de una resistencia al
pin 6 de puerto B del microcontrolador.

Este microcontrolador tiene un cristal del 4 MHz, lo cual quiere decir que cada
instrucción se efectúa en 250 ns (.00000025s), esto es importante ya que la señal
que controla a los servomotores oscila entre 1 y 2 ms (.001 s) por lo cual todas las
operaciones de retardos en el programa del microcontrolador están calculadas en
base a este tiempo, para poder así controlar los servomotores (Es importante
recordar que el microcontrolador esta funcionando como interprete).

En la Figura 4 se presenta el diagrama


electrónico de la tarjeta de control.
Para poder equilibrar el voltaje entre el puerto serial y la tarjeta de control, se
utiliza el integrado MAX232, este dispositivo se encarga de bajar el voltaje 12 V
del puerto serial a 5 V que es el voltaje de alimentación de la tarjeta de control.

6. Software de Control
El sistema de control de este manipulador es de lazo abierto, por lo tanto no existe
una retroalimentación al software de control.
El diseño del software está sustentado en el control de los servomotores, esto se
logra a través de un programa creado especialmente para este proyecto, en el
programa Visual Basic 6.0; a continuación se describe este sistema de control:

El software envía la señal vía puerto serial, lo hace a través de “paquetes” de bits
de los cuales solo ocho de estos transmiten información útil para nosotros, lo cual
nos permite tener 255 posibles instrucciones de posiciones para cada servo. Una
vez seleccionado el servo requerido, se le indica la posición a la cual se desea ir.
Los servomotores sólo permiten un movimiento de 180°, estos se dividen entre las
255 posibles posiciones; pero como para el propósito que aquí se persigue no se
necesitan todos estos grados de movimiento, se hace una nueva graduación, para
poder aumentar la resolución en el límite realmente requerido. En la siguiente
tabla se indican los límites y las graduaciones, pero antes es importante
mencionar que el origen de la posición de Gama está con respecto a la de Beta y
Alfa tiene su origen respecto al sistema de coordenadas, esto se
representa en la Tabla 2:
Los grados equivalente negativos se deben a que se miden con respecto a la
posición de la articulación anterior. Para poder establecer una relación entre
posiciones y grados se usa el método de interpolaciones como a continuación se
muestra ya simplificado y en código de Visual Basic:

ii = ((alfa(l) + 47) * 1.75) + 30


jj = ((beta(l) - 14) * 2.9347826) + 55
kk = ((Abs(gama(l)) - 24) * (-1.6428571)) + 218
Una vez que se obtienen estos valores el programa
hace un “encadenamiento” para poder producir un
movimiento lineal entre los servomotores:
If Abs(dif1) > Abs(dif2) And Abs(dif1) > Abs(dif3)
Then
fac1 = Abs(dif2 / dif1)
fac2 = Abs(dif3 / dif1)
For z = 1 To Abs(dif1) Step velocidad
For l = 1 To 400000: Next l
If dif1 > 0 Then i = a + z Else i = a - z
If dif2 > 0 Then j =b+z*fac1 Else j=b - z * fac1
If dif3 > 0 Then k =c+z*fac2 Else k=c - z* fac2
MSComm1.Output = Chr$(1) + Chr$(i)
For l = 1 To 30000: Next l
MSComm1.Output = Chr$(2) + Chr$(j)
For l = 1 To 30000: Next l
MSComm1.Output = Chr$(3) + Chr$(k)
For l = 1 To 30000: Next l
Next z
End If

Donde las diferencias dif1, dif2 y dif3 son el resultado de la resta entre los
componentes de la posición deseada y la posición actual; de la división de éstas,
se obtienen factores que se multiplican por los incrementos de los servomotores
que estén más lejos de la posición deseada, de esta forma se moverán más rápido
para alcanzar su objetivo al mismo tiempo que producen un movimiento lineal.
Las funciones antes mencionadas son la base fundamental del programa de
control. Para efectos prácticos y de propósito específico, el programa cuenta con
un modo manual y un modo automático. El modo automático se encarga en
tiempo de ejecución de estar tomando los datos previamente especificados y
realizar los procesos antes descritos.

Una vez que llega a la posición última sobre la pieza, activa el solenoide para
atraer la pieza y es allí cuando se sensa el color de ésta, dependiendo de la
señal que reciba el programa (0 = color negro; 1 = color blanco) será la rutina
siguiente a ejecutar; sí es negra la ficha irá en el recipiente designado a este color
(es opcional) de lo contrario se dirigirá a una coordenadas de la misma magnitud
pero sentido opuesto. El código que ejecuta lo anteriormente
descrito, es el siguiente.

El botón “guardar” se encarga de almacenar en un arreglo de 20, las posiciones de


la rutina a ejecutar, el código de lo anterior es el siguiente:

Private Sub Command1_Click()


For l = 1 To 20
alfa(l) = Text4(l)
beta(l) = Text5(l)
gama(l) = Text6(l)
Next l
End Sub

El botón “enviar posición” ejecuta la interpolación antes mencionada para alcanzar


la posición indicada, el código de lo anterior es el siguiente:

Private Sub Command3_Click()


l = Text7.Text
ii = ((alfa(l) + 47) * 1.75) + 30
jj = ((beta(l) - 14) * 2.9347826) + 55
kk = ((Abs(gama(l)) - 24) * (-1.6428571))
+ 218
sincroniza ii, jj, kk
End Sub

El botón “ON/OFF” habilita el contador, el código de lo anterior es el siguiente:

Private Sub Command5_Click()


Timer1.Enabled = False
If Timer2.Enabled = True Then
Timer2.Enabled = False
Command5.Caption = "OFF"
Else: Timer2.Enabled = True
Command5.Caption = "ON"
End If
End Sub

La opción “posición final” muestra los valores finales de los ángulos de las
articulaciones. La opción de “Velocidad” es el factor que multiplica los incrementos
unitarios de los valores de las posiciones; por ejemplo un movimiento con
velocidad 1 realiza los incrementos de las posiciones en valores unitarios; una
velocidad igual a 5 realiza los incrementos de las posiciones de cinco en cinco
valores unitarios. Lo anterior lo ejecuta dentro de la rutina “sincroniza”,
anteriormente descrita. El control manual permite manipular al robot sin entrar en
rutinas de movimientos. A continuación se presenta las opciones de este modo.
El botón “ON/OFF” activa el contador para estar mandando los cambios recibidos
constantemente a través de las barras de posición, el código de lo
anterior es el siguiente:

Private Sub Command4_Click()


Timer2.Enabled = False
If Timer1.Enabled = True Then
Timer1.Enabled = False
Command4.Caption = "OFF"
Else: Timer1.Enabled = True
Command4.Caption = "ON"
End If
End Sub
Las cajas de texto “BASE”, “NEGRO” y
“BANDA” muestran las posiciones de los
servomotores correspondientes.
El botón de “IN” hace la lectura manual del sensor, el
código de lo anterior es el siguiente:
Private Sub Command7_Click()
MSComm1.InputLen = 2
MSComm1.InputMode =
comInputModeText
If MSComm1.InBufferCount Then
Text16.Text = MSComm1.Input
End If
End Sub

7. Programa del Microcontrolador

Como se mencionó anteriormente, el microcontrolador está funcionando como


interprete, esto quiere decir que se encarga de traducir pulsos digitales del
programa principal a señales analógicas que controlan los servomotores. Lo
anterior se logra a través de comunicación serial.
Dependiendo de la duración del pulso que se le mande a los servomotores
equivale a la posición que se desee (ver tabla 5). A cada pulso de posición que se
mande al servomotor se le debe de añadir un retardo base de .5 ms ya que la
graduación real de funcionamiento de los servomotores no es de 1 a 2 ms sino
de .5 a 2.5 ms.

A continuación se presenta un ejemplo de posicionamiento de un servomotor en la


posición

125:
500 ? s + (125 X 7.8431 ? s) = 1.48 ms
Donde 7.8431 ? s son la resolución de los movimientos (la diferencia de 2.5 y .5
ms entre la máxima resolución digital) :

.002 / 255 = 7.8431 ? s


Lo anterior es el fundamento lógico del programa del microcontrolador, para poder
así controlar el movimiento de los servomotores.

8. Conclusiones
Se logró diseñar y construir un Robot Articulado con tres Grados de Libertad (GL)
el cual fue presentado en el “Concurso Nacional de Minirobótica”, llevado a cabo
los días 2, 3 y 4 de Mayo del 2001, en la ciudad de Querétaro, Qro.
Éste logró cumplir con las expectativas de tomar, identificar y clasificar diez fichas
de diferentes tamaños, blancas o negras, dentro de un tablero de
40×40 cm. En el diseño mecánico se consiguió aplicar el
álgebra de Quaterniones para que en base a la cinemática inversa, se pudiera
calcular las longitudes de las articulaciones y así el área de trabajo fuera lo
suficientemente amplia para alcanzar todos los puntos requeridos.
En el diseño electrónico también se obtuvieron los objetivos propuestos; el campo
magnético del solenoide fue suficiente y adecuado para poder tomar las piezas y
no soltarlas hasta el lugar asignado. Así también la tarjeta electrónica diseñada,
cumplió con las expectativas de actuar como interfaz entre la computadora de
control (PC) y los servomotores del manipulador a su vez que integraba todo el
sistema electrónico.
La parte de control a través del software Visual Basic, cumplió con los
requerimientos de resolución de avance para el control de los
servomotores. Aunque esta no se haya logrado en su totalidad debido a limitantes
mecánicas. El desempeño general del “Brazo Manipulador con Tres Grados de
Libertad”, que es el objetivo de este trabajo, fue en general muy bueno, logrando
cumplir con todas las metas propuestas desde su concepción.

Referencias
[1] Cortés Gómez Celina. (2001). Diseño y
construcción de un brazo manipulador de
tres grados de libertad. México: Universidad
Anáhuac del Sur.
[2] Méndez, Mauricio C. (2000). Dinámica de
Cuerpos Rígidos con Quaterniones: una
aplicación a los Mecanismos. México:
Universidad Anáhuac del Sur
[3] Schilling, J. Robert. (1990). Fundamentals
of Robotics. Estados Unidos: Prentice-Hall,
Inc.
1. INTRODUCCIÓN

Se presenta en este artículo la información relacionada con el diseño, construcción


y control de un manipulador que consiste de dos brazos mecánicos, propulsados
por motores de corriente directa. Los propósitos del proyecto son netamente
didácticos, con finalidad de ser utilizado en algunos cursos de Ingeniería Mecánica
en la Universidad de Costa Rica. Se construyeron dos brazos mecánicos que giran
alrededor de ejes verticales, y que se pretende que sean la base del desarrollo
continuo de un manipulador al que se mejorará constantemente. La idea final es
agregar una garra mecánica para que el manipulador realice trabajos sencillos de
movimiento de piezas. Mediante la experimentación y algunos datos del fabricante
se determinaron los requerimientos de alimentación y las limitaciones de cada uno
de los motores, y se construyeron controles tipo proporcional analógico basadas
en amplificadores operacionales para los mismos. También, se implementó un
controlador digital para cada uno de los brazos, los cuales operan
simultáneamente mediante el mando de una computadora, a través de conexiones
de interface, una tarjeta de adquisición de datos y software de control y
adquisición. Se sintonizaron dos controladores tipo PID y se optimizó, hasta donde
fue posible, el funcionamiento de los brazos, pese a las limitaciones de torque y
velocidad en uno de los motores.

2. DISEÑO DEL MANIPULADOR MECÁNICO

Un manipulador mecánico, o robot, consiste de una serie de elementos mecánicos


y electrónicos unidos de forma tal que pueden realizar una o varias funciones
específicas y programables. En la realización de este proyecto, primero se
especificaron y definieron los sistemas de soporte y transmisión de movimiento de
los dos brazos mecánicos, y luego se procedió a preparar los materiales y partes
para realizar su construcción. Como antecedente, y punto de partida, para esta
etapa del proyecto se tenía la construcción de un brazo mecánico como se
muestra en la figura No. 1, el cual giraba alrededor de un eje horizontal. Algunas
de las partes del proyecto anterior, como el motoreductor, los cojinetes,
potenciónmetros y el brazo en sí, se utilizaron de nuevo para la nueva
configuración planteada en la construcción de los dos brazos mecánicos, esta vez
girando alrededor de ejes verticales.

[FIGURA 1 OMITIR]

En este paso del proyecto, el ensamble y configuración de los dos brazos


mecánicos se realizó de acuerdo al orden mostrado en la figura No. 2, en la cual
se presentan ambos brazos en posición horizontal formando una cadena
cinemática abierta. El brazo más cercano a la base fija del sistema es el numerado
brazo 1, y el brazo montado sobre él es numerado brazo 2, y en la figura No.2 se
presentan algunos detalles: sus correspondientes motores, sistemas de
transmisión y apoyos. El sistema de apoyo del brazo 1 está unido a la base,
mientras que el sistema de apoyo del brazo 2 está unido al brazo 1. Esto permite
que el brazo 1 gire con respecto a la base alrededor de un eje vertical, y que el
brazo 2 gire con respecto al brazo 1 también alrededor de un eje vertical. Es
importante que ambos ejes de rotación sean verticales debido a que las
consideraciones de excentricidad y balanceo se hacen menos importantes, todo lo
contrario de lo que ocurre cuando los brazos giran alrededor de ejes horizontales.
Para unir los ejes de los motores con los ejes de transmisión que conectan a
ambos brazos, se utilizaron acoples de aluminio con un segmento de hule en la
parte central, para darles flexibilidad.

En la parte superior del eje que mueve al brazo 1 (ver figura No. 2) se colocó un
potenciómetro de 5 K[ohmio], con aproximadamente 300[grados] de giro, para
indicar la posición de este brazo en tal rango de movimiento. Otro potenciómetro,
se colocó en el extremo superior del reductor mostrado en la figura No. 3, para
indicar la posición del brazo 2 con respecto al brazo 1. El potenciómetro utilizado
para el brazo 2 es de 5 K[ohmio], de 10 vueltas.

[FIGURA 2 OMITIR]

El motor 1 es de comente directa con escobillas y opera a 24V, con velocidad de


operación sin carga de 490 rpm. Es necesario mencionar que estas características
del motor no son las más adecuadas para esta aplicación, pero se utilizó para
llevar a cabo el experimento y por ser éste el moto
-reductor DC disponible con características más cercanas a las necesitadas.
El motor 2 es de comente directa y de imán permanente, de tipo moto-reductor,
con una reducción de 100 a 1, entre sus características: 24V, 1 Amp, velocidad de
operación sin carga de 60 rpm, y constante de fuerza contra electromotriz de
0.0404 V/(rad/s). Este motor se acopló al brazo 2 por medio de un reductor a
90[grados] con reducción de 3 a 1, como se muestra en la figura No. 3. El
mecanismo utilizado para conectar ambos brazos se muestra en ambas figuras:
en la figura No. 2 junto a todo el sistema, y más detalladamente en la figura No. 3.
En la figura No. 2 se muestra como se realizaron las conexiones, la transmisión de
movimiento y el soporte del brazo 2 sobre el brazo 1.

[FIGURA 3 OMITIR]

Se pueden observar las fotografías No. l y 2 del sistema ya terminado e instalado


sobre un pequeño mueble de madera que sirve como base.

Cuando la posición de los brazos se controló con un tipo de controlador


proporcional analógico, como el mostrado en la figura No. 4, se necesitaron
potenciómetros adicionales para generar las posiciones de referencia, o las
deseadas, denominadas [P.sub.d]. De estos tipos de controladores analógicos se
utilizó uno para cada motor, pero con diferentes ganancias para obtener
respuestas satisfactorias en ambos brazos. Todos los potenciómetros se
alimentaron con 0V de referencia y 5V en su otro extremo fijo. Así, las rotaciones
de los brazos generan voltajes, en los extremos deslizantes de los potenciómetros,
que varían proporcionalmente a su posición.

[FIGURA 4 OMITIR]

Para hacer girar los motores sin dañar los componentes electrónicos de los
controladores, fue necesario utilizar amplificadores de potencia, para suministrar la
potencia que requiere el motor, y para limitar la corriente máxima hacia cada
motor. El tipo de amplificador de potencia o driver utilizado es de los conocidos
como modulador del ancho de pulso, o PWM, para motores DC con escubillas, o
de imán permanente.
Interesa principalmente construir los amplificadores de potencia tipo PWM para
mover los motores de corriente directa, y se está trabajando en este aspecto con
estudiantes y profesores en proyectos del curso IM-0303 Instrumentación, junto
con el curso de IM-0456 Electrónica Básica, de la Escuela de Ingeniería Mecánica.

Para mejorar la operación del sistema desarrollado se necesita comprar un motor


con más torque y menos velocidad para el brazo 1. Además, se necesitan
potenciómetros de mayor calidad y sensibilidad para dar posiciones más exactas y
precisas. Esto junto con el diseño de una garra mecánica nos permitiría crear un
verdadero manipulador que realice tareas importantes en un plano horizontal. Otro
aspecto fundamental es la creación de software especializado en este tipo de
aplicaciones, lo cual resulta interesante para estudiantes y profesores que estén
interesados o tengan conocimiento en tal tema.

3. CONCLUSIONES

Con la construcción de este proyecto se ha logrado determinar, en la práctica, los


aspectos importantes a considerar cuando se pretende desarrollar un manipulador
mecánico partiendo desde el diseño. Entre tales aspectos que deben considerarse
se pueden mencionar los siguientes: el peso de los materiales y las dimensiones
de los miembros, los motores y reductores, el sistema de transmisión, los
amplificadores de potencia, y el hardware y software de control, y sobre todo el
proceso de ensamblaje y construcción, lo cual debe considerar las máquinas,
herramientas, y las limitaciones presentes en el taller. Es muy interesante poner
todos estos elementos juntos en el diseño final y así lograr movimientos
específicos en ambos brazos mecánicos simultáneamente. Esto servirá como
experiencia y la base para poder avanzar en este proyecto.

El diseño y la construcción de los dos brazos mecánicos ha sido de gran beneficio


para utilizarse con diferentes sistemas de control y con ello aplicar distintas teorías
de control. Además, se podría utilizar este sistema como un banco de pruebas
para el Análisis de Sistemas Dinámicos. En el presente desarrollo del proyecto se
han utilizado dos sistemas de control: uno analógico, basado en amplificadores
operacionales y otro digital, basado en una tarjeta de adquisición de datos al
mando de una computadora. Es importante destacar de que ambos brazos se
controlan simultáneamente.
Con el diseño, construcción y control de los brazos mecánicos se han logrado
aplicar los conocimientos teóricos, y obtener conocimientos que sólo se logran con
la práctica y la experimentación. Los brazos mecánicos se han desarrollado con
propósitos puramente didácticos que, sin embargo, pueden convertirse en el futuro
en propósitos industriales. En la experimentación se han presentado situaciones
que, definitivamente no se dan en la teoría y que son de gran ayuda para reforzar
y formar conocimientos, lo cual será de mucha importancia en la Docencia.

4. BIBLIOGRAFÍA

[1]. Fitzgerald, AE. Electric Machinery. Fifth Edition. New York, McGraw-Hill, 1990

[2]. Kuo, Benjamín. Automatic Control Systems. 6ta Ed. New Jersey, Prentice-Hall
Inc., 1991

[3]. Mims, Forrest. Getting Started in Electronics. USA, Radio Shack, 1988

[4]. Ogata, Katsuhiko. Dinámica de Sistemas. México, Prentice Hall, 1987

[5]. Ogata, Katsuhiko. Discrete-Time Control Systems. New Jersey, Prentice-Hall


Inc., 1987

[6]. Rodríguez, Jesús. Control Automático. México, McGraw Hill, 1998

[7]. Rohrs, Charles. Sistemas de Control Lineal. México, McGraw Hill, 1994

Horacio Vásquez C., Ing., M.Sc., Prof., Asoc. Esc. Ing. Mecánica, U.C.R.
INSTITUTO POLITÉCNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERÍA


MECÁNICA Y ELÉCTRICA ZACATENCO.

DEPARTAMENTO DE INGENIERÍA EN
CONTROL Y AUTOMATIZACIÓN

MATERIA:

GENERACION DE PROYECTOS

PROYECTO
CELDAS FOTOVOLTAICAS

GRUPO: 7AM2

INTEGRANTES:
SANCHEZ FLORES MARCO ANTONIO
MARIN ALVAREZ EDUARDO

FECHA DE ENTREGA: 07/08/10

También podría gustarte