Una vez establecida la conexión entre la base de datos y mi proyecto, ya estoy en condiciones de poder almacenar los datos que capturen los sensores en la base de datos (recuerdo que me interesa almacenar tanto los datos que capture el electrocardiograma como los del acelerómetro).
Ahora mi proyecto está estructurado de la siguiente manera:
- Clase SpineManager.java. Esta es la clase principal de mi proyecto. Es la que se encarga de capturar la información de las motas y los sensores.
- DatabaseManager.java. Esta clase se encarga de gestionar toda la base de datos, es decir, de crear la conexión, de realizar las inserciones y selects en las tablas correspondiente y finalmente de cerrar la conexión.
- Register.java. Esta clase contiene la estructura de la información que capturarán los sensores para posteriormente almacenarla en la base de datos.
Cuando un sensor (ya sea el acelerómetro o el electrocardiograma) capture información, se almacenará de la siguiente manera en la base de datos:
- En primer lugar, se creará una nueva tupla en la tabla registro. Esta nueva tupla tendrá la siguiente información:
- Reg_codigo: código autonumérico que se creará automáticamente al registrar un nuevo valor de un sensor.
- Reg_fechahora: fecha y hora en qué se registra el valor capturado por el sensor.
- Sen_codigo: código del sensor que ha generado el valor registrado. El sensor puede ser de tipo acelerómetro o electrocardiograma.
- Después actualizaremos el atributo SHI_ESTADO de la tabla SHIMMER de la mota que estemos utilizando. Este atributo puede tener dos valores: 0 (cuando el sensor está inactivo) ó 1 (cuando el sensor está activo). Lo que voy a hacer es mirar si el valor está a 0, y si lo está ponerlo a 1 (debido a que la mota está enviando información y por tanto está activa).
- Finalmente crearemos una nueva tupla dentro de la tabla ACELERÓMETRO o ELECTROCARDIOGRAMA en función del tipo de sensor que recibamos los datos.
- Si recibimos los datos del ACELERÓMETRO, crearemos una nueva tupla con los siguientes atributos:
- Reg_codigo: código que permitirá relacionar los valores del acelerómetro con la fecha y hora que se han registrado y el tipo
de sensor que los ha capturado.
- Mot_eje_x: valores capturados por el eje X del acelerómetro.
- Mot_eje_y: valores capturados por el eje Y del acelerómetro.
- Mot_eje_z: valores capturados por el eje Z el acelerómetro.
- En cambio, si recibimos los datos del ELECTROCARDIOGRAMA, crearemos una nueva tupla con los siguientes atributos:
- Reg_codigo: código que permitirá relacionar los valores del
electrocardiograma con la fecha y hora que se han registrado y el tipo
de sensor que los ha capturado.
- Mot_electrodo1: valores capturados por el primer electrodo.
- Mot_electrodo2: valores capturados por el segundo electrodo.
En la siguiente imagen aparece el trozo de código que permite ejecturar los tres pasos anteriores:
 |
Imagen 5: Insertando datos en la base de datos |
Finalmente, he hecho una pequeña prueba para ver cómo se almacenaban los datos en las tablas ACELERÓMETRO o ELECTROCARDIOGRAMA:
 |
Imagen 6: Probando la inserción de datos |
No hay comentarios:
Publicar un comentario