martes, 12 de julio de 2016

Práctica 8: Frecuencimetro

Introducción.
La siguiente entrada corresponde a la práctica realizada con el fin de probar la funcionalidad de la tarjeta de desarrollo del PSoC 5 armada anteriormente. Para ello se utilizó el PSoC Creator 3.3 para diseñar el esquemático y programarlo en el PSoC, con un generador de funciones se introducirá una señal que sera mostrada por la pantalla LCD.

Materiales.
- Tarjeta de desarrollo de PSoC
- PSoC 5LP
- Generador de funciones

Desarrollo.

  • Se abre el PSoC Creator y se crea un nuevo proyecto.
  • En el lienzo se seleccionan los siguientes componentes.
    • PWM [v3.30]
    • Counter [v3.0]
    • interrupt [v1.70]
    • Logic Low '0' [v1.0]
    • Clock [v2.20]
    • Comparator [v2.0]
    • Digital Input Pin
    • Digital Output Pin
    • VRef [v1.70]
    • Character LCD [v2.20]
  • Se les hacen las siguientes configuraciones.
    • PWM [v3.30]

Figura 1. Configuraciones del PWM
    • Counter [v3.0]

                                              Figura 2. Configuraciones del Counter
    • Interrupt [v1.70]
Figura 3. Configuración del interruptor

    • Logic Low '0' [v1.0]
Figura 4. Configuración del constante

    • Clock [v2.20], los 2 clocks tienen la misma configuración y se conecta el clock del comparador al clock_l.
                                               Figura 5. Configuración del reloj
    • Comparator [v2.0]
 Figura 6. Configuración del Comparador
    • Digital Input Pin
 Figura 7. Configuración del pin positivo del comparador

    • Digital Output Pin, todos los pines que se conectan al LCD tienen la misma configuración.
 Figura 8. Configuración de los pines del LCD
    • VRef [v1.70].
 Figura 9. Configuración del pin negativo del comparador
    • Character LCD [v2.20]
 Figura 10. Configuración del LCD

  • El esquemático completo queda así:
Figura 11. Esquemático del frecuencimetro.

  • Los pines se le asignan los siguientes puertos, que son los que están designados en la placa para la pantalla LCD.
Figura 12. Puertos de pines

  • El codigo utilizado es el siguiente:
#include
#include

uint32 cont;
uint32 r1;
char8 str[12];
uint32 frec;

CY_ISR(frecuencimetro)
{    
    cont = Counter_ReadCounter();
    frec = cont;
    
    LCD_Start();
    LCD_Position(0,1);
    LCD_PrintString("Frecuencia:");
    sprintf(str, "%lu", frec);
        LCD_Position(1,3);
        LCD_PrintString(str);
       Counter_WriteCounter(0);
        CyDelay(1050);
        LCD_ClearDisplay();
}

int main()
{
    CyGlobalIntEnable; /* Enable global interrupts. */
    LCD_Start();
    Comp_1_Start();
    isr_StartEx(frecuencimetro);
    PWM_Start();

    Counter_Start();

    for(;;)
    {
        
    }
}
  • Se compila y se programa en el PSoC.
  • Se introduce la señal usando las borneras seleccionadas del pin de entrada (la figura 7) con su respectiva tierra y es solo eso lo que se conecta a la placa.

Figura 13. Tarjeta de desarrollo con PSoC
  • Ya se deberá observar en la pantalla LCD el respectivo texto de frecuencia con su respectivo valor, según se modifique en el generador de señales.

Nota: Para realizar el comparador se utilizó un archivo de cypress, el link es el siguiente: http://www.cypress.com/file/144696/download


Proyecto Final: Tarjeta de Desarrollo para PSoC 5

Introducción.
La siguiente entrada corresponde al proyecto final del curso de Electrónica 2, en el cual armaremos una tarjeta de desarrollo para poder manejar el microprocesador CYC8CKIT-059 PSoC 5LP.  Para ello se utilizara un software para diseñar el esquemático y el pcb de la placa.

Materiales.
- Placa fenólica doble cara
- Borneras - 7 (Dos de dos borneras y una de 3 borneras)
- Push botton - 3 (Chico)
- Tira de pines hembra - 3
- Potenciómetro de montaje superficial 10k Ohms - 2
- Resistencia de montaje superficial de 220 Ohms - 3
- Led de montaje superficial - 3
- Switch - 1 (Chico)
- Pantalla LCD

La placa tendrá:
- 3 entradas analógicas (entrada-tierra)
- 1 entrada Vcc 
- 1 pantalla LCD
- 3 botones
- 2 salidas analógicas 
- 9 GPIO
- 3 Leds
- 1 Switch

Desarrollo.

Parte 1: Diseño de la placa
  • Se abre el software y se crea un nuevo proyecto. 
  • En el lienzo del esquemático se deberá seleccionar los siguientes elementos:
    • 66226-009
    • 66226-016
    • 66226-056LF
    • BUTTON
    • CHIPRES220R
    • LED-BLUE
    • PIN
    • SWITCH
    • TBLOCK- I2
    • TBLOCK-I3
  • Una vez que se seleccionen se crea el diseño de la figura 1:

Figura 1. Esquemático de la placa

  • Ya que este listo el esquemático se pasa al lienzo del PCB y se acomodan los elementos como se quiera, en nuestro caso se acomodo como se muestra en la figura 2:


Figura 2. PCB de la placa

         Nota: Las medidas de la placa final fue de 10cmx7.5cm 
  • Se selecciona la ventana del visualizadort 3D para observar como quedara la placa con los elementos seleccionados.

Figura 3. vistas 3D del PCB 

Parte 2: Armado de la placa
  • Para hacer el circuito en la placa se utilizo una maquina CNC, con esta maquina se dibujó el circuito en la placa fenólica. (También puede hacerse con planchado)
    • Para hacer el circuito se tuvieron que exportar los siguientes archivos del software.
Figura 4. archivos exportados al software cnc
    • Se nivela el cortador y se acomoda la placa en el soporte con cinta para evitar que se mueva.
    • Se calibra el brazo de la maquina buscando que la posición de la punta concuerde con la posición señalada en el lienzo del software. Una vez listo, se deja correr el programa para que se hagan las lineas del circuito.
  • Una vez lista la placa, se procede a perforar y soldar, teniendo cuidado con las piezas superficiales a la hora de posicionarlas.
  • Al final la placa queda así:
Figura 5. Placa de PSoC


martes, 5 de julio de 2016

Práctica 7: Generador de Funciones

Introducción.
El siguiente post corresponde a una práctica realizada con un microprocesador “CYC8CKIT- 059 PSoC 5LP” para armar un generador de funciones que tenga como salida tres señales: sinoidal, cuadrada y triangular, los cuales se puedan variar en amplitud con un potenciómetro.

Materiales:
1.      3 Potenciómetro de 10kΩ.
2.      Protoboard.
3.      Cables.
4.      Microprocesador.

Desarrollo.
  • ·        Abrir el Psoc Creator
  • ·        Crear un nuevo proyecto (File-> New-> Project...)  
  • ·    Seleccionar Desing->PSoC 5LP. En la misma ventana Asignar el nombre del proyecto en la       línea, Name... 
    • Nota: Verificar que el modelo con el que se cuenta sea el correcto en la línea       Device. De no ser el correcto, seleccionar . Y elegir el siguiente:


  • ·    Se deberá tener acceso a una pantalla como la que se muestra a continuación; los componentes     se seleccionarán en el punto señala en la imagen.

  •        Los componentes son:
    o   Digital Input Pin [v2.20]
    o   Waveform DAC(8-bit) [v2.10]
    o   PGA [v2.0]
    o   Digital Output Pin [v2.20]
       ·     Cada uno de los componentes seleccionados, se arrastran al lienzo y se les hacen las siguientes modificaciones:
    o   WaveDAC_1, es la que va a tener la señal sinodal por lo que se modifica en “Wave type” a Sine también se va a modificar el “Range selection” a VDAC 0 – 4.080 V. Si se quiere se puede modificar el nombre del componente de WaveDAC8_1 por el que se desee siempre y cuando al inicializar teclear el código se respete el cambio; En nuestro caso lo dejamos tal como se da por defecto.
  • o  WaveDAC8_2 es la de la señal cuadrada se repite lo mismo que del WaveDAC8_1.

  • o  WaveDAC8_3 es la de la señal triangular se repite lo mismo que del WaveDAC8_1.

  • o   Al Digital Input Pin.

  • o   Al PGA.
  •    Lo mismo se hace para el PGA_2 y PGA_3
  • o   Al Digital Output Pin
  • .
  •          Al final quedan así las conexiones:
  •       Para seleccionar los pines se hace clic sobre el archivo con terminación “  .cydwr”. Ahí en la sección de “Port” se pueden modificar los pines de las salidas conforme se quiera o se puede dejar tal como se muestra en la figura 10.
  •       Para compilar los cambios nos vamos a  Build->Build Pantalla. Luego de ello en la pantalla "Workspace Explorer" abrimos el archivo main.c que corresponde al código a ejecutar.
    ·     En Main, el codigo a utilizar es el siguiente:

    #include

    int main()
    {
        CyGlobalIntEnable; /* Enable global interrupts. */

        /* Place your initialization/startup code here (e.g. MyInst_Start()) */
        WaveDAC8_1_Start();
        WaveDAC8_2_Start();
        WaveDAC8_3_Start();
        PGA_1_Start();
        PGA_2_Start();
        PGA_3_Start();
       
        for(;;)
        {
            /* Place your application code here. */
        }
    }

    /* [] END OF FILE */
    ·   Finalmente se programa el microcontrolador y solo falta armar el circuito en un protoboard agregándole un potenciómetro a cada salida, el cual va a ser el encargado de modificar la ganancia de cada señal.
  •        Al final se utiliza un osciloscopio y tres cables de osciloscopio para observar las señales.
  •  A continuación se presenta el link del vídeo demostrativo de la práctica: https://www.youtube.com/watch?v=i9lGJ_KVHiA