Paso 4: calibración
Hay algunas modificaciones que usted puede hacer para que este código más adecuado para su aplicación.
Lo primero es establecer el límite máximo de corriente. Para averiguar cuál es el valor que desea establecer en, tienes que hacer algunas pruebas. La forma más sencilla es utilizar el código de ejemplo de Arduino "AnalogReadSerial", y mirar el serial monitor para ver cuál es la respuesta del motor. Una vez que sabes el valor que se quiere parar en el, se puede establecer en la rutina de void setup(), cambiando el valor de maxAmps.
Otra opción es hacer el límite ajustable. Si conecta un potenciómetro a la Arduino en uno de los pines analógicos, puede variar los amperios máximo variando el potenciómetro. Para ello, sólo tienes que añadir una declaración al principio para configurar el pin del potenciómetro, así:
Una vez que está allí, tienes que poner "pinMode (bote, entrada);" en la rutina de void setup(). Una vez que está allí, puede usar el analogRead() establecer el límite. Cada vez que coloca el código, se actualizarán el amperaje máximo. Se vería como este:
Otra configuración que puede editar es el debounce contadores de tiempo, para hacer los botones más o menos sensible. El valor de cambio es debounceTime, en el inicio del programa. Si haces el valor más alto, el botón puede ser pulsado más lento, sin que se registran dos veces. Si el valor es demasiado alto, usted tiene que esperar mucho tiempo antes de que registrará la presión del botón otra vez. Si el valor es demasiado bajo, y presione lentamente el botón, se puede registrar dos veces e iniciar/detener el motor inmediatamente. Mantener el valor entre 300 y 1000 es un buen rango.
La última cosa que cambia es la variable hitLimitsmax. Esta variable se utiliza para indicar cuando el actuador está en la posición completamente cerrada o completamente extendida. Cuando el actuador está en una de esas posiciones, estará leyendo el monitor actual 0 amperios. Ajustando la variable hitLimitsmax, se puede establecer cuánto tiempo tarda el actuador para darse cuenta de que en los límites.
Idealmente, el límite serían capaces de establecerse en 1. Tan pronto como la respuesta es 0, el actuador se detendrá. Si usted tiene un actuador de bajo amperaje (~ 1A), debido a las fluctuaciones en la lectura actual, la corriente se puede leer como 0 incluso cuando el actuador se está moviendo. Esto causaría el actuador detener al azar. Para solucionar esto, el valor hitLimitsmax está establecido para que el sensor tiene que leer cantidad de 0 amperios X de veces antes de que se detiene. Si tienes una corriente más alta (> 5 amperios) actuador, este valor puede ser menor. Yo lo tengo configurado en 10, para que el actuador tendrá 0,5 segundos para detener una vez que llega a los límites. Tarda 0.5 segundos porque el feedbacktimedelay es de 50 milisegundos, y bucle 10 veces.