Matlab - Duda Función

 
Vista:
sin imagen de perfil

Duda Función

Publicado por Fernando (1 intervención) el 26/04/2018 14:35:13
Buenas, estoy intentando hacer una función que me calcule la cinemática directa de un robot, creo que la he hecho correctamente, pero cuando la llamo me dice "UNdefined function or variable 'directa'". La funcion anterior de denavit no me da problemas, la que me da es directa(q).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
function dh=denavit(teta,d,a,alfa)
dh=[cos(teta) -cos(alfa)*sin(teta) sin(alfa)*sin(teta) a*cos(teta);
    sin(teta) cos(alfa)*cos(teta) -sin(alfa)*cos(teta) a*sin(teta);
    0               sin(alfa)           cos(alfa)           d;
    0                   0                   0               1];
end
 
 
function CadenaDirecta=directa(q)
 
% Parámetros geométricos brazo(m):
L1_b = 1.0;
L2_b = 0.3;
L3_b = 0.3;
L4_b = 0.5;
L5_b = 0.5;
 
% Parámetros geométricos muñeca(m):
L1_m = 0;
L2_m = 0.25;
L3_m = 0.1;
L4_m = 0.2;
 
teta=[q(1)        0           0          0           q(4)     q(5)     q(6)];
d   =[L1_b      L2_b+q(2)    L4_b    L5_b+q(3)      L2_m      L3_m     L2_m];
a   =[0         L3_b          0          0            0        0       L4_m];
alfa=[0         pi/2          0         pi/2        -pi/2    -pi/2     pi/2];
 
%Matrices de transformación entre sistemas consecutivos
 
A00 = [0 0 1 0;0 -1 0 0;1 0 0 0;0 0 0 1];
A01 = denavit(teta(1), d(1), a(1), alfa(1));
A12 = denavit(teta(2), d(2), a(2), alfa(2));
A23 = denavit(teta(3), d(3), a(3), alfa(3));
A34 = denavit(teta(4), d(4), a(4), alfa(4));
A45 = denavit(teta(5), d(5), a(5), alfa(5));
A56 = denavit(teta(6), d(6), a(6), alfa(6));
A67 = denavit(teta(7), d(7), a(7), alfa(7));
 
%Matriz de trasnformación asociado al último sistema de coordednadas
A08=A00*A01*A12*A23*A34*A45*A56*A67*A00;
 
end
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JESUS DAVID ARIZA ROYETH
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Duda Función

Publicado por JESUS DAVID ARIZA ROYETH (1818 intervenciones) el 01/05/2018 17:49:20
has guardado la función directa en un archivo aparte? porque si está guardada en denavit solo la puede llamar denavit, si quieres usarla por más funciones debes guardarla en un archivo aparte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar