Академический Документы
Профессиональный Документы
Культура Документы
Diseo y construccin de un
brazo robtico de dos grados
de libertad (RR)
Robtica
Ingeniera Mecatrnica
1. INTRODUCCIN......................................................................................................................... 2
2. DISEO MECNICO .................................................................................................................. 7
2.1. SOLIDWORKS ...................................................................................................................... 7
2.2 GEOMETRA DEL ROBOT ................................................................................................. 7
3. CINEMTICA DE ROBOTS MANIPULADORES ................................................................. 8
3.1. CONVENCIN DE DENAVIT-HARTENBERG .............................................................. 9
4. DINMICA DE ROBOTS MANIPULADORES ..................................................................... 18
4.1. MODELADO MEDIANTE LA FORMULACIN DE LAGRANGE-EULER. ............ 19
4.2. ALGORITMO COMPUTACIONAL PARA EL MODELADO DINMICO POR
LAGRANGE-EULER. ................................................................................................................ 20
5. DISPOSITIVOS ELECTRNICOS APLICADO A ROBTICA ........................................ 23
5.1. MOTORREDUCTORES CC .............................................................................................. 23
5.2. ENCODER MAGNTICOS (EFECTO HALL) ............................................................... 23
5.3. PUENTE H L298N ............................................................................................................... 24
5.4. ARDUINO UNO ................................................................................................................... 26
6. DIAGRAMA DE CONFIGURACIN ..................................................................................... 27
7. CONTROL DE ROBOTS .......................................................................................................... 28
7.1. CONTROL DE POSICIN DE ROBOTS MANIPULADORES.................................... 28
7.2. CONTROL DINMICO (PID)........................................................................................... 30
8. RESULTADOS ............................................................................................................................ 36
9. CONCLUSIONES ....................................................................................................................... 38
10. BIBLIOGRAFA ....................................................................................................................... 39
Diseo y construccin de un robot manipulador de 2 GDL Robtica
1. INTRODUCCIN
El hombre industrializado desde el siglo XX ha tenido la necesidad de aprender y adaptar
trminos globalizados tecnolgicos, para Barrientos la palabra computadora quizs fue la
ms relevante y hasta hoy muchos cuentan con su propia computadora personal, pero un
concepto recientemente relevante es la palabra robot.
El trmino robot naci y creci de un mito: la creacin por los humanos de un ser artificial
que emulase en aspecto y capacidades cognitivas a su propio creador. Desde 1921, fecha de
publicacin por K. Capek de la obra de teatro Robots Universales de Rossum, la
literatura y el cine han alimentado este mito. [1]
La palabra robot proviene de la palabra checa robota que significa trabajo. El diccionario
Webster define a un robot como dispositivo automtico que efecta funciones
ordinariamente asignadas a los humanos. Con esta definicin, se pueden considerar que las
lavadoras son robots. Una definicin que utiliza la RIA (Robot Institute of America) da una
definicin ms precisa de los robots industriales: un robot es un manipulador
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 2
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Para Fu se pueden clasificar los robots industriales en tres generaciones que se enlistan en
la siguiente tabla:
GENERACIN DESCRIPCIN
Repite la tarea programada secuencialmente.
1a Generacin
No toma en cuenta las posibles alteraciones de su entorno.
Adquiere la informacin limitada en su entorno y acta en
consecuencia.
2a Generacin
Puede localizar, clasificar (visn) y detectar esfuerzos y adaptar
sus movimientos en consecuencia.
Su programacin se realiza mediante el empleo de un lenguaje
3a Generacin natural.
Posee la capacidad de planificacin automtica
Robot secuencial
Robot de trayectorias controlables
Robot Adaptivos
Robots Telemanipulado
Sin embargo, Reyes (2011) define que actualmente existen una gran cantidad de robots con
diversas estructuras geomtricas y mecnicas que definen su funcionalidad y aplicacin. De
manera general pueden clasificarse como muestra la tabla 2.
CLASIFICACIN DE ROBOTS
Terrestres: ruedas patas
Mviles
Submarinos, areo-espaciales
Humanoides Diseo Complejo
Industriales Brazos mecnicos Robots manipuladores
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 3
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Un robot est formado por los siguientes elementos: estructura mecnica, trasmisiones,
sistema de accionamiento, sistema sensorial, sistema de control y elementos terminales. La
figura 2 muestra un ejemplo de los elementos en un robot.
Cada uno de los movimientos independientes que puede realizar cada articulacin con
respecto a la anterior, se denomina grado de libertad (GDL). En la figura 3 se muestra el
nmero de grados de libertad de cada articulacin. El nmero de GDL de un robot viene
dado por la suma de los grados de libertad.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 4
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 5
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Puesto que para posicionar y orientar un cuerpo de cualquier manera en el espacio son
necesarios seis parmetros, tres para definir la orientacin y tres para la posicin, si se
pretende que un robot posicione y oriente su extremo de cualquier modo en el espacio, se
precisarn al menos 6 GDL.
En la prctica, a pesar de ser necesarios los seis GDL comentados para tener total libertad
en el posicionamiento y orientacin del extremo del robot, muchos robots industriales
muchos robots industriales cuentan con slo cuatro o cinco GDL , por ser stos suficientes
para llevar a cabo tareas que se les encomiendan.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 6
Diseo y construccin de un robot manipulador de 2 GDL Robtica
2. DISEO MECNICO
2.1. SOLIDWORKS
SolidWorks es un programa de diseo asistido por computadora para modelado mecnico
desarrollado en la actualidad por SolidWorks Corp., una subsidiaria de Dassault
Systmes (Suresnes, Francia), para el sistema operativo Microsoft Windows. Es un
modelador de slidos paramtrico. Fue introducido en el mercado en 1995 para competir
con otros programas CAD como Pro/ENGINEER, NX, Solid Edge, CATIA, yAutodesk
Mechanical Desktop.
La empresa SolidWorks Corp. fue fundada en 1993 por Jon Hirschtick con su sede
en Concord, Massachusetts y lanz su primer producto, SolidWorks 95, en 1995. En 1997
Dassault Systmes, mejor conocida por su software CAD CATIA, adquiri la compaa.
Actualmente posee el 100% de sus acciones y es liderada por Jeff Ray.
Se propone una geometra del robot basada en la inspiracin personal y facilidad para
realizar los clculos. Hay que entender, que segn J. J. Craig, existen dos enfoques que se
deben considerar al momento de disear un robot.
la segunda es construir un robot universal que puede realizar una amplia variedad de
tareas.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 7
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Nosotros realizaremos la segunda opcin ya que no hay especficamente una tarea debido a
que se trata de fines didcticos. En la figura 5 se muestra el diseo en 3D de nuestro
prototipo ideado parta el proyecto.
La cinemtica del robot estudia el movimiento del mismo con respecto a un sistema de
referencia. As, la cinemtica 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. [9]
Existen dos problemas fundamentales para resolver la cinemtica del robot, el primero de
ellos se conoce como el problema cinemtica directo, y consiste en determinar cul es la
posicin y orientacin 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 de los elementos del robot, el segundo denominado problema
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 8
Diseo y construccin de un robot manipulador de 2 GDL Robtica
cinemtica inverso resuelve la configuracin que debe adoptar el robot para una posicin y
orientacin del extremo conocidas. [9]
El estudio de los parmetros Denavit-Hartenberg (DH) forma parte de todo curso bsico
sobre robtica, ya que son un estndar a la hora de describir la geometra de un brazo o
manipulador robtico. Se usan para resolver de forma trivial el problema de la cinemtica
directa, y como punto inicial para plantear el ms complejo de cinemtica inversa. A
continuacin se describen los pasos necesarios para su desarrollo.
DH1. Numerar los eslabones comenzando con 1 (primer eslabn mvil de la cadena) y
acabando con n (ltimo eslabn mvil). Se numerara como eslabn 0 a la base fija del
robot.
DH2. Numerar cada articulacin comenzando por 1 (la correspondiente al primer grado de
libertad y acabando en n).
DH3. Localizar el eje de cada articulacin. Si esta es rotativa, el eje ser su propio eje de
giro. Si es prismtica, ser el eje a lo largo del cual se produce el desplazamiento.
DH4. Para i de 0 a n-1, situar el eje Zi, sobre el eje de la articulacin i+1.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 9
Diseo y construccin de un robot manipulador de 2 GDL Robtica
DH5. Situar el origen del sistema de la base (S0) en cualquier punto del eje Z0. Los ejes X0
e Y0 se situaran d modo que formen un sistema dextrgiro con Z0.
DH6. Para i de 1 a n-1, situar el sistema (Si) (solidario al eslabn i) en la interseccin del
eje Zi con la lnea normal comn a Zi-1 y Zi. Si ambos ejes se cortasen se situara (Si)
en el punto de corte. Si fuesen paralelos (Si) se situara en la articulacin i+1.
DH9. Situar el sistema (Sn) en el extremo del robot de modo que Zn coincida con la
direccin de Zn-1 y Xn sea normal a Zn-1 y Zn.
DH10. Obtener i como el ngulo que hay que girar en torno a Zi-1 para que Xi-1 y Xi
queden paralelos.
DH11. Obtener Di como la distancia, medida a lo largo de Zi-1, que habra que desplazar
(Si-1) para que Xi y Xi-1 quedasen alineados.
DH12. Obtener Ai como la distancia medida a lo largo de Xi (que ahora coincidira con Xi-
1) que habra que desplazar el nuevo (Si-1) para que su origen coincidiese con (Si).
DH13. Obtener ai como el ngulo que habra que girar entorno a Xi (que ahora coincidira
con Xi-1), para que el nuevo (Si-1) coincidiese totalmente con (Si).
DH15. Obtener la matriz de transformacin que relaciona el sistema de la base con el del
extremo del robot T = 0Ai, 1A2... n-1An.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 10
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Parmetros Denavit-Hartenberg
d a
1 30 16
2 0 12 0
Una vez obtenidos los parmetros DH, el clculo de las relaciones entre los eslabones
consecutivos del robot es inmediato, ya que vienen dadas por las matrices A, que se calcula
segn la expresin general.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 11
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Las relaciones entre eslabones no consecutivos vienen dadas por las matrices T que se
obtienen como producto de un conjunto de matrices A.
i-1
Matrices de transformacin
i-1
0 0
A11A2
O visto de otra forma, el modelo cinemtico que describe la configuracin de nuestro robot
viene dado por:
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 12
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Para corroborar los parmetros y el modelo cinemtico, nos apoyamos de MATLAB y con
el siguiente cdigo:
clc
clear
syms q1 q2 L1 L2 L3 pi M real
%pi=3.14159;
%Denavith - Hatenberg
A_01=dena(q1+pi/2, L1, L2, pi/2)
A_12=dena(q2-pi/2 , 0, L3, 0)
T_01=A_01
T_02=A_01*A_12
P1=T_01*[0 0 0 1]'
P2=T_02*[0 0 0 1]'
i=1;
L1=0.30;
L2=0.16;
L3=0.12;
q1=1.0*(i-1)*15*(pi/180);
q2=1.0*(i-1)*15*(pi/180);
P_0=[0 0 0]';
P_1=eval(P1(1:3));
P_2=eval(P2(1:3));
%Modelo Cinemtico
figure;
plot3(X,Y,Z,'color','red')
axis square
xlabel('X')
ylabel('Y')
zlabel('Z')
grid on;
daspect([1 1 1]);
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 13
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Modelo Cinemtico
0.3
0.25
0.2
0.15
Z
0.1
0.05
0.2
0.15 0.15
0.1
0.1
0.05
0.05 0
0 -0.05
-0.05 -0.1
Y
X
El objetivo del problema cinemtico inverso consiste en encontrar los valores que deben
adoptar las coordenadas articulares del robot para que su extremo se
posicione y oriente segn una determinada localizacin espacial.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 14
Diseo y construccin de un robot manipulador de 2 GDL Robtica
No obstante, a pesar de las dificultades comentadas, la mayor parte de los robots poseen
cinemticas relativamente simples que facilitan en cierta medida la resolucin de su
problema cinemtico inverso.
Por ejemplo si se consideran solo tres primeros grados de libertad de muchos robots, estos
tienen una estructura planar, esto es, los tres primeros elementos quedan contenidos en un
plano. Esta circunstancia facilita la resolucin del problema. Asimismo, en muchos robots
se da la circunstancia de que los tres grados de libertad ltimos, dedicados
fundamentalmente a orientar el extremo del robot, correspondan a giros sobre los ejes que
se cortan en un punto. [4]
Para el obtener el modelo cinemtico inverso de nuestro robot, incluimos al cdigo anterior
lo siguiente:
clc
clear
syms q1 q2 L1 L2 L3 pi M real
%pi=3.14159;
%Denavith - Hatenberg
A_01=dena(q1+pi/2, L1, L2, pi/2)
A_12=dena(q2-pi/2 , 0, L3, 0)
T_01=A_01
T_02=A_01*A_12
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 15
Diseo y construccin de un robot manipulador de 2 GDL Robtica
P1=T_01*[0 0 0 1]'
P2=T_02*[0 0 0 1]'
i=1;
L1=0.30;
L2=0.16;
L3=0.12;
q1=1.0*(i-1)*15*(pi/180);
q2=1.0*(i-1)*15*(pi/180);
P_0=[0 0 0]';
P_1=eval(P1(1:3));
P_2=eval(P2(1:3));
%%Cinematica inversa
%%Valores deseados y conocidos
Xd=-0.160;
Yd=0.100;
xy=Xd^2+Yd^2;
Cq2=(xy-L2^2-L3^2)/(2*L2*L3);
Sq2=sqrt(1-(Cq2^2));
betha=atan(Yd/Xd);
alpha=atan((L3*Sq2)/(L2+L3*Cq2));
%%Valores pra Qi y Qf
Q1=betha-alpha
Q2=atan(Sq2/Cq2)
%Modelo Cinemtico
figure;
plot3(X,Y,Z,'color','red')
axis square
xlabel('X')
ylabel('Y')
zlabel('Z')
grid on;
daspect([1 1 1]);
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 16
Diseo y construccin de un robot manipulador de 2 GDL Robtica
El modelado cinemtico de un robot busca las relaciones entre las variables articulares y la
posicin (expresada normalmente en forma de coordenadas cartesianas) y orientacin del
extremo del robot. En esta relacin no se tienen en cuenta las fuerzas o pares que actan
sobre el robot (actuadores, cargas, fricciones, etc.) y que pueden originar el movimiento del
mismo.
Sin embargo, s que debe permitir conocer, adems de la relacin entre las coordenadas
articulares y del extremo, la relacin entre sus respectivas derivadas. As, el sistema de
control del robot debe establecer que velocidades debe imprimir a cada articulacin (a
travs de sus respectivos actuadores) para conseguir que el extremo desarrolle una
trayectoria temporal concreta, por ejemplo, una lnea recta a velocidad constante.
Para este y otros fines, es de gran utilidad disponer de la relacin entre las velocidades de
las coordenadas articulares y las de posicin y orientacin del extremo del robot. La
relacin entre ambos vectores de velocidad se obtiene a travs de la denominada matriz
Jacobiana.
La matriz jacobiana directa permite conocer las velocidades del extremo del robot a partir
de los valores de las velocidades de cada articulacin. Por su parte, la matriz Jacobiana
inversa permitir conocer las velocidades determinadas en el extremo del robot. [9]
Para el caso de nuestro proyecto la matriz jacobiana se daba por el siguiente cdigo en
MATLAB:
syms q1 q2 real
f1=P2(1)
f2=P2(2)
f3=P2(3)
%
% Q=[q1 q2]'
%
% X=[]'
%
J11=diff(f1,'q1');
J12=diff(f1,'q2');
J21=diff(f2,'q1');
J22=diff(f2,'q2');
J31=diff(f3,'q1');
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 17
Diseo y construccin de un robot manipulador de 2 GDL Robtica
J32=diff(f3,'q2');
J=[J11 J12;
J21 J22;
J31 J32];
Jinv=pinv(J)
OK=J*Jinv
Con esto comprobamos que nuestro Jacobiano se realizo correctamente. Podemos seguir
avanzando.
F= m dv
T= I dw + w (Iw)
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 18
Diseo y construccin de un robot manipulador de 2 GDL Robtica
De forma inversa, si se pretende que q(t) evolucione segn una determinada funcin del
tiempo, sustituyendo en la ecuacin anterior, podra obtenerse el par t(t) que sera necesario
aplicar. Si el robot tuviese que ejercer alguna fuerza en su extremo, ya sea al manipular una
carga o por ejemplo, realizar un proceso sobre alguna pieza, bastara con incluir esta
condicin en la mencionada ecuacin y proceder del mismo modo. [12]
Se tiene as que del planteamiento del equilibrio de fuerzas y pares que intervienen sobre el
robot se obtienen los denominados modelos dinmicos directo e inverso:
Modelo dinmico inverso: expresa las fuerzas y pares que intervienen en funcin
de la evolucin de las coordenadas articulares y sus derivadas.
Para Garca Higuera, Uicker en 1965, utilizo la representacin de D-H basada en las
matrices de transformacin homognea para formular el modelo dinmico de un robot
mediante la ecuacin de Lagrange.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 19
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Este planteamiento utiliza, por tanto, las matrices i-1Ai que relacionan el sistema de
coordenadas de referencia del elemento i con el elemento i-1. Se realizan en este caso
operaciones de producto y suma innecesarias. Se trata de un procedimiento ineficiente
desde el punto de vista computacional.
Se presenta a continuacin al algoritmo a seguir para obtener el modelo dinmico del robot
por el procedimiento de Lagrange-Euler (L-E). [13]
L-E 1. Asignar a cada eslabn un sistema de referencia de acuerdo a las normas de D-H.
L-E 5. Obtener las matrices de pseudo inercias Ji para cada elemento, que vienen definidas
por:
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 20
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Ji=
X dm XiYi dm XiZi dm Xi dm
YiXi dm Yi dm YiZi dm Yi dm
ZiXi dm ZiYi dm Zi dm Zi dm
Xi dm Yi dm Zi dm dm
Donde las integrales estn extendidas al elemento i considerando, y (Xi Yi Zi) son las
coordenadas del diferencial de masa dm respecto al sistema de coordenadas del elemento.
L-E 6. Obtener la matriz de inercias D = (dij) cuyos elementos vienen definidos por:
Con i, j = 1,2,...,n
Con i = 1,2,...,n
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 21
Diseo y construccin de un robot manipulador de 2 GDL Robtica
irj : Es el vector de coordenadas homogneas del centro de masas del elemento j expresado
en el sistema de referencia del elemento i.
t = D dq + H + C.
Donde t es el vector de fuerzas y pares motores efectivos aplicados sobre cada coordenada
qi.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 22
Diseo y construccin de un robot manipulador de 2 GDL Robtica
5.1. MOTORREDUCTORES CC
Los motores cc tienen mucha velocidad y poca fuerza, por lo que se hace necesario el uso
de un sistema de reduccin para equilibrar las variables. Unas de las soluciones es construir
una caja reductora externa al motor. Sin embargo, en los ltimos aos han surgido motores
cc que ya proveen esta solucin a nivel interno. A estos motores se les conocen como
motorreductores. Por lo general, consiste en un micromotor de cc con una caja reductora
que usa un sistema de tipo planetario en un compartimiento sellado, lo que libera al sistema
de la suciedad que podra afectar su funcionamiento. (Ver figura 9) [4]
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 23
Diseo y construccin de un robot manipulador de 2 GDL Robtica
A diferencia de las foto barreras (encoders pticos), los sensores Hall al ser magnticos
pueden trabajar en entornos extremos (temperatura) y polvorientos, no har falta
mantenimiento de limpieza. Por otra parte, prcticamente (si sabes buscar) no existe mucha
diferencia de precio. Y para terminar, decir que es mucho ms sencillo construir un encoder
con sensores Hall digitales que hacerlo a base de foto barreras, porque cuantos ms
pequeos sean los sensores ms sencillo es de colocar al eje de un motor.
Conozco de primera mano dos modelos de sensores de efecto Hall digital: los A110x y
los CS302x. Dentro de la misma familia slo se diferencia los unos de los otros por la
intensidad magntica para hacer cambiar de estado el "interruptor" (switch). Los sensores
Hall A110x y CS302X necesitan un campo magntico un poco fuerte pero esto lo hace
inmune al posible ruido magntico (del propio motor, transformadores, etc.) que pueda
haber en el ambiente.
Control de Motores CC
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 24
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Conversor CC-CA
Amplificadores clase D
Entre otras
El trmino "puente H" proviene de la tpica representacin grfica del circuito. Un puente
H se construye con 4 interruptores (mecnicos o mediante transistores). Cuando los
interruptores S1 y S4 (ver primera figura) estn cerrados (y S2 y S3 abiertos) se aplica una
tensin positiva en el motor, hacindolo girar en un sentido. Abriendo los interruptores S1
y S4 (y cerrando S2 y S3), el voltaje se invierte, permitiendo el giro en sentido inverso del
motor. [5] (Figura 11)
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 25
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Lo primero que se necesita es una placa Arduino. Existen varios modelos, e incluso nos
podemos construir nuestra propia placa. En la pgina web se proporcionan todos los
esquemas necesarios para integrar nuestra propia placa. En la figura 14 se observa el
modelo UNO, es de los ms bsicos, su corazn es el chip Atmega8, un chip sencillo y de
bajo coste que permite el desarrollo de mltiples diseos, siendo hoy el Arduino Galileo de
los ms poderosos con un procesador de INTEL.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 26
Diseo y construccin de un robot manipulador de 2 GDL Robtica
6. DIAGRAMA DE CONFIGURACIN
A continuacin se muestra el esquema (figura 15) de configuracin electrnica completa
usada en el desarrollo del prototipo de robtica:
Se ve las conexiones de los pines del arduino con los potencimetros encargados de
modificar las Qd y la salida al driver H para el control de potencia de los motores cc.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 27
Diseo y construccin de un robot manipulador de 2 GDL Robtica
7. CONTROL DE ROBOTS
Con el siguiente cdigo en base a las Qd se planeaba una trayectoria basada en una
ecuacin general paramtrica, la cual describa un movimiento suave en un determinado
tiempo. Simplemente modificando las Qi y Qf se podraobtener lso parmetros que
satisfacen la ecuacin propuesta y as ingresarlo posteriormente en nuestro modelo de
Simulink.
clc
clear
q=a5*t^5+a4*t^4+a3*t^3+a2*t^2+a1*t+a0
dq=diff(q,'t')
ddq=diff(q,'t',2)
a=inv(A)*B
ti=0;
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 28
Diseo y construccin de un robot manipulador de 2 GDL Robtica
tf=10;
a5=eval(a(1));
a4=eval(a(2));
a3=eval(a(3));
a2=eval(a(4));
a1=eval(a(5));
a0=eval(a(6));
N=10;
t=[ti:(tf-ti)/N:tf]
q=a5.*t.^5+a4.*t.^4+a3.*t.^3+a2.*t.^2+a1.*t+a0
dq=5.*a5.*t.^4+4.*a4.*t.^3+3.*a3.*t.^2+2.*a2.*t+a1
ddq=20.*a5.*t.^3+12.*a4.*t.^2+6.*a3.*t+2.*a2
plot(t,q)
hold on
plot(t,dq,'red')
plot(t,ddq,'green')
xlabel('t')
ylabel('q(t)');
Tambin el cdigo general las curvas grficas del desplazamiento a la posicin, as como el
comportamiento de la velocidad y aceleracin de los eslabones estudiados.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 29
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Tanto el controlador PID como el controlador PID con dinmica invertida no tienen
ninguna dificultad de nivel terico, y su descripcin puede encontrarse en cualquier libro
bsico de robtica. Las leyes de control del PID y del PID e dinmica invertida son
respectivamente las siguientes:
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 30
Diseo y construccin de un robot manipulador de 2 GDL Robtica
El siguiente cdigo controla por medio de PID la posicin del motor, este cdigo fue
implementado en arduino:
double Pd= 0;
double q=0;
double q0=0;
double qd=0;
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 31
Diseo y construccin de un robot manipulador de 2 GDL Robtica
double e=0;
double e_sum;
double ep=0;
double de;
int Output;
double Pd1= 0;
double q1=0;
double q01=0;
double qd1=0;
double e1=0;
double e_sum1;
double ep1=0;
double de1;
int Output1;
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 32
Diseo y construccin de un robot manipulador de 2 GDL Robtica
void setup()
{
pinMode (analogpin,INPUT);
pinMode (analogpin1,INPUT);
pinMode (encoder0PinA,INPUT);
pinMode (encoder0PinB,INPUT);
pinMode (canal1,OUTPUT);
pinMode (canal2,OUTPUT);
pinMode (encoder0PinA1,INPUT);
pinMode (encoder0PinB1,INPUT);
pinMode (canal1,OUTPUT);
pinMode (canal2,OUTPUT);
pinMode (led,OUTPUT);
}
void loop()
{
val=analogRead(analogpin);
Pd=map(val,0,1023,0,360);
n = digitalRead(encoder0PinA);
if ((encoder0PinALast == LOW) && (n == HIGH)) {
if (digitalRead(encoder0PinB) == LOW)
{
encoder0Pos--;
}
else{
encoder0Pos++;
}
q=map(encoder0Pos,0,900,0,360);
}
encoder0PinALast = n;
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 33
Diseo y construccin de un robot manipulador de 2 GDL Robtica
qd = Pd;
e=(qd-q); //error
de=(e-ep)/.00001; //derivada del error
e_sum+=e; //e_sum=e_sum+e
Output= (int)(kp*e+ki*e_sum+kd*de); //*9.8)+ki*e_sum+kd*de; ////PID
T=(int) (Output);
ep=e;
val1=analogRead(analogpin1);
Pd1=map(val1,0,1023,0,360);
n1 = digitalRead(encoder0PinA1);
if ((encoder0PinALast1 == LOW) && (n1 == HIGH)) {
if (digitalRead(encoder0PinB1) == LOW)
{
encoder0Pos1--;
}
else{
encoder0Pos1++;
}
q1=map(encoder0Pos1,0,900,0,360);
}
encoder0PinALast1 = n1;
qd1 = Pd1;
e1=(qd1-q1); //error
de1=(e1-ep1)/.00001; //derivada del error
e_sum1+=e1; //e_sum=e_sum+e
Output1= (int)(kp1*e1+ki1*e_sum1+kd1*de1); //*9.8)+ki*e_sum+kd*de; ////PID
T1=(int) (Output1);
ep1=e1;
if(T>=0 )
{
T=constrain (T,0,255);
analogWrite(canal1,T);
analogWrite(canal2,0);
if(e == 0){
digitalWrite(led,HIGH);
}
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 34
Diseo y construccin de un robot manipulador de 2 GDL Robtica
else{
digitalWrite(led,LOW);
}
}
if(T<0 )
{
T=abs(T);
T=constrain (T,0,255);
digitalWrite(led,LOW);
analogWrite(canal2,T);
analogWrite(canal1,0);
}
if(T1>=0 )
{
T1=constrain (T1,0,255);
analogWrite(cana21,T1);
analogWrite(cana22,0);
}
if(T1<0 )
{
T1=abs(T1);
T1=constrain (T1,0,255);
analogWrite(cana22,T1);
analogWrite(cana21,0);
}
delayMicroseconds(10);
}
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 35
Diseo y construccin de un robot manipulador de 2 GDL Robtica
8. RESULTADOS
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 36
Diseo y construccin de un robot manipulador de 2 GDL Robtica
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 37
Diseo y construccin de un robot manipulador de 2 GDL Robtica
9. CONCLUSIONES
Esperemos ya no realizar prototipos de dos grados de libertad sino aumentar, aunque los
costes sean elevados, la ayuda de software para simulacin son de gran utilidad a la hora de
disear y probar prototipos.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 38
Diseo y construccin de un robot manipulador de 2 GDL Robtica
10. BIBLIOGRAFA
[1] Barrientos, A., Pein, L. F., Balaguer, C. y Aracil, R. (2007) Fundamentos de Robtica.
McGraw-Hill. 2da Edicin. pp. 16. Mxico.
[2] Fu, K. S., Gonzlez, R. C. y Lee, C. S. G. (2005). Robtica: Control, detencin, visin e
inteligencia. McGraw-Hill. 3da Edicin. pp. 21. Mxico.
[3] Craig, J. J., (2006), Robtica, Tercera Edicin, PEARSON Educacin, pp. 11, Mxico,
ISBN 970 26 0772 8
[4] Zabala, G. y Mon, G. (2011). Robtica, gua terica y prctica (revista). Ediciones User
Power. pp. 134. Mxico
[12] Garca Higuera, A. (2001). Control combinado posicin/fuerza de un robot con dos
eslabones flexible y tres grados de libertad. (Tesis Doctoral). Ediciones de la
Universidad de Castilla-La Mancha. pp. 44-45. Espaa.
[13] Vivas Albn, O. A., (2010). Diseo y control de robots industriales: teora y prctica
Primera Edicin. Ediciones Elalep. pp. 100-105.
Carlos A. Presuel Marrufo; Edgar A. Chulnes Domnguez; Lus A. May Rejn; Ma. Elena Meza Abreu 39