Está en la página 1de 6

Alumno(s): Brian Martin Torres Fuentes Fecha: 10/03/2020

Omar Martínez Gaytán

OBJETIVO
Creación de una aplicación que permita el uso de uno de los sensores del dispositivo en este caso el acelerómetro
para logra mover un objeto dentro de la aplicación.

MARCO TEÓRICO
La plataforma Android proporciona varios sensores que te permiten supervisar el movimiento de un dispositivo.

Las arquitecturas disponibles varían según el tipo de sensor:

 Los sensores vectoriales de rotación, de gravedad, de aceleración lineal, de movimiento significativo, de


contador de pasos y de detector de pasos se basan en hardware o en software.
 Los sensores del acelerómetro y del giroscopio siempre están basados en hardware
.
La mayoría de los dispositivos Android tienen un acelerómetro, y ahora muchos incluyen un giroscopio. La
disponibilidad de los sensores basados en software es más variada porque, a menudo, dependen de uno o más
sensores de hardware para obtener sus datos. Según el dispositivo, estos sensores basados en software pueden
obtener sus datos del acelerómetro y el magnetómetro, o del giroscopio.

Los sensores de movimiento son útiles para supervisar el movimiento del dispositivo, como la inclinación, la
vibración, la rotación o el balanceo. El movimiento suele ser un reflejo de la interacción directa del usuario (por
ejemplo, un jugador que conduce un vehículo o controla una pelota), pero también puede ser un reflejo del entorno
físico en el que se encuentra el dispositivo (por ejemplo, moviéndose contigo mientras viajas en automóvil). En el
primer caso, estás supervisando un movimiento relacionado con el marco de referencia del dispositivo o de tu
aplicación; en cambio, en el segundo, estás supervisando un movimiento relacionado con el marco de referencia
terrestre. Los sensores de movimiento por sí solos no suelen utilizarse para supervisar la posición del dispositivo,
pero pueden usarse con otros sensores, como el de campo geomagnético, para determinar la posición de un
dispositivo en relación con el marco de referencia terrestre (consulta Sensores de posición para obtener más
información).

Todos los sensores de movimiento muestran matrices multidimensionales de valores de sensor para cada
SensorEvent. Por ejemplo, durante un evento de un solo sensor, el acelerómetro muestra datos de fuerza de
aceleración para los tres ejes de coordenadas, y el giroscopio muestra datos de velocidad de rotación para esos
mismos ejes. Estos valores de datos se muestran en una matriz float (values), junto con otros parámetros
SensorEvent. En la tabla 1, se resumen los sensores de movimiento disponibles en la plataforma Android.

Acelerómetro lineal.
El sensor de aceleración lineal proporciona un vector tridimensional que representa la aceleración en cada eje del
dispositivo, sin incluir la gravedad. Puedes utilizar este valor para detectar gestos. El valor también puede servir
como entrada a un sistema de navegación inercial, que utiliza la navegación por estima. En el siguiente código, se
muestra cómo obtener una instancia del sensor de aceleración lineal predeterminado:

DESARROLLO

Comenzamos con la creación de la clase MiPelota, en ella crearemos todo e codigo necesario para la creación de
la aplicación.
Como se muestra en la imagen anterior extenderemos de la clase View e implementaremos de la clase
SensorEventListener,
Luego de ello crearemos las variables que utilizaremos más adelante en el desarrollo del codigo.
Debemos crea un objeto de tipo pincel con el cual dibujaremos nuestra figura en nuestra aplicación y asi mismo
creamos las variables para darle un tamaño como ancho, alto y por ultimo crearemos nuestros ejes por los cuales
nuestro dibujo se moverá a través de nuestra pantalla.

Ahora se debe verificar que nuestro dispositivo cuente con el sensor necesario para esta práctica, en este caso el
sensor de acelerómetro. Eso se consigue con las primeras tres líneas de codigo que se muestran a continuación.}
La última de ellas es para obtener las medidas de la pantalla del dispositivo en la que se instalara la app.

Pasaremos a nuestro método onSensorChanged, en el obtendremos los valores de nuestros vectores x,y,z y se
harán las respectivas comparaciones.

Dentro del primer if se hacen los cálculos necesarios para que nuestro “dibujo” no sobrepase el ancho de nuestra
pantalla, osea nuestro ejex, en los demás ifs se hace lo mismo, pero para su eje correspondiente.

Para nuestro ejeZ es diferente pues nuestro dibujo esta realizado en 2 dimensiones no 3 asi que no se tomara en
cuenta.

Av. Educación Superior No. 2000 Tels. 01 (445) 45 774 68 al 71 Ext.107 Fax Ext.127
Col. Benito Juárez. Uriangato, Gto. sistemas@itsur.edu.mx
C.P. 38980 Apartado Postal No. 61 www.itsur.edu.mx
Por último, tenemos nuestro último método llamado onDrawn () este realizara el dibujo sobre la pantalla de la

Av. Educación Superior No. 2000 Tels. 01 (445) 45 774 68 al 71 Ext.107 Fax Ext.127
Col. Benito Juárez. Uriangato, Gto. sistemas@itsur.edu.mx
C.P. 38980 Apartado Postal No. 61 www.itsur.edu.mx
aplicación. Aquí le damos el formato que queramos a nuestro dibujo,en nuestro caso realizaremos un dibujo
cotidiano de un campo de futbol con su respectivo circulo central y sus dos porterías además de un fondo color
verde para simular el pasto del campo.

Al final solo nos queda comprobar que nuestra aplicación funciona:

Av. Educación Superior No. 2000 Tels. 01 (445) 45 774 68 al 71 Ext.107 Fax Ext.127
Col. Benito Juárez. Uriangato, Gto. sistemas@itsur.edu.mx
C.P. 38980 Apartado Postal No. 61 www.itsur.edu.mx
Av. Educación Superior No. 2000 Tels. 01 (445) 45 774 68 al 71 Ext.107 Fax Ext.127
Col. Benito Juárez. Uriangato, Gto. sistemas@itsur.edu.mx
C.P. 38980 Apartado Postal No. 61 www.itsur.edu.mx
CONCLUSIONES

El uso de los distintos sensores de Android es bastante sencillo siempre y cuando estos se sepan usar de una
manera correcta, y se sepa cómo y con qué valores trabajan cada uno de ellos.

BIBLIOGRAFÍA

https://developer.android.com/guide/topics/sensors/sensors_motion?hl=es-419

Av. Educación Superior No. 2000 Tels. 01 (445) 45 774 68 al 71 Ext.107 Fax Ext.127
Col. Benito Juárez. Uriangato, Gto. sistemas@itsur.edu.mx
C.P. 38980 Apartado Postal No. 61 www.itsur.edu.mx

También podría gustarte