viernes, 6 de marzo de 2015

Medicio de AC 220V/25A - Diseño de la Placa

Transductor de Voltaje

Como se comento en la primera entrada correspondiente a este proyecto, escogimos el sensor LV25P, del cual se describieron sus características, su vista esquemática se muestra en la siguiente imagen:

Sensor de Voltaje LEM LV-25P

De los datos del sensor tenemos que:

- Corriente Nominal del primario IPN : 10mA
- Corriente del Primario IP : 0 ... +/- 14mA
- Corriente nominal de Salida ISN : 25mA

En este caso las terminales +HT y -HT corresponden a las terminales del voltaje a medir. La resistencia R1 se calcula de la siguiente manera: 


Además la potencia de dicha resistencia:


Por lo que la resistencia debe ser capaz de disipar 3.11W de potencia.

A la salida del sensor tendremos una corriente en AC con una amplitud de 25mA. Debido a que nuestro micro controlador únicamente puede hacer la lectura de valores de 0 a 3.3V, es necesario construir una etapa de acondicionamiento previa. Para ello hacemos uso de un convertidos de corriente a voltaje con OPAMP.

Convertidor de corriente a voltaje

Donde VSignal Corresponde a la corriente de salida del sensor, que se denomina como is.

La función del circuito anterior seria:


Para el caso anterior tenemos que:



Con el arreglo de resistencias propuesto, a la salida se obtendrá una señal senoidal de amplitud de 3.3V.

Señal senoidal de 3.3V

Como siguiente etapa se debe colocar un sumador para agregar el offset a la señal de 3.3V a la etapa anterior.
Sumador para agregar offset


La función de este arreglo es:


En este caso:




Para nuestra aplicación en particular tenemos que si:



Entonces:



Por lo que a la salida tendríamos nuestra señal senoidal de 0 a 3.3V la cual puede ser introducida a nuestro micro controlador, donde 0 representa un valor de -220V y 3.3 el valor de 220V

Señal senoidal de 0 a 3.3V

Sensor de Corriente


Para el sensor de corriente que escogimos tenemos que la representación esquemática es la siguiente:

Sensor de Corriente
De los datos del sensor tenemos que:

- Corriente Nominal del primario IPN : 25A
- Corriente nominal de Salida ISN : 25mA

Este transductor de corriente es el del tipo invasivo, por lo que se debe colocar en serie en el circuito donde se desea medir la corriente. Para ello cuenta con un conjunto de pines los cuales se deben unir de acuerdo a la corriente nominal que se espera en el primario.

De acuerdo con la hoja de datos la configuración a utilizar para 25A es la siguiente:


En cuanto al acondicionamiento de la señal de salida del transductor, se emplearon los mismos circuitos de amplificadores operacionales que en el caso del transductor de voltaje, esto con el fin de obtener una señal senoidal a  la salida con un valor de entre 0 y 3.3V, donde 0 representa -25A y 3.3 representa 25A.

Detector de cruce por cero

Para realizar la medición de la frecuencia se hizo uso de un detector de cruce por cero. Para este caso se utilizó el amplificador OP295, debido a que no requiere alimentación simétrica para su funcionamiento, el esquema es el siguiente.

Amplificador OP295
La señal que saldría del operacional se puede observar en la siguiente imagen:


Filtro de la señal

Para la etapa de filtrado de sañales, decidimos hacer uso de los módulos analógicos de un PSoC, en este caso seria el CY8C25122-24PI PDIP. Dentro de este dispositivo se puede realizar la programación de la frecuencia de corte de nuestro filtro pasa-bajas. Se hace uso de un pasa-bajas para impedir el paso de frecuencias mayores a 60Hz.

PSoC CY8C25122-24PI PDIP

Aislamiento

En nuestro caso, tanto el transductor LV25-P como el LA25-NP cuentan con aislamiento galvánico, por lo que el circuito de potencia se encuentra completamente aislado de nuestro circuito de acondicionamiento.

Diagrama esquemático de circuitos de sensores

Esquemático de los sensores con su respectiva alimentación y borneras para poder realizar su medición.


Tratamiento de la señal para poder obtener el voltaje que se podrá leer por parte del micro controlador


Filtrado de la señal y disposición para lectura del micro controlador


PCB

Para el diseño de la placa se decidió separar la parte de potencia con la de acondicionamiento de señal, de tal manera que la placa de acondicionamiento se montara sobre la placa de potencia.
Debido a que la corriente que pasará por el circuito es de 25 A se requiere el uso de Terminal blocks adecuados para dicha condición.

Un ejemplo de Terminal Block adecuado para la aplicación podría ser como el presentado en la imagen anterior, el cual puede permitir el uso de calibres entre 22 y 12 AWG. En nuestra aplicación consideramos que un calibre 14 sería suficiente para realizar las tareas de conexión.

Por otra parte dentro del circuito del PCB las conexiones a la corriente deben tener pistas mucho más gruesas, mientras más cobre ocupen dichas pistas menor será el riesgo de que estas últimas exploten.



Lectura de señales y cálculos complementarios

Voltaje

El voltaje se lee directamente del ADC habilitado para la lectura, para el voltaje tenemos que 0 es para -220V y 3.3 es para 220V. Debido a que la lectura que nos interesa es de 0 a 220 la conversión a numero flotante se ajustara a la escala, el algoritmo seria:

  1. Se declara una variable universal
  2. Conversión a numero flotante de la lectura del ADC
  3. Se guarda el numero flotante en la variable universal
  4. Se ajusta la escala restando 1.15 a la variable
  5. Se obtiene el valor real multiplicando la variable por 191.30

Corriente

La corriente se lee directamente del ADC habilitado para la lectura, para la corriente tenemos que 0 es para -25A y 3.3 es para 25A. Debido a que la lectura que nos interesa es de 0 a 25 la conversión a numero flotante se ajustara a la escala, el algoritmo seria:

  1. Se declara una variable universal
  2. Conversión a numero flotante de la lectura del ADC
  3. Se guarda el numero flotante en la variable universal
  4. Se ajusta la escala restando 1.15 a la variable
  5. Se obtiene el valor real multiplicando la variable por 82.5

Frecuencia

Para el calculo de frecuencia se debe detectar el flancos de subida y de bajada, debido a que la frecuencia es muy baja, podemos realizar una lectura por estados, el algoritmo seria:

  1. Se declara un thread independiente
  2. Se declara un timer independiente de 1 segundo
  3. Se declara una variable universal en cero
  4. Dentro del thread se programa una función de interrupción (esto identificara los flancos)
  5. Se guardan los cambios de flanco en la variable universal
  6. Cuando el timer se cumple se lee la variable universal y se regresa a Ceros
  7. La variable universal se divide en dos para obtener la lectura de la frecuencia

Potencia aparente

Podemos calcular la potencia aparente de manera muy sencilla al multiplicar el voltaje por la corriente, el algoritmo seria:
  1. Se declara una variable universal
  2. Se multiplica la variable de voltaje por la variable de corriente
  3. El resultado de la multiplicación anterior se guarda en la variable universal

Energía

Para el calculo de energía debemos determinar en que periodo de tiempo se medirá, Recordemos que la potencia es la relación del uso de la energía respecto al tiempo. El algoritmo seria:

  1. Se declara una variable de entrada para el tiempo
  2. Se declara una variable universal
  3. Se declara un timer con respecto a la variable de tiempo
  4. Cuando se cumple el timer se multiplica el histórico de la potencia por el tiempo dado
  5. Se guarda el resultado en la variable universal





1 comentario:

  1. Muy buen trabajo. Esta explicado paso a paso de tal manera que sea facil comprenderlo. Gracias por el aporte!

    ResponderEliminar