No me importa cuánto se está moviendo, qué tan rápido o en qué dirección, solo quiero que mi proyecto basado en Arduino sepa si se está moviendo o no (para poder apagar los LED de drenaje de alta corriente cuando mi bicicleta está parada guardar mi batería)
¿Quiero un acelerómetro, giroscopio o algún otro tipo de sensor?
Respuestas:
Si es para usar en una bicicleta, entonces usaría un circuito de detección de opto de baja potencia en los radios de la rueda. Hay varias variantes de esto y es importante la capacidad de pulsar el LED para conservar energía, por lo tanto, si un radio pasa a 10 veces por segundo (lo que indica una velocidad mínima), deberá encender el LED durante al menos 0.1 segundos y "buscar" una interrupción del haz, esto indica movimiento. Solo una idea.
También puede considerar un interruptor de silla de montar para que si alguien no está sentado en la silla de montar y no se detecta movimiento, el LED se apaga por completo.
fuente
Un acelerómetro sería adecuado en la mayoría de los casos. Técnicamente, la aceleración será 0 a una velocidad constante, pero en la práctica, a menos que su proyecto esté montado en algún tipo de carril de vibración excepcionalmente bajo, verá aceleraciones fluctuantes durante el movimiento. Debería ser bastante simple usar un promedio móvil en cada eje y considerar el dispositivo como "en movimiento" cuando la variación está por encima de cierto umbral. Se detectará un poco de aceleración aleatoria cuando el dispositivo esté estacionario, pero el umbral debería ocuparse de eso.
Puede obtener placas con acelerómetros I2C montados en ellas de muchos proveedores electrónicos aficionados. El procedimiento para hablar con ellos variará ligeramente dependiendo del chip, pero en general hablar con dispositivos I2C desde un arduino es bastante fácil.
fuente
Mientras especificas 'ver si se está moviendo' como tu objetivo. Podría recomendar una medida diferente para verificar si la bicicleta está en movimiento. La cantidad de captura de acelerómetros de ruido es sorprendente: podría ser que su situación sea tal que habrá una clara delimitación entre 'en uso y en movimiento' y 'no en el usuario y aún en movimiento (ligeramente)'. Sin embargo, no esperaría que ese fuera el caso.
Vale la pena considerar que si la bicicleta está conectada / estacionada en una estructura que se mueve con frecuencia (otras personas adjuntaron o desconectaron sus bicicletas, trenes o vehículos cerca, adentro cerca de una bomba loca de HVAC, adentro en pisos de madera / hinchables cuando alguien pasa. ..) entonces sus luces se encenderán cuando la bicicleta se mueva. Esto no es realmente lo que quieres. Desea que las luces se enciendan cuando un ciclista (usted) está moviendo la bicicleta. Para ese fin, un sensor de proximidad (que se bloquea solo cuando está en la bicicleta) o incluso algo así como un sensor de velocidad / interruptor de láminas funcionaría. Aquí hay un tutorial para un velocímetro de bicicleta Arduino que usa un interruptor de láminas: http://www.instructables.com/id/Arduino-Bike-Speedometer/la ventaja de esto es que obtienes una lectura de velocidad y sería bastante trivial agregar un gatillo para las luces (con un apagado retrasado para los períodos en que la bicicleta no está moviéndose para luces / tráfico y similares.)
fuente
Los acelerómetros, como lo han sugerido otros, son bastante fáciles de usar, especialmente en un Arduino con todas las bibliotecas y paneles disponibles. Otra cosa que vale la pena mirar es un sensor de vibración piezoeléctrico como este disponible en Sparkfun por $ 2.95 en este momento:
Solo tenga cuidado de observar cuán alta puede ser la salida de voltaje, sugieren usar un divisor de resistencia para reducir el voltaje y usar un pin ADC. Si bien no estoy tan interesado personalmente en usar las pinzas de diodo internas en un AVR si usas una resistencia de límite de corriente de la serie 1K dada la baja corriente para comenzar, no puedo ver que tengas demasiados problemas para conectarte a un dispositivo digital ingrese si eso proporciona suficiente sensibilidad y el ligero aumento en Vcc no causará otros problemas hasta que las abrazaderas surtan efecto.
De todos modos, podría ser otro sensor que sería interesante observar. Si bien probablemente no importará mucho para un Arduino que tiene una corriente de reposo relativamente alta en el regulador y su proyecto en particular, puede ser útil para muchos proyectos. Consumen cero energía y se pueden usar para despertar un microcontrolador del sueño profundo, suponiendo que reciba suficiente vibración para activar un nivel lógico alto.
fuente
Una especie de cámara de alta velocidad y óptica de baja resolución que toma muchas fotos (a cientos o miles de cuadros por segundo ) de la superficie sobre la que se mueve, y las compara en tiempo real con un procesador incorporado especialmente diseñado para medir el movimiento Preferiblemente todo en un chip, con una conveniente interfaz MCU.
En otras palabras, un sensor óptico del mouse.
Desafortunadamente, parece que las partes de Avago ya no están distribuidas, pero podría hackear un mouse óptico, que también le proporcionará la óptica y el LED de iluminación (es posible que deba modificar la óptica para obtener una distancia adecuada). Muchos de los sensores parecen ser de Pixart en Taiwán, y las hojas de datos están disponibles (a menudo no es cierto).
fuente
Muchas de estas respuestas son demasiado complicadas y probablemente darán lugar a falsos positivos y / o falsos negativos. Los acelerómetros se apagarán si se mueve la bicicleta, y no se dispararán si se mueve a un ritmo constante. Tomar imágenes ópticas del terreno es costoso para el proceso y no es increíblemente confiable si el sensor no es tan bueno. La medición de la vibración se disparará si alguien golpea su bicicleta o se sacude de alguna manera. Esto asegurará que su sistema se dispare si y solo si un ciclista está causando que se mueva.
Hay una pregunta muy simple que debes hacer para encontrar la respuesta correcta: ¿Qué es diferente entre un ciclista que monta la bicicleta y algo más que la mueve? La respuesta es igualmente simple: las ruedas giran.
Entonces, su solución, entonces, es usar algo que mida la rueda en el eje de rotación, algo como la idea del mouse de Spehro, tal vez.
fuente
O podría sentir cuando un ciclista está en la bicicleta, como:
fuente
Si no le importa qué tipo de movimiento ocurre, entonces un interruptor de bola rodante es la solución más fácil de implementar. Requiere solo una entrada digital y un filtro de paso bajo.
Un ejemplo es el Signalquest SQ-SEN-200. Existen otras variantes cada vez más pequeñas de la misma tecnología (SMD y orificio pasante).
fuente
Para detectar que el objeto se está moviendo, sugiero un fotointerruptor con un péndulo de algún tipo. Tome uno como este y construya una "cosa mecánica" que se mueva en su área de detección. http://se.farnell.com/sharp/gp1s53vj000f/photointerrupter-compact/dp/9708065
Probablemente podría recuperar todas las partes necesarias de un mouse de computadora con un botón de rueda o un detector de movimiento de bola.
fuente