⚡ Descuentos en cursos en video - Lleva tu aprendizaje técnico al siguiente nivel y aprovecha precios especiales antes de que termine la oferta. 🔥 Aprovechar oferta ahora 🔥
Arduino

consulta sobre arduino uno

MV Computacion
hace 2 años
hace 2 años
estoy digamos jugando con arduino por primera vez y quiero hace una luz rgb con la lámpara del escáner, lo que busco lo hace bastante bien, pero hay una parte que no me gusta y no le encuentro la vuelta, quiero que se repita siempre el ciclo, pero en un momento se apaga, y no quiero que se apague, sino que vuelva empezar.

aqui les dejo el codigo que tengo y un video. aclaro que es la primera vez que hago algo con arduino, o sea no tengo idea de nada.

alguien me ayuda con el codigo para que no se apague? gracias desde ya

int pinledr = 11;  // pin rojo del led rgb
         int pinledv = 10;  // pin verde del led rgb
         int pinleda = 9;   // pin azul del led rgb
     
         int pausa = 500;
     
         void setup(){
           pinmode(pinledr, output);    // pone el pinledr como output
           pinmode(pinledv, output);    // pone el pinledv como output
           pinmode(pinleda, output);    // pone el pinleda como output
   }
     
         void loop(){
           //  colores basicos:
           color(255, 0, 0);   // rojo
           delay(pausa);       // delay por pausa
           color(0,255, 0);    // verde
           delay(pausa);       // delay por pausa
           color(0, 0, 255);   // azul
           delay(pausa);       // delay por pausa
       
           // colores mezclados:
           color(255,255,255); // blanco
           delay(pausa);       // delay por pausa
           color(255,255,0);   // amarillo
           delay(pausa);       // delay por pausa
           color(255,0,255);   // magenta
           delay(pausa);       // delay por pausa
           color(0,255,255);   // cian
           delay(pausa);       // delay por pausa
           color(255,255,255); // blanco
           //color(0,0,0);       // apagado

                // vuelta atras

           color(255,0,255);   // magenta
           delay(pausa);       // delay por pausa
           color(255,255,0);   // amarillo
           delay(pausa);       // delay por pausa
           color(255,255,255); // blanco
           delay(pausa);       // delay por pausa
           color(0, 0, 255);   // azul
           delay(pausa);       // delay por pausa
           color(0,255, 0);    // verde
           delay(pausa);       // delay por pausa
           
   }  
         
         // funcion para generar colores
         void color (int rojo, int verde, int azul) {    
           analogwrite(pinledr, rojo);
           analogwrite(pinledv, verde);
           analogwrite(pinleda, azul);
   }

WhatsApp Image 2023-05-11 at 12.32.54.jpeg WhatsApp Image 2023-05-11 at 12.33.16.jpeg
Hernan Cass
Hernan Cass
17.886
hace 2 años
hace 2 años
Se apaga siempre en el mismo lugar del programa o es aleatorio?
Cuanta corriente consume esa barra de leds, porque la veo bastante brillante, no será que se recalienta algo y falla, recuerda que el Arduino no puede manejar mucha corriente en su salida (creo que lo máximo es 40mA) y que esa corriente de 40mA x 3 salidas genera bastante calor en el micro (fijate la disipación máxima), ademas esos 120mA pueden recalentar el regulador de 3.3v que alimenta todo.
Fíjate de conectar 3 leds simples comunes (aunque sean del mismo color) con su resistencia correspondiente y prueba si el programa falla con eso. Si no falla así falla por lo que te dije antes y vas a  precisar un circuito amplificador de corriente para poder alimentar esa barra de leds.
Saludos.
MV Computacion
hace 2 años

buen día Hernán, la barra es una lampara e escáner de impresora, pensé en poner algunas resistencias de 200 para que brille menos, si no recuerdo mal soporta hasta 5 v la barra. de momento esta alimentado por el USB de la pc

Responder
Hernan Cass
Hernan Cass
17.886
hace 2 años

Al revés, que la barra esté exigiendo al Arduino y este se cuelgue o proteja. Eso es lo que te digo. Esa barra debe estar consumiendo bastante, por qué no mides el consumo dela misma alimentando la con 3.3v?

Responder
MV Computacion
hace 2 años

dale, genial, mañana voy a probar y te comento como viene el tema, la verdad que no tengo idea del tema, y justo había pensado eso de los 3.3v hoy a la tarde como para probar, cualquier cosa te vuelvo a consultar o te aviso si queda bien

Responder
Hernan Cass
Hernan Cass
17.886
hace 2 años

Si el consumo es el problema vas a precisar un circuito amplificador de señal que puede hacerse con un transistor y una resistencia por cada pin de salida.

Responder
MV Computacion
hace 2 años

lo que me resulta raro es que lo copie de otra persona que lo hizo y le funciona bien, mañana pruebo y te comento como me fue

Responder
Hernan Cass
Hernan Cass
17.886
hace 2 años

Si, pero por eso sospecho que es algo que recalienta y se apaga, pensá que un led común de los de 5mm consume 20mA (eso los comunes más comunes) máximo cada salida solo puede manejar 2 leds de 5mm al mismo tiempo y esa barra ilumina mucho más que 2 de esos leds.
Consigue 3 de esos leds y conectalos a su salida con la resistencia que corresponde según el color (consumen 20ma, pero el voltaje es menor en algunos, los rojos funcionan con 2,2v por eso llevan resistencia) y por a correr el programa si no se cuelga es lo que te digo y yo no probaría más con esa barra pues puedes quemar el Arduino

Responder
Hernan Cass
Hernan Cass
17.886
hace 2 años

Ahora que releo no se entiende lo que quise que conectes....
Consigue 3leds y 3 resistencias y conecta un led con su resistencia en cada salida como para ver si el programa responde bien. Pueden se 3 leds iguales, es solo para ver si el pin enciende y no se cuelga. Si la salida del Arduino es de 3.3 va con resistencia de 150ohms. Si es de 5v, la resistencia es de 220ohms.

Responder
MV Computacion
hace 2 años

genial, ahora voy a probar eso, vos decis que el codigo esta bien?

Responder
MV Computacion
hace 2 años

sabes que estuve probando como me comentaste, probé en las dos salidas, en la de 3,3 y la de 5, con sus respectivas resistencias, y hace lo mismo, se apaga, asi que supongo que el tema está en el código. en la línea 33 dice apagado, si bien esta como comentario, se me hace que viene por ese lado el problema

Responder
Hernan Cass
Hernan Cass
17.886
hace 2 años

Pero se apaga siempre en el mismo lugar o se apaga a tiempos distintos?

Responder
Hernan Cass
Hernan Cass
17.886
hace 2 años

A simple vista no veo nada malo en el código, ese apagado es porque pone el color 0,0,0 .
Cambia los pines de salida tanto en el programa como en la placa, creo que los otros PWM son los 3,5 y 6. No sea que tengas un corto en uno de ellos por sobrecargarlo.

Responder
MV Computacion
hace 2 años

elimine la linea de código donde aparece el color blanco y santo remedio, ya no hace el apagado, igual sigo haciendo pruebas, cualquier cosa te vuelvo a molestar

Responder
MV Computacion
hace 2 años

ya que te tengo a mano, srvira un trafo de 12 v de 2 amperes para alimentar el arduino?

Responder
Hernan Cass
Hernan Cass
17.886
hace 2 años

Depende del modelo de la placa, si tiene regulador que baje el voltaje y soporte esa entrada no hay problema.

Responder
MV Computacion
hace 2 años

la placa dice que es el arduino UNO, no hay otro dato a la vista, en teoria se podria usar, pero no quiero meter la pata

Responder
MV Computacion
hace 2 años

la otra opcion es or medio del USB con un cable conectado a un cargador de celular que da 5 v

Responder
Hernan Cass
Hernan Cass
17.886
hace 2 años

Sube fotos nítidas de ambos lados de la placa para verla bien, así te digo si tiene reguladores y de que amperaje y voltaje.

Responder
MV Computacion
hace 2 años

listo subidas

Responder
Hernan Cass
Hernan Cass
17.886
hace 2 años

fijate el componente que está arriba del Jack. debe ser un 1117-5 (puede variar alguna letra la nomeclatura) es es un regulador a 5v, Maximo voltaje de entrada 15v (así que cuidado con alimentarlo con fuentes comunes (transformador de hierro) pues al rectificar se eleva el voltaje, muchas fuentes de 12v de esas entregan casi 16v.
También tene en cuenta la disipación, si el componente tiene que bajar de 12 a 5 una corriente de 200mA va a generar 0.2A * 7V = 1.4watt que excede el diseño del mismo de 1.2watt. si tiene que bajar de 9 a 5 esa corriente 0.2A x 4v = 0.8W.

Responder
Hernan Cass
Hernan Cass
17.886
hace 2 años

Tampoco es aconsejable extraer mucha corriente pues puedes sobrecalentar el micro. Generalmente para manejar corrientes elevadas se coloca algun circuito que aumente la potencia del Arduino y que no se alimente de la propia placa.

Responder
MV Computacion
hace 2 años

me voy a tirar por un cargador de celular

Responder
MV Computacion
hace 2 años

igual voy a medir cuanto me entrega las de 12 v para tener una idea, pero creo que con el cargador de cel con el cable usb, tendria que funcionar

Responder

¿Conoces una solución?

¡Aprende a reparar con estos cursos YoReparo!

4.73
(22)

Curso Reparación de Fuentes Conmutadas de PC y Equipos Electrónicos

Maximiliano Resch
$ 40 USD
$ 20 USD
4.6
(10)

Curso Localización de Fallas en Refrigeración en Heladeras/Neveras On/Off

Yamil Alarcón
$ 29 USD
$ 12 USD
4.64
(11)

Curso Electrónica para Reparación de Placas

Santiago Cediel
$ 29 USD
$ 11 USD
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos?
Regístrate gratis