Capı́tulo 3 Una introducción al control clásico 3.1. Identificación de sistemas Como se dijo en el capı́tulo anterior se puede pensar en un sistema como un dispositivo que recibe entradas y produce salidas. Generalmente se puede modelizar la relación entre la salida y la entrada del sistema mediante una función matemática, ası́ que supondremos yptq “ f puptqq, donde uptq representa la entrada e yptq la salida siendo t la variable temporal. Introducimos ahora terminologı́a relativa a los sistemas. Tiempo inicial: Instante antes del cual no hay entradas: t0 . Causalidad: Si para cada t, la salida en el instante t, yptq, sólo depende de la entrada hasta dicho instante: upsq s P rt0 , ts. Invarianza en el tiempo: La relación entre las entrada y salida es la misma @t ě t0 : y1 ptq “ f pu1 ptqq, y2 ptq “ f pu2 ptqq, u2 ptq “ u1 pt ` τ q ñ y2 ptq “ y1 pt ` τ q. 35 36 Una introducción al control clásico Linealidad o superposición: y “ f puq lineal si @u1 , u2 , @a1 , a2 constantes, f pa1 u1 ` a2 u2 q “ a1 f pu1 q ` a2 f pu2 q “ a1 y1 ` a2 y2 . Sistemas LTI: Sistemas lineales e invariantes en el tiempo. Sistemas agrupados (lumped ) vs. distribuidos: según que el número de posibles estados sea finito o infinito. Sistemas SISO vs. MIMO: Single Input-Single Output o Multiple InputsMultiple Outputs. Sistemas de tiempo continuo: Acepta entradas y produce salidas definidas para t P R. Sistemas de tiempo discreto: Acepta entradas y produce salidas definidas para t P Z. Función de Transferencia: Para sistemas LTI descritos por ecuaciones diferenciales ordinarias (ODE), es el cociente entre la transformada de Laplace de la salida y la de la entrada con condición inicial igual a 0. 3.2. La transformada de Laplace αt Sea f ptq una ż función real que satisface |f ptq| ď M e para algún α, M P R, M ą 0. La integral 8 0 e´st f ptqdt está definida para todo s P C tal que Re s ą α, donde 3.2 La transformada de Laplace 37 Re s representa la parte real del número complejo s. Se define la transformada de Laplace (por un lado) de f , y se denota por fp o por Lpf q, como ż8 p f psq “ Lpf qpsq “ e´st f ptqdt. 0 El comando de MATLAB (Symbolic Toolbox) para calcular la transformada de Laplace de una función es laplace. Escribimos aquı́ algunas propiedades de la transformada de Laplace. (i) Lpf ` gq “ Lpf q ` Lpgq (ii) Lpf9q “ sLpf q ´ f p0q (iii) Lphq “ Lpf qLpgq si y sólo si hptq “ żt 0 f pτ qgpt ´ τ qdτ (iv) fppsq Ñ 0 para Re s Ñ 8. A la función hptq del apartado (iii) se le llama convolución de f y g, y se suele denotar de la siguiente forma: żt pg ˚ f qptq “ gpt ´ τ qf pτ qdτ. 0 Ahora bien, mediante el cambio de variable t ´ τ “ s, es fácil ver que żt żt gpt ´ τ qf pτ qdτ “ f pt ´ sqgpsqds. 0 0 żt żt Por consiguiente pg ˚ f qptq “ 0 gpt ´ τ qf pτ qdτ “ 0 f pt ´ τ qgpτ qdτ “ pf ˚ gqptq. (3.1) En otras palabras, la convolución es conmutativa. La transformada de Laplace convierte una ecuación diferencial en el dominio del tiempo (t P R` ) en una ecuación algebraica en el dominio s P C (Re s ą α). Se puede resolver la ecuación algebraica en el dominio s y obtener la solución de la ecuación diferencial en el dominio t mediante la inversa de la transformada de Laplace. La transformada inversa de Laplace de fppsq es 1 f ptq “ L pfpqpsq “ 2πi ´1 ż β`i8 β´i8 est fppsqds 38 Una introducción al control clásico donde β es una constante real tal que β ą α. El comando de MATLAB (Symbolic Toolbox) para calcular la transformada inversa de Laplace es ilaplace. 3.3. Función de transferencia y convolución Sea un sistema descrito por la siguiente ecuación diferencial lineal e invariante en el tiempo an y pnq ` an´1 y pn´1q ` ¨ ¨ ¨ ` a1 y9 ` a0 y “ bm upmq ` bm´1 upm´1q ` ¨ ¨ ¨ ` b1 u9 ` b0 u con n ě m. Su función de transferencia se define como el cociente entre la transformada de Laplace de la salida (función de respuesta) y la transformada de Laplace de la entrada (función de excitación) supuesto que todas las condiciones iniciales son cero, es decir, supuesto el sistema en reposo en t0 “ 0. Ası́, la función de transferencia es: ˇ bm sm ` bm´1 sm´1 ` ¨ ¨ ¨ ` b1 s ` b0 yppsq Lpsalidaq ˇˇ “ “ . gppsq “ ppsq Lpentradaq ˇcondiciones iniciales cero u an sn ` an´1 sn´1 ` ¨ ¨ ¨ ` a1 s ` a0 Por lo tanto, yppsq “ gppsqp upsq. Si se tiene en cuenta que una relación entre una salida y una entrada representa una ganancia, una función de transferencia se puede ver como una función de ganancia. u ppsq gppsq yppsq Puesto que yppsq “ gppsqp upsq, por la propiedad (iii), la función de salida yptq es la convolución de uptq y gptq. Es decir (véase (3.1)): żt żt yptq “ pg ˚ uqptq “ upτ qgpt ´ τ qdτ “ gpτ qupt ´ τ qdτ , 0 0 donde tanto gptq como uptq son cero para t ă 0. La función yptq es la respuesta del sistema a la entrada uptq. Ejemplo 3.1 Sea un sistema cuya función de transferencia es gppsq “ ¿Cuál es la respuesta del sistema a una entrada uptq? s2 s`2 . ` 4s ` 3 3.4 Funciones de entrada básicas 39 s`2 en fracciones simples es s2 ` 4s ` 3 s`2 A B “ ` . 2 s ` 4s ` 3 s`1 s`3 Ası́, s ` 2 “ Aps ` 3q ` Bps ` 1q. Cuando s “ ´3 obtenemos ´1 “ Bp´2q, con lo que B “ 1{2 y cuando s “ ´1 obtenemos 1 “ 2A, con lo que A “ 1{2. Por lo 1{2 1{2 tanto, gppsq “ ` . Utilizando las tablas de las transformadas de Laplace, s`1 s`3 gptq “ 1{2pe´t ` e´3t q y, por la propiedad (iii), żt yptq “ 1{2pe´τ ` e´3τ qupt ´ τ qdτ . El desarrollo de 0 3.4. Funciones de entrada básicas La función de transferencia de un sistema es un modelo matemático que relaciona la variable de salida con la variable de entrada. Conocida la función de transferencia se suele estudiar la salida o respuesta para varias formas de entrada, con la intención de conocer la naturaleza del sistema. Las funciones de entrada más habituales son: salto unidad (o función de Heaviside), rampa unidad y, sobre todo, impulso unidad (o delta de Dirac). Las dos primeras se definen de la siguiente forma: Función salto unidad en a P R` : γa ptq :“ no estando definida en t “ a. " 0, t ă a 1, t ą a Función rampa unidad en a P R` : $ tăa & 0, pt ´ aq{T, a ď t ď a ` T . rT,a ptq :“ % 1, tąa`T El caso de la delta de Dirac es un poco más delicado. En una primera aproximación intuitiva se puede pensar en ella como una “función” que es cero en todos los puntos de la recta real excepto en uno de ellos, digamos a, en el que vale infinito: " 0, t‰a (3.2) δa ptq :“ `8, t “ a, 40 Una introducción al control clásico Figura 3.1: Arrriba: gráficas de las funciones rampa y salto unidad. Abajo: gráfica de la derivada de la función rampa e idealización de la función impulso unidad. Todo ello con a“0 y que satisface la condición ż `8 ´8 δa ptqdt “ 1. (3.3) Estamos poniendo “función” (entre comillas) porque, en realidad, no hay ninguna función definida en la recta real en el sentido tradicional que cumpla las dos propiedades (3.2) y (3.3) simultáneamente. A pesar de ello, abusando del lenguaje, se suele hablar de ella como la función delta de Dirac o la función impulso unidad. Ahora bien, la función delta de Dirac puede ser rigurosamente definida como una medida o una distribución. Un estudio detallado de los conceptos involucrados está fuera del alcance de este curso, pero haciendo uso elemental de la teorı́a de distribuciones podemos fijar algunas ideas que nos permiten manejar la delta de Dirac con el suficiente rigor. En la Figura 3.1 se presentan las gráficas de las funciones rampa unidad, salto unidad, derivada de la función rampa y una idealización de la función impulso unidad que pretende dar una idea de lo que serı́a una “función” que cumple (3.2) y (3.3). Observamos que la derivada de la función rampa es $ ’ & 0, t ă a 1 dT,a ptq :“ r9T,a ptq “ , aătăa`T ’ % T 0, t ą a ` T (3.4) no estando propiamente definida en a y a ` T . Se trata de una función acotada en forma de escalera con un número finito de discontinuidades y que es, por lo tanto, 3.4 Funciones de entrada básicas 41 integrable en el sentido de Riemann. De hecho, podemos escribir 1 pγa ptq ´ γa`T ptqq , T dT,a ptq “ t P R, o, teniendo en cuenta que γa ptq “ γ0 pt ´ aq y que habitualmente se suele escribir γ0 “ γ, dT,a ptq “ 1 pγpt ´ aq ´ γpt ´ a ´ T qq “ dT,0 pt ´ aq “: dT pt ´ aq, T t P R. (3.5) Es claro además que, siempre que T ą 0 y ra, a ` T s Ď r´b, bs (incluyendo b “ 8), żb dT,a ptqdt “ 1. ´b Tanto las representaciones gráficas de la Figura 3.1 como las ideas que acabamos de desarrollar pueden hacernos pensar que la función impulso unidad es el lı́mite de la derivada de la función rampa cuando T Ñ 0. Es fácil comprobar, sin embargo, que para cada t P Rztau, dT,a ptq Ñ 0 puntualmente y que dT,a paq diverge cuando T Ñ 0; pero que la convergencia no es uniforme. A pesar de ello, la delta de Dirac se puede definir rigurosamente de forma que la idea intuitiva lı́m dT,a ptq “ δa ptq, T Ñ0 tPR tenga sentido (véase el Apéndice A). En lo que sigue pensaremos intuitivamente en la delta de Dirac como si fuera el lı́mite de la derivada de la función rampa cuando T Ñ 0 y haremos uso de las siguientes propiedades que se demuestran de forma rigurosa en el Apéndice A: ż `8 ż `8 f puqδpt ´ uqdu “ f pt ´ uqδpuqdu “ f ptq, t P R, (3.6) y ´8 ´8 γ 1 ptq “ δptq, t P R. (3.7) Con estas propiedades en nuestras manos veamos ahora cuál es la respuesta de un sistema al impulso unidad δptq. La transformada de Laplace de δptq es 1. En efecto, usando (3.6) con t “ 0 y f ptq “ est tenemos ż8 ż8 ´su p δpsq “ e δpuqdu “ esp0´uq δpuqdu “ es¨0 “ 1. 0 0 Por lo tanto, si la función de transferencia de un sistema es gppsq, la transformada de Laplace de la función de respuesta al impulso unidad es la misma gppsq: p “ gppsq. yppsq “ gppsqδpsq 42 Una introducción al control clásico Ası́, yptq “ gptq, de modo que gptq se puede interpretar como la respuesta de un sistema lineal invariante en el tiempo a una entrada impulso unidad cuando las condiciones iniciales son cero. La transformada de Laplace de esta función es la función de transferencia del sistema. Es posible obtener la información completa sobre las caracterı́sticas dinámicas de un sistema si se excita con una entrada impulso y se mide la respuesta (en la práctica, una entrada pulso de duración muy corta respeto al tiempo significativo del sistema se considera un impulso). Veamos ahora la respuesta de un sistema al salto unidad. La transformada de Laplace de γptq es 1{s (ver tabla, calcular directamente o usar (3.7)). Por lo tanto, si la función de transferencia de un sistema es gppsq, la función de respuesta al salto 1 unidad es yppsq “ gppsq . Por la propiedad (iii) de la transformada de Laplace, la s respuesta al salto unidad es yptq “ 3.5. żt 0 gpτ qγpt ´ τ qdτ “ żt 0 gpτ qdτ. (3.8) Función de transferencia para un sistema mecánico Recordemos que para el siguiente sistema mecánico rotacional la ecuación diferencial que describe su dinámica es : ` B θptq 9 ` Kθptq “ T ptq. J θptq (3.9) Supongamos que inicialmente este sistema está relajado o en reposo, es decir, que en t0 “ 0 las condiciones iniciales son cero. Por definición, su función de transferencia es p θpsq 1 1{J gppsq “ “ 2 “ 2 . Js ` Bs ` K s ` B{Js ` K{J Tppsq Ası́, 3.5 Función de transferencia para un sistema mecánico Tppsq 1{J 2 s ` B{Js ` K{J 43 p θpsq Si la variable de entrada es un par salto unidad T ptq “ 1,0γptqN¨m y los valores de J, B y K son J “ 0,5 Kgr¨m2 , B “ 2,0 N¨m¨s{rad., K “ 1,5 N¨m{rad. entonces p “ θpsq s2 1{J 2 2{3 1 1{3 Tppsq “ 2 “ ´ ` . ` B{Js ` K{J ps ` 4s ` 3qs s s`1 s`3 Aplicando la transformada inversa de Laplace (ver tabla) ˆ ˙ 2 1 ´3t ´t θptq “ ´e ` e γptq, 3 3 o lo que es lo mismo, 2 1 ´ e´t ` e´3t , t ą 0. 3 3 También se podı́a haber obtenido θptq calculando gptq y aplicando (3.8): θptq “ gppsq “ s2 2 1 1 1{J “ 2 “ ´ . ` B{Js ` K{J s ` 4s ` 3 s`1 s`3 Aplicando la transformada inversa de Laplace (ver tabla) gptq “ pe´t ´ e´3t qγptq o gptq “ pe´t ´ e´3t q, tą0 y aplicando (3.8) żt żt 2 1 θptq “ gpτ qdτ “ pe´τ ´ e´3τ qdτ “ ´ e´t ` e´3t , 3 3 0 0 t ą 0. Esta función θptq es la respuesta del sistema a una entrada T ptq “ 1,0γptqN¨m para los valores de J, B y K anteriormente mencionados. Esto quiere decir que θptq es la solución de (3.9) para esos valores con condiciones iniciales cero (es decir, θp0q “ 0 9 y θp0q “ 0). Por otra parte, nótese que conocida la función de transferencia de un sistema, se puede recuperar la ecuación diferencial. Sabemos que Multiplicando en cruz gppsq “ p θpsq 1 “ 2 . Js ` Bs ` K Tppsq p Tppsq “ pJs2 ` Bs ` Kqθpsq. 44 Una introducción al control clásico La función de transferencia describe un sistema inicialmente relajado, con lo que aplicando la transformada inversa de Laplace a ambos lados de la ecuación se obtiene la ecuación diferencial del sistema (3.9). Supongamos ahora que las condiciones iniciales en t0 “ 0 no son cero. Realizando la transformada de Laplace a ambos lados de la ecuación (3.9) se obtiene p ´ J θp0q 9 ´ pJs ` Bqθp0q Tppsq “ pJs2 ` Bs ` Kqθpsq 9 ` pJs ` Bqθp0q J θp0q Tppsq ` “ Js2 ` Bs ` K Js2 ` Bs ` K ´ ´ ¯¯ 1{J 9 ` pJs ` Bqθp0q Tppsq ` J θp0q . 2 s ` B{Js ` K{J p “ θpsq 9 ` pJs ` Bqθp0q puede verse como una excitación adicional: J θp0q Tppsq 3.6. 9 J θp0q ` pJs ` Bqθp0q ` ` 1{J 2 s ` B{Js ` K{J p θpsq Función de transferencia para un circuito eléctrico Considérese el circuito eléctrico de la figura en el que la entrada es vptq y la salida iptq. Supongamos que está inicialmente (t0 “ 0) en reposo. La ecuación diferencial correspondiente es 1 : ` RQptq 9 9 ` Riptq ` 1 vptq ` Kiptq “ LQptq ` Qptq “ Liptq C C żt 0 ipτ qdτ. Aplicando la transformada de Laplace 1p vppsq ` Kpipsq “ sLpipsq ` Rpipsq ` ipsq “ Cs ˆ ˙ 1 p sL ` R ` ipsq. Cs 3.7 Diagramas de bloques 45 Por lo tanto, la función de transferencia es gppsq “ pipsq 1 “ vppsq sL ` pR ´ Kq ` 1 Cs “ s2 ` 1 s L R´K s L ` 1 LC El primer diagrama corresponde a la primera expresión de la función de transferencia mientras que el segundo corresponde a la segunda expresión. v ppsq 1s L 1 s2 ` R´K s ` LC L p ipsq v ppsq ` ` v ppsq ` Kp ipsq 1 1 sL ` R ` sC p ipsq K 3.7. Diagramas de bloques Un diagrama de bloques de un sistema es una representación gráfica de las funciones que lleva a cabo cada componente del sistema y el flujo de señales. Un bloque es un sı́mbolo para representar una operación matemática que se hace sobre la señal de entrada del bloque para producir la salida. Las flechas indican el flujo de las señales. La punta de flecha que llega al bloque indica la entrada y la punta de flecha que se aleja del bloque representa la salida. Un punto de suma, representado por un cı́rculo con una cruz con un signo más o menos en cada punta de flecha, indica si la señal debe sumarse o restarse. Un punto de bifurcación o ramificación es aquél a partir del cual la señal va de modo concurrente a otros bloques o puntos de suma. Cualquier sistema de control lineal puede representarse mediante un diagrama de bloques formado por bloques, puntos de suma y puntos de bifurcación. La figura siguiente muestra un diagrama de bloques de un sistema en lazo cerrado. La salida Cpsq se obtiene multiplicando la función de transferencia Gpsq por la entrada Epsq. La salida Cpsq realimenta el sistema en el punto de suma, donde la 46 Una introducción al control clásico referencia Rpsq se compara con la salida. Para obtener la función de transferencia del sistema en lazo cerrado Cpsq “ GpsqEpsq, Epsq “ Rpsq ´ Cpsq ñ Epsq “ Rpsq ´ GpsqEpsq ñ Rpsq Cpsq“GpsqEpsq Gpsq Epsqp1 ` Gpsqq “ Rpsq ñ Epsq “ ñ Cpsq “ Rpsq. 1 ` Gpsq 1 ` Gpsq Por lo tanto, la función de transferencia del sistema en lazo cerrado es Gpsq . 1 ` Gpsq Cuando la salida realimenta en el punto de suma para compararse con la entrada puede ser necesario convertir la forma de la señal de salida en la forma de la señal de entrada. Por ejemplo, en un sistema de control de temperatura la señal de salida es la temperatura controlada. Puede ser necesario convertir esta salida en fuerza, posición o voltaje antes de que pueda compararse con la señal de entrada. Esta conversión se consigue mediante el elemento de realimentación cuya función de transferencia es Hpsq (ver la siguiente figura). En la mayor parte de los casos el elemento de realimentación es un sensor que mide la salida. La salida del sensor se compara con la entrada y se genera una señal de error. La salida Cpsq y la entrada Rpsq se relacionan del modo siguiente Cpsq “ GpsqEpsq, Bpsq “ HpsqCpsq, Epsq “ Rpsq ´ Bpsq ñ Epsq “ Rpsq ´ HpsqCpsq “ Rpsq ´ HpsqGpsqEpsq ñ Cpsq“GpsqEpsq Rpsq Gpsq Epsq “ ñ ñ Cpsq “ Rpsq. 1 ` HpsqGpsq 1 ` HpsqGpsq Ası́, la función de transferencia de este sistema en lazo cerrado es Gpsq . 1 ` HpsqGpsq Estudiemos ahora las funciones de transferencia para bloques conectados en serie o cascada, en paralelo, en lazo cerrado y con perturbaciones. Sistemas en serie o cascada: Cpsq “ G2 psqG1 psqRpsq El comando de MATLAB (Symbolic Toolbox) es series. Sistemas en paralelo: 3.7 Diagramas de bloques 47 Cpsq “ pG1 psq ` G2 psqqRpsq El comando de MATLAB (Symbolic Toolbox) es parallel. Sistema realimentado o en lazo cerrado: Cpsq “ G1 psq Rpsq 1 ` G2 psqG1 psq El comando de MATLAB (Symbolic Toolbox) es feedback. Sistema con perturbaciones: Cuando se presentan varias entradas en un sistema lineal (por ejemplo, la entrada de referencia y una perturbación), cada una de ellas puede tratarse de forma independiente. La salida total será la suma de las salidas correspondientes a cada entrada. Por ejemplo, el siguiente diagrama muestra un sistema en lazo cerrado con una perturbación. Al examinar el efecto de la perturbación Dpsq, podemos suponer que el sistema está inicialmente relajado, con una entrada cero. Ası́, Apsq “ 0 ´ HpsqCD psq, Bpsq “ G1 psqApsq, Epsq “ Bpsq ` Dpsq, CD psq “ G2 psqEpsq ñ CD psq “ G2 psqpBpsq ` Dpsqq “ G2 psqpG1 psqApsq ` Dpsqq “ G2 psqpG1 psqp´HpsqCD psqq ` Dps CD psq “ G2 psq Dpsq. 1 ` G2 psqG1 psqHpsq 48 Una introducción al control clásico Por otra parte, si se considera la respuesta a la entrada Rpsq, se puede suponer que la perturbación es cero. Ası́, Apsq “ Rpsq ´ HpsqCR psq, Bpsq “ G1 psqApsq, Epsq “ Bpsq, CR psq “ G2 psqEpsq ñ CR psq “ G2 psqBpsq “ G2 psqG1 psqApsq “ G2 psqG1 psqpRpsq ´ HpsqCR psqq ñ CR psq “ Por lo tanto, Cpsq “ CD psq ` CR psq “ G2 psqG1 psq Rpsq. 1 ` G2 psqG1 psqHpsq G2 psq pDpsq ` G1 psqRpsqq . 1 ` G2 psqG1 psqHpsq También se podı́a haber deducido la respuesta simultánea directamente Apsq “ Rpsq ´ HpsqCpsq, Bpsq “ G1 psqApsq, Epsq “ Bpsq ` Dpsq, Cpsq “ G2 psqEpsq ñ Cpsq “ G2 psqpBpsq ` Dpsqq “ G2 psqpG1 psqApsq ` Dpsqq “ G2 psqpG1 psqpRpsq ´ HpsqCpsqq ` Dpsqq ñ Cpsq “ G2 psq pDpsq ` G1 psqRpsqq . 1 ` G2 psqG1 psqHpsq Los diagramas de bloques se pueden reducir mediante reordenamientos y sustituciones a costa de que las funciones de transferencia de los bloques nuevos se hagan más complicadas. Ejemplo 3.2 Considérese el sistema que aparece representado mediante un diagrama de bloques en la siguiente figura. Queremos simplificarlo. Para ello, si se mueve el punto de suma del lazo de realimentación negativa que contiene H2 hacia afuera del lazo de realimentación positiva que contiene H1 , se obtiene la siguiente figura. 3.8 Motores de corriente continua 49 Ahora se puede eliminar el lazo de realimentación de H1 (el lazo de realimentación positiva da lugar a un término negativo en el denominador). El diagrama queda Ahora se elimina el lazo de realimentación de H2 {G1 . Por último, se elemina el lazo de realimentación. Obsérvese que el numerador de la función de transferencia Cpsq{Rpsq es el producto de las funciones de transferencia en el camino directo. El denominador es igual a ÿ 1 ` (producto de las funciones de transferencia alrededor de cada lazo) “ 1 ` p´G1 G2 H1 ` G2 G3 H2 ` G1 G2 G3 q “ 1 ´ G1 G2 H1 ` G2 G3 H2 ` G1 G2 G3 . 3.8. Motores de corriente continua Un dispositivo que se emplea normalmente como actuador en sistemas de control electromecánicos es el motor de corriente continua de imán permanente controlado por inducido. Para información sobre su diseño y funcionamiento se puede visitar [22]. El motor de corriente continua (denominado también motor de corriente directa, motor CC o motor DC) es una máquina que convierte la energı́a eléctrica en mecánica, provocando un movimiento rotatorio, gracias a la acción que se genera del campo magnético. Tal y como se muestra en la siguiente figura la tensión de control va se aplica al circuito del inducido que tiene un resistencia Ra , una inductancia La y una fuente de tensión dependiente. 50 Una introducción al control clásico Como por los conductores del inducido está circulando una corriente eléctrica en presencia de un campo magnético, se desarrolla un par Td (en dirección perpendicular) que es proporcional a la corriente y a la intensidad del campo magnético. La intensidad del campo magnético es constante y ası́ el par de entrada en el motor es Td ptq “ Kt ia ptq. Si el par produce movimiento se genera una tensión en el circuito vb que es proporcional a la velocidad angular del motor ω y a la intensidad del campo magnético (fuerza contraelectromotriz) y en dirección opuesta a la corriente. La relación entre la fuerza contraelectromotriz y la velocidad angular es vb ptq “ Kb ωptq. Ası́, la ecuación para el circuito es va ptq ´ vb ptq “ La i9a ptq ` Ra ia ptq y la ecuación de la dinámica del motor es 9 ` Bωptq “ Td ptq. J ωptq Por lo tanto, Tpd psq vpb psq pia psq vpa psq ´ vpb psq p psq ω p Td psq “ Ktpia psq p psq “ Kb ω s{La 1 “ 2 “ s ` sRa {La sLa ` Ra 1 “ . sJ ` B Podemos construir el siguiente diagrama de bloques v pa psq ` ´ 1 sLa ` Ra p ia psq Kt Tpd psq 1 sJ ` B ωpsq p Kb La función de transferencia entre la velocidad angular del motor y el voltaje de entrada es wpsq p Kt “ . 2 vpa psq La Js ` pRa J ` La Bqs ` pRa B ` Kt Kb q 3.9 Función de transferencia con MATLAB 3.9. 51 Función de transferencia con MATLAB Recuérdese que si un sistema está descrito por la siguiente ecuación diferencial lineal e invariante en el tiempo an y pnq ` an´1 y pn´1q ` ¨ ¨ ¨ ` a1 y9 ` a0 y “ bm upmq ` bm´1 upm´1q ` ¨ ¨ ¨ ` b1 u9 ` b0 u pn ě mq su función de transferencia se define como el cociente entre la transformada de Laplace de la salida (función de respuesta) y la transformada de Laplace de la entrada (función de excitación) supuesto que todas las condiciones iniciales son cero, es decir, supuesto el sistema en reposo en t0 “ 0. Ası́, la función de transferencia es: gppsq “ yppsq bm sm ` bm´1 sm´1 ` ¨ ¨ ¨ ` b1 s ` b0 “ . u ppsq an sn ` an´1 sn´1 ` ¨ ¨ ¨ ` a1 s ` a0 La función de transferencia es un cociente de polinomios en que el grado del numerador es menor o igual que el grado del denominador, es decir, es una función racional ppsq pueden tener factores comunes. Cancelando sus propia. Los polinomios yppsq y u factores comunes se obtienen dos polinomios ppsq y qpsq que son primos entre sı́ y ppsq ppsq yppsq . La función racional es ahora una función ra“ tales que gppsq “ ppsq qpsq qpsq u cional irreducible. Se definen los ceros de gppsq como las raı́ces en C (el cuerpo de los números complejos) de ppsq y los polos de gppsq como las raı́ces en C de qpsq. Supongamos que ppsq “ bps ´ z1 q ¨ ¨ ¨ ps ´ zt q y qpsq “ aps ´ p1 q ¨ ¨ ¨ ps ´ pv q. Por lo tanto, los ceros de gppsq son z1 , . . . , zt y sus polos son p1 , . . . , pv . Obsérvese que puede haber tanto ceros repetidos como polos repetidos pero, sin embargo, un número no b puede ser cero y polo a la vez. Por otra parte, se llama ganancia de gppsq a . Ası́, a una función de transferencia se puede escribir como su ganancia por el cociente de dos polinomios mónicos irreducibles (un polinomio se dice mónico si el coeficiente de su monomio de mayor grado es 1). Veamos ahora algunos comandos del Control System Toolbox de MATLAB relacionados con la función de transferencia. En particular, vamos a obtener los ceros y polos. El comando printsys(num,den) devuelve la fracción con el polinomio num en el numerador y el polinomio den en el denominador. Por ejemplo, >> num=[0 5 20]; den=[1 4 20]; >> printsys(num,den) num/den = 5 s + 20 -------------s^2 + 4 s + 20 52 Una introducción al control clásico Para realizar el desarrollo en fracciones simples de un cociente de polinomios (en el plano complejo) se puede utilizar el comando [r,p,k]=residue(num,den) que devuelve en r los coeficientes de las fracciones simples, en p las raı́ces de los respectivos denominadores y en k la parte polinomial. Es decir, r1 r2 rt num “k` ` ` ¨¨¨ ` . den s ´ p1 s ´ p2 s ´ pt Por ejemplo, >> num=[16 16]; den=[1 6 8 0]; >> [r,p,k]=residue(num,den) r = p = -6 -4 4 -2 2 0 k= [] 6 4 2 16s ` 16 “0´ ` ` . 2 ` 6s ` 8s s`4 s`2 s El comando [z,p,k]=tf2zp(num,den) devuelve las raı́ces del polinomio del numerador (en z), las raı́ces del polinomio del denominador (en p) y la ganancia (en k). Por ejemplo, Es decir, s3 >> num=[3 0 -3]; >> den=[5 0 -15 10]; >> [z,p,k]=tf2zp(num,den) z = -1 1 p = -2.0000 1.0000 1.0000 k = 0.6000 Nótese que 1 es tanto raı́z del numerador como del denominador. Esto implica que los 3s2 ´ 3 tienen a s ´ 1 como polinomios del numerador y del denominador de 3 5s ´ 15s ` 10 factor común y, por lo tanto, no son coprimos. Recuérdese que los ceros y polos de una función de transferencia son las raı́ces del numerador y del denominador, respectivamente, cuando son coprimos. Ası́, para obtener los ceros y polos de la 3.9 Función de transferencia con MATLAB 53 3s2 ´ 3 hay que prescindir de un 1 en z y de un 1 en 5s3 ´ 15s ` 10 3s2 ´ 3 p. En consecuencia, -1 es el único cero de la función de transferencia 3 5s ´ 15s ` 10 y sus polos son -2 y 1. función de transferencia El comando [n,d]=zp2tf(z,p,k) hace lo opuesto, es decir, dados unos valores en z, otros valores en p y un valor en k, devuelve un polinomio en n cuyas raı́ces son los valores en z y cuyo coeficiente principal es k y otro polinomio en d que es mónico y cuyas raı́ces son los valores en p. Sin embargo, H=zpk(z,p,k) devuelve la función racional, cociente de esos dos polinomios. Para z, p y k del ejemplo anterior >> [n,d]=zp2tf(z,p,k) n = 0 0.6000 0 d = 1.0000 0.0000 -3.0000 >> H=zpk(z,p,k) H = -0.6000 0.6 (s+1) (s-1) --------------2.0000 (s+2) (s-1)^2 Continuous-time zero/... Los comandos series, parallel y feedback se usan para calcular las funciones de transferencia de dos sistemas conectados en serie, paralelo o mediante un feedback, respectivamente. Los tres tienen la misma sintaxis: [num,den]=comando(num1,den1,num2,den2) donde comando= series o parallel o feedback. Este último admite un parámetro adicional según se quiera una realimentación positiva +1 o negativa -1 (por defecto). Por ejemplo, >> num1=[10]; >> den1=[1 2 10]; >> num2=[0 5]; >> den2=[1 5]; >> [num,den]=series(num1,den1,num2,den2); >> printsys(num,den) num/den = 50 ----------------------s^3 + 7 s^2 + 20 s + 50 >> [num,den]=parallel(num1,den1,num2,den2); >> printsys(num,den) num/den = 54 Una introducción al control clásico 5 s^2 + 20 s + 100 ----------------------s^3 + 7 s^2 + 20 s + 50 >> [num,den]=feedback(num1,den1,num2,den2); >> printsys(num,den) num/den = 10 s + 50 -----------------------s^3 + 7 s^2 + 20 s + 100 El comando tf devuelve la función de transferencia. El comando feedback también se puede usar con funciones de transferencia propiamente. >> G=tf(num1,den1) G = 10 -------------s^2 + 2 s + 10 Continuous-time transfer function. >> H=tf(num2,den2) H = 5 ----s + 5 Continuous-time transfer function. >> Cloop=feedback(G,H) Cloop = 10 s + 50 -----------------------s^3 + 7 s^2 + 20 s + 100 Continuous-time transfer... MATLAB también permite obtener la respuesta del sistema al salto unidad mediante el comando step(num,den). La respuesta es la gráfica de la solución como función del tiempo. Para el ejemplo anterior de la función de transferencia del sistema en lazo cerrado: >> step(num,den) produce: 3.9 Función de transferencia con MATLAB 55