Tabla de contenido:
- Paso 1: Configuración y calibración del MPU6050
- Paso 3: Integrar los sensores al Arduino
- Paso 4: ¡Envío de datos a la nube
- Paso 5: usar 2 dispositivos al mismo tiempo
- Paso 6: ¡Mejoras, notas y planes futuros
Video: Rastreador de piernas corriendo IDC2018IOT: 6 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
Salimos con esta idea como parte del curso "Internet de las cosas" en IDC Herzliya.
El objetivo del proyecto es mejorar las actividades físicas que implican correr o caminar utilizando NodeMCU, algunos sensores y un servidor de energía. El resultado de este proyecto es un dispositivo IOT muy útil que se puede convertir en el futuro en un producto de producción real que se utilizará en todas partes. Por favor dejanos saber lo que piensas:)
Antes de comenzar, asegúrese de tener:
* Dispositivo NodeMCU.
* 1 Sensor piezoeléctrico.
* Sensor MPU6050.
* Una gran matriz.
* Cuerda elastica.
* Cuenta de Firebase.
Opcional:
* Sensor piezoeléctrico múltiple
* multiplexor
Paso 1: Configuración y calibración del MPU6050
"loading =" perezoso"
Instrucciones:
- Conecte el piezo con una resistencia de 1 M (vea la imagen adjunta).
- Sube el croquis adjunto.
- Conecte el dispositivo a un pie con la cuerda elástica.
- Abra el "trazador de serie".
- Mire el video que se adjunta a este paso.
Paso 3: Integrar los sensores al Arduino
Vimos cómo calibrar los sensores, ¡ahora vamos a integrar ambos sensores al NodeMCU!
- Conecte ambos sensores al dispositivo, use los mismos pines que en los pasos 1 + 2.
- Cargue el boceto adjunto.
- Conecte el dispositivo con los 2 sensores a un pie.
- Abra el "trazador de serie".
- Mira el video adjunto.
Paso 4: ¡Envío de datos a la nube
En este paso, conectaremos nuestro dispositivo a la nube y enviaremos datos para ver algunos gráficos increíbles.
Usaremos el protocolo MQTT y enviaremos los datos a un servidor gratuito llamado "Adafruit".
NOTA: Adafruit no admite el envío de datos unas cuantas veces por segundo, funciona a ritmos más lentos, por lo tanto, enviaremos un promedio de nuestros puntos de datos, y no los puntos de datos en sí. Transformaremos los datos de nuestros 2 sensores en datos promediados utilizando las siguientes transformaciones:
* El tiempo de detección de pasos se transformará en pasos por minuto. La duración de cada paso se puede encontrar mediante (millis () - step_timestamp), y el promedio se puede hacer usando un filtro, como vimos antes: val = val * 0.7 + new_val * 0.3.
* La potencia de paso se transformará en potencia de paso promedio. Usaremos la misma metodología de usar "max" para cada paso, pero usaremos un filtro para hacer un promedio usando el filtro promedio = promedio * 0.6 + new_val * 0.4.
Instrucciones:
- Ingrese al sitio web de Adafruit en la dirección io.adafruit.com y asegúrese de tener una cuenta.
- Cree un nuevo panel, puede llamarlo "Detector de pasos".
- Dentro del tablero, presione el botón + y seleccione "gráfico de líneas", y cree un feed llamado "steps_per_min".
- Dentro del tablero, presione el botón + y seleccione "gráfico de líneas", y cree un feed llamado "average_step_power".
- Ahora debería ver 2 gráficos vacíos para cada uno de los campos.
- Utilice el croquis adjunto y establezca la siguiente configuración:
USERNAME = su nombre de usuario de Adafruit.
CLAVE = tu clave de Adafruit
WLAN_SSID = nombre WIFI
WLAN_PASS = pase WIFI
mpuStepThreshold = Umbral del paso 2
Luego, puede conectar el dispositivo a un pie y el boceto enviará los datos de los pasos al servidor.
Paso 5: usar 2 dispositivos al mismo tiempo
¡En este paso, simularemos 2 personas que caminan con el dispositivo al mismo tiempo!
Usaremos 2 dispositivos diferentes, con los mismos puntos de datos que se explican en el paso 4.
Entonces esto es realmente fácil, hay 3 tareas simples:
1) cree feeds adicionales para los datos del segundo dispositivo, le sugerimos que proporcione una corrección posterior de "_2"
2) cambie los bloques en el tablero para presentar datos de ambos feeds.
3) cambie el nombre de los feeds en el boceto del segundo dispositivo.
4) ¡Vea los resultados!
NOTA:
Adafruit resiste los datos que llegan demasiado rápido, podría ser necesario ajustar la frecuencia con la que se envían los datos al servidor. hazlo encontrando lo siguiente en el boceto:
// Enviar cada 5 segundos sin exceder el límite de Adafruit para usuarios gratuitos. // Si usa premium o su propio servidor, no dude en cambiar. // Cada vez que envíe un punto de datos alterno. if (millis () - lastTimeDataSent> 5000) {
Paso 6: ¡Mejoras, notas y planes futuros
El principal desafío:
El principal desafío en el proyecto fue probar el NodeMCU en una actividad física. El cable USB se desconecta con frecuencia y, al intentar moverse rápido, puede haber problemas de desconexión de las clavijas. Muchas veces estábamos depurando un fragmento de código que realmente funcionaba, y el problema estaba en el ámbito físico.
Superamos este desafío llevando la computadora portátil cerca del corredor y escribiendo cada fragmento de código a la vez.
Otro desafío fue hacer que los diferentes componentes interactuaran sin problemas:
- El piezo con el acelerómetro: Soved eso como se describe en el paso 3, por una idea creativa que tuvimos.
- Los sensores con el servidor: como se describe en el paso 4, transformamos los valores en otros valores que se pueden enviar a un servidor a un ritmo más lento.
Las limitaciones del sistema:
- Necesita calibración antes de usarse.
- Necesita convertirse en un producto más rígido, que no se rompa fácilmente en una actividad física.
- El sensor piezoeléctrico no es muy preciso.
- Necesita alguna conexión wifi. (Se resuelve fácilmente usando el punto de acceso del teléfono celular)
¡Planes futuros
Ahora que tenemos un dispositivo de monitoreo de piernas completamente funcional, ¡hay más mejoras que se pueden hacer!
¡Múltiples pizeos!
- Conecte piezos a diferentes áreas del pie.
- Use multiplexor ya que NodeMCU solo admite un pin analógico.
- Puede mostrar un mapa de calor del pie para describir las áreas de impacto.
- Puede utilizar estos datos para crear alertas sobre la postura incorrecta y el equilibrio corporal.
¡Muchos dispositivos!
- Le mostramos cómo conectar 2 dispositivos al mismo tiempo, ¡pero puede conectar 22 piezos a 22 jugadores de fútbol!
- ¡Los datos se pueden exponer durante el juego para mostrar algunas métricas interesantes sobre los jugadores!
Sensores avanzados
Usamos piezo y acelerómetro, pero puedes agregar otros dispositivos que enriquecerán la salida y darán más datos:
- Láseres precisos para detectar pasos.
- Mide la distancia entre el pie y el suelo.
- Mida la distancia entre diferentes jugadores (en caso de varios dispositivos)
Recomendado:
¿Correr afecta la masa de las piernas: 13 pasos?
¿Correr afecta la masa de las piernas? ¿Correr afecta la masa / tamaño de las piernas?
¡Rastreador de escritorio COVID19 con reloj! Rastreador con tecnología Raspberry Pi: 6 pasos
¡Rastreador de escritorio COVID19 con reloj! Raspberry Pi Powered Tracker: sabemos que podemos morir en cualquier momento, incluso yo puedo morir mientras escribo esta publicación, después de todo, yo, tú, todos somos mortales. El mundo entero se estremeció por la pandemia de COVID19. Sabemos cómo prevenir esto, pero ¡oye! sabemos cómo rezar y por qué rezar, lo hacemos
Accesorio de abducción de piernas para andador pediátrico: 4 pasos
Accesorio de abducción de piernas para andador pediátrico: este instructivo le mostrará cómo hice una guía para el andador de mi hijo para ayudar a prevenir 'tijeras' o cruzar las piernas mientras camina. Un accesorio de 'equipo médico duradero' de un fabricante le costará cientos de dólares; esta es la s
Rastreador de películas - Rastreador de lanzamiento en cines con tecnología Raspberry Pi: 15 pasos (con imágenes)
Rastreador de películas: rastreador de lanzamientos teatrales con Raspberry Pi: Movie Tracker es un rastreador de lanzamientos con forma de claqueta y alimentado por Raspberry Pi. Utiliza la API de TMDb para imprimir el póster, el título, la fecha de lanzamiento y la descripción general de las próximas películas en su región, en un intervalo de tiempo específico (por ejemplo, estrenos de películas esta semana) en
Cronómetro para 30 M corriendo (Arduino): 6 pasos (con imágenes)
Cronómetro para carrera de 30 m (Arduino): este proyecto se realizó con un propósito específico en el entrenamiento de béisbol finlandés y para probar la velocidad de los jugadores junior en carrera de 30 m. Este arduino projeckt también fue un proyecto de curso en mis estudios. El proyecto tuvo algunos altibajos, pero ahora, al menos, funciona