Paso 1: Idea básica (arduino)
He añadido una tabla de reloj de tiempo real (RTC, chip ds1307, protocolo i2c), que es muy barata, para estar seguro de que voy a seguir todos trabajando después de cualquier energía abajo caso. Las salidas para la lámpara y la bomba están vinculadas a la fuente de alimentación de 220V por medio de relevadores de 10A, gestionado por arduino.
Hay muchos ejemplos RTC para el cableado de Arduino en internet, nivel de complejidad (vi a uno que va a tomar tiempo de sistema del PC mientras flashea y una bandera en EEPROM cuando se configura el RTC). Sin embargo usted puede utilizar el más simple - tendrás que flashearlo solo una vez para toda su vida. He utilizado bascom AVR + AVRdudeR para la programación de aquí, el código entero fue basado en el ejemplo de Bascom (ds1307_3231.bas). Tuve que flash 2 códigos separados - uno para configuración RTC, segunda con ninguna configuración RTC para evitar RTC reajuste en reinicio de arduino, pero usted puede crear un solo programa como he mencionado anteriormente.
Aquí hay varias cosas importantes de mi código:
' ajustes preestablecidos para Arduino uno r3:
$regfile = "m328pdef.dat"
$crystal = 16000000
' ajuste de servos
Servos de config = 1, Servo1 = Portb.4, Reload = 30, temporizador = Timer1
Habilitar interrupciones: Permiten Urxc
' sub programa de alimentación (lo hace por varios pasos para ser más eficaz + hay un retraso de 30 segundos para evitar la ejecución varias veces por minuto)
Alimentación:
Para F = paso de 35 a 85 10 Servo(1) = F: esperar 1 siguiente F Servo(1) = 20: esperar 2: Servo(1) = 40: esperar 1: Servo(1) = 20: esperar 2: Servo(1) = 40: esperar 30
Volver