SlideShare una empresa de Scribd logo
HOW TO DEVELOP SENSOR UP DOWN WEAR 
(Moto 360) 
 
 
 
 
Este tutorial explica cómo desarrollar una aplicaciòn wear que permita reconocer los                       
movimientos verticales de la mano. Y está basado en los ejemplos del Android Studio  
 
El algoritmo para verificar si el movimiento es hacia arriba o hacia abajo, parte primero                             
definiendo nuestro punto base o intermedio, que es nuestro punto de gravedad. Èste punto                           
de gravedad, partiendo que la gravedad de la tierra es de 9,8m/s​2
y suponiendo que el                               
usuario no va a mantener el brazo totalmente horizontal, definimos nuestro punto de                         
gravedad en 7m/s​2
  
 
Así entonces, cuando el sensor de movimiento se active, se verifica contra nuestro punto de                             
gravedad: si es mayor a nuestro punto, es porque la mano está hacia abajo; y si es menor,                                   
es porque la mano está hacia arriba. 
 
Cada movimiento detectado como “arriba” o “abajo”, es verificado por mínimo dos                       
segundos, es decir que registra cuando hay mìimo dos segundos en cada movimiento. 
 
NOTA: El algoritmo está definido para llevar el reloj en la mano izquierda. Si se desea hacer                                 
para la mano derecha, se deben cambiar las validaciones del punto de gravedad.   
 
Ahora sí procedamos a desarrollar. 
 
Primero creamos nuestro proyecto, donde definimos que es wear y unos simples layouts.                         
No hay necesidad de crear aplicación móvil, sólo wear. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Lo primero que debemos hacer es agregar la librería de suport, que nos ayudará con el                               
adaptador del fragmento. 
 
compile ​'com.android.support:support­v13:23.1.0' 
 
 
 
 
 
 
 
Una vez sincronicemos, ya podemos utilizarlo en nuestro adaptador. 
 
Pero antes debemos agregar en nuestro manifiesto, los permisos para que vibre. Cada                         
múltiplo de 10 en el contador de ejercicios, vibrará el reloj, para avisar al usuario. 
 
 
 
 
 
 
 
 
 
 
 
Creamos el adaptador encargado de gestionar los fragmentos.  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Creamos los dos fragmentos. El del contador y el que se encargará de resetear el contador.  
 
Éste último simplemente pondrá el contador nuevamente en cero; mientras que el primero                         
se encargará tanto de la animación, como del conteo cada vez que se efectúe un ejercicio                               
Up/Down. 
 
Dentro del activity delegamos los métodos encargados de la lógica, dentro de la                         
implementación de los métodos que se debe sobre escribir de la interfaz                       
SensorEventListener   
 
 
 
 
y los métodos que toca sobre escribir. 
 
 
 
 
Configuramos los accesos a las SharedPreferences y la vibración del wear, en la clase Utils. 
 
Finalmente compilamos y después de tener nuestro wear disponible para debug (ver, ​Debug                         
android wear​) 
 
  
 
 
 
 
 
 
 
 
 
 
Jose Fernando Berna Molano 
@josefbernam 
GitHub: ​https://goo.gl/Lf4jzf  
Youtube: ​https://goo.gl/TyXqsB  

Más contenido relacionado

Destacado

Das Problem der Moral 18.10.2011
Das Problem der Moral 18.10.2011Das Problem der Moral 18.10.2011
Das Problem der Moral 18.10.2011
Sabine Döring
 
Base de datos
Base de datosBase de datos
Base de datos
Jairid Tu Flow
 
Jurisdiccion 3
Jurisdiccion 3Jurisdiccion 3
Cerebro
CerebroCerebro
Flash profesional 8
Flash profesional 8Flash profesional 8
Flash profesional 8
Edgar Valdez
 
Preentacion1
Preentacion1Preentacion1
Preentacion1
Mayte Juarez
 
Manual de access angelicamoh
Manual de access angelicamohManual de access angelicamoh
Manual de access angelicamoh
angelicamoh
 
Unidad ppt
Unidad pptUnidad ppt
Unidad ppt
MARXELORCON
 
Resume Peter Keith Schuback 2 - 2 - 2017
Resume Peter Keith Schuback 2 - 2 - 2017Resume Peter Keith Schuback 2 - 2 - 2017
Resume Peter Keith Schuback 2 - 2 - 2017
Peter Schuback
 
La planta
La plantaLa planta
La planta
paolaquinta
 
Sexto grado grupo 3
Sexto grado grupo 3Sexto grado grupo 3
Sexto grado grupo 3
amirasalas
 
Menu Animado para Wear Developer
Menu Animado para Wear DeveloperMenu Animado para Wear Developer
Menu Animado para Wear Developer
Jose Berna
 
Base de datos
Base de datosBase de datos
Base de datos
Jairid Tu Flow
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
gaby1404
 
Sistema linux
Sistema linuxSistema linux
Sistema linux
bencalderon
 
Presentacion de diana
Presentacion de dianaPresentacion de diana
Presentacion de diana
Delinda95
 
Vocabulario de tecnologia
Vocabulario de tecnologiaVocabulario de tecnologia
Vocabulario de tecnologia
allerinavila
 
Diapositivas codigo del ejercico profe
Diapositivas  codigo del ejercico profeDiapositivas  codigo del ejercico profe
Diapositivas codigo del ejercico profe
tarinm
 

Destacado (20)

Das Problem der Moral 18.10.2011
Das Problem der Moral 18.10.2011Das Problem der Moral 18.10.2011
Das Problem der Moral 18.10.2011
 
Weihrauch mueller studie_individuelle_schwellen_hrv
Weihrauch mueller studie_individuelle_schwellen_hrvWeihrauch mueller studie_individuelle_schwellen_hrv
Weihrauch mueller studie_individuelle_schwellen_hrv
 
Base de datos
Base de datosBase de datos
Base de datos
 
Jurisdiccion 3
Jurisdiccion 3Jurisdiccion 3
Jurisdiccion 3
 
Cerebro
CerebroCerebro
Cerebro
 
Flash profesional 8
Flash profesional 8Flash profesional 8
Flash profesional 8
 
Preentacion1
Preentacion1Preentacion1
Preentacion1
 
Manual de access angelicamoh
Manual de access angelicamohManual de access angelicamoh
Manual de access angelicamoh
 
Unidad ppt
Unidad pptUnidad ppt
Unidad ppt
 
Resume Peter Keith Schuback 2 - 2 - 2017
Resume Peter Keith Schuback 2 - 2 - 2017Resume Peter Keith Schuback 2 - 2 - 2017
Resume Peter Keith Schuback 2 - 2 - 2017
 
Renza
RenzaRenza
Renza
 
La planta
La plantaLa planta
La planta
 
Sexto grado grupo 3
Sexto grado grupo 3Sexto grado grupo 3
Sexto grado grupo 3
 
Menu Animado para Wear Developer
Menu Animado para Wear DeveloperMenu Animado para Wear Developer
Menu Animado para Wear Developer
 
Base de datos
Base de datosBase de datos
Base de datos
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
Sistema linux
Sistema linuxSistema linux
Sistema linux
 
Presentacion de diana
Presentacion de dianaPresentacion de diana
Presentacion de diana
 
Vocabulario de tecnologia
Vocabulario de tecnologiaVocabulario de tecnologia
Vocabulario de tecnologia
 
Diapositivas codigo del ejercico profe
Diapositivas  codigo del ejercico profeDiapositivas  codigo del ejercico profe
Diapositivas codigo del ejercico profe
 

Similar a Desarrollando sensor up:down para wear

Control brazo robot
Control brazo robotControl brazo robot
Control brazo robot
toni
 
App inventor 2 cronometro
App inventor 2 cronometroApp inventor 2 cronometro
App inventor 2 cronometro
Noé Arpasi
 
Cronómetro con MIT App Inventor 2
Cronómetro con MIT App Inventor 2Cronómetro con MIT App Inventor 2
Cronómetro con MIT App Inventor 2
jubacalo
 
Lego midstorms guia de usuario parte 3
Lego midstorms guia de usuario parte 3Lego midstorms guia de usuario parte 3
Lego midstorms guia de usuario parte 3
Julian Daniel Rueda Avila
 
Tracker
TrackerTracker
Tracker
ropalna
 
sensores robot nxt
sensores robot nxtsensores robot nxt
sensores robot nxt
cscshshs
 
Programación silvia valverde
Programación silvia valverdeProgramación silvia valverde
Programación silvia valverde
Silvia Vg
 
Práctica 4 Física I Cinemática en una Dimensión
Práctica 4 Física I Cinemática en una DimensiónPráctica 4 Física I Cinemática en una Dimensión
Práctica 4 Física I Cinemática en una Dimensión
CARMENCONCEPCINLEDEZ
 
Trabajo 2 periodo 2
Trabajo 2 periodo 2Trabajo 2 periodo 2
Trabajo 2 periodo 2
lacatorce
 
Guia de usuario 3 - 4
Guia de usuario 3 - 4Guia de usuario 3 - 4
Guia de usuario 3 - 4
Nico Fonseca
 
Trabajo lego
Trabajo legoTrabajo lego
Trabajo lego
SebastianBotero11
 
Trabajo lego
Trabajo legoTrabajo lego
Trabajo lego
JuanBenavides902
 
Unidad 5 Programación de dispositivos moviles
Unidad 5 Programación de dispositivos movilesUnidad 5 Programación de dispositivos moviles
Unidad 5 Programación de dispositivos moviles
kabis_yadira
 
3 contar, mientras
3  contar, mientras3  contar, mientras
3 contar, mientras
Visemi VI
 
Acceder al menú de programación nxt
Acceder al menú de programación nxtAcceder al menú de programación nxt
Acceder al menú de programación nxt
juansantiago2099
 
Movimiento rectilíneo uniformemente acelerado practica 1 cinemática y dinámica
Movimiento rectilíneo uniformemente acelerado practica 1 cinemática y dinámicaMovimiento rectilíneo uniformemente acelerado practica 1 cinemática y dinámica
Movimiento rectilíneo uniformemente acelerado practica 1 cinemática y dinámica
Jezus Infante
 
Controlador pid para posición de un motor dc
Controlador pid para posición de un motor dcControlador pid para posición de un motor dc
Controlador pid para posición de un motor dc
Ever chipana
 
Taller de algoritmos
Taller de algoritmosTaller de algoritmos
Taller de algoritmos
10-02
 
Manual de funciones del brazo robótico
Manual de funciones del brazo robóticoManual de funciones del brazo robótico
Manual de funciones del brazo robótico
juanda112017
 
Presentación2
Presentación2Presentación2

Similar a Desarrollando sensor up:down para wear (20)

Control brazo robot
Control brazo robotControl brazo robot
Control brazo robot
 
App inventor 2 cronometro
App inventor 2 cronometroApp inventor 2 cronometro
App inventor 2 cronometro
 
Cronómetro con MIT App Inventor 2
Cronómetro con MIT App Inventor 2Cronómetro con MIT App Inventor 2
Cronómetro con MIT App Inventor 2
 
Lego midstorms guia de usuario parte 3
Lego midstorms guia de usuario parte 3Lego midstorms guia de usuario parte 3
Lego midstorms guia de usuario parte 3
 
Tracker
TrackerTracker
Tracker
 
sensores robot nxt
sensores robot nxtsensores robot nxt
sensores robot nxt
 
Programación silvia valverde
Programación silvia valverdeProgramación silvia valverde
Programación silvia valverde
 
Práctica 4 Física I Cinemática en una Dimensión
Práctica 4 Física I Cinemática en una DimensiónPráctica 4 Física I Cinemática en una Dimensión
Práctica 4 Física I Cinemática en una Dimensión
 
Trabajo 2 periodo 2
Trabajo 2 periodo 2Trabajo 2 periodo 2
Trabajo 2 periodo 2
 
Guia de usuario 3 - 4
Guia de usuario 3 - 4Guia de usuario 3 - 4
Guia de usuario 3 - 4
 
Trabajo lego
Trabajo legoTrabajo lego
Trabajo lego
 
Trabajo lego
Trabajo legoTrabajo lego
Trabajo lego
 
Unidad 5 Programación de dispositivos moviles
Unidad 5 Programación de dispositivos movilesUnidad 5 Programación de dispositivos moviles
Unidad 5 Programación de dispositivos moviles
 
3 contar, mientras
3  contar, mientras3  contar, mientras
3 contar, mientras
 
Acceder al menú de programación nxt
Acceder al menú de programación nxtAcceder al menú de programación nxt
Acceder al menú de programación nxt
 
Movimiento rectilíneo uniformemente acelerado practica 1 cinemática y dinámica
Movimiento rectilíneo uniformemente acelerado practica 1 cinemática y dinámicaMovimiento rectilíneo uniformemente acelerado practica 1 cinemática y dinámica
Movimiento rectilíneo uniformemente acelerado practica 1 cinemática y dinámica
 
Controlador pid para posición de un motor dc
Controlador pid para posición de un motor dcControlador pid para posición de un motor dc
Controlador pid para posición de un motor dc
 
Taller de algoritmos
Taller de algoritmosTaller de algoritmos
Taller de algoritmos
 
Manual de funciones del brazo robótico
Manual de funciones del brazo robóticoManual de funciones del brazo robótico
Manual de funciones del brazo robótico
 
Presentación2
Presentación2Presentación2
Presentación2
 

Desarrollando sensor up:down para wear

  • 1. HOW TO DEVELOP SENSOR UP DOWN WEAR  (Moto 360)          Este tutorial explica cómo desarrollar una aplicaciòn wear que permita reconocer los                        movimientos verticales de la mano. Y está basado en los ejemplos del Android Studio     El algoritmo para verificar si el movimiento es hacia arriba o hacia abajo, parte primero                              definiendo nuestro punto base o intermedio, que es nuestro punto de gravedad. Èste punto                            de gravedad, partiendo que la gravedad de la tierra es de 9,8m/s​2 y suponiendo que el                                usuario no va a mantener el brazo totalmente horizontal, definimos nuestro punto de                          gravedad en 7m/s​2      Así entonces, cuando el sensor de movimiento se active, se verifica contra nuestro punto de                              gravedad: si es mayor a nuestro punto, es porque la mano está hacia abajo; y si es menor,                                    es porque la mano está hacia arriba.    Cada movimiento detectado como “arriba” o “abajo”, es verificado por mínimo dos                        segundos, es decir que registra cuando hay mìimo dos segundos en cada movimiento.    NOTA: El algoritmo está definido para llevar el reloj en la mano izquierda. Si se desea hacer                                  para la mano derecha, se deben cambiar las validaciones del punto de gravedad.      Ahora sí procedamos a desarrollar.    Primero creamos nuestro proyecto, donde definimos que es wear y unos simples layouts.                          No hay necesidad de crear aplicación móvil, sólo wear.                                 
  • 2. Lo primero que debemos hacer es agregar la librería de suport, que nos ayudará con el                                adaptador del fragmento.    compile ​'com.android.support:support­v13:23.1.0'                Una vez sincronicemos, ya podemos utilizarlo en nuestro adaptador.    Pero antes debemos agregar en nuestro manifiesto, los permisos para que vibre. Cada                          múltiplo de 10 en el contador de ejercicios, vibrará el reloj, para avisar al usuario.                        Creamos el adaptador encargado de gestionar los fragmentos.                                 Creamos los dos fragmentos. El del contador y el que se encargará de resetear el contador.    
  • 3. Éste último simplemente pondrá el contador nuevamente en cero; mientras que el primero                          se encargará tanto de la animación, como del conteo cada vez que se efectúe un ejercicio                                Up/Down.    Dentro del activity delegamos los métodos encargados de la lógica, dentro de la                          implementación de los métodos que se debe sobre escribir de la interfaz                        SensorEventListener            y los métodos que toca sobre escribir.          Configuramos los accesos a las SharedPreferences y la vibración del wear, en la clase Utils.    Finalmente compilamos y después de tener nuestro wear disponible para debug (ver, ​Debug                          android wear​)                           Jose Fernando Berna Molano  @josefbernam  GitHub: ​https://goo.gl/Lf4jzf   Youtube: ​https://goo.gl/TyXqsB