TAREA 9
Alumna: Jeaneth Barra
Generar curvas de desplazamiento, velocidad y aceleración todas ellas en
función del tiempo mediante MATLAB para dos puntos de la circunferencia
generada por el robot RR; a) punto a punto.
% Parámetros del robot RR
L1 = 1.0; % Longitud del primer eslabón
L2 = 0.5; % Longitud del segundo eslabón
% Radio de la trayectoria circular
R = 0.8;
% Ángulo en radianes
theta = linspace(0, 2 * pi, 100); % 100 puntos para un ciclo completo
% Coordenadas x e y de la trayectoria circular
x = R * cos(theta);
y = R * sin(theta);
% Derivadas de las coordenadas
dx_dt = diff(x) ./ diff(theta);
dy_dt = diff(y) ./ diff(theta);
% Extender las derivadas para que tengan la misma longitud que x e y
dx_dt = [dx_dt, dx_dt(end)];
dy_dt = [dy_dt, dy_dt(end)];
% Extender theta para que tenga la misma longitud que x e y
theta = linspace(0, 2 * pi, length(x));
% Segundas derivadas para obtener la aceleración
d2x_dt2 = diff(dx_dt) ./ diff(theta);
d2y_dt2 = diff(dy_dt) ./ diff(theta);
% Extender las segundas derivadas para que tengan la misma longitud
d2x_dt2 = [d2x_dt2, d2x_dt2(end)];
d2y_dt2 = [d2y_dt2, d2y_dt2(end)];
% Velocidad y aceleración resultantes
v = sqrt(dx_dt.^2 + dy_dt.^2);
a = sqrt(d2x_dt2.^2 + d2y_dt2.^2);
% Gráficos
figure;
subplot(3,1,1);
plot(theta, x, 'r', theta, y, 'b');
xlabel('Ángulo (radianes)');
ylabel('Desplazamiento');
legend('x', 'y');
subplot(3,1,2);
plot(theta, v, 'g');
xlabel('Ángulo (radianes)');
ylabel('Velocidad');
subplot(3,1,3);
plot(theta, a, 'm');
xlabel('Ángulo (radianes)');
ylabel('Aceleración');
Para identificar la trayectoria o movimiento articular de un robot con un eslabón en MATLAB
utilizando polinomios de segundo grado y derivadas, puedes seguir estos pasos generales:
1. Define la ecuación de posición o trayectoria que describe el movimiento articular de tu
robot. Para un polinomio de segundo grado, podrías usar una ecuación de la forma:
\( \theta(t) = a t^2 + b t + c \)
Donde \( \theta(t) \) es la posición articular en función del tiempo \( t \), y \( a \), \( b \), y \( c
\) son los coeficientes que debes determinar.
2. Calcula la primera derivada de la ecuación de posición con respecto al tiempo para obtener
la velocidad articular. Para el polinomio de segundo grado, la derivada sería:
\( \dot{\theta}(t) = 2a t + b \)
3. Calcula la segunda derivada de la ecuación de posición con respecto al tiempo para obtener
la aceleración articular. Para el polinomio de segundo grado, la derivada sería:
\( \ddot{\theta}(t) = 2a \)
4. Determina los valores de los coeficientes \( a \), \( b \), y \( c \) que describen la trayectoria
deseada. Estos valores dependerán de la forma específica de la trayectoria que desees.
5. Utiliza estos coeficientes para calcular la posición, velocidad y aceleración articular en
función del tiempo \( t \).
6. Puedes graficar la posición, velocidad y aceleración articular utilizando la función `plot` en
MATLAB. Asegúrate de que el tiempo \( t \) esté definido y tenga un rango adecuado.
A continuación, te proporciono un ejemplo simple en MATLAB para un polinomio de segundo
grado:
```matlab
% Definir los coeficientes del polinomio de segundo grado
a = 0.1;
b = 0.5;
c = 1.0;
% Crear un vector de tiempo
t = 0:0.01:5; % Supongamos un intervalo de tiempo de 0 a 5 segundos
% Calcular la posición, velocidad y aceleración articular
theta = a * t.^2 + b * t + c;
theta_dot = 2 * a * t + b;
theta_ddot = 2 * a;
% Graficar los resultados
subplot(3, 1, 1); % Subtrama para la posición
plot(t, theta);
title('Posición Articular');
subplot(3, 1, 2); % Subtrama para la velocidad
plot(t, theta_dot);
title('Velocidad Articular');
subplot(3, 1, 3); % Subtrama para la aceleración
plot(t, theta_ddot);
title('Aceleración Articular');
xlabel('Tiempo (s)');
```
Este es solo un ejemplo básico, y puedes personalizarlo según tus necesidades específicas y la
forma de la trayectoria que desees modelar para tu robot.