Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinación
Crea robot con matlab
1. 1
M.Sc. Ricardo Rodríguez Bustinza
Creación de un Robot con MATLAB
Vamos a tomar un ejemplo simple de un manipulador planar de
dos eslabones (ver Figura) el cual tiene los siguientes
parámetros (estándar) de eslabones de Denavit‐Hartenberg.
Donde hemos puesto la longitud de los eslabones en 1. Ahora
podemos crear un par de objetos de eslabón:
path(path,'C:Documents and SettingsMis documentosMATLABrobot71');
L{1}=link([0 1 0 0 0]);
% L =
% 0.000000 1.000000 0.000000 0.000000 R
L{2}=link([0 1 0 0 0]);
% L2 =
% 0.000000 1.000000 0.000000 0.000000 R
r=robot(L,'D2')
% r =
%
% noname (2 axis, RR)
% grav = [0.00 0.00 9.81] standard D&H parameters
% alpha A theta D R/P
% 0.000000 1.000000 0.000000 0.000000 R
% 0.000000 1.000000 0.000000 0.000000 R
plot(r, [0 0])
2. 2
M.Sc. Ricardo Rodríguez Bustinza
Las primeras líneas crean los objetos de eslabones, uno por
cada eslabón del robot. Note el segundo argumento de link el
cual especifica que la convención estándar de D&H será usada
(ésta es por defecto). Los argumentos del objeto de eslabones
pueden encontrarse de
>> help link
LINK create a new LINK object
A LINK object holds all information related to a robot link such as
kinematics of the joint, rigid-body inertial parameters, motor and
transmission parameters.
LINK
LINK(link)
Create a default link, or a clone of the passed link.
A = LINK(q)
Compute the link transform matrix for the link, given the joint
variable q.
LINK([alpha A theta D sigma])
LINK(DH_ROW) create from row of legacy DH matrix
LINK(DYN_ROW) create from row of legacy DYN matrix
6. 6
M.Sc. Ricardo Rodríguez Bustinza
Otros movimientos del robot cilíndrico
Problema de la Cinemática Inversa
Para encontrar la solución al problema cinemático inverso se
usa la función ikine aunque la solución se lleva un tiempo
inaceptable para controlar robots reales. Por ejemplo:
Usando el robot creado en el numeral anterior obtenemos la
solución: Para las coordenadas de las articulaciones q = [‐pi/4
0.5 0.5 pi/3] se obtiene la siguiente matriz de transformación:
T = fkine(rob,[-pi/4 0.5 0.5 pi/3]);
% T =
% 0.3536 -0.6124 0.7071 1.0607
% 0.3536 -0.6124 -0.7071 -1.0607
% 0.8660 0.5000 0.0000 1.5000
% 0 0 0 1.0000
qi = ikine(rob,T,[0 0 0 0],[1 1 1 1 0 0]);
% CI Art 1 2 3 4 DOF
% qi =
% -0.7854 0.5000 0.5000 1.0472
qi_grad=qi*180/pi
% qi_grad =
% -45.0000 28.6479 28.6479 60.0000
Note que coinciden con las coordenadas de las articulaciones
originales. Una solución no siempre es posible, por ejemplo si
la transformación describe un punto fuera del alcance del
manipulador. También la solución no es necesariamente única
y hay singularidades en las cuales el manipulador pierde grados
de libertad y las coordenadas de las articulaciones llegan a ser
linealmente dependientes.
9. 9
M.Sc. Ricardo Rodríguez Bustinza
Usando la matriz hallada anterioemente, determinaremos las
singularidades (con respecto a la velocidda lineal) del
manipulador.
Para ello se requiere hallar θ1, θ2, y θ3 que es la matriz singular.
Esto se realiza cuando el determinante es cero.
Las singularidades ocurren cuando:
La primera cantidad (2C2+C23=0) es la distancia entre el punto
del efector final y el eje z1. Cuando la distancia es cero, la
juntura 1 no tiene efecto sobre la velocidad en el efector final.
Entonces solo las junturas 2 y 3 pueden afectar las velocidades
comunes a la rotación, el efector final no puede moverse en la
dirección de y1.
Cuando S3=0, puede tomar θ3 =180° o θ3=0, en este caso es
imposible que el efector final se mueva en la dirección x4.
Para cada singularidad podemos interpretar la limitación de
movimiento: