Anda di halaman 1dari 27

CONTROL DE UN SISTEMA DE BARRA Y BOLA

ESTUDIANTE
GASPAR SOTO

TRABAJO ESCRITO # 2


PROFESOR
FELIPE ANDRES OBANDO VEGA

ASIGNATURA
INSTRUMENTACION Y CONTROL



















UNIVERSIDAD DE ANTIOQUIA
FACULTAD DE INGENIERIA
DEPARTAMENTO DE INGENIERIA MECANICA
MEDELLIN
2014
2

CONTENIDO
GLOSARIO ............................................................................................................................. 4
OBJETIVOS ............................................................................................................................ 5
INTRODUCCION ................................................................................................................... 5
DESARROLLO DEL TRABAJO ............................................................................................ 6
1. Hallar la funcin de transferencia del sistema ............................................................. 6
2. Modelar el sistema barra y bola en el software NX ..................................................... 8
3. Con los parmetros del sistema modelado, disear un compensador para
controlar la posicin de la bola. .......................................................................................... 10
4. Simular el comportamiento del sistema utilizando el compensador diseado........ 11
4.1 Empleando como planta la funcin de transferencia utilizada para calcular el
compensador .................................................................................................................... 11
4.2 Empleando como planta el modelo proporcionado por NX ............................... 15
5. Repetir el numeral 3 y 4 pero ahora calculando un controlador PID mediante el
LGR. ...................................................................................................................................... 16
CONCLUSIONES ................................................................................................................ 22
BIBLIOGRAFIA Y REFERENCIAS ..................................................................................... 23
ANEXOS ............................................................................................................................... 24
Programa 1. Ftrans_ball1.m ............................................................................................. 24
Programa 2. COSIMULATION_2_SOLUTION_2_plant.m .................................................... 24
Programa 3 : control_kp.m............................................................................................... 24
Programa 4 : control_kpId_opt.m .................................................................................... 25
Programa 5: comand window controladores ....................................................................... 25
Programa 6: LGR_Ftrans_ball1.m ..................................................................................... 26
Programa 7: LGR_Ftrans_ball1_sgrid_comp.m ................................................................. 26
Programa 8: LGR_Ftrans_ball1_selec_K.m ....................................................................... 26
Programa 8.1 resultados de LGR_Ftrans_ball1_selec_K.m ................................................ 26
Programa 9 Grafica de LGR_Ftrans_ball1_close.m ............................................................... 27
Programa 9.1 ventana de comandos para Grafica de LGR_Ftrans_ball1_close.m ................. 27
Listado de archivos de programa validos para esta co-simulacion en NX8.0 (adjuntos en
carpeta zip en correo electrnico) ....................................................................................... 27
Listado de archivos de programa vlidos para esta cosimulacion en Matlab R2012a
((adjuntos en carpeta zip en correo electrnico) ........................................................... 27


3

Figura 1: Modelo sistema barra-bola 66
Figura 2: Respuesta del sistema a una entrada escaln ................................................... 7
Figura 3: Modelo y simulacin del sistema barra-bola en NX8.0 ...................................... 8
Figura 4: Diagrama de bloques de modelo de la planta obtenida en NX8.0 .................... 8
Figura 5: Grafica de la salida de la planta NX motion en simulink .................................... 9
Figura 6: Modelo de lazo cerrado con compensador aplicado a planta NX motion ....... 10
Figura 7: Respuesta de la funcin transferencia ante un controlador P ........................ 11
Figura 8: Respuesta de la funcin transferencia ante un controlador PD. .................... 12
Figura 9: Respuesta de la funcin transferencia ante un controlador PID. ................... 13
Figura 10: Respuesta de la funcin transferencia ante un controlador PID optimizado
............................................................................................................................................... 14
Figura 11: LGR para la funcin de transferencia de Matlab en lazo abierto .................. 16
Figura 12: LGR para la funcin de transferencia de Matlab aplicando sgrid .................. 17
Figura 13: LGR para la funcin de transferencia de Matlab aplicando sgrid y
optimizacin mediante un compensador. .......................................................................... 19
Figura 14: seleccin del punto de interseccin entre las proyecciones de las races. .. 20
Figura 15: Grafica de la respuesta de lazo cerrado al aplicar LGR y compensador a la
funcin de transferencia del sistema .................................................................................. 21





4

GLOSARIO

CAD: Diseo asistido por computadora. es el uso de programas
computacionales para crear representaciones grficas de objetos fsicos
ya sea en segunda o tercera dimensin (2D o 3D).

CAE: Ingeniera asistida por computadora. es el uso de software
computacional para simular desempeo y as poder hacer mejoras a los
diseos de productos o bien apoyar a la resolucin de problemas de
ingeniera para una amplia gama de industrias.

CAM: Manufactura Asistida por Computadora. comnmente se refiere al
uso de aplicaciones de software computacional de control numrico (NC)
para crear instrucciones detalladas (G-code) que conducen las
mquinas de herramientas para manufactura de partes controladas
numricamente por computadora (CNC). Los fabricantes de diferentes
industrias dependen de las capacidades de CAM para producir partes de
alta calidad.

Compensacin: es la modificacin dinmica de un sistema mediante un
compensador para satisfacer unas especificaciones determinadas

LGR: Lugar geomtrico de las races. Es un mtodo de diseo de
sistemas de control invariantes con el tiempo.

PID: controlador o compensador proporcional, integral, derivativo, el cual
proviene de la extensin natural del controlador on-off y es usado por
el 95% de los lazos de control de los sistemas industriales.

Modelacin: tcnica por medio de la cual se construye un sistema
similar y a escala del real para ser evaluado por medio de un software.

NX: Es una solucin de Siemens para el diseo de productos integrada
que optimiza y acelera mediante modelacin y simulacin el proceso de
desarrollo de productos para los ingenieros que necesitan crear
productos innovadores en un ambiente colaborativo.

Simulacin: evaluacin que se hace de un modelo a unas condiciones
reales por medio de un software.

Cosimulacion: simulacin compartida entre un software de modelacin
y uno de control.
5

OBJETIVOS

Modelar, simular y controlar un sistema barra-bola mediante co-
simulacion entre siemens NX motion y Matlab.
Disear controladores PID para optimizar el comportamiento del
sistema.
Comparar resultados obtenidos en NX con los obtenidos en Matlab.

INTRODUCCION

La modelacin y simulacin actual de sistemas dinmicos y el posterior control
de ellos ha permitido reducir los costos de diseo de sistemas de control y las
perdidas en los procesos industriales; los cuales eran controlados
anteriormente por tcnicas muy costosas de ensayo y error en las que se
perdan insumos, materias primas, energa y producto de calidad no conforme.
Por lo anterior es de vital importancia la adquisicin de conocimientos en
tcnicas de modelacin y simulacin con paquetes de software especializados
que lamentablemente an tienen un precio comercial bastante elevado pero
que a largo plazo la industria recuperara la inversin hecha en la compra de un
paquete CAD, CAM, CAE, PLM.



6

DESARROLLO DEL TRABAJO


Figura 1: Modelo sistema barra-bola


Smbolo del parmetro significado
m Masa de la bola
R Radio de la bola
d Offset de brazo de palanca
g Aceleracin gravitacional
L Longitud de la barra
J Momento de inercia de la bola
r Coordenada de posicin de la bola
Angulo de rotacin de la barra
Angulo de rotacin del servo motor
Tabla 1: Parmetros del sistema

La ecuacin que relaciona el desplazamiento de la bola y el ngulo de rotacin
del servomotor es:
(

2
+) = (

) Ecuacin 1.
1. Hallar la funcin de transferencia del sistema

1.1 Aplicando la transformada de Laplace a la ecuacin 1.

{(

2
+) } = { (

) } ; y asumiendo que r(0)=0; (0)=0 se obtiene:



(

2
+)
2
() = (

) () Separando variables:

()
()
=

(

+ )


7


La ecuacin anterior es la funcin de transferencia del sistema.
1.1 Definicin de valores para variables y constantes

Parmetro Valor Unidades
m 0,77 Kg
R 0,105 m
d 0,21 m
g 9,81 m/s{2
L 7 m
J 0,0033957 Kg*m^2
variable Radianes
variable Radianes
r variable m
Tabla 2 : Asignacin de valores a los parmetros del sistema
El momento de inercia de la bola se calcul mediante: J= 2/5*m*R^2

1.2 introduccin de la funcin de transferencia en el software Matlab

El programa Ftrans_ball1.m contiene las instrucciones por medio de las
cuales se introdujo la funcin de transferencia. Ver anexos.

1.3 Comportamiento del sistema frente a una entrada tipo escaln


Figura 2: Respuesta del sistema a una entrada escaln
8

Anlisis de resultados:
En la figura 2 se puede observar el comportamiento del sistema barra-bola a
una respuesta de tipo escaln modelado en Matlab. Dicho sistema es inestable
y como se ver ms adelante en la co-simulacion siemens NX-Matlab la bola
se desliza fuera de la barra lo que implica la necesidad de algn controlador
que permita restringir la posicin de la bola para que esta se mantenga dentro
de las fronteras de la barra.
2. Modelar el sistema barra y bola en el software NX


Figura 3: Modelo y simulacin del sistema barra-bola en NX8.0
En la figura anterior se muestra la modelacin y simulacin del sistema en el
software NX8.0 el archivo al cual corresponde es COSIMULATION_2.sim
Luego de realizar la co-simulacion entre NX8.0 y Matlab R2012a se obtuvo el
programa COSIMULATION_2_SOLUTION_2_plant.m cuyas instrucciones del
editor de texto de Matlab se pueden encontrar en los anexos.

Figura 4: Diagrama de bloques de modelo de la planta obtenida en NX8.0
9

La figura 4 pertenece al modelo de simulink llamado: cosimulacion_Gaspar

Figura 5: Grafica de la salida de la planta NX motion en simulink

Anlisis de resultados:
Tanto en la figura 5 como en la simulacin de NX se puede observar que sin
ayuda de un controlador la manivela inicia movimiento rotacional proporcionado
por el servo motor transmitindole movimiento rotacional a la biela y esta a su
vez le transmite movimiento rotacional a la barra y esta ltima transmite a la
bola iniciando as un desplazamiento lineal de la bola sobre la barra hasta que
en un tiempo muy cercano a los 5 segundos la bola sale despedida de la barra.
Parmetros de simulacin:
Steps: 1000; Tiempo: 5seg; entrada constante: 100.






10

3. Con los parmetros del sistema modelado, disear un
compensador para controlar la posicin de la bola.


Figura 6: Modelo de lazo cerrado con compensador aplicado a planta NX motion









11

4. Simular el comportamiento del sistema utilizando el
compensador diseado

4.1 Empleando como planta la funcin de transferencia utilizada
para calcular el compensador

4.1.1 clculo del compensador proporcional


Figura 7: Respuesta de la funcin transferencia ante un controlador P

Anlisis de resultados:
La figura 7 se obtiene del editor de texto del programa 3 llamado control_kp.m
ver instrucciones en el anexo. Se puede observar como se presentan
oscilaciones en el primer minuto de simulacin a pesar de haber implementado
un compensador proporcional.

4.1.2 Calculo del compensador proporcional y derivativo

Anlisis de resultados:
Al implementar el controlador PD sobre la funcin de transferencia se observa
un mejor comportamiento del sistema comparado con el compensador
proporcional sin embargo en la figura 8 se observa una elevacin de la
12

amplitud por encima del valor de sintonizacin transcurrido tan solo medio
segundo despus del inicio del movimiento.

Figura 8: Respuesta de la funcin transferencia ante un controlador PD.

4.1.3 Calculo del compensador proporcional, integral, derivativo
13


Figura 9: Respuesta de la funcin transferencia ante un controlador PID.

Anlisis de resultados:
La figura 9 se obtiene del programa de editor control_kpId.m se puede observar que
el sistema no cambia mucho frente al PD por lo tanto los parmetros de ganancias se
deben modificar para optimizar el compensador.
14


Figura 10: Respuesta de la funcin transferencia ante un controlador PID
optimizado

Anlisis de resultados:
La figura 10 se obtuvo del programa de editor de Matlab llamado
control_kpId_opt.m en ella se observa un comportamiento muy estable y
cercano al punto de control. Esta es la mejor opcin entre los controladores
analizados en la funcin de transferencia obtenida en Matlab. Los valores
numricos de los parmetros optimos se pueden encontrar en el archivo de
comand window. Ver programa en anexos.




15

4.2 Empleando como planta el modelo proporcionado por NX



16

5. Repetir el numeral 3 y 4 pero ahora calculando un
controlador PID mediante el LGR.

5.1 clculo del controlador PID mediante LGR para la funcin de
transferencia obtenida de Matlab
5.1.1 Aplicacin de LGR a la funcin de transferencia en lazo abierto.
La idea principal del diseo del lugar de races es estimar la respuesta
a lazo cerrado a partir del lugar de las races a lazo abierto. Mediante
la adicin de ceros y / o polos al sistema original (la adicin de un
compensador), el lugar de races y por lo tanto se puede modificar la
respuesta de bucle cerrado. Veamos primero el lugar de races de la
planta en lazo abierto.



Figura 11: LGR para la funcin de transferencia de Matlab en lazo abierto
Anlisis de resultados:
La figura anterior fue obtenida con el programa LGR_Ftrans_ball1.m ver
cdigo en los anexos. Como se puede ver el sistema tiene dos polos en el
origen que van hacia el infinito a lo largo de los ejes imaginarios.
Los criterios de diseo tambin se pueden representar en el lugar de las races
17

con el comando sgrid. Este comando genera una grilla de coeficiente de
amortiguamiento constante y la frecuencia natural. El coeficiente de
amortiguamiento y la frecuencia natural se encontraron con la siguiente
ecuacin:

Tenga en cuenta, que la ecuacin con Ts se encuentra suponiendo que el
sistema se ha asentado; es cuando la respuesta se mantiene dentro de 2% de
su valor final. A partir de estas ecuaciones, el coeficiente de amortiguamiento y
la frecuencia natural se encontr que eran 0,7 y 1,9 respectivamente.



Figura 12: LGR para la funcin de transferencia de Matlab aplicando sgrid





18

Anlisis de resultados:
La grafica anterior se obtuvo implementando el comando sgrid en el programa
de editor de Matlab llamado LGR_Ftrans_ball1_sgrid.m
El rea entre las dos lneas diagonales de puntos representa lugares donde el
porcentaje de rebasamiento superior es menos de 5%. La zona exterior de la
lnea curva representa lugares donde el tiempo de establecimiento es menor a
3 segundos. Se debe tener en cuenta que ninguna regin del grafico est
dentro de los criterios de diseo. Para enmendar esta situacin y llevar el lugar
de races en el semi plano de la izquierda para obtener mayor estabilidad se va
a intentar aadir una adelanto de compensador al sistema.
5.1.2 Aplicando un controlador

Un compensador de primer orden tiende a desplazar el lugar de races al
semiplano izquierdo. Un compensador de adelanto tiene la siguiente forma:



En donde, la magnitud de Z0 es menor que la magnitud de P0.

Ahora, se procede a aadir el controlador para la planta representada por la
funcin de transferencia y el lugar de races. Se procede a colocar el cero cerca
del origen para anular uno de los polos. El polo muestra un compensador que
se colocar a la izquierda del origen para forzar el lugar de races ms en el
plano de la mano izquierda.
19


Figura 13: LGR para la funcin de transferencia de Matlab aplicando sgrid y
optimizacin mediante un compensador.
Anlisis de resultados:
La figura anterior se obtuvo con el programa LGR_Ftrans_ball1_sgrid_comp.m
en ella se puede observar que las races se encuentran en la zona izquierda
del primer y cuarto cuadrante lo que implica que el sistema ser mucho mas
estable y estar dentro de los parmetros de diseo.

5.1.3 Seleccin de la ganancia
Ahora que se ha movido el lugar de las races en el plano de la izquierda, es
pertinente elegir una ganancia que satisfaga las necesidades de diseo. Luego
de la figura se elige un punto cercano a los indicados por las marcas cruzadas
en el dibujo
20


Figura 14: seleccin del punto de interseccin entre las proyecciones de las
races.
La grafica anterior se obtuvo del programa 8 para
LGR_Ftrans_ball1_selec_K.m
El programa 8.1 de la ventana de comandos muestra los valores determinados
para la ganancia.
selected_point = 0.0130 - 0.0140i
k = 0.3232
poles = -4.9864
-0.0068 + 0.0095i
-0.0068 - 0.0095i
5.1.4 Grafica de la respuesta en lazo cerrado.
Este valor de Kc se puede poner en el sistema y la respuesta de bucle cerrado
a una entrada de paso de 0,25 m se puede obtener la siguiente figura

21


Figura 15: Grafica de la respuesta de lazo cerrado al aplicar LGR y compensador
a la funcin de transferencia del sistema
Anlisis de resultados:
De esta figura se observa que cuando se tiene una entrada escalonada de 0,25
el sistema cumple tanto el tiempo de establecimiento como los criterios de
diseo de rebasamiento.
Un problema de diseo no necesariamente tiene una nica respuesta. El uso
de este mtodo (o cualquier otro) puede resultar en muchos compensadores
diferentes. No existe la verdad absoluta en el diseo.

5.2 clculo del controlador PID mediante LGR para la planta
obtenida en NX.



22

CONCLUSIONES

Los procesos de modelacin y simulacin requieren de mucho tiempo y
paciencia y ms an cuando no se tiene experiencia en el manejo del
software que se est aplicando.

Al comparar los resultados obtenidos en ambos softwares (NXmotion y
Matlab) se observan comportamientos similares en el sistema.

Cuando se est diseando un controlador, independiente del tipo de
modelo que se tenga, es posible y necesario optimizar los parmetros
del controlador.

El contacto 3D en Nx permite solucionar problemas de interferencia y
penetracin entre cuerpos con movimiento relativo entre s.

El marcador es un elemento indispensable en Nx para la ubicacin y
manipulacin de un sensor

El sensor en Nx permite cuantificar desplazamientos relativos o
absolutos.

Es indispensable para la solucin adecuada de simulaciones en Nx que
los links y los joints de todo el conjunto sean asignados y editados por
el usuario.

Se debe evitar al mximo ser redundante con el tipo de joint porque
repetir el mismo tipo para varias piezas consecutivas del ensamble
genera errores en la simulacin

Al reducir al mnimo el nmero de elementos o partes del ensamble se
puede reducir la probabilidad de error en el entorno motion de Nx .

El nombre o ruta de la carpeta de trabajo de la cosimulacion no pude
contener espacios entre las palabras porque esto conlleva a errores en
Matlab.

El software Nx ayuda a comprender los sistemas dinmicos mecnicos
complejos.

Las restricciones geomtricas del ensamble se deben desactivar antes
de trasladar la cosimulacion a Matlab ya que este entra en conflicto.
23

BIBLIOGRAFIA Y REFERENCIAS

Canal de youtube. Profesor e ingeniero Felipe Obando. Video
cosimulacion NX. Octubre 29 de 2012.
https://www.youtube.com/watch?v=qubI820GgfE

Portal web con tutoriales en varias versiones del software NX en idioma
ingls. NXTutorials powered by Design Visionaries. Copyright 2014
NX Tutorials.
http://nxtutorials.com/

Control tutorials for Matlab and Simulink. Portal educativo en ingles con
tutoriales sobre control.
http://www.ctms.engin.umich.edu/CTMS/index.php?example=Introductio
n&section=SystemModeling


24

ANEXOS

Programa 1. Ftrans_ball1.m

m=0.77; R=0.105; d=0.21; g=9.81; L= 7.0; J=0.0033957;

s=tf('s');
Ftrans_ball=m*g*d/(L*((J/R^2)+m)*s^2)

>> Ftrans_ball1
Ftrans_ball =

1.586
---------
7.546 s^2
Continuous-time transfer function.
>>step(Ftrans_ball)

Programa 2. COSIMULATION_2_SOLUTION_2_plant.m

% Load PlantIO.m
COSIMULATION_2_SOLUTION_2_PlantIO;

% One process

nx_client;

% Remove comments to initialize plant to auto-load workspace variables
set_param(gcb, 'MaskInitialization',
'COSIMULATION_2_SOLUTION_2_PlantIO' );

Programa 3 : control_kp.m
% DISEO DE CONTROLADOR PROPORCIONAL
m=0.77; R=0.105; d=0.21; g= -9.81; L= 7.0; J=0.0033957;
%simplificando la parte cte
K = (m*g*d)/(L*(J/R^2)+m)
num = [-K];
den = [1 0 0];
%definiendo ganancia proporcional
kp = 0.1;
numP = kp*num;
[numc, denc] = cloop(numP, den)
%aplicando una entrada escalon
step(0.15*numc,denc)
25


Programa 4 : control_kpId_opt.m
% DISEO DE CONTROLADOR PROPORCIONAL, INTEGRAL,derivativo
m=0.77;R=0.105;d=0.21;g=-9.81;L= 7.0;J=0.0033957;
s = tf('s');
Ftrans_ball = -m*g*d/L/(J/R^2+m)/s^2;
Kp = 15;
Kd = 40;
C = pid(Kp,0,Kd);
sys_cl=feedback(C*Ftrans_ball,1);
step(0.15*sys_cl)

Programa 5: comand window controladores
>> control_kp
K = -0.5421
numc =
0 0 0.0542
denc = 1.0000 0 0.0542
>> control_kp
K = -0.5421
numc = 0 0 0.0542
denc = 1.0000 0 0.0542
>> control_kp
K = -0.5421
numc = 0 0 0.0542
denc = 1.0000 0 0.0542
>> control_kpd
K = -0.5421
>> control_kpId
K = -0.5421
>> control_kpId
>> control_kpId_opt
26


Programa 6: LGR_Ftrans_ball1.m
% LGR PARA LA FUNCION DE TRANSFERENCIA
m=0.77; R=0.105; d=0.21; g=-9.81; L= 7.0; J=0.0033957;
s = tf('s');
Ftrans_ball = -m*g*d/L/(J/R^2+m)/s^2;
rlocus(Ftrans_ball)

Programa 7: LGR_Ftrans_ball1_sgrid_comp.m
% LGR PARA LA FUNCION DE TRANSFERENCIA
m=0.77;R=0.105;d=0.21;g=-9.81;L= 7.0;J=0.0033957;

s = tf('s');
Ftrans_ball = -m*g*d/L/(J/R^2+m)/s^2;

%APLICANDO UN COMPENSADOR DE PRIMER ORDEN
zo = 0.01;
po = 5;
C=tf([1 zo],[1 po]);
%APLICANDO LGR
rlocus(C*Ftrans_ball)
sgrid(0.70, 1.9)

Programa 8: LGR_Ftrans_ball1_selec_K.m
Al programa 7 se le agrega:
%SELECCIONANDO LA GANANCIA
[k,poles]=rlocfind(C*Ftrans_ball)

Programa 8.1 resultados de LGR_Ftrans_ball1_selec_K.m
>> LGR_Ftrans_ball1_selec_K
Select a point in the graphics window
selected_point =
0.0130 - 0.0140i
k = 0.3232
poles = -4.9864
-0.0068 + 0.0095i
-0.0068 - 0.0095i

27

Programa 9 Grafica de LGR_Ftrans_ball1_close.m
Al programa 8 se le agrega:
sys_cl=feedback(k*C*Ftrans_ball,1);

t=0:0.01:5;

figure

step(0.25*sys_cl,t)

Programa 9.1 ventana de comandos para Grafica de
LGR_Ftrans_ball1_close.m
>> LGR_Ftrans_ball1_close
Select a point in the graphics window
selected_point = -0.0201 - 0.0047i
k = 0.9072
poles = -4.9616
-0.0192 + 0.0041i
-0.0192 - 0.0041i
Listado de archivos de programa validos para esta co-simulacion en
NX8.0 (adjuntos en carpeta zip en correo electrnico)
Assembly2
Motion_2
Solution_1
COSIMULATION_2
SIMULATION_2
SOLUTION_2

Listado de archivos de programa vlidos para esta cosimulacion en
Matlab R2012a ((adjuntos en carpeta zip en correo electrnico)
COSIMULATION_2_SOLUTION_2_plant.m (editor de Matlab que genera el bloque
Motion plant Nx)
COSIMULATION_2_SOLUTION_2_plantIO.m

Anda mungkin juga menyukai