You are on page 1of 11

UNIVERSIDAD DE PAMPLONA

Unidad de Ingeniería Mecatrónica


Facultad de Ingenierías. Programa de Ingeniería Mecatrónica.
Laboratorio II
Robótica II

CODIFICACIÓN Lab IV Tema: Control Dinámico

OBJETIVO:
Implementar algunos de los principales esquemas de control utilizados en robótica.

OBJETIVOS ESPECIFICOS:
1.- Diferenciar y comparar los principales tipos de control monoarticular.
2.- Comparar la respuesta de los controladores frente a diferentes entradas analizando su
comportamiento.
3.- Corroborar el funcionamiento de los controladores cuando existe un error razonable en
los valores estimados de algunas variables tales como incercia, rozamiento, etc.
REQUISITOS:
Conocer los conceptos generales de:
1.- Control dinámico del robots
2.- Programación básica en matlab
3.- Uso de Simulink.
EQUIPOS Y HERRAMIENTAS
1.- Computador con matlab

PROCEDIMIENTO

Control prealimentado

Implementar el siguiente diagrama de control en simulink:

VERSION 1 – Ph.D. César Augusto Peña C


UNIVERSIDAD DE PAMPLONA
Unidad de Ingeniería Mecatrónica
Facultad de Ingenierías. Programa de Ingeniería Mecatrónica.
Laboratorio II
Robótica II

Implementar el modelo de la articulación. Nota: Los valores de la inercia y el coeficiente de


fricción se representan por las letras J y B.

Para crear un bloque que contenga internamente un conjunto de elementos (Subsistema),


buscar en la librerias de simulink llamadas “Ports and Subsystem” y seleccionar el bloque
“Subsystem”.

Al hacer doble clic en el bloque de subsistema aparecerá una ventana que contiene las
entradas y salidas del mismo. Se pueden agregar tantas entradas como salidas sean
necesarias.

Crear un subsistema, implementando un control prealimentado, donde Je y Be son los


valores estimados de la inercia y el coeficiente de fricción respectivamente. Tal como se
muestra en la siguiente figura.

VERSION 1 – Ph.D. César Augusto Peña C


UNIVERSIDAD DE PAMPLONA
Unidad de Ingeniería Mecatrónica
Facultad de Ingenierías. Programa de Ingeniería Mecatrónica.
Laboratorio II
Robótica II

Implementar un generador de trayectorias (trapezoidal – aceleración de 1 rad/s2 durante 1 s


– aceleración nula durante 3 s – aceleración de -1 rad/s2 durante 1 s ) por medio de un
bloque subsistema que posee 3 salidas: aceleración deseada (qppd), velocidad deseada
(qpd) y posición deseada (qd)

Corroborar las salidas del generador de trayectorias con las siguientes gráficas:

VERSION 1 – Ph.D. César Augusto Peña C


UNIVERSIDAD DE PAMPLONA
Unidad de Ingeniería Mecatrónica
Facultad de Ingenierías. Programa de Ingeniería Mecatrónica.
Laboratorio II
Robótica II

Completar el diagrama de control. Observese que el par perturbador posee un interpolador


manual por medio del cual se puede seleccionar un ruido con distribución uniforme de
magnitud 1 o una constante de valor cero (par perturbador nulo).

VERSION 1 – Ph.D. César Augusto Peña C


UNIVERSIDAD DE PAMPLONA
Unidad de Ingeniería Mecatrónica
Facultad de Ingenierías. Programa de Ingeniería Mecatrónica.
Laboratorio II
Robótica II

Al dejar el modelo de simulink con las variables indicadas se hace necesario crear un
archivo m el cual contenga los valores indicados. Este archivo es llamado cada vez que se
realiza una simulación. Esta técnica permite cambiar los valores rápidamente sin tener que
modificar el diagrama en simulink y en caso de ser necesario se podría automatizar las
simulaciones.

Para llamar el archivo al simular se debe seleccionar en el menú la siguiente secuencia:

file-> model properties -> CallBacks -> StartFcn

Posteriormete se debe introducir el nombre del archivo m que contiene el valor de las
variables J, B, K, etc… Ejemplo del archivo:

% Este archivo carga algunas variables al ejecutar un


archivo en simulink
J = 1;
B = 10;
K = 1;

Je = 1;
Be = 10;
Ke = 1;

Realizar lo mismo para InitFcn.

Como se puede observar en las siguientes gráficas la posición de referencia es alcanzada


continuamente cuando el par perturbador es nulo.

Al introducir un ruido con distribución uniforme (1) tal como se muestra en la siguiente
figura:

VERSION 1 – Ph.D. César Augusto Peña C


UNIVERSIDAD DE PAMPLONA
Unidad de Ingeniería Mecatrónica
Facultad de Ingenierías. Programa de Ingeniería Mecatrónica.
Laboratorio II
Robótica II

Se obtiene:

Observe las diferencias entre las curvas.

Calcular y describa la evolución de la posición de la articulación cuando el parámetro de


inercia estimado es un 130% del real, el coeficiente de fricción estimado es un 90% del real
y la constante del motor estimada es un 110% de la real. Realizar la simulación con y sin
par perturbador.

Cambiando los valores estimados Je, Be, Ke:


% Este archivo carga algunas variables al ejecutar un
archivo en simulink
J = 1;
B = 10;
K = 1;

VERSION 1 – Ph.D. César Augusto Peña C


UNIVERSIDAD DE PAMPLONA
Unidad de Ingeniería Mecatrónica
Facultad de Ingenierías. Programa de Ingeniería Mecatrónica.
Laboratorio II
Robótica II

Je = 1*1.3;
Be = 10*0.9;
Ke = 1*1.1;

Control realimentado

Implementar el siguiente esquema de control en Simulink:

Donde, el controlador se representa como:

Los valores de las variables J, B, Kp, Kd, Ki, etc. Se introducen por medio de un archivo
llamado “”, el cual se carga cada vez que se ejecuta la simulación.
Ejemplo:
% val_ini_control_realimentado.m
% Este archivo carga algunas variables al ejecutar un archivo en

VERSION 1 – Ph.D. César Augusto Peña C


UNIVERSIDAD DE PAMPLONA
Unidad de Ingeniería Mecatrónica
Facultad de Ingenierías. Programa de Ingeniería Mecatrónica.
Laboratorio II
Robótica II

simulink
J = 1;
B = 10;
K = 1;

Je = 1;
Be = 10;
Ke = 1;

Kp = 1;
Kd = 0;
Ki = 0;

-­‐ Realizar simulaciones tomando los valores según la siguiente tabla.:

# J B K Je Be Ke Kp Kd Ki qd Tp
1 1 10 1 1 10 1 1 0 0 Escalón 0
Unitario
2 1 10 1 1 10 1 1 0,2 0 Escalón 0
Unitario
3 1 10 1 1 10 1 1 0,2 0,03 Escalón 0
Unitario
4 1 10 1 1 10 1 1 0 0 Escalón Escalón
Unitario Unitario
5 1 10 1 1 10 1 1 0,2 0 Escalón Escalón
Unitario Unitario
6 1 10 1 1 10 1 1 0,2 0,03 Escalón Escalón
Unitario Unitario

Nota: El escalón unitario correspondiente a la entrada (qd) se aplica en el tiempo cero, y el


correspondiente al par perturbador se aplica en tiempo 100s.

Describir el comportamiento de los diferentes controladores.

CONTROL PREALIMENTADO + REALIMENTADO:

Implementar un control prealimentado y realimentado

VERSION 1 – Ph.D. César Augusto Peña C


UNIVERSIDAD DE PAMPLONA
Unidad de Ingeniería Mecatrónica
Facultad de Ingenierías. Programa de Ingeniería Mecatrónica.
Laboratorio II
Robótica II

El bloque del controlador (subsistema) se puede tomar como:

El archivo que contiene los valores de las varias es de la forma: (sugerencia: poner un
nombre diferente a este archivo)
% Este archivo carga algunas variables al ejecutar un
archivo en simulink
J = 1;
B = 10;
K = 1;

Je = 1*1.1;
Be = 10*0.9;
Ke = 1*1.05;

VERSION 1 – Ph.D. César Augusto Peña C


UNIVERSIDAD DE PAMPLONA
Unidad de Ingeniería Mecatrónica
Facultad de Ingenierías. Programa de Ingeniería Mecatrónica.
Laboratorio II
Robótica II

Kp = 10;
Kd = 0.5;
Ki = 0.3;

Aplicando un Tp ±5 unidades y Kp = 10, Kd = 0 y Ki = 0

Aplicando un Tp ±5 unidades y Kp = 100, Kd = 5 y Ki = 3

VERSION 1 – Ph.D. César Augusto Peña C


UNIVERSIDAD DE PAMPLONA
Unidad de Ingeniería Mecatrónica
Facultad de Ingenierías. Programa de Ingeniería Mecatrónica.
Laboratorio II
Robótica II

MARCO TEORICO

Referirse a las diapositivas de clase y al libro guia (Fundamentos de Robótica)

VERSION 1 – Ph.D. César Augusto Peña C

You might also like