Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Gosto de caminhar e correr no bairro em que moro. Gosto do tempo para ficar sozinho porque algumas ideias incríveis sempre vêm a mim neste momento. Recentemente, comprei um sensor de movimento inercial de 6 eixos da DFRobot. Então me ocorre que por que não fazer um pedômetro de pulseira para calcular minha força física. Sempre não consigo resistir quando a inspiração vem.
Ok, deixe-me ser direto e apenas começar.
Etapa 1: O material de que você pode precisar:
Gravidade: I2C BMI160 Sensor de movimento inercial de 6 eixos × 1
Besouro - O menor Arduino × 1
Tela Gravity I2C OLED-2864 × 1
Bateria Mini-Lítio 3,7 V × 1
Botão × 2
Chave de alternância × 1
Pulseira × 1
O sensor de movimento inercial de 6 eixos BMI160 integra acelerômetro de 3 eixos de 16 bits com giroscópio de 3 eixos de potência ultrabaixa. Quando o acelerômetro e o giroscópio estão no modo de operação total, o consumo de energia é normalmente de cerca de 900 uA.
Etapa 2: Imprima o Shell
A inspiração do design vem do meu relógio favorito. Sua tela é projetada de forma simples e elegante. O ponteiro dos segundos, ponteiro dos minutos e ponteiro das horas ocupam a maior parte da área do mostrador, o que é conveniente para reconhecermos as horas. Ele pesa 40g e custa $ 15.
(Depois de imprimir a casca, você pode borrifar tinta preta nas partes pretas para fazer a cor combinada de maneira uniforme.)
Costumo coletar materiais abrasivos. É meio que meu hobby. Depois de vasculhar baús e armários, finalmente encontrei um Yakeli cuja cor é muito parecida com a do OLED. Decidi cortá-lo e usá-lo como painel.
Etapa 3: conectar o circuito
OLED e BMI160 têm interface I2C, então você só precisa soldá-los na interface I2C correspondente do Beetle.
Etapa 4: Gravação do programa
Eu revisei diretamente o programa de pedômetro na biblioteca BMI160. Adicione a função millis () para converter o tempo de atividade do sistema em cronômetro. Eu adiciono o código de exibição da biblioteca de caracteres u8g. Depois de testar a fonte do arquivo u8g.h head, uma por uma, descobri que a fonte freedoomr é ótima para mim.
O código de conversão do tempo de atividade do sistema em cronômetro é mostrado abaixo:
sem sinal int ss = 1000; sem sinal int mi = ss * 60; minuto longo = t0 / mi; segundo longo = (t0-minuto * mi) / ss; long miliSegundo = 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] = miliSegundo / 100 + '0'; strTime [7] = (miliSegundo% 100) / 10 + '0';
Etapa 5: Soldar e instalar
Acho que essa etapa é a mais difícil, porque depois que projetei a distribuição do espaço e instalei as peças com cuidado, liguei o interruptor e descobri que a coisa não funcionava. Mais uma vez, um ou dois fios foram cortados por mim acidentalmente durante a instalação. Mas eu acredito em “onde há paciência, há um caminho”. Depois de muitos fracassos, o sucesso finalmente chega para mim.
Use um moedor elétrico para fazer um furo de 1 mm em ambas as extremidades da carcaça, instale todas as peças juntas e, em seguida, todo o projeto está concluído agora.
Você pode notar que há dois botões do lado esquerdo, o inferior é para cronômetro, então e o superior?
Para correr à noite! O botão superior é usado para controlar os quatro LEDs de 5 mm (preenchi a fenda entre o orifício e o interruptor com cola UV da cor correspondente para tornar a pulseira mais requintada).
A posição dos quatro LEDs está de acordo com o ângulo de oscilação dos braços durante a corrida das pessoas. O chão sempre estará iluminado, não importa como o braço se move.
Este pedômetro de pulseira não só me ajuda a calcular minha força física, mas também torna mais seguro correr à noite. Coisas tão boas, vale a pena ter uma.