Encender LEDs según la hora del día.

Hola!
Les cuento mi primer proyecto y después cuando lo complicaron :) . Tambien quiero decir que no trabajo ni estudio con electronica (soy Cientifico de la Computacion y Matematico), lo que quiere decir que a lo mejor lo que pregunto es estupido, pero no, no se la respuesta y no la encuentro en Internet :D .

Me habian mandado a encender 24 LEDs a la misma vez. Eso era todo. Para ero no tenia problemas, los LEDs conectados en serie, bateria de 3 V para no tener que usar resistencia, un interruptor y mucho cable. Pero... despues me lo han complicado :(

Ahora los LEDs se deben encender de dos en dos por horas. Es decir, de 6 a 7, dos LEDs, a las 7 se apagan y se encienden otros dos de 7 a 8. Asi sucesivamente las 24 horas. Es decir, los LEDs de 6 a 7, se repetiran de 18 a 19.

QUE HAGO?????????

Que he pensado...

Uso una bateria de Movil de 12 V, un interruptor, un microcontrolador y los 24 LEDs. Como dos LEDs van a estar conectados en serie, el microcontrolador puede ser de conteo 12.

Pero... el prblema de la hora??? El microcontrolador sabe la hora? Supongo que deba tener alguna de estas baterias circulares para no perder la hora.
Para usar la bateria del movil me hace falta algo mas no? Como se recargaria la bateria?

En fin... es eso. Alguien tiene alguna idea???? Supongo que no sea muy dificil, pero yo no se como hacerlo. Y si pueden, por favor, me dicen cosas concretas, como, el microcontrolador especifico que me serviria. Por supuesto, si saben que hay uno, pero no saben cual es, igual yo lo busco.

Muchas gracias!!!!!!! :D
 
Última edición:
Primeramente, creo que en el primer párrafo equivocaste, 24 LED en serie con una bateria de 3V no encenderá ninguno, pero bueno, ese ahora no es el problema jaja
Yo haría lo siguiente, programaría el microcontrolador como un contador de tiempo, es decir, tienes dos opciones, o bien acoplar un reloj RTC que hay por el mercado, o bien, de forma menos precisa, usar el oscilador del microcontrolador para contar minutos.
Cuando cuente 60, tomar salida de puertos 00000001
Cuando cuente otros 60, correr el registro a la izquierda 00000010
etc
La segunda opción será más complicada, ya que un micro trabaja normalmente en micro o nanosegundos, y el tamaño de registros no supera los 8 bits, normalmente. Necesitarás cantidad de registros para hacer un contador de minutos, y unos cuantos más para saber cuántos minutos han pasado. Si lo haces en un lenguaje de programación tipo C o tipo Basic, con poner un delay o un pause de 1u y hacerlo 1000000 de veces con un bucle for (necesitarás variables de 24 o 32 bits) te vale. En fin, tu decides.
 
:D No funcionaria ninguno??? :D Oops! :) Pues ya ves que no tengo ni idea de electronica :)

Entonces seria,

Bateria-> Interruptor -> (Reloj RTC) -> Microcontrolador-> Resistencia -> Cable -> LED (y regresa al micro)

Bateria:
Sabrias como poder cargar la bateria como si fuera un movil?
Una bateria de 12 V serviria no?

Reloj RTC:
Evidentemente no tengo idea de como funciona, pero eso puedo buscarlo, no soy tan vago :) De paso veo como se acopla a un micro

Microcontrolador:
Podrias sugerirme algun microcontrolador?

MUCHISIMAS GRACIAS :D :D :D
 
Te recomendaría que usases un arduino, están muy bien documentados y hay librerías de todo tipo.
Módulos RTC hay también económicos como n librería para usarlos etc.
Por otra parte led sin resistencia = led fundido, se ha repetido cientos de billones de veces en el foro y por qué es eso así.
 
Última edición:
Si, tienes razon con lo de la resistencia, pero eso lo he leido, que cuando la fuente de alimentacion no supera los 3 V no es necesaria, sin embargo te apoyo, creo que hay que usarla.

Lo que no me sirve es arduino. :/ es muy grande, me gustaria algo mas pequeno, como una especie de placa, pero bueno, a lo mejor pueda conseguir el microcontrolador que usa el arduino.

Tienes alguna idea de lo que pregunto con respecto a la bateria?

MUCHAS GRACIAS!



Creo que voy a usar el ATmega165P o el ATmega165PA, porque tienen como Max I/O Pin 54. Asi puedo conectar unos cuantos LEDs.

Que creen?

Pero... soy un desastre :) Como lo programo? :) Es decir, se programar, me dedico a crear algoritmos y optimizarlos, no me importa el lenguaje que sea, si no lo conozco lo aprendo. Pero... como le paso codigo al microcontrolador si no tiene ningun cable? :) hehehe esto se esta poniendo interesante.

Gracias otra vez :)
 
Última edición:
Si, tienes razon con lo de la resistencia, pero eso lo he leido, que cuando la fuente de alimentacion no supera los 3 V no es necesaria, sin embargo te apoyo, creo que hay que usarla.

Lo que no me sirve es arduino. :/ es muy grande, me gustaria algo mas pequeno, como una especie de placa, pero bueno, a lo mejor pueda conseguir el microcontrolador que usa el arduino.

Tienes alguna idea de lo que pregunto con respecto a la bateria?

MUCHAS GRACIAS!



Creo que voy a usar el ATmega165P o el ATmega165PA, porque tienen como Max I/O Pin 54. Asi puedo conectar unos cuantos LEDs.

Que creen?

Pero... soy un desastre :) Como lo programo? :) Es decir, se programar, me dedico a crear algoritmos y optimizarlos, no me importa el lenguaje que sea, si no lo conozco lo aprendo. Pero... como le paso codigo al microcontrolador si no tiene ningun cable? :) hehehe esto se esta poniendo interesante.

Gracias otra vez :)

Arduino UNO + modulo RTC --- 12 dolares
para los led una matriz de led que vale poco también o un modulo de 24 led bicolor que hay para arduino, así los que enciendas los puedes mostrar de otro color.

lo programas con el programa de arduino en c, puedes conseguir el microcontrolador que usa el arduino, pero no te servira como un arduino a no ser que le cargues el bootloader.

https://learn.adafruit.com/adafruit-led-backpack/bi-color-24-bargraph
 
Última edición:
Si, voy a tener que cargarle el bootloader porque lo quiero usar en un guante :D Por eso, seria muy complejo con el arduino, y la unica necesidad que tengo es la de encender los LEDs por horas.

MUCHISIMAS GRACIAS!!!! :D Esta genial la pagina que me mandaste. :)

Para el tema de la bateria, supongo que existe algun aparato donde la enganche y la conecte a lo demas, tienes alguna idea :/ eso me va faltando. Y no quiero usar el metodo del USB a la bateria que parece un no se que.
Cuantos V me harian falta para 40 LEDs??? Suponiendo que los LEDs sean de 2V?

Muchas gracias otra vez!!!
 
Si, voy a tener que cargarle el bootloader porque lo quiero usar en un guante :D Por eso, seria muy complejo con el arduino, y la unica necesidad que tengo es la de encender los LEDs por horas.

MUCHISIMAS GRACIAS!!!! :D Esta genial la pagina que me mandaste. :)

Para el tema de la bateria, supongo que existe algun aparato donde la enganche y la conecte a lo demas, tienes alguna idea :/ eso me va faltando. Y no quiero usar el metodo del USB a la bateria que parece un no se que.
Cuantos V me harian falta para 40 LEDs??? Suponiendo que los LEDs sean de 2V?

Muchas gracias otra vez!!!

Pues como los led están en paralelo, te harán falta eso 2 Voltios, pero suponiendo todos los led encendidos a un mínimo de 3 mA por led, tendrás que tener una batería de 3mA/Ledx40Led = 120 mA. Si no te vale el Arduino UNO echale un vistazo al arduino NANO
 
Muchas gracias angelp4492.
Si, creo que con una bateria de telefono celular me daria bien.
Le eche un vistazo a... todos los arduinos :) El mini pro esta muy bueno y muy pequeno, pero solamente tiene 14 pines I/O, lo mismo le pasa al nano :/ . El DUE y los MEGAs, tienen 54, pero son muy grandes. Entonces me queda solo el Micro, pero tiene 20 pines I/O.
Como quiero usar 20 LEDs en paralelo (lo mismo, 40 LEDs, pero dos en serie, al final serian 20 en paralelo) Me harian falta al menos 40 pines I/O .
Es por eso que lo que habia pensado era, coger el microcontrolador ATmega165PA, que trae 54 pines I/O programables.
Ahi, lo que me quedaba era acoplar el RTC al microcontrolador, y sobre todo, ver como lo podia programar. He visto que hay unos dispositivos que son como unas cajas para programar microcontroladores.
Despues tendria que ver donde lo pongo, porque eso iria en el guante. Eso por ello que lo mejor seria usar un Arduino, que ya viene con todo. Pero no lo encuentro pequeno y con capacidad para 20 LEDs en paralelos.
Ahora lo que voy a hacer es ver en las descripiciones del arduino, donde es que se pone el microcontrolador.

Igual, si se le ocurre algo, me ayudarian. Pero estoy super contento, me han ayudado un monton.

GRACIAS!
 
No, no me referia a paralelo :) Queria decir que los LEDs estarian en pines diferentes. Por eso me hacen falta 40 pines I/O, 20 para I y 20 para O. y por cada pin, conectaria 2 LEDs en serie.
:D Pero gracias, tienes razon, si los pongo en paralelo, se quemarian muy interesantemente hahaha :)
 
Me parece que primero tendrías que definir mejor el proyecto y a partir de ahí seguir. Al menos a mi me resulta muy confuso imaginar que quieres hacer.
Solo necesitas cuarenta pines si vas a hace cuarenta cosas diferentes y aún así hay bastantes opciones I²C , SPI etc para con pocas salidas ampliar a todas las que necesites sin tener que comprar un microcontrolador de 40 IOs que son bastante raros.
Si todos hacen lo mismo, necesitas un pin, un transistor y cuarenta resistencias, o veinte si van en serie dos a dos. De todos modos un pin de un microcntrolador no da mas de 30mA que dan como mucho para dos leds en paralelo* (Cada uno con su resistencia limitadora, no en paralelo de verdad).
 
Primero especifico otra vez el proyecto, porque es verdad, se ha disfuminado un poco.

Quiero hacer un guante con 40 LEDs, donde segun la hora del dia, se van encendiendo los LEDs de dos en dos. De 8 a 9 de la mannana, 2 LEDs, de 9 a 10 otros dos LEDs, etc... Asi por 24 horas. Cuando se acaben los LEDs, vuelve a comenzar desde el principio hasta que se cumplan las 24 horas.

Es eso.

No conozco los I²C, y de los SPI conozco poco, se que son un bus de interfaz de periféricos, pero no sabia que servia para ampliar salidas.

Los LEDs no haran cosas diferentes, haran lo mismo, pero a diferentes horas, por eso habia pensado
que necesitaba un pin por cada dos LED. Estoy errado no?

Podrias darme una mano con lo del transistor? Ni habia pensado en ellos!
No soy electronico, lo poco que se de electronica es de hobby y que de vez en cuando me gusta usar cosas de electronica en mis proyectos, a pesar de que siempre el fuerte tiene que estar en la programacion. Por eso me cuesta tanto trabajo esta parte del proyecto aunque por arriba o para Ustedes sea sencilla. Pero bueno, a base de golpes que me doy :)

Muchas gracias otra vez, de verdad que me estan ayudando un monton, no pense que la comunidad fuera tan unida. Ojala y algun dia cercano yo tambien pueda ayudar aqui dando consejos. (Aunque sean de Matematica o cosas relacionadas a la computacion :) )
 
"lo mismo a diferente hora" es "diferente". Osea que necesitas 20 salidas diferentes.
Si son solo dos led dependiendo del color pueden estar en serie y con una sola resistencia para los dos. Como la corriente no es muy elevada puedes ponerlos sin transistor directamente desde el pin.

Podrías usar este:
http://www.dx.com/es/p/arduino-pro-...rcuit-board-blue-5v-16mhz-178183#.VInGe_m37tQ
Hay que dejar libres y A4 y A5 que son el I2C para conectar el RTC y me parece que te quedan 20 pines disponibles.

Como RTC por ejemplo este:
http://www.dx.com/es/p/i2c-rtc-ds13...k-module-for-arduino-blue-149493#.VInHivm37tQ
 
Primero que todo. ESE LUGAR ESTA GENIAL!!!! Tienen envio a Alemania y todo!!!!! :D GRACIAS!!!!!!

Ahora bien, disculpa mi ignorancia, pero veo estas especificaciones:

- Color: Azul
- 14 Entrada / salida digital RX, TX, D2 ~ D13
- 8 entradas analógicas AO ~ A7, 2 puerto serie de nivel TTL x RX / TX
- 6 puertos PWM: D3, D5, D6, D9, D10, D11;Adoptar Atmel ATMEGA328P-AU monopastilla
- Soporta descarga de serie
- Soporta 3.3V ~ externa fuente de alimentación de 12 V DC
- Soporta alimentación por batería de 9V
- Frecuencia de reloj: 16 MHz
- Viene con 2 x clavijas

tiene 14 pines de entrada y salida, de donde saco los otros?

Sin embargo, esto es lo que he pensado hacer hasta ahora. (Por supuesto, que si logro resolver con ese Arduino, seria mucho mas facil)

He pensado utilizar un arduino Mini Pro, y a este, conectarle un Shift Register 74HC595, de ahi, resuelvo el problema de los transistores. Con ello, podria sacar hasta 8 nuevos pines con transistor. Ahora aplico Charlieplexing y como sabras tendria n(n-1), es decir, hasta 56 LEDs.

Que crees de eso?

Muchas gracias otra vez!
 
todavía con todo lo que has explicado no concibo que es lo que quieres hacer, y mucho menos para que quieres hacer eso?? si se trata de encender y apagar led la estas liando bien gorda, como bien han dicho por hay con 14 pines tienes más que de sobra con el bus i2c y el PCF8574 q es un port expand por el i2c , o por ejemplo el TLC5940 que es un integrado especifico para led. Y desde luego tiene huevos las gilipolleces que mandan los profesores.
 
ZZZZENKIUUUUUUUUUUUUU!!!!!!!!!! :D :D :D :D

SI SI, voy a usar eso :), y lo voy a acoplar al RTC

GRACIAS!!!!!!!! Al final me quede emocionado con el Charlieplex, pero no me hace falta por ahora (aunque lo voy a implementar solo por curiosidad)

Entonces me queda asi...

1 - Bateria de telefono celular (Creo que con 1430mAh a 3.7 V me debe dar, es una bateria de Nokia Lumia 520). Tambien voy a ver si la pongo en algun dispositivo para que sea como cargar un movil. Si no lo encuentro, su mejor cable USB. :)

2- Interruptor (tratare que sea de telefono, para que sea mas pequeno)


3- Arduino con RTC integrado (no se como hacerlo todavia, pero ya vere, y lo programo con el adaptador USB que esta genial.)

4- Resistencia (Como voy a usar dos LEDs de 2V, creo, la bateria es de 3.7, y los leds necesitan 20mA, la resistencia necesaria seria de 85 Ohm, pero le pongo una de 100 Ohm que es la alta mas cercana)

5- Dos Leds conectados en serie y de vuelta a la tierra. :)


MUCHISIMAS GRACIAS!!!!!! Igual, no cierro el tema todavia, porque quisiera ensennarles como va quedando, al final no lo hubiese logrado sin la comunidad :D gracias!

Creo que seria mejor una bateria Lipo de 7.4 V y 2200 mAh. Pero no se como conectarla al interruptor que estara conectado al arduino.
El voltaje me lo da el Arduino, en este caso serian 5V, la resistencia debe ser de 56 Ohm.
 
Última edición por un moderador:
Cuidado, el arduino tiene un regulador de tensión pero no es capaz de entregar mucha corriente.
Además para baterías te interesaría un regulador conmutado que es mas eficiente que un regulador lineal como el que lleva el arduino dentro.
 
Atrás
Arriba