
A ideia de fazer um jogador inclinado se mudar para jogos de computador não é nova, a Microsoft já tem o Kinect há muito tempo, todos os tipos de sensores da Sony, Nintendo e agora também acessórios para capacetes de realidade virtual que exigem que você mova os braços e as pernas durante o jogo.
No entanto, a experiência pessoal ao usar esses dispositivos mostrou que:
1. Você pode jogar apenas aqueles jogos que são nitidamente afiados por sensores de movimento. E aqueles cujo jogo favorito é "Zumbis engraçados na ilha dos inocentes", lançado no século passado?
2. Os movimentos no jogo não coincidem com o nível de carga confortável / necessário. Ou você se cansa rapidamente ou os músculos não recebem a carga certa.
Portanto, surgiu a idéia de conectar o simulador esportivo compacto mais simples (stepper) a um computador e fazer com que o computador me permitisse jogar apenas quando observo um certo ritmo de exercício.
Como resultado, no primeiro dia de uso do dispositivo resultante, dei mais passos do que em um ano de abordagens irregulares e lentas a um simulador semelhante durante o intervalo para o almoço, e um mês depois esmaguei as paradas de borracha no lixo. Bem, eu ainda não fiz um buraco no chão e não falhei com os vizinhos abaixo.
Quem se importa em repetir minha experiência - continue lendo.
Brevemente sobre como funciona
Quando você pisa no stepper, um ímã se move nele, fechando e abrindo o sensor embutido (chave reed), devido ao qual o número de etapas é contado e exibido.
Instalaremos um sensor semelhante ao lado dele, conectá-lo à placa Arduino e até o computador com um cabo USB. O Arduino informa o programa no computador quando você dá o próximo passo. Se você não tomar muitas medidas, o programa instrui o Arduino a chamar sua atenção primeiro para os LEDs piscando (vermelho, depois azul e depois ambos) e depois ativar o chiado irritante. Se isso não ajudar, o programa escurece a imagem na tela do computador.
Acredite, isso funciona bem. Você imediatamente retoma a caminhada.
Inicialmente, tentei bloquear o mouse / teclado como punição pela baixa intensidade do exercício físico. Mas isso acabou sendo desnecessário / irritante, basta reduzir um pouco o conforto da comunicação com o computador, mas não bloquear o controle.
Experiência e Perspectivas
Comecei a me mover muito mais, e isso é definitivamente uma vantagem. Mas existem sutilezas.
Infelizmente, um stepper barato altera suas características nos primeiros minutos de uso. O óleo nos amortecedores aquece, fica mais fino e fica mais fácil de se mover. Até na minha caixa diz do stepper que ele foi projetado para 20 minutos de uso contínuo.
O programa está atualmente configurado para um ritmo de carregamento. Idealmente, ele deve ser ajustado manualmente e dentro do cronograma. Melhor ainda, dependendo do sensor de frequência cardíaca.
Além disso, as pernas treinam muito bem. Mas e as mãos e tudo mais? Afinal, as mãos estão ocupadas pelo teclado e mouse?
Tentei libertar minhas mãos usando os controles do computador, rastreando meu olhar e voz. Bem ... Você pode jogar xadrez como esse em um computador, mas não consegui um jogo dinâmico.
Assista a um vídeo sobre como tentar tocar sem as mãos (usando programas que escrevi para pessoas com deficiência)Controle de voz no jogo:
Controle de jogo no jogo:
Portanto, enquanto a carga nas mãos é uma questão em aberto. Talvez eu tente colocar botões / sensores de pressão / giroscópios diretamente nas alças dos simuladores.
Em geral, acredito que os centros de fitness, na forma em que estão agora, sobreviveram a si mesmos. Chegará a hora dos centros de entretenimento, onde a atividade física será estimulada por algum tipo de entretenimento, por exemplo, jogos / competições de computador.
Enquanto isso, vamos fazer em casa.
Do que precisamos?
1. Um computador elevado. Isso é importante. De pé no stepper, você deve ter acesso confortável ao teclado e mouse. Eu construí uma prateleira na parede sueca.
2. O simulador "passo a passo". Tirei o “Domyos Mini Stepper Essential” na Decathlon. Mas ele viu um modelo muito semelhante no Sportmaster. Em geral, parece que todos os steppers fazem de acordo com os mesmos desenhos, fazendo alterações cosméticas mínimas.
3. O kit com a placa Arduino é o mais fácil, se incluir:
- Placa Arduino (no meu caso - o análogo chinês do Arduino Nano)
- Fio USB para conectar a um computador
- placa de circuito e fios
- 2 LEDs, 2 resistores 220 Ohms, 1 resistência 10 kOhm
Você pode levar todos esses elementos individualmente.
4. Um transdutor piezoelétrico classificado para tensões de 5 volts. No meu está escrito - HPM-14A.
5. interruptor de palheta em miniatura, por exemplo, MKA-10110A. Um interruptor de palheta maior não funciona bem aqui! Verificado!
6. fio longo de dois fios para conectar o interruptor reed no simulador e no Arduino
7. uma tampa de uma velha caneta de feltro para colocar um interruptor de palheta nela
8. Ferro de solda, broca, pinça, pistola de cola, testador / multímetro.
Instruções passo a passo
1. Adicione o interruptor reed ao stepper
Dobre delicadamente um dos terminais do interruptor reed, segurando-o com uma pinça na base, para que a caixa de vidro não se quebre quando dobrada! Acabei de perder um interruptor de palheta.

Fios de solda:

Colocamos o interruptor de palheta na tampa da caneta com ponta de feltro e o instalamos, da mesma forma que o padrão, mas do outro lado. Definir imediatamente o local certo não funcionará. O lugar certo é quando o interruptor reed funciona exatamente no meio da etapa, quando o pedal direito está nivelado com o esquerdo. Portanto, primeiro colamos com fita adesiva e movemos para a esquerda e para a direita até encontrar a posição correta (precisamos de um testador para ver quando o contato fecha-se):

Finalmente, fixamos a tampa com o sensor, derramando cola da pistola de cola. Até a cola finalmente endurecer, você ainda pode ajustar levemente a posição do sensor.
Os fios do sensor, trazidos pelo orifício perfurado, fazem sentido para equipar com conectores facilmente removíveis (retirados de um conjunto com Arduino). Então, muitas vezes, ele tocou o arame com o pé, e isso o salvou de um penhasco.

2. Montamos o circuito com a placa Arduino

Para mim, isso se transformou em tal entrelaçamento de fios:

3. Preencha o programa no Arduino
Código do programa// , int brightnessB=LOW, brightnessR=LOW; int blinkingB=0; int blinkingR=0; int speakerPin=8; int BlueLED=10; int RedLED=11; int freq[]={3830,3038,2550,3038}; int cur_freq=0; int buzzer_value=0; volatile int stepper=0, old_stepper=0; // pin void step() { stepper=!stepper; Serial.print(stepper); Serial.flush(); } void setup() { pinMode(10,OUTPUT); pinMode(11,OUTPUT); pinMode(2,INPUT); Serial.begin(9600); //attachInterrupt(0,step,CHANGE); } void loop() { delay (200); // 1. while(Serial.available()) { switch(Serial.read()) { case '0': // , brightnessB=HIGH; blinkingB=0; brightnessR=HIGH; blinkingR=0; buzzer_value=1; break; case '1': // . brightnessB=LOW; blinkingB=1; brightnessR=HIGH; blinkingR=1; buzzer_value=0; break; case '2': // brightnessB=HIGH; blinkingB=1; brightnessR=LOW; blinkingR=0; buzzer_value=0; break; case '3':// brightnessB=LOW; blinkingB=0; brightnessR=HIGH; blinkingR=1; buzzer_value=0; break; case '4': // brightnessB=LOW; blinkingB=0; brightnessR=HIGH; blinkingR=0; buzzer_value=0; break; case '5': // . brightnessB=LOW; blinkingB=0; brightnessR=LOW; blinkingR=0; buzzer_value=0; break; } } // , , if(1==blinkingB) { if(HIGH==brightnessB) brightnessB=LOW; else brightnessB=HIGH; } if(1==blinkingR) { if(HIGH==brightnessR) brightnessR=LOW; else brightnessR=HIGH; } digitalWrite(RedLED,brightnessR); digitalWrite(BlueLED,brightnessB); if(1==buzzer_value) { tone(speakerPin, freq[cur_freq], 200); cur_freq++; if(cur_freq>3) {cur_freq=0;} } stepper=digitalRead(2); if(old_stepper!=stepper) { Serial.print(stepper); Serial.flush(); old_stepper=stepper; } }
Verificamos que funciona - no Serial Monitor, que está no ambiente de desenvolvimento do Arduino, você pode ver uma linha crescente de zeros e uns quando pisar no simulador.

E se você dirige em números e os envia para o Arduino, ele deve reagir assim:
5 - LEDs apagados
4 - acende em vermelho
3 - vermelho piscando
2 - azul piscando
1 - vermelho e depois azul pisca
0 - O squeaker chia. Ambos os diodos estão ligados.
4. Execute o programa no computador
O programa DimForce.exe pode ser utilizado no github (inclusive na forma de códigos-fonte):
https://github.com/MastaLomaster/DimForceAtualmente, o programa está conectado ao Arduino através da porta COM9. Se esse não for o seu caso, configure a porta do Arduino como COM9. Ou recompile o programa corrigindo a linha no arquivo DFSerial.cpp:
Port = CreateFile(L"\\\\.\\COM9", GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, NULL);
Quando você pisa no simulador, na janela do programa, o zero deve mudar em um e vice-versa:

Se você parar de andar, os LEDs piscarão mais irritantemente e, em seguida, o squeaker acenderá e, no final, a tela escurecerá um pouco.
Não pare! Fique saudável!