arduino energy shield

Upload: vincent-fanisgl

Post on 04-Mar-2016

50 views

Category:

Documents


0 download

DESCRIPTION

Arduino tech datasheed for shield energy

TRANSCRIPT

  • Tutorial

    [Arduino Energy Shield]

    Rev. [1.0]

    MCI-TU-0003

    INGENIERA MCI LTDA.

    www.olimex.cl

    Luis Thayer Ojeda 0115. Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 2 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    MCI Ltda. Luis Thayer Ojeda 0115. Oficina 1105 Santiago, Chile www.olimex.cl Tel: +56 2 23339579 Fax: +56 2 23350589

    MCI Ltda. 2013

    Desarrollado por Cesar Muoz para MCI

    Atencin: Cambios y modificaciones hechas en el dispositivo, no autorizados expresamente por

    MCI, anularn su garanta.

    Cdigo Manual: MCI TU 0003

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 3 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Tabla de Contenidos

    Descripcin .......................................................................................................................................... 4

    Recursos Necesarios ............................................................................................................................ 5

    Configuraciones y Esquema Elctrico ................................................................................................. 6

    Conexionado ................................................................................................................................... 6

    Procedimiento de Armado .................................................................................................................. 8

    Procedimiento de Ejecucin del experimento ................................................................................ 8

    Instalar XCTU ................................................................................................................................. 10

    Instalar Xbee Explorer USB ............................................................................................................ 10

    Configurar los mdulos Xbee ........................................................................................................ 11

    Como configurar la red Xbee Serie 1 ............................................................................................. 13

    Como configurar la red Xbee Serie 2 ............................................................................................. 16

    Como programar la tarjeta Arduino Energy Shield ........................................................................... 19

    Instalar plataforma Arduino .......................................................................................................... 20

    Bajar el Cdigo fuente ................................................................................................................... 21

    Compilar y Cargar .......................................................................................................................... 21

    Extra 1: Introduccin a Sistemas Electromecnicos ...................................................................... 26

    Cmo medir el consumo de un equipo usando la tarjeta Arduino Energy Shield ............................ 32

    ANEXO 1: ........................................................................................................................................... 35

    Como modificar el cdigo y algunos tips sobre su implementacin ............................................. 35

    Relacin de vueltas del transformador de voltaje (referencia de cruce por cero) ....................... 36

    Numero de vueltas del cable de medicin de corriente ............................................................... 37

    Como modificar el cruce por cero y dejar el chip en lazo abierto ................................................ 38

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 4 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Descripcin La tarjeta Arduino Energy Shield nos permite medir el nivel de consumo elctrico de cualquier

    dispositivo conectado a la red domiciliaria, a travs de un sencillo conexionado.

    Por medio de esta plataforma se puede monitorear un dispositivo elctrico y enviar los datos

    medidos a travs de una interfaz serial y/o comunicar todo por la red Zigbee usando los mdulos

    Xbee Serie 1 (para comunicacin punto a punto), o mediante una red distribuida (mesh) usando

    los mdulos Xbee Serie 2.

    Adems se puede incorporar una pantalla LCD para desplegar las mediciones en forma local y

    crear un sistema de medicin de caractersticas profesionales.

    Entre las ventajas que presenta esta tarjeta podemos mencionar: la capacidad de usar las libreras

    Arduino, el monitoreo en tiempo real de variables por medio de una red inalmbrica, el monitoreo

    constante de los valores medidos a travs 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 fcil acceder a ellos por medio de un conector

    intermedio o a travs de cables. Adems debemos tener en cuenta que las mediciones realizadas

    son referenciales y representan una aproximacin de los valores reales que se estn midiendo. De

    todas formas, los resultados nos entregarn informacin suficientemente certera para tomar

    decisiones y a un costo muy reducido de las alternativas de mercado.

    La tarjeta Arduino Energy Shield cuenta con las siguientes caractersticas:

    Entrada para sensor de Voltaje

    Entrada para sensor de Corriente

    Reloj de Tiempo Real

    Comunicacin inalmbrica

    Socket para XBee

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 5 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Recursos Necesarios

    Arduino Energy Shield

    Arduino UNO o Arduino Leonardo

    Xbee Explorer USB

    2 Xbee Serie 1 o Serie 2

    GLCD con interfaz serializada

    Programas

    Arduino

    XCTU1 (www.digi.com ->Support -> XCTU)

    Driver FTDI2

    Putty o Hrcules (para manejar el puerto serie)

    PC O Notebook

    1 Es conveniente asegurarse que la versin que vayamos a instalar sea una reciente o actualizada.

    2 Solo para Windows 7, las versiones anteriores de Windows pueden encontrar el driver de manera

    automtica en Windows Update.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 6 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Configuraciones y Esquema Elctrico En esta seccin describiremos como realizar el conexionado completo.

    Conexionado

    El siguiente diagrama describe la tarjeta Arduino Energy Shield de manera esquemtica, en ella

    indicaremos donde debemos conectar los sensores para realizar las mediciones de consumo.

    En cada uno de los sectores marcados, encontramos:

    N Descripcin

    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 elctrica)

    6 Enchufe hembra (dispositivo a medir)

    A LA RED ELECTRICA

    3

    4

    5

    6 2

    1

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 7 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    La razn por la cual debemos conectar el circuito a la red elctrica se debe a que el chip que

    realiza las mediciones de energa y clculos de potencia necesita tener una referencia contra que

    medir, para nuestro caso esto se realiza cada vez que la onda elctrica cruza el cero, con lo cual se

    miden los ciclos. As, para realizar una medicin de 50 ciclos (o 1 segundo para una red elctrica 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.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 8 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Procedimiento de Armado

    Procedimiento de Ejecucin del experimento

    Nuestro experimento completo incluye el uso de un GLCD con interfaz serializada y de un mdulo

    de transmisin inalmbrico 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 camin frigorfico en la cabina.

    Si se desea pasar directo a la seccin de las mediciones, solo debemos ir a la seccin Mediciones.

    XBEE

    Si hemos optado por hacer uso de Xbee, debemos realizar la configuracin de nuestros

    dispositivos de comunicacin Mdulos Xbee Serie 1 o Xbee Serie 2. Segn sea la eleccin que se

    haya hecho se debemos proseguir en la seccin que corresponda (las que siguen a continuacin).

    RTC (Real Time Clock)

    Una parte importante de la operacin de la tarjeta, es configurar el RTC. Para esto, debemos ir a la

    pgina de la tarjeta Arduino Energy Shield y descargar el cdigo llamado DemoConfigureRTC. El

    procedimiento de carga es el mismo que usaremos para subir el cdigo del presente tutorial a la

    tarjeta Arduino Energy Shield y que se describe a continuacin; una vez que tengamos cargado el

    cdigo 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 diseo, esta conexin deberemos realizarla por medio de algn cable o algn otro tipo

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 9 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    de intervencin (para una instalacin permanente es una buena opcin soldar un cable al pin, y

    recubrirlo con termoretrctil, para mayor resistencia mecnica).

    *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 ms disponible

    para otros propsitos.

    La relacin del transformador es importante al momento de realizar las mediciones, en este caso

    se ha usado una conversin de 220/12 [VAC], aunque esto es modificable en el cdigo si se opta

    por algn otro tipo de transformador. (Ver seccin Anexo 1, al final del presente manual).

    Una vez realizados los procedimientos anteriores, continuaremos con la programacin de la

    tarjeta Arduino Energy Shield, por medio de la plataforma Arduino.

    ES IMPORTANTE RECORDAR QUE LAS MEDICIONES REALIZADAS POR LA

    TARJETA ARDUINO ENERGY SHIELD SON MEDIDAS REFERENCIALES Y NOS

    ENTREGAN UNA BUENA APROXIMACIN A LOS VALORES REALES

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 10 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Instalar XCTU

    La instalacin 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

    mdems que puede manejar. Una vez realizado el proceso de instalacin nos encontraremos con

    la siguiente interfaz.

    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 mdem 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 sern instalados de manera automtica. Para

    Windows 7 debemos realizar el proceso de instalacin de los drivers de manera manual desde el

    administrador de dispositivos.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 11 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Configurar los mdulos Xbee

    Una vez realizado el proceso de instalacin 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 botn Test/Query y se

    desplegar una pequea ventana con la informacin de nuestro mdulo Xbee.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 12 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Para configurar el mdulo Xbee debemos acceder a la pestaa Modem Configuration y presionar

    el botn Read con lo cual se leern los parmetros del modem que tenemos conectado.

    Ahora, debemos seguir en la seccin correspondiente al tipo de mdulo que hayamos adquirido

    (Serie 1 o Serie 2).

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 13 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Como configurar la red Xbee Serie 1

    En la imagen podemos encontrar la configuracin bsica de un mdulo Xbee Serie 1.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 14 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    En las siguientes tablas, podemos encontrar la descripcin 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 conexin 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

    A continuacin se muestra un ejemplo de cmo se deben de configurar los dos mdulos:

    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

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 15 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Existen otras formas de configurar una red Xbee, la anterior es una forma fcil que solo involucra

    dos mdems; 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 recepcin que no corresponda con el valor PAN ID de nuestro modem.

    Si deseamos conectar 3 nodos, podemos optar por una forma fcil 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 configurndolos 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

    Para usar esta red, debemos hacer un pequeo protocolo por software, que envi un identificador

    desde cada mdem y que se tomen acciones por cada uno de estos identificadores (y aquellos que

    no sean dirigidos al mdem involucrado deben ser descartados).

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 16 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Como configurar la red Xbee Serie 2

    En la imagen podemos encontrar la configuracin bsica de un mdulo Xbee Serie 2, no hay

    muchas diferencias en su forma bsica de configuracin con la Serie 1, si bien en esta versin

    encontraremos ms campos y una distribucin un poco diferente de los mismos.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 17 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    En las siguientes tablas, podemos encontrar la descripcin de los campos y los valores que

    debemos asignar a cada uno para configurar los Xbee Serie 2 en modo transparente o en una

    conexin punto a punto

    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 continuacin se muestra un ejemplo de cmo se deben de configurar las dos mdulos

    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 mdems Xbee Serie 2, es que se pueden configurar redes ms completas (tipo

    mesh). Esto nos brinda la ventaja de poder tener redes que abarquen zonas geogrficas mucho

    ms amplias que con la serie 1, si bien estas redes son mucho ms complejas.

    Ac se entrega una pequea descripcin de cmo configurar una red Xbee Serie 2 con ms de dos

    dispositivos:

    Punto a multipunto:

    Una conexin punto a multipunto es ptima cuando se requiere enviar informacin de manera

    controlada a uno o varios nodos a la misma vez, lo cual lo diferencia de una broadcast.

    Solo basta con utilizar el mtodo de una red punto a punto para la transmisin a un nodo, para

    realizar la transmisin a varios nodos a la vez solo basta con utilizar como direccin destino

    0xFFFF.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 18 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Es importante tener en cuenta que se debe configurar el mdulo Xbee en la misma direccin PAN

    y el mismo canal de comunicacin: recuerde que la Xbee tiene 16 canales de comunicacin.

    Red Broadcast

    Esta red se diferencia de las dems en que todos los nodos tienen la direccin broadcast

    configurada lo que implica que los datos son recibidos hacia y por todos los nodos de la red. La

    direccin broadcast es DH=0x00000000 DL=0x0000FFFF.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 19 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    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

    mdulos de programacin incorporados en la placa, por lo cual solo debemos conectarla a travs

    de un Cable USB para su programacin.

    Es apropiado conectar la tarjeta a una fuente de energa externa, pues el consumo

    de la Arduino Energy Shield puede afectar el proceso de programacin.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 20 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Instalar plataforma Arduino

    La instalacin 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!

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 21 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Bajar el Cdigo fuente

    El cdigo fuente de nuestro ejemplo lo podemos obtener desde el sitio de la tarjeta Arduino

    Energy Shield. Debemos descomprimirlo en un lugar de nuestra eleccin para acceder a l en la

    siguiente seccin.

    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 cdigo 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 cdigos se llaman Sketch.

    En la pgina de Arduino podemos encontrar mucha informacin de cmo utilizar la plataforma,

    adems de una extensa documentacin sobre el uso de las libreras que incorpora la plataforma y

    que la convierten en una de las ms populares para desarrollo.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 22 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Para cargar el cdigo en la tarjeta Arduino Energy Shield debemos seguir el siguiente

    procedimiento (mismo proceso a seguir para cargar cualquier cdigo).

    Seleccionar el Microcontrolador compatible (Arduino Uno o Arduino Leonardo)

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 23 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Seleccionar el puerto asignado al Mdulo FTDI (esto vara segn la propia instalacin, 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 mdulo FTDI (esto es muy til cuando estamos trabajando con

    diversos modelos de tarjetas).

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 24 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Una vez hecho esto, abrimos el cdigo que bajamos en la seccin previa y deber verse algo as:

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 25 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Una vez realizado lo anterior, debemos compilar nuestro proyecto: para ello presionamos el botn

    de la parte superior izquierda, marcado en rojo en la siguiente imagen.

    Una vez que hayamos completado el proceso de compilacin, debemos cargar nuestro proyecto a

    la tarjeta Arduino Energy Shield. Junto al botn compilador (al lado derecho) encontraremos el

    botn Cargar.

    Una vez terminado el proceso, el programa empezar a correr automticamente.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 26 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Extra 1: Introduccin a Sistemas Electromecnicos

    Diferencia entre energa y potencia

    Todos los seres vivos y la mayora de las cosas que usamos en nuestra vida cotidiana requieren

    energa. Los aviones, trenes y coches con los que nos desplazamos, la calefaccin que hace

    habitables nuestras casas en invierno, nuestros cuerpos, incluso sin realizar ninguna actividad,

    todo consume energa ya sea en su uso o en su fabricacin.

    En fsica, energa' se define como la capacidad para realizar un trabajo. Sin embargo, en la vida de

    todos los das, energa' se refiere a un recurso natural -que suele requerir una tecnologa

    asociada - para extraerla, transformarla, y luego darle un uso.

    La energa se obtiene a partir de diversas fuentes. El criterio ms habitual para diferenciar los tipos

    de energa es el carcter limitado o no renovable como petrleo, carbn o gas natural-, o si su

    procedencia es de fuentes renovables - por ejemplo, solar, elica, o biomasa.

    Pero cul es la diferencia entre potencia y energa?

    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 energa elctrica y la

    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 energa.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 27 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    La energa 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 clculo del consumo de energa a partir de la potencia: supongamos que

    tenemos una lmpara de bajo consumo de 18 W de potencia, su consumo a lo largo de un da sera

    18 W multiplicado por 24 horas, es decir, 432 Wh de energa.

    La unidad Wh es una unidad artificial, que es equivalente a la unidad de energa Joule.

    Manejar este concepto tiene utilidad prctica

    A diario nos encontramos con esta diferenciacin entre potencia y energa:

    - Suele figurar en nuestra cuenta de electricidad cuando se nos indica "potencia contratada", es

    aquella cantidad de energa que se nos reserva, es decir, a la que tenemos derecho por contrato.

    - Mientras que el "consumo de energa" es aquella que realmente hemos consumido en el periodo

    de tiempo al que se refiere el recibo y est controlada por un contador.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 28 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Unidades de medida de la Potencia

    En un circuito AC, la potencia es ms eficiente cuando la corriente est en fase con el voltaje.

    Sin embargo, la mayora de los equipos tienden a extraer la corriente con un retardo,

    desfasndose con la onda de voltaje. Esto se traduce en que ms corriente est siendo consumida

    para suministrar la cantidad necesaria de energa para hacer funcionar el equipo. Y cuanta ms

    corriente consume un equipo con algn retardo, menos eficiente es el equipo.

    El factor de potencia es una forma de medir la eficiencia con que la energa elctrica se utiliza en el

    sistema elctrico de una instalacin, a travs del anlisis de los componentes de energa elctrica

    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 combinacin 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 definicin simplificada de los conceptos expuestos.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 29 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    El tringulo de Potencia

    Los conceptos de Potencial Real o Activa (P), Potencia Aparente (S) y Potencia Reactiva (Q) se

    pueden representar grficamente como vemos en la figura superior.

    En general, encontraremos estos trminos referidos con sus letras PSQ en la mayora de los

    sistemas de medicin que hay en el mercado.

    El Factor de Potencia

    Como se mencion antes, el ngulo de este "tringulo de potencia" indica grficamente la relacin

    entre la cantidad de potencia disipada y la cantidad de potencia absorbida / devuelta. Tambin

    pasa a ser el mismo ngulo que el de la impedancia del circuito en su representacin en

    coordenadas polares. Cuando se expresa como una fraccin, esta relacin 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 tringulo

    rectngulo, respectivamente, la relacin del factor de potencia es tambin igual al coseno de ese

    ngulo de fase.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 30 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Utilizando algunos valores de ejemplo:

    Debe tenerse en cuenta que el factor de potencia, como todas las mediciones de relacin, 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 tringulo de poder se vera como una lnea horizontal, porque el

    lado contrario (potencia reactiva) tendra una longitud cero.

    Para un circuito puramente inductivo, el factor de potencia es cero, porque la potencia activa es

    igual a cero. Aqu, el tringulo de potencia se vera como una lnea vertical, porque el lado

    adyacente (la potencia activa) tendra longitud cero.

    Lo mismo podra 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 tringulo de potencia para un circuito puramente

    capacitivo de nuevo sera una lnea vertical (apuntando hacia abajo en lugar de hacia arriba como

    lo fue para el circuito puramente inductivo).

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 31 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    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 ms corriente de lo que sera 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, paradjicamente, mediante la adicin 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 slo se puede cancelar con una

    reactancia capacitiva, por lo que hay que aadir 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).

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 32 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Cmo 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

    captulo anterior, podemos realizar las mediciones usando nuestro circuito.

    En este punto, ya deberamos tener el circuito armado y conectado a la red elctrica (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, deberamos tener las mediciones iniciales en cualquiera de nuestras

    salidas:

    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 Hrcules).

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 33 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    GLCD

    Consola XBEE

    ++

    Como vemos, en todas nuestras salidas podemos observar los mismos valores iniciales (similares),

    en este punto el ms importante es el valor del voltaje medido desde la red elctrica el cual para

    Chile debe ser cercano a los 220 [V] con una frecuencia de 50[Hz] o un periodo de 20 [ms].

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 34 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    No debemos olvidar dos factores importantes:

    LOS VALORES PRESENTADOS SON REFERENCIALES

    SIEMPRE DEBEMOS TENER CONECTADA LA REFERENCIA DE LA RED ELECTRICA

    Ahora, debemos conectar un equipo que consuma energa elctrica al enchufe hembra disponible

    en nuestro circuito (marcado como LOAD).

    A LA RED ELECTRICA

    Hecho lo anterior, ya solo nos queda realizar las mediciones o hacer nuestra instalacin del

    sistema de monitoreo !

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 35 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    ANEXO 1

    Como modificar el cdigo y algunos tips sobre su implementacin

    La siguiente seccin describe algunos nmeros mgicos o constantes de proporcionalidad que se

    encuentran en la implementacin del cdigo. Las constantes de proporcionalidad usadas, son

    derivadas de las caractersticas propias del chip medidor de energa ADE7753 y de los criterios de

    diseo 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 anlogas no superen los 2.5 [V], por lo cual es imprescindible el adaptar las

    entradas desde la red elctrica.

    Archivo: DemoTutorial.ino

    Lnea 88 -91

    kv = (ratioTraf)*VOLTDIV*(0.5/0x2851EC); //(0.5/0x2851EC) From Datasheet

    ki = CURRDIV*(0.5/0x17D338); //(0.5/0x17D338) From Datasheet

    ke = (10/16.0)*VOLTDIV*CURRDIV/4096.0; // 1/(2^12)

    basetime = (1.0*NUMCYC)/100.0; // tiempo por el cual se acumula energia

    kt=CLKIN/8; //period register, resolution x.y[us]/LSB -per bit-

    Para acelerar el procesamiento, se pueden reemplazar estos valores por su equivalente numrico,

    sin embargo se puede volver ms difcil incorporar modificaciones al circuito (en sus componentes

    externas o internas), y dada la ubicacin de las mismas en el cdigo su clculo no afecta la toma de

    mediciones.

    Tambin, 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.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 36 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Los valores derivados del diseo del hardware, los podemos encontrar en

    Archivo: ADE7753.h

    Lnea: 128-130

    #define VOLTDIV 48 //By desing, rel 1/48

    #define CURRDIV 50 //By desing, rel 1/48

    #define NUMCYC 20

    Relacin de vueltas del transformador de voltaje (referencia de cruce

    por cero)

    El transformador que se indica en la configuracin de conexin, se utiliza para atenuar la entrada a

    la tarjeta Arduino Energy Shield, la cual est diseada para recibir 12 [V] desde la referencia de

    voltaje de la red elctrica. Internamente se tiene adems un atenuador o divisor de tensin de

    relacin cercana a 1:50 (en la seccin anterior se indica donde se encuentra y como modificarlo).

    Si se usa un transformador con una relacin de transformacin diferente a 220:12, se debe

    modificar este valor en:

    Archivo: DemoTutorial.ino

    Lnea: 37

    #define ratioTraf (220/12) //18.3

    Se debe tener presente que el circuito est diseado para operar con una entrada en el rango de

    12 [V], si se desea usar un transformador de una relacin de transformacin muy diferente se

    deber modificar el hardware (divisor de tensin del canal de voltaje) y reemplazar el nuevo valor

    en el cdigo fuente (VOLTDIV), esto debido a que el chip no soporta una entrada superior a los

    2.5[V].

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 37 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Numero de vueltas del cable de medicin de corriente

    En la configuracin de conexionado se indica que se debe hacer pasar un nico cable del circuito a

    travs del sensor de corriente. Por temas de diseo se ha optado por esta solucin que es

    bastante simple, sin embargo por temas de resistencia mecnica o mejorar la precisin en la

    medicin de la corriente podemos optar por enrollar el cable con ms de una vuelta a travs del

    sensor de corriente: esto tendr un impacto directo en la medicin realizada pues el sensor de

    corriente medir N veces la corriente que pasa por el cable, siendo N el nmero de vueltas que se

    enrolle el cable en el sensor.

    Si se opta por realizar esta conexin, se debe modificar el cdigo para incluir el nmero de vueltas

    o atenuar las mediciones extras realizadas por el sensor de corriente.

    Archivo: DemoTutorial.ino

    Lnea: 63

    ki = CURRDIV*(0.5/0x17D338) / N;

    Donde N representa el nmero de vueltas que se utiliz.

    Sobre esta situacin, tambin podemos encontrarnos con sensores de corriente que ya incluyen

    una relacin de atenuacin, y que generalmente viene indicada en el mismo sensor. Para

    incorporar est atenuacin en la medicin debemos modificar la misma constante de medicin ki,

    solo que esta vez tendremos que amplificar por el radio de atenuacin sealado.

  • ARDUINO ENERGY SHIELD

    TUTORIAL

    Page 38 of 38

    Luis Thayer Ojeda 0115 Of. 1105 Santiago, Chile Tel. +56 2 23339579 [email protected]

    www.olimex.cl

    Como modificar el cruce por cero y dejar el chip en lazo abierto

    Una caracterstica 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 diseado para opera usando la referencia de cruce por cero.

    En el datasheet del chip podemos encontrar informacin sobre este tpico en la seccin Zero

    Crossing.

    Archivo: ADE7753.cpp

    Lnea: mltiples

    El flag que debemos buscar se llama ZX y define que las funciones de medicin esperen el evento

    de cruce por cero de la onda de voltaje para realizar la medida.

    Las funciones ms comunes donde podemos realizar esta modificacin se llaman getIRMS() y

    getVRMS(). En ambas funciones podemos modificar la lnea del ciclo while para que luzca as:

    while( ! ( ADE7753::getInterruptStatus() ) )

    Con esto lograremos que la medicin se realice de manera directa (en lazo abierto), y ya no ser

    obligatorio tener la referencia de la red elctrica para realizar las mediciones.