Casa Inteligente
Casa Inteligente
Casa Inteligente
INTRODUCCION
Causa:
La carencia de sistemas de seguridad en zonas de alto riesgo.
Efecto:
Eleva el riesgo de robo en las propiedades de la zona, perdida económica por incendios
y hurtos.
Acción: Implementar
Objeto: Un sistema de seguridad
Condiciones: En las zonas de alto riesgo del departamento de Cochabamba programando
diferenteas dispositivos electronico para monitorear la propiedad.
OBJETIVOS Y ACCIONES
Objetivo General:
Alcance temático:
-Diseñ y programación de microprocesadores
-Programacion orientada a objetos
-Algoritmos
-Estructura de datos
Tema Especifico:
Domotica: El implementar la seguridad y la comodidad de los que habitan dentro del
departamento y asi en un futuro poder usar esta misma tecnología en edificios y casas.
Nivel de Investigación:
Descriptiva: El sistema que se implementara tendrá un microcontrolador donde se guardara el
programa con el cual podremos controlar a los sensores, y los registros se guradaran en archivos de
texto, este será novedoso ya que combinaremos varios dispositivos para la función de seguridad.
Correlacional: Al implementar el sistema se podrá reducir el riesgo de hurtos y asi poder aumentar
la seguridad.
Alcance Temporal: El tiempo de funcionamiento del microcontrolador y de los sensores será anual,
ya que estos son dispositivos frágiles y se tiene que hacer un mantenimiento y verificación de su
estado funcional.
Alcance Social: El proyecto tendra que ser conocido por el publico para que asi se pueda
implementar en el menor tiempo en el mayor numero de viviendas donde se produzca mucho mas
hurtos.
Alcance Geografico: El proyecto será implementado en Cercado Cochabamba-bolivia
HIPOTESIS
Variable dependiente:
Riesgo: El riesgo de las propiedades en las zonas de riesgo, sera afectado por la
seguridad que tengan estos mismos
Variable Independiente:
Seguridad: Con una seguridad eficiente en las propedades, la variable dependiente podra
se afectada.
MATRIZ DE CONSISTENCIA
MARCO TEORICO
LENGUAJE DE PROGRAMACION:
Un lenguaje de programación es un lenguaje formal diseñado para expresar procesos que pueden
ser llevados a cabo por máquinas como las computadoras.
Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una
máquina, para expresar algoritmos con precisión, o como modo de comunicación humana.
Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su
estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se
prueba, se depura, se compila (de ser necesario) y se mantiene el código fuente de un programa
informático se le llama programación.
LIBRERIAS
En informática, una biblioteca (del inglés library) es un conjunto de implementaciones
funcionales, codificadas en un lenguaje de programación, que ofrece una interfaz bien
definida para la funcionalidad que se invoca.
PROGRAMACION MODULAR
La programación modular es un paradigma de programación que consiste en dividir un
programa en módulos o subprogramas con el fin de hacerlo más legible y manejable.
Se presenta históricamente como una evolución de la programación estructurada para
solucionar problemas de programación más grandes y complejos de lo que ésta puede
resolver.
MODULO
En programación un módulo es una porción de un programa de computadora. De las
varias tareas que debe realizar un programa para cumplir con su función u objetivos, un
módulo realizará, comúnmente, una de dichas tareas (o varias, en algún caso).
PROCEDIMIENTO
Un procedimiento es un módulo que cumple una determinada tarea.
FUNCION
Función es un módulo que cumple con una determinada tarea y devuelve un resultado
CLASES
Una clase es la descripción de un tipo de objeto. La descripción abarca la definición de
los distintos atributos y métodos inherentes al objeto.
En algunos casos se puede pensar en la declaración de atributos en la parte publica y asi
mismo el declarar métodos en la parte privada.
La parte pública de la clase implica que los elementos definidos en este bloque solo se
pueden manipular en cualquier lugar del programa a través de un identificador de acceso
(variable o arreglo). La parte privada de la clase implica que los elementos definidos en
este bloque solo se pueden manipular solo por métodos definidos en la parte pública.
PROGRAMACION VISUAL (ORIENTADA A OBJETOS)
La programación visual brinda los conocimientos necesarios para diseñar y desarrollar
aplicaciones con un entorno visual amigable y fácil de utilizar para el usuario.
Los lenguajes de programación visual tienden a facilitar la tarea de los programadores,
dado que con los primeros lenguajes de programación crear una ventana era tarea de
meses de desarrollo y de un equipo de trabajo.
PROGRAMACION ORIENTADA A OBJETOS
Define los programas en términos de "clases de objetos", objetos que son entidades que
combinan estado (es decir, datos), comportamiento (esto es, procedimientos o métodos) e
identidad (propiedad del objeto que lo diferencia del resto). La programación orientada a
objetos expresa un programa como un conjunto de estos objetos, que colaboran entre
ellos para realizar tareas.
La técnica de programación orientada a objetos, se basa en fundamentos de diseño,
técnicas y metodologías unificadas (UML).
OBJETO
Un objeto no es más que un conjunto de variables (o datos) y métodos (o funciones)
relacionados entre sí. Los objetos en programación se usan para modelar objetos o
entidades del mundo real (el objeto hijo, madre, ofarmacéutica, por ejemplo). Un objeto
es, por tanto, la representación en un programa de un concepto, y contiene toda la
información necesaria para abstraerlo: datos que de scriben sus atributos y operaciones
que pueden realizarse sobre los mismos. La siguiente figura muestra una representación
visual de un objeto.
METODOS
Una operación que realiza acceso a los datos. Podemos definir método como un
programa procedimental o procedural escrito en cualquier lenguaje, que está asociado a
un objeto determinado y cuya ejecución sólo puede desencadenarse a través de un
mensaje recibido por éste o por sus descendientes.
ATRIBUTO
Los atributos son las características individuales que diferencian un objeto de otro y
determinan su apariencia, estado u otras cualidades. Los atributos se guardan en variables
denominadas de instancia, y cada objeto particular puede tener valores distintos para
estas variables.
ENCAPSULAMIENTO
Como hemos visto, cada objeto es una estructura compleja en cuyo interior hay datos y
programas, todos ellos relacionados entre sí, como si estuvieran encerrados
conjuntamente en una cápsula. Esta propiedad (encapsulamiento), es una de las
características fundamentales en la programación orientada a objetos.
ESTRUCTURA DE DATOS
En programación, una estructura de datos es una forma de organizar un conjunto de datos
elementales con el objetivo de facilitar su manipulación. Un dato elemental es la mínima
información que se tiene en un sistema.
LISTA
En Ciencias de la Computación, una lista enlazada es una de las estructuras de datos
fundamentales, y puede ser usada para implementar otras estructuras de datos. Consiste en una
secuencia de nodos, en los que se guardan campos de datos arbitrarios y una o dos referencias,
enlaces o punteros al nodo anterior o posterior.
COLA
Una cola es una estructura de datos, caracterizada por ser una secuencia de elementos en la que la
operación de inserción push se realiza por un extremo y la operación de extracción pop por el
otro.
PILA
Una pila (stack en inglés) es una lista ordenada o estructura de datos en la que el modo de acceso
a sus elementos es de tipo LIFO (del inglés Last In First Out, último en entrar, primero en salir)
que permite almacenar y recuperar datos. Esta estructura se aplica en multitud de ocasiones en el
área de informática debido a su simplicidad y ordenación implícita de la propia estructura.
ARDUINO
Arduino es una plataforma de hardware libre, basada en una placa con un
microcontrolador y un entorno de desarrollo, diseñada para facilitar el uso de la
electrónica en proyectos multidisciplinares.
APP INVENTOR
Google App Inventor es una aplicación de Google Labs para crear aplicaciones de
software para el sistema operativo Android. De forma visual y a partir de un conjunto de
herramientas básicas, el usuario puede ir enlazando una serie de bloques para crear la
aplicación. El sistema es gratuito y se puede descargar fácilmente de la web. Las
aplicaciones fruto de App Inventor están limitadas por su simplicidad, aunque permiten
cubrir un gran número de necesidades básicas en un dispositivo móvil.