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






viernes, 11 de septiembre de 2015

LCD PSoC 5LP (Ej anterior)



Retomando el proyecto de la entrada anterior, añadiremos un LCD para mostrar el voltaje que está entrando al ADC.

Antes que nada abrimos el PSoC creator, como vamos a imprimir el voltaje que le entra al adc, podemos usar el proyecto anterior.

Como antes, usaremos un ADC, un PWM y un LCD. el Software dentro de sus librerías ya trae opciones para usar el LCD, pero nosotros usaremos una biblioteca diferente, la cual puedes encontrar en el siguiente link:

http://www.mediafire.com/download/yrrmxwh5uyhzf6h/CharLCDmp_Demo3.zip

Para añadir la librería nos vamos al menú Project/Dependencies/User dependencies. Mas adelante se dejara el enlace a un vídeo del cual nos basamos que muestra estos pasos y una solución a los errores que aparecerán mas adelante.

Si usamos el proyecto anterior (ADC+PWM) solo necesitamos agregar el Block correspondiente al ADC y asignarle unos pines digitales de tipo output como se muestra en la siguiente imagen.

Cabe recalcar que el componente no se encuentra en la carpeta de cypress, sino en la de community.


Como sabemos el siguiente paso será asignar los pines, se selecciono ésta librería para el LCD pues te deja seleccionar el orden que quieras en la asignación, como veremos en la siguiente imagen. Sin embargo, si se usa el componente que trae el PSoC Creator, el programa te asignara una fila de 7 pines seguidos.

En la imagen anterior vemos como queda finalmente la asignación de los pines, procedemos entonces a hacer el código, no esta de mas comentar que antes de pasar el código compilemos lo que ya tenemos.

Primero, se debe incluir lo siguiente para que el código funcione.
Paso siguiente



En teoría el código debería funcionar hasta este punto, pero hay que hacerles unos ajustes al PSoC Creator, los cuales se explican muy bien en el siguiente vídeo:




Para finalizar, hacemos click en Build!
A continuación los resultados de la implementación.










martes, 8 de septiembre de 2015

ADC+PWM PSoC 5LP

Mediante el uso de un ADC y PWM controlaremos la intensidad de un LED, en este caso usaremos el LED que trae nuestra placa.

A continuación mostramos un ejemplo, donde se aprecia el resultado final



Los materiales que usamos:

1 CY8CKIT-059 PSoC 5LP Prototyping Kit
1 Potenciometro
El Sofware PSoC Creator

Procedimiento:
Primero en el PSoC creator vamos a seleccionar los bloques que usaremos, esta ocasión como dice el título usamos un ADC y un PWM.
Un SAR ADC configurado a 8bits. con un input range de Grd a 5V, para esto buscamos el ADC en la librería y lo arrastramos. Para configurar los bits y el input range le damos doble click.

Ahora necesitamos el PWM, lo buscamos en las librerias y lo arrastramos al área de trabajo, con doble click lo configuramos para que sea de 1 salida, y de 8 bits.

Ahora realizamos las conexiones necesarias. Para el ADC necesitamos una entrada analógica. El PWM requiere de un Clock, que se encuentra en las librerías, un cero analógico en el reset y un pin digital a la salida.


Paso siguiente escogemos los pines a los cuales conectaremos la entrada y salida, en nuestro caso usamos el Pin 0.0 para la entrada y el pin 2.1 para usar el LED de la tarjeta.


Para finalizar se hace el código y lo cargamos a la tarjeta
A continuación mostramos imágenes de la implementación.