Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Departamento de Electrnica
Ctedra D.S.F.
Cdigo: A_DBMod.03
A_DBMod.doc
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 1 de 14
x(t ) = x0 + v( )d
t0
Debido a que la operacin que realiza el bloque es el clculo de una derivada, el bloque se
denomina bloque derivador. En este caso, la variable x es la entrada de bloque (o sea, la causa) y la
variable v es la salida (efecto). Estas variables usualmente se denominan seales y puede verse a
cada bloque como un procesador de seales que fluyen en el sentido causal dado por la direccin de
las flechas.
Para la segunda situacin causal, la representacin en Diagramas de Bloques es la que sigue:
A_DBMod.doc
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 2 de 14
p (t ) = m v(t )
o bien de acuerdo a:
1
p (t )
m
Para estas ecuaciones, tenemos las representaciones en DB de la Figura 4. En ambos casos se trata
de bloques ganancia, donde el parmetro indicado es la constante que multiplica la seal de entrada
para obtener la de salida.
v(t ) =
A_DBMod.doc
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 3 de 14
Los bloques integrador, derivador, ganancia y sumador ms los puntos de derivacin son la base de
los DBs para sistemas lineales y estacionarios. Para los casos no lineales necesitaremos de bloques
que realicen operaciones no lineales que veremos ms adelante.
CONSTRUCCIN DEL DIAGRAMA DE BLOQUES
De lo que vimos hasta ac, hay ms de una posibilidad de asignacin causal asociada a cada
relacin constitutiva o estructural. En algunos casos la eleccin de una u otra situacin causal no
modifica el tipo de bloque a utilizar (esto ocurre con los bloques estticos en general). Sin embargo,
cuando tenemos de por medio una derivada la eleccin de la situacin causal nos puede llevar por
dos caminos completamente distintos.
En estos casos, elegiremos siempre que sea posible la situacin causal que implique una
integracin. Esto se debe a varios motivos que iremos viendo a lo largo del curso. Por ahora, slo
mencionaremos que de esta forma ser posible obtener ms fcilmente las ecuaciones de estado,
realizar de manera ms simple y eficiente una simulacin numrica y podremos tambin aplicar
herramientas de anlisis que requieren de este tipo de asignacin causal. Adems, de esta forma ser
posible incorporar las condiciones iniciales al modelo (que son indispensables entre otras cosas para
realizar una simulacin). Decimos de todas formas que utilizaremos integradores siempre que sea
posible ya que, como veremos luego, habr casos en que la estructura del sistema fsico idealizado
nos obligar a incorporar derivadores.
Para el resto de los bloques no habr mayores restricciones que las de respetar que las entradas del
sistema sean en efecto seales entrantes a los bloques y no salientes de los mismos (como ya vimos
con la entrada F(t) en el bloque sumador). Tambin, por una cuestin de coherencia, cada seal
deber ser calculada por un nico bloque.
Un mtodo que nos permite cumplir con todas estas restricciones es el siguiente: se comienza por la
salida (una seal de inters) y se buscan las relaciones que la involucren. Si entre estas relaciones
existe una que pueda calcularla como una integral, se elige esta relacin. Por ejemplo, si en el
ejemplo de la Figura 1 tomamos como salida la posicin x(t), tendremos dos relaciones que la
involucran: x& (t ) v(t ) = 0 y x(t ) l 0 x(t ) = 0 . Elegimos la primera de ellas que calcula esta
salida como una integracin. Entonces, el DB calcular la salida con el bloque:
Una vez hecho esto, la relacin utilizada en este bloque x& (t ) v(t ) = 0 no deber usarse ms.
Luego, el mtodo sigue repitiendo el primer paso pero tomando ahora como salida la entrada del
ltimo bloque que pusimos. Es decir, ahora tenemos que buscar una relacin que involucre a v(t).
Tenemos de nuevo dos relaciones: p (t ) m v(t ) = 0 y v friccin (t ) v(t ) = 0 . Aqu podramos
utilizar cualquiera de las dos relaciones, pero como veremos luego, lo mejor ser utilizar la primera
de ellas:
A_DBMod.doc
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 4 de 14
En el tercer paso, repetimos el primero tomando como salida la cantidad de movimiento p(t), de la
cual nos queda una nica relacin: p& (t ) Fneta (t ) = 0 ya que la otra la utilizamos en el paso
anterior. El DB ahora nos queda:
En el siguiente paso tenemos 2 variables a obtener para seguir y la tercera, F(t), es una entrada, por
lo tanto no debe calcularse con ningn bloque.
Calculamos entonces primero la fuerza de friccin, utilizando para esto la nica relacin que nos
queda vinculando la misma: F friccion (t ) b v friccion (t ) = 0 .
Ahora tenemos nuevamente dos variables a determinar: v friccion (t ) y Fresorte (t ) . Por una cuestin de
ordenamiento del mtodo, seguiremos con el camino que venamos desarrollando en el paso
anterior, o sea, determinaremos v friccion (t ) . Para esta, nos queda nicamente la ecuacin
v friccin (t ) v(t ) = 0 , que debe causalizarse como v friccin (t ) = v(t ) . Esto, como ya vimos, se
representa mediante un punto de derivacin que saldr de la seal v(t), quien est calculada por el
bloque ganancia de parmetro 1/m. Tras este paso, tenemos:
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 5 de 14
Todos los pasos, a excepcin de los dos primeros, fueron realizados de acuerdo a una nica
posibilidad de asignacin causal. En el primero, de acuerdo al mtodo, se eligi la relacin que
implicaba una integracin. En el segundo en cambio se eligi una de las relaciones (determinar v a
partir de p en lugar de determinarla a partir de la vfriccion) sin dar muchas explicaciones. Si
hubiramos elegido el otro camino, habramos llegado a tener que calcular p a partir de v y luego la
Fneta a partir de p, lo que implicara el uso de un derivador. Por eso la eleccin hecha fue en realidad
la nica que nos garantiza tener un nmero mximo de integradores.
BLOQUES NO LINEALES
Hasta aqu utilizamos exclusivamente bloques lineales. Sin embargo, en una gran cantidad de
problemas se requiere de la utilizacin de modelos no lineales. Por ejemplo, en el sistema masa
resorte de la Figura 1 supusimos que la friccin era lineal. Sin embargo, una hiptesis habitual es
que la fuerza de friccin depende del cuadrado de la velocidad:
F friccion (t ) = k f v friccion (t ) v friccion (t )
Las barras de valor absoluto son para que la relacin mantenga el signo y valga tanto para valores
positivos como negativos de vfriccion.
A_DBMod.doc
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 6 de 14
Como puede verse en la figura, utilizamos doble cuadro para indicar que un determinado bloque
realiza una operacin no lineal. Ahora bien, no es necesario representar cada operacin elemental
con un bloque. Podemos directamente representar la relacin no lineal mediante un nico bloque:
En muchos sistemas, hay relaciones que se modelizan mediante una curva o un conjunto de curvas,
de las cuales no se tiene una expresin matemtica. Tpicamente en una vlvula modulada:
A_DBMod.doc
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 7 de 14
PRESENCIA DE DERIVADORES
Consideremos ahora el siguiente circuito elctrico:
Como puede verse en el DB, pese a haber aplicado correctamente el mtodo, tenemos un derivador.
An si hubiramos elegido otra causalizacin, nos habra quedado un derivador de todas formas.
Esto se debe a que el sistema es en realidad de primer orden ya que las cargas de ambos capacitores
no son independientes entre si. Conociendo una de ellas podemos determinar todas las variables del
sistema. Sin embargo, tenemos dos relaciones dinmicas. Esto produce una situacin que se
denomina singularidad estructural.
El uso del derivador puede evitarse trabajando con lgebra de Bloques. En los programas de
simulacin antiguos se producan problemas debido a la inclusin de bloques derivadores ya que
esto implica ciertas dificultades para el tratamiento numrico. Sin embargo, prcticamente todos los
programas de simulacin modernos (incluido Simulik) cuentan con herramientas que transforman el
problema en un lazo algebraico (que es otra singularidad ms simple de tratar que veremos ms
adelante) que puede simularse mediante la inclusin de alguna rutina iterativa de resolucin de
ecuaciones implcitas o incluso con manipulacin simblica de las mismas.
Si bien es interesante eliminar a veces los derivadores para poder aplicar herramientas de anlisis
que son slo vlidas en ausencia de estos, desde el punto de vista de la simulacin no es ya un
problema crucial.
S es importante hacerlo en los casos en que haya derivadas de la entrada ya que esto puede
ocasionar algunos problemas numricos y de amplificacin de ruido cuando se trabaja con seales
realistas. Ms adelante veremos un ejemplo de la aplicacin del lgebra de bloques para eliminar un
derivador de la entrada.
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 8 de 14
Una de las maneras ms prcticas de obtener las ecuaciones de estado de un modelo es a partir de la
representacin en DB.
Recordemos que la representacin en EE/ES es de la forma:
x&1 (t ) = f 1 ( x1 (t ),..., x n (t ), u1 (t ),..., u m (t ), t )
x& 2 (t ) = f 2 ( x1 (t ),..., x n (t ), u1 (t ),..., u m (t ), t )
M
x& n (t ) = f n ( x1 (t ),..., x n (t ), u1 (t ),..., u m (t ), t )
y1 (t ) = g1 ( x1 (t ),..., x n (t ), u1 (t ),..., u m (t ), t )
y 2 (t ) = g 2 ( x1 (t ),..., x n (t ), u1 (t ),..., u m (t ), t )
M
y p (t ) = g p ( x1 (t ),..., x n (t ), u1 (t ),..., u m (t ), t )
donde las variables xi son las variables de estado (que juntas conforman el vector de estado); yi son
las salidas y ui son las entradas. Vimos tambin que conociendo el vector de estados y la entrada en
un instante de tiempo podemos determinar estticamente cualquier otra variable del sistema, y que
cuando el vector de estados es minimal (el de menor dimensin posible) su nmero de componentes
nos da el orden del modelo (n).
DEL DB A LAS ECUACIONES DE ESTADO
Para obtener estas ecuaciones a partir de un DB debemos en primer lugar identificar los vectores de
estado, de entrada y de salida. Las entradas y salidas se ven claramente, ya que las primeras son las
seales que no salen de ningn bloque (por ejemplo F(t) en el DB de la Figura 12) y las otras son
simplemente las variables que nos interesa medir.
Nos queda entonces determinar cmo elegir el vector de estados. Si miramos el DB de la Figura 12,
vemos que, a excepcin de los bloques integradores, el resto de los bloques calculan exclusivamente
operaciones estticas. Por este motivo, si conocemos las seales de salida de los integradores (x(t) y
p(t) en dicho DB) y el valor de la entrada F(t) podremos determinar mediante clculos estticos
todas las otras seales utilizando las operaciones que realizan los distintos bloques estticos. En
virtud de esto, decimos lo siguiente:
Las variables de estado se corresponden con las salidas de los integradores del DB..
No debemos olvidar que aqu estamos asumiendo que hemos construido el DB con integradores en
lugar de derivadores. De las definiciones de orden de un modelo dadas anteriormente, se desprende
tambin que:
El orden de un Diagrama de Bloques es igual al nmero de bloques integradores.
Volviendo entonces al DB de la Figura 12, las variables de estado sern x(t) y p(t), y la variable de
entrada ser F(t). El orden del modelo, por supuesto, ser 2.
Tras identificar las variables de estado, debemos escribir las ecuaciones, es decir, la expresin de
sus derivadas en funcin de las variables de entrada y de las mismas variables de estado. Dado que
stas variables son las salidas de los integradores, sus derivadas se encontrarn a la entrada de los
integradores. En nuestro ejemplo, la primera ecuacin comenzara entonces segn:
x& (t ) = v(t )
A_DBMod.doc
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 9 de 14
Dado que v(t) no es una variable de estado ni de entrada, la ecuacin no est an completa.
Entonces debemos seguir hacia atrs leyendo el DB. El bloque que calcula v(t) es una ganancia,
que realiza la operacin:
1
v(t ) = p (t )
m
y reemplazando esta en la ecuacin anterior, llegamos a:
1
x& (t ) = p (t )
m
que ahora s es una ecuacin de estados.
Procediendo de la misma manera para la otra variable, tenemos:
p& (t ) = Fneta
que continua hasta llegar a las variables de estado y de entrada:
p& (t ) = F (t ) F friccion (t ) Fresorte (t ) = F (t ) b v(t ) k x(t ) = F (t )
b
p (t ) k [ x(t ) l 0 ]
m
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 10 de 14
A_DBMod.doc
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 11 de 14
Para obtener el Diagrama de Bloques entonces procedemos como sigue. En primer lugar colocamos
una cadena de dos integradores:
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 12 de 14
La presencia del bloque derivador es en este caso una desventaja, ya que si la entrada fuese por
ejemplo un escaln, tendramos a la salida de este bloque una seal no acotada (un impulso), lo que
tericamente puede ser aceptable pero en la prctica de simulacin no es para nada conveniente.
Por otro lado, si tuviramos en dicha entrada la medicin de una seal real con ruido, este se vera
amplificado por la presencia del derivador afectando de manera drstica la performance de la
simulacin.
Por fortuna, esto se puede solucionar modificando el DB aplicando reglas del lgebra de Bloques,
llegando a un diagrama equivalente desde el punto de vista externo sin derivadores.
Las reglas del lgebra de Bloques no son otra cosa que las reglas ms elementales del lgebra
llevadas al lenguaje de los Diagramas de Bloques. La idea es ir desplazando los bloques dentro del
DB de forma tal que en cada desplazamiento nos quede un sistema equivalente.
En el caso particular de la presencia de los derivadores, la idea es llevarlos hacia donde estn los
integradores para que se cancelen.
Figura 24. Primer paso: intercambio del derivador y ganancia y reagrupamiento de sumadores.
Figura 25. Segundo paso: Pasaje del derivador como factor comn.
A_DBMod.doc
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 13 de 14
A_DBMod.doc
17/03/2003
DSF
Cdigo: A_DBMod.03
Pgina 14 de 14