tutorial tutorial_programcc

12
Facultad de Ingeniería Bioingeniería Control de Procesos TUTORIAL PARA EL USO DE PROGRAMCC El software ProgramCC es muy útil cuando se desea estudiar la respuesta de un sistema tanto en el campo temporal como en el frecuencial a partir de su función de transferencia. El siguiente es un tutorial para el manejo de las funciones más usadas del mismo que le permitirán comenzar con el uso de esta poderosa herramienta de simulación. ProgramCC se usa ingresando una serie de comandos en la línea activa de la ventana del software que se abre por defecto al ejecutar el programa. Para poder utilizar cada una de estas funciones a su máximo potencial, se debe concurrir a la ayuda on-line, tutoriales y demos. Esta es sólo una versión abreviada de algunos de esos comandos. Siempre podemos encontrar ayuda adicional tipeando: help nombre_de_la_funcion Ingresando una función de transferencia TODAS las funciones de transferencia en CC requieren un nombre. Por ejemplo, g, o f1 o p2, etc… Las funciones de transferencia pueden ser ingresadas como expresiones algebraicas Para ingresar la siguiente función de transferencia: 10(s+1) g(s) = ----------------- s(s 2 +2s +100) Se necesita tipear: CC>g=10*(s+1)/(s*(s^2+2*s+100)) Luego tipear: CC>g En la pantalla aparecerá: 10(s+1) g(s) = ———— s(s 2 +2s +100) Tutorial para uso de ProgramCC Página 1 de 12

Upload: joserayan

Post on 28-Dec-2015

18 views

Category:

Documents


1 download

DESCRIPTION

El software ProgramCC es muy útil cuando se desea estudiar la respuesta de un sistema tanto en el campo temporal como en el frecuencial a partir de su función de transferencia. El siguiente es un tutorial para el manejo de las funciones más usadas del mismo que le permitirán comenzar con el uso de esta poderosa herramienta de simulación.

TRANSCRIPT

Page 1: Tutorial Tutorial_ProgramCC

Facultad de Ingeniería Bioingeniería Control de Procesos

TUTORIAL PARA EL USO DE PROGRAMCC

El software ProgramCC es muy útil cuando se desea estudiar la respuesta de un

sistema tanto en el campo temporal como en el frecuencial a partir de su función de transferencia. El siguiente es un tutorial para el manejo de las funciones más usadas del mismo que le permitirán comenzar con el uso de esta poderosa herramienta de simulación.

ProgramCC se usa ingresando una serie de comandos en la línea activa de la

ventana del software que se abre por defecto al ejecutar el programa. Para poder utilizar cada una de estas funciones a su máximo potencial, se debe concurrir a la ayuda on-line, tutoriales y demos. Esta es sólo una versión abreviada de algunos de esos comandos.

Siempre podemos encontrar ayuda adicional tipeando:

help nombre_de_la_funcion

Ingresando una función de transferencia TODAS las funciones de transferencia en CC requieren un nombre. Por ejemplo,

g, o f1 o p2, etc…

Las funciones de transferencia pueden ser ingresadas como expresiones algebraicas

Para ingresar la siguiente función de transferencia: 10(s+1) g(s) = ----------------- s(s2 +2s +100) Se necesita tipear: CC>g=10*(s+1)/(s*(s^2+2*s+100)) Luego tipear: CC>g En la pantalla aparecerá: 10(s+1) g(s) = ———— s(s2 +2s +100)

Tutorial para uso de ProgramCC Página 1 de 12

Page 2: Tutorial Tutorial_ProgramCC

Facultad de Ingeniería Bioingeniería Control de Procesos

Ingresando una función de transferencia usando el menú Para ingresar la función de transferencia anterior, tipear: CC>enter La siguiente ventana aparecerá en la pantalla:

Desde esta ventana se pueden ingresar cada uno de los polinomios del numerador y del denominador.

Consejo: La constante (ganancia) necesita ser ingresada como un polinomio de orden cero.

Consejo: Un simple polinomio (no una función de transferencia) puede ser

ingresada escogiendo un denominador igual a 1.

Tutorial para uso de ProgramCC Página 2 de 12

Page 3: Tutorial Tutorial_ProgramCC

Facultad de Ingeniería Bioingeniería Control de Procesos

Un modo alternativo y rápido para ingresar la función de transferencia

La función de transferencia g(s) puede ser re-ingresada con sus coeficientes, para ello, ingresar:

1. El número de polinomios en el numerador. 2. Los polinomios del numerador, empezando por el orden. 3. El número de polinomios del denominador. 4. Los polinomios del numerador, empezando por el orden.

Para ingresar la misma función de transferencia, ingresar: CC>g=enter(2,0,10,1,1,1, 2,1,1,0,2,1,2,100) Y nuevamente, tipear: CC>g La pantalla mostrara: 10(s+1) g(s) = ——————— s(s2 +2s +100) Note que en este caso, tanto el numerador como el denominador tienen dos

polinomios cada uno.

Otros métodos para ingresar la función de transferencia Hay otros modos de ingresar la función de transferencia que son menos usados.

Consulte la ayuda on-line para ver estos métodos.

Mostrando la función de transferencia Como vimos anteriormente, para ver una función de transferencia, solamente

debemos tipear: CC> nombre_de_la_funcion

En forma de polos y ceros En esta forma, la función es mostrada como cociente de polos y ceros. Para

verlo, tipear lo siguiente:

Tutorial para uso de ProgramCC Página 3 de 12

Page 4: Tutorial Tutorial_ProgramCC

Facultad de Ingeniería Bioingeniería Control de Procesos

CC>pzf(g) Y la función será mostrada de la siguiente forma: 10(s+1) g(s) = ——————— s[(s+1) 2+9.952] Cero: s = -1 Polos: s = - 1 ± j 9.95

Polos de la función de transferencia Si solo estamos interesados en encontrar los polos de la función, podemos hacer

esto tipeando: CC>poles(g)

Expansión en fracciones parciales ProgramCC posee también un comando para hallar la expansión en fracciones

parciales de una función de transferencia dada. Para lograrlo, tipear: CC>pfe(g) En pantalla aparecerá la expansión: 0.1 0.1s-9.8 g(s) = ----- - --------------------- s [(s+1)2+9.952]

Transformada inversa de Laplace La transformada inversa de laplace (ilt) de una función de transferencia

cualquiera puede ser hallada fácilmente ingresando el comando: CC>ilt(g) Esto resultara en la siguiente función en el dominio tiempo: g(t) = 0.1 + sin(9.95t-0.1002)*exp(-t) for t >= 0

Tutorial para uso de ProgramCC Página 4 de 12

Page 5: Tutorial Tutorial_ProgramCC

Facultad de Ingeniería Bioingeniería Control de Procesos

Note que comenzar en t ≥ 0 es equivalente a multiplicar la función por el escalón

unitario u(t).

Consejo: el programa no asume ninguna entrada. Si se quiere saber la respuesta

a la función escalón, por ejemplo, se debe multiplicar g(s) por la transformada de laplace del escalón unitario y luego tipear ilt en la línea de comandos.

Diagramas de BODE ProgramCC posee la capacidad de graficar diferentes tipos de gráficas y/o

diagramas (Bode, Nyquist, Nichols, etc.). En esta sección consideraremos el diagrama de bode, abordando luego, en la

siguiente sección, el diagrama de Nyquist. Para obtener detalles de las demás graficas, consultar la ayuda on-line o ver la lista de comandos.

Diagrama de Bode general Considere la siguiente función de transferencia de la cual queremos obtener el

diagrama de bode: 2000 g(s) = ------------------ (s+2)(s+7)(s+16) Ingrese la siguiente sentencia en la línea de comandos del programa: CC>g=2000/((s+2)*(s+7)*(s+16)) Para graficar la respuesta en frecuencia de la función anterior, utilice el comando

BODE: CC>bode(g) El diagrama de bode resultante aparecerá en una nueva ventana y mostrara lo

siguiente:

Tutorial para uso de ProgramCC Página 5 de 12

Page 6: Tutorial Tutorial_ProgramCC

Facultad de Ingeniería Bioingeniería Control de Procesos

En la ventana resultante, se puede mover el cursor sobre el diagrama y una

nueva ventana se abrirá en la parte inferior de ésta con información sobre la posición del cursor. Haciendo doble-click en el diagrama, se abrirá una ventana que nos permitirá fijar ciertos parámetros, agregar etiquetas, títulos, etc.

Para más detalles e información adicional acerca del diagrama de bode, tipear CC>help bode

Robustez y Estabilidad Relativa Para comprobar la robustez y la estabilidad relativa del sistema, utilice el

comando MARGIN tipeando: CC>margin(g) En la pantalla se podrá observar el margen de Fase y ganancia y las frecuencias

dónde se miden como así también el pico de resonancia y la frecuencia de resonancia:

Tutorial para uso de ProgramCC Página 6 de 12

Page 7: Tutorial Tutorial_ProgramCC

Facultad de Ingeniería Bioingeniería Control de Procesos

At w= 9.18 r/s, Phase margin= 19.79 deg, Delay margin= 0.0376 sec At w= 9.76 r/s, Mp= 3.16 (10.00 dB) At w= 12.6 r/s, Gain margin= 1.86 ( 5.40 dB) Para comprobar el valor complejo como así también la magnitud y fase del

sistema a una frecuencia especifica, tipear: CC>point(g,1) En la pantalla se podrá observar: At s = 0 + 1j g(s) = 6.195 - 4.887j Magnitude = 7.890 (17.94 dB) Phase = -38.27 deg

Diagrama de Nyquist Al igual que con el diagrama de BODE, ProgramCC tiene la capacidad de

graficar el diagrama de nyquist. Siguiendo con la misma función de transferencia para la cual obtuvimos el bode,

tipear: CC> nyquist(g) El diagrama de nyquist resultante aparecerá en una nueva ventana y mostrara lo

siguiente:

Tutorial para uso de ProgramCC Página 7 de 12

Page 8: Tutorial Tutorial_ProgramCC

Facultad de Ingeniería Bioingeniería Control de Procesos

Al igual que para bode, en la ventana resultante, se puede mover el cursor sobre

el diagrama y una nueva ventana se abrirá en la parte inferior de ésta con información sobre la posición del cursor.

Haciendo doble-click en el diagrama, se abrirá una ventana que nos permitirá fijar ciertos parámetros, agregar etiquetas, títulos, etc.

Clickeando con el botón derecho sobre el diagrama se podrá seleccionar la opción para mostrarlo en coordenadas polares.

Para más detalles e información adicional acerca del diagrama de nyquist, tipear:

CC>help nyquist

Gráficas temporales La función time grafica la respuesta temporal al escalón unitario. Por ejemplo,

para hallar la respuesta temporal de: s-5 g(s) = ———— s2 +3s +2 Primero, debemos ingresar la función: CC>g=(s-5)/(s^2+3*s+2) Seguido de: CC>time(g) Seguidamente, aparecerá una nueva ventana con la gráfica de la respuesta

temporal:

Tutorial para uso de ProgramCC Página 8 de 12

Page 9: Tutorial Tutorial_ProgramCC

Facultad de Ingeniería Bioingeniería Control de Procesos

Aquí también, haciendo doble-click en la gráfica, se abrirá una ventana que nos permitirá fijar ciertos parámetros, agregar etiquetas, títulos, etc.

Una alternativa para llegar a esto, es tipeando: CC>time La siguiente ventana de

diálogo aparecerá: Esta ventana, nos dará más flexibilidad en la elección de los parámetros. El

cuadro de dialogo puede ampliarse clickeando en el botón more. Esto nos permitirá colocar etiquetas, colores de las gráficas, títulos, etc.

También se puede graficar la respuesta temporal de diferentes funciones, separándolas por comas en el cuadro tf. Se pueden ingresar, además, funciones algebraicas en este casillero.

Por ejemplo, para graficar la respuesta al escalón unitario de dos funciones: g1(s) y g12(s), procederemos primeramente con:

CC>time Y completaremos el cuadro como se muestra en la página siguiente:

Tutorial para uso de ProgramCC Página 9 de 12

Page 10: Tutorial Tutorial_ProgramCC

Facultad de Ingeniería Bioingeniería Control de Procesos

La salida mostrará ambas respuestas:

MPORTANTE! Recordar que el comando time grafica la respuesta al escalón unitario

ProgramCC no cierra el bucl

eamos el siguiente ejemplo, donde pretendemos obtener la respuesta de un sistema

Primeramente, ingresamos la función de transferencia:

CC>g=10/(s+1)

¡I, por lo tanto, multiplica automáticamente la función de transferencia por 1/s.

Tener esto presente al momento de buscar diferentes respuestas. Otra aclaración de sumo interés para nuestros fines, es que

e para obtener la respuesta temporal de un sistema. V G(s) que trabaja un lazo cerrado de control con realimentación unitaria y

negativo. Suponer que la consigna o referencia x(t) es una entrada rampa unitaria:

X(s) +

-

Y(s)

Tutorial para uso de ProgramCC Página 10 de 12

Page 11: Tutorial Tutorial_ProgramCC

Facultad de Ingeniería Bioingeniería Control de Procesos

Ahora bien, para hallar la respuesta temporal de este mismo sistema a bucle

ara lo cual ingresaremos la siguiente línea:

CC>f=g/(1+g)

CC>f

uego debemos multiplicar a f(s) por 1/s, recordando que al ejecutar el comando time,

Ahora sí, para hallar la respuesta deseada, debemos ingresar:

CC>time(f*(1/s))

Y el software abrirá una nueva ventana con la siguiente gráfica:

cerrado, debemos prestar especial atención al hecho de que la función de transferencia de interés pasará a ser:

P

LProgramCC automáticamente multiplica a la función por 1/s. De esta forma generamos que la entrada sea una rampa de pendiente unitaria cuya transformada de Laplace es 1/s2. Por lo antes expuesto hay que hacer un paso intermedio, que no necesariamente se debe realizarse en una línea separada, sino que puede ser incluido en el mismo comando time:

Tutorial para uso de ProgramCC Página 11 de 12

Page 12: Tutorial Tutorial_ProgramCC

Facultad de Ingeniería Bioingeniería Control de Procesos

Funciones adicionales Este tutorial ha explorado algunas de los comandos que serán utilizados

comúnmente. La lista completa de comandos y funciones que se pueden realizar con ProgramCC se encuentra en:

http://www.programcc.com/pdf/PCC_command_list.PDF

Tutorial para uso de ProgramCC Página 12 de 12