This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
[Proyecto] Programador de ciclo dia
#1
Tengo como proyecto hace un programador que imite las fases del dia (3 en mi caso) con luces.

Ya tengo programada la parte que hace un fade en cada una para que sea progresivo el cambio. Amanecer, dia y noche.
Estas salidas, ahora con un led, creo que salen PWM. (Esta basado en el ejemplo fade de arduino, corregidme si no usa pwm) Quisiera poner unos focos halogenos a cada salida.

He estado mirando y necesito un triac aisalado con un optoacoplador, tengo varios tipos de circuitos, pero no se los valores de los componentes, resistencias etc. El triac lo comprare en funcion de la potencia a usar.

Este seria uno de los ejemplos:
[Imagen: AC-board-schematic.jpg]


Duda dos:

Tengo la parte del encendido progresivo y quiero hacer mas funciones. Como puede hacer que haga dos acciones a la vez??

Mientras se apagan las luces que haga otra accion
  Responder
#2
La primera parte no te puedo ayudar. La segunda, no la entendí. :roto2: Apagar las luces y que más por ejemplo?

Las salidas del ardu que usas para el fade son las pwm, correcto.
  Responder
#3
Depende de lo que quieras hacer podrías usar interrupts.
  Responder
#4
El programa lo tengo ya hecho y le estoy retocando. Lo que necesito saber es si el esquema con los valores son correctos y funcionaria el fade en una bombilla de 220v.

Código:
////////////////////////////////////////////////////////////////////////////////////////

    //Lista de pines//
// Salida focos noche: 10 //
// Salida focos dia: 11 //
// Salida focos amanecer: 12 //
// Led de prueba de la placa: 13 //

////////////////////////////////////////////////////////////////////////////////////////
int led = 13;                                             //Pin de salida
int led_amanecer = 12;
int led_dia = 11;
int led_noche = 10;
int brillo_amanecer = 0;                                  //Brillo inicial
int brillo_dia = 0;
int brillo_noche = 0;
int pasos = 10;                                           //Pasos de aumento del brillo

void amanecer (void);
void noche (void);
void dia (void);
////////////////////////////////////////////////////////////////////////////////////////
void setup()
{
  pinMode(led_amanecer, OUTPUT);
  pinMode(led_noche, OUTPUT);
  pinMode(led_dia, OUTPUT);
  pinMode(led, OUTPUT);                                   //Pin "led" como salida
}

////////////////////////////////////////////////////////////////////////////////////////
void loop()
{
  amanecer();
  brillo_noche = 0;
  delay(500);
  dia();
  brillo_amanecer = 0;
  delay(500);
  noche();
  brillo_dia = 0;
  delay(500);
}
//////////////////////////////////////////////////////////////////////////////////////
//Funciones//
void amanecer ()
{
  while (brillo_amanecer < 255)
  {
    analogWrite(led_amanecer, brillo_amanecer);
    brillo_amanecer = brillo_amanecer + pasos;
    delay (100);
  }
  delay(50);
}
//////////////////////////////////////////////////////////////////////////////////////
void noche ()
{
  while (brillo_noche != 255)
  {
    analogWrite(led_noche, brillo_noche);
    brillo_noche = brillo_noche + pasos;
    delay (100);
  }
  delay(50);
}
////////////////////////////////////////////////////////////////////////////////////////
void dia ()
{
  while (brillo_dia != 255)
  {
    analogWrite(led_dia, brillo_dia);
    brillo_dia = brillo_dia + pasos;
    delay (100);
  }
  delay(50);
}
//////////////////////////////////////////////////////////////////////////////////////
  Responder
#5
cansi22 escribió:El programa lo tengo ya hecho y le estoy retocando. Lo que necesito saber es si el esquema con los valores son correctos y funcionaria el fade en una bombilla de 220v.

Programa sencillo y eficaz.

Lo del circuito, podrias simularlo con el proteus aver como funciona
  Responder
#6
¿No podrías usar un LDR para el brillo? Con eso y un RTC podrías mejorar el sistema un poco.

Para que te quede el loop mas limpio, no puedes meter el reseteo de los brillos al final de cada función? Estoy espesito ahora mismo eh, no sé si leo bien o no..
  Responder
#7
El reseteo esta ahí para que no haga el cambio de golpe. Que se pise uno a otro. Cuando lo monte en la vida real veré como queda mejor.

Lo de la ldr no veo la forma de implementarlo puesto que las bombillas de cada zona del día estarán juntas.

Es para el belén de un ayto
  Responder
#8
Por eso te decía el LDR añadiéndole un RTC. Si brillo
  Responder
#9
Mirare como se va a instalar y si se puede hacer.
  Responder