# Medir corriente con Microcontrolador Atmel o PIC



## Montro08 (Sep 22, 2012)

Buenos dias a todos. Tengo una duda, y es que hace unos meses, durante un proyecto, estaba midiendo corriente mediante un sensor de esos famosos ACS714, enviando la señal de 0 a 5V a un Micro Atmel, y luego desplegándolo en una pantalla LCD. Bueno, el algoritmo que utilice (No se si el mas adecuado) fue tomar una cantidad de muestras N de los valores de la corriente en un periodo de la onda (en este caso al energia era 120V a 60 Hz), y tomaba el maximo valor, y ese era el ''Pico'' de corriente consumido por el equipo en prueba. Paralelamente, media la corriente con un medidor de Gancho, para comprobar la medida de Amperes que me daba el Micro a traves del sensor ACS714. Resulta que para un abanico casero, funcionó a la perfección, me daba la misma medida que el medidor de Gancho. Pero cuando lo probe con un Taladro, el Amperaje que media con el Micro era más alto que el que media el medidor de Gancho. 

Solo pensé en 2 cosas... 1. Estoy tomando picos de amperaje que el medidor de gancho no ve (Quiza por la cantidad exagerada de muestras que estaba tomando con el micro, y sacandole el maximo con la funcion MAX).

O quizás 2. Quizás en el taladro, debido a una mayor cantidad de elementos inductivos, se creaban armónicos que distorsionaban la onda, y esos picos de armonicos era lo que leia el Micro, y sin embargo, el medidor de Gancho no los media porque no era el ''Objetivo a medir''.

Estoy medio confundido, y quizas haya otra forma de medir Amperaje diferente a como lo estoy haciendo. Necesito saber como medir un Amperaje exacto, sobre todo si es AC, necesito el RMS y el pico en todo momento. Gracias por la ayuda de antemano.


----------



## Chico3001 (Sep 22, 2012)

La mejor manera es como hiciste... usando un microcontrolador y programandole la funcion de medicion de corriente, no todos los medidores de gancho o incluso voltimetros tienen incorporada la funcion RMS, o tampoco sabes que tiempo de retardo tienen para medir el voltaje pico

Dicho de otro modo.. tu circuito es muy PRECISO, el problema que vas a tener es que no sabes que tan EXACTO es, para poder corregir eso necesitas aplicar una corriente conocida y muy estable y CALIBRAR tu circuito para que otorge la misma medicion que tu corriente patron


----------



## Scooter (Sep 22, 2012)

Yo lo hice con un transformador de intensidad; el cable pasaba por el centro de un pequeño núcleo toroidal y luego dos etapas de amplificación con operacionales y a una entrada analógica.
Yo también tomaba medidas y descartaba las inferiores para así tener el valor pico, solo me quedaba con las positivas, lo calibré con varias cargas y era bastante lineal.
Luego hice un algoritmo para "rectificar por software" pero eso solo se quedó en pruebas, no llegó a ir a la aplicación.
Con las pruebas que hice con lámparas incandescentes entre 20 y 500W era bastante preciso, en mi caso me daba relativamente igual una cierta tolerancia; solo quería saber si la lámpara estaba fundida o no, no el consumo exacto.

Piensa que un taladro, con su motor de colector y probablemente con un dimmer para controlar su velocidad meterá mucho ruido en la línea y si simplemente te quedas con la mayor medida es probable que se quede con los picos. En ese caso me parece que mejor será hacer la media de las medidas o algo así.

El algoritmo que pensé, que solo desarrollé en parte era algo así:
La señal AD sería entre 0 y 5V, 2,5V sería 0A y luego los semiciclos positivos y negativos.

Rectificar por software:
Tomar la medida, si es mayor de 2,5V le restas 2,5 (su valor del conversor)
Si es menor de 2,5 le restas 2,5 y le cambias el signo
Con esto ya tengo todas las "jorobas" hacia arriba

Luego decidir de cuantas muestras saco la media, muchas muestras mas preciso pero de respuesta mas lenta, muy pocas muestras llegaría a verse los 50Hz, y hacer algo así:

media = media - media / n_muestras + última_medida/ n_muestras

Ese sería el valor que me quedaría como corriente, si ahí hay algún pico de corta duración afectará poco a la lectura.


----------



## Montro08 (Sep 22, 2012)

No entiendo cuando dices ''Si ahí hay algun pico de corta duracion, afectará poco la lectura''. No entiendo, porque aunque sea de poca duración, si es suficientemente grande, si afectará la medida final. Porque las tomas de picos de corrientes no tiene que ver con su duracion, sino simplemente con su valor de amperaje en el instante que se tome... Por favor, si estoy equivocado, acláreme.


----------



## Scooter (Sep 22, 2012)

No me he expresado con claridad, cuando digo "pico" no me refiero al valor máximo o de pico que es raiz de dos por el eficaz, me refería a la "cresta" o "punta" del ruido
Si la pinza toma el valor "real" de la corriente no considerará las "puntas de ruido" los incorporará al conjunto. Como son cortos no cuentan casi.

Si tu micro va leyendo y se queda solo con el mayor, solo se quedará con el valor tope del ruido (a eso me refería con pico, debí de emplear otra palabra).

Pienso que ese puede ser el motivo de que tengas lecturas erróneas


----------



## Montro08 (Sep 23, 2012)

Te entendí a la perfección, y aun no concuerdo. Es que, no importa que no duren mucho, el micro lograria tomar ese pico de ruido, y dañaria la medicion real (Al menos con ese método n-esimos de tomar valores en el periodo determinado).

A ver si me explico: Supongamos que la energia utilizada es 120V a 60 Hz. Es obvio que si el Voltaje de entrada es senosoidal, entonces la Corriente consumida sería senosoidal tambien, a 60 Hz. Ahora bien, cambiaría la amplitud de la onda, es decir, el pico de Amperaje y por tanto, el RMS de Amperaje. De eso estamos claro.

Imagina que pongamos un osciloscopio y veamos la onda con la carga del taladro. Veriamos la senosoide, con el ''supuesto ruido'' que me esta midiendo el micro. Supongamos que la onda es tiene como pico 6 Amperes, pero que haya cierto ruido de armonicos, y se vean picos de hasta 10 amperes. El metodo que utilice es tomar N muestras (suficientes como para registrar todos los valores, en teoria) en un periodo de 1/60Hz = 16.66 mili segundos. En ese periodo de onda completa, obviamente estaría ese ruido de 10 Amperes que mencionamos, lo cual distorsionaria la medida, ya que el pico real de la senosoide es de 6 Amperes. Cuando aplique la funcion MAX, me imprimirá el 10, y no el 6. Por tanto, no importa que tan corta sea la duracion del pico de ruido, si el micro la llegara a registrar, dañaria la medida real.


----------



## Scooter (Sep 23, 2012)

Estamos diciendo lo mismo. Si es ese el problema solo se me ocurre minimizarlo sacando la media o algo semejante, por eso te dije lo de rectificar por software; si no "rectificas" la media es cero.
También puedes pensar en filtrar la señal por soft o son un filtro pasabanda de 60hz colocado físicamente.


----------



## Dirac0655 (Sep 23, 2012)

Hola, solo puedo decir que NO es correcto afirmar que si la tensión con que se alimenta un aparato eléctrico es sinusoidal, la corriente tambien lo será, dado que en la actualidad muchos de los aparatos eléctricos que estan en nuestras casas son cargas no lineales, por lo tanto, producen corrientes armónicas. Esto lo puedes observar en un video que he subido hoy en:






Saludos.


----------



## jhonduar (Feb 6, 2013)

buenas tardes...que quiere decir que el sensor acs714 es un sensor lineal? necesito medir la corriente de un motor pap unipolar consume 3 ampere es un proyecto de una grua y enviar eso a una pc.. sera que puedo hacerlo con ese sensor.. gracias


----------

