Estudio de los pares máximos que soporta un robot Mitsubishi PA-10
-
Upload
samuel-lopez -
Category
Documents
-
view
88 -
download
2
description
Transcript of Estudio de los pares máximos que soporta un robot Mitsubishi PA-10
En esta segunda práctica se realiza el estudio de los pares máximos que soporta un robot Mitsubishi PA-10 (en la peor posición) y con esos datos simulados se selecciona el servo que mejor se adapta, usando como herramienta el software MATLAB con su extensión SIMULINK.
SAMUEL LÓPEZ REDONDO10/12/2012
1
SAMUEL LÓPEZ REDONDO
INDICE
1. DESCRIPCIÓN DEL PROBLEMA 1
2. RESOLUCIÓN CON MATLAB 2
1. DETERMINACIÓN DE LA “PEOR” POSICIÓN Y DE LA “PEOR” CARGA DEL ROBOT 2
2. OBTENCIÓN DE LOS PARES PARA CADA ARTICULACIÓN 7
3. OBTENCIÓN DE LOS MOTORES PARA EL ROBOT DE 3 GRADOS DE LIBERTAD 9
3. OBSERVACIONES 10
4. BIBLIOGRAFÍA 11
2
CONTROL Y PROGRAMACIÓN DE ROBOTS
1. DESCRIPCIÓN DEL PROBLEMASe van a estudiar los servoaccionamientos que se emplean en un robot de 3
grados de libertad. El robot de tres grados de libertad considerado corresponde al
robot Mitsubishi PA-10 tomando únicamente sus tres primeras articulaciones.
A continuación se muestra la tabla con los parámetros de Denavit-
Hartenberg del robot considerado.
Articulación θ α a (mm) d (mm)
1 θ1+π/2 -π/2 0 315
2 θ2 0 450 0
3 θ3 0 0 400
El robot Mitsubishi PA-10 es un robot manipulador y tiene una estructura de
aluminio ligero lo que le confiere un peso de 5,5 Kg. Siendo su articulación 1 de
2,5 Kg, la articulación 2 de 1,5 Kg y la articulación 3 de 1,5 Kg.
La ligereza del robot es muy importante, ya que el robot Mitsubishi PA-10 es
capaz de manipular 10 Kg de manera estable.
En la siguiente figura se representan las articulaciones del robot con coeficientes de rozamiento
viscoso 0.3 m2/s, 0.1 m2/s y 0.1 m2/s respectivamente.
3
SAMUEL LÓPEZ REDONDO
2. RESOLUCIÓN CON MATLABEl objetivo de esta práctica es utilizar MATLAB para realizar el estudio de los
servoaccionamientos del robot Mitsubishi PA-10.
1. DETERMINACIÓN DE LA “PEOR” POSICIÓN Y DE LA
“PEOR” CARGA DEL ROBOT
En primer lugar hay que destacar que la peor posición en la que se puede encontrar el robot se
produce cuando la segunda articulación (q2) este horizontal y como se muestra en la siguiente figura
en la que esta articulación puede variar entre ±94 º por lo que su peor posición se intuye en torno a
±π radianes. El valor de la primera y tercera coordenada como se ve en la figura no influye en el
calculo de los pares máximos.
4
CONTROL Y PROGRAMACIÓN DE ROBOTS
Por lo tanto la búsqueda de la peor posición con MATLAB se ha realizado evaluando el par
máximo en el rango de variación de la articulación 2 como sigue:
% PRACTICA 2: SELECCIÓN DE SERVOS PARA UN MITSUBISHI PA-10
clcclearclose all
% La posición de las articulaciones 1 y 3 no afectan al par con lo que les% tomaremos como 0 rad por comodidad.
tita1=0; tita3=0;
% Ahora buscaremos la peor posición del eje 2 entre 0 y 2pi radianes.
tita2_peor_pos=0; Part1_peor=0; Part2_peor=0; Part3_peor=0;for tita2=-pi/2:.01:pi/2 sim('selmotor3'); if max(Part2_peor)<max(Part2) tita2_peor_pos=tita2; Part1_peor=Part1; Part2_peor=Part2; Part3_peor=Part3; end clear Part1 Part2 Part3end
% Se muestra por pantalla de comandos el angulo de la peor posición y el% par maximo en esa situación de las tres articulaciones.
fprintf('La peor posición se alcanza para Tita2=%frad.\n',tita2_peor_pos);fprintf('El par maximo de la articulación 1 en la peor posición es: %f.\n',max(Part1_peor));fprintf('El par maximo de la articulación 1 en la peor posición por un factor de seguridad de 1,5 es: %f.\n',max(Part1_peor)*1.5);fprintf('El par maximo de la articulación 2 en la peor posición es: %f.\n',max(Part2_peor));fprintf('El par maximo de la articulación 2 en la peor posición por un factor de seguridad de 1,5 es: %f.\n',max(Part2_peor)*1.5);fprintf('El par maximo de la articulación 3 en la peor posición es: %f.\n',max(Part3_peor));fprintf('El par maximo de la articulación 3 en la peor posición por un factor de seguridad de 1,5 es: %f.\n',max(Part3_peor)*1.5);
% Se realizan las gráficas de la evolución del par en cada una de las tres
figureplot(Part1_peor);grid ontitle('Par en la peor posición de la Articulación 1');figureplot(Part2_peor);grid ontitle('Par en la peor posición de la Articulación 2');figureplot(Part3_peor);grid ontitle('Par en la peor posición de la Articulación 3');
5
SAMUEL LÓPEZ REDONDO
Este script está basado en el modelo dinámico inverso del robot Mitsubishi PA-10 realizado con
SIMULINK (selmotor3.mdl) que se representa en la siguiente figura.
Con lo que ejecutando el script desde PRACTICA.m se obtiene que la peor posición por
comodidad del robot será:
q=(01,56920)
Donde para las articulaciones rotacionales se van a utilizar reductores de 500, ya que
suponemos que se van a utilizar motores que trabajan a 5000 rpm. Esto se debe a que la velocidad
máxima permitida es de π /3 rad/s, o sea 10 rpm, por lo que si se utilizan motores que funcionan a
5000 rpm, se obtiene un factor de reducción de 5000/10=500. Este factor puede ser comercialmente
obtenido colocando en serie un reductor de 200 por piñones y un reductor de factor 1:2,5 obtenido
por transmisión de correa.
Por otra parte para obtener los pares máximos requeridos hay que considerar que el robot tiene
en su extremo la máxima carga permitida. Para nuestro robot como ya vimos la carga máxima que
puede manipular de modo estable es de 10 Kg y su matriz de inercia es:
Inercia=[0,0167 0 00 0,0167 00 0 0,0167 ]
La dinámica inversa para el robot de 3 grados de libertad que calcula el par utilizando el método
de Newton-Euler es:
% DININV3GDL Dinámica inversa de un robot de 3GDL.% PAR = DININV3GDL(ENTRADA) calcula el vector 3x1 de pares/fuerzas de% entrada a las articulaciones utilizando el método de Newton-Euler.% ENTRADA(1:3) representa la posición de cada articulación.% ENTRADA(4:6) es la velocidad de cada articulación. ENTRADA(7:9)% es la aceleración de cada articulación.%
6
CONTROL Y PROGRAMACIÓN DE ROBOTS
% Ver también NEWTONEULER3.
function par = dininv3gdl(entrada)
q = entrada(1:3); % Posición de cada articulaciónqp = entrada(4:6); % Velocidad de cada articulaciónqpp = entrada(7:9); % Aceleración de cada articulación
% Parámetros de la carga
masaext = 10;inerciaext = [0.0167 0 0;0 0.0167 0;0 0 0.0167];
% Se calcula el vector de pares/fuerzas utilizando Newton-Euler
par = newtoneuler3(q,qp,qpp,9.8,masaext,inerciaext);
Entonces por la morfología ya vista del robot como la matriz de Denavit-Hartenberg, la masa de
las articulaciones, los coeficientes de rozamiento viscoso de cada articulación los parámetros que
caracterizan la función de Newton-Euler que calcula los pares de cada articulación son:
% NEWNTONEULER3 Calculo de la dinamica de un manipulador de 3 gdl utilizando% el método de Newton-Euler.% NEWTONEULER3(TETA, QP, QPP, G, M4, IEXTER) devuelve el vector 3x1% de pares/fuerzas de entrada a las articulaciones en funcion de% los parámetros:% - TETA: Vector 3x1 de posición de las articulaciones (rad)% - QP: Vector 3x1 de velocidad de cada articulación (rad/s)% - QPP: Vector 3x1 de aceleración de cada velicidad (rad/s^2)% - G: Valor de la gravedad (m/s^2)% - M7: Masa de la carga externa (Kg)% - IEXTER: Matriz 3x3 de inercia de la carga exterior (Kg-m^2)
function tau=newtoneuler3(teta,qp,qpp,g,m4,Iexter);
%------------------------------------------------------------% Parámetros Denavit-Hartenberg del robot%------------------------------------------------------------
a = [0 0.45 0];d = [0.315 0 0.4];alfa = [-pi/2 0 0];
% ------------------------------------------------------------% Factores de posicionamiento de los centros de gravedad% ------------------------------------------------------------
factor1 = -0.5; factor2 = -0.5; factor3 = -0.5;
% ------------------------------------------------------------% Masa de cada elemento (Kg) Peso total del robot 5,5 Kg% ------------------------------------------------------------
m1 = 2.5; m2 = 1.5; m3 = 1.5;
7
SAMUEL LÓPEZ REDONDO
% ------------------------------------------------------------% Coeficiente de rozamiento viscoso de cada articulación% ------------------------------------------------------------
b1 = 0.3; b2 = 0.1; b3 = 0.1;
% ------------------------------------------------------------% Matrices de Inercia (Kg-m^2)% ------------------------------------------------------------
r10I_r01 = [0.0285 0 0;0 0.0285 0;0 0 0.0074];r20I_r02 = [0.0044 0 0;0 0.0697 0;0 0 0.0697];r30I_r03 = [0.0074 0 0;0 0.0437 0;0 0 0.0437];
2. OBTENCIÓN DE LOS PARES PARA CADA ARTICULACIÓN
Simulando el modelo SIMULINK del robot Mitsubishi PA-10 (selmotor3.mdl) ya mostrado en el
apartado anterior para la peor posición del robot q=(01,56920) en las condiciones de máxima
carga (10 Kg) a través de la ejecución del script PRACTICA.m se obtienen los siguientes resultados
para cada articulación:
Se aprecia para la articulación 1 que el par nominal es de 0,0006175 Nm y el par máximo es de
0,075278 Nm.
8
CONTROL Y PROGRAMACIÓN DE ROBOTS
Se aprecia para la articulación 2 que el par nominal es de 0,0000367 Nm y el par máximo es de
0,092467 Nm.
Se aprecia para la articulación 3 que el par nominal es de 0,0002001 Nm y el par máximo es de
0,002616 Nm.
9
SAMUEL LÓPEZ REDONDO
Como los pares nominales son prácticamente nulos como resumen se muestra una tabla con los
pares máximos de cada articulación.
Articulación 1 2 3
Par nominal (Nm) 0,0006175 0,0000367 0,0002001
Par máximo (Nm) 0,075278 0,092467 0,002616
3. OBTENCIÓN DE LOS MOTORES PARA EL ROBOT DE 3
GRADOS DE LIBERTAD
El valor del par máximo y nominal que han sido obtenidos en el apartado anterior para cada
actuador es necesario multiplicarlos por un factor de seguridad de 1,5 antes de proceder a buscar los
datos de los motores en catálogos comerciales.
Articulación 1 2 3
Par nominal (Nm) 0,0009262 0,00005505 0,00030015
Par máximo (Nm) 0,112918 0,138700 0,003924
A partir de los pares obtenidos al aplicar el factor de seguridad se procede a buscar en catálogos
comerciales los datos de los motores que satisfagan los requerimientos de par.
Se ha considerado que los actuadores del robot corresponden a motores brushless DC. Para
obtener los datos de los parámetros de los motores que satisfacen los requerimientos de par se ha
consultado el catálogo de motores brushless DC de Eastern Air Devices, Inc. Siendo la familia de
motores que más se ajusta a nuestros requerimientos de para la familia Size 17 Brushless DC Servo
Motor.
Para el actuador 1 la selección del servomotor que satisface los requerimientos de par (el par
nominal es de 0,0009262 Nm y el par máximo es de 0,112918 Nm) en el catálogo es el modelo
DB17CDB (Par nominal de 0,05 Nm y Par máximo de 0,13 Nm).
Para el actuador 2 la selección del servomotor que satisface los requerimientos de par (el par
nominal es de 0,00005505 Nm y el par máximo es de 0,138700 Nm) en el catálogo es el modelo
DB17EDB (Par nominal de 0,06 Nm y Par máximo de 0,18 Nm).
Para el actuador 3 la selección del servomotor que satisface los requerimientos de par (el par
nominal es de 0,00030015 Nm y el par máximo es de 0,003924 Nm) en el catálogo es el modelo
DB17CDB (Par nominal de 0,05 Nm y Par máximo de 0,13 Nm).
10
CONTROL Y PROGRAMACIÓN DE ROBOTS
11
SAMUEL LÓPEZ REDONDO
3. OBSERVACIONESEn esta práctica se han seleccionado los servomotores para cada una de las articulaciones del
robot Mitsubishi PA-10 (3 primeros grados de libertad). Los pasos que se han seguido para su
elección son:
1º. Conocida la morfología del robot determinar su peor posición (la que implique mayores
pares), bien porque la facilite el fabricante, por intuición (experiencia) o por simulación
como es en nuestro caso ayudados por la herramienta software MATLAB con su
extensión SIMULINK.
2º. Con la carga máxima que soporta el robot y que es facilitada por el fabricante obtener la
matriz de inercias.
3º. Entonces pasamos a obtener los pares máximos y nominales de cada una de las
articulaciones por simulación en la peor posición y condición de carga y les aplicamos un
factor de seguridad.
4º. Por ultimo acudiendo a catálogos de servomotores comerciales seleccionar para cada
articulación el servomotor que mejor se ajuste a los requisitos de par de cada
articulación del robot.
Para verificar los resultados obtenidos ejecutar el archivo PRACTICA.m, de este modo podremos
simular todo lo visto en los anteriores apartados a través de MATLAB y SIMULINK.
12
CONTROL Y PROGRAMACIÓN DE ROBOTS
4. BIBLIOGRAFÍAA continuación se lista una serie de páginas web libros que han sido consultados para realizar
esta práctica:
Robótica: Manipuladores y Robots Móviles, Aníbal Ollero Baturone, Ed. Marcombo.
Fundamentos de Robótica, Antonio Barrientos, 2ª Edición, Ed. Mc Graw Hill.
Robótica, John J. Craig, 3ª Edición, Ed. Prentice Hall.
Dynamic identification of a Mitsubishi PA-10 robotic manipulator, R. Van Der Aalst.
Diseño y construcción de una estructura articulada RRR acoplada a un manipulador PA-
10, Iván Perea, Universidad de Alicante.
http://www.youtube.com/watch?v=CfrCGE2EwBc