Lab Nº3 - Control de Trayectorias - V2015II
-
Upload
andree-gutierrez-suclla -
Category
Documents
-
view
28 -
download
2
description
Transcript of Lab Nº3 - Control de Trayectorias - V2015II
UNIVERSIDAD CATOLICA DE SANTA MARIA
FACULTAD DE CIENCIAS E INGENIERÍAS FISICAS Y FORMALES
ESCUELA PROFESIONAL
INGENIERIA MECÁNICA, MECÁNICA-ELECTRÍCA Y MECATRÓNICA
Página:1/5
Jefe de Prácticas: Ing. Juan Carlos Cuadros
Laboratorio de Robótica II
Tema: Control de Trayectorias Código: 4E10095
Semestre: X
Grupo: Fecha:
Apellidos y Nombres (1):____________________________________________________ Apellidos y Nombres (2):____________________________________________________
Lab. Nº 03 07/Sep/2015
I. OBJETIVO
I.1. El objetivo de esta práctica es la simulación y el análisis del control de una articulación simple accionada por
un motor CC (sin autoinducciones ni rozamientos).
II. MARCO TEORICO
II.1. Control de Robots
III. MATERIAL Y EQUIPO
III.1. Una PC con SO Windows XP y MATLAB
IV. PROCEDIMIENTO
Leer detenidamente el enunciado completo de la práctica, analizando la resolución de las cuestiones planteadas.
IV.1. Descripción del Control de Trayectoria
El objetivo de esta práctica es la simulación del control de una articulación simple accionada por un motor CC (sin
autoinducciones ni rozamientos) que tiene los siguientes parámetros característicos:
1. Constante del motor:
2. Constante del generador:
⁄
3. Resistencia del bobinado:
4. Momento de inercia (incluye bobinado y articulación):
Estos parámetros pueden fijarse en línea de comando de Matlab como variables. Posteriormente puede usarse el
nombre de la variable dentro de los bloques de Simulink.
Laboratorio de Robótica II Página: 2/5
Tema: Control de Trayectorias LAB N° 3
Jefe de Prácticas: Ing. Juan Carlos Cuadros
IV.1.1. Esquema de la simulación
El esquema del sistema de control es el siguiente:
Los parámetros de simulación deberán fijarse a: Inicio=0, Final=2, Paso Mínimo=0.01, Paso Máximo=0.01 y
Tolerancia=0.001.
Describiendo cada uno de los bloques:
La orden al sistema se obtiene del espacio de trabajo de Matlab con el bloque From Workspace. De momento,
se usara una excitación tipo escalón unitario, para evaluar los distintos tipos de controlador. Para ello se debe
ejecutar en línea de comando de Matlab:
t=0:0.01:2;
th=[0 ones(1,200)];
donde se está fijando un periodo de muestreo de T = 0,01. Se introduce como primera muestra de th el valor
inicial de la excitación (cero en el caso de un escalón unitario). En el bloque From Workspace deberán
introducirse como datos los instantes de tiempo y el valor de la entrada para cada uno ([t’, th’]).
Las muestras de la señal error se recogen en el vector error, mediante el bloque To Workspace. Para evaluar
cada esquema de control, podemos obtener la energía de la señal error ejecutando:
E=sum(error.*error)
El objetivo es obtener E mínima.
Laboratorio de Robótica II Página: 3/5
Tema: Control de Trayectorias LAB N° 3
Jefe de Prácticas: Ing. Juan Carlos Cuadros
Controlador. En una ventana nueva, se implementará un bloque genérico PD digital con el siguiente esquema:
La notación usada por Simulink para el operador de retardo unitario es R = z−1
. El controlador puede
convertirse en un bloque con la opción Group y utilizarse posteriormente en el sistema de control (copiándolo
con el mouse como un bloque más). Esta opción tiene el inconveniente de que los parámetros del controlador
no son variables, sino que deben tener valores numéricos fijos. Usando la opción Mask (después de agrupar),
los parámetros del bloque pueden hacerse variables, de forma que el bloque agrupado y enmascarado
mostrará una caja de diálogo al estilo de los bloques de Simulink. Al seleccionar la opción Mask, aparecerá en
pantalla una ventana para definir los parámetros del bloque:
New block type:
PD
Dialog strings separated by |:
|Kp|Kd|T
Initialization commands:
Kp=@1; Kd=@2; T=@3;
En esta ventana se asigna primero un nombre genérico al bloque (PD), después se estructura la caja de
diálogo (se escriben los títulos de los distintos items separados por —), y por último se asignan los parámetros
(Kp es el primero, Kd el segundo y T el tercero).
Para simular los conversores A/D (sensor de realimentación) y D/A (interfaz entre el controlador digital y el
proceso analógico) se utiliza el bloque Zero-Order Hold, cuya función es mantener el valor de la muestra
durante un intervalo de muestreo.
Motor CC. Incluye un bloque Constant con el que es posible simular un par de perturbación (inicialmente se
fija a cero). El motor dispone a la salida de un bloque integrador 1/s (sublibreria linear) con el que se obtiene la
Laboratorio de Robótica II Página: 4/5
Tema: Control de Trayectorias LAB N° 3
Jefe de Prácticas: Ing. Juan Carlos Cuadros
posición angular a partir de la velocidad angular. En este bloque, hay que especificar el valor inicial del ángulo
de salida th(1).
Osciloscopio. A la salida se ha dispuesto un bloque Scope que permite visualizar la señal (posición angular)
de salida. También puede conectarse a la salida un bloque To Workspace para llevar la señal de salida al
espacio de trabajo de MatLab.
Verificar los tiempos de muestreo. En aquellos bloques relacionados con la implementación digital del
controlador (control PD y conversores A/D) debe asegurarse que el parámetro ’sample time’ es T (periodo de
muestreo).
IV.2. Realización Práctica
Una vez realizado el sistema anterior, se diseñara el control PD para que el sistema trabaje en
amortiguamiento crítico. Comprobar que dicha especificación conduce a la siguiente relación para el
parámetro kd:
√
Implementar controladores para Kp = 1.25, 5, 10, dibujar las señales de salida correspondientes, calcular la
energía del error en cada caso, y comentar el resultado.
Diseñar un controlador PID que mejore los resultados del apartado anterior.
Adicionalmente, se utilizará como señal de entrada:
th=[th1 th1(151)*ones(1,50)];
donde th1 es el vector de valores (con periodo de muestreo T =0,01) de la variable θ1 de un robot RR obtenido
en la práctica del anexo 1, para una trayectoria interpolada con los siguientes parámetros:
pini = [1 0]; % Coordenadas punto de inicio
pdes = [1 0.1]; % Coordenadas punto de despegue
pase = [1.5 0.1]; % Coordenadas punto de asentamiento
pfin = [1.5 0]; % Coordenadas punto final
t1 = 0.25; % Duracion 1er segmento
t2 = 1; % Duracion 2do segmento
tn = 0.25; % Duracion ´ultimo segmento
T = 0.01; % Periodo de muestreo
El vector th se completa manteniendo el ´ultimo valor de la trayectoria durante 50 muestras, para observar el
comportamiento del motor una vez terminada la excitación. Comparar las funciones θ1(t) deseada y real, y
medir la energía del error para cada uno de los controladores de los apartados anteriores.
Laboratorio de Robótica II Página: 5/5
Tema: Control de Trayectorias LAB N° 3
Jefe de Prácticas: Ing. Juan Carlos Cuadros
En el apartado anterior se ha obviado por completo el efecto que el movimiento de la segunda articulación
tiene sobre la primera. Este efecto puede simularse como una perturbación. Para ello, se sustituirá el bloque
de perturbación nula por una perturbación sinusoidal (bloque sine wave) de amplitud 0,1 y periodo 8/3 (fase
inicial nula). Repetir las gráficas y medidas del apartado anterior.
Opcionalmente, puede realizarse una simulación del comportamiento completo del robot RR. Para ello,
supondremos que los dos motores tienen iguales parámetros característicos. Mediante la orden
sim(’fsimulink’) podemos lanzar la ejecución del modelo almacenado en el fichero fsimulink, que tomará los
parámetros que requiera del propio entorno Matlab.
De esta forma podremos tener una simulación realista de la evolución que sigue cada articulación del robot.
Empleando los programas del Anexo 1 podremos dibujar la trayectoria ideal del robot y la trayectoria simulada
con los controladores previos (PD y PID) para diferentes valores de Kp, Kd y Ki. Igualmente podemos dibujar el
robot y ver su evolución ideal y simulada para compararla.
V. CUESTIONARIO FINAL
V.1. Realizar un informe detallado de todo el procedimiento realizado.
V.2. ________________________________________________________________________________________
________________________________________________________________________________________
________________________________________________________________________________________
VI. CONCLUSIONES y OBSERVACIONES
VI.1. Haga sus observaciones y emita al menos cinco conclusiones en torno al trabajo realizado
- ____________________________________________________________________________________
- ____________________________________________________________________________________
- ____________________________________________________________________________________
- ____________________________________________________________________________________
- ____________________________________________________________________________________