domingo, 30 de septiembre de 2012

¡Micrófonos! Parte 1

Los micrófonos son maravillosos. Hacen que nuestras voces o la música producida por un instrumento musical puedan ser amplificadas para que cientos o miles de personas la escuchen. También logran que los sonidos puedan ser digitalizados y así viajar por gigantescas distancias. Incluso pueden ser usados para inmortalizar esos sonidos en un CD. En fin... los micrófonos son una gran obra de la ingeniería que hoy en día es indispensable. Pero ¿qué son los micrófonos?
Bueno pues... un micrófono es un sensor que convierte el sonido en electricidad. Ahora se preguntarán ¿cómo se convierte el sonido en electricidad?
Aah pues, chéquense. El sonido que todos escuchamos son oscilaciones (perturbaciones)  que se propagan por el aire. Estas oscilaciones no salen de la nada, sino que son producidas por el movimiento de algún objeto, que a su vez causa cambios de presión en el aire y hace que éste comience a oscilar. Estas oscilaciones que se propagan en todas direcciones, llegan a nuestro oído y por arte de magia (de la cual, si están interesados, ViHart les puede explicar si es que saben inglés http://youtu.be/i_0DXxNeaQ0) lo interpretamos como sonido. El sonido entra en la categoría de onda mecánica. Esto quiere decir que para que el sonido pueda propagarse, se requiere de un medio físico (mecánico) a través del cual se pueda propagar. Esto significa que no se puede propagar en el vacío. Esto tiene sentido, pues el sonido es la propagación de la oscilación de la materia (los átomos). Por lo tanto, si no hay átomos que oscilen, no habrá sonido. Acá les dejo una bonita imagen simulando cambios de presión en el aire causadas por el movimiento del cono de una bocina y llegando hacia el oído. En la parte de abajo de la imagen se muestra una gráfica mostrando el nivel de presión del aire con respecto al tiempo.



Ok, ya que hemos comprendido cómo funciona el sonido (de forma muy elemental), pasemos a ver cómo un micrófono convierte el sonido en electricidad. Primero déjenme decirles que existen varios tipos de micrófono, todos convirtiendo el sonido en electricidad de diferentes maneras. Ahora empecemos con los micrófonos.

 Micrófono Dinámico
El micrófono dinámico es el más popular que existe y lo pueden encontrar en cualquier sitio. Existen desde los muy finos  y profesionales hasta los más chafas y baratos. Su funcionamiento es bastante sencillo y se basa en la ley de Faraday. El señor Faraday nos dice que (aquí viene lo genial :D) 

Esto se traduce en la siguientes ecuaciones


Donde
y
es el campo magnético que varía en el tiempo 
es el diferencial de superficie, es decir, representa la superficie que encierra el campo magnético.



-Pero ¿cómo le hacemos para inducir voltaje con el sonido?, dicen ustedes. 
Pues es muy fácil. 
En primer lugar se tiene un cono que generalmente es de cartón. Este cono recibe el cambio de presión que viaja en el aire y como es de un material ligero, se mueve con facilidad, es decir, empieza a vibrar con el sonido. A este cono generalmente se le llama diafragma.
En segundo lugar tenemos una bobina de material conductor (generalmente cobre). Esta bobina es en realidad un inductor y es la parte en la que se inducirá el voltaje. En sus  dos terminales va la salida del micrófono. Esta bobina está pegada al cono y se mueve con éste cuando recibe el sonido.
Por último tenemos un pequeño imán. Este (obviamente) es la fuente de campo magnético que es la que inducirá el voltaje. Este imán es colocado dentro de la bobina.
La cuestión aquí es que el campo magnético emanado por el imán es para fines prácticos completamente constante. -¿Cómo le hacen entonces? Preguntan desesperadamente. Pues resulta que como pueden ver en esta imagen, las lineas de campo magnético no son iguales en todos los puntos.


Gracias a esto, cuando se empieza a mover la bobina al rededor del imán, la bobina ya no ve un campo magnético estable y perfecto, sino todo lo contrario. La bobina lo que ve es que el campo magnético va y viene como si una persona con parkinson estuviera teniendo un ataque epiléptico. Los electrones en la bobina, por supuesto, se frikean y empiezan a correr de un lado a otro, induciendo una diferencia de potencial, tal y como dice la profecía del señor Faraday.
Aquí esta un dibujito de cómo se ve más o menos por dentro un micrófono dinámico (espero que sepan inglés).


Ahora les enseño unas fotos de algunos micrófonos dinámicos. Seguro ya los han visto antes.
Este es un micrófono marca Shure modelo SM58
Este micrófono es comunmente utilizado para voces
Shure es de las marcas más conocidas en el mundo del audio. Esta marca ya lleva como 80 años en el mercado y es de las mejores que existen para micrófonos

Este micrófono es de la marca Sennheiser. Es el modelo e 904
Este micrófono está diseñado para grabar batería, por eso su forma tan curiosa.

Sennheiser es otra de las marcas líder en el audio profesional. Hace todo tipo de micrófonos así como audífonos de una sorprendente calidad.

Es importante destacar que los micrófonos dinámicos generalmente no se utilizan para hacer grabaciones profesionales. Sin embargo, hay micrófonos dinámicos de una gran calidad que se pueden utilizar en un estudio de grabación sin ningún problema.

Habiendo dicho esto, podemos pasarnos al tema de ¡¡Patrones polares!!
¿Qué es un patrón polar?
Un patrón polar de un micrófono es la representación de la sensibilidad del micrófono cuando le llega sonido de diferentes direcciones. La razón por la que es polar es porque se representa en un diagrama polar, es decir, se representa con una magnitud y un ángulo. Aquí está un ejemplo para que quede claro.
Por supuesto existen diferentes tipos de patrones, cada uno con su nombre. Este es denominado cardioide. Se le llamó así debido a que si se tiene mucha imaginación, la figura parece un corazón invertido. Aquí está una útil tablita con los diferentes tipos de patrones.


Todos estos patrones tienen su aplicación. Por ejemplo, si se quieren grabar los sonidos de un ambiente en particular, por ejemplo una selva o algo así, pues es recomendable un micrófono omnidireccional. Por otro lado, si el micrófono lo va a utilizar un cantante en un concierto, pues será necesario un micrófono cardioide para que no capte el ruido del público que estará detrás del micrófono. En fin... uno se puede poner creativo con estas cosas.

Ya que hemos cubierto lo básico de los micrófonos, creo que será prudente terminar esta primera parte :D, espero que la hayan disfrutado. Más adelante cubriré los míticos micrófonos de condensador, los de listón y los piezoeléctricos.


domingo, 29 de abril de 2012

Filtros activos en Matlab!

Un filtro electrónico es un circuito que permite dejar pasar cierta gama de frecuencias, bloqueando las que no interesan; de ahí el término "filtro". En el post anterior vimos cómo se puede sacar la función de transferencia de un circuito, que resultó ser un filtro pasa bajas. Los filtros de ese estilo son denominados filtros pasivos. Esto quiere decir que únicamente está formado por elementos pasivos como resistencias, capacitores e inductores. Sin embargo, estos no son los únicos componentes con los cuales se pueden construir los filtros. También se pueden construir con transistores, amplificadores operacionales, etc. A los filtros construidos con este tipo de componentes se les denominan filtros activos. Una de las ventajas que poseen este tipo de filtros con respecto a los pasivos es que pueden llegar a ser muy selectivos, además de que a la salida se le puede implementar una ganancia. Por supuesto la ausencia de Facebook en tiempos de antaño provocó que la gente no perdiera el tiempo y se pusiera a jugar con estos filtros. A lo que llegaron estas personas es a diferentes tipos de filtros con diferentes características. Algunos de estos eran de respuesta "plana", pero poco selectivos, mientras que otros tenían "rizos" pero con una pendiente de corte extremadamente grande. Los más populares (o por lo menos los que les encantan a los profes) son el Butterworth, el Chebyshev y el Bessel, cada uno con diferentes características como las que acabo de mencionar. Sin embargo, estos filtros están basados en una especie de célula que se denomina topología, que es simplemente la manera en la que están acomodados los componentes. Una de las más populares es la topología Sallen-Key, que es la que vamos a ver ahorita. 
En esta ocasión analizaremos un filtro tipo pasa altas. Estos filtros, como su nombre lo indica, dejan pasar frecuencias altas, rechazando las frecuencias bajas (según nuestro criterio, por su puesto). En la siguiente imagen se puede ver el esquemático del filtro.



Para analizar este tipo de filtros se debe obtener su función de transferencia, pues su funcionamiento no es tan evidente como el del circuito anterior. El procedimiento para obtener la función de transferencia de los filtros activos es muy parecido al procedimiento usado la vez anterior. Se deben convertir los componentes al dominio de la frecuencia, obtener las ecuaciones de nodo y resolverlas. La única diferencia es que se deben considerar las características del componente activo al momento de obtener las ecuaciones de nodo. Dicho esto,
¡¡Comencemos!!

Paso 1
En este paso haremos una transformación pasando los componentes pasivos del dominio del tiempo al dominio de la frecuencia, que es donde la función de transferencia sirve. En otro post podré con detalle cómo se obtienen estas relaciones, pero por el momento créanme lo siguiente



Donde S es igual a jω, si es que vamos a estar trabajando con señales senoidales (Déjenlo en S por lo pronto) y R y C son la resistencia y la capacitancia, respectivamente. Por cierto, Z significa reactancia o impedancia (son diferentes cosas, pero por el momento hagamos de cuenta que son sinónimos).
Ahora que ya hemos pasado todos los componentes a reactancias, podremos redibujar el circuito como se muestra a continuación
Genial! Ya hemos completado el paso 1

Paso 2
Ya que tenemos nuestro circuito en el dominio de la frecuencia, podemos obtener las ecuaciones de nodo (Nota: las leyes de Kirchhoff, la ley de Ohm, Thévenin y todo eso es válido también con circuitos en el dominio de la frecuencia). Para esto hay que identificar los nodos primero.

Ya que tenemos identificados los nodos, podemos obtener las ecuaciones de cada uno.
Para el nodo 1 tenemos que


El nodo 2 está conectado a la entrada no inversora del Op-amp, y dado que idealmente tiene impedancia infinita, tenemos la siguiente ecuación.


El nodo 3 está conectado a la entrada inversora del Op-amp, y además de tener impedancia infinita resulta que existe un corto virtual entre las entradas inversora y no inversora. Esto quiere decir que el voltaje en el nodo 3 es el mismo que el voltaje en el nodo 2, lo que da como resultado que V2 = V3. Esto provoca que tengamos la siguiente ecuación



Para el nodo 4 tenemos que... un momento! En las ecuaciones que tenemos ya estamos considerando todos los voltajes que hay en todos los nodos que hay en el circuito! Eso significa que la ecuación que obtendríamos del nodo 4 ya no serviría de nada, puesto que ya tenemos todo lo que necesitamos! Yay!! :D

Paso 3
Ya que hemos obtenido las ecuaciones de nodo necesarias del circuito, podemos proceder a calcular la Función de transferencia!!
La función de transferencia de un circuito eléctrico se calcula mediante la relación que existe entre el voltaje de salida y el voltaje de entrada, dada por la siguiente ecuación:

Si somos observadores, podemos ver que en nuestras ecuaciones tenemos tanto Vo como Vi, por lo que sólo necesitamos obtener Vo de estas ecuaciones y dividirlo entre Vi! Suena fácil, no? Pues en efecto es muy sencillo siempre y cuando tengas uno de estos aparatitos mágicos llamados computadoras que hacen el trabajo duro por nosotros mientras vemos 9gag o una película. De otro modo se tendrían que "chutar" los despejes y las sustituciones a manita y eso no es de Dios. Pero por suerte nosotros sí poseemos la magia de la tecnología moderna que nos facilitará la vida inmensamente.
Lo primero que tenemos que hacer es abrir Matlab y (lo recomiendo ampliamente) crear un nuevo Script. Tendrán una ventana como la siguiente.


Se parece mucho al Bloc de notas, pero créanme que esto es mucho más cool ;D
Comencemos despejando el terreno y declarando las variables que vamos a utilizar (usamos variables simbólcas, por eso las tenemos que declarar). esto se hace así

    clear
    clc
    syms z1 z2 z3 z4 z5 z6 vi vo v1 v2 v3 r1 r2 r3 r4 c1 c2 s;

Ya que hemos declarado las variables, comencemos con la ecuación del primer nodo.

    %Ecuación del nodo 1
  eq1=((vi-v1)/z1)-((v1-v2)/z2)-((v1-vo)./z4);


De esta ecuación, despejamos v1 para sustituirla en la ecuación del nodo 2. Esto se hace así

    %Despejar v1
  v1=solve(eq1, v1);

Ya que tenemos v1, podemos escribir la ecuación 2 y resolverla para v2 (despejar v2)

    %Ecuación del nodo 2
  eq2=((v1-v2)/z2)-(v2/z3);
   %Despejar v2
  v2=solve(eq2, v2);

Por último, escribiremos la ecuación 3 y la resolveremos para Vo

  %Ecuación del nodo 3
  eq3=(v2/z5)+((v2-vo)/z6);
  %Despejar vo
  vo=simple(solve(eq3, vo))


Nota: la función simple() se utiliza para simplificar funciones simbólicas y que no se vean tan monstruosas.
Si ejecutamos este código, obtenemos lo siguiente

  vo =

  (vi*z3*z4*(z5 + z6))/(z1*(z2*z5 - z3*z6 + z4*z5) + z2*z4*z5 +  z3*z4*z5)


Ahora lo que resta es dividirlo entre Vi y sustituir las reactancias por las resistencias y capacitancias. Esto se hace así


  %Función de transferencia
  Hs=factor(simple(vo/vi))

  %Sustitución por los valores
  z3=r1;
  z4=r2;
  z5=r3;
  z6=r4;
  z1=1/(s*c1);
  z2=1/(s*c2);

  %Función de transferencia final
  disp('La función de transferencia es')
  Hs=collect(simple(subs(Hs)), s);
  pretty(Hs)


La función factor() se utiliza para factorizar lo más posible una función simbólica. La función disp() puede hacer que despliegue tanto un texto como alguna variable, pero no ambas a la vez. La función subs() hace la sustitución de los valores. La función collect() hace factorización por factor común la variable que nosotros indiquemos. Por últmo, la función pretty() hace que se vea bonito (al muy propio estilo de Matlab) una función simbólica.
Si corremos el código completo, lo que matlab nos dirá es

La función de transferencia es

                                                2 
             (c1 c2 r1 r2 r3 + c1 c2 r1 r2 r4) s 
  ----------------------------------------------------------- 
                  2 
  c1 c2 r1 r2 r3 s  + (c1 r2 r3 - c2 r1 r4 + c2 r2 r3) s + r3



Vivaa! Ya tenemos nuestra función de transferencia! :D
En el siguiente Post mostraré como hacerle para que de esta misma función que nos regresa Matlab, podamos dibujar diagramas de bode y demás. 
Si me equivoqué en algo, díganmelo :D
Por cierto, el código usado en Matlab se los dejo aquí. http://bit.ly/IjD7O2

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.