Mostrando entradas con la etiqueta Filtro pasa bajas. Mostrar todas las entradas
Mostrando entradas con la etiqueta Filtro pasa bajas. Mostrar todas las entradas

sábado, 2 de noviembre de 2013

Tutorial: cómo crear sub circuitos en OrCAD en 12 simples pasos

Ok, esto va a ser largo, así que al punto. Quieres crear una librería con sub circuitos para usarlos en tus otros circuitos y nomás no hallas cómo. Pues ahí te va.

Paso 1
Crea un nuevo proyecto en OrCAD y llámalo como gustes




Paso 2
Arma el circuito que quieras configurar como sub circuito




Paso 3
Añade los puertos de entrada y de salida en Place -> Hierarchical Port y renómbralos.
Estas serán los puertos de tu sub circuito





Paso 4 (opcional)
Renombra tu proyecto




Paso 5
Crea un netlist en Tools -> Create Netlist...





Dale clic en Aceptar y espera a que se cree. Puede que te aparezca un Warning como este



Esto quiere decir que no pusiste ninguna tierra en tu circuito, pero no pasa nada.


Paso 6
Crea la parte en Tools -> Generate Part y al final cambia lo que gustes y dale clic en Save (que onda con el spanglish de esta cosa, ¿verdad?)






Paso 7
Una vez que ya hayas creado tu sub circuito, vamos a modificar su apariencia.
En Outputs va a aparecer tu circuito con extensión .OLB. Expándelo y en el archivo que aparece dale clic derecho y pícale en Edit Part.



Te va a aparecer algo así



Ahora dale vuelo a tus dotes artísticos y dibuja tu cajita como se te antoje y al final guarda todo.


Paso 8
Ahora que ya tienes tu sub circuito bien chulo, vamos a probarlo.
Crea un nuevo proyecto con otro nombre





Paso 9
Ahora, del lado derecho aparece un cuadrito para añadir una librería. Dale clic en ese cuadrito y busca lo que se generó del archivo anterior. Es un archivo con extención .OLB




Ahora vamos a añadirle una fuente de prueba y una resistencia al final



Paso 10
Crea un nuevo perfil de simulación y añádele los parámetros que quieras.




Paso 11
Ahora vete a la pestaña que dice Options y en la categoría que dice Library, dale clic en Browse. Ahora busca el archivo .LIB que también se generó hace rato y dale clic en Add to Design. Esto lo vas a tener que hacer cada vez que quieras usar una nueva librería. Supongo que si le das clic en Add as Global, sólo lo tendrás que hacer una vez, pero no lo he probado.






Paso 12
Una vez añadido el diseño, podemos correr la simulación


¡Pero que chulo ha quedado! Ahora puedes hacer todo lo que se te antoje con tu sub circuito.

Por cierto, estoy usando la versión 16.3 de OrCAD.

Aquí les dejo los archivos de la simulación y del sub circuito

http://www.mediafire.com/?job5ommy94e74xl

sábado, 24 de marzo de 2012

Cómo obtener la función de transferencia de un circuito utilizando Matlab

Para poder obtener la función de transferencia de un circuito, primero necesitamos el esquemático del circuito. Este primer ejemplo será un circuito RLC Pasa Bajas.


Como las funciones de transferencia son análisis en el dominio de la frecuencia, hay que transformar los componentes a impedancias para poder manipularlos en el dominio de la frecuencia. De este modo, L se convierte en Z1, C se convierte en Z2 y R se convierte en Z3.


Como las inductancias se pueden manipular como si fuesen resistencias, podemos utilizar leyes de Kirchhoff para sacar las ecuaciones del circuito :D
Por definición, la función de transferencia de un circuito es Vo/Vi, por lo que necesitamos encontrar el voltaje de salida en función de los elementos que tiene el circuito. Para esto se utiliza la ley de nodos/corrientes de Kirchhoff, pues ese análisis encuentra los voltajes de nodo. De esta manera se tiene que la corriente que pasa por Z1 es igual a la suma de las corrientes que pasan por Z2 y Z3. Tomando que la tierra está en la parte de abajo del circuito, esto queda así


Para que Matlab pueda resolver correctamente esta ecuación, hay que dejarla igual a cero, por lo que tenemos que


Ahora que ya tenemos la única ecuación del circuito, ya podemos resolverla para Vo utilizando Matlab. Para esto, lo primero que se tiene que hacer es declarar las variables como variables simbólicas, para que pueda hacer el cálculo. Esto se hace de la siguiente manera:

>> syms vi vo z1 z2 z3

Ahora, lo que se tiene que hacer es almacenar en otra variable la ecuación que tenemos. Esto se hace así

>> eq1=(vi-vo)/z1-vo/z2-vo/z3;

Nótese que el ";" al final es únicamente para que no repita lo que le acabo de ingresar (echo off).
Ahora que ya tenemos la ecuación, ya podemos resolverla para Vo utilizando la función solve. Esto se hace así

>> vo=solve(eq1, vo)

La sintaxis básica de esta función es solve(ecuación igualada a cero, variable para la cual se resuelve). Por supuesto que tiene muchas más opciones, pero a nosotros nos interesa usarla así.
Al ingresar esto a Matlab, se obtiene el siguiente resultado

vo =

(vi*z2*z3)/(z1*z2 + z1*z3 + z2*z3)


Este resultado ya es la ecuación resuelta para Vo. Sin embargo, esta aún no es la función de transferencia, pues aún falta dividirla entre Vi. Esto se hace fácilmente de esta manera

>> Hs=vo/vi

Lo que nos regresa 

Hs =

(z2*z3)/(z1*z2 + z1*z3 + z2*z3)



Ahora ya tenemos la función de transferencia en función de las impedancias, pero nosotros la queremos en función de la frecuencia y de los valores de los componentes que forman el circuito. Para esto, sabemos que la impedancia de un inductor es SC, la de un capacitor es 1/SC y la de una resistencia es R. Esta información se le tiene que introducir a Matlab también de manera simbólica y de la siguiente manera:

>> syms r l c
>> syms s
>> z1=l*s;
>> z2=1/(s*c);
>> z3=r;

Sin embargo, en la función de transferencia siguen apareciendo Z1, Z2 y Z3, mas no sus valores. Para sustituir los valores de Z1, Z2 y Z3 en la función de transferencia, hacemos lo siguiente

>> Hs=subs(Hs)

Este comando nos regresa

Hs =

r/(c*s*(l/c + r/(c*s) + l*r*s))



Ahora ya tenemos la función de transferencia. Para verla un poco más clara, podemos utilizar la función simple y pretty. Esto se hace así

>> Hs=simple(Hs);
>> pretty(Hs)

Esto nos regresa

          r 
  ------------------ 
         2 
  c l r s  + l s + r



Con esto ya tenemos nuestra función de transferencia H(s) de un circuito RLC pasa bajas :D
En el siguiente ejemplo veremos cómo obtener la función de transferencia cuando se tiene más de una ecuación.