Tabla de contenido:
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-13 06:57
Me gusta caminar y correr en el distrito en el que vivo. Disfruto el tiempo de estar solo porque siempre se me ocurren algunas ideas increíbles en este momento. Recientemente compré un sensor de movimiento inercial de 6 ejes de DFRobot. Entonces se me ocurre que por qué no hacer un podómetro de pulsera para calcular mi fuerza física. Siempre no puedo resistirme cuando llega la inspiración.
Ok, déjame ser sincero y empezar.
Paso 1: El material que puede necesitar:
Gravedad: I2C BMI160 Sensor de movimiento inercial de 6 ejes × 1
Beetle - El Arduino más pequeño × 1
Pantalla Gravity I2C OLED-2864 × 1
Mini batería de litio de 3,7 V × 1
Botón × 2
Interruptor de palanca × 1
Correa de reloj × 1
El sensor de movimiento inercial de 6 ejes BMI160 integra un acelerómetro de 3 ejes de 16 bits con un giroscopio de 3 ejes de potencia ultrabaja. Cuando el acelerómetro y el giroscopio están en modo de funcionamiento completo, el consumo de energía suele ser de unos 900 uA.
Paso 2: imprima la carcasa
La inspiración del diseño proviene de mi reloj favorito. Su pantalla está diseñada de manera simple y elegante. La manecilla de los segundos, la manecilla de los minutos y la manecilla de las horas ocupan la mayor parte del área de la pantalla, lo que nos resulta conveniente para reconocer la hora. Tiene un peso de 40 gy un precio de $ 15.
(Después de imprimir el caparazón, puede rociar pintura negra en las partes negras para que el color acordado sea uniforme).
A menudo recojo material abrasivo. Es una especie de mi pasatiempo. Después de hurgar en cofres y alacenas, finalmente encontré un Yakeli cuyo color es muy similar al de OLED. Entonces decido cortarlo y usarlo como panel.
Paso 3: conecte el circuito
Tanto OLED como BMI160 tienen interfaz I2C, por lo que solo necesita soldarlos en la interfaz I2C correspondiente de Beetle.
Paso 4: Grabación del programa
Revisé directamente el programa de podómetro en la biblioteca BMI160. Agregue la función millis () para convertir el tiempo de actividad del sistema en cronómetro. Agrego el código de visualización de la biblioteca de caracteres u8g. Después de probar la fuente en el archivo principal u8g.h una por una, encontré que la fuente freedoomr es genial para mí.
El código de conversión del tiempo de actividad del sistema en cronómetro se muestra a continuación:
unsigned int ss = 1000; unsigned int mi = ss * 60; minuto largo = t0 / mi; segundo largo = (t0-minuto * mi) / ss; long milliSecond = sysTime-minuto * mi-segundo * ss; strTime [0] = (minuto% 60) / 10 + '0'; strTime [1] = minuto% 60% 10 + '0'; strTime [3] = (segundo% 60) / 10 + '0'; strTime [4] = segundo% 60% 10 + '0'; strTime [6] = milisegundos / 100 + '0'; strTime [7] = (milisegundos% 100) / 10 + '0';
Paso 5: suelde e instale
Creo que este paso es el más difícil, porque después de diseñar la distribución del espacio e instalar las piezas con cuidado, enciendo el interruptor y descubrí que la cosa no funcionaba. Una vez más, he cortado accidentalmente uno o dos cables durante la instalación. Pero creo en “donde hay paciencia, hay camino”. Después de muchos fracasos, finalmente me llega el éxito.
Use una amoladora eléctrica para perforar un orificio de 1 mm en ambos extremos de la carcasa, instale todas las piezas juntas y luego todo el proyecto estará terminado.
Puede notar que hay dos botones en el lado izquierdo, el inferior es para el cronómetro, entonces, ¿qué pasa con el superior?
¡Para correr de noche! El botón superior se usa para controlar los cuatro LED de 5 mm (llené la grieta entre el orificio y el interruptor con pegamento uv en un color a juego para hacer que la pulsera sea más exquisita).
La posición de los cuatro LED está de acuerdo con el ángulo de movimiento de los brazos durante la carrera de las personas. El suelo siempre estará iluminado sin importar cómo se mueva el brazo.
Este podómetro de pulsera no solo me ayuda a calcular mi fuerza física, sino que también hace que sea más seguro correr de noche. Qué buen material, vale la pena tener uno.