Paso 7: El código
Como se puede ver justo debajo de este paso, hay un archivo de texto del código utilizado para ejecutar el metrónomo. No voy cualquier gran detalle aquí sobre cómo el código funciona o fue creado, pero voy a explicar brevemente algunas de las matemáticas proceden para cambiar el tempo, ya que es sin duda una de las más importantes piezas que hace de este circuito un metrónomo.
Hay que recordar que el brazo del servo mueve a una velocidad máxima de 60 grados para cada 0.1 segundos. Esto es equivalente a 6 grados por cada 10 milisegundos y el igual a 200 bpm. (Arbitrariamente) queríamos que nuestro límite inferior a 50 bpm que es 1/4 el ritmo de 200 bpm. Porque 6 grados / 10 milisegundos es nuestra frecuencia máxima, esto significa que la velocidad mínima debe ser 1/4 de la tarifa máxima o 1,5 grados / 10 milisegundos.
Así, nuestro palmo entre los límites superiores e inferiores es sólo de 4,5 grados. Queremos ajustar la velocidad en este rango por el potenciómetro. La lectura analógica de la salida del potenciómetro puede variar desde 0 (esencialmente no corriente fluyendo a través del potenciómetro) y 1023 (la cantidad máxima de corriente que fluye por el potenciómetro.
Por lo tanto, lo que queremos hacer es crear una ecuación lineal de la forma y = mx + b para averiguar cuánto de un cambio de ángulo del servo debe hacer basado en cuánta corriente está fluyendo por el potenciómetro. 'y' será el cambio de ángulo, estoy ' es la pendiente o cuánto afecta el potenciómetro tiene en el cambio de ángulo, 'x' es el valor del potenciómetro, y 'b' es la intersección o un tipo de factor de corrección para el cambio de ángulo.
Podemos obtener la pendiente dividiendo el intervalo del cambio de ángulo, 4.5, el valor máximo que puede tener el potenciómetro, 1023. Esto nos obtiene el valor "escalar" que ve en el código. Entonces podemos multiplicar nuestro valor escalar por lo que el valor de potenciómetro actual es y agregar el factor de corrección que es el límite inferior de 1,5 grados. Esta concisa nos dice cuánto de un cambio de ángulo (o tempo) que el servo debe hacer basado en donde se coloca el potenciómetro.