Upload
doankiet
View
213
Download
0
Embed Size (px)
Citation preview
TUTORIAL Arduino Energy Shield
MCI-TU-0003 | REV. 1.0
Ingeniería MCI Ltda.
Luis Thayer Ojeda 0115 of. 1105, Providencia, Santiago, Chile.
+56 2 23339579 | www.olimex.cl | [email protected]
TUTORIAL ARDUINO ENERGY SHIELD Página 2 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
Ingeniería MCI Ltda.
Luis Thayer Ojeda 0115 Oficina 1105
Providencia, Santiago, Chile
www.olimex.cl
Tel: +56 2 23339579
Fax: +56 2 23350589
® MCI Ltda. 2016
Atención: cambios y modificaciones hechas en el dispositivo, no autorizados expresamente por
MCI, anularán su garantía.
Código Manual: MCI–TU-0003
TUTORIAL ARDUINO ENERGY SHIELD Página 3 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
CONTENIDO
CONTENIDO ......................................................................................................................................... 3
DESCRIPCIÓN ....................................................................................................................................... 5
CARACTERÍSTICAS ................................................................................................................................ 5
CONEXIONADO .................................................................................................................................... 6
PROCEDIMIENTO DE ARMADO ........................................................................................................... 7
PROCEDIMIENTO DE EJECUCIÓN DEL EXPERIMENTO ..................................................................... 7
XBEE ................................................................................................................................................. 7
RTC (REAL TIME CLOCK) .................................................................................................................. 8
CONECTAR EL LCD ........................................................................................................................... 8
INSTALAR XCTU ............................................................................................................................... 9
INSTALAR XBEE EXPLORER USB ..................................................................................................... 10
CONFIGURAR LOS MÓDULOS XBEE ............................................................................................... 10
COMO CONFIGURAR LA RED XBEE SERIE 1 ....................................................................................... 11
COMO CONFIGURAR LA RED XBEE SERIE 2 ....................................................................................... 13
PUNTO A MULTIPUNTO: ............................................................................................................... 14
RED BROADCAST ........................................................................................................................... 14
COMO PROGRAMAR LA TARJETA ARDUINO ENERGY SHIELD ............................................................... 15
INSTALAR PLATAFORMA ARDUINO ............................................................................................... 15
BAJAR EL CÓDIGO FUENTE ............................................................................................................ 16
COMPILAR Y CARGAR .................................................................................................................... 16
EXTRA 1: INTRODUCCIÓN A SISTEMAS ELECTROMECÁNICOS .......................................................... 19
DIFERENCIA ENTRE ENERGÍA Y POTENCIA .................................................................................... 19
UNIDADES DE MEDIDA DE LA POTENCIA ...................................................................................... 20
EL TRIÁNGULO DE POTENCIA ........................................................................................................ 21
EL FACTOR DE POTENCIA .............................................................................................................. 22
CÓMO MEDIR EL CONSUMO DE UN EQUIPO USANDO LA TARJETA ARDUINO ENERGY SHIELD ...... 23
CONSOLA SERIAL ........................................................................................................................... 24
TUTORIAL ARDUINO ENERGY SHIELD Página 4 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
GLCD .............................................................................................................................................. 24
CONSOLA XBEE .............................................................................................................................. 25
ANEXO 1 ............................................................................................................................................ 26
COMO MODIFICAR EL CÓDIGO Y ALGUNOS TIPS SOBRE SU IMPLEMENTACIÓN ......................... 26
RELACIÓN DE VUELTAS DEL TRANSFORMADOR DE VOLTAJE (REFERENCIA DE CRUCE POR CERO)
....................................................................................................................................................... 28
NUMERO DE VUELTAS DEL CABLE DE MEDICIÓN DE CORRIENTE................................................. 28
COMO MODIFICAR EL CRUCE POR CERO Y DEJAR EL CHIP EN LAZO ABIERTO ............................. 29
HISTORIA DEL DOCUMENTO ............................................................................................................. 31
TUTORIAL ARDUINO ENERGY SHIELD Página 5 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
DESCRIPCIÓN
La tarjeta Arduino Energy Shield nos permite medir el nivel de consumo eléctrico de cualquier
dispositivo conectado a la red domiciliaria, a través de un sencillo conexionado.
Por medio de esta plataforma se puede monitorear un dispositivo eléctrico y enviar los datos
medidos a través de una interfaz serial y/o comunicar todo por la red Zigbee usando los módulos
XBee Serie 1 (para comunicación punto a punto), o mediante una red distribuida (mesh) usando los
módulos XBee Serie 2.
Además se puede incorporar una pantalla LCD para desplegar las mediciones en forma local y crear
un sistema de medición de características profesionales.
Entre las ventajas que presenta esta tarjeta podemos mencionar: la capacidad de usar las librerías
Arduino, el monitoreo en tiempo real de variables por medio de una red inalámbrica, el monitoreo
constante de los valores medidos a través de la pantalla LCD.
Las limitaciones de esta tarjeta son que no permite el uso de los pines de la tarjeta Arduino de
manera directa, sin embargo es bastante fácil acceder a ellos por medio de un conector
intermedio o a través de cables. Además debemos tener en cuenta que las mediciones realizadas
son referenciales y representan una aproximación de los valores reales que se están midiendo. De
todas formas, los resultados nos entregarán información suficientemente certera para tomar
decisiones y a un costo muy reducido de las alternativas de mercado.
CARACTERÍSTICAS
A continuación se presentarán las características de la tarjeta.
Entrada para sensor de Voltaje
Entrada para sensor de Corriente
Reloj de Tiempo Real
Comunicación inalámbrica
Socket para XBee
TUTORIAL ARDUINO ENERGY SHIELD Página 6 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
CONEXIONADO
El siguiente diagrama describe la tarjeta Arduino Energy Shield de manera esquemática, en ella
indicaremos donde debemos conectar los sensores para realizar las mediciones de consumo.
En cada uno de los sectores marcados, encontramos:
Nº Descripción
1 Arduino Energy Shield
2 Arduino UNO (montada con la anterior)
3 Transformador (220/12 VAC)
4 Sensor de Corriente
5 Enchufe macho (a red eléctrica)
6 Enchufe hembra (dispositivo a medir)
TUTORIAL ARDUINO ENERGY SHIELD Página 7 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
La razón por la cual debemos conectar el circuito a la red eléctrica se debe a que el chip que realiza
las mediciones de energía y cálculos de potencia necesita tener una referencia contra que medir,
para nuestro caso esto se realiza cada vez que la onda eléctrica cruza el cero, con lo cual se miden
los ciclos. Así, para realizar una medición de 50 ciclos (o 1 segundo para una red eléctrica de 50 [Hz]),
se necesitan medir 100 cruces por cero*.
*Recordar que un periodo completo tiene dos cruces por cero, uno que define la parte donde la
onda se encuentra por sobre el cero y el otro que define la parte donde la onda está por debajo del
cero.
PROCEDIMIENTO DE ARMADO
PROCEDIMIENTO DE EJECUCIÓN DEL EXPERIMENTO
Nuestro experimento completo incluye el uso de un GLCD con interfaz serializada y de un módulo
de transmisión inalámbrico XBee, con lo cual podemos realizar un monitoreo local y/o remoto: por
ejemplo podemos centralizar el monitoreo de diversas unidades de congelamiento en una oficina
central, o colocar el visor GLCD de un camión frigorífico en la cabina.
Si se desea pasar directo a la sección de las mediciones, solo debemos ir a la sección “Mediciones”.
XBEE
Si hemos optado por hacer uso de XBee, debemos realizar la configuración de nuestros
dispositivos de comunicación Módulos XBee Serie 1 o XBee Serie 2. Según sea la elección que se
haya hecho se debemos proseguir en la sección que corresponda (las que siguen a continuación).
TUTORIAL ARDUINO ENERGY SHIELD Página 8 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
RTC (REAL TIME CLOCK)
Una parte importante de la operación de la tarjeta, es configurar el RTC. Para esto, debemos ir a la
página de la tarjeta Arduino Energy Shield y descargar el código llamado ‘DemoConfigureRTC’. El
procedimiento de carga es el mismo que usaremos para subir el código del presente tutorial a la
tarjeta Arduino Energy Shield y que se describe a continuación; una vez que tengamos cargado el
código para configurar el RTC se desplegará un menú en la consola serial que nos permitirá ingresar
la fecha y hora.
CONECTAR EL LCD
Para conectar el LCD haremos uso de la interfaz SoftwareSerial de la plataforma Arduino, con lo cual
deberemos conectar nuestra tarjeta Arduino (UNO R3 o Leonardo) hacia el GLCD Backpack, solo
necesitaremos un pin (TX de la tarjeta Arduino conectado al RX del GLCD Backpack). Para el caso de
nuestro ejemplo se ha seleccionado el PIN 8 para este trabajo. Debido a las restricciones propias del
diseño, esta conexión deberemos realizarla por medio de algún cable o algún otro tipo de
intervención (para una instalación permanente es una buena opción soldar un cable al pin, y
recubrirlo con termoretráctil, para mayor resistencia mecánica).
*Como no usaremos el PIN RX en la tarjeta Arduino (el GLCD Backpack no tiene TX), podemos
asignar el valor 0 a ese pin cuando definamos nuestra interfaz SoftwareSerial, con lo cual dejamos
un pin más disponible para otros propósitos.
TUTORIAL ARDUINO ENERGY SHIELD Página 9 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
La relación del transformador es importante al momento de realizar las mediciones, en este caso se
ha usado una conversión de 220/12 [VAC], aunque esto es modificable en el código si se opta por
algún otro tipo de transformador. (Ver sección Anexo 1, al final del presente manual).
Una vez realizados los procedimientos anteriores, continuaremos con la programación de la
tarjeta Arduino Energy Shield, por medio de la plataforma Arduino.
INSTALAR XCTU
La instalación de la plataforma XCTU es bastante simple, si bien puede tomar una cantidad de
tiempo considerable dado que el programa bajará los firmwares actualizados para los diferentes
módems que puede manejar. Una vez realizado el proceso de instalación nos encontraremos con
la siguiente interfaz.
TUTORIAL ARDUINO ENERGY SHIELD Página 10 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
El manejo del programa es muy simple, si bien nos presenta muchas opciones solo debemos usar
una cantidad muy limitada de ellas.
INSTALAR XBEE EXPLORER USB
Antes de continuar, debemos tener instalado el XBee Explorer USB, el cual nos permitirá configurar
y operar el módem XBee desde nuestro PC. Simplemente debemos poner el modem ‘XBee’ en el
‘XBee Explorer USB’ y enchufar el puerto USB a nuestro computador, para las versiones de Windows
Vista y anteriores, los drivers serán instalados de manera automática. Para Windows 7 debemos
realizar el proceso de instalación de los drivers de manera manual desde el administrador de
dispositivo.
CONFIGURAR LOS MÓDULOS XBEE
Una vez realizado el proceso de instalación del ‘XBee Explorer USB’ deberemos abrir nuevamente
el XCTU y veremos como el puerto que acabamos de instalar aparece en la lista de puertos COM.
Para asegurarnos que todo está operativo, podemos presionar el botón “Test/Query” y se
desplegará una pequeña ventana con la información de nuestro módulo XBee.
TUTORIAL ARDUINO ENERGY SHIELD Página 11 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
Para configurar el módulo XBee debemos acceder a la pestaña “Modem Configuration” y presionar
el botón “Read” con lo cual se leerán los parámetros del modem que tenemos conectado. Ahora,
debemos seguir en la sección correspondiente al tipo de módulo que hayamos adquirido (Serie 1 o
Serie 2).
COMO CONFIGURAR LA RED XBEE SERIE 1
En la imagen podemos encontrar la configuración básica de un módulo XBee Serie 1.
En las siguientes tablas, podemos encontrar la descripción de los campos y los valores que
debemos asignar a cada uno de ellos para configurar los XBee Serie 1 en “modo transparente” o
en una conexión punto a punto.
Indicador Nombre
DH Destination Address High
DL Destination Address Low
MY 16-bit Source Address
ID PAN ID
SH Serial Number High
SL Serial Number Low
CE Coordinator Enable
TUTORIAL ARDUINO ENERGY SHIELD Página 12 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
A continuación se muestra un ejemplo de cómo se deben de configurar los dos módulos:
XBee A Valores XBee B Valores
DH 13A200 DH 13A200
DL 4076E267 DL 4076E26E
MY AAAA MY AAAA
SH 13A200 (viene por defecto) SH 13A200 (viene por defecto)
SL 4076E26E (viene por defecto) SL 4076E267 (viene por defecto)
CE 1 -Coordinator CE 0 -End Device Serie 1 Pro
Existen otras formas de configurar una red XBee, la anterior es una forma fácil que solo involucra
dos módems; aunque en todas ellas debemos asegurarnos que se comparta el mismo identificador
de la red (PAN ID), pues este valor nos permite diferenciar redes que se encuentren cercanas y
descarta cualquier recepción que no corresponda con el valor PAN ID de nuestro modem.
Si deseamos conectar 3 nodos, podemos optar por una forma fácil donde todos se escuchen entre
ellos, algo que es similar a una red tipo bus. Para ello, optaremos por hacer un broadcast desde
cada uno de los XBee Serie 1 configurándolos de la siguiente forma:
XBee A XBee B Xbee C (o cualquier otro)
DH 0 DH 0 DH 0
DL FFFF DL FFFF DL FFFF
MY 0 MY 0 MY 0
PAN ID 8888 PAN ID 8888 PAN ID 8888
SH (viene por defecto) SH (viene por defecto) SH (viene por defecto)
SL (viene por defecto) SL (viene por defecto) SL (viene por defecto)
CE 1 -Coordinator CE 0 -End Device CE 0 -End Device
TUTORIAL ARDUINO ENERGY SHIELD Página 13 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
Para usar esta red, debemos hacer un pequeño protocolo por software, que envié un identificador
desde cada módem y que se tomen acciones por cada uno de estos identificadores (y aquellos que
no sean dirigidos al módem involucrado deben ser descartados).
COMO CONFIGURAR LA RED XBEE SERIE 2
En la imagen podemos encontrar la configuración básica de un módulo XBee Serie 2, no hay muchas
diferencias en su forma básica de configuración con la Serie 1, si bien en esta versión encontraremos
más campos y una distribución un poco diferente de los mismos.
En las siguientes tablas, podemos encontrar la descripción de los campos y los valores que
debemos asignar a cada uno para configurar los XBee Serie 2 en “modo transparente” o en una
conexión punto a punto:
TUTORIAL ARDUINO ENERGY SHIELD Página 14 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
Indicador Nombre
DH Destination Address High
DL Destination Address Low
MY 16-bit Network Address
SH Serial Number High
SL Serial Number Low
PAN ID Operating PAN ID
A continuación se muestra un ejemplo de cómo se deben de configurar los dos módulos:
XBee A Valores XBee B Valores
DH 13A200 DH 13A200
DL 4076E267 DL 4076E26E
MY AAAA MY AAAA
PAN ID 234 PAN ID 234
SH 13A200 (viene por defecto) SH 13A200 (viene por defecto)
SL 4076E26E (viene por defecto) SL 4076E267 (viene por defecto)
La ventaja de los módems XBee Serie 2, es que se pueden configurar redes más completas (tipo
mesh). Esto nos brinda la ventaja de poder tener redes que abarquen zonas geográficas mucho
más amplias que con la serie 1, si bien estas redes son mucho más complejas.
Acá se entrega una pequeña descripción de cómo configurar una red XBee Serie 2 con más de dos
dispositivos:
PUNTO A MULTIPUNTO:
Una conexión punto a multipunto es óptima cuando se requiere enviar información de manera
controlada a uno o varios nodos a la misma vez, lo cual lo diferencia de una broadcast. Solo basta
con utilizar el método de una red punto a punto para la transmisión a un nodo, para realizar la
transmisión a varios nodos a la vez solo basta con utilizar como dirección destino 0xFFFF.
Es importante tener en cuenta que se debe configurar el módulo XBee en la misma dirección PAN y
el mismo canal de comunicación: recuerde que la XBee tiene 16 canales de comunicación.
RED BROADCAST
Esta red se diferencia de las demás en que todos los nodos tienen la dirección broadcast configurada
lo que implica que los datos son recibidos hacia y por todos los nodos de la red. La dirección
broadcast es DH=0x00000000 DL=0x0000FFFF.
TUTORIAL ARDUINO ENERGY SHIELD Página 15 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
COMO PROGRAMAR LA TARJETA ARDUINO ENERGY SHIELD
Para programar la nuestra plataforma debemos montar la tarjeta Arduino Energy Shield junto con
la tarjeta Arduino seleccionada. Las plataformas Arduino UNO R3 y Arduino Leonardo tienen los
módulos de programación incorporados en la placa, por lo cual solo debemos conectarla a través
de un Cable USB para su programación.
Es apropiado conectar la tarjeta Energy Shield a una fuente de energía externa, pues el consumo se
energía puede afectar el proceso de programación.
INSTALAR PLATAFORMA ARDUINO
La instalación de la plataforma Arduino es muy sencilla, simplemente debemos bajarlo desde el sitio
de Arduino (acá) y descomprimirlo en una carpeta. Luego ejecuta “Arduino.exe” y ya está operativo!
TUTORIAL ARDUINO ENERGY SHIELD Página 16 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
BAJAR EL CÓDIGO FUENTE
El código fuente de nuestro ejemplo lo podemos obtener desde el sitio de la tarjeta Arduino Energy
Shield. Debemos descomprimirlo en un lugar de nuestra elección para acceder a él en la siguiente
sección.
COMPILAR Y CARGAR
Lo primero, es identificar el modelo de la tarjeta o su compatibilidad, que para nuestro caso es
compatible con “Arduino Uno” o “Arduino Leonardo”. En el caso de Arduino el código fuente está
escrito en lenguaje C, pero de manera simplificada pues solo se deben escribir dos funciones
principales - Setup() y loop() - y si lo deseamos, podemos definir algunas funciones auxiliares, estos
códigos se llaman “Sketch”.
En la página de Arduino podemos encontrar mucha información de cómo utilizar la plataforma,
además de una extensa documentación sobre el uso de las librerías que incorpora la plataforma y
que la convierten en una de las más populares para desarrollo.
Para cargar el código en la tarjeta Arduino Energy Shield debemos seguir el siguiente procedimiento
(mismo proceso a seguir para cargar cualquier código).
Seleccionar el Microcontrolador compatible (Arduino Uno o Arduino Leonardo).
TUTORIAL ARDUINO ENERGY SHIELD Página 17 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
Seleccionar el puerto asignado al Módulo FTDI (esto varía según la propia instalación, el puerto
indicado es solo referencial).
Se puede observar en la parte inferior de la ventana el modelo de tarjeta elegida y el puerto en el
cual se encuentra conectado el módulo FTDI (esto es muy útil cuando estamos trabajando con
diversos modelos de tarjetas).
Una vez hecho esto, abrimos el código que bajamos en la sección previa y deberá verse algo así:
TUTORIAL ARDUINO ENERGY SHIELD Página 18 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
Una vez realizado lo anterior, debemos compilar nuestro proyecto: para ello presionamos el botón
de la parte superior izquierda, marcado en rojo en la siguiente imagen.
TUTORIAL ARDUINO ENERGY SHIELD Página 19 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
Una vez que hayamos completado el proceso de compilación, debemos cargar nuestro proyecto a
la tarjeta Arduino Energy Shield. Junto al botón compilador (al lado derecho) encontraremos el
botón Cargar.
Una vez terminado el proceso, el programa empezará a correr automáticamente.
EXTRA 1: INTRODUCCIÓN A SISTEMAS ELECTROMECÁNICOS
DIFERENCIA ENTRE ENERGÍA Y POTENCIA
Todos los seres vivos y la mayoría de las cosas que usamos en nuestra vida cotidiana requieren
energía. Los aviones, trenes y coches con los que nos desplazamos, la calefacción que hace
habitables nuestras casas en invierno, nuestros cuerpos, incluso sin realizar ninguna actividad, todo
consume energía ya sea en su uso o en su fabricación.
En física, ‘energía' se define como la capacidad para realizar un trabajo. Sin embargo, en la vida de
todos los días, ‘energía' se refiere a un recurso natural -que suele requerir una tecnología asociada
- para extraerla, transformarla, y luego darle un uso. La energía se obtiene a partir de diversas
fuentes. El criterio más habitual para diferenciar los tipos de energía es el carácter limitado o no
renovable – como petróleo, carbón o gas natural-, o si su procedencia es de fuentes renovables -
por ejemplo, solar, eólica, o biomasa.
Pero ¿cuál es la diferencia entre potencia y energía?
Si nos fijamos en aparatos que usamos en nuestra vida diaria como, por ejemplo, una bombilla, un
equipo de aire acondicionado o un secador, todos ellos consumen energía eléctrica y la
TUTORIAL ARDUINO ENERGY SHIELD Página 20 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
transforman en un trabajo útil: iluminar, enfriar o secar. En las etiquetas de estos dispositivos
podemos leer su potencia, normalmente indicada en watt (W), y esto nos indica la velocidad a la
que consumen la energía.
La energía consumida por un equipo se calcula multiplicando la potencia del aparato por el tiempo
de funcionamiento y se mide en watt-hora (Wh).
Por ejemplo, veamos un cálculo del consumo de energía a partir de la potencia: supongamos que
tenemos una lámpara de bajo consumo de 18W de potencia, su consumo a lo largo de un día sería
18W multiplicado por 24 horas, es decir, 432Wh de energía.
La unidad Wh es una unidad artificial, que es equivalente a la unidad de energía Joule.
Manejar este concepto tiene utilidad práctica. A diario nos encontramos con esta diferenciación
entre potencia y energía:
Suele figurar en nuestra cuenta de electricidad cuando se nos indica "potencia
contratada", es aquella cantidad de energía que se nos reserva, es decir, a la que tenemos
derecho por contrato.
Mientras que el "consumo de energía" es aquella que realmente hemos consumido en el
periodo de tiempo al que se refiere el recibo y está controlada por un contador.
UNIDADES DE MEDIDA DE LA POTENCIA
En un circuito AC, la potencia es más eficiente cuando la corriente está en fase con el voltaje.
Sin embargo, la mayoría de los equipos tienden a extraer la corriente con un retardo, desfasándose
con la onda de voltaje. Esto se traduce en que más corriente está siendo consumida para suministrar
la cantidad necesaria de energía para hacer funcionar el equipo. Y cuanta más corriente consume
un equipo con algún retardo, menos eficiente es el equipo.
TUTORIAL ARDUINO ENERGY SHIELD Página 21 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
El factor de potencia es una forma de medir la eficiencia con que la energía eléctrica se utiliza en el
sistema eléctrico de una instalación, a través del análisis de los componentes de energía eléctrica
en un circuito AC. Estos componentes se conocen como potencia real, potencia aparente y potencia
reactiva:
La potencia real (W): la potencia que realiza trabajo y que se utiliza para mover el equipo.
Su unidad de medida es Watts (W).
La potencia aparente (VA): la combinación de la potencia real y potencia reactiva. Su unidad
de medida es “Volt-Ampere” (VA).
Potencia reactiva (var): la potencia producida/consumida que no realiza trabajo, se
requiere para magnetizar y poner en marcha el equipo. Su unidad de medida es “Volt-
Ampere Reactivo” (var).
*Debemos tener en cuenta que lo anterior es una definición simplificada de los conceptos expuestos.
EL TRIÁNGULO DE POTENCIA
Los conceptos de Potencial Real o Activa (P), Potencia Aparente (S) y Potencia Reactiva (Q) se
pueden representar gráficamente como vemos en la figura superior. En general, encontraremos
estos términos referidos con sus letras PSQ en la mayoría de los sistemas de medición que hay en
el mercado.
TUTORIAL ARDUINO ENERGY SHIELD Página 22 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
EL FACTOR DE POTENCIA
Como se mencionó antes, el ángulo de este "triángulo de potencia" indica gráficamente la relación
entre la cantidad de potencia disipada y la cantidad de potencia absorbida / devuelta. También pasa
a ser el mismo ángulo que el de la impedancia del circuito en su representación en coordenadas
polares. Cuando se expresa como una fracción, esta relación entre la potencia real y la potencia
aparente se llama “factor de potencia” para este circuito. Debido a que la verdadera potencia y la
potencia aparente forman los lados adyacentes y la hipotenusa de un triángulo rectángulo,
respectivamente, la relación del factor de potencia es también igual al coseno de ese ángulo de fase.
Utilizando algunos valores de ejemplo:
Debe tenerse en cuenta que el factor de potencia, como todas las mediciones de relación, es una cantidad adimensional. Para un circuito puramente resistivo, el factor de potencia es 1 (perfecto), porque la potencia reactiva es igual a cero. Aquí, el triángulo de poder se vería como una línea horizontal, porque el lado contrario (potencia reactiva) tendría una longitud cero. Para un circuito puramente inductivo, el factor de potencia es cero, porque la potencia activa es igual a cero. Aquí, el triángulo de potencia se vería como una línea vertical, porque el lado adyacente (la potencia activa) tendría longitud cero. Lo mismo podría decirse de un circuito puramente capacitivo. Si no hay componentes disipativos (resistivos) en el circuito, entonces la potencia real debe ser igual a cero, por lo que cualquier potencia en el circuito es puramente reactiva. El triángulo de potencia para un circuito puramente capacitivo de nuevo sería una línea vertical (apuntando hacia abajo en lugar de hacia arriba como lo fue para el circuito puramente inductivo).
TUTORIAL ARDUINO ENERGY SHIELD Página 23 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
El factor de potencia debe ser un aspecto importante a considerar en un circuito de AC, ya que
cualquier factor de potencia menor que 1 significa que el cableado del circuito tiene que transportar
más corriente de lo que sería necesario con cero reactancias en el circuito para suministrar la misma
cantidad de potencia real a la carga resistiva.
Un factor de potencia pobre genera un sistema ineficiente.
Un factor de potencia ineficiente se puede corregir, paradójicamente, mediante la adición de una
nueva carga para el circuito de una cantidad igual y opuesta a la potencia reactiva, para anular los
efectos de la reactancia de la carga. La reactancia inductiva sólo se puede cancelar con una
reactancia capacitiva, por lo que hay que añadir un condensador en paralelo a nuestro circuito como
carga adicional (y viceversa).
El efecto de estas dos reactancias opuestas en paralelo es lograr que la impedancia total del circuito
sea igual a su resistencia total (para hacer que el ángulo de fase sea igual, o al menos cercana a
cero).
CÓMO MEDIR EL CONSUMO DE UN EQUIPO USANDO LA TARJETA ARDUINO ENERGY SHIELD
Una vez que hayamos realizado los pasos previos, y teniendo en cuenta las definiciones del capítulo
anterior, podemos realizar las mediciones usando nuestro circuito.
En este punto, ya deberíamos tener el circuito armado y conectado a la red eléctrica (sin haber
conectado el equipo a medir aun). Esto es de vital importancia pues el chip necesita tener una
referencia para realizar las mediciones (paso por cero de la onda de voltaje).
Si todo marcha en orden, deberíamos tener las mediciones iniciales en cualquiera de nuestras
salidas:
TUTORIAL ARDUINO ENERGY SHIELD Página 24 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
CONSOLA SERIAL
* Se ha detectado un problema intermitente en los controladores de Windows 7, que bloquea la consola serial de Arduino cuando se realiza un cambio en la carga o dispositivo a medir. Si se presenta este comportamiento, se recomienda reiniciar el controlador USB (reconectando) o usar otra consola Serial (como Putty o Hércules).
GLCD
TUTORIAL ARDUINO ENERGY SHIELD Página 25 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
CONSOLA XBEE
Como vemos, en todas nuestras salidas podemos observar los mismos valores iniciales (similares),
en este punto el más importante es el valor del voltaje medido desde la red eléctrica el cual para
Chile debe ser cercano a los 220 [V] con una frecuencia de 50[Hz] o un periodo de 20 [ms].
No debemos olvidar dos factores importantes:
Los valores presentados son referenciales.
Siempre debemos tener conectada la referencia de la red eléctrica.
Ahora, debemos conectar un equipo que consuma energía eléctrica al enchufe hembra disponible
en nuestro circuito (marcado como LOAD).
TUTORIAL ARDUINO ENERGY SHIELD Página 26 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
Hecho lo anterior, ya solo nos queda realizar las mediciones o hacer nuestra instalación del sistema
de monitoreo.
ANEXO 1
COMO MODIFICAR EL CÓDIGO Y ALGUNOS TIPS SOBRE SU IMPLEMENTACIÓN
La siguiente sección describe algunos números mágicos o constantes de proporcionalidad que se
encuentran en la implementación del código. Las constantes de proporcionalidad usadas, son
derivadas de las características propias del chip medidor de energía ADE7753 y de los criterios de
diseño del hardware. En este último se han usado atenuadores para adaptar las entradas esperadas
por el chip, lo cual influye en las mediciones finales realizadas.
*El chip espera que sus entradas análogas no superen los 2.5 [V], por lo cual es imprescindible el
adaptar las entradas desde la red eléctrica.
TUTORIAL ARDUINO ENERGY SHIELD Página 27 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
Para acelerar el procesamiento, se pueden reemplazar estos valores por su equivalente numérico,
sin embargo se puede volver más difícil incorporar modificaciones al circuito (en sus componentes
externas o internas), y dada la ubicación de las mismas en el código su cálculo no afecta la toma de
mediciones.
También, debemos tener presente que en algunos casos será necesario reemplazar o cambiar
algunos valores, derivados de modificaciones hechas al hardware por mejoras o nuevas revisiones.
Los valores derivados del diseño del hardware, los podemos encontrar en:
TUTORIAL ARDUINO ENERGY SHIELD Página 28 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
RELACIÓN DE VUELTAS DEL TRANSFORMADOR DE VOLTAJE (REFERENCIA DE CRUCE
POR CERO)
El transformador que se indica en la configuración de conexión, se utiliza para atenuar la entrada a
la tarjeta Arduino Energy Shield, la cual está diseñada para recibir 12 [V] desde la referencia de
voltaje de la red eléctrica. Internamente se tiene además un atenuador o divisor de tensión de
relación cercana a 1:50 (en la sección anterior se indica donde se encuentra y como modificarlo).
Si se usa un transformador con una relación de transformación diferente a 220:12, se debe modificar
este valor en:
Se debe tener presente que el circuito está diseñado para operar con una entrada en el rango de 12 [V], si se desea usar un transformador de una relación de transformación muy diferente se deberá modificar el hardware (divisor de tensión del canal de voltaje) y reemplazar el nuevo valor en el código fuente (VOLTDIV), esto debido a que el chip no soporta una entrada superior a los 2.5 [V].
NUMERO DE VUELTAS DEL CABLE DE MEDICIÓN DE CORRIENTE
En la configuración de conexionado se indica que se debe hacer pasar un único cable del circuito a
través del sensor de corriente. Por temas de diseño se ha optado por esta solución que es bastante
simple, sin embargo por temas de resistencia mecánica o mejorar la precisión en la medición de la
corriente podemos optar por enrollar el cable con más de una vuelta a través del sensor de
corriente: esto tendrá un impacto directo en la medición realizada pues el sensor de corriente
medirá N veces la corriente que pasa por el cable, siendo N el número de vueltas que se enrolle el
cable en el sensor.
Si se opta por realizar esta conexión, se debe modificar el código para incluir el número de vueltas
o atenuar las mediciones extras realizadas por el sensor de corriente.
TUTORIAL ARDUINO ENERGY SHIELD Página 29 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
Donde N representa el número de vueltas que se utilizó.
Sobre esta situación, también podemos encontrarnos con sensores de corriente que ya incluyen una
relación de atenuación, y que generalmente viene indicada en el mismo sensor. Para incorporar está
atenuación en la medición debemos modificar la misma constante de medición ki, solo que esta vez
tendremos que amplificar por el radio de atenuación señalado.
COMO MODIFICAR EL CRUCE POR CERO Y DEJAR EL CHIP EN LAZO ABIERTO
Una característica que puede ser útil, pero que no está recomendado usar, es quitar el cruce por
cero para realizar mediciones en situaciones muy particulares (por ejemplo, medir una onda
continua):
Sin embargo, debemos tener presente que realizar esto altera el funcionamiento del chip el cual
está diseñado para opera usando la referencia de cruce por cero.
En el datasheet del chip podemos encontrar información sobre este tópico en la sección ‘Zero
Crossing’.
El flag que debemos buscar se llama ZX y define que las funciones de medición esperen el evento
de cruce por cero de la onda de voltaje para realizar la medida.
Las funciones más comunes donde podemos realizar esta modificación se llaman getIRMS() y
getVRMS(). En ambas funciones podemos modificar la línea del ciclo while para que luzca así:
TUTORIAL ARDUINO ENERGY SHIELD Página 30 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
Con esto lograremos que la medición se realice de manera directa (en lazo abierto), y ya no será
obligatorio tener la referencia de la red eléctrica para realizar las mediciones.
TUTORIAL ARDUINO ENERGY SHIELD Página 31 de 31
Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile +56 2 23339579 | www.olimex.cl | [email protected]
HISTORIA DEL DOCUMENTO
Revisión Fecha Editado por Descripción/Cambios
1.0 Año 2013 Cesar Castro Versión inicial del documento