sistema para monitorizar y controlar instalaciones de forma remota utilizando software libre
TRANSCRIPT
AUTOR: D. Zebenzuy Lima López
TUTORES: Dr. Francisco Javier del Pino Suárez
Dr. Hugo García Vázquez
TITULACIÓN: Ingeniero de Telecomunicación
UNIVERSIDAD DE LAS PALMAS DE GRAN CANARIA
SISTEMA PARA MONITORIZAR Y CONTROLAR INSTALACIONES DE FORMA REMOTA UTILIZANDO
SOFTWARE LIBRE
EITE 2015
INDICE
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto
11. Conclusiones y trabajos futuros
1. MOTIVACIÓN DEL PROYECTO
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto.
11. Conclusiones y trabajos futuros 1
1. MOTIVACIÓN DEL PROYECTO
• Adquirir nuevos conocimientos y aptitudes
• Aplicar las distintas disciplinas de la titulación
• Desarrollar un producto
2
ACTUAL
FUNCIONAL
VERSÁTIL
FUTURO
2. OBJETIVOS
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto.
11. Conclusiones y trabajos futuros 3
2. OBJETIVOS
• Diseñar un sistema abierto para monitorizar y controlar cualquier tipo instalación de forma remota utilizando Software libre
• Uso y gestión un servidor y una base de datos
• Creación de una aplicación web
• Abordar el proyecto por separado: 3 Bloques
• Implementación y verificación del sistema general
• Estudio de posibles aplicaciones
4
DISEÑAR
USAR Y GESTIONAR
ESTUDIAR
IMPLEMENTACIÓN Y VERIFICACIÓN
DESARROLLAR
3. INTRODUCCIÓN
1. Motivación
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto.
11. Conclusiones y trabajos futuros 5
3. INTRODUCCIÓN
Redes sensores e Internet de las cosas como base del proyecto
Redes de sensores Monitorizan magnitudes físicas de procesos productivos Actualmente se comunican de forma inalámbrica Tamaño reducido, potentes y consumo eficiente Utilizan ZigBee, Bluetooth, WIFI o GPRS Estándar IEEE 802.15.4 Diversas aplicaciones: domótica, militares, industriales,
agrícolas, protección medioambiental, etc
6
3. INTRODUCCIÓN
• Mota o nodo
Sensor
Transmisor contecnología
inalámbrica:wifi,zigbee,bluetooth..
Batería
CPU/Memoria
7
3. INTRODUCCIÓN
Internet de las cosas Interconexión de objetos cotidianos con Internet
Próxima evolución de Internet
En 2003 : 0,08 dispositivos/persona
Actualmente : 1,84 dispositivos/persona
Internet sensorial
8
3. INTRODUCCIÓN
• Propuesta sistema general
CPUWifi
Red Waspmote
Red Arduino
Otros
Sensores
Actuadores
Cámara
Otros
INTERNET
Ethernet
Servidor
WEB
WEB
WEB
Usuario 1
Usuario 2
Usuario 1
CPUWifi
Red Waspmote
Red Arduino
Otros
Sensores
Actuadores
Cámara
Otros
Usuario 2
Ethernet
Bloque 1
Bloque 2
Bloque 3
9
BLOQUE 1 BLOQUE 3
BLOQUE 2
4. BLOQUE 1
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto.
11. Conclusiones y trabajos futuros 10
4. BLOQUE 1
• Estará ubicado en la instalación a monitorizar y controlar
Raspberry Pi
11
ARDUINO
SERVO MOTOR
CÁMARA WEB
LEDs
4. BLOQUE 1
Raspberry Pi Configurada y programada completamente desde cero Es la unidad de control en la instalación Encargada de la recepción (Gateway) y envío de datos al
servidor principal Maestro (Master) en la comunicación con Arduino Controla los dispositivos añadidos Actualiza su IP pública automáticamente, evitando uso de
dominios Por seguridad
Permisos de acceso a la base de datos restringidos Conexión SSH con el servidor Clave RSA como huella alojada en servidor principal
12
4. BLOQUE 1
Dispositivos conectados a la Raspberry Pi Arduino
Incorpora los sensores que recogen los valores analógicos de temperatura, humedad y luminosidad
Envía los datos a través de USB al Gateway (RPi) Esclavo (Slave)
Servo motor Cámara web LEDs Hub 4xUSB
13
Se ejecuta script de petición de datos
Se crea Tunneling SSH
Se realiza la conexión segura con la base de datos
Se abre el puerto serie
• Se definen los parámetros de conexión
• Se escribe por el puerto serie un dato ("1")
• Se lee el puerto serie pasado un timeout establecido
Se reciben los datos y se realiza la conversión necesaria
Se almacenan los datos en la BD
Se cierran las conexiones
• Base de datos
• Puerto serie
• SSH
Petición desde
la aplicación
web
Se lee el puerto serie
Se leen los datos analógicos de los
sensores
Se envían los datos por el puerto serie con un formato establecido
Se hace un vaciado del puerto serie (flush)
Vacío
Hay dato
4. BLOQUE 1
14
5. BLOQUE 2
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto.
11. Conclusiones y trabajos futuros 15
5. BLOQUE 2 - Servidor
Utilización de un servidor WAMP
Funciones del servidor
• Gestión de usuarios, base de datos
• Alojamiento de la aplicación web
16
WINDOWS
APACHE MySQL
PHP
5. BLOQUE 2 - Servidor
Configuraciones
• Acceso remoto permitido desde RPi
• Creación de un usuario para RPi
• Privilegios restringidos
17
MAYOR CONTROL
SEGURIDAD
5. BLOQUE 2 - Base de datos
Base de datos MySQL
18
GESTIÓN INSTALACIONES
USUARIOS
INSTALACIONES
Acceso y privilegios restringidos para RPi.
Control absoluto para el administrador
Sólo podrá actualizar el servidor (IP pública)
Sólo podrá insertar los nuevos datos de los sensores
5. BLOQUE 2 - Base de datos
Usuarios
ID User Password Servidor
19
5. BLOQUE 2 - Base de datos
Instalaciones
ID Nodo Hum Lum Temp Fecha Ref
Base de datos relacional: Ref está relacionado con el IDde la tabla usuarios
20
6. BLOQUE 3
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto
11. Conclusiones y trabajos futuros 21
6. BLOQUE 3
Aplicación web
Acceso: Programado en PHP y HTML
Restringe el acceso al usuario
Aplicación: Programada en HTML5, JavaScript, PHP y CSS
Permite la monitorización y control de la instalación
22
USUARIO CONTRASEÑA
6. BLOQUE 3
• Aplicación web: Acceso
23
6. BLOQUE 3
Aplicación web: Monitorización
24
LUMINOSIDAD TEMPERATURAHUMEDAD RELATIVA
FECHA
6. BLOQUE 3
• Aplicación web: Control
25
LEDs
WEBCAM
SERVO MOTOR
7. SISTEMA COMPLETO
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto.
11. Conclusiones y trabajos futuros 26
7. SISTEMA COMPLETO - FUNCIONAMIENTO
INTERNET
Servidor
WEB WEB
Usuario 1
Usuario 2
Usuario
RPi
Instalación del Usuario
LEDs
Servo motor
Cámara web
Datos de los sensores.vía USB
Datos sensores calibrados.Vía WIFI
ACCIONES DEL USUARIO:
Petición de datosActivar/desactivar Cámara webRotar servo motorEncender/Apagar LEDs
IP PÚBLICA
87.20.20.20
Usuario
Contraseña
27
7. SISTEMA COMPLETO - FUNCIONAMIENTO
INTERNET
Servidor
WEB WEB
Usuario 1
Usuario 2
Usuario
RPi
Instalación del Usuario
LEDs
Servo motor
Cámara web
Datos de los sensores.vía USB
Datos sensores calibrados.Vía WIFI
ACCIONES DEL USUARIO:
Petición de datosActivar/desactivar Cámara webRotar servo motorEncender/Apagar LEDs
IP PÚBLICA
87.20.20.20
Usuario
Contraseña
27
LOGIN
7. SISTEMA COMPLETO - FUNCIONAMIENTO
INTERNET
Servidor
WEB WEB
Usuario 1
Usuario 2
Usuario
RPi
Instalación del Usuario
LEDs
Servo motor
Cámara web
Datos de los sensores.vía USB
Datos sensores calibrados.Vía WIFI
ACCIONES DEL USUARIO:
Petición de datosActivar/desactivar Cámara webRotar servo motorEncender/Apagar LEDs
IP PÚBLICA
87.20.20.20
Usuario
Contraseña
27
PETICIÓN RECIBIDA
7. SISTEMA COMPLETO - FUNCIONAMIENTO
INTERNET
Servidor
WEB WEB
Usuario 1
Usuario 2
Usuario
RPi
Instalación del Usuario
LEDs
Servo motor
Cámara web
Datos de los sensores.vía USB
Datos sensores calibrados.Vía WIFI
ACCIONES DEL USUARIO:
Petición de datosActivar/desactivar Cámara webRotar servo motorEncender/Apagar LEDs
IP PÚBLICA
87.20.20.20
Usuario
Contraseña
27
¡DATOS DISPONIBLES!
7. SISTEMA COMPLETO
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto
11. Conclusiones y trabajos futuros 28
7. SISTEMA COMPLETO - ADMINISTRACIÓN
Administración del sistema
• Acceso remoto como administrador a RPi• Mantenimiento del servidor, base de datos y
aplicación web
Gestión de errores
• Archivos log en RPi• Recepción de correo electrónico
29
8. ANÁLISIS Y RESULTADOS
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto
11. Conclusiones y trabajos futuros 30
8. ANÁLISIS Y RESULTADOS
• Temperatura
46.5
47
47.5
48
48.5
49
49.5
50
1 2 3 4 5 6 7 8 9 10 11
Tem
pe
ratu
ra º
C
7 horas encendida + Webcam
31
8. ANÁLISIS Y RESULTADOS
• Temperatura
Horas encendida Temperatura máxima Temperatura media
2 47.6 ºC 47.34ºC
4 47.6 ºC 46.81 ºC.
5 47.6 ºC 47.11 ºC.
7 49.7 ºC 48.73 ºC.
32
8. ANÁLISIS Y RESULTADOS
• Temperatura
Horas encendida Temperatura máxima Temperatura media
2 47.6 ºC 47.34ºC
4 47.6 ºC 46.81 ºC.
5 47.6 ºC 47.11 ºC.
7 49.7 ºC 48.73 ºC.
32
49.7 ºC
8. ANÁLISIS Y RESULTADOS
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto
11. Conclusiones y trabajos futuros 33
8. ANÁLISIS Y RESULTADOS
• CPU
17.8
5.6
53.4
0.60
10
20
30
40
50
60
Sensores LEDs Webcam Servo
Consumo CPU (%)
34
8. ANÁLISIS Y RESULTADOS
• Webcam proceso crítico
35
Resolución CPU (%) Memoria (%)
320x240 53,4 0,4
720x480 92,7 0,9
800x600 91,7 1,3
1280x720 93 2,3
8. ANÁLISIS Y RESULTADOS
• Webcam proceso crítico
35
Resolución CPU (%) Memoria (%)
720x480 92,7 0,9
800x600 91,7 1,3
1280x720 93 2,3
320X240 53,4 0,4
8. ANÁLISIS Y RESULTADOS
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Conclusiones y trabajos futuros
11. Presupuesto 36
8. ANÁLISIS Y RESULTADOS
• Memoria
2.5
2
0,4
1.4
0
0.5
1
1.5
2
2.5
3
Sensores LEDs Webcam Servo
Consumo Memoria (%)
37
8. ANÁLISIS Y RESULTADOS
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto
11. Conclusiones y trabajos futuros 38
8. ANÁLISIS Y RESULTADOS
• Estudio energéticoTarifa punta: 0,165383 €/kWh 21,731 €
Tarifa llano: 0,130022 €/kWh 17,085 €
Tarifa valle: 0,089085 €/kWh 11,706 €
vsTarifa punta: 0,165383 €/kWh 94.108 €
Tarifa llano: 0,130022 €/kWh 73.985 €
Tarifa valle: 0,089085 €/kWh 50.692 €
39
P = 15 W
P = 64.98 W
8. ANÁLISIS Y RESULTADOS
• Estudio energéticoTarifa punta: 0,165383 €/kWh 21,731 €
Tarifa llano: 0,130022 €/kWh 17,085 €
Tarifa valle: 0,089085 €/kWh 11,706 €
vsTarifa punta: 0,165383 €/kWh 94.108 €
Tarifa llano: 0,130022 €/kWh 73.985 €
Tarifa valle: 0,089085 €/kWh 50.692 €
39
Ahorro anual del 77 % en la tarifa de la energía eléctrica
21.731 €
94.108 €
9. POSIBLES APLICACIONES
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Posibles aplicaciones
10. Presupuesto
11. Conclusiones y trabajos futuros 40
9. POSIBLES APLICACIONES
• Centro de procesamiento de datos (CPD)
41
9. POSIBLES APLICACIONES
• Centro de procesamiento de datos (CPD)
1. Medidas de seguridad en caso de incendio o inundación
2. Sistema específico de refrigeración para mantener unatemperatura baja
3. Instalación de alarmas, control de temperatura y humedadcon avisos SNMP o SMTP
4. Seguridad física de la instalación
42
REQUISITOS
9. POSIBLES APLICACIONES
• Laboratorios
43
9. POSIBLES APLICACIONES
• Laboratorios
1. Temperatura estable
2. Niveles de Temperatura y humedad determinados paraequipos electrónicos
3. Protección de sustancias de la luz
44
REQUISITOS
9. POSIBLES APLICACIONES
• Invernaderos
45
9. POSIBLES APLICACIONES
• Invernaderos
1. Temperatura
2. Humedad relativa
3. Luminosidad
4. CO2
46
REQUISITOS
9. POSIBLES APLICACIONES
• Bodegas
47
9. POSIBLES APLICACIONES
• Bodegas
1. Instalación sin oscilaciones térmicas
2. Valores determinados de humedad relativa
3. Importancia de conocer la temperatura y humedadrelativa en todo momento
48
REQUISITOS
10. PRESUPUESTO
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto
11. Conclusiones y trabajos futuros 49
10. PRESUPUESTO
Concepto Valor
Costes Hardware 648,89 €
Costes de materiales electrónicos
utilizados 205,05 €
Costes de recursos humanos 4200 €
Total 5053,94 €
IGIC 7% 353,776 €
Presupuesto Total 5407,72 €
50
10. PRESUPUESTO
Concepto Valor
Costes Hardware 648,89 €
Costes de materiales electrónicos
utilizados 205,05 €
Costes de recursos humanos 4200 €
Total 5053,94 €
IGIC 7% 353,776 €
Presupuesto Total 5407,72 €
50
5407,72 €
11. CONCLUSIONES Y TRABAJOS FUTUROS
1. Motivación del proyecto
2. Objetivos
3. Introducción
4. Bloque 1: Unidad de control
5. Bloque 2: Servidor y base de datos
6. Bloque 3: Aplicación web
7. Sistema completo
7.1. Funcionamiento
7.2. Administración
8. Análisis y resultados
8.1. Temperatura
8.2. CPU
8.3. Memoria
8.4. Estudio energético
9. Aplicaciones
10. Presupuesto.
11. Conclusiones y trabajos futuros 51
11. CONCLUSIONES Y TRABAJOS FUTUROS
1. Configuración y programación al completo y desde cero de la Raspberry Pi para que sea capaz de cumplir con los requisitos del proyecto
2. Estudio de la placa Arduino y del kit de sensores3. Desarrollo de un Software para la petición y
recepción de datos que proceden de los sensores y posterior almacenamiento en una base de datos
4. Desarrollo de Software para cada dispositivo que será controlado por el cliente desde una aplicación web
52
11. CONCLUSIONES Y TRABAJOS FUTUROS
5. Configuración de un servidor y una base de datos que administrará el sistema y dará soporte a las diferentes instalaciones
6. Desarrollo de una aplicación web que permite monitorizar y controlar las instalaciones mediante cualquier dispositivo que soporte un navegador web
7. Medidas de seguridad en la configuración de la RPi, en la base de datos, en el servidor y en la aplicación web
8. Estudio de los requisitos de diferentes instalaciones9. Construcción de un prototipo mediante el cual se podrá
realizar una demostración
53
11. CONCLUSIONES Y TRABAJOS FUTUROS
• Trabajos futuros
1. Implementar la comunicación ZigBee2. Proporcionar mayor seguridad a la aplicación web.
Conexión segura SSL3. Desarrollar una aplicación móvil para los sistemas
operativos móviles más importantes4. Añadir más nodos con sensores que midan
diferentes parámetros y aumentar así el número de posibles aplicaciones
5. Proveer una salida comercial al proyecto
54
AUTOR: D. Zebenzuy Lima López
TUTORES: Dr. Francisco Javier del Pino Suárez
Dr. Hugo García Vázquez
TITULACIÓN: Ingeniero de Telecomunicación
UNIVERSIDAD DE LAS PALMAS DE GRAN CANARIA
SISTEMA PARA MONITORIZAR Y CONTROLAR INSTALACIONES DE FORMA REMOTA UTILIZANDO
SOFTWARE LIBRE
EITE 2015
UNIVERSIDAD DE LAS PALMAS DE GRAN CANARIA
¡GRACIAS POR SU ATENCIÓN!
EITE 2015