190 likes | 398 Views
Medidor de Potencia. Proyecto para el ramo ELO-326 Seminario de Computadores II: "Sistemas Embebidos y sus Aplicaciones". Theo Soto Guzmán Junio 2007. Idea:. Crear un aparato capaz medir el consumo eléctrico de un aparato o maquina.
E N D
Medidor de Potencia Proyecto para el ramo ELO-326 Seminario de Computadores II: "Sistemas Embebidos y sus Aplicaciones" Theo Soto Guzmán Junio 2007
Idea: • Crear un aparato capaz medir el consumo eléctrico de un aparato o maquina. • Que dicho aparato sea de bajo costo y capaz de medir equipos de baja y/o alta potencia.
Unidad de Procesamiento: • Timers • ADC • USART Los módulos necesarios en el microprocesador son:
USART • El modulo USART es utilizado para la comunicación entre el microprocesador y el computador que almacenara los datos. • Principales características: • 9600[bps] • 8 Bits de datos • 1 Bit de parada
MAX232N: • Circuito integrado que hace el cambio de nivel de voltajes desde RS232 a CMOS (5V). • Para la entrada acepta voltajes desde 1.3V, para la salida se debió acomodar la salida con un juego de resistencias.
Interfaz Computador Se compone de 2 módulos: • El modulo servidor . • El modulo cliente.
Modulo Servidor • El objetivo del modulo es obtener los datos de la MSP y guardarlos en la base de datos. • Estos datos son obtenidos de forma periódica y almacenados para su posterior despliegue.
Modulo Servidor • Esta siendo programado en C#, este es un lenguaje de programación orientado a objeto. • Este lenguaje permite el manejo del puerto serial, el manejo de timers y la conexión a la base de datos. • http://msdn2.microsoft.com/en-us/library/kx37x362(VS.80).aspx
C# • Para manejar el puerto serial se debe crear una instancia del puerto, esta instancia contiene todas las opciones para la configuración del puerto (baud rate, bit de paridad, etc.)
C# • Para escribir se puede usar los métodos Write(char[]buffer, intoffset, intcount) o WriteLine(stringtext) • Se puede incluir un Timeout, es decir un tiempo después del cual una escritura no será finalizada.
C# • Para la lectura se puede usar los métodos ReadChar() o ReadLine() • Se puede incluir un Timeout, es decir un tiempo después del cual una lectura no será finalizada. • Además existe un manejador de eventos para cuando datos son recibidos.
C# • Los Timers son configurable para atender eventos periódicamente. • Se usara para pedir los datos a la MSP cada 1 segundo. • Luego de obtener el dato se debe guardar en la base de datos.
C# • Para conectar el servidor programado en C# a la base de datos, se uso un dll que contiene las clases necesaria conectar el programa a la base de datos. (Npgsql.dll) • Este proyecto se encuentra en: http://crlab.com/pgsqlnet/
Npgsql • Lo primero que se debe hacer es crear una conexión (NpgsqlConnection), en la cual se establecen los parámetros para conectarse a la base de datos (server, uid y database), y además se debe crear una instancia de un comando de sql (NpgsqlCommand), a través del cual se pueden ejecutar comandos hacia la base de datos.
PostgresSQL • Los comandos básicos que se deben ejecutar hacia la base de datos son: • INSERT • SELECT • DELETE
PostgresSQL • Para el caso del proyecto, se necesita una base de datos relativamente simple, la cual incluye 1 sola tabla, la cual guardara los datos obtenidos de la MSP por fecha y hora de obtención.
Módulo Cliente • Este debe ser capaz de entregar la interfaz grafica para que el usuario sea capaz de analizar los datos capturados por el aparato. • Se programara en Java.