Tutorial alba-ocaso para led 12v - Página 2
Página 2 de 6 PrimerPrimer 123456 ÚltimoÚltimo
Resultados 11 al 20 de 54

Tema: Tutorial alba-ocaso para led 12v

  1. #11
    Avatar de Layans
    Fecha de Ingreso
    01 sep, 06
    Ubicación
    Salamanca
    Mensajes
    666

    Predeterminado

    Pepe, no haria falta una fuente de 5v, puedes alimentar la placa desde la fuente de los led a 12v, porque tiene un circuito para reducir la tension de 12 a 5v. En caso de quererle poner una fuente externa seria de 9v, y no se lo que podria valer.
    Normalmente los puenteo para alimentarlos desde la fuente los led, lo que si hay unas cajas especiales para estos circuitos, pero no las uso porque si voy ampliando cosas no me entran.
    A las preguntas de los privados, donde los verdecillos tengo dos arduinos UNO intercomunicados, con su teclado, su lcd, con sensores de temperatura y los reles, con dos modulos deteccion de movimiento.
    Tengo otro con pantalla TFT tactil sin teclado, donde los canarios
    TEMPORADA DE CRIA 2016:
    Amarillo mosaico linea macho
    Rojo mosaico linea macho
    Onix en verde Y bronce mosaico linea macho
    Verdecillos y sus R1,R2 F1, en jaspe y onix verde mosaico y gris y , hacia el verdecillo

  2. #12
    Avatar de Layans
    Fecha de Ingreso
    01 sep, 06
    Ubicación
    Salamanca
    Mensajes
    666

    Predeterminado

    La primera foto es de un amigo de como queda el frontal del programador y el display, es de un acuario, y la segunda como queda la pantalla, para modificar, la hora, temperatura del aviario y el alba-ocaso, de un compañero del foro. Esta noche pondre el codigo del rtc. Un saudo
    Miniaturas Adjuntadas Miniaturas Adjuntadas Pulsa en la imagen para verla en tamaño completo

Nombre: FOTO0046.jpg
Visitas: 296
Tamaño: 41.1 KB
ID: 354982   Pulsa en la imagen para verla en tamaño completo

Nombre: Menu1.jpg
Visitas: 298
Tamaño: 44.2 KB
ID: 354983  
    TEMPORADA DE CRIA 2016:
    Amarillo mosaico linea macho
    Rojo mosaico linea macho
    Onix en verde Y bronce mosaico linea macho
    Verdecillos y sus R1,R2 F1, en jaspe y onix verde mosaico y gris y , hacia el verdecillo

  3. #13
    Avatar de Layans
    Fecha de Ingreso
    01 sep, 06
    Ubicación
    Salamanca
    Mensajes
    666

    Predeterminado

    Reloj de tiempo real
    Como conectar y programar el modulo del reloj para tener controlado la fecha y la hora, este es un modulo muy pequeño el cual tiene 5 conexiones de las cuales solamente se usan 4 que son el positivo, el negativo, SCL y SDA, estas dos ultimas son las correspondiente a una conexión del protocolo I2C, las cuales para un Arduino Uno son los pines analógicos SDA = 4 y SCL = 5 en cambio en el Arduino Mega los pines don el SDA = 20 y SCL = 21.

    Para manejar este reloj hay varias librerías en Internet pero la verdad es que después de probar varias, me decidí por crear una propia, a partir de otra existente.

    Una descripción rápida de sus funciones :
    void SetDateTime( int monthDay, int month, int year, int hour, int minute, int second );//Establece la la fecha y hora del reloj
    void GetDateTime( int &monthDay, int &month, int &year, int &hour, int &minute, int second );//Obtiene la fecha y hora en parametros separados.
    char * DateTime();//Obtiene una cadena de texto con la fecha y la hora.
    char * Date();//Obtiene una cadena de texto con la fecha.
    char * Time();//Obtiene una cadena de texto con la hora y minutos.
    int GetHour();//Obtiene un entero con el valor de la hora.
    int GetMinute();//Obtiene un entero con el valor de los minutos.
    int GetYear();//Obtiene un entero con el valor del año.
    int GetMonth();//Obtiene un entero con el valor del mes.
    int GetDay();//Obtiene un entero con el valor del día.
    void SetDiaSemana( int DiaSemana ); //Establece el día de la semana(Lunes,Martes….).
    int GetDiaSemana(); //Obtiene un entero con el valor del día de la semana
    char * DiaName(); //Obtiene una cadena con el nombre del día de la semana.
    char * MesName();//Obtiene una cadena con el nombre del mes.
    boolean IsLater( int hour, int minute ); //No devuelve si la hora actual es mas tarde que la pasada.
    boolean IsPrevious( int hour, int minute ); //No devuelve si la hora actual es mas temprana que la pasada.

    Su uso viendo las funciones que tiene es bastante simple, empezaremos añadiendo en nuestro último código la llamada a la librería y también la librería <Wire.h> que también utiliza internamente.

    #include <Wire.h>
    #include <OneWire.h>

    #include "LCD128x64.h" // Libreria del LCD
    #include "RelojDS1307.h" // Libreria del Reloj



    A si mismo declararemos la variable con la que utilizaremos el RelojDS1307, en este caso simplemente la llamaremos “Reloj”.


    LCD128x64Class Lcd( 19, 18 ); //Declaramos la pantalla
    RelojDS1307Class Reloj; //Declaración de la variable del Rejoj



    En la función “setup()” añadiremos la iniciación del sistema wire para uso de nuestro Reloj

    Lcd.SetDelay(300); //Declaramos el tiempo en de espera entre cada orden.
    Lcd.Brillo(70); //Definimos el brillo que queremos en nuestra pantalla.
    Wire.begin();



    También añadiremos otra línea para poner en hora nuestro reloj, pero esta línea será solo para que se use una sola vez, de forma que cuando se reinicie el arduino y funcione le cargaremos otra vez el mismo código pero sin esta línea, ya que esta línea te pondrá la fecha y hora del reloj en cuanto se inicie el Arduino y si lo apagas y inicias otra vez te la volverá a configurar la misma y entonces tendrá retraso el reloj como es normal.

    Lcd.SetDelay(200); //Declaramos el tiempo en de espera entre cada orden.
    Lcd.Brillo(70); //Definimos el brillo que queremos en nuestra pantalla.
    Wire.begin();
    Reloj.SetDateTime( 21, 03, 14, 00, 35, 00 );



    Mas adelante veremos como configurar la hora desde el teclado.

    Luego para que podamos ver en nuestra pantalla la fecha y la hora actual, es tan simple como poner en nuestra función “loop()” una llamada a la función de pintar de nuestra pantalla pesándole lo que nos devuelve la función Reloj.DateTime().

    void loop()
    {
    Lcd.WriteXY( Reloj.DateTime(), 10, 61);
    }

    ***************************************
    seguiremos con el tutorial, el proximo dia el teclado o la pantalla. Siempre que interese......
    TEMPORADA DE CRIA 2016:
    Amarillo mosaico linea macho
    Rojo mosaico linea macho
    Onix en verde Y bronce mosaico linea macho
    Verdecillos y sus R1,R2 F1, en jaspe y onix verde mosaico y gris y , hacia el verdecillo

  4. #14
    Avatar de Layans
    Fecha de Ingreso
    01 sep, 06
    Ubicación
    Salamanca
    Mensajes
    666

    Predeterminado Codigo para solo ANOCHECER EN LED

    Hola, debido a un fallo en el portatil, no puedo poner mas codigo en unos dias, pero si voy a contestar a los que me han preguntado en el privado sino habria una manera mas simple de hacer esto, em modo solo anochecer. En los dos simuladores tengo montado un interruptor para visitas nocturnas de cualquier indole, a partir del cual al presionarlo (encenderlo), permanecen encendidaslas tiras led, todo el tiempo que necesite al maximo de potencia, al volver a presionar (apagar) el interruptor, la placa espera 5 minutos encendida al maximo y despues esta otros 15 minutos apagandose lentamente. He modificado este codigo para hacer un anochecer de 30 minutos, yo no soy partidario de usar asi el efecto anochecer, porque si durante el anochecer falla la luz este reiniciara de nuevo todo el ciclo y al cortarse el programador las cortaria en seco, pero a gustos colores. Tambien se podria hacer solo amanecer con los led y que el anochecer fuera natural. Para modificaciones del tiempo de anochecer de 30 minutos a mas o menos, habria que usar un ordenador, al igual que para incluir o excluir uno o varios canal mas. ********************************************* Partiendo de que la placa arduino UNO tiene 6 pines PWM que son el 3, 5, 6, 9, 10, 11, los que utilizamos para el control de iluminacion, pondre un codigo para 4 de estos pines o canales, que mas o menos son las alturas que casi todos tenemos de jaulas, quien desee mas solo tiene que duplicar el codigo poniendo a continuacion los pines 10 y 11. Materiales a usar: Placa arduino Uno, un reloj programador de los de siempre (hara encender el arduino y de paso la fuente de alimentacion) una fuente alimentacion 220v-12 v (de amperaje pues la suma de los metros de led x 5), 4 resistencias de 2K2 y 4 tip 121 (max 8A). Se me olvidaba la placa PCB o una DYI para conexionar los tip y las resistencias. Cada canal soportara una potencia maxima de 96W (12v x 8A), o lo que es lo mismo maximo 19 metros de tira led. OJO, recomiendo no meter mas de 85-90 w por canal, aprox 15-18 metros por canal. Habria que conectar la fuente de alimentacion de los led y el transformador del arduino al programador de reloj, (siempre que no se puente la placa y alimente con la fuente de alimentacion de los led), el programador se pondria a la hora que se quiere se enciendan los led y tambien a la hora que se apaguen los led, añadiedole 2 minutos mas... por ejemplo si queremos que encienda a las 17:30h y empiece el efecto anochecer a las 20.30, con una duracion de 30 minutos, a las 21:00 estara todo apagado, entonces lo pondremos para que se apague el programador a las 21:02 minutos. Este es el codigo, que a pesar del copyright, por supuesto es de libre uso y gratuito para los compañeros del foro: ///////////////////////////////////////////////////////////////////////////////// // ARCHIVO: Anochecerr.ino // AUTOR: Layans // Copyright 2014 // PROPOSITO: Manejar el anochecer de un aviario. // VERSION: 1. solo luces anochecer // FECHA: 27/3/2014 //////////////////////////////////////////////////////////////////////////////// #define PIN_Linea1 3 //linea1 es fila jaulas primera #define PIN_Linea2 5 // linea2 jaulas fila segunda #define PIN_Linea3 6 //linea3 jaulas fila tercera #define PIN_Linea4 9 //linea4 jaulas fila cuarta void setup() { pinMode(Linea1, OUTPUT); //DEFINIMOS LOS PIN COMO SALIDA pinMode(Linea2, OUTPUT); pinMode(Linea3, OUTPUT); pinMode(linea4, OUTPUT); } //tiempo en milisegundo void loop() { analogWrite(Linea1,255); analogWrite(Linea2,255); analogWrite(Linea3,255); analogWrite(Linea4,255); // led encendidos al 100% delay(10800000); // tiempo que los led estan encendidos al 100% con tiempo en milisegundos son 3 horas analogWrite(Linea1,213); // comienzo de anochecer de 30 minutos que son 1800000 milisegundos analogWrite(Linea2,213); analogWrite(Linea3,213); analogWrite(Linea4,213); delay(225000); //algo menos de 4 minutos por salto analogWrite(Linea1,191); analogWrite(Linea2,191); analogWrite(Linea3,191); analogWrite(Linea4,191); delay(225000); analogWrite(Linea1,159); analogWrite(Linea2,159); analogWrite(Linea3,159); analogWrite(Linea4,159); delay(225000); analogWrite(Linea1,127); analogWrite(Linea2,127); analogWrite(Linea3,127); analogWrite(Linea4,127); delay(225000); analogWrite(Linea1,96); analogWrite(Linea2,96); analogWrite(Linea3,96); analogWrite(Linea4,96); delay(225000); analogWrite(Linea1,64); analogWrite(Linea2,64); analogWrite(Linea3,64); analogWrite(Linea4,64); delay(225000); analogWrite(Linea1,32); analogWrite(Linea2,32); analogWrite(Linea3,32); analogWrite(Linea4,32); delay(225000); analogWrite(Linea1,0); analogWrite(Linea2,0); analogWrite(Linea3,0); analogWrite(Linea4,0); delay(300000); //retardo de 5 minutos para que no empiece el ciclo de nuevo } // aqui apagaria el programador todo el circuito hasta el dia siguiente
    Última edición por Layans; 02/08/2014 a las 19:00
    TEMPORADA DE CRIA 2016:
    Amarillo mosaico linea macho
    Rojo mosaico linea macho
    Onix en verde Y bronce mosaico linea macho
    Verdecillos y sus R1,R2 F1, en jaspe y onix verde mosaico y gris y , hacia el verdecillo

  5. #15
    Avatar de Layans
    Fecha de Ingreso
    01 sep, 06
    Ubicación
    Salamanca
    Mensajes
    666

    Predeterminado

    Vamos a responder a los privados:
    * ya dije ayer que si se podia hacer un amanecer para los que solo quieren hacerlo, el codigo lo pongo luego, pues estoy desde el movil.
    * El compañero que medio me ha retado-pedido ayuda en algo que ha pensado a partir de lo que ha leido aqui, pues si que se puede hacer eso y en unos dias te pondre un posible codigo a usar, decirte que esa idea ....
    * El compañero que me ha dicho si podria hacer las placas PCB, con los tip, las resistencia, conectores y cables, decir que, si las puedo hacer las plantillas y ponerlas aqui en el foro. Respecto a lo de hacerlas,venderlas llegando a un acuerdo, ufff, no porque dan mucho trabajo, pero si fuera un caso vital lo estudiaria. Respecto a lo de vender yo los kit, decir que no, pero si alguien los quiere yo se los compro y envio sin problema. Los simuladores ya hechos, uffff, eso es algo muy muy complicado, porque llevan mucho tiempo y solo tendria los fines de semana.

    Esta tarde noche pondre el codigo de amanecer, y de paso pondre la explicacion e idea modificada del reto-ayuda que me ha dicho un compañero. Un saludo
    Última edición por Layans; 27/03/2014 a las 14:08
    TEMPORADA DE CRIA 2016:
    Amarillo mosaico linea macho
    Rojo mosaico linea macho
    Onix en verde Y bronce mosaico linea macho
    Verdecillos y sus R1,R2 F1, en jaspe y onix verde mosaico y gris y , hacia el verdecillo

  6. #16
    Avatar de Layans
    Fecha de Ingreso
    01 sep, 06
    Ubicación
    Salamanca
    Mensajes
    666

    Predeterminado Amanecer para tiras LED

    Vamos hacer un amanecer de 30 minutos, seguido de un periodo de 2 horas de encendido al maximo de las tiras led, para despues apagarse las tiras y el programador apagar la placa y la fuente los led, 2 minutos despues de apagarse.

    Para modificaciones del tiempo de anochecer de 30 minutos a mas o menos, habria que usar como dije ayer un ordenador, al igual que para incluir o excluir uno o varios canal mas o darle mas tiempo(2 h) de luz al maximo.
    Los materiales son los mismo que en el anochecer.

    ******************************************
    Este es el codigo, que a pesar del copyright, por supuesto es de libre uso y gratuito para los compañeros del foro:

    /////////////////////////////////////////////////////////////////////////////////
    // ARCHIVO: Amanecerr.ino
    // AUTOR: Layans
    // Copyright 2014
    // PROPOSITO: Manejar el amanecer de un aviario.
    // VERSION: 1.1. solo luces amanecer
    // FECHA: 27/3/2014
    ////////////////////////////////////////////////////////////////////////////////



    #define PIN_Linea1 3 //linea1 es fila jaulas primera
    #define PIN_Linea2 5 // linea2 jaulas fila segunda
    #define PIN_Linea3 6 //linea3 jaulas fila tercera
    #define PIN_Linea4 9 //linea4 jaulas fila cuarta

    void setup()
    {
    pinMode(Linea1, OUTPUT); //DEFINIMOS LOS PIN COMO SALIDA
    pinMode(Linea2, OUTPUT);
    pinMode(Linea3, OUTPUT);
    pinMode(linea4, OUTPUT);
    }


    void loop()
    {
    analogWrite(Linea1,0); // comienzo de amanecer de 30 minutos que son 1800000 milisegundos
    analogWrite(Linea2,0);
    analogWrite(Linea3,0);
    analogWrite(Linea4,0);
    delay(225000); //salto de 3 minutos y 45 segundos

    analogWrite(Linea1,32);
    analogWrite(Linea2,32);
    analogWrite(Linea3,32);
    analogWrite(Linea4,32);
    delay(225000);

    analogWrite(Linea1,64);
    analogWrite(Linea2,64);
    analogWrite(Linea3,64);
    analogWrite(Linea4,64);
    delay(225000);

    analogWrite(Linea1,96);
    analogWrite(Linea2,96);
    analogWrite(Linea3,96);
    analogWrite(Linea4,96);
    delay(225000);


    analogWrite(Linea1,127);
    analogWrite(Linea2,127);
    analogWrite(Linea3,127);
    analogWrite(Linea4,127);
    delay(225000);


    analogWrite(Linea1,159);
    analogWrite(Linea2,159);
    analogWrite(Linea3,159);
    analogWrite(Linea4,159);
    delay(225000);


    analogWrite(Linea1,191);
    analogWrite(Linea2,191);
    analogWrite(Linea3,191);
    analogWrite(Linea4,191);
    delay(225000);

    analogWrite(Linea1,213);
    analogWrite(Linea2,213);
    analogWrite(Linea3,213);
    analogWrite(Linea4,213);
    delay(225000);

    analogWrite(Linea1,255);
    analogWrite(Linea2,255);
    analogWrite(Linea3,255);
    analogWrite(Linea4,255); // led encendidos al 100%
    delay(7200000); // tiempo que los led estan encendidos al 100% con tiempo en milisegundos son 2 horas


    analogWrite(Linea1,0);
    analogWrite(Linea2,0);
    analogWrite(Linea3,0);
    analogWrite(Linea4,0); // led apagados al 0% despues de 2 horas encendidos
    delay(6000000); //retardo de 10 minutos para que no empiece el ciclo de nuevo y corte el reloj las fuentes

    }
    // aqui apagaria el programador todo el circuito hasta el dia siguiente

    Última edición por Layans; 27/03/2014 a las 23:07
    TEMPORADA DE CRIA 2016:
    Amarillo mosaico linea macho
    Rojo mosaico linea macho
    Onix en verde Y bronce mosaico linea macho
    Verdecillos y sus R1,R2 F1, en jaspe y onix verde mosaico y gris y , hacia el verdecillo

  7. #17
    Avatar de Layans
    Fecha de Ingreso
    01 sep, 06
    Ubicación
    Salamanca
    Mensajes
    666

    Predeterminado

    La propuesta del compañero era a partir de 3 programadores, poder hacer el amanecer, durante 30 minutos, despues que estubieran encendido 2 horas la maximo de su potencia para apagarse durante un numero determinado de horas, para despues encenderse de nuevo al maximo durante un o dos horas, para apagarse lentamente en un anochecer de 30 minutos progresivo.
    El ejemplo era, el programador1 encendia la placa y la fuente de los led a una hora determinada (ejemplo 7:00 AM), y apagara la placa y fuente dos horas despues (ejemplo 9:40 AM).
    El programador2 encendiera, actuando como interruptor dos pines de la placa en modo amanecer unos minutos antes de la hora determinada de encendido de la placa para el amanecer (ejemplo 6:55 AM) y apagara dos horas despues (ejemplo 9:35 AM).

    El programador1 encendia la placa y la fuente de los led a una hora determinada (ejemplo19:00), y apagara la placa y fuente dos horas despues (ejemplo 21:40).
    El programador3 encendiera, actuando como interruptor dos pines de la placa en modo anochecer unos minutos antes de la hora determinada de encendido de la placa para la tarde (ejemplo 18:55) y apagara dos horas despues (ejemplo 21:35).

    ************************************************** **************************
    Las placas arduino tienen entradas/salidas (E/S) digitales y analogicas, en este caso usaremos solo las digitales, configurandolas como entradas y salidas, siendo los pines 2, 4, 7, 8, 12, (E/S) normales y los pines 3, 5, 6, 9, 10, 11 las que utilizan el PWM y en este caso se configuran como salidas.
    Miniaturas Adjuntadas Miniaturas Adjuntadas Pulsa en la imagen para verla en tamaño completo

Nombre: digin.gif
Visitas: 122
Tamaño: 1.8 KB
ID: 355142   Pulsa en la imagen para verla en tamaño completo

Nombre: ardusi.jpg
Visitas: 169
Tamaño: 16.9 KB
ID: 355141   Pulsa en la imagen para verla en tamaño completo

Nombre: Arduino-callouts1.jpg
Visitas: 337
Tamaño: 185.3 KB
ID: 355140  
    Última edición por Layans; 28/03/2014 a las 01:14
    TEMPORADA DE CRIA 2016:
    Amarillo mosaico linea macho
    Rojo mosaico linea macho
    Onix en verde Y bronce mosaico linea macho
    Verdecillos y sus R1,R2 F1, en jaspe y onix verde mosaico y gris y , hacia el verdecillo

  8. #18
    Avatar de Layans
    Fecha de Ingreso
    01 sep, 06
    Ubicación
    Salamanca
    Mensajes
    666

    Predeterminado Codigo amanecer-anochecer para led

    Al final he terminado al compañero su propuesta-reto mas que nada por las fechas que estamos y si desea usarlo para la cria, decir que yo no lo haria asi, porque al irse la luz se reiniciaria el programa de nuevo desde cero en la posicion que pillara, pero para quien tiene la iluminacion por baterias y/o placa solar le viene de perlas, lo unico que para la placa solar o bateria habria que sustituir el rele de bobina 220v, por un rele de bobina a 12 voltios y los programadores de 220v a 12 v.

    Los materiales a utilizar:
    Arduino Uno, 2 relojes programadores a 220v (un reloj programador para encender el arduino y la fuente de alimentacion, el otro para el rele a 220V, una fuente alimentacion 220v-12 v, 1-4 resistencias de 2K2 y 1-4 tip 121 (max 8A)., un rele de bobina a 220v, 2 resistencias 10K, 2 diodos 1N4007, la palaca PCB o placa DIY, los conectores quien dese y los cables para uniones.

    Funcionamiento:

    * El programador1 encendia la placa y la fuente de los led a una hora determinada de la mañana y apagara la placa y fuente dos horas y 40 minutos despues. Y el programador1 nuevamente encendia la placa y la fuente de los led a una hora determinada de la tarde y apagara la placa y fuente dos horas y 40 minutos despues.
    * El programador2 encendiera y activara el rele, actuando como interruptor dos pines de la placa en modo amanecer unos minutos antes de la hora determinada de encendido de la placa para la mañana y apagara dos horas despues desactivano el rele que volvera a su posicion original, sin necesidad de ser activado de nuevo.

    Tengo que ponerlo ams abajo porque no me deja poner la foto
    Última edición por Layans; 28/03/2014 a las 02:29
    TEMPORADA DE CRIA 2016:
    Amarillo mosaico linea macho
    Rojo mosaico linea macho
    Onix en verde Y bronce mosaico linea macho
    Verdecillos y sus R1,R2 F1, en jaspe y onix verde mosaico y gris y , hacia el verdecillo

  9. #19
    Avatar de Layans
    Fecha de Ingreso
    01 sep, 06
    Ubicación
    Salamanca
    Mensajes
    666

    Predeterminado

    Este es el codigo, que a pesar del copyright, por supuesto es de libre uso y gratuito para los compañeros del foro:

    /////////////////////////////////////////////////////////////////////////////////
    // ARCHIVO: Controlador Amanecerr-Anochecerr.ino
    // AUTOR: Layans
    // Copyright 2014
    // PROPOSITO: Manejar alba-ocaso de un aviario.
    // VERSION: 1. Alba-ocaso
    // FECHA: 28/3/2014
    ////////////////////////////////////////////////////////////////////////////////


    int Linea1 = 3; //linea1 es fila jaulas primera
    int Linea2 = 5;// linea2 jaulas fila segunda
    int Linea3 = 6; //linea3 jaulas fila tercera
    int Linea4 = 9; //linea4 jaulas fila cuarta
    int interruptord = 7; // interruptor d de amanecer conectado al pin 7
    int interruptorn = 8; // interruptor n de anochecer conectado al pin 8

    void setup()
    {
    pinMode(Linea1, OUTPUT); //DEFINIMOS LOS PIN 3 5 6 9 COMO SALIDA
    pinMode(Linea2, OUTPUT);
    pinMode(Linea3, OUTPUT);
    pinMode(linea4, OUTPUT);
    pinMode(interruptord, INPUT); // pin 7 como entrada
    pinMode(interruptorn, INPUT); // pin 8 como entrada
    Serial.begin(9600); // empieza la comunicacion a 9600bps
    }
    void loop()
    {
    if((digitalRead(interruptord) == HIGH) && (digitalRead(interruptorn) == LOW)); // si el interruptor d esta ON y el interrutor n esta OFF entonces haz el amanecer asi
    {
    analogWrite(Linea1,0); // comienzo de amanecer de 30 minutos que son 1800000 milisegundos
    analogWrite(Linea2,0);
    analogWrite(Linea3,0);
    analogWrite(Linea4,0);
    delay(225000); //salto de 3 minutos y 45 segundos

    analogWrite(Linea1,32);
    analogWrite(Linea2,32);
    analogWrite(Linea3,32);
    analogWrite(Linea4,32);
    delay(225000);

    analogWrite(Linea1,64);
    analogWrite(Linea2,64);
    analogWrite(Linea3,64);
    analogWrite(Linea4,64);
    delay(225000);

    analogWrite(Linea1,96);
    analogWrite(Linea2,96);
    analogWrite(Linea3,96);
    analogWrite(Linea4,96);
    delay(225000);


    analogWrite(Linea1,127);
    analogWrite(Linea2,127);
    analogWrite(Linea3,127);
    analogWrite(Linea4,127);
    delay(225000);


    analogWrite(Linea1,159);
    analogWrite(Linea2,159);
    analogWrite(Linea3,159);
    analogWrite(Linea4,159);
    delay(225000);


    analogWrite(Linea1,191);
    analogWrite(Linea2,191);
    analogWrite(Linea3,191);
    analogWrite(Linea4,191);
    delay(225000);

    analogWrite(Linea1,213);
    analogWrite(Linea2,213);
    analogWrite(Linea3,213);
    analogWrite(Linea4,213);
    delay(225000);

    analogWrite(Linea1,255);
    analogWrite(Linea2,255);
    analogWrite(Linea3,255);
    analogWrite(Linea4,255); // led encendidos al 100%
    delay(7200000); // tiempo que los led estan encendidos al 100% con tiempo en milisegundos que son 2 horas
    analogWrite(Linea1,0); // se apagan los led de golpe
    analogWrite(Linea2,0);
    analogWrite(Linea3,0);
    analogWrite(Linea4,0);
    delay(600000) //retardo de 10 minutos para que pague el reloj la placa y fuente hasta la tarde
    }

    Else if((digitalRead(interruptord) == LOW) && (digitalRead(interruptorn) == HIGH)); // si el interruptor d esta Off y el interrutor n esta On entonces haz el anochecer asi

    {
    analogWrite(Linea1,255);
    analogWrite(Linea2,255);
    analogWrite(Linea3,255);
    analogWrite(Linea4,255); // led encendidos al 100%

    delay(7200000); // tiempo que los led estan encendidos al 100% con tiempo en milisegundos que son 2 horas

    analogWrite(Linea1,229); // comienzo de anochecer de 30 minutos que son 1800000 milisegundos
    analogWrite(Linea2,229);
    analogWrite(Linea3,229);
    analogWrite(Linea4,229);
    delay(225000); //algo menos de 4 minutos por salto

    analogWrite(Linea1,213);
    analogWrite(Linea2,213);
    analogWrite(Linea3,213);
    analogWrite(Linea4,213);
    delay(225000);

    analogWrite(Linea1,191);
    analogWrite(Linea2,191);
    analogWrite(Linea3,191);
    analogWrite(Linea4,191);
    delay(225000);

    analogWrite(Linea1,159);
    analogWrite(Linea2,159);
    analogWrite(Linea3,159);
    analogWrite(Linea4,159);
    delay(225000);

    analogWrite(Linea1,127);
    analogWrite(Linea2,127);
    analogWrite(Linea3,127);
    analogWrite(Linea4,127);
    delay(225000);

    analogWrite(Linea1,96);
    analogWrite(Linea2,96);
    analogWrite(Linea3,96);
    analogWrite(Linea4,96);
    delay(225000);

    analogWrite(Linea1,64);
    analogWrite(Linea2,64);
    analogWrite(Linea3,64);
    analogWrite(Linea4,64);
    delay(225000);

    analogWrite(Linea1,32);
    analogWrite(Linea2,32);
    analogWrite(Linea3,32);
    analogWrite(Linea4,32);
    delay(225000);

    analogWrite(Linea1,0);
    analogWrite(Linea2,0);
    analogWrite(Linea3,0);
    analogWrite(Linea4,0);

    delay(600000); //retardo de 10minutos para que no empiece el ciclo de nuevo y asi se apaga la placa y la fuente los led hasta el dia siguiente
    }
    }


    //////////////////////////////////////////////////////////////////////////////

    Pogo si me deja una imagen de como se haria la conexion al rele.
    Ya no pongo mas codigo del anterior hasta que no salga del hospital el portatil.

    Miniaturas Adjuntadas Miniaturas Adjuntadas Pulsa en la imagen para verla en tamaño completo

Nombre: ardusi.jpg
Visitas: 217
Tamaño: 16.8 KB
ID: 355144  
    TEMPORADA DE CRIA 2016:
    Amarillo mosaico linea macho
    Rojo mosaico linea macho
    Onix en verde Y bronce mosaico linea macho
    Verdecillos y sus R1,R2 F1, en jaspe y onix verde mosaico y gris y , hacia el verdecillo

  10. #20
    Avatar de Layans
    Fecha de Ingreso
    01 sep, 06
    Ubicación
    Salamanca
    Mensajes
    666

    Predeterminado Pantalla 128x64

    Todos los kit o componentes, reloj, pantalla, teclado, etcc tiene una libreria asignada que hay que incluir en el codigo, esn este caso con la orden: #include "LCD128x64.h"
    Vamos con la pantalla hoy.
    Yo tengo montada una LCD de 128x64 serial, esta pantalla tiene su propia librería, pero encontre una mas facil aqui: enlace.
    Empezamos con el codigo
    *****************************************
    #include "LCD128x64.h" //Añadimos la librería en nuestro código.
    //Iniciamos la pantalla con la librería sin parámetros.
    LCD128x64Class LaPantalla ();
    void setup(void)
    {
    // Definimos el tiempo de espera entre cada orden a la pantalla.
    LaPantalla.SetDelay(200); //Milisegundos
    // Definimos el brillo que queremos en la pantalla de 0 a 100.
    LaPantalla.Brillo(70);
    }
    void loop(void)
    {
    Lcd.Cls(); //Borramos la pantalla entera.

    //Escribimos en la posición que indiquemos, la posición va en escala de puntos 128 x 64 puntos.
    LaPantalla.WriteXY( Reloj.DateTime(), 10, 61);
    }
    ***************
    Dado que esta pantalla es grafica tambien, podemos meterle codigos para que nos dibuje cosillas, tales como un rectangulo, un circulo, lineas, etc.
    Estas pantallas tienen X e Y, como coordenadas para el alto y ancho, y este es el codigo de ordenes donde habria que cambiar "X" por un numero(max 128) e "Y" por otro (max 64), asi haria el circulo, cuadrado u otra cosa en el sitio donde quisieramos:

    //Borrar una zona determinada de la pantalla
    void Borrar(byte desde_x, byte desde_y, byte hasta_x, byte hasta_y);

    //Activar o desactivar un punto de la pantalla.
    void Pixel(byte x, byte y, byte modo);

    //Posicionar el cursor en unas coordenadas de la pantalla.
    void GotoXY(byte x, byte y);

    //Escribir en la pantalla en la posición actual del cursor.
    void Write(char* st);
    void Write(int st);
    void Write(long st);
    void Write(float st);
    void Write(float st, int decimales);

    //Escribir en la pantalla en la posición que le digamos.
    void WriteXY(char* st, byte x, byte y);
    void WriteXY(int st, byte x, byte y);
    void WriteXY(long st, byte x, byte y);
    void WriteXY(float st, byte x, byte y);
    void WriteXY(float st, byte x, byte y, int decimales);

    //Dibujar en la pantalla un rectangulo.
    void Rectangulo(byte x1, byte y1, byte x2, byte y2);

    //Dibujar en la pantalla un circulo.
    void Circulo(byte CentroX, byte CentroY, byte Radio, byte modo);

    //Dibujar en la pantalla una linea.
    void Linea(int x1, int y1, int x2, int y2, int z);

    //Dibujar en la pantalla un grafico.
    void Imagen( int desde_x, int desde_y, int ancho, int alto, int modo, PROGMEM prog_uint16_t *array);

    Esto seria cada uno probar o experimentar lo que quiere y como lo quiere. Esta es la pantalla por detras con el serial en rojo y de frente. (fotos no mias)

    Continuara con el teclado en proximos dias.........................

    Tambien hay otro post con un mini tutorial para hacer una fuente de alimentacion para las tiras led y el arduino en enlace aqui: http://www.canariculturacolor.com/fo...d.php?t=197881
    Miniaturas Adjuntadas Miniaturas Adjuntadas Pulsa en la imagen para verla en tamaño completo

Nombre: serial-lcd-128x64 frontal.jpg
Visitas: 195
Tamaño: 39.0 KB
ID: 355243   Pulsa en la imagen para verla en tamaño completo

Nombre: serial-lcd-128x64.jpg
Visitas: 211
Tamaño: 43.5 KB
ID: 355242  
    Última edición por Layans; 31/03/2014 a las 16:08
    TEMPORADA DE CRIA 2016:
    Amarillo mosaico linea macho
    Rojo mosaico linea macho
    Onix en verde Y bronce mosaico linea macho
    Verdecillos y sus R1,R2 F1, en jaspe y onix verde mosaico y gris y , hacia el verdecillo

Página 2 de 6 PrimerPrimer 123456 ÚltimoÚltimo

Permisos de Publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •