Paso 2: Paso 2: código de Arduino y mejores prácticas
Se adjunta es el código de Arduino.
El código es bastante sencillo. Hay un bucle que controla la fotorresistencia. Si el valor pasa por debajo de cierto umbral (500 en mi caso), provoca un cambio de estado. El cambio de estado desencadena el lazo que establece los parámetros de servo hace girar. Hay un retraso al final del bucle principal para evitar que las persianas de apertura y cierre constantemente cuando la luz está en un valor de umbral.
Si se detecta una señal de RF o de botón, otro bucle se inicia que continúa hasta que se detecta el botón opuesto comando RF. Como con la mayoría del código, es difícil de explicar, pero fácil de ver.
Usted puede monitorear lo que está pasando en el monitor serial. Ayuda mucho al ajustar los valores de la fotorresistencia por "día" y "noche". Si encuentra que necesita más o menos sensibilidad con el fotoresistor, cambiar el resistor de 10K a uno más adecuado para su brillo. Hay muchos grandes tutoriales explicando cómo elegir la mejor resistencia a utilizar junto con una fotorresistencia.
Pidió prestado pesadamente de ssshake. Gracias por el gran código! Su configuración es mucho más sofisticada que la mía y lo recomendaría si usted está buscando algo más ambicioso. Aquí hay un enlace a su configuración.
Nota, durante el primer ciclo del bucle se puede detectar un cambio de estado (dependiendo de la luz) y girar el servo. Esto hizo difícil para mí conseguir la envoltura de cable inicial averiguada. Porque era demasiado perezoso para cambiar el código si estaba iniciando el sistema en la obscuridad o la luz del día, me pareció más fácil desenchufar el servo durante el primer ciclo del bucle. Esto permite que el código de "estabilizar" a cualquiera que sea el estatus actual de luz. Conectar los cables de tracción, enchufe el servo en y fuera de él va. Durante la prueba, puede cambiar el tiempo de retardo en el extremo del lazo para que no tenga que esperar para que las persianas que responde otra vez.