En el artículo de ayer os mostraba el esquema de la parte del montaje encargada de medir las corrientes y de activar los actuadores, en el artículo de hoy os muestro el esquema completo del circuito:
Empezando por la columna de la derecha (hacia abajo) y siguiendo por la de la izquierda nos encontramos los siguientes módulos:
- La fuente de slimentación, recoge la tensión alterna de uno de los secundarios del transformador y entrega dos tensiones, 5V para el micro y 3,3V para el Xbee.
- El transformador con la circuitería para sacar la medida de la tensión que analizaremos con el micro
- Un conector para poder programar el micro con un programador si hay algún problema con el botloader.
- El micro con su circuitería y un conector para un cable ftdi (para poder depurar y programar).
- En la columna de la izquierda (arriba) el circuito del artículo de ayer.
- Abajo el Xbee, con el led de RSSI y las resistencias para adaptar el nivel TTL del micro (5v) al del Xbee (3V). El Nivel TTL solo lo adaptaremos a la entrada, la salida va conectada directamente al micro y un nivel TTL positivo de 3,3V es detectado como un uno lógico por un receptor TTL de 5V, por lo que no es necesaria la adaptación.
Haciendo un doble click sobre la imagen podreis verla en un tamaño legible.
El microprocesador es un ATMega328:
El ATMega328 es un popular procesador RISC de Atmel que puede funcionar hasta 20 Mhz, en este caso lo haremos funcionar con un oscilador cerámico en lugar de con un cristal de cuarzo, la precisión no nos importa demasiado. Este procesador es el que viene montado en los Arduino Duemilanove, de hecho el micro que vamos a montar lleva el botloader de Arduino y lo vamos a programar con el IDE de Arduino.
El software que vamos a cargar en el micro está inspirado en la application note de Atmel AVR465: Energy Meter using tinyAVR and megaAVR devices que mencionábamos en el artículo Midiendo la energía (tercera parte: Las matemáticas). La verdad es que he estado mirando micros específicos para la medición de energía, pero no he encontrado la solución, tenemos la opción de utilizar cuatro micros específicos monofásicos (lo cual es un coste y una complejidad importante), pero necesitaríamos un quinto micro para transformar los datos y enviarlos por Zigbee, al final me he decidido por esta solución.
De la tensión tomaremos una única medida, la corriente la iremos midiendo alternativamente en cada salida, es importante recordar que hay que tomar un número mínimo de medidas para obtener información fiable (2000 ó 3000) por lo que los primeros cálculos tardan unos 2 segundos por salida, si vamos calculando los de todas las salidas conseguimos que los datos (en general) se refresquen cada 8 ó 10 segundos, lo cual me parece suficiente para cumplir el objetivo que tenemos.
En una versión posterior nuestro intento será de monitorizar más salidas, pero ya nos quedamos sin puertas analógicas en el micro, por lo que utilizaremos unos switches analógicos para poder muestrear corrientes de más salidas, en teoría el límite de esta forma de ampliar el número de puertas está en las entradas y salidas. El micro tiene 12 entradas/salidas digitales (es necesaria una por cada salida en la que queramos poner un actuador) y 6 entradas analógicas (necesitamos una por cada puerta a medir la corriente y una para la tensión). Si ponemos un conmutador necesitaríamos 8 salidas digitales para los actuadores, una salida digital para conmutar con el switch analógico y 5 entradas analógicas para las medidas, con lo que tendríamos una PDU de 8 puertos. Para segir ampliando necesitaríamos dos salidas digitales para controlar más de un switch, por lo que el límite con este micro estaría en 10 salidas y refrescaríamos los consumos de cada salida cada 25 segundos aproximadamente.
En realidad utilizando unos registros de desplazamiento podríamos aumentar el número de salidas hasta varios cientos, esto está fuera de nuestro objetivo, porque lo que nos mueve a incrementar el número de salidas es amortizar el coste del micro y del Xbee, entre las dos cosas suman entre 30€ y 40€, un coste del micro y la radio de entre 3€ y 4€ me parece aceptable, 10 salidas es algo razonable y no tenemos la diificultad de manejar corrientes grandes (que es un problema).
Por hoy aqui lo dejo…..