Sei sulla pagina 1di 94

FACULTAD DE TELEMÁTICA

CÓMPUTO UBICUO EN EL CONTROL CANINO


PARA ACTIVIDADES
TESIS DE CAZA

TESIS

QUE PARA OBTENER EL GRADO DE


MAESTRO EN COMPUTACIÓN

PRESENTA:
L.I. ADRIAN CASTAÑEDA MORFIN

ASESORES:
D. EN C. PEDRO DAMIÁN REYES D. EN C. MARÍA ANDRADE ARÉCHIGA

COLIMA, COL. AGOSTO 2015


RESUMEN

En este documento, primeramente se describen algunas de las actividades que realizan perros
de trabajo como, guías de personas, policías, apoyo en actividades de caza, búsqueda y rescate,
entre otras. Esto con el propósito de identificar qué desarrollos tecnológicos pueden realizarse
como apoyo a estas actividades y a su interacción con el hombre.

Con base en lo anterior, este trabajo de investigación se enfocó en diseñar, desarrollar y evaluar
una herramienta para telefonía celular que apoye en el cuidado de los animales durante la
realización de alguna actividad. La herramienta se enfoca principalmente en conocer la
localización y el estado físico de perros de trabajo, así como en la transmisión de órdenes para
que realicen de mejor manera, alguna actividad particular, lo anterior con el propósito de
mejorar la interacción y el control sobre estos animales.

Además se exponen diversos proyectos donde se analizaron varios de los principales trabajos en
Interacción Animal Computadora (ACI), los cuales utilizan desde el monitoreo remoto hasta el
uso de sensores para la comunicación de perros de trabajo con sus dueños.

Así mismo, se revisaron distintos dispositivos tecnológicos de comunicación que existen en la


actualidad y que el ser humano aplica para interactuar con los animales, algunos utilizan el
internet para monitorear a sus mascotas o alimentarlos en forma remota, o bien, tecnología GPS
para el rastreo de los animales.

Palabras Clave: Interacción Animal-Computadora, Perro, Caza, Telefonía Celular.

iii
ABSTRACT

This paper describes some activities of working dogs, namely, guiding people, police, support
hunting, searching and rescuing, among others, in order to identify which technological
developments can be made to support these activities as well as their interaction with men.

Based on the above, this research focuses on the design, development and evaluation of a
software tool for mobile phones that supports the care of animals during the course of a
working activity. The software tool addresses, on one hand, location and the physical condition
of the working dogs. On the other hand, the transmission of voice commands to better perform
any particular activity, with the purpose of improving the interaction and control of them.

In addition, an investigation where several major related work in Animal Computer Interaction
(ACI) were analyzed, ranging from remote monitoring to the use of sensors for the
communication of the working dogs and their owners.

Different technological communication devices that exist today were also reviewed and that
humans use to interact with animals. Some using the Internet to monitor their pets or feed them
remotely, some others using GPS technology to track their animals.

iv
Dedicatorias y agradecimientos

A mi familia, a la Universidad de Colima, al


CONACYT, a mis asesores la D. en C. María Andrade
Aréchiga y D. en C. Pedro Damian Reyes, y a todos
mis profesores, por depositarme su confianza y
apoyo durante esta etapa de mi vida.

v
Índice

Pág.

Resumen iii
Abstract iv
Capítulo 1. Introducción 1
1.1 Planteamiento del problema 4
1.2 Objetivo general 6
1.2.1 Objetivos específicos 6
1.3 Justificación 7
1.4 Limitaciones y suposiciones 8
1.5 Organización del documento 8
Capítulo 2. Antecedentes y trabajos relacionados de Tecnología Aplicada en Perros de 9
Trabajo.
2.1 Sistema Rover@Home 12
2.2 Sistema de interacción con perros 14
2.3 Juego Gato Gato Revolución 15
2.4 Proyecto FIDO 16
Capítulo 3. Metodología 23
Capítulo 4. Diseño y desarrollo de la herramienta. 33
4.1 Desarrollo del Servicio Web 36
4.2 Aplicación del dispositivo del cazador 38
4.3 Aplicación del dispositivo del perro 39
4.4 Diseño del chaleco 42
Capítulo 5. Evaluación del sistema. 45
5.1 Evaluación de rastreo y localización 53
5.2 Evaluación de sensado del ritmo cardiaco 54
5.3 Órdenes y vibraciones 56
Capítulo 6. Conclusiones y trabajos futuros. 59

vi
6.1 Trabajo futuro 62
6.2 Productos derivados de la investigación 62
Referencias 65
Anexos 69
Anexo A: Respuesta de Información a SEMARNAT. 71
Anexo B: Código fuente. 73
Sección (a) Procedimientos para actualizar la URI de un dispositivo en el servicio web. 73
Sección (b) Procedimiento para enviar un mensaje de un dispositivo a otro en el 73
servicio web.
Sección (c) Procedimiento para inicializar localización, Pushpin y MapPolyline. 75
Sección (d) Procedimiento que se ejecuta cuando hay un cambio de posición. 76
Sección (e) Códigos para reproducir sonidos. 76
Sección (f) Procedimiento para ejecutar una vibración. 77
Sección (g) Códigos para mostrar el mapa y cambiar la vista de cartografía. 77
Sección (h) Procedimiento para identificar el dispositivo de ritmo cardiaco Bluetooth. 78
Sección (i) Procedimientos para conectar el sensor para obtener el ritmo cardiaco y la 79
batería.

vii
Lista de Figuras
Pág.
Figura 1. Funciones de la aplicación desarrollada a través de telefonía celular. 6
Figura 2. Anuncio en pared de perro extraviado (a), y anuncio en poste de perro 7
extraviado (b).
Figura 3. Computación ubicua 11
Figura 4. Implementación del Rover@Home 13
Figura 5. Dispositivo para liberar pelotas de tenis 14
Figura 6. Juego digital para gatos 15
Figura 7. Perro activando sensor de mordedura 16
Figura 8. Aplicaciones comerciales para perro: iSeePet Webcam/Feeder (a) y 18
PetCell(b)
Figura 9. Receptor Garmin 19
Figura 10. El perro ayuda a la persona a vivir de forma independiente, le recupera el 21
teléfono y objetos caídos, jala la silla de ruedas y abre puertas (a), y el perro
apoya a niño con autismo, generando que sea más social y tranquilo en
público (b).
Figura 11. Ejemplar canino para el rastreo de sustancias toxicas, armas y personas 21
extraviadas (a), Evento “Un día con tu policía” con la finalidad de tener una
cercanía con la ciudadanía (b).
Figura 12. Expo de la Feria de Todos Los Santos Colima 2013 22
Figura 13. Modelo en espiral 26
Figura 14. Diagrama arquitectónico de la aplicación. 28
Figura 15. Dispositivos utilizados para la comunicación 29
Figura 16. Pantallas de la sección de órdenes y localización en la aplicación del 30
cazador (a, b) y pantalla de aplicación del dispositivo para perro (c).
Figura 17. Desbloqueo del teléfono para probar la aplicación. 35
Figura 18. Diagrama de secuencia 36
Figura 19. Estructura de la tabla. 37

viii
Figura 20. Servicio Web funcionando en nuestro servidor local 38
Figura 21. Sección de localización (a), y sección de Órdenes (b). 39
Figura 22. Sección de localización (a), sección para el ritmo cardiaco (b), y sección 40
del estado de la aplicación (c).
Figura 23. Aplicación utilizada para grabar órdenes. 40
Figura 24. Guía para el chaleco en el Corel Draw 12. 42
Figura 25. Chaleco para perro con compartimiento de celular. 43
Figura 26. Muñeca (a) y Max (b), ambos portando chaleco 48
Figura 27. Sensor de ritmo cardiaco 48
Figura 28. Perro con corte de pelo. 49
Figura 29. Ubicación del Parque El Rodeo 49
Figura 30. El dispositivo se registra en el servicio web (a), la aplicación obtiene su 50
posición GPS (b), el usuario activa el rastreo (c) y la aplicación inicializa
el rastreo (d).
Figura 31. El usuario busca el sensor de ritmo cardiaco por Bluetooth (a), el usuario 51
selecciona el dispositivo (b), el usuario escribe en el nombre del servicio
el número 1 (c) y la aplicación muestra mensaje de sensor activado (d).
Figura 32. El perro inicia trayectoria hacia el sur (a), continúa su trayectoria hacia el 53
noreste (b), el perro regresa y continúa hacia el noroeste (c), y regresa al
origen de donde inicio (d).
Figura 33. Respuesta de solicitud de ritmo cardiaco de 104 y batería 100 % (a), 55
ritmo cardiaco de 126 y batería de 83% (b).
Figura 34. Primer mensaje enviado por el servicio web (a), segundo mensaje 56
enviado por la aplicación del perro (b).
Figura 35. Batería del celular del perro. 57

ix
Lista de Tablas
Pág.
Tabla 1. Dispositivo utilizado en la actividad de cacería. 20
Tabla 2. Descripción de los dispositivos utilizados en las pruebas. 47
Tabla 3. Descripción de los perros participantes en las pruebas. 47
Tabla 4. Costos de dispositivos y accesorios para implementar la herramienta. 57
Tabla 5. Consumo de datos por la aplicación. 58

x
Capítulo 1.
INTRODUCCIÓN
Vivimos un momento de transición profunda entre una sociedad de corte industrial y
otra marcada por el procesamiento de la información y las telecomunicaciones. En el que el uso
de la informática afecta de manera directa e indirecta todos los ámbitos de la sociedad; redefine
la realidad, ya que modifica la forma en la que se producen y distribuyen los bienes y servicios,
las relaciones internacionales, e incluso puede modificar la forma en la que nos
interrelacionamos y divertimos. En los últimos años del siglo XX la difusión masiva de las
tecnologías de la información y las comunicaciones han generado la llamada revolución
informática que ha dado origen a una nueva época que se conoce como sociedad de la
información. Como todas las actividades humanas involucran de alguna manera el uso de
información, su empleo se ha extendido al resto de la sociedad. Su impacto ha sido tan radical,
que hoy sería impensable el funcionamiento de la sociedad sin las tecnologías de la información
(Del Castillo Negrete, 2002).

Actualmente el uso de las tecnologías de información se encuentra presente en las


diferentes actividades de la sociedad, el ser humano puede interactuar de forma transparente
con objetos de uso diario, que cuentan con capacidades computacionales que les permiten
percibir y capturar el mundo que rodea al usuario, con la finalidad de adaptar su
comportamiento y proporcionar un servicio en el lugar y el momento necesario.

Hoy en día la tecnología se amplía ofreciendo aplicaciones para los dueños de perros con
el objetivo de mejorar la calidad de vida del animal, además de proporcionar los estímulos que
necesita y profundizar en el conocimiento de la mascota (Paldanius, Kärkkäinen, Väänänen-
Vainio-Mattila, Juhlin, & Häkkilä, 2011).

Actualmente existe en el mercado, para la interacción con animales, una amplia selección
de productos de tecnología de comunicación, algunos sistemas de comunicación basados en
Internet, para monitorear la actividad de sus mascotas, darles de comer (Grundner, 2004), así
como también existe tecnología relacionada con el rastreo (Hanlon, 2006).
3
Las investigaciones en la interacción entre animales y la tecnología informática están en
aumento (Mancini, 2013), uno de los primeros sistemas remotos que se desarrollaron fue en el
2001 a través del Internet para enseñar perros (Resner, 2001). En el Instituto tecnológico de
Georgia están trabajando en un proyecto llamado FIDO donde crearon sensores adecuados para
perros que permiten la comunicación con sus dueños (Moore Jackson et al., 2013).

En este trabajo se presenta el desarrollo, implementación y evaluación de una aplicación


basada en telefonía celular para el apoyo en actividades de caza mediante la localización,
sonidos, vibraciones y monitoreo del estado físico del perro, aplicando computación ubicua.

1.1 Planteamiento del problema

Los animales cada vez están más integrados en contextos interactivos de tecnologías
digitales, el presente y futuro de dichas tecnologías es un tema relevante para la investigación de
Interacción Humano Computadora (cuyas siglas en inglés son HCI).

La interacción entre perros y seres humanos se afecta con nuevas tecnologías, una de las
más utilizadas, es el rastreo GPS, que permite a los cazadores saber lo que el perro está
haciendo. La interacción humano animal se apoya con la tecnología digital, como por ejemplo,
en las siguientes actividades asistidas por tecnología: entrenamiento canino (descargas
eléctricas), cuidado de perros (control remoto de dispositivos de alimentación), monitoreo de
perros de vigilancia (localización por GPS). Sin embargo, la investigación en el área de interacción
entre perros y seres humanos asistida por la tecnología, aún es limitada (Weilenmann & Juhlin,
2011).

Cuando los cazadores utilizan dispositivos GPS para monitorear los perros, la actividad de
la caza se ve enriquecida al proporcionársele más información al humano sobre la ubicación del
perro. A través del GPS, los cazadores pueden tener más información que les permita deducir lo
que el perro está haciendo para así apoyarlo en sus acciones. El perro proporciona información

4
al cazador sobre dónde está la presa, de tal manera que usando dispositivos GPS se puede tener
una mayor información y visión a distancia, lo cual podría facilitar la actividad de la caza, sin
quitar el placer mismo que proporciona ésta (Weilenmann & Juhlin, 2011).

Uno de los dispositivos utilizados en la actividad de caza es el Garmin Astro, cuyo


principal problema es la pérdida de conexión entre el collar y el dispositivo de mano, debido a la
utilización de señal VHF (Garmin, 2014).

Al realizar algunas actividades de caza se utilizan perros para rastrear, localizar, perseguir,
apuntar y recoger presas (Internationale, 2014), donde los perros pueden desplazarse largas
distancias perdiéndose de la vista de sus dueños, lo que dificulta escuchar sus ladridos e
incrementa las posibilidades de extraviarse.

Algunas veces es imposible que el cazador pueda dar instrucciones silenciosas a sus
perros, cuando éstos se encuentran retirados, ni conocer el estado físico de éstos.

Por otra parte, el número de licencias de caza que expidió SEMARNAT (Secretaría de
Medio Ambiente y Recursos Naturales) en el año 2013 en el estado de Colima fueron: 752
licencias anuales y 109 indefinidas, como se muestra en el Anexo A.

La práctica de la cacería puede utilizar la telefonía celular mediante el desarrollo de una


aplicación, la cual permite al cazador en todo momento el conocer la ubicación y ruta trazada
por el perro, así como el transmitir alguna orden al perro, siempre con el conocimiento de su
estado físico durante la actividad (como se ilustra en la figura 1) y precisamente de esta
necesidad se origina esta propuesta de investigación.

5
Figura 1. Funciones de la aplicación desarrollada a través de telefonía celular.

1.2 Objetivo General

Investigar, documentar e implementar estrategias de cómputo ubicuo en el control


canino mediante el desarrollo de una aplicación para telefonía celular (Smartphone) en
actividades de caza.

1.2.1 Objetivos Específicos

 Investigar dispositivos, aplicaciones y accesorios (collares, chalecos) para la


asistencia del perro en la actividad de caza.
 Indagar la tecnología celular respecto a peso, tamaño, SO, costos, sensores y
resistencia al agua.
 Diseñar, integrar e implementar la tecnología en el chaleco del perro.
 Desarrollar una aplicación móvil con los requerimientos necesarios para
actividades de caza (localización, comunicación y ritmo cardiaco).
 Evaluar la implementación de la aplicación móvil en un escenario real.

6
1.3 Justificación

Hoy en día es frecuente ver anuncios de perros extraviados en diarios, revistas, páginas
de internet, anuncios en paredes y postes en la calle (como se muestra en las fotografías
presentadas en las figuras 2(a) y 2(b).

(a) (b)
Figura 2. Anuncio en pared de perro extraviado (a), y anuncio en poste de perro extraviado (b).

Además, un estudio realizado en España en el 2010 por la fundación Affinity sobre el


abandono de animales de compañía, destaca que uno de los motivos de abandono es el fin de
temporada de caza y entre las medidas para erradicar el abandono es tener un mayor control
sobre la caza con animales (Segú & Amblàs, 2010).

Por consiguiente, debido a las grandes ventajas que ofrece un software adaptado para
realizar ciertas tareas específicas es importante justificar la creación de una aplicación de apoyo
para las actividades de caza, en las que el perro utilice un teléfono celular Smartphone integrado
a su collar o chaleco que proporcione su ubicación y ritmo cardiaco, y a través del cual pueda
transmitírsele órdenes de parte del cazador para apoyar la actividad de la caza y permitir un
mejor control del perro.

7
Aplicación de apoyo con las siguientes funciones:

 Proporcionar información sobre la ubicación del perro.


 Transmitir alertas por medio de sonidos y vibraciones.
 Conocer signos vitales (ritmo cardíaco) del perro.

1.4 Limitaciones y suposiciones

La aplicación para el control canino tiene como limitante que pueden presentarse zonas
donde no existe cobertura celular, sin embargo, en el dispositivo móvil del perro se sigue
ejecutando la aplicación para registrar su trayectoria.

Los celulares empleados son de la marca Nokia con sistema operativo Windows Phone,
ya que la aplicación está programada en Visual Studio 2013 en C#.

Se utilizaron perros que realizan la actividad de la cacería, entrenados para recibir


órdenes definidas por el dueño, las cuales se configuraron previamente en la aplicación para la
actividad de la caza.

1.5 Organización del documento

Los capítulos restantes en este documento se organizan de la siguiente manera: en el


capítulo 2 se presentan antecedentes y trabajos relacionados con tecnología aplicada en perros
de trabajo; en el capítulo 3 se desarrolla la metodología que se siguió en la investigación
realizada, el diseño y desarrollo de la herramienta se presentan en el capítulo 4; el capítulo 5
muestra la evaluación de la herramienta y finalmente las conclusiones y trabajos futuros se
presentan en el capítulo 6.

8
Capítulo 2.
ANTECEDENTES Y TRABAJOS
RELACIONADOS DE
TECNOLOGÍA
APLICADA EN PERROS DE
TRABAJO
En este capítulo se presentan antecedentes de tecnología aplicada en interacción con
perros, aplicaciones del cómputo ubicuo en diversos contextos, así como algunos dispositivos de
comunicación existentes en el mercado para animales. Además se muestran algunas actividades
que realizan perros de trabajo.

Actualmente casi todas las personas traen consigo un teléfono celular y en un futuro será
inevitable que cuenten con más de un dispositivo inteligente por persona. En la computación
ubicua los dispositivos inteligentes nos permitirán un entorno inteligente, por ejemplo: pagar en
un supermercado con el teléfono celular sin hacer fila. La computación ubicua podrá aplicarse en
todas partes (como se muestra en la figura 3). Los dispositivos inteligentes estarán comunicados
entre sí para proporcionar un servicio al usuario y facilitar sus actividades (Romero, 2012).

Figura 3. Computación ubicua (Romero, 2012).

11
A Mark Weiser se le atribuye el concepto de ubicuidad, en la cual se integra la
informática en el entorno natural del ser humano; propuso que las computadoras personales se
sustituyeran por computadoras incorporándose en objetos de uso diario y adaptándose al
usuario de forma invisible o transparente. Con lo anterior, se tiene que el ser humano puede
interactuar con dispositivos y realizar actividades utilizando computación ubicua sin hacerlo
directamente y sin percibirlo. La computadora ya no se limita a un sólo espacio físico, sino que
ahora se encuentra en cualquier lugar y puede utilizarse en cualquier momento (Weiser, 1991).

Además, un tema importante del cómputo ubicuo es la consciencia del contexto, que se
refiere a que las computadoras pueden percibir y capturar el mundo que rodea al usuario con la
finalidad de que las aplicaciones adapten su comportamiento y proporcionen un servicio
apropiado. El sistema consciente del contexto es el que se adapta de acuerdo a la localización
del usuario, personas que se encuentran cerca y dispositivos accesibles, reaccionando a los
cambios para proveer servicios al usuario durante sus actividades. Se consideran tres aspectos
importantes del contexto: dónde está, con quién está, y qué recursos están cerca, y además se
incluye la iluminación, nivel de ruido, conectividad de red e incluso la situación social (Schilit,
Adams, & Want, 1994).

El número de investigadores interesados en la interacción entre los animales y la


tecnología informática gradualmente ha aumentado, sin embargo, sigue siendo poco con
relación a la comunidad de HCI. La Interacción Animal Computadora (con siglas en inglés, ACI),
como disciplina es relevante como la HCI, por lo tanto la investigación pertenece a la comunidad
HCI (Mancini, 2013).

2.1 Sistema Rover@Home

Uno de los pioneros en interfaz humano-animal fue Resner (2001), diseñó un sistema
remoto de interacción humano-perro llamado Rover@Home (como se ilustra en la figura 4),
permitiendo enseñar a sus perros nuevas tareas, usando Internet, una computadora y técnicas
de entrenamiento.
12
Figura 4. Implementación del Rover@Home (modificado de (Resner, 2001).

Resner aplicó principios de diseño de HCI en animales, explicando que hay una serie de
razones del porqué los perros representan un nuevo e interesante reto de diseño: a) en primer
lugar que los perros son criaturas muy sociables y por lo tanto se benefician de una interacción
bien diseñada con un compañero remoto humano, b) en segundo lugar, los humanos están
familiarizados con los perros y esa interacción proporciona conocimiento que sirve de guía para
el desarrollo de aplicaciones para animales, y c) finalmente, menciona que el proceso de pensar
a través de lo que es una interacción bien diseñada en el contexto de una computadora entre el
perro y el humano, aclara nuestra comprensión para la creación de dispositivos para ambos por
igual. Argumenta que los puntos clave de diseño centrado en el usuario son también muy útiles
guiando el proceso de diseño de dispositivos para animales. El objetivo fue construir un
dispositivo que permitiera a los animales y a sus propietarios tener una interacción mientras se
encuentran separados geográficamente, de la misma manera que un teléfono permite a dos
seres humanos distantes comunicarse, desarrolló un dispositivo que realiza una función similar
entre animales domésticos y seres humanos (Mancini, 2013; Resner, 2001). Además Resner
menciona que utilizar dispositivos con funciones simples son adecuados para animales en
implementaciones específicas.
13
2.2 Sistema para la interacción con perros

Años más tarde Mankoff y su equipo (2005), desarrollaron un sistema de vigilancia a


distancia para la interacción humano-perro, ayudando a los perros a mantener un sentido de
conexión con sus dueños mediante un juego de lanzamiento de pelotas de tenis al perro
(dispositivo mostrado en la figura 5), mitigando el aislamiento social, ya que los humanos se
encuentran muchas horas del día fuera de casa o trabajando. El sistema consiste en una Interfaz
Usuario Humano (con siglas en inglés HUI) y una Interfaz Usuario Perro (con siglas en inglés
DUI). Demostraron que los sonidos y videos son de más interés para perro. El sistema ayuda a
los seres humanos en proporcionar a los animales una mejor calidad de vida y por lo tanto
mejora la del dueño (Mancini, 2013).

Figura 5. Dispositivo para liberar pelotas de tenis (Mankoff et al., 2005).

14
2.3 Juego Gato Gato Revolución

En la conferencia internacional de interacción humano computadora (CHI 2011,


Vancouver Canadá), se presentó un juego llamado Gato Gato Revolución. El cual es un juego
digital del gato y el ratón el cual permite a los gatos jugar a través de una interfaz apropiada. El
sistema está formado por dos componentes, un iPad y un iPhone (como se muestra en la figura
6). La aplicación en el iPad combina gráficos y sonidos. La interfaz del iPad utiliza un ratón digital
el cual atrae al gato y cambia su orientación, velocidad y dirección. En el modo de un solo
jugador el gato interactúa con el iPad, persigue al ratón mientras se mueve al azar a través de la
pantalla. En modo de varios jugadores el dueño de forma inalámbrica conecta el iPad con el
iPhone donde se refleja la interfaz del iPad y permite controlar el ratón (Noz & An, 2011).

Figura 6. Juego digital para gatos (Noz & An, 2011).

15
2.4 Proyecto FIDO

Actualmente en el Instituto Tecnológico de Georgia se trabaja en un proyecto llamado


FIDO (siglas en inglés de Facilitating Interactions for Dogs with Occupations), en el que
investigan aspectos fundamentales en la tecnología portátil para apoyar la comunicación entre
perros de trabajo y sus dueños. Desarrollaron el prototipo que utiliza un chaleco para perros con
diferentes sensores (morder, tirar y gestos de nariz) y muestra la creación de sensores portátiles
que los perros pueden activar, como en la figura 7 se presenta. El principal objetivo de este
proyecto es investigar los aspectos fundamentales de tecnología portátil de apoyo en la
comunicación de perros de trabajo con sus dueños, los perros proporcionan información a
través de los sensores integrados en el chaleco del perro. Para lo anterior, desarrollaron
interfaces de usuario para perro, las cuales se probaron para evaluar la facilidad de la
interacción, y se utilizaron tres diferentes perros de asistencia entrenados. Presentaron un
estudio piloto para determinar qué tipo de sensores para perro le son más fáciles de entender y
de interactuar. Su objetivo es incorporar múltiples sensores en el chaleco del perro para
comunicar una variedad de mensajes, probando cada sensor individualmente en la misma
ubicación del lado izquierdo del chaleco del perro; para cada sensor midieron las lecturas
mediante una serie de interacciones con el perro. Los resultados del estudio piloto fueron
extremadamente alentadores, demostraron que es posible crear sensores portátiles que los
perros pueden activar para comunicarse con sus dueños. Mencionan que existe una gran
cantidad de trabajo que aún no se ha hecho, faltando probar los sensores en ambos lados del
chaleco para determinar qué ubicación es alcanzable para diferentes tipos de cuerpos de perro y
determinar el área óptima de cada tipo de sensor. Esta tecnología podría ser fácilmente
adaptada a profesiones caninas como perros policía o perros militares, proporcionando a los
perros la habilidad de comunicarse con sus dueños claramente (Moore Jackson et al., 2013).

16
Figura 7. Perro activando sensor de mordedura (Moore Jackson et al., 2013).

Por lo tanto, la tecnología de la comunicación que ha conectado a las personas ha sido


una parte integral de nuestra vida cotidiana y recientemente se ha ampliado para ofrecer
aplicaciones para los dueños de perros. La tecnología de comunicación móvil se ha utilizado por
un par de décadas para la comunicación entre personas y recientemente para monitorizar
eventos remotos, salud y diferentes actividades, y actualmente en investigar el uso de la
tecnología para la interacción entre personas y perros (Paldanius et al., 2011).
Es importante hacer notar que comercialmente, se está incursionando en desarrollar
tecnología aplicada en mascotas, pues todavía es novedoso. Recientemente investigaciones en
tecnología desarrollada para animales se concentra en dos áreas, la que interactúa con los
animales en forma remota (Resner, 2001) y la utilizada para monitorizar el cuidado o bienestar
del animal (Yonezawa, Miyaki, & Rekimoto, 2009). Ambos aspectos tienen como objetivo común,
mejorar la calidad de vida del animal proporcionándole los estímulos que necesita o profundizar
en el conocimiento del dueño de la mascota (Paldanius et al., 2011).

17
Actualmente existe en el mercado para la interacción con animales una amplia selección
de productos de tecnología de comunicación, algunos sistemas de comunicación basados en
Internet, por ejemplo iSeePet Webcam/Feeder en donde los usuarios pueden ver la actividad de
sus mascotas y darles de comer en forma remota como se ilustra en la figura 8 (a) (Grundner,
2004). Existen comercialmente aplicaciones que utilizan cámaras Web para el monitoreo de
mascotas, ejemplo de esto es Camstreams, empresa americana que proporciona este tipo de
aplicaciones (Camstreams, 2014). Además existe otro tipo de tecnología como la relacionada
con el rastreo, que utiliza la tecnología móvil que se coloca en el collar del perro como se
muestra en la figura 8 (b) para localizarlo en caso de extravío (Hanlon, 2006).

(a) (b)

Figura 8. Aplicaciones comerciales para perro: iSeePet Webcam/Feeder (a) (Grundner, 2004), y
PetCell (b) (Camstreams, 2014).

Por otro lado, los sistemas de rastreo en el mercado se basan principalmente en (GPS),
los dispositivos usados en cacería contienen un transmisor GPS para el perro y un dispositivo
GPS de mano para el usuario. La unidad GPS está unida al collar o arnés del perro durante el
rastreo (Garmin, 2014).

18
En los sistemas basados en Sistema global móvil (GSM), un teléfono móvil se utiliza como
dispositivo de mano. Los sistemas basados en GSM requieren conectarse con un proveedor de
servicio de Internet. Los sistemas basados en frecuencia muy alta (siglas en inglés, VHF) tienen
un rango máximo de 3 a 10 km dependiendo del entorno, por lo que la comunicación se anula
cuando no hay línea de vista, es decir, cuando existen obstáculos de por medio. En los sistemas
basados en GSM no hay un rango límite siempre y cuando la red GSM esté disponible para
ambas unidades. Hay sistemas GPS que sólo utilizan señal de radio frecuencia para enviar la
ubicación al receptor de mano y saber qué tan lejos está el perro (Paldanius et al., 2011).

Por ejemplo, el sistema VHF que utiliza el receptor Garmin, mostrado en la figura 9, no
tiene un rango de operación muy amplio en comparación con sistemas basados en GSM, que sin
duda es más fiable y fácil de utilizar.

Figura 9. Receptor Garmin (Paldanius et al., 2011).

Hoy en día algunos de los dispositivos que se utilizan en la actividad de la cacería se


muestran en la Tabla 1, los cuales están disponibles en el mercado. Se proporcionan tanto la
marca como el precio aproximado actual (Garmin, 2014).

19
Marca Imagen Precio

Garmin Alpha1 799.99 Dll

Collar extra TT 152 299.99 Dll

Tabla 1. Dispositivos utilizados en la actividad de cacería (Garmin, 2014).


Los dispositivos anteriores no generan gastos por uso ya que su comunicación es directa
entre el collar del perro y el dispositivo de mano por señal VHF, con un rango de 9 millas en línea
de vista.

Actualmente es común ver perros de trabajo en actividades de apoyo a personas con


capacidades diferentes como la organización de compañeros caninos para la independencia, la
cual es sin fines de lucro para mejorar la vida de personas con discapacidad, proporcionando
perros de asistencia altamente capacitados. En las figuras 10 (a) y 10 (b) se muestran ejemplos
de perros que asisten a una persona en silla de ruedas y a un niño con autismo (Canine
Companions For Independence, 2014).

1
https://buy.garmin.com/en-US/US/on-the-trail/dog-tracking-training/alpha-/prod107225.html
2
https://buy.garmin.com/en-US/US/on-the-trail/dog-tracking-training/tt-15-dog-device/prod160889.html
20
(a) (b)
Figura 10. El perro ayuda a la persona a vivir de forma independiente, le recupera el teléfono y objetos
caídos, jala la silla de ruedas y abre puertas (a), y el perro apoya a un niño con autismo, generando
que sea más social y tranquilo en público (b) (Canine Companions For Independence, 2014).

En seguridad, se cuenta con perros policía que apoyan a grupos especiales del
Ayuntamiento de Chihuahua, el cual ya tiene 10 años y utilizan perros de la raza pastor belga
millinois (Chihuahua, 2014), y en la unidad canina de la Policía Federal de México la cual también
utiliza perros para la revisión de personas, mercancías y objetos (SEGOB, 2014). Las figuras 11 (a)
y 11 (b) muestran a estos grupos apoyados por perros.

(a) (b)
Figura 11. Ejemplar canino para el rastreo de sustancias toxicas, armas y personas extraviadas (a)
(Chihuahua, 2014), Evento “Un día con tu policía” con la finalidad de tener una cercanía con la
ciudadanía (b) (SEGOB, 2014).
21
En búsqueda y rescate en asociaciones civiles como la brigada canina de la Universidad
de Colima que ha apoyado en búsqueda de personas extraviadas, sepultadas en escombros así
como ahogadas entre otras (Figura 12) (Colima, 2014).

Figura 12. Expo de la Feria de Todos Los Santos Colima 2013 (Colima, 2014).

22
Capítulo 3.
METODOLOGÍA
En este capítulo se describen las fases del proceso metodológico para desarrollar la
aplicación de control para perros de caza, basada en cómputo ubicuo.

A continuación se muestran los puntos del proceso metodológico:


1. Se realizó una plática con siete personas, que se mencionan a continuación, y que
pertenecen a Club Cinegéticos de Colima porque realizan la actividad de caza con perros:
- Noel Varo Pulido
- Carlos Daniel Alcaraz Ruiz
- Ezequiel Hernández Rivas
- César Amezcua Pichardo
- Hugo Ahumada Aguayo
- Vicente Amezcua Barajas
- Omar Cuevas Barajas
De la plática se identificaron las siguientes necesidades:
a. Localización del perro. Que en tiempo real el cazador conozca en su dispositivo móvil
la ubicación perro. En tanto que en el dispositivo del perro se registra la trayectoria
que realizó éste.
b. Transmisión de instrucciones. Que el cazador pueda enviar órdenes en tiempo real.
c. Monitorización de signos vitales, específicamente, ritmo cardiaco.
2. Definición del estado del arte sobre tecnología aplicada en animales que permitió
conocer información sobre los siguientes aspectos:
a. Se encontró que no existe una aplicación comercial que satisfaga las necesidades de
la actividad de caza que previamente se mencionaron.
b. Se identificó la tecnología utilizada para el desarrollo de aplicaciones que asisten en
actividades entre humano y perro?.
c. Se confirmó que la tecnología móvil es factible utilizarla en la actividad de caza.
Reconociendo que como otras tecnologías, tiene sus limitantes, en este caso, en la
conectividad, la cual dependerá del proveedor de servicios de datos. Para tratar de

25
minimizarse el problema que podría darse en caso de fallar la conectividad, se
resolvió que la aplicación continuara funcionando y en cuanto se detectara la
conexión, se reactivara la comunicación. En cuanto a la parte económica, implica que
el cazador cuente con dos dispositivos móviles, un sensor de rito cardiaco y un
chaleco para perro.
3. Diseño de pantallas de interacción (llamadas Mockups).
Para la realización de los Mockups, se consideraron tres módulos base de
información: (a) el de localización del perro, (b) el de instrucciones y (c) el de ritmo
cardiaco. Para el diseño de los Mockups se utilizó el formato proporcionado por Windows
Phone.
4. Se planteó el contenido de la aplicación.
Se detalló un avance en cuanto al contenido con base en la ubicación, transmisión
de instrucciones y ritmo cardiaco.
5. Diseño y desarrollo de la aplicación
Se analizaron diversas herramientas para el desarrollo de aplicaciones, así como
los elementos principales para la estructura de la aplicación.

Se aplicó el método de ciclo de vida de Ingeniería de Software llamado “Espiral” (Vera,


2010). Se escogió este método debido a la complejidad del proyecto, el cual se muestra
de manera gráfica en la figura 13. Al finalizar se realizaron prácticas con la aplicación para
evaluarla y probar si facilitaba la localización, la transmisión de órdenes y su estado
físico.

26
Figura 13. Modelo en espiral.

El desarrollo de la aplicación consistió de una serie de pasos, los cuales se describen a


continuación:
1.- Análisis
Se recopilaron todos los requisitos de la aplicación y se documentaron.
Para ello se obtuvo información de miembros del Club Cinegético Coliman y se estableció qué va
a hacer la aplicación.

Con respecto a la información, se recuperó lo siguiente:


a) Alcance de los módulos (transmisión de órdenes, ritmo cardiaco y localización).
b) Tipo de usuarios al que va dirigido (dueños de perros de trabajo).

Con respecto a lo que va a hacer la aplicación:


a) Ubicación del perro.
b) Transmisión de órdenes.
c) Registro del ritmo cardiaco del perro.

En la figura 14 se muestra un esquema arquitectónico de la forma de interacción entre


los dispositivos en la que el sensor transmite el ritmo cardiaco mediante comunicación
Bluetooth al Smartphone que están colocados en el chaleco del perro.

27
Figura 14. Diagrama arquitectónico de la aplicación.

A su vez, el Smartphone transmite su ubicación y el ritmo cardiaco a través del servicio


de datos de telefonía celular al Smartphone del cazador, el cual trasmite instrucciones al
teléfono del perro, en donde se reproducen sonidos y vibraciones que representan las órdenes
que el cazador le indica al perro.

Los Smartphone utilizados son de la marca Nokia con sistema operativo Windows Phone
debido a que la programación de la aplicación es con Visual Studio 2013 (VS 2013) en C# y se usa
un sensor de ritmo cardiaco marca Zephyr HxM BT.

En la figura 15 se muestran los dispositivos que se utilizan para el desarrollo,


implementación y evaluación de la aplicación. Un Smartphone y el sensor de ritmo cardiaco se
incorporan al chaleco del perro y el otro Smartphone es el dispositivo móvil del cazador.

28
Figura 15. Dispositivos utilizados para la comunicación.

2.- Análisis de riesgo


Se identificaron los riesgos y se les dio solución a los mismos, entre los cuales destaca el
tiempo necesario para el desarrollo de la aplicación móvil, debido a la falta de experiencia en el
desarrollo de este tipo de aplicaciones móviles.

3.- Diseño
Una vez que se conoció lo que se iba a realizar, se determinó la forma de cómo hacerlo.

Se diseñaron dos aplicaciones, una para cada Smartphone: 1) en el dispositivo del cazador se
determinó incorporar dos secciones, una que define las órdenes a trasmitir al perro y la otra con
la información de ubicación o rastreo del perro como se muestra en la figuras 16 (a) y 16 (b), y 2)
la aplicación en el dispositivo del perro es la que trasmite su ubicación, ritmo cardiaco y registra
su trayectoria en pantalla, además de reproducir las órdenes transmitidas por el cazador (ver
figura 16 (c)).

29
(a) (b) ©
Figura 16. Pantallas de la sección de órdenes y localización en la aplicación del cazador (a, b) y pantalla
de aplicación del dispositivo para perro ©.

4.- Codificación
Aquí se realizó una traducción del diseño a un lenguaje de programación. Entre las herramientas
que se pueden utilizar para el desarrollo de la aplicación de esta índole destacan:
 Visual Studio 2013 con Windows Phone 8.1:
Microsoft Visual Studio 2013 es una colección de herramientas utilizadas para
crear, codificar, depurar, localizar, empaquetar e implementar aplicaciones para Windows
o Windows Phone 8.1 (Desarrollo, 2014).

 Eclipse, entorno de desarrollo integrado (IDE, en sus siglas en inglés) con Android
Development Tools (ADT):
Herramienta de desarrollo de Android (ADT), es un plugin para el IDE de Eclipse,
diseñado para darle un potente entorno e integrado en la construcción de aplicaciones
de Android. El desarrollo en Eclipse con ADT es rápida con la configuración guiada y con

30
la integración de herramientas, editores de XML personalizados, el panel de salida de
depuración ADT facilita el desarrollo de aplicaciones Android (Android, 2014).

 Xcode IDE de Apple Inc.:


Es un entorno de desarrollo integrado (IDE, en sus siglas en inglés) de Apple Inc.
Introduce una nueva forma de diseño y construcción software (Apple, 2014).

Se analizó cada una de éstas y se eligió Visual Studio 2013, porque tiene una colección
completa de herramientas, además de servicios que permiten crear una gran variedad de
aplicaciones para equipos de escritorio, la web y dispositivos móviles, tanto para Microsoft
como para otras plataformas, aprovechando conocimientos en lenguajes como C#, VB, C++ y
31avaScript, proporcionando un entorno de colaboración flexible permitiendo la conexión con
otras herramientas de desarrollo como Eclipse y Xcode (Microsoft, 2014).

Siguiendo cada uno de estos pasos, en el capítulo 4 se presenta el proceso de


programación de la aplicación que se desarrolló.

5.-Pruebas por parte del desarrollador


Se realizaron pruebas para evaluar y realizar los ajustes de la aplicación de acuerdo a los
objetivos establecidos.

Durante el tiempo de desarrollo de la aplicación se obtuvieron prototipos, a los cuales se les


realizaron pruebas para obtener la aplicación deseada.

Las pruebas que se le realizaron fueron para evaluar los siguientes aspectos:
 Que dejara de trabajar o de ejecutarse la aplicación.
 Realizar la comunicación correctamente.
 Que funcionaran todas las opciones contenidas en la aplicación.

31
6.-Corrección
Se realizaron cambios para corregir errores encontrados en la aplicación.
Entre los cambios se tienen los siguientes:
 Mejora de algunos algoritmos (como la lectura de ritmo cardiaco).
 Se cambió la forma de comunicación entre los dispositivos, de tecnología Pull a
utilizar Notificaciones Push.
 Presentación de la aplicación.

Cabe señalar que tanto las pruebas como los diferentes análisis expuestos se realizaron en los
tiempos estipulados.

7.-Pruebas y evaluación
Parte clave de la implementación de la aplicación, se refiere al diseño del chaleco,
proceso que se describe en el siguiente capítulo.
Se realizaron pruebas a la herramienta desarrollada resultando satisfactorias en cuanto a
lo planeado, las cuales se muestran en el capítulo 5, y que se refiere a la evaluación e
implementación.

32
Capítulo 4.-
DISEÑO Y DESARROLLO DE LA
HERRAMIENTA
En este capítulo se describe el diseño y desarrollo de las diferentes partes que componen
la herramienta para la interacción con perros de caza, además se muestra el diseño que se tomó
de muestra para el chaleco del perro.

El programa que se utiliza para el desarrollo de las aplicaciones de apoyo para perros de
trabajo es Microsoft Visual Studio 2013, el cual se descargó e instaló. Se requirió registrarse
para obtener una cuenta de desarrollador de Windows para compartir aplicaciones y probarlas
en teléfonos reales.

Los dispositivos se registraron para desbloquearlos y poder probar la aplicación, y la


forma de hacerlo es buscar y ejecutar la herramienta de registro de dispositivos en la PC (Phone
Developer Registration 8.1), como se muestra en la figura 17.

Figura 17. Desbloqueo del teléfono para probar la aplicación.

35
El desarrollo de la herramienta consistió en elaborar un servicio web, el cual permite la
interacción entre los dispositivos, y dos aplicaciones, una para el dispositivo del perro y otra para
el dispositivo del cazador. El servicio web, facilita la interacción entre las aplicaciones instaladas
en los dispositivos. Las aplicaciones en los dispositivos utilizan mecanismos de localización,
reproducción de sonidos y vibraciones, adicionalmente la aplicación instalada en el dispositivo
del cazador transmite órdenes y la del perro transmite ubicación geográfica y ritmo cardiaco,
como se muestra en la figura 18.

Figura 18. Diagrama de secuencia.

4.1 Desarrollo del Servicio Web:

La comunicación entre los dos Smartphone utilizados se realiza por medio de un


servicio web el cual es un sistema de software diseñado para permitir la interoperabilidad
máquina a máquina en una red (Alegsa, 2014).

36
El servicio web hace uso de una base de datos de SQL Server, que incluye una tabla con
dos campos como se muestra en la figura 19, con esto permite identificarse cada uno de los
dispositivos que se utilizan.

Figura 19. Estructura de la tabla.

Se crearon cuatro métodos en el Servicio Web de los cuales dos permiten estar
actualizando la URI (Identificador de Recursos Uniforme), uno para cada dispositivo, y los otros
dos permiten intercambiar mensajes entre los dispositivos.

Los procedimientos que actualizan la URI de los dispositivos tienen la función de recibir
un mensaje de tipo cadena y mediante una consulta actualiza el URI en la base de datos.

Los procedimientos utilizados para enviar mensajes, reciben un mensaje de un


dispositivo y lo mandan al otro, esto se logra a través de notificaciones Push creando un canal
para enviar y recibir notificaciones. El tipo de notificaciones aplicado es Raw, lo que permite
enviar información a la aplicación cuando se encuentra en ejecución (García, 2012), su función
es recibir un mensaje de un dispositivo y posteriormente, mediante una consulta, se obtiene la
URI del dispositivo destino y con el uso de notificaciones Push se envía el mensaje.

Una vez creado el Servicio Web, el siguiente paso fue publicarlo de manera local para
hacer pruebas, lo cual requirió activar el internet information services (por sus siglas en inglés,
IIS), creando la siguiente estructura de archivos en la ruta C:\inetpub\wwwroot; se colocó en
una carpeta el Servicio Web ya creado o publicado anteriormente.
Posteriormente se probó el Servicio Web con la siguiente dirección:
http://localhost/ws_raw.asmx como se muestra en la figura 20.
37
Figura 20. Servicio Web funcionando en nuestro servidor local.

Ya funcionando el servicio web de manera local, se realizó el traslado del servicio web a
la plataforma de servicios de Microsoft Azure, para que trabaje de manera pública. Se escogió
Microsoft Azure por ser fácil de utilizar con cualquier navegador, así mismo la creación de
bases de datos de SQL Server, el alojamiento de sitios web y que proporciona un mes de
servicio gratuito para pruebas.

4.2 Aplicación del dispositivo del cazador

La aplicación del dispositivo del cazador contiene dos secciones que pueden desplazarse
deslizando la pantalla hacia la izquierda o derecha, la primer sección muestra el mapa con la
ubicación de los dos dispositivos, en la parte inferior contiene una barra para poder cambiar el
tipo de vista del mapa (Aéreo, Híbrido, Camino y Terreno), así como activar-desactivar y limpiar
la ruta, como se muestra en la figura 21(a), y la segunda sección contiene 6 botones: Busca,
Vámonos, Quieto, Vibración, RC-Bat Sensor (batería del sensor) y Bat. del Celular (batería del
celular) para la comunicación con el dispositivo del perro, como se muestra en la figura 21(b).

38
(a) (b)
Figura 21. Sección de localización (a), y sección de Órdenes (b).

4.3 Aplicación del dispositivo del perro

La aplicación del dispositivo del perro contiene tres secciones, la primera muestra la
ubicación del dispositivo con la opción de cambiar la vista del mapa así como activar el rastreo,
como se muestra en la figura 22(a), la segunda sección se utiliza para activar el sensor de ritmo
cardiaco figura 22(b), y la tercer sección muestra si está activado el rastreo, junto con la última
posición registrada con fecha y hora (ver figura 22(c)).

39
(a) (b) (c)
Figura 22. Sección de localización (a), sección para el ritmo cardiaco (b), y sección del estado de la
aplicación (c).

En la grabación de órdenes se utilizó una aplicación gratuita para Windows Phone


llamada Easy Recorder la cual es muy fácil de utilizar y permite compartir los audios grabados
(ver imágenes en la figura 23).

Figura 23. Pantallas de la aplicación Easy Recorder utilizada para grabar órdenes.

40
Gran parte del código xaml y C# utilizado, se muestra en el Anexo B, dividido en varias
secciones las cuales se señalan a continuación:

Sección a) Código para actualizar URI de un dispositivo en la base de datos.

Sección b) Código para recibir un mensaje y reenviarlo a otro dispositivo.

Sección c) Código para inicializar la localización, los Pushpin para indicar la posición, así
como las líneas para el rastreo (MapPolyline).

Sección d) Código que se ejecuta cuando hay un cambio de posición obteniendo la latitud y
la longitud, colocando el identificador de posición (Pushpin) así como la línea de
rastreo.

Sección e) Código para reproducir sonidos los cuales se grabaron en formato wav.

Sección f) Código para ejecutar una vibración.

Sección g) Código para mostrar el mapa y cambiar la vista de cartografía.

Sección h) Código para identificar los dispositivos Bluetooth.

Sección i) Código para conectar el sensor y obtener el ritmo cardiaco y la batería.

La programación de cada una de las aplicaciones no se exhibe de manera completa


debido a que es bastante amplia, pero se cuenta con las aplicaciones para una correcta revisión
en su funcionamiento.

4.4 Diseño del chaleco

41
Además del diseño y desarrollo de la herramienta se buscó en internet un diseño de
chaleco para perro y se encontró uno en la página MimiyTara3 el cual se tomó como base para
adaptarlo a las medidas de los perros a utilizar.

El diseño del chaleco (presentado en la figura 24) se modificó en el programa Corel Draw
12, para posteriormente imprimirlo y utilizarse como guía para que un sastre lo elaborara.

Figura 24. Guía para el chaleco en el Corel Draw 12.

Se mandó confeccionar dos chalecos, uno grande y uno pequeño de acuerdo a las razas
de perro a utilizar, agregándosele un compartimento para portar el celular como se muestra en
la figura 25.

3
http://www.mimiytara.com/
42
Figura 25. Chaleco para perro con compartimiento de celular.

Una vez hechos los diseños mencionados, se realizaron diversas pruebas a la herramienta
desarrollada, las cuales se describen de manera detallada en el siguiente capítulo, completando
el estudio con la evaluación e implementación.

43
Capítulo 5.
EVALUACIÓN DE LA
APLICACIÓN
En este capítulo se evalúan cada una de las funciones de la herramienta en tiempo real
con los perros de caza. Se hace la implementación con dos animales de distinta raza, esto debido
al entrenamiento que implica.

Se utilizaron dos Smartphone Nokia Lumia (520 y 625) con sistema operativo Windows
Phone y un sensor de ritmo cardiaco marca Zephyr HxM BT, cuyas características principales se
presentan en la Tabla 2:

Peso Tamaño Batería Aprox.


Nokia Lumia 520 124 g 119.9 x 64 x 9.9 mm 10 Hrs.
Nokia Lumia 625 159 g 133.3 x 72.3 x 9.2 mm De 15 a 24 Hrs.
Zephyr (Sensor) 85 g 70 x 35 mm 26 Hrs.

Tabla 2. Descripción de los dispositivos utilizados en las pruebas.

Para realizar las evaluaciones, se trabajó con dos perros que se muestran en la figura
26(a) y 26(b), además en la Tabla 3 se presentan las características de los mismos.

Nombre Raza Edad Peso

Muñeca Beagle 6 Años 10 Kgs.

Max Azul de Gascuña 3 Años 20 Kgs.

Tabla 3. Descripción de los perros participantes en las pruebas.

47
(a) (b)

Figura 26. Muñeca (a) y Max (b), ambos portando chaleco.

Se observó el uso del chaleco en ambos perros el cual se adapta perfectamente al cuerpo
por su diseño y permite su movilidad de manera natural. Es importante señalar, que los perros
no mostraron algún cambio en su comportamiento, ni les pareció extraño el uso de los chalecos.

Sensor de Ritmo cardiaco

El ritmo cardiaco se obtiene mediante el uso de un sensor que se muestra en la figura 27,
el cual está adherido a una banda elástica por medio de unos broches.

Figura 27. Sensor de ritmo cardiaco.

48
De acuerdo a una investigación realizada a un veterinario, la mejor posición para colocar
el sensor de ritmo cardiaco en el perro y lograr así, mejores condiciones de lectura, es el lado
izquierdo del tórax. Razón por la cual, se les cortó el pelo en esa área (ver figura 28).

Figura 28. Perro con corte de pelo.

Cabe mencionar que el sensor tiene un rango de 25 a 240 pulsos por minuto ("Zephyr
HxM BT,").

Lugar utilizado para las pruebas

Las pruebas de localización, ritmo cardiaco y órdenes se realizaron en el Parque del


Rodeo, en la colonia La Estancia al oriente de la ciudad de colima, como se muestra en la figura
29.

Figura 29. Ubicación del Parque El Rodeo

49
Procedimiento para ejecutar las aplicaciones en los dispositivos

A continuación se describen los pasos del proceso de ejecución de la aplicación en el


dispositivo del cazador, con sus correspondientes pantallas presentadas en las figuras 30 (a)- (d).

(a) (b)

(c) (d)
Figura 30. El dispositivo se registra en el servicio web (a), la aplicación obtiene su posición GPS (b), el
usuario activa el rastreo (c) y la aplicación inicializa el rastreo (d).

50
El proceso de ejecución de la aplicación en el dispositivo del perro es similar al del
realizado en el dispositivo del cazador, con la diferencia de que adicionalmente el cazador debe
activar el sensor de ritmo cardiaco para el perro. Para lo anterior, es necesario que previo a este
proceso de ejecución se coloquen el sensor y el chaleco en el perro. En las figuras 31(a) – (d) se
presentan las pantallas del dispositivo del perro durante el proceso de ejecución.

(a) (b)

51
(c) (d)
Figura 31. El usuario busca el sensor de ritmo cardiaco por Bluetooth (a), el usuario selecciona el
dispositivo (b), el usuario escribe en el nombre del servicio el número 1 (c) y la aplicación muestra
mensaje de sensor activado (d).

Cabe señalar que el proceso de ejecución de las aplicaciones para los dispositivos del
cazador y perro es sencillo como se muestra anteriormente.

Una vez realizado el proceso de ejecución en ambos dispositivos, el cazador en su


dispositivo, puede rastrear y localizar a su perro conforme éste se desplaza, visualizar la
información del ritmo cardíaco cuando él lo indique y dar órdenes al perro cuando lo desee.

A continuación se describe el proceso de evaluación de aplicación en relación a las


funciones de localización y rastreo, sensado de ritmo cardíaco y órdenes.

52
5.1 Evaluación de rastreo y localización:

Ya con la aplicación en ejecución y el perro equipado, se le dejó libre para que


reconociera el área (Parque Rodeo). De manera inmediata en el dispositivo del cazador pudo
darse seguimiento en tiempo real de la trayectoria el perro realizaba, sin importar la distancia y
las condiciones del terreno (pues es accidentado, con desniveles y en donde existen una
barranca y un arroyo).

En las figuras 32(a) a la 32(d) se muestran diversas pantallas tomadas en diferentes


momentos que muestran la trayectoria que el perro realizó, iniciando a las 04:14:12 p.m. y
terminando a las 04:41:32 p.m. Durante este periodo de tiempo se pudo dar seguimiento en
todo momento de la ubicación y trayectoria del perro.

(a) (b)

53
(c) (d)

Figura 32. El perro inicia trayectoria hacia el sur (a), continúa su trayectoria hacia el noreste (b), el perro
regresa y continúa hacia el noroeste (c), y regresa al origen de donde inicio (d).

5.2 Evaluación de sensado del ritmo cardiaco

Para evaluar la funcionalidad del sensado del ritmo cardiaco es importante hacer la
siguiente consideración. En esta parte intervienen dos aspectos: a) función de la aplicación para
obtener el ritmo cardiaco del sensor y b) función del sensor colocado en el perro. En relación a
la función de la aplicación para obtener la información del ritmo cardiaco del sensor, pudo
comprobarse que en todo momento que el cazador solicitó obtener dicha información, la
aplicación funcionó adecuadamente, pues en el dispositivo del cazador se desplegó de manera
inmediata la información. En relación a la funcionalidad del propio sensor colocado en el perro,
se pudo observar lo siguiente:

54
 Por la forma en que está colocado en el perro es muy fácil de moverse de lugar lo cual
presenta problemas para la lectura del ritmo cardiaco, y en estos casos, en el dispositivo
del cazador no se despliega información alguna. Como solución momentánea, se
determinó apretar el elástico que sujeta al sensor para tratar de mantenerlo lo más
ajustado posible y mantener con ello su posición adecuada para la lectura del ritmo. Ya
que los perros tienen movimientos bruscos, se tiene contemplado como trabajo futuro,
encontrar un mejor mecanismo de colocación.

 Se consideró conveniente activar el sensor antes de colocársele al perro ya que la


primera vez que se obtiene el ritmo cardiaco puede tardar hasta 15 segundos en
visualizarse la información sensada en el dispositivo del cazador. Posteriormente, la
información se despliega inmediatamente de que el cazador lo solicita.

Se registraron algunos valores para conocer el ritmo cardiaco del perro, como los que se
muestran en las pantallas de las figuras 33(a) y 33(b).

(a) (b)

Figura 33. Respuesta de solicitud de ritmo cardiaco de 104 y batería 100 % (a), ritmo cardiaco de 126 y
batería de 83% (b).

55
5.3 Órdenes y vibraciones

En cuanto a las órdenes de sonidos y vibraciones que se envían al perro se detectó que la
velocidad de transmisión de datos era un poco lenta ya que en ocasiones la aplicación reflejaba
un retraso de varios segundos lo cual no es significativo, pero por lo general funcionó bien.

Cabe mencionar que el uso de sonidos y vibraciones en los perros utilizados en ocasiones
los sorprendieron. Por lo anterior, se recomienda que el perro se acostumbre al uso del
dispositivo.

A continuación se muestran dos imágenes donde se envía una orden al dispositivo del
perro y regresan dos mensajes. En el primero, el servicio web nos indica los estados del mensaje
que enviamos, del dispositivo del perro y del canal de comunicación, como se muestra en la
figura 34(a), y en el segundo mensaje (2-2), lo envía directamente el dispositivo del perro como
una confirmación, figura 34(b), esto con el fin de asegurar que la aplicación del perro está activa
y recibió la orden.

(a) (b)
Figura 34. Primer mensaje enviado por el servicio web (a), segundo mensaje enviado por la aplicación
del perro (b).

Además de poder obtener el ritmo cardiaco se incluyó una orden para saber el
porcentaje de batería del celular del perro, esto con el fin de conocer el tiempo de carga
restante, figura 35.

56
Figura 35. Batería del celular del perro.

Se observó que la herramienta no tiene límite en cuanto a distancia entre los dispositivos
siempre y cuando se encuentre en cobertura del proveedor de datos.

El costo de los diferentes dispositivos y accesorios que se requirieron para la


implementación de la herramienta desarrollada son bajos, y se muestran en la Tabla 4.

Marca Precio (pesos


mexicanos)
Celular Smartphone Microsoft 1,299.00
Lumia 4354 (uno para el cazador
y uno por perro)
Sensor de ritmo cardiaco 1,050.00
Zephyr5 (uno por perro)
Chaleco para perro 100.00
(Confeccionándolo)
Plan de datos “Amigo Tu”6 0.98 x Mb
Tabla 4. Costos de dispositivos y accesorios para implementar la herramienta.

El consumo de datos que realiza la aplicación por acciones o tareas se presenta en la Tabla 5.

4
http://www.microsoft.com/es-mx/movil/telefonos-moviles/todos-celulares/?dcmpid=bmc-src-bing.brand
5
http://www.amazon.com/dp/B002PL33AQ
6
http://telcel.com/portal/personas/amigo/detalles/recarga_amigo_tu.html
57
Acción o tarea Bytes
Actualizar URI 203
Transmitir/Recibir orden 2
Transmitir/Recibir posición (Latitud, longitud) 41
Status de notificación del servicio web 25
Transmitir/Recibir confirmación de orden recibida 3
Transmitir/Recibir Ritmo Cardiaco 15
Transmitir/Recibir el porcentaje de batería del dispositivo del perro 3
Tabla 5. Consumo de datos por la aplicación.

Como se observa, el consumo de datos no es significativo ya que 1 Megabyte contiene


1,048,576 Bytes.

58
Capítulo 6.-
CONCLUSIONES Y TRABAJOS
FUTUROS
En el documento se presenta la información sobre la aplicación desarrollada para asistir
al cazador en la actividad de cacería. A través de pruebas realizadas en campo, se mostró que
con la aplicación desarrollada, el cazador, por medio de su dispositivo móvil, puede dar
seguimiento sobre la localización, trayectoria y dirección que el perro sigue, así como el estado
de salud del mismo (a través de la información de ritmo cardiaco) en tiempo real. Además, el
cazador puede dar indicaciones pertinentes a su perro, aun cuando no esté cerca de él.

Si bien, como se menciona en el documento, existen dispositivos comerciales que tienen


como objetivo apoyar en la actividad de la caza, tienen también sus limitaciones ya que al
utilizar señal VHF para enviar y recibir información, ésta se pierde al no tener línea de vista. Por
lo anterior, la aplicación desarrollada en esta investigación presentó las siguientes ventajas:

- La transmisión y recepción de datos se hace a través de telefonía celular resolviéndose el


problema de los dispositivos comerciales, pues sólo se depende de la existencia de
cobertura celular.

- Otro aspecto a resaltar es el costo que implica la implementación de la aplicación en


comparación con los dispositivos comerciales, pues de acuerdo a la información
presentada en el documento, el costo de los teléfonos celulares requeridos está por
debajo de lo que demanda la implementación con dispositivos comerciales. Se pueden
reusar dispositivos celulares que tengan las características técnicas mencionadas en el
documento. Incluso en el aspecto de costos de telefonía de datos, puede verse que no es
significativo de acuerdo al consumo que se requiere, ya que por ejemplo, la acción o
tarea con mayor frecuencia que realiza la herramienta correspondiente al cambio de
posición que utiliza 41 bytes (un byte como identificador, 16 para la latitud, 16 para la
longitud y 8 para la hora) con un costo de 0.0038 centavos, en otras palabras con 98
centavos se pueden enviar o recibir 25,575 cambios de posición.

-
61
Por lo anterior, es claro que los objetivos propuestos al inicio de trabajo de investigación se
cumplieron satisfactoriamente. El cómputo ubicuo está implícito al utilizar el Smartphone e
incorporarlo en el compartimento del chaleco, siendo este transparente para el perro ya que
está familiarizado con el mismo. Su implementación y evaluación fue exitosa. Sin embargo,
como todo desarrollo, se tiene la posibilidad a mejorar, y por ello, se definen acciones de trabajo
futuro en la siguiente sección.

6.1 Trabajo futuro

Con base a lo observado en las pruebas de campo con la aplicación, se detectaron los
siguientes aspectos a desarrollar:
- Por el momento, con la aplicación se conoce la ubicación, trayectoria de movimiento y
ritmo cardiaco de un solo perro, pero habría que considerarse el monitoreo de una
cantidad mayor de perros de manera simultánea.

- Permitir que el cazador personalice sus instrucciones/órdenes de caza, ya que por el


momento todas se encuentran predefinidas y grabadas en los dispositivos.

- Encontrar un mejor mecanismo para la colocación del sensor que evite que se mueva de
lugar con los movimientos bruscos del perro.

- Que a la aplicación se le programen diferentes categorías de acuerdo al registro de


niveles de ritmo cardiaco, que indiquen problemas en el estado de salud del perro o
distintas situaciones en las que éste se encuentra (sin actividad, reposo, cansancio, entre
otras), a modo de que la aplicación envíe alertas al cazador cuando se rebasen estos
niveles.

6.2 Productos derivados de la investigación

- Adrian Castañeda, Pedro Damián y María Andrade (2014) Cómputo Ubicuo en el Control
Canino para Actividades de Caza. Artículo publicado en Research in Computing Science
76 (2014), http://www.micai.org/rcs/2014_76/

62
- Ponencia: Cómputo ubicuo en el control canino para actividades de caza
Autores: Adrian Castañeda, Pedro Damián and María Andrade. CITI Congreso
Internacional de Tecnologías de Información 2014. Facultad de Telemática, Universidad
de Colima.

- Adrian Castañeda, María Andrade y Pedro Damián (2015) La aplicabilidad del cómputo
ubicuo para el monitoreo de animales de caza. SENIE 2015 (En evaluación).

- Adrian Castañeda, María Andrade y Pedro Damián (2015) Tecnología móvil para
potenciar el monitoreo del estado físico de caninos. ANIEI 2015 (En evaluación).

63
REFERENCIAS BIBLIOGRÁFICAS
Alegsa. (2014). Definición de Servicio web Retrieved Octubre, 2014, from
http://www.alegsa.com.ar/Dic/servicio%20web.php
Android, D. (2014). Android Retrieved Octubre, 2014, from
http://developer.android.com/tools/sdk/eclipse-adt.html
Apple. (2014). Xcode Retrieved Octubre, 2014, from https://developer.apple.com/xcode/
Camstreams. (2014). Pet / Animal Retrieved Abril, 2014, from
http://www.camstreams.com/petanimalwebcams.asp
Canine Companions For Independence, I. (2014). Assistance Dogs Retrieved Septiembre, 2014,
from
http://www.cci.org/site/c.cdKGIRNqEmG/b.3978475/k.3F1C/Canine_Companions_for_I
ndependence.htm
Colima, U. d. (2014). BRIGADA CANINA Retrieved Mayo, 2014, from
http://www.ucol.mx/ssocial/bcanino/antecedentes.htm
Chihuahua, A. d. (2014) Retrieved Mayo, 2014, from
http://www.municipiochihuahua.gob.mx/policia/dependencia/grupos_especiales.aspx
Del Castillo Negrete, M. (2002). Tiempos extraordinarios Retrieved Mayo, 2014, from
https://docs.google.com/document/d/1oorU0tue04oww0errWA37M7jTe__SMp3nyo0MlC
bcxM/edit?hl=en&pli=1
Desarrollo, W. C. d. (2014). Desarrollar aplicaciones con Visual Studio 2013 Retrieved Octubre,
2014, from http://msdn.microsoft.com/es-es/library/windows/apps/br211384.aspx
García, S. (2012). Entendiendo el canal para las Notificaciones Push Retrieved Enero, 2014,
from http://www.avanet.org/entendiendo-el-canal-para-las-notificaciones-push.aspx
Garmin. (2014). Astro, DOG TRACKING SYSTEM Retrieved Septiembre, 2014, from
http://sites.garmin.com/astro/
Grundner, A. (2004). iSeePet Webcam/Feeder Retrieved Abril, 2014, from
http://www.ehomeupgrade.com/2004/04/24/iseepet-webcamfeeder/
Hanlon, M. (2006). Mobile Telephone for Pets! Retrieved Abril, 2014, from
http://www.gizmag.com/go/3238/
Internationale, F. F. C. (2014). Razas reconocidas a título definitivo Retrieved Septiembre, 2014,
from http://www.fci.be/es/Nomenclature/
Mancini, C. (2013). Animal-computer interaction (ACI): changing perspective on HCI,
participation and sustainability. Paper presented at the CHI '13 Extended Abstracts on
Human Factors in Computing Systems, Paris, France.
Mankoff, D., Dey, A., Mankoff, J., & Mankoff, K. (2005). Supporting interspecies social
awareness: using peripheral displays for distributed pack awareness. Paper presented at
the Proceedings of the 18th annual ACM symposium on User interface software and
technology, Seattle, WA, USA.
Microsoft. (2014). Visual Studio Retrieved Octubre, 2014, from http://www.visualstudio.com/
Moore Jackson, M., Zeagler, C., Valentin, G., Martin, A., Martin, V., Delawalla, A., . . . Starner,
T. (2013). FIDO - facilitating interactions for dogs with occupations: wearable dog-
activated interfaces. Paper presented at the Proceedings of the 2013 International
Symposium on Wearable Computers, Zurich, Switzerland.
Noz, F., & An, J. (2011). Cat cat revolution: an interspecies gaming experience. Paper presented
at the Proceedings of the SIGCHI Conference on Human Factors in Computing Systems,

67
Vancouver, BC, Canada.
Paldanius, M., Kärkkäinen, T., Väänänen-Vainio-Mattila, K., Juhlin, O., & Häkkilä, J. (2011).
Communication technology for human-dog interaction: exploration of dog owners'
experiences and expectations. Paper presented at the Proceedings of the SIGCHI
Conference on Human Factors in Computing Systems, Vancouver, BC, Canada.
Resner, B. I. (2001). Rover@Home: Computer Mediated Remote Interaction for Dogs. .
Romero, O. (2012). Computación ubicua ¿nuestro futuro? Retrieved Enero, 2015, from
http://www.academica.mx/blogs/computaci%C3%B3n-ubicua-%C2%BFnuestro-futuro
Schilit, B. N., Adams, N., & Want, R. (1994). Context-Aware Computing Applications. Paper
presented at the Proceedings of the 1994 First Workshop on Mobile Computing Systems
and Applications.
SEGOB, S. d. G. (2014). Policía Federal de México Retrieved Junio, 2014, from
http://www.cns.gob.mx/portalWebApp/ShowBinary?nodeId=/BEA+Repository/1332058//
archivo
Segú, J. L., & Amblàs, S. (2010). Estudio Fundación Affinity, sobre el abandono de animales de
compañía. Retrieved Junio, 2014, from http://www.fundacion-
affinity.org/sites/default/files/EstudioAbandono2010.pdf
Weilenmann, A., & Juhlin, O. (2011). Understanding people and animals: the use of a
positioning system in ordinary human-canine interaction. Paper presented at the
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems,
Vancouver, BC, Canada.
Weiser, M. (1991). The Computer for the Twenty-First Century. Scientific American, 265(3).
Yonezawa, K., Miyaki, T., & Rekimoto, J. (2009). Cat@Log: sensing device attachable to pet
cats for supporting human-pet interaction. Paper presented at the Proceedings of the
International Conference on Advances in Computer Enterntainment Technology, Athens,
Greece.
. Zephyr HxM BT. Retrieved Febrero, 2014, from http://zephyranywhere.com/products/hxm-
bluetooth-heart-rate-monitor

68
ANEXOS
Anexo A: Solicitud de Información a SEMARNAT.

71
Respuesta de información de SEMARNAT.

72
Anexo B: Código fuente.

a) Procedimientos para actualizar la URI de un dispositivo en el servicio web.


[WebMethod]
public string updateURImaster(String uri)
{
try
{
DataSet1.canalesDataTable mitabla = new
DataSet1.canalesDataTable();
DataSet1TableAdapters.canalesTableAdapter adaptador = new
DataSet1TableAdapters.canalesTableAdapter();
adaptador.Fill(mitabla);

adaptador.updateURImaster(uri);
respuesta = "URI actualizado.";
}
catch (Exception ex)
{
respuesta = "Exception caught sending update: " + ex.ToString();
}
return respuesta;
}

b) Procedimiento para enviar un mensaje de un dispositivo a otro en el servicio web.


[WebMethod]
public string sendMSNtoslave(String msn)
{
DataSet1.canalesDataTable mitabla = new DataSet1.canalesDataTable();
DataSet1TableAdapters.canalesTableAdapter adaptador = new
DataSet1TableAdapters.canalesTableAdapter();
adaptador.FillByURIslave(mitabla);

//mitabla.Rows[0][1].ToString()

try
{
// Get the Uri that the Microsoft Push Notification Service returns to
// the Push Client when creating a notification channel.
// Normally, a web service would listen for Uri's coming from the web
// client and maintain a list of Uri's to send
// notifications out to.
string subscriptionUri = mitabla.Rows[0][1].ToString();
// TextBoxUri.Text.ToString();

HttpWebRequest sendNotificationRequest =
(HttpWebRequest)WebRequest.Create(subscriptionUri);

// We will create a HTTPWebRequest that posts the raw notification to


// the Microsoft Push Notification Service.
// HTTP POST is the only allowed method to send the notification.
sendNotificationRequest.Method = "POST";
73
// Create the raw message.
string rawMessage = msn;

// Sets the notification payload to send.


byte[] notificationMessage = Encoding.Default.GetBytes(rawMessage);

// Sets the web request content length.


sendNotificationRequest.ContentLength = notificationMessage.Length;
sendNotificationRequest.ContentType = "text/xml";
sendNotificationRequest.Headers.Add("X-NotificationClass", "3");

using (Stream requestStream =


sendNotificationRequest.GetRequestStream())
{
requestStream.Write(notificationMessage, 0,
notificationMessage.Length);
}

// Send the notification and get the response.


HttpWebResponse response =
(HttpWebResponse)sendNotificationRequest.GetResponse();
string notificationStatus = response.Headers["X-NotificationStatus"];
string notificationChannelStatus = response.Headers["X-
SubscriptionStatus"];
string deviceConnectionStatus = response.Headers["X-
DeviceConnectionStatus"];

// Display the response from the Microsoft Push Notification Service.


// Normally, error handling code would be here. In the real world,
// because data connections are not always available,
// notifications may need to be throttled back if the device cannot be
// reached.

// TextBoxResponse.Text = notificationStatus + " | " +


// deviceConnectionStatus + " | " + notificationChannelStatus;
// respuesta = notificationStatus + " | " + deviceConnectionStatus + "
// | " + notificationChannelStatus;

//para llamar el metodo sendMSNtomaster agregandole una "B" al inicio


//ws_raw temp = new ws_raw();
//temp.sendMSNtomaster(respuesta);
}
catch (Exception ex)
{
//TextBoxResponse.Text = "Exception caught sending update: " +
ex.ToString();
respuesta = "Exception caught sending update: " + ex.ToString();
}
return respuesta;
}

74
c) Procedimiento para inicializar localización, Pushpin y MapPolyline.
private async void UpdateMap()
{
Geolocator geolocator = new Geolocator();

geolocator.DesiredAccuracyInMeters = 50;

SetProgressIndicator(true);
SystemTray.ProgressIndicator.Text = "Obteniendo posición GPS";

try
{
Geoposition position = await
geolocator.GetGeopositionAsync(TimeSpan.FromMinutes(1),
TimeSpan.FromSeconds(30));

SystemTray.ProgressIndicator.Text = "Posición adquirida";

var gpsCoorCenter = new

GeoCoordinate(position.Coordinate.Point.Position.Latitude,

position.Coordinate.Point.Position.Longitude);

Loc_Map.SetView(gpsCoorCenter, 17);

Pushpin pushpin = (Pushpin)this.FindName("MyPushpin");


pushpin.GeoCoordinate = new GeoCoordinate(gpsCoorCenter.Latitude
,gpsCoorCenter.Longitude );

//utilizamos MapPolyline para la ruta


line.StrokeColor = Colors.Red;
line.StrokeThickness = 3;
line.Path.Add(new GeoCoordinate(gpsCoorCenter.Latitude,
gpsCoorCenter.Longitude));

//dibujamos la linea del perro


linedog.StrokeColor = Colors.Yellow;
linedog.StrokeThickness = 3;

SetProgressIndicator(false);
}
catch(UnauthorizedAccessException ){
MessageBox.Show("Posición deshabilitada en la configuración del
telefono");
}
catch (Exception ex){
MessageBox.Show(ex.Message);
}
}

75
d) Procedimiento que se ejecuta cuando hay un cambio de posición.
void geolocator_PositionChanged(Geolocator sender,
PositionChangedEventArgs args)
{
Dispatcher.BeginInvoke(() =>
{
//Loc_Map.SetView(new
GeoCoordinate(args.Position.Coordinate.Point.Position.Latitude,
args.Position.Coordinate.Point.Position.Longitude), 17);

Pushpin pushpin = (Pushpin)this.FindName("MyPushpin");


pushpin.GeoCoordinate = new
GeoCoordinate(args.Position.Coordinate.Point.Position.Latitude,
args.Position.Coordinate.Point.Position.Longitude);

line.Path.Add(new
GeoCoordinate(args.Position.Coordinate.Point.Position.Latitude,
args.Position.Coordinate.Point.Position.Longitude));

});
}

e) Códigos para reproducir sonidos.


Código xaml
<Button x:Name ="PlayAudioButton1"
Content="Busca"
Height="150"
VerticalAlignment="Top"
Background="#FF95DD23"
Click="PlayAudioButton1_Click"
FontFamily="Arial" FontSize="36"/>

<MediaElement x:Name="myMediaElement" Height="10" Width="10"/>

Código C#
private void PlayAudioButton3_Click(object sender, RoutedEventArgs
e)
{
if (NetworkInterface.GetIsNetworkAvailable())
{
myMediaElement.Source = new Uri("/Assets/ordenes/Quieto.wav",
UriKind.RelativeOrAbsolute);
myMediaElement.Play();

o.sendMSNtoslaveAsync("A3");
}
else
{
MessageBox.Show("Sin conexión de datos.");
}
}

76
f) Procedimiento para ejecutar una vibración.
private void vibracion_Click(object sender, RoutedEventArgs e)
{
if (NetworkInterface.GetIsNetworkAvailable())
{
VibrateController vibrateCont = VibrateController.Default;

vibrateCont.Start(TimeSpan.FromSeconds(3));

o.sendMSNtoslaveAsync("A4");
}
else
{
MessageBox.Show("Sin conexión de datos.");
}

g) Códigos para mostrar el mapa y cambiar la vista de cartografía.


Código xaml
<phone:PivotItem Header="Localización" Margin="12,76,12,0">
<StackPanel x:Name="ContentPanel2" Grid.Row="1" Margin="12,-
64,12,0">
<TextBlock x:Name="consulta" HorizontalAlignment="Left"
TextWrapping="Wrap" Text="Posición recibida:" VerticalAlignment="Top"
Margin="10,20,0,0" FontSize="24" FontWeight="Bold" FontStyle="Italic"
Foreground="Yellow"/>
<maps:Map x:Name="Loc_Map" CartographicMode="Aerial"
ColorMode="Light" Height="482">
<toolkit:MapExtensions.Children>
<!-- <toolkit:UserLocationMarker
x:Name="UserLocationMarker"/> -->
<toolkit:Pushpin x:Name="MyPushpin" Content="Yo"
Background="Red" FontWeight="Bold" FontSize="22"
Opacity="0.4"/>
<toolkit:Pushpin x:Name="MyPushpin2" Content="Dog"
Background="Yellow" Foreground="Black" FontWeight="Bold"
FontSize="18" Opacity="0.4"/>
</toolkit:MapExtensions.Children>
</maps:Map>
</StackPanel>

Código C#

private void road_Click(object sender, EventArgs e)


{
if (Loc_Map != null)
Loc_Map.CartographicMode =
Microsoft.Phone.Maps.Controls.MapCartographicMode.Road;
}
77
h) Procedimiento para identificar el dispositivo de ritmo cardiaco bluetooth
private async void RefreshPairedDevicesList()
{
try
{
// Search for all paired devices
PeerFinder.AlternateIdentities["Bluetooth:Paired"] = "1234";
var peers = await PeerFinder.FindAllPeersAsync();

// By clearing the backing data, we are effectively clearing the


ListBox
_pairedDevices.Clear();

if (peers.Count == 0)
{
MessageBox.Show(AppResources.Msg_NoPairedDevices);
}
else
{
// Found paired devices.
foreach (var peer in peers)
{
_pairedDevices.Add(new PairedDeviceInfo(peer));

}
}
}
catch (Exception ex)
{
if ((uint)ex.HResult == 0x8007048F)
{
var result = MessageBox.Show(AppResources.Msg_BluetoothOff,
"Bluetooth Off", MessageBoxButton.OKCancel);
if (result == MessageBoxResult.OK)
{
ShowBluetoothcControlPanel();
}
}
else if ((uint)ex.HResult == 0x80070005)
{
MessageBox.Show(AppResources.Msg_MissingCaps);
}
else
{
MessageBox.Show(ex.Message);
}
}
}

78
i) Procedimientos para conectar el sensor para obtener el ritmo cardiaco y la batería.

private void rc()


{
// Because I enable the ConnectToSelected button only if the user
// has a device selected, I don't need to check here whether that
// is the case.

// Connect to the device PairedDeviceInfo


pdi = PairedDevicesList.SelectedItem as
PairedDeviceInfo;
PeerInformation peer = pdi.PeerInfo;

ConnectToDevice(peer);
}

private async void ConnectToDevice(PeerInformation peer)


{
if (_socket != null)
{
// Disposing the socket with close it and release all resources
// associated with the socket
_socket.Dispose();
}

try
{
_socket = new StreamSocket();
string serviceName = (String.IsNullOrWhiteSpace(peer.ServiceName))
? tbServiceName.Text : peer.ServiceName;

// Note: If either parameter is null or empty, the call will throw


// an exception
await _socket.ConnectAsync(peer.HostName, serviceName);

// If the connection was successful, the RemoteAddress field will


// be populated
MessageBox.Show(String.Format(AppResources.Msg_ConnectedTo,
_socket.Information.RemoteAddress.DisplayName));

//PeerFinder.Start();

DataReader dataReader = new DataReader(_socket.InputStream);


await dataReader.LoadAsync(13);// get the size of message
//uint messageLen = (uint)dataReader.ReadInt32();
//await dataReader.LoadAsync(messageLen);//send the message
String Message = dataReader.ReadString(13);
String bat = Message.Substring(11, 1);
String rc = Message.Substring(12, 1);
val1 = Convert.ToChar(bat);
val2 = Convert.ToChar(rc);

o.sendMSNtomasterAsync("B" + "RC: " + val2 + " Bat: " + val1);


//MessageBox .Show("RC: " + val2 + " Bat: " + val1);

79
}
catch //(Exception ex)
{
// In a real app, you would want to take action dependent on the
// type of exception that occurred.
// MessageBox.Show("Problema con la conexión al sensor RC.");
// o.sendMSNtomasterAsync("B" + "Problema con la conexión al
// sensor de RC.");

_socket.Dispose();
_socket = null;
}
}

80

Potrebbero piacerti anche