Paso 4: Conectar LED tiras sensor hall
Conecte los dos tableros colocando las dos breadboards al lado del otro y conectar todo con el esquema en este paso.
Todo el código puede descargarse de: https://github.com/MaakbareWereld/LEDlongboard
Abra LEDstripcontrol.ino y speedMeasurement.ino en el IDE de Arduino. Ambos programas tienen algunas constantes importantes definidas en la parte superior que usted necesita para cambiar: el número de LEDs, la velocidad máxima que se quiere ir (en km/h) y el diámetro de la rueda. Cambiar a la configuración adecuada.
Subir el código LEDstripcontrol.ino a la derecha Arduino en el esquema (que controla las LEDstrips, que corría teststrand hasta ahora) y speedMeasurement.ino a la izquierda Arduino en el esquema (uno conectado al sensor hall).
Todo prueba haciendo girar la rueda!
Nota al margen: ¿por qué dos de Arduino?
Puede parecer excesivo utilizar dos Arduino, pero en este caso que realmente necesitaba. La biblioteca de fastled que utilizamos para conducir el neopixels es muy exigente con respecto al tiempo: 800 veces por segundo los leds necesitan información actualizada. Cuando esto ocurre, detener todas las operaciones durante unas milisegundos. Incluso (más importante) todas las interrupciones son suprimidos. Si en este tiempo, un imán pasaría el sensor de efecto hall, se perdería esa medida. Una rápida la parte posterior de la envoltura se entera de que esto pasaría bastante regular. Por lo tanto, el Arduino segundo mide la velocidad de la Junta y pasa esa información a la primera junta.
Normalmente, para obtener información pasa, uno utilizaría un protocolo digital (serie, I2C, etc..) Sin embargo, estos protocolos podrían sufrir el mismo problema: interrupción de la comunicación a la LEDstrip. Por lo tanto, fui con la comunicación analógica. La velocidad se traduce en una señal analógica en el pin (PWM) 9 de Arduino de la medición de la velocidad. Esto es leído por el Arduino en A0 entrada analógica controlan LEDstrip.