SlideShare ist ein Scribd-Unternehmen logo
1 von 11
Downloaden Sie, um offline zu lesen
Big Data para la Ciudad Inteligente
Diseño de proyecto
Smart Green
Por Rafael Hernampérez Martín
9 de Mayo de 2017
Contenido
Introducción al proyecto............................................................................................................... 3
Conjunto de datos..................................................................................................................... 4
Visión general de la Arquitectura.............................................................................................. 4
Subsistema de adquisición de datos............................................................................................. 6
Diseño de arquitectura a alto nivel........................................................................................... 6
Diseño de nodos IoT.................................................................................................................. 7
Diseño de Centro de Datos ....................................................................................................... 7
Subsistema de gestión de datos.................................................................................................... 8
Conexión con el subsistema de adquisición de datos............................................................... 8
Diseño de arquitectura de alto nivel......................................................................................... 8
Detalle de las tecnologías implicadas ....................................................................................... 9
Subsistema de análisis de datos.................................................................................................... 9
Introducción a la solución planteada........................................................................................ 9
Detalle del análisis................................................................................................................... 10
Caso 1: Alertas anuales de humos ...................................................................................... 10
Caso 2: Nivel medio anual de humos.................................................................................. 10
Visualización de los datos analizados...................................................................................... 10
Datos a visualizar y resultados ............................................................................................ 10
Resumen de la historia y objetivo....................................................................................... 11
Diagramas generados.......................................................................................................... 11
Introducción al proyecto
El objetivo de Smart Green es gestionar y optimizar los recursos medioambientales de un
municipio o comarca, tales como bosques, jardines, zonas verdes, cultivos, etc.
Los objetivos que se persiguen son:
 Sostenibilidad, optimización y eficiencia de los recursos medioambientales
 Reducción de costes de mantenimiento, energía y agua
 Vigilancia y control de los recursos
 Alertas: meteorología, accidentes, incendios, furtivos, etc.
 Gestión efectiva del conocimiento
Para conseguir lo anterior, Smart Green hará uso de las nuevas tecnologías, concretamente de
una red de sensores para medir el estado medioambiental de una zona verde (humedad,
humo/CO2, termómetro, presión, luz, cámaras, movimiento, etc.), la cual estará conectada a
un servidor centralizado que canalizará los datos obtenidos. Dicho servidor podrá acceder a
servicios de otros sistemas online afines (como un servicio de meteorología), y así generar
análisis complejos, simplificando las conclusiones en cuadros de mando interactivos, los cuales
medirán el estado de los recursos medioambientales, así como también la monitorización y
notificación ad-hoc y en tiempo real de alertas.
La energía de gran parte de estos dispositivos estará generada por paneles solares y molinos
de viento, a fin de ahorrar en costes, tanto de mantenimiento como de energía, y tener un
ecosistema totalmente sostenible.
Todo lo anterior estará complementado con apps móviles, que utilizarán los ciudadanos de
forma participativa y los técnicos medio ambientales del ayuntamiento para poder notificar
cualquier incidencia que pueda ocurrir.
Los sensores principales serán:
 Humedad. La medición de este dato podrá gestionar óptimamente el riego. También
dispararía alarmas en el caso de rotura de sistemas de riego o inundaciones.
 Humo. La cantidad de CO2 permite detectar posibles incendios o contaminación.
 Termómetro. Mide la temperatura en ciertas zonas, a fin de proponer la plantación de
plantas más acordes a dichas temperaturas. También permite detectar posibles
incendios, o la predicción de niebla en combinación con los sensores de humedad.
 Luz. Permitirá identificar qué plantas se adaptan mejor a la luz de determinadas zonas.
También permite configurar un umbral de luz a determinadas horas, a fin de identificar
algún posible incendio o si el día está nublado.
 Movimiento. Permite detectar posibles intrusiones en zonas prohibidas, tales como
cazadores furtivos o ladrones de cosechas.
 Cámaras. Permiten vigilar ciertas zonas conflictivas. En combinación con los sensores
de movimiento es posible detectar y registrar actos delictivos. Además, con drones de
vigilancia, será posible acceder a zonas donde las cámaras no consiguen alcanzar.
 Medidor de tierra: Permite medir parámetros tales como el PH de la tierra.
Adicionalmente, se podrán conectar a estaciones meteorológicas locales, a fin de prever
contingencias, tales como el ahorro de riego, o, en el caso de heladas o tempestades, poder
proteger las plantas más vulnerables.
Conjunto de datos
Los datos gestionados por Smart Green serían los siguientes:
 Input:
o Sensores: Registran las métricas correspondientes y con la frecuencia definida
o Cámaras y Drones: Información de vídeo sobre la actividad de video vigilancia
o Estado de salud de los sensores: Nivel de batería, posibles fallas, etc.
o Sistemas online externos: Por ejemplo, servicios meteorológicos online
o Apps: Alertas reportadas por ciudadanos y técnicos de campo
 Output:
o Analítica: Tras el análisis de los inputs, se transforman los datos (ETL) y se
preparan para su visualización y su gestión para la toma de decisiones.
 Visualización y notificación de alertas
 Cuadros de mando interactivos
o Reactiva:
 Riego: Control de las centralitas y válvulas de riego como respuesta a
las mediciones de humedad y a la previsión meteorológica
 Video vigilancia: Activación de las cámaras en caso de detección de
intrusos o furtivos por parte de los sensores de movimiento
 Notificación de alertas a bomberos, en caso de detección de incendios,
accidentes o catástrofes (ej: inundaciones)
Visión general de la Arquitectura
La arquitectura de la solución Smart Green está compuesta de cuatro niveles lógicos:
1. Nivel de usuario final. Comprende las aplicaciones que hacen uso del sistema, tales
como las apps de colaboración ciudadana o reporte de técnicos de campo, o las
herramientas de visualización de datos (cuadros de mando y alertas)
2. Nivel de sistema. Comprende las infraestructuras centralizadas del sistema,
especialmente referidas a los servidores (local y/o en la nube), así como también del
software de Big Data y bases de datos requeridos para procesar la información.
3. Nivel de comunicación. Comprende las tecnologías y los protocolos necesarios para
transmitir la información desde los sensores IoT hasta el nivel de sistema. También
comprende los protocolos necesarios para poder hacer llegar la información desde o
hacia el nivel de usuario final.
4. Nivel físico. Comprende los sensores y dispositivos necesarios para tomar las
mediciones y recopilar datos de interés para el sistema, así como también los
generadores de energía para estos aparatos, las baterías y otros dispositivos que
interactúan con Smart Green, tales como las centralitas y válvulas de riego.
Nota: Considerar también como dispositivos aquellos sobre los que interactúa el sistema Smart
Green en respuesta a eventos o alertas, tales como las centralitas y válvulas de los sistemas de
riego.
NivelFísico
Sensores Dispositivos
NivelComunicación
Protocolos
MQTT HTML FTP SSH
Telnet IPv4 IPv6
NivelSistema
Local
Server
Cloud
Server
NivelUsuario
Subsistema de adquisición de datos
Diseño de arquitectura a alto nivel
* NIVEL COMPUTACIÓN * NIVEL CONECTIVIDAD
Fuentes de información:
 Medición del entorno
o Sensores IoT
 Servicios externos:
o Servicio externo de Meteorología
 Registro de incidencias
o App de participación ciudadana
o App de técnicos de campo
NIVEL APLICACION
Ciudadanos
Técnicos de campo
Servicios Externos
Android
iOS
Windows Phone
Web Services
API/REST
NIVEL SISTEMA / DATOS
ID sensor
Fecha/hora
Datos estado
Datos medición
Fecha/hora
Tipo alerta
Localización
Imágenes
Token
Fecha
Localización
Datos meteorológicos
Servidor HTTP/Web
Servidor BBDD
Cliente MQTT
Paho
Sensores Microprocesadores, Microcontroladores
NIVEL FISICO
ID sensor
Datos estado
Datos medición
Humedad
Termómetro
Humos
Luz
Movimiento
Tierra
etc
Arduino
Raspberry PI
Pasarelas
Routers
Mosquitto
Bluetooth/BLE, 6LowPAN, MQTT
WiFi,3G,6LowPAN
MQTT
3G,HTTP,
API/REST
3G,HTTP,
API/REST
Elementos de la solución:
 Sensores IoT
 Aplicaciones:
o Registro de incidencias (apps ciudadano y técnico de campo)
o Servicios externos (servicio de meteorología)
 Pasarelas:
o Microordenadores y/o microprocesadores (depende del sensor y complejidad)
 Sistema / Concentrador de datos:
o Hardware: servidor en local o en la nube
o Bases de datos: MongoDB
Diseño de nodos IoT
Sensores IoT de la solución:
 Humedad
 Luz
 Humos
 Movimiento
 Termómetro
 Medidor de tierra
Protocolos de comunicación de los sensores:
 Nivel físico: Bluetooth/BLE
 Nivel lógico: IPv6/6LowPAN
Ubicación: Puntos estratégicos de valor medioambiental, con cobertura hasta las pasarelas.
Pasarelas: Arduino o Raspberry, dependiendo de cobertura y complejidad, con caja
antivandalismo y resistente a las inclemencias meteorológicas y medioambientales.
Conectividad WiFi y/o 3G. Software de pasarela Kura y/o Mosquitto
Aplicación: MQTT (apoyo a la aplicación) y EXI (formato de mensajes)
Diseño de Centro de Datos
El Centro de Datos podrá ser un servidor físico y local, o bien un servidor virtual y en la nube. En
ambos casos, dicho servidor implementará software libre para soportar todas las necesidades.
Este centro de datos se apoyará en diferentes servicios:
 Servidor Web/HTTP: Expondrá servicios web o API Restful para recepcionar la
información desde el sistema de registro.
 Demonio o proceso desatendido: Invocará a servicios externos, según se requiera.
 Cliente MQTT: Recepcionará los mensajes que lleguen desde las pasarelas.
Estos servicios procesarán y guardarán la información en HDFS o en una base de datos
MongoDB, para lo cual, el servidor tendrá instalado Hadoop y el servidor de MongoDB.
Subsistema de gestión de datos
Conexión con el subsistema de adquisición de datos
La propuesta de adquisición, sincronización y almacenamiento de datos será la siguiente:
 El servidor expondrá un servicio web o una API/REST que permita a las aplicaciones de
registro (app de participación ciudadana y app de técnico de campo) invocar a servicios,
pasando los datos necesarios para registrar alertas. El propio servicio se conectará
directamente con MongoDB para almacenar dicha información.
 El servidor dispondrá de procesos desatendidos (como demonios o tareas
programadas), o bien disparadores (triggers), que invoquen a los servicios externos
(como el de meteorología), capturar la información retornada, y, en consecuencia,
generar nueva información que se almacena en MongoDB y/o lanzar alguna acción
reactiva (como cambiar el estado de la centralita de los riegos en caso de lluvia).
 El servidor, mediante el cliente MQTT, capturará los mensajes con la información de los
sensores. Como respuesta a estos mensajes, podrá optar por:
o Generar un archivo CSV y almacenarlo de forma distribuida en HDFS, para un
posterior procesamiento map/reduce por parte de Hadoop.
o Guardar esta información en MongoDB. La propia base de datos MongoDB
posee capacidades map/reduce con un buen rendimiento. Por otra parte,
también se puede lanzar el map/reduce sobre MongoDB mediante Spark.
Diseño de arquitectura de alto nivel
NIVEL APLICACION
Ciudadanos
Técnicos de campo
Servicios Externos
NIVEL SISTEMA
HTTP/API RESTFUL
NIVEL FISICO
HTTP/API RESTFUL
HTTP REQUEST
HDFS
Detalle de las tecnologías implicadas
Comunicaciones:
 MQTT: Mensajería entre la pasarela y el servidor para transferir la información de los
sensores y dispositivos:
o Mosquitto: Broker de mensajería (lado de la pasarela)
o Paho: Cliente de mensajería (lado del servidor)
 HTTP/API Restful: Mensajería de servicios web:
o Desde Apps de registro
o Hacia/Desde servicio web de meteorología
Almacenamiento distribuido: HDFS (Hadoop Distributed File System)
Base de datos: MongoDB (NoSQL orientada documentos)
Subsistema de análisis de datos
Introducción a la solución planteada
Debido a la complejidad y a las posibilidades de Smart Green, hablar de una única solución
(map/reduce) sería desaprovechar todo su potencial.
Map/reduce podría utilizarse para realizar síntesis básicas sobre los archivos CSV con la
información de los sensores. También podría realizarse sobre documentos en MongoDB, ya sea
mediante la propia base de datos (posee esta capacidad) o mediante Spark.
MongoDB, además, posee capacidades de funciones de agregado, que permiten obtener síntesis
de datos a través de consultas y operaciones de transformación de los datos.
Adicionalmente, se podrían realizar análisis más complejos a través de librerías de ciencia de
datos desde Python o mediante el lenguaje R. Estas tecnologías permiten tomar un dataset
complejo de datos y realizar operaciones de filtrado, organización, agrupación, etc., para llegar
al resultado esperado.
De cara a este proyecto, abordaremos un ejemplo simple mediante map/reduce, concretamente
en un único sensor (de los muchos posibles) y para dos casos en concreto (de los muchos
posibles). El sensor elegido es el de humos, y el primer caso es identificar el número de casos
anuales de exceso de humos (posibles incendios o por contaminación) de cada una de las zonas
medioambientales. El segundo caso es identificar el nivel medio anual de humos (suponiendo
que la frecuencia de medición es cada 15 minutos)
Detalle del análisis
Cada quince minutos, el sensor envía una medición de los humos de una zona. La pasarela
emitirá un mensaje MQTT al servidor con los datos necesarios:
 Fecha/hora
 Id del sensor
 Zona medioambiental (nombre o identificador)
 Nivel de humos.
El mensaje es recogido por el servidor, a través de Paho (cliente MQTT). Una vez recogidos los
datos, el servidor guardará estos datos en un archivo CSV dentro de un directorio en el sistema
de ficheros distribuido HDFS (o bien lo guardará en una colección en la base de datos MongoDB)
Caso 1: Alertas anuales de humos
El proceso de map/reduce realizará un mapeo con la clave Zona y el valor será el conteo de las
ocurrencias de mediciones. El filtrado deberá contemplar el año y el nivel máximo de humos
superado.
Caso 2: Nivel medio anual de humos
El proceso de map/reduce realizará un mapeo con la clave Zona y el valor será la media
aritmética de los valores de las mediciones, previo filtrado del año.
Visualización de los datos analizados
Datos a visualizar y resultados
Caso 1: Alertas anuales de humos
Datos: Zona, número de casos, año (título)
Resultado: Comparativa de casos por zona durante el año
Caso 2: Nivel medio anual de humos
Datos: Zona, nivel medio anual de humos (en ppm CO2), límite (referencia), año (título)
Resultado: Comparativa del nivel medio anual de humos por zona
Resumen de la historia y objetivo
Caso 1: Resumen de número de veces en que una determinada zona superó el índice de alerta
de humos durante todo el año.
Caso 2: Nivel medio anual de humos en una determinada zona, comparada con una referencia
límite para identificar la desviación.
Diagramas generados
Caso 1: Alertas anuales de humos
Caso 2: Nivel medio anual de humos
Nota: La opción más visual es la representación gráfica es mediante mapas geolocalizados

Weitere ähnliche Inhalte

Ähnlich wie Proyecto Smart Green -IoT y Big Data para ciudades inteligentes

Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_sv
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_svSy ti 2015-a_datalogger_bohorquez-ludena-ortiz_sv
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_svSyTI_2015-A_FLOOJB
 
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz
Sy ti 2015-a_datalogger_bohorquez-ludena-ortizSy ti 2015-a_datalogger_bohorquez-ludena-ortiz
Sy ti 2015-a_datalogger_bohorquez-ludena-ortizDataloger
 
UIMP: Redes de sensores, fundamentos y aplicaciones.
UIMP: Redes de sensores, fundamentos y aplicaciones.UIMP: Redes de sensores, fundamentos y aplicaciones.
UIMP: Redes de sensores, fundamentos y aplicaciones.Gerardo DeMiguel
 
El internet de_las_cosas
El internet de_las_cosasEl internet de_las_cosas
El internet de_las_cosasyairsosa
 
03.1 med-pres
03.1 med-pres03.1 med-pres
03.1 med-presxavazquez
 
Usos de los datos de una estación meteorológica
Usos de los datos de una estación meteorológicaUsos de los datos de una estación meteorológica
Usos de los datos de una estación meteorológicaErnesto May Perez
 
Control asistidos por computadora
Control asistidos por computadoraControl asistidos por computadora
Control asistidos por computadoraEdith Marce GD
 
Ubicación de las funciones y equipos informáticos sujetos a revisión en una o...
Ubicación de las funciones y equipos informáticos sujetos a revisión en una o...Ubicación de las funciones y equipos informáticos sujetos a revisión en una o...
Ubicación de las funciones y equipos informáticos sujetos a revisión en una o...Roseck
 
1 documento word_normas_apa_io_t
1 documento word_normas_apa_io_t1 documento word_normas_apa_io_t
1 documento word_normas_apa_io_toscar rojas
 
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_cv4
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_cv4Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_cv4
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_cv4SyTI_2015-A_FLOOJB
 
Sistema autoalerta para vehículos.
Sistema autoalerta para vehículos.Sistema autoalerta para vehículos.
Sistema autoalerta para vehículos.Erick Calderin
 
Internet of-things
Internet of-thingsInternet of-things
Internet of-thingsJuan Carlos
 
Datos con IOT integracion + big data supply chan
Datos con IOT integracion + big data supply chanDatos con IOT integracion + big data supply chan
Datos con IOT integracion + big data supply chanssuser9becac
 
Adquisicion de datos_arduino_matlab_comu
Adquisicion de datos_arduino_matlab_comuAdquisicion de datos_arduino_matlab_comu
Adquisicion de datos_arduino_matlab_comurafaeljaya
 

Ähnlich wie Proyecto Smart Green -IoT y Big Data para ciudades inteligentes (20)

Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_sv
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_svSy ti 2015-a_datalogger_bohorquez-ludena-ortiz_sv
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_sv
 
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz
Sy ti 2015-a_datalogger_bohorquez-ludena-ortizSy ti 2015-a_datalogger_bohorquez-ludena-ortiz
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz
 
Sistema scada
Sistema scadaSistema scada
Sistema scada
 
UIMP: Redes de sensores, fundamentos y aplicaciones.
UIMP: Redes de sensores, fundamentos y aplicaciones.UIMP: Redes de sensores, fundamentos y aplicaciones.
UIMP: Redes de sensores, fundamentos y aplicaciones.
 
Kyros LBS suite
Kyros LBS suiteKyros LBS suite
Kyros LBS suite
 
El internet de_las_cosas
El internet de_las_cosasEl internet de_las_cosas
El internet de_las_cosas
 
03.1 med-pres
03.1 med-pres03.1 med-pres
03.1 med-pres
 
Usos de los datos de una estación meteorológica
Usos de los datos de una estación meteorológicaUsos de los datos de una estación meteorológica
Usos de los datos de una estación meteorológica
 
Control asistidos por computadora
Control asistidos por computadoraControl asistidos por computadora
Control asistidos por computadora
 
Práctica 1
Práctica 1Práctica 1
Práctica 1
 
Ubicación de las funciones y equipos informáticos sujetos a revisión en una o...
Ubicación de las funciones y equipos informáticos sujetos a revisión en una o...Ubicación de las funciones y equipos informáticos sujetos a revisión en una o...
Ubicación de las funciones y equipos informáticos sujetos a revisión en una o...
 
1 documento word_normas_apa_io_t
1 documento word_normas_apa_io_t1 documento word_normas_apa_io_t
1 documento word_normas_apa_io_t
 
IDboxRT Presentación Corporativa
IDboxRT Presentación CorporativaIDboxRT Presentación Corporativa
IDboxRT Presentación Corporativa
 
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_cv4
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_cv4Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_cv4
Sy ti 2015-a_datalogger_bohorquez-ludena-ortiz_cv4
 
Sistema autoalerta para vehículos.
Sistema autoalerta para vehículos.Sistema autoalerta para vehículos.
Sistema autoalerta para vehículos.
 
Deimos security suite esp
Deimos security suite espDeimos security suite esp
Deimos security suite esp
 
Deber automatizar
Deber automatizarDeber automatizar
Deber automatizar
 
Internet of-things
Internet of-thingsInternet of-things
Internet of-things
 
Datos con IOT integracion + big data supply chan
Datos con IOT integracion + big data supply chanDatos con IOT integracion + big data supply chan
Datos con IOT integracion + big data supply chan
 
Adquisicion de datos_arduino_matlab_comu
Adquisicion de datos_arduino_matlab_comuAdquisicion de datos_arduino_matlab_comu
Adquisicion de datos_arduino_matlab_comu
 

Kürzlich hochgeladen

Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 

Kürzlich hochgeladen (10)

Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 

Proyecto Smart Green -IoT y Big Data para ciudades inteligentes

  • 1. Big Data para la Ciudad Inteligente Diseño de proyecto Smart Green Por Rafael Hernampérez Martín 9 de Mayo de 2017
  • 2. Contenido Introducción al proyecto............................................................................................................... 3 Conjunto de datos..................................................................................................................... 4 Visión general de la Arquitectura.............................................................................................. 4 Subsistema de adquisición de datos............................................................................................. 6 Diseño de arquitectura a alto nivel........................................................................................... 6 Diseño de nodos IoT.................................................................................................................. 7 Diseño de Centro de Datos ....................................................................................................... 7 Subsistema de gestión de datos.................................................................................................... 8 Conexión con el subsistema de adquisición de datos............................................................... 8 Diseño de arquitectura de alto nivel......................................................................................... 8 Detalle de las tecnologías implicadas ....................................................................................... 9 Subsistema de análisis de datos.................................................................................................... 9 Introducción a la solución planteada........................................................................................ 9 Detalle del análisis................................................................................................................... 10 Caso 1: Alertas anuales de humos ...................................................................................... 10 Caso 2: Nivel medio anual de humos.................................................................................. 10 Visualización de los datos analizados...................................................................................... 10 Datos a visualizar y resultados ............................................................................................ 10 Resumen de la historia y objetivo....................................................................................... 11 Diagramas generados.......................................................................................................... 11
  • 3. Introducción al proyecto El objetivo de Smart Green es gestionar y optimizar los recursos medioambientales de un municipio o comarca, tales como bosques, jardines, zonas verdes, cultivos, etc. Los objetivos que se persiguen son:  Sostenibilidad, optimización y eficiencia de los recursos medioambientales  Reducción de costes de mantenimiento, energía y agua  Vigilancia y control de los recursos  Alertas: meteorología, accidentes, incendios, furtivos, etc.  Gestión efectiva del conocimiento Para conseguir lo anterior, Smart Green hará uso de las nuevas tecnologías, concretamente de una red de sensores para medir el estado medioambiental de una zona verde (humedad, humo/CO2, termómetro, presión, luz, cámaras, movimiento, etc.), la cual estará conectada a un servidor centralizado que canalizará los datos obtenidos. Dicho servidor podrá acceder a servicios de otros sistemas online afines (como un servicio de meteorología), y así generar análisis complejos, simplificando las conclusiones en cuadros de mando interactivos, los cuales medirán el estado de los recursos medioambientales, así como también la monitorización y notificación ad-hoc y en tiempo real de alertas. La energía de gran parte de estos dispositivos estará generada por paneles solares y molinos de viento, a fin de ahorrar en costes, tanto de mantenimiento como de energía, y tener un ecosistema totalmente sostenible. Todo lo anterior estará complementado con apps móviles, que utilizarán los ciudadanos de forma participativa y los técnicos medio ambientales del ayuntamiento para poder notificar cualquier incidencia que pueda ocurrir. Los sensores principales serán:  Humedad. La medición de este dato podrá gestionar óptimamente el riego. También dispararía alarmas en el caso de rotura de sistemas de riego o inundaciones.  Humo. La cantidad de CO2 permite detectar posibles incendios o contaminación.  Termómetro. Mide la temperatura en ciertas zonas, a fin de proponer la plantación de plantas más acordes a dichas temperaturas. También permite detectar posibles incendios, o la predicción de niebla en combinación con los sensores de humedad.  Luz. Permitirá identificar qué plantas se adaptan mejor a la luz de determinadas zonas. También permite configurar un umbral de luz a determinadas horas, a fin de identificar algún posible incendio o si el día está nublado.  Movimiento. Permite detectar posibles intrusiones en zonas prohibidas, tales como cazadores furtivos o ladrones de cosechas.  Cámaras. Permiten vigilar ciertas zonas conflictivas. En combinación con los sensores de movimiento es posible detectar y registrar actos delictivos. Además, con drones de vigilancia, será posible acceder a zonas donde las cámaras no consiguen alcanzar.  Medidor de tierra: Permite medir parámetros tales como el PH de la tierra. Adicionalmente, se podrán conectar a estaciones meteorológicas locales, a fin de prever contingencias, tales como el ahorro de riego, o, en el caso de heladas o tempestades, poder proteger las plantas más vulnerables.
  • 4. Conjunto de datos Los datos gestionados por Smart Green serían los siguientes:  Input: o Sensores: Registran las métricas correspondientes y con la frecuencia definida o Cámaras y Drones: Información de vídeo sobre la actividad de video vigilancia o Estado de salud de los sensores: Nivel de batería, posibles fallas, etc. o Sistemas online externos: Por ejemplo, servicios meteorológicos online o Apps: Alertas reportadas por ciudadanos y técnicos de campo  Output: o Analítica: Tras el análisis de los inputs, se transforman los datos (ETL) y se preparan para su visualización y su gestión para la toma de decisiones.  Visualización y notificación de alertas  Cuadros de mando interactivos o Reactiva:  Riego: Control de las centralitas y válvulas de riego como respuesta a las mediciones de humedad y a la previsión meteorológica  Video vigilancia: Activación de las cámaras en caso de detección de intrusos o furtivos por parte de los sensores de movimiento  Notificación de alertas a bomberos, en caso de detección de incendios, accidentes o catástrofes (ej: inundaciones) Visión general de la Arquitectura La arquitectura de la solución Smart Green está compuesta de cuatro niveles lógicos: 1. Nivel de usuario final. Comprende las aplicaciones que hacen uso del sistema, tales como las apps de colaboración ciudadana o reporte de técnicos de campo, o las herramientas de visualización de datos (cuadros de mando y alertas) 2. Nivel de sistema. Comprende las infraestructuras centralizadas del sistema, especialmente referidas a los servidores (local y/o en la nube), así como también del software de Big Data y bases de datos requeridos para procesar la información. 3. Nivel de comunicación. Comprende las tecnologías y los protocolos necesarios para transmitir la información desde los sensores IoT hasta el nivel de sistema. También comprende los protocolos necesarios para poder hacer llegar la información desde o hacia el nivel de usuario final. 4. Nivel físico. Comprende los sensores y dispositivos necesarios para tomar las mediciones y recopilar datos de interés para el sistema, así como también los generadores de energía para estos aparatos, las baterías y otros dispositivos que interactúan con Smart Green, tales como las centralitas y válvulas de riego.
  • 5. Nota: Considerar también como dispositivos aquellos sobre los que interactúa el sistema Smart Green en respuesta a eventos o alertas, tales como las centralitas y válvulas de los sistemas de riego. NivelFísico Sensores Dispositivos NivelComunicación Protocolos MQTT HTML FTP SSH Telnet IPv4 IPv6 NivelSistema Local Server Cloud Server NivelUsuario
  • 6. Subsistema de adquisición de datos Diseño de arquitectura a alto nivel * NIVEL COMPUTACIÓN * NIVEL CONECTIVIDAD Fuentes de información:  Medición del entorno o Sensores IoT  Servicios externos: o Servicio externo de Meteorología  Registro de incidencias o App de participación ciudadana o App de técnicos de campo NIVEL APLICACION Ciudadanos Técnicos de campo Servicios Externos Android iOS Windows Phone Web Services API/REST NIVEL SISTEMA / DATOS ID sensor Fecha/hora Datos estado Datos medición Fecha/hora Tipo alerta Localización Imágenes Token Fecha Localización Datos meteorológicos Servidor HTTP/Web Servidor BBDD Cliente MQTT Paho Sensores Microprocesadores, Microcontroladores NIVEL FISICO ID sensor Datos estado Datos medición Humedad Termómetro Humos Luz Movimiento Tierra etc Arduino Raspberry PI Pasarelas Routers Mosquitto Bluetooth/BLE, 6LowPAN, MQTT WiFi,3G,6LowPAN MQTT 3G,HTTP, API/REST 3G,HTTP, API/REST
  • 7. Elementos de la solución:  Sensores IoT  Aplicaciones: o Registro de incidencias (apps ciudadano y técnico de campo) o Servicios externos (servicio de meteorología)  Pasarelas: o Microordenadores y/o microprocesadores (depende del sensor y complejidad)  Sistema / Concentrador de datos: o Hardware: servidor en local o en la nube o Bases de datos: MongoDB Diseño de nodos IoT Sensores IoT de la solución:  Humedad  Luz  Humos  Movimiento  Termómetro  Medidor de tierra Protocolos de comunicación de los sensores:  Nivel físico: Bluetooth/BLE  Nivel lógico: IPv6/6LowPAN Ubicación: Puntos estratégicos de valor medioambiental, con cobertura hasta las pasarelas. Pasarelas: Arduino o Raspberry, dependiendo de cobertura y complejidad, con caja antivandalismo y resistente a las inclemencias meteorológicas y medioambientales. Conectividad WiFi y/o 3G. Software de pasarela Kura y/o Mosquitto Aplicación: MQTT (apoyo a la aplicación) y EXI (formato de mensajes) Diseño de Centro de Datos El Centro de Datos podrá ser un servidor físico y local, o bien un servidor virtual y en la nube. En ambos casos, dicho servidor implementará software libre para soportar todas las necesidades. Este centro de datos se apoyará en diferentes servicios:  Servidor Web/HTTP: Expondrá servicios web o API Restful para recepcionar la información desde el sistema de registro.  Demonio o proceso desatendido: Invocará a servicios externos, según se requiera.  Cliente MQTT: Recepcionará los mensajes que lleguen desde las pasarelas. Estos servicios procesarán y guardarán la información en HDFS o en una base de datos MongoDB, para lo cual, el servidor tendrá instalado Hadoop y el servidor de MongoDB.
  • 8. Subsistema de gestión de datos Conexión con el subsistema de adquisición de datos La propuesta de adquisición, sincronización y almacenamiento de datos será la siguiente:  El servidor expondrá un servicio web o una API/REST que permita a las aplicaciones de registro (app de participación ciudadana y app de técnico de campo) invocar a servicios, pasando los datos necesarios para registrar alertas. El propio servicio se conectará directamente con MongoDB para almacenar dicha información.  El servidor dispondrá de procesos desatendidos (como demonios o tareas programadas), o bien disparadores (triggers), que invoquen a los servicios externos (como el de meteorología), capturar la información retornada, y, en consecuencia, generar nueva información que se almacena en MongoDB y/o lanzar alguna acción reactiva (como cambiar el estado de la centralita de los riegos en caso de lluvia).  El servidor, mediante el cliente MQTT, capturará los mensajes con la información de los sensores. Como respuesta a estos mensajes, podrá optar por: o Generar un archivo CSV y almacenarlo de forma distribuida en HDFS, para un posterior procesamiento map/reduce por parte de Hadoop. o Guardar esta información en MongoDB. La propia base de datos MongoDB posee capacidades map/reduce con un buen rendimiento. Por otra parte, también se puede lanzar el map/reduce sobre MongoDB mediante Spark. Diseño de arquitectura de alto nivel NIVEL APLICACION Ciudadanos Técnicos de campo Servicios Externos NIVEL SISTEMA HTTP/API RESTFUL NIVEL FISICO HTTP/API RESTFUL HTTP REQUEST HDFS
  • 9. Detalle de las tecnologías implicadas Comunicaciones:  MQTT: Mensajería entre la pasarela y el servidor para transferir la información de los sensores y dispositivos: o Mosquitto: Broker de mensajería (lado de la pasarela) o Paho: Cliente de mensajería (lado del servidor)  HTTP/API Restful: Mensajería de servicios web: o Desde Apps de registro o Hacia/Desde servicio web de meteorología Almacenamiento distribuido: HDFS (Hadoop Distributed File System) Base de datos: MongoDB (NoSQL orientada documentos) Subsistema de análisis de datos Introducción a la solución planteada Debido a la complejidad y a las posibilidades de Smart Green, hablar de una única solución (map/reduce) sería desaprovechar todo su potencial. Map/reduce podría utilizarse para realizar síntesis básicas sobre los archivos CSV con la información de los sensores. También podría realizarse sobre documentos en MongoDB, ya sea mediante la propia base de datos (posee esta capacidad) o mediante Spark. MongoDB, además, posee capacidades de funciones de agregado, que permiten obtener síntesis de datos a través de consultas y operaciones de transformación de los datos. Adicionalmente, se podrían realizar análisis más complejos a través de librerías de ciencia de datos desde Python o mediante el lenguaje R. Estas tecnologías permiten tomar un dataset complejo de datos y realizar operaciones de filtrado, organización, agrupación, etc., para llegar al resultado esperado. De cara a este proyecto, abordaremos un ejemplo simple mediante map/reduce, concretamente en un único sensor (de los muchos posibles) y para dos casos en concreto (de los muchos posibles). El sensor elegido es el de humos, y el primer caso es identificar el número de casos anuales de exceso de humos (posibles incendios o por contaminación) de cada una de las zonas medioambientales. El segundo caso es identificar el nivel medio anual de humos (suponiendo que la frecuencia de medición es cada 15 minutos)
  • 10. Detalle del análisis Cada quince minutos, el sensor envía una medición de los humos de una zona. La pasarela emitirá un mensaje MQTT al servidor con los datos necesarios:  Fecha/hora  Id del sensor  Zona medioambiental (nombre o identificador)  Nivel de humos. El mensaje es recogido por el servidor, a través de Paho (cliente MQTT). Una vez recogidos los datos, el servidor guardará estos datos en un archivo CSV dentro de un directorio en el sistema de ficheros distribuido HDFS (o bien lo guardará en una colección en la base de datos MongoDB) Caso 1: Alertas anuales de humos El proceso de map/reduce realizará un mapeo con la clave Zona y el valor será el conteo de las ocurrencias de mediciones. El filtrado deberá contemplar el año y el nivel máximo de humos superado. Caso 2: Nivel medio anual de humos El proceso de map/reduce realizará un mapeo con la clave Zona y el valor será la media aritmética de los valores de las mediciones, previo filtrado del año. Visualización de los datos analizados Datos a visualizar y resultados Caso 1: Alertas anuales de humos Datos: Zona, número de casos, año (título) Resultado: Comparativa de casos por zona durante el año Caso 2: Nivel medio anual de humos Datos: Zona, nivel medio anual de humos (en ppm CO2), límite (referencia), año (título) Resultado: Comparativa del nivel medio anual de humos por zona
  • 11. Resumen de la historia y objetivo Caso 1: Resumen de número de veces en que una determinada zona superó el índice de alerta de humos durante todo el año. Caso 2: Nivel medio anual de humos en una determinada zona, comparada con una referencia límite para identificar la desviación. Diagramas generados Caso 1: Alertas anuales de humos Caso 2: Nivel medio anual de humos Nota: La opción más visual es la representación gráfica es mediante mapas geolocalizados