Proyecto Fin de Ciclo Raul Castilla Garcia
Proyecto Fin de Ciclo Raul Castilla Garcia
Proyecto Fin de Ciclo Raul Castilla Garcia
ndice
1. Introduccin. ............................................................................................................................. 2
1.1.
1.1.
1.2.
2. Planificacin temporal............................................................................................................... 4
3. Material utilizado y evaluacin de costes. ................................................................................ 5
4. Preparacin de la Raspberry Pi. .............................................................................................. 10
5. Asignacin de IP esttica a Raspberry Pi. ................................................................................ 11
6. Instalacin del dongle wifi....................................................................................................... 12
7. Instalacin de VNC. ................................................................................................................. 15
7.1. Instalacin del servidor VNC: ........................................................................................... 15
7.2. Puesta en marcha del servidor VNC: ................................................................................ 15
7.3. Instalacin de VNC Viewer (Windows):............................................................................ 16
8. Conexin va SSH. .................................................................................................................... 18
8.1. Qu es PuTTY y para qu sirve? ..................................................................................... 18
8.2. Ventajas de PuTTY ............................................................................................................ 18
8.3. Instalacin de PuTTY en Windows 10. ............................................................................. 19
9. Conexin de la Webcam.......................................................................................................... 24
10. Instalacin del visor de la cmara web. ................................................................................ 26
10.1. Instalacin de GUVCview. .............................................................................................. 26
11. Utilizacin del software Motion. ........................................................................................... 29
11.1. Instalacin de Motion .................................................................................................... 29
12. Pruebas en red local. ............................................................................................................. 35
13. Pruebas en red exterior......................................................................................................... 37
14. Referencias. ........................................................................................................................... 41
14.1. Linux ............................................................................................................................... 41
14.1.a. Breve historia de Linux. ........................................................................................... 41
14.1.b. Caractersticas del S. O. Linux. ................................................................................ 41
14.2. Raspbian ......................................................................................................................... 42
14.3. Diagrama de flujo ........................................................................................................... 43
14.4. Diagrama de conexiones ................................................................................................ 44
15. Fuentes consultadas. ............................................................................................................. 46
Pgina 1
1. Introduccin.
1.1. Objetivo y justificacin.
En los ltimos aos, durante el periodo de crisis, el robo en domicilios ha aumentado
considerablemente llevando consigo ms inseguridad para el ciudadano. Igualmente, ha
aumentado la ocupacin de viviendas vacas por parte de terceros.
Tambin, durante la crisis, ha aumentado el paro, lo que ha provocado un aumento de hogares
con ms de una unidad familiar desempleadas llegando a haber hogares sin ningn miembro
familiar, en edad laboral, trabajando.
En Espaa existen actualmente unos 770.000 hogares sin ingresos, lo que se traduce en unas
18.363.500 personas sin ningn tipo de ayuda o prestacin econmica.
Todas estas situaciones conllevan a un aumento de desconfianza e inseguridad ciudadana por
lo que muchos ha tomado medidas preventivas para evitar este tipo de situaciones. La mayora
instala puertas blindadas, lo que conlleva a dificultar que se produzcan estos hechos delictivos.
Son los que menos, los que optan por instalar sistemas de vigilancia ya sea por elevado coste o
desconocimiento del servicio.
Lo que se pretende conseguir con este proyecto es que la gente disponga de un servicio de
vigilancia de bajo coste, con el que se puedan sentir seguros a la par de protegidos en sus
hogares y dems entornos.
Pgina 2
Pgina 3
2. Planificacin temporal.
Para realizar la planificacin temporal, se ha tenido en cuenta el tiempo necesario desde la
planificacin del proyecto (consultando los productos que se van a utilizar), hasta la disposicin
de ellos en el domicilio y su puesta a punto.
- Anlisis: Este punto est enfocado en buscar cual va a ser la finalidad del proyecto y sus
posibles usos.
- Diseo: Una vez que ya sabemos cul es la finalidad del proyecto, diseamos un prototipo de
lo que va a ser el proyecto, donde se incluyen todos los componentes necesarios para el
funcionamiento del dispositivo y los programas que va a ser necesario instalar para el correcto
funcionamiento.
- Pruebas: En este punto se incluyen las pruebas que se van realizando con cada componente,
tanto con el programa necesario para su funcionamiento como las conexiones de los diferentes
dispositivos a la Raspberry Pi.
ANALISIS
PRUEBAS
IMPLANTACION
DISEO
Pgina 4
Pgina 5
Webcam
Pgina 6
Monitor
Pgina 7
Pgina 8
Evaluacin de costes
COMPONENTE
Raspberry pi
Modelo B
Cmara web
Kit ratn y teclado
Monitor
Adaptador HDMI
a VGA
Adaptador Wifi
PROVEEDOR
T.V. Nalber,
S.L.
Ebay
MediaMarkt
Propio
Ebay
Ebay
CANTIDAD
1
COSTE
29,95
1
1
1
1
15,00
11,95
-----------5
1
TOTAL
3,25
65,15
Pgina 9
Win32DiskImage.
Pgina 10
Tras reiniciar las interfaces de red, compruebo ejecutando el comando ifconfig que dicha IP ha
quedado establecida en la Raspberry Pi.
Pgina 11
Si hay algn complemento que le falta al Raspberry Pi es, sin duda, un adaptador WiFi integrado,
ya sea para ahorrar costes o para quitarse un quebradero de cabeza de encima, la placa no
incorpora ninguna conexin inalmbrica, por lo que si deseamos conectar la placa mediante
WiFi tendremos que hacerlo manualmente; por esto, voy a proceder a su configuracin.
Es un proceso realmente sencillo y rpido, en apenas diez minutos y con unas pocas lneas de
terminal, tendremos todo configurado para poder disfrutar de nuestra placa de desarrollo desde
cualquier lugar de nuestro hogar.
Antes de empezar aclarar que el adaptador WiFi ha sido conectado a la placa antes de su
encendido, adems, he conectado el cable Ethernet porque necesitar conexin a Internet para
descargar algunas cosas.
Por otro lado, tambin usar esta conexin para controlar la placa, pues utilizar el protocolo
SSH para controlar remotamente la Raspberry Pi, en este caso utilizar Putty para ello.
1. Lo primero que hago es iniciar sesin en el Raspberry Pi. El nombre de usuario por defecto es
pi y la contrasea raspberry.
2. Una vez en el terminal, lo primero que har ser hacer una lista de los dispositivos conectados
mediante el bus USB. Para ello usar el siguiente comando:
lsusb
Pgina 12
4. Una vez instalado el paquete del adaptador simplemente debo configurar el acceso a la red,
con la contrasea y el SSID de la red. Para ello introducir en primer lugar el siguiente cdigo:
sudo nano /etc/network/interfaces
Se abrir el editor con un archivo que debo modificar con el siguiente texto:
Donde sustituiremos la palabra SSID por el nombre de nuestra red y la palabra contrasea por
la contrasea que tengamos configurada en el router.
Proyecto fin de ciclo ASIR (Ral Castilla Garca)
Pgina 13
Guardamos el archivo pulsando Ctrl+X, configuramos que deseamos sobrescribir los cambios
pulsando la tecla Y y presionamos Enter para confirmar.
5. Para terminar, tan slo tendremos que reiniciar el Raspberry Pi con el siguiente comando:
sudo reboot
Y as es como, en unos sencillsimos, y una pequea bsqueda por la red, logramos tener nuestra
Raspberry Pi conectada a Internet de forma inalmbrica, por lo que podremos prescindir del
cable de red, ya que con el adaptador WiFi lograremos tener conexin en cualquier lugar.
Pgina 14
7. Instalacin de VNC.
TightVNC es una herramienta de escritorio remoto que me permitir acceder al
escritorio de mi Raspberry Pi desde una ubicacin remota, en este caso desde mi
ordenador porttil, con esto consigo simplificar los elementos a utilizar, como son el
caso del monito, del teclado y del ratn.
El programa se divide en dos parte, es decir, dos programas, el servidor, que ir instalado
en la mquina a la que quiero acceder (Raspberry Pi) y el visor que se instalar en la
mquina desde la que quiero acceder (ordenador porttil).
// Instalacin de vncserver
# apt-get install tightvncserver
Pgina 15
Con el comando anterior estoy creando un nuevo servidor grfico en un display virtual
cuyo nmero de display es el :1, su tamao es de 1280 x 800 pxels y una profundidad
de color de 24 bits/pixel (true color).
Al lanzar el comando tightvncserver con el usuario root, cuando me conecte de forma
remota, acceder como root.
Pgina 16
Una vez instalado, lo arrancaremos desde Inicio > Programas/Todos los programas >
RealVNC > VNC Viewer 4 > Run VNC Viewer, o en mi caso desde el escritorio, ya que cre
un acceso directo al programa.
Pgina 17
8. Conexin va SSH.
Muchas veces es necesario acceder remotamente a un sistema GNU/Linux para efectuar
tareas de diversa ndole, como mantenimiento, reconfigurar servicios, buscar archivos,
etc. En esta tarea juega un papel vital el uso de SSH (secure shell) que permite acceder
al sistema remoto usando una conexin cifrada (encriptada), dndonos acceso a una
lnea de comandos del sistema remoto. Pero hay ocasiones en que esto no es suficiente.
Hay veces en las que es necesario operar con el sistema remoto ms all de la lnea de
comandos. Es ah donde aparece la necesidad de escritorios remotos, de ejecucin
remota de programas grficos y la necesidad de cifrar esas conexiones. Este apunte est
dirigido a lograr esto de una manera que se presente clara y concisa.
En este caso necesito acceder de manera remota desde mi ordenador porttil hasta la
Raspberry Pi, para lo cual detallar los pasos realizados para obtener dicha conexin
remota.
Pgina 18
Pgina 19
Utilizar PuTTY
Lo primero que debemos hacer, es descargar PuTTY. Una vez que cargamos PuTTY, nos
encontraremos con la siguiente pantalla:
Raw
Telnet
RLogin
SSH
Serial
Pgina 20
Una vez introducidos los parmetros de conexin, pulso sobre el botn open, para
abrir la conexin, momento en el que aparecer una ventana de comando que me
solicitar los datos de usuario y contrasea de acceso a la Raspberry Pi.
Pgina 21
Pgina 22
Tambin ejecuto un ifconfig desde la ventana de PuTTY para comprobar que acceso
es correcto.
Pgina 23
9. Conexin de la Webcam.
Lo primero ser hacernos con una cmara USB compatible con Raspberry, para lo cual nada
mejor que consultar esta lista de compatibilidad, aunque el hecho de que no exista nuestra
cmara en la misma no significa que no haya compatibilidad. por lo que antes de tirar la toalla
podemos hacer uso de los consejos comentados en la entrada Raspberry Pi y cmara USB (1)
paso(3) que nos ayudar a comprobar si el S.O. Linux ve o no nuestra cmara. En nuestras
pruebas hemos usado el modelo HD-2300 de la marca Hewlett-Packard (HP) con resultados
bastante buenos.
Otra opcin es tras reconectar nuestra cmara ejecutar los comandos dmesg | tail y lsusb
para comprobar que el dispositivo detectado como cmara tambin lo est en la lista de
dispositivos USB.
En el primer caso ejecuto dmesg | tail y se puede apreciar como obtengo informacin de los
dispositivos USB conectados a la Raspberry y efectivamente aparece.
Pgina 24
En el segundo caso ejecuto dmesg | lsusb y de igual manera aparece nuestro dispositivo, lo cual
nos da la seguridad que es compatible con la Raspberry PI.
Pgina 25
Pgina 26
Al ejecutar el programa aparece la ventana del visor con la imagen en tiempo real.
CENTRO DE CONTROL
Pgina 27
VIDEO
Pgina 28
Pgina 29
Una vez que hemos instalado Motion, debemos proceder a su configuracin, para lo
cual debemos acceder al archivo de configuracin que est en la siguiente ruta:
/etc/motion/motion.conf
Pgina 30
Para ms facilidad, y dado el tamao del fichero, comentamos la zona del mismo donde
se localizan los parmetros a modificar, adems de aadir un pequeo comentario
sobre su utilidad.
Pgina 31
Pgina 32
Una vez hecho esto, lo que tenemos que hacer es guardar los cambios realizados en el
archivo de configuracin.
Y por ltimo tenemos que editar el segundo archivo de configuracin que se encuentra
en la siguiente ruta:
/etc/default/motion
Pgina 33
Y aqu lo que tenemos que hacer es cambiar el valor que viene por defecto =no y en su
lugar poner =yes, esto se habilitar el demonio.
Una vez hecho esto, salvamos los cambios y cerramos el archivo de configuracin.
Ahora nos queda resetear el servicio para que la aplicacin funciones, para lo cual
desde una consola terminal, ejecutaremos el siguiente comando:
Sudo service motion restart
Pgina 34
Aumentando la imagen, se pueden ver los datos de fecha y hora de la imagen mostrada
Pgina 35
La siguiente captura que se muestra, est tomada desde un ordenador Apple Mac conectado a
mi red local por cable, y se ha utilizado el navegador Safari.
Por ltimo voy a acceder desde un telfono mvil conectado a mi red local por wifi.
Pgina 36
Pgina 37
Proced a crear el DNS dinmico y un Hostname, tal y como se muestra en la captura de abajo.
https://www.raulcastilla.no-ip.org:8081
Por ltimo solo me queda redirigir el puerto 8081 en el router de mi compaa de internet
para poder acceder al servidor webcam en la IP 192.168.1.50.
El router es un Hitron CDE-30364.
Pgina 38
Soporta hasta 400 Mbps con 8 canales de bajada y hasta 108 Mbps con 4 de subida. Cuenta con
cuatro puertos Ethernet 10/100/1000 y WiFi 802.11n. Adems, dispone de un puerto USB 2.0
que por el momento est deshabilitado por parte de ONO.
El sistema operativo base de este cablemodem-router es Linux.
Para redirigir el puerto, accedo al men de configuracin del router y en el apartado Firewall,
existe una pestaa denominada Redir de Puerto, que es donde introduzco los parmetos
necesarios.
Pgina 39
Ya por ltimo solo me queda acceder desde una red exterior al servidor webcam, para lo cual
utilizar mi telfono mvil el cual estar conectado a la red de datos.
Pgina 40
14. Referencias.
Respecto al software considero fundamental estudiar la evolucin y describir el sistema
operativo que utiliza el Raspberry Pi, esto es Linux en la versin Debian (Jessie-Raspbian).
Respecto al hardware de la Raspberry Pi, se describe los principales estndares o directivas
tcnicas internacionales, su configuracin electrnica, fundamento terico y adems una
descripcin general de redes inalmbricas.
14.1. Linux
14.1.a. Breve historia de Linux.
Unix es uno de los sistemas operativos ms
populares del mundo debido a su extenso soporte
y distribucin. Originalmente fue desarrollado
como sistema multitarea con tiempo compartido
para miniordenadores y mainframes a mediados de
los 70. Desde entonces se ha convertido en uno de
los sistemas ms utilizados a pesar del problema de
su estandarizacin y de su interfaz con el usuario.
Linux es una versin de UNIX de libre distribucin,
desarrollada en sus inicios por Linus Torvalds en la Universidad de Helsinki, Finlandia. Debido al
internet, el desarrollo de LINUX se realiz con la participacin de muchos programadores y
expertos de UNIX a lo largo y ancho del mundo. El 05 de octubre de 1991, se anunci la primera
versin de Linux la 0.02, luego, en diciembre del ao 1993, el ncleo llego a la revisin 0.99pl14,
una aproximacin a la versin 1.0. Para noviembre del ao 2004, el ncleo se encontr en la
versin 2.6 parche 8 y actualmente existen cientos de diferentes distribuciones o versiones que
estn disponibles para computadoras de escritorio, porttiles e inclusive para dispositivos
mviles; tal es el caso de la popular plataforma Android fue desarrollada utilizando como ncleo
a LINUX.
Pgina 41
Como todo sistema operativo, LINUX tiene exigencias en el hardware y generalmente cada
empresa distribuidora ofrece la lista completa de los componentes que ellos soportan, un
ejemplo es la distribucin RED HAT. Para aplicaciones en tiempo real, es necesario tener la
capacidad de leer seales de entrada, procesarlas y producir salidas, miles de veces por segundo,
como por ejemplo, un CD tiene una frecuencia de muestreo (sample rate) de 44.1 kHz lo que
significa que por cada muestra de dato, se tiene nicamente 1/44100 segundos (22.6
microsegundos) para ejecutar todo el procesamiento.
Siendo LINUX un sistema operativo multitarea utilizado por el Raspberry Pi, no garantiza que se
tenga el control total del CPU durante un intervalo de pocos microsegundos porque el sistema
operativo podra estar ocupado comunicndose con uno de sus puertos. En resumidas cuentas,
el sistema operativo actualmente disponible en el Raspberry Pi no es una solucin acorde a las
aplicaciones de tiempo-real.
14.2. Raspbian
Raspbian es una distribucin del sistema
operativo GNU/Linux y por lo tanto libre
basado en Debian Wheezy (Debian 7.0)
para la placa computadora (SBC)
Raspberry Pi, orientado a la enseanza de
informtica. El lanzamiento inicial fue en
junio de 2012.
Tcnicamente el sistema operativo es un
port no oficial de Debian Wheezy armhf
para el procesador (CPU) de Raspberry Pi,
con soporte optimizado para clculos en
coma flotante por hardware, lo que
permite dar ms rendimiento en segn
qu casos. El port fue necesario al no
haber versin Debian Wheezy armhf para la CPU ARMv6 que contiene el Raspberry PI.
La distribucin usa LXDE como escritorio y Midori como navegador web. Adems contiene
herramientas de desarrollo como IDLE para el lenguaje de programacin Python o Scratch, y
diferentes ejemplos de juegos usando los mdulos Pygame.
Destaca tambin el men "raspi-config" que permite configurar el sistema operativo sin tener
que modificar archivos de configuracin manualmente. Entre sus funciones, permite expandir
la particin root para que ocupe toda la tarjeta de memoria, configurar el teclado, aplicar
overclock, etc.
El 17 de diciembre de 2012, junto a la versin 2012-12-16-wheezy-raspbian de Raspbian, se
lanz la tienda de aplicaciones "Pi Store", que en el momento de salida inclua desde aplicaciones
como LibreOffice o Asterisk a juegos como Freeciv o OpenTTD. En esta plataforma se puede
poner a disposicin de todos los usuarios de Raspbian, mediante moderacin y posterior
lanzamiento, contenidos gratuitos o de pago, como archivos binarios, cdigo python, imgenes,
audio o vdeo. Adems se quiere incluir documentacin acerca del Raspberry Pi como la revista
MagPi y tutoriales de proyectos.
Al ser una distribucin de GNU/Linux las posibilidades son infinitas. Todo software de cdigo
abierto puede ser [compilacin de programas|recompilado]] en la propia Raspberry Pi para
Proyecto fin de ciclo ASIR (Ral Castilla Garca)
Pgina 42
arquitectura armhf que pueda ser utilizado en el propio dispositivo en caso de que el
desarrollador no proporcione una versin ya compilada para esta arquitectura. Adems esta
distribucin, como la mayora, contiene repositorios donde el usuario puede descargar multitud
de programas como si se tratase de una distribucin de GNU/Linux para equipos de escritorio.
Todo esto hace de Raspberry Pi un dispositivo que adems de servir como placa con
microcontrolador clsica, tenga mucha de la funcionalidad de un ordenador personal. Lo que lo
puede convertir en una alternativa a los ordenadores personales, especialmente para personas
con pocos recursos, para la extensin de la informtica en pases subdesarrollados o para
aplicaciones que no soliciten muchos [requisito computacional|requerimientos]].
Pgina 43
Pgina 44
Pgina 45
Pgina 46