viernes, 8 de abril de 2011

Criterios de diseño

DISEÑO DEL HARDWARE

Para la alimentación del sistema, se tiene en cuenta de que hay 2 niveles de tensión diferentes de trabajo. Por un lado está la alimentación de la pantalla LCD la cual trabaja a 5 V y por el otro esta el suministro para la memoria SD, el microcontrolador y los módulos ZIGBEE, los cuales trabajan a 3.3v. Para ello se implementa el siguiente circuito:
 
La alimentación de 5 V si no se usa una fuente de directa, se recomiendo usar el regulador LM7805 luego de la transformación, rectificación y filtrado de voltaje, debido a su alta disponibilidad comercial y buen manejo en cuanto al consumo, suministro y regulación de tensión.
La alimentación de 3.3 V se logra por medio de la resistencia y el diodo zener que baja la tensión a 3.3 V y limita la corriente a un nivel adecuado para los defierentes dispositivos. El valor de la resistencia fue calculado deacuerdo a la diferencia de voltaje y la potencia que debe soportar.

DISPLAY LCD

El condensador sirve de acople mientras que la resistencia de 1 K le dá una muy buena resolución a la pantalla LCD. Se configuró de manera que su consumo sea mínimo aún a modo de Backlight. Las conexiones al aire van al microcontrolador.

CIRCUITO COMPLETO

Los conectores 1 y 2 (JP1 y JP2) corresponden a las entradas del teclado matricial y los sensores respectivamente. El conector 3 (JP3) es para la programación del microcontrolador.

Los dispositivos fueron escogidos teniendo en cuenta que:
  • El cristal utilizado garantiza el sincronismo estre los dispositivos para evitar pérdidas de datos o problemas entre la comunicación.
  •  El microcontrolador cuenta con las entradas y salidas suficientes requeridas para nuestra aplicación. Además, es de nuestro conocimiento y de fácil programación sumando su bajo costo en comparación a otros microcontroladores de iguales características.
  • La comunicación por ZIGBEE es ideal por su alcance y capacidad de ahorro en energía en comparación con otros sistemas inalámbricos. Además se puede configurar de muchas maneras para lograr varios puntos de control y supervisión.


DISEÑO DEL FIRMWARE

Las tareas que se realizarán en el sistema de seguridad dependerán del elemento en sí. Los elementos involucrados y sus tareas serán explicados a continuación.

TECLADO MATRICIAL.

Debido a su estructura interna a base de pulsadores dispuestos en filas y columnas, la tarea a realizar por este dispositivo consta básicamente de 2 partes:
  • Tarea de entrada: Leer el pulsador oprimido teniendo como base su arreglo matricial y la entrada digital a la que fue conectado. 
  • Tarea de control: Depende de la tecla oprimida. 
    • Tecla A: Pide la autorización para ingresar la clave, ya sea para activar o desactivar el sistema.
    • Teclas numéricas: Introducen el código de seguridad. 
    • Tecla #: Hace las veces de la tecla ENTER informando que el código se ingresó sin determinar si correcta o incorrectamente.

DISPLAY LCD.

Es un modo de visualización por lo que es considerado tan solo una salida. Sus tareas tienen que ver con:
  • Mostrar en pantalla mensajes informativos acerca del estado en el que se encuentra el sistema (activado – desactivado).
  • Tareas de salida: Muestra en pantalla secuencias de caracteres dependiendo del dispositivo de entrada activado.  
    • Sensores: Muestra en pantalla el sensor que se activó siempre y cuando el sistema esté encendido. 
    • Teclado: Al momento de presionar la tecla “A”, muestra en pantalla la frase “Introducir clave”, y a su vez, registrando los dígitos pulsados.

SENSORES.

Son los elementos que censan los cambios presentados en los detectores y son la base de este sistema de seguridad. Sus tareas son completamente de entrada pero son base de algunas tareas de control. Su funcionamiento es similar al de los pulsadores.
  • Tarea de entrada: Leer la activación de cualquiera de los 3 sensores a usar indicando que el sistema de seguridad ha sido violado. 
  • Tarea de control: Determina tareas como:  
    • Genera la salida en el display LCD indicando que sensor se activo. 
    • Genera una escritura en la memoria SD indicando que sensor se activo.

MEMORIA SD.

Es un dispositivo de almacenamiento que, en nuestro caso, funciona como elemento de entrada y salida. Sus tareas corresponden a dicho comportamiento.
  • Tarea de entrada: Se realiza al momento de leer la memoria para ser mostrada en pantalla desde un PC.
  • Tarea de salida: Se registran todos los eventos ocurridos en el sistema de seguridad con hora y fecha.
    • Sensores activados.
    • Ingreso de claves (correctas o incorrectas).

MODULOS ZIGBEE.

Dispositivos de comunicación entre el sistema y el PC.
  • Tarea de comunicación: Se usa para visualizar en una pantalla remota (en nuestro caso un PC), los eventos y el estado del sistema de seguridad, en una plataforma “SCADA” (previamente almacenados en la memoria SD).
  •  Transmite el código para activar o desactivar la alarma desde el PC.

PC.

Dispositivo de supervisión remoto. Sus tareas son:
  • Tarea de entrada: Desde el PC se puede activar o desactivar el sistema.  
  • Tarea de salida: Se leen los estados de los sensores y se registra el contenido de la memoria SD en la plataforma “SCADA”.

MICROCONTROLADOR

Es el elemento de control que relaciona todos las entradas con las salidas del sistema.
  • Tarea de entrada:Lee las señales que provienen desde los distintos sensores y teclado para determinar la acción a realizar.
    • Lee los pulsadores correspondientes al teclado matricial.
    • Lee el accionamiento de los sensores.
    • Lee la SD.
    • Lee peticiones generadas a través de la comunicación ZIGBEE.
  • Tareas de control: Interpreta las entradas para decidir qué operación hacer.
    • Comprueba que la clave ingresada por el teclado, sea correcta.
    • Identifica que el sistema este encendido y si se activa un sensor, activa salidas.
    • Comprueba el requerimiento del modulo ZIGBEE (lectura - escritura).
  • Tareas de salida: Manda las señales a los distintos dispositivos de salida. 
    • Activa el LCD para mostrar en pantalla alguna acción.
    • Activa el modo escritura en la memoria SD.
    • Prepara modo lectura – escritura de los dispositivos ZIGBEE .

MÁQUINA DE ESTADOS

Máquina de estados para activar/desactivar el sistema



El estado inicial del sistema es Desactivado.
 
Pregunta clave


Luego de activar la tecla “A” del teclado matricial, el sistema entra a preguntar el código de seguridad, ya sea para activar o desactivar este. Para ello, por medio del teclado se digita la clave la cual es procesada por el micro-controlador que ya tendrá dicho código guardado. Independiente de que si se ingreso bien o no la contraseña, el sistema registrará dicho evento en la memoria SD especificando la fecha y hora en la que se efectuó la acción. Paralelamente, en el LCD se indicara si la contraseña fue correcta o no para efectos de visualización en el sitio mismo de mando.

NOTA: Si 10 segundos luego de activar la tecla “A” no se digita la clave por medio del teclado, el sistema se seguirá en el estado que tenía anteriormente.


Activado


Estando el sistema activado, si alguno de los sensores se activa, ésta señal será percibida por el micro-controlador y registrará el evento tanto en la memoria SD (con su respectiva fecha y hora) como en la pantalla LCD especificando el sensor activado.

El PC puede desactivar o activar el sistema. Esto en una operación de transmisión de dicha orden del PC al micro-controlador. También hay una operación de recepción en la que se lee lo que está almacenado en la memoria SD y el estado del sistema en sí.
NOTA: Esta comunicación se hace por medio de los módulos ZIGBEE.