martes, 8 de diciembre de 2015

Medidor de Voltaje y Corriente (0-20V) PSoC 5LP

El siguiente trabajo es una colaboración de dos equipos, el equipo 2 y equipo 3.

OBJETIVO

La creación de un medidor de voltaje y corriente el cual podra enviar, guardar e imprimir las mediciones.
El medidor deberá permitir el paso de la señal a una carga, es decir, será intermedio.


FASE DE MEDICIÓN

Al circuito entra un voltaje entre 0 y 20V, pasa por un divisor de voltaje, de modo que de un rango de 0-20V tengamos uno de 0-5V para poder usar el PSoC. posteriormente pasa por seguidores y un amplificador operacional en configuración de diferenciador para que el voltaje quede referenciado a tierra. posteriormente pasará por un seguidor, y un sumador en el cual añadiremos un voltaje pequeño compensando las perdidas de los diodos de la ultima fase. Entre los diodos hay un inversor que volverá positivo el voltaje después de la salida del sumador-inversor.




Para medir la corriente, se mide el voltaje de una resistencia Shunt de 0.1Ohms, bajo la misma metodología, añadiendo esta ocasión un operacional de aislamiento.





LECTURA DE DATOS

La parte de software y datos se hizo mediante PSoC 5LP.

Para leer la parte de voltaje (que ya esta referenciado a tierra) se usó un ADC de 8bits, que solo leerá la entrada analógica y la convertirá en a digital.

Figura . ADC Voltaje

Para leer la corriente se midió la caída de potencial en una resistencia fija (shunt) de 0.1 Ohms, la diferencia de potencial de la Resistencia shunt pasa por un Amplificador de aislamiento, que tiene un rango de entrada de ±250mV con una ganancia de 8 para que a la salida tenga un rango de salida de la siguiente forma.


Figura 2: amplificador de aislamiento

Para leer el voltaje que pasa por la Resistencia shunt (ya referenciado a tierra) se usó otro ADC de 8 bits, solo que esta vez, con una referencia a 2.5V. Lo anterior debido a que para voltajes negativos el operacional arroja un voltaje de 0 a 2.5V. de esta forma cuando le entren 2.5 V al adc, sera un nuevo 0.

Figura : ADC corriente
Las mediciones se observan en un LCD y son enviadas por Bluetooth a un lector de comunicación serial, en la PC o en este caso en un celular.

Figura : UART y LCD

CÓDIGO


int main()
{
    
CyGlobalIntEnable; 

    int16 valadc1,valadc2;
    float voltaje,corriente;
    char8 str1[50],str2[50],str11[50];
    
VDAC_Start();//inica el VDAC configurado a 2496mV
ADC_1_Start(); //inicia el ADC que mide voltaje
ADC_2_Start(); //Inicia el ADC que mide el voltaje en la Shunt (corriente)
LCD_Start(); //Inicia el ADC
UART_Start(); // Inicia el UART

    ADC_1_StartConvert(); //inicio de conversión
    ADC_1_IsEndConversion(ADC_1_WAIT_FOR_RESULT);
    ADC_2_StartConvert(); //inicio de conversión
    ADC_2_IsEndConversion(ADC_1_WAIT_FOR_RESULT);

    

    for(;;)
    {
        
    valadc1 = ADC_1_GetResult16(); //Se guardan los resultados en una variable de 16b
    voltaje=(ADC_1_CountsTo_Volts(valadc1))*(4); // conversión a voltaje y convirtiendo al rango de entrada 
    valadc2 = ADC_2_GetResult16(); 
    corriente=(ADC_2_CountsTo_Volts(valadc2))/(10*0.01); //conversión a corriente
    
        LCD_Position(0,1);
        sprintf(str1,"V=%.2fV  ",voltaje);
        LCD_PrintString(str1);
        LCD_Position(1,1);
        sprintf(str11,"C=%.2fA ",corriente);
        LCD_PrintString(str11);
        
        LCD_Position(0,10);
        LCD_PrintString("Proto");
        LCD_Position(1,10);
        LCD_PrintString("type");    //Impresión de los datos en LCD
        
        
        sprintf(str2,"V=%.2fV  C=%.2fA\n\r  ",voltaje,corriente); //envío de los datos por UART al lector de serial
        UART_PutString(str2);
        
    }

}


Implementación

PCB

Parte frontal
Parte Posterior

Las imágenes anteriores son Fotos de la placa final y de una simulación que se hizo del programa en una placa experimental, alimentando 2 potenciometros con 5 volts, variando el voltaje que entra al ADC. A continuación la comunicación, la cual se puede ver en vivo y guardar un log para posteriormente compartirlo.

 
A la derecha la aplicación BLUETERM leyendo el puerto serial, a la izquierda, el archivo txt que se puede compartir desde el celular a cualquier red social, correo electrónico o PC.

Descarga nuestro PCB! 

https://drive.google.com/file/d/0B9PN6ywyXIrDbXVVSUd1aXJkYVk/view?usp=sharing

recuerda revisar el esquemático para hacer los puentes que faltan


sábado, 21 de noviembre de 2015

DAC PSoC 5LP

1ra Parte Sobre Dac - Melodía creada con el PSoC 5LP

Un conversor de señal digital a analógica (DAC por sus siglas en inglés) es un dispositivo para convertir señales digitales con datos binarios en señales de corriente o de tensión analógica.
Figura 1: DAC


En esta entrada veremos como usar un WaveForm DAC del PSoC 5 para crear una melodía. Hay muchas formas de hacer lo mismo, en esta ocasión usaremos, a parte del DAC, un multiplexor y un controlador para el mismo.

¿Qué es un Multiplexor?
Los Multiplexores son circuitos combinacionales con varias entradas y una única salida de datos, están dotados de entradas de control capaces de seleccionar una y sólo una, de las entradas de datos para permitir su transmisión desde la entrada seleccionada hacia dicha salida.

Figura 2: Multiplexor

¿ Y un Control Register?

Un Control Register es un registro del procesador que cambia o controla el comportamiento general de un CPU u otro aparato digital. Sus tarea comunes incluyen switching, direccionamiento, control de paginación y control de coprocesador.
Figura 3: Control Register

Para hacer nuestra melodía entonces, debemos manipular el registro para activar diferentes entradas del multiplexor, estas entradas están conectadas a unos clocks que tienen frecuencias diferentes. Estos clocks modifican los Rates del DAC al cual le dejamos fijo los samples, si revisamos el datasheet del wave DAC sabremos que la frecuencia a la salida dle DAC será:



Sabiendo esto, no queda mas que hacer las conecciones pertinentes. Las notas que escuches en la melodía estan dadas por la frecuencia, como debes saber, es decir, a un DO le corresponde una frecuencia de 130.81 Hz. Una vez dicho esto, podemos divertirnos.


Este el esquemático, podemos observar el DAC el cual conserva un sample constante de 100, se le conecta un cero lógico de referencia y a la salida un pin analógico, pues a la salida tendremos una señal, en este caso, senoidal.

El multiplexor, con sus los 8 clocks que nos darán diferentes notas y para finalizar el control register del cual hablamos anteriormente.

Puede parecer lógico pero vale la pena mencionarlo, a la hora de mapear, solo usaremos un pin, el de salida ya que la información que genera las ondas vendrá de nuestro código.

Para el código nada mas basta iniciar el waveDAC y utilizar el codigo que se muestra arriba, se puede observar como se asignan un valor al control que es el switch que movera el multiplexor, la nota se mantiene por 300 milisegundos, se detiene el DAC 10 milisegundos y pasa a la siguiente nota.

No se pone todo el codigo porque es una combinación de las primeras 5 líneas. solo es jugar con los tiempos de delay y las frecuencias para crear una obra maestra.



Para Finalizar pueden ver un video con el sonido de nuestra melodía. Queremos agradecer a nuestro compañero Alberto José Ramírez Fuente por ayudarnos con la practica, en las proximas entradas veremos como hacer un "piano" con el PSoC.





viernes, 6 de noviembre de 2015

MAX2121B

El MAX2121B es un sintonizador de Banda-L con un Filtro bandbase programable.

¿Qué es una Banda L y Baseband?

La Banda L es un rango de radiofrecuencia de las Microondas IEEE US que usa las frecuencias de 1,5 a 2,9 GHz. Una parte de esta banda, entre 1,2 y 9,4 GHz se utiliza en muchos países para la difusión en MMDS (cable con cable). La banda L, es utilizada por el Ejército Mexicano, a través de los satelites.

En Telecomunicaciones, el término banda base (baseband) se refiere a la banda de frecuencias producida por un transductor, tal como un micrófono, un manipulador telegráfico u otro dispositivo generador de señales que no es necesario adaptarlo al medio por el que se va a trasmitir. A grandes rasgos el MAX2121B  es un dispositivo que convierte directamente las señales de satélites de LNB (las cuales son señales en las que es muy difícil atenuar el ruido) a baseband donde es más fácil atenuar el ruido para que los dispositivos puedan usar una señal menos sensible al ruido.

Cuenta con rango de frecuencia de 925MHz a 2250MHz.
 Otra gran ventaja que brinda el MAX2121B es que ya contiene un amplificador RF de ganancia variable, convertidores I y Q convertidores mixtos y filtros de banda de 40MHz a 120 MHz y amplificadores de ganancia variable, entre muchos otros componentes que se pueden apreciar en el datasheet.
 Juntos, el RF y los amplificadores de ganancia variable baseband proporcionan más de 80dB de rango de ganancia. El dispositivo es el sintetizador broadband/VSAT DBS más avanzado disponible. La figura de bajo ruido elimina la necesidad de un LNA externo. Un numero pequeño de componentes pasivos es requerido para formar un sintonizador completo de band ancha satelital DVB-S2 RF front-end solution. El sintonizador esta disponible en un empaquetado TQFN muy pequeño de 5mm x 5mm con 28 pines. Algunas de sus aplicaciones son: Los VSATs (Very small apertura terminal). Designa un tipo de antena para comunicación de datos vía satélite y por extensión a las redes que se sirven de ellas, normalmente para intercambio de información punto a punto, punto a multipunto (broadcasting) o interactiva.


Sistemas de navegación, si, esos que usamos para movernos dentro la ciudad y no perdernos.


Satellite Set-Top Box, que son los decodificadores o receptores de televisión que, valga la redundancia, le ponemos a nuestro televisor para recibir las señales (analógicas o digitales) para luego ser mostrada o visualizada en el televisor.


DBS Tuner. DBS o Direct Broadcast Satellite es el servicio que distribuye una señal de audio, vídeo o datos sobre una extensa zona predeterminada, haciendo uso de sistemas especialmente concebidos para ello, permitiendo la recepción con terminales de pequeño diámetro.


Beneficios y características del MAX2121B







viernes, 30 de octubre de 2015

Filtro Pasa Altas

Objetivo:
Implementar un Filtro Pasa altas usando los OpAmps en el PSoC 5LP

Introducción
Cada ves hay mas personas que se atreven a diseñar, implementar circuitos electricos y trabajar con microcontroladores, para crear cosas maravillosas. Nosotros nos encontramos en formación y debemos aprender como sacarle el mayor provecho a los materiales con los que contamos.

En la siguiente entrada de este blog, mostraremos el resultado final de nuestra implementación de un filtro pasa altas utilizando los OpAmps del PSoC 5LP

Desarrollo:
En la entrada pasada comentábamos que nuestra frecuencia corte estaba idealizada y las simulaciones que se hicieron fue con valores no comerciales de capacitancias. En esta entrada presentaremos los esquematicos con los valores reales que usamos. En esta ocacion nuestra frecuencia corte esde 723Hz

Figura 1: Esquemático con Valores reales

En la figura uno podemos ver el esquemático de nuestra implementación con los valores comerciales que trabajamos.

Ahora, ¿Qué hicimos con el PSoC?
Figura 2: PSoC Creator

Solo configuramos el bloque de OpAmp como seguidor de voltaje para no tener ganancia. En el PSoC creator, cuando pases a definir los pines que vas a utilizar, estos ya estarán seleccionados para algunas de las salidas/Entradas de los 3 OpAmps, selecciona los que quieras.

No esta de mas recordar que debes inicializar el OpAmp en al main de esta manera Opamp_1_Start();

El diagrama de Flujo sería algo así

Figura 3: Diagrama de flujo

A continuación presentamos la implementación haciendo una comparación de los resultados con la simulación.


Figura 4: Implementación

Figura 5: Señal de entrada a baja Frecuencia

Figura 6: Señal de baja frecuencia filtrada

Figura 7: Simulación a Baja frecuencia

Usando los valores reales que usamos en la implementación, corrimos la simulación para poder hacer una comparación sobre lo que debíamos obtener, y como podemos observar en las imagenes anteriores los resultados son cercanos a los esperados en bajas frecuencias.

Figura 8: Señal de entrada de Alta Frecuencia

Figura 9: Señal de alta frecuencia después del filtro

Figura 10. Simulación a alta frecuencia

Como podemos ver los resultados finales fueron muy cercanos a los ideales, podemos considerar que la práctica se hizo de forma correcta.

Para finalizar nos gustaría adjuntar de nuevo los datos del Opamp del PSoC 5LP y un video donde podamos apreciar que la implementación funcionó 










viernes, 23 de octubre de 2015

Avances Filtro Pasa Altas

El objetivo de esta entrada es mostrar los avances que tenemos como equipo.
El objetivo general de nuestro trabajo es realizar un Filtro Pasa Altas con ayuda del PSoC.

El contenido de esta entrada se resume en los esquemáticos y simulaciones que hemos trabajado, así como los datos del opamp que tiene el PSoC. No esta de mas comentar que los valores que se usan en las simulaciones y en el esquemático, son tentativas, en la implementación se usaran valores de resistencias y capacitancias comerciales, por lo tanto la frecuencia de corte no será la misma.

En esta ocasión se idealizo para una frecuencia corte de 1kHz, la capacitancia que se uso fue de 159.15nF y Resistencias de 1kOhm

Figura 1: Filtro Activo Pasa Altas 1er Orden

Figura 2: Filtro Activo Pasa Altas 2do Orden
Figura 3: Simulación 280Hz
En azul filtro 1er orden,
Verde Filtro 2do Orden 
Amarillo Señal

Figura 4: Simulación +1kHz 
En azul filtro 1er orden,
Verde Filtro 2do Orden 
Amarillo Señal

Como podemos ver, el filtro funciona, atenúa las frecuencias bajas a la frecuencia de corte, sin embargo al no tener una alimentación simétrica la parte negativa de la señal se pierde.

Figura 5: Esquemático en PSoC Creator

Figura 6: Algunos Datos Importantes del OpAmp de PSoC





domingo, 11 de octubre de 2015

Placa Experimental PSoC

Placa experimental para el PSoC
¿Qué incluiremos en esta placa?
3 Entradas
3 Salidas
Alimentaciones de 5V
2 Potenciómetros
y un LCD

A continuación pondremos unas imágenes del esquemático, posteriormente el diseño final del PCB y para finalizar dejaremos adjuntos los archivos para que puedas descargar nuestro diseño, el cual puede mejorar.

Imagen 1.1 PSoC

Le agregamos filas paralelas para poder usar todos los pines

Imagen 1.2 Filas Paralelas

se agregaron a la placa experimental:
1 LCD
2 Potenciometros, los cuales se activan por jumpers
3 Entradas y 3 Salidas
Alimentaciones

Imagen 1.3 Alimentaciones, Entradas y Salidas

Estos pines se usaran exclusivamente para estos aspectos, en caso de necesitar mas, usaremos las lineas paralelas.

Imagen 1.4 LCD


Imagen 1.5 Potenciometro

A continuación subiremos el PCB, el cual estará disponible para su descarga.

Imagen 1,6 PCB
Imagen 1.7 Implementación



Imagen 1.8 Implementación


Imagen 1.9 Implementación



Descarga Nuestro Trabajo
https://drive.google.com/file/d/0B9PN6ywyXIrDblZmMEZWNjh1U0E/view?usp=sharing