Cet ouvrage fait partie de la bibliothèque YouScribe
Obtenez un accès à la bibliothèque pour le lire en ligne
En savoir plus

Desarrollo de software de videovigilancia para sistemas embarcados distribuidos con ICE

De
204 pages

En este proyecto se pretende estudiar la tecnología de middleware Ice de ZeroC, y más concretamente el servicio IceStorm de publicación-suscripción que implementa. El trabajo contiene primeramente una descripción de esta tecnología y su comparación teórica con el estándar DDS. En dicho estudio se introducirán las características claves de ambas tecnologías, en sistemas de propósito general, y en sistemas embarcados. Tras este capítulo se muestra la aplicación de videovigilancia (aplicación de demostración) que se ha desplegado en un entorno distribuido interconectado en una LAN, donde la comunicación se realiza mediante IceStorm. Se ha estudiado en esta parte los problemas que planteaba el desarrollo de la aplicación de demostración, sobre todo en los aspectos de interconexión software de distintas tecnologias, y se exponen las soluciones que se ha dado a cada uno de ellos. Tras justificar todas las decisiones tomadas en el desarrollo de la aplicación y mostrar las partes importantes de ésta, el proyecto presenta un capitulo adicional donde de forma básica se evalua la tecnología Ice/IceStorm en un ambiente distribuido. Finalmente el capítulo quinto describe las posibles mejoras de la aplicación, trabajos futuros, y se dan una serie de conclusiones sobre las tecnologías utilizadas durante la implementación de la aplicación de prueba y durante el estudio del middleware Ice. Como anexos se incluyen de forma detallada la instalación del entorno completo con el cual se ha probado la aplicación y donde se ha evaluado Ice.
Ingeniería Técnica en Telemática
Voir plus Voir moins

Universidad Carlos III de Madrid











Desarrollo de software de
videovigilancia para sistemas
embarcados distribuidos con ICE.




PROYECTO FIN DE CARRERA.


INGENIERÍA TÉCNICA DE TELECOMUNICACIÓN: TELEMÁTICA



AUTOR: Raúl Castro Fernández

TUTORA: Dra. Marisol García Valls
Universidad Carlos III de Madrid



















- 2 - Universidad Carlos III de Madrid

Agradecimientos


En primer lugar quiero agradecer a Marisol, mi tutora durante el
proyecto, la dedicación y la ayuda prestada, especialmente por la rapidez récord a la
hora de contestar e-mails, y por los consejos que me ha dado para enfocar el
proyecto y la realización tanto de esta memoria como del trabajo al completo, así
como por lo que he aprendido con ella durante este tiempo.


Después no pueden faltar los agradecimientos a mi gente, a los de
siempre, que me han soportado fines de semana sin salir por una cosa u otra
durante algunas temporadas, o que me han aguantando hablando de cosas de las
que no tenían ni idea porque necesitaba organizarme la cabeza, pero que al fin y al
cabo siempre han estado ahí durante toda esta carrera que termino ahora. Me
ahorro los nombres porque ellos saben de sobra quiénes son.


Por supuesto, no pueden faltar agradecimientos a Mike y Álvaro, dos
piezas claves durante la carrera. A Mike por ser la pareja de prácticas y clases
perfecta, además de por los innumerables momentos pasados desde el inicio de
todo, que ahora se divisa lejano. A Álvaro por tener esa chispa en la cabeza que nos
caracteriza y que hizo que congeniáramos desde el momento que tuvimos contacto,
por esa ansia de aprender, por los gustos que nos unen y por lo que me ha
motivado todo este tiempo aunque él no lo sepa.


En general a toda la gente que me ha ayudado de una forma u otra a
terminar la carrera.










- 3 - Universidad Carlos III de Madrid

Resumen


En este proyecto se pretende estudiar la tecnología de middleware Ice
de ZeroC, y más concretamente el servicio IceStorm de publicación-suscripción que
implementa. El trabajo contiene primeramente una descripción de esta tecnología y
su comparación teórica con el estándar DDS. En dicho estudio se introducirán las
características claves de ambas tecnologías, en sistemas de propósito general, y en
sistemas embarcados.


Tras este capítulo se muestra la aplicación de videovigilancia (aplicación
de demostración) que se ha desplegado en un entorno distribuido interconectado en
una LAN, donde la comunicación se realiza mediante IceStorm. Se ha estudiado en
esta parte los problemas que planteaba el desarrollo de la aplicación de
demostración, sobre todo en los aspectos de interconexión software de distintas
tecnologias, y se exponen las soluciones que se ha dado a cada uno de ellos.


Tras justificar todas las decisiones tomadas en el desarrollo de la
aplicación y mostrar las partes importantes de ésta, el proyecto presenta un capitulo
adicional donde de forma básica se evalua la tecnología Ice/IceStorm en un
ambiente distribuido.


Finalmente el capítulo quinto describe las posibles mejoras de la
aplicación, trabajos futuros, y se dan una serie de conclusiones sobre las
tecnologías utilizadas durante la implementación de la aplicación de prueba y
durante el estudio del middleware Ice.


Como anexos se incluyen de forma detallada la instalación del entorno
completo con el cual se ha probado la aplicación y donde se ha evaluado Ice.






- 4 - Universidad Carlos III de Madrid

Índice

Agradecimientos. 3

Resumen 4

Índice 5

Índice de figuras y tablas 8

Capítulo 1: Introducción y Motivación. 11

1.1. Introducción 12

1.2. Motivación 17

1.3. Estructura del proyecto. 19

Capitulo 2: Estado del Arte. 21

2.1. Introducción DDS (RTI) y ICE (ZeroC). 22

2.2 Introducción a DDS. 24

2.2.1 Antecedentes a DDS. 29

2.3 Introducción a Ice. 31

2.3.1 Introducción al servicio IceStorm de Ice. 35

2.4. Comparación de DDS (RTI) y ICE (ZeroC). 38

2.4.1. Aplicaciones potenciales de cada tecnología. 39

2.4.1.1 Protocolos. 41

2.4.1.2 Tipos de comunicación. 44

2.4.1.3 Parámetros de calidad de servicio QoS. 45

- 5 - Universidad Carlos III de Madrid

2.4.1.4 Lenguajes de definición de tipos. 49

2.4.2 Tecnologías aplicadas a sistemas embarcados. 51

2.4.2.1 Sistemas Embarcados 51

2.4.2.2 Introducción a ICE-E y enfoque. 55

2.4.2.3 Introducción a DDS en SE y enfoque. 59

2.5 Conclusión. 66

Capitulo 3: Desarrollo de la demo de videovigilancia remota. 67

3.1 Resumen. 68

3.2. Contexto de la aplicación. 71

3.2.1 Problema de la captura y solución. 74

3.2.2 Diseño multihilo. 81

3.2.3 Diseño del Bridge Java-C++ y C++-Java. 99

3.2.3.1 Funcionamiento de Ice. 102

3.2.3.2 Implementación de la solución. 105

3.2.4 Diseño de la comunicación. 110

3.2.4.1 Funcionamiento de IceStorm. 111

3.2.4.2 Implementación de la comunicación IceStorm. 114

3.3 Resumen 122

Capitulo 4. Estudio y Evaluación de IceStorm 125

4.1 Introducción y objetivos 126

- 6 - Universidad Carlos III de Madrid

4.2 Herramientas y descripción de aplicaciones 128

4.3 Resultados 135

4.3.1 Consideraciones para las medidas. 135

4.3.2 Contraste y comparativa de resultados. 139

4.4 Conclusiones 154

Capitulo 5. Conclusiones y trabajos futuros. 159

5.1 Conclusiones. 160

5.2 Trabajos Futuros. 162

5.3 Presupuesto. 164

Anexos 167

Introducción. 168

Anexo 1. Instalación de la librería V4L4J. 169

Anexo 2. Instalación del middleware Ice 3.3.1 172

Anexo 3. Configuración del servicio IceStorm. 177

Anexo 4. Aplicación de videovigilancia. 181

Anexo 5. Código de aplicaciones C++/Java capítulo 4. 185

Bibliografía y Enlaces. 201







- 7 - Universidad Carlos III de Madrid

Índice de figuras y tablas


Figura 1 Ejemplo de una infraestructura de computación ubicua. Red de Nodos. 13

Figura 2 Ilustración de control distribuido de edificios. 15

Figura 3 Esquema de la topología de la aplicación demo de vidiovigilancia 18

Figura 4 Diagrama funcional de la infraestructura RTI DDS. Publish-Subscribe 25

Figura 5 Tabla de los QoS de DDS 26

Figura 6 Esquema funcionamiento RT-CORBA 30

Figura 7 Ilustración comparando callback con polling 33

Figura 8 Ilustración que muestra el funcionamiento de “federation” 36

Figura 9 Niveles de la infraestructura DDS, con la capa RTPS. 44

Figura 10 Qos LifeSpan 46

Figura 11 QoS Strength y Ownership Strength 48

Figura 12 Ilustración de los sistemas electrónicos de un coche 52

Figura 13 Cuadro de compatibilidad de plataformas de Ice-E 58

Figura 14 Compatibilidad general de DDS. 64

Figura 15 Figura especifica de compatibilidad para plataformas Integrity 64

Figura 16 Fotografia aplicación en funcionamiento. 69

Figura 17 Fotografías del funcionamiento de la aplicación 70

Figura 18 Diagrama de distribución de funcionalidades 72

Figura 19 Hilos programados de la aplicación. 81
- 8 - Universidad Carlos III de Madrid

Figura 20 Funcionamiento de DiskThread y SerializeTaskT 83

Figura 21 Hilos de la aplicación, atributos y métodos 85

Figura 22 Esquema del acceso de los hilos al bean 98

Figura 23 Esquema de la comunicación de la demo de videovigilancia 100

Figura 24 Esquema de funcionamiento de Ice 104

Figura 25 Ejemplo aplicación IceStorm 111

Figura 26 Esquema funcionamiento aplicación 116

Figura 27 Algunos lenguajes soportados por Ice 128

Figura 28 Send Time. Java. 142

Figura 29 Send Time. C++ 144

Figura 30 Total Time. Java 146

Figura 31 Total Time. C++ 148

Figura 32 RTT Localhost 150

Figura 33 RTT 153

Figura 34 Aplicación de videovigilancia parada 181

Figura 35 Aplicación de videovigilancia en funcionamiento 182

Figura 36 Aplicación de videovigilancia. Error 183

Figura 37 Aplicación de videovigilancia. Reproducir 184

Figura 38 Anomalía de memoria en prueba RTT distribuida 200



- 9 - Universidad Carlos III de Madrid














- 10 -

Un pour Un
Permettre à tous d'accéder à la lecture
Pour chaque accès à la bibliothèque, YouScribe donne un accès à une personne dans le besoin