Tabla de contenido:
- Paso 1: descargue el software relevante en su computadora
- Paso 2: hardware
- Paso 3: coloque la bicicleta en un soporte fijo para bicicletas
- Paso 4: Cargue y pruebe el código Arduino
- Paso 5: configura el controlador de YouTube
Video: Simulador de bicicleta con ajuste de velocidad en tiempo real: 5 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:42
Este proyecto utiliza un interruptor de lengüeta magnético para crear un velocímetro y controlar la velocidad de video de videos de ciclismo en primera persona en YouTube u otros medios. El Arduino calcula la mph y luego usa esa información para simular la presión de un botón de la computadora. La pulsación de este botón, junto con una extensión de Google Chrome, acelera o ralentiza el vídeo en función del cambio de velocidad. Tiene una configuración básica de hardware que aquellos que son principiantes en Arduino pueden crear fácilmente por su cuenta.
El código del velocímetro se basa en este proyecto:
Lista de hardware:
1. Arduino Leonardo
2. Cable micro USB (debe ser capaz de transferir archivos y <3 pies)
3. Interruptor de lengüeta magnético
4. Resistencia de 10k ohmios
5. Cable de calibre 22 (<4 pies)
6. Soldador
7. Soldar
8. Cinta aislante
9. Cremalleras
10. Soporte de bicicleta estacionario
11. Bicicleta
Paso 1: descargue el software relevante en su computadora
1. IDE de Arduino
2. Controlador de velocidad de video (extensión del navegador web)
una. Google Chrome
B. Firefox
Paso 2: hardware
Todas las conexiones deben soldarse y pegarse con cinta aislante. El Arduino se puede montar en la bicicleta usando una caja de plástico incluida con el Arduino (vinculado en la lista de piezas anterior). Esto es importante porque si el metal de la bicicleta está en contacto directo con los pines, podría crear conexiones no deseadas. El estuche también tiene orificios que facilitan el atar con cremallera el estuche a la bicicleta. El cable de calibre 22 debe enrollarse a lo largo del cuadro de la bicicleta y asegurarse con cinta o bridas. Asegúrese de evitar enrollar el cable en cualquier lugar donde pueda quedar atrapado en los mecanismos en movimiento.
Paso 3: coloque la bicicleta en un soporte fijo para bicicletas
Asegure la bicicleta en el soporte para bicicletas estacionario y asegúrese de que esté lo suficientemente cerca de su computadora para que el cable micro-USB llegue a su computadora. Además, asegúrese de que la distancia de visualización sea adecuada para poder ver la pantalla cómodamente. Aquí puede encontrar un tutorial sobre cómo colocar de forma segura su bicicleta en el soporte.
Paso 4: Cargue y pruebe el código Arduino
Si es nuevo en Arduino IDE, puede encontrar una página de introducción aquí. Es importante tener en cuenta que Leonardo requiere un cable micro-USC para cargar que tenga capacidades de transferencia de archivos. Muchos cables micro-USB se utilizan solo para cargar y no funcionarán. Una vez que la computadora reconozca el Arduino Leonardo, copie y pegue y cargue el siguiente código:
// Este código encuentra la velocidad de una bicicleta y la convierte en presionar el teclado de la computadora
// cálculos
// radio del neumático ~ 13,5 pulgadas // circunferencia = pi * 2 * r = ~ 85 pulgadas // velocidad máxima de 35 mph = ~ 616 pulgadas / segundo // rps máx. = ~ 7,25
#incluir
#define reed A0 // pin conectado al interruptor de lectura
// variables de almacenamiento
int reedVal; temporizador largo; // tiempo entre una rotación completa (en ms) flotador mph; radio de flotación = 13,5; // radio del neumático (en pulgadas) circunferencia de flotación; flotar vprevious; tasa de flotación;
int maxReedCounter = 100; // tiempo mínimo (en ms) de una rotación (para supresión de rebotes)
int reedCounter;
configuración vacía () {
reedCounter = maxReedCounter; circunferencia = 2 * 3,14 * radio; pinMode (lengüeta, ENTRADA); Keyboard.begin (); // CONFIGURACIÓN DEL TEMPORIZADOR: la interrupción del temporizador permite mediciones cronometradas precisas del interruptor de láminas // para obtener más información sobre la configuración de los temporizadores arduino, consulte https://arduino.cc/playground/Code/Timer1 cli (); // detener interrupciones
// establece la interrupción del timer1 a 1kHz
TCCR1A = 0; // establece todo el registro TCCR1A en 0 TCCR1B = 0; // lo mismo para TCCR1B TCNT1 = 0; // establece el conteo del temporizador para incrementos de 1khz OCR1A = 1999; // = (1/1000) / ((1 / (16 * 10 ^ 6)) * 8) - 1 // activa el modo CTC TCCR1B | = (1 < <WGM12); // Establecer el bit CS11 para 8 prescaler TCCR1B | = (1 << CS11); // habilita la interrupción de comparación del temporizador TIMSK1 | = (1 << OCIE1A); sei (); // permitir interrupciones // FIN DE LA CONFIGURACIÓN DEL TEMPORIZADOR Serial.begin (9600); }
ISR (TIMER1_COMPA_vect) {// Interrumpe a una frecuencia de 1 kHz para medir el interruptor de láminas
reedVal = digitalRead (reed); // obtiene el valor de A0 if (reedVal) {// si el interruptor reed está cerrado if (reedCounter == 0) {// ha pasado el tiempo mínimo entre pulsos vprevious = mph; retraso (500); mph = (56.8 * float (circunferencia)) / float (temporizador); // calcular millas por hora timer = 0; // reiniciar el temporizador reedCounter = maxReedCounter; // restablecer reedCounter} else {if (reedCounter> 0) {// no dejes que reedCounter sea negativo reedCounter - = 1; // disminuya reedCounter}}} else {// si el interruptor de lengüeta está abierto if (reedCounter> 0) {// no permitas que reedCounter sea negativo reedCounter - = 1; / / decrement reedCounter}} if (timer> 2000) {mph = 0; // si no hay nuevos pulsos de reed switch-tire está quieto, establezca mph en 0 vprevious = 0; } else {temporizador + = 1; // incremento del temporizador}}
void controlComp () {
if (v mph anterior) // Reducir la velocidad del video {Keyboard.press ('s'); Keyboard.releaseAll (); retraso (750); } if (vprevious == mph) // no hacer nada {; }} void loop () {// imprime mph dos veces por segundo Serial.print ("VPrevious:"); Serial.print ("\ t"); Serial.println (vprevious);
Serial.print ("MPH:");
Serial.print ("\ t"); Serial.println (mph); controlComp (); }
Una vez que el código se haya cargado correctamente, abra el monitor en serie. Sin movimiento de la rueda trasera, las "MPH" y "VPrevious" deben leer 0.00. Gire la rueda para que se acelere durante algunas revoluciones y luego disminuya la velocidad. El monitor debe leer la velocidad y escribir d para aceleración y s para desaceleración. Si no aparecen valores cuando se gira la rueda, es posible que el interruptor de lengüeta no detecte el imán. Asegúrese de que el magnético sea lo suficientemente fuerte escuchando un ruido de * tintineo * cuando el imán pasa el interruptor.
Paso 5: configura el controlador de YouTube
El último paso es mostrar los videos de YouTube que desea usar para seguir en su bicicleta. La idea es tener videos en primera persona en los que puedas sumergirte por completo y disfrutar del paisaje mientras andas en bicicleta. He compilado una lista de reproducción de YouTube con una variedad de opciones de video. Van desde varios canales que suben videos que coinciden con este criterio en primera persona. También son videos como volar a través de las nubes y viajes en tren a campo traviesa para una variedad de aventuras en primera persona.
Recomendado:
Solucionador con los ojos vendados del cubo de Rubik en tiempo real con Raspberry Pi y OpenCV: 4 pasos
Solucionador con los ojos vendados del cubo de Rubik en tiempo real con Raspberry Pi y OpenCV: esta es la segunda versión de la herramienta del cubo de Rubik hecha para resolver con los ojos vendados. La 1ª versión fue desarrollada por javascript, se puede ver el proyecto RubiksCubeBlindfolded1A diferencia de la anterior, esta versión utiliza la librería OpenCV para detectar los colores y e
SIMULADOR DE JUEGO DE CARRERAS DE BRICOLAJE -- SIMULADOR F1: 5 Pasos
SIMULADOR DE JUEGO DE CARRERAS DE BRICOLAJE || SIMULADOR F1: Hola a todos Bienvenidos a Mi canal, Hoy les voy a mostrar cómo construyo un " Simulador de juegos de carreras " con la ayuda de Arduino UNO. esto no es un blog de compilación, es solo una descripción general y una prueba del simulador. Próximamente el blog de compilación completo
Hacer un reloj con M5stick C usando Arduino IDE - Reloj de tiempo real RTC con M5stack M5stick-C: 4 pasos
Hacer un reloj con M5stick C usando Arduino IDE | Reloj en tiempo real RTC con M5stack M5stick-C: Hola chicos, en este instructables aprenderemos cómo hacer un reloj con la placa de desarrollo m5stick-C de m5stack usando Arduino IDE. Entonces m5stick mostrará la fecha, hora y amp; semana del mes en la pantalla
Cómo hacer un reloj en tiempo real con Arduino y pantalla TFT - Arduino Mega RTC con pantalla TFT de 3,5 pulgadas: 4 pasos
Cómo hacer un reloj en tiempo real usando Arduino y pantalla TFT | Arduino Mega RTC con pantalla TFT de 3.5 pulgadas: Visite mi canal de Youtube. Introducción: - En esta publicación voy a hacer un "Reloj en tiempo real" usando LCD táctil TFT de 3.5 pulgadas, Arduino Mega Módulo RTC 2560 y DS3231… .Antes de comenzar… verifique el video de mi canal de YouTube. Nota: - Si está usando Arduin
Simulador de velocidad para juegos de carreras o simuladores de montaña rusa: 5 pasos (con imágenes)
Simulador de velocidad para juegos de carreras o simuladores de montañas rusas: un proyecto simple, un fan te va a soplar la cara de acuerdo con la velocidad del juego. ¡Fácil de hacer y divertido