Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Cubo di LED

Elettronica lineare e digitale: didattica ed applicazioni

Moderatori: Foto Utentecarloc, Foto Utenteg.schgor, Foto UtenteBrunoValente, Foto UtenteIsidoroKZ

1
voti

[11] Re: Cubo di LED

Messaggioda Foto UtenteIsidoroKZ » 27 set 2011, 21:39

Q2 e` una protezione di corrente, normalmente e` spento.

Prima di fare qualunque cosa, prendi un led di quelli che userai, il micro che userai e scrivi un programma che lo accenda con duty cycle dello 0.2%.

Tutto il resto viene dopo.
Per usare proficuamente un simulatore, bisogna sapere molta più elettronica di lui
Plug it in - it works better!
Il 555 sta all'elettronica come Arduino all'informatica! (entrambi loro malgrado)
Se volete risposte rispondete a tutte le mie domande
Avatar utente
Foto UtenteIsidoroKZ
121,2k 1 3 8
G.Master EY
G.Master EY
 
Messaggi: 21059
Iscritto il: 17 ott 2009, 0:00

0
voti

[12] Re: Cubo di LED

Messaggioda Foto Utentesimo85 » 27 set 2011, 22:07

Grazie per il chiarimento su Q2.

Questa settimana andò al negozio di componenti e prenderò una manciata di LED (penso quelli trasparenti, proverò quelli verdi o blu), farò le prove che mi hai consigliato, testerò anche la luminosità in funzione di una corrente fissa in maniera da decidere un valore approssimato per la corrente di alimentazione.

Come microcontrollore per il momento a disposizione ho solo un ATMega328 (Arduino) che va benissimo. Anche se lavora ad una frequenza di 16MHz e magari con il PIC del cubo userò l'oscillatore interno del PIC da 4MHz, mi farò i calcoli di temporizzazione e le prove.

A presto e grazie
O_/
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[13] Re: Cubo di LED

Messaggioda Foto Utentesimo85 » 29 set 2011, 2:06

Eccomi di nuovo. Oggi pomeriggio, armato di buona volontà, nella pausa delle lezioni sono riuscito ad andare a comprare i LED che mi interessano, trasparenti blu come nel progetto linkato al messaggio 1.

Come primo test, ho voluto alimentare il LED a \approx 10 \text{mA}, sapendo che la V_{OH} del micro è di 4.95 \text V e V_{F} \approx 3 \text V ho quindi usato 2 R in serie da 100 \Omega.
A frequenza nulla, V_{F} = 3.07 \text V e I_{F} = 8 \text mA.

Ora la prova che mi hai consigliato. Come giustamente avevi preannunciato, la luminosità è ridotta. Il programma usato è questo
Codice: Seleziona tutto
#define F_CPU 16000000UL
#include <avr/io.h>
#include <util/delay.h>

int main(void)
{
    DDRB = 0xff;

    /* Infinite loop */
    while(1)
    {
        /* turn on LED for 20us */
        PORTB |= _BV(PB5);
        _delay_us(20);
        /* turn off LED for 80us */
        PORTB &= ~_BV(PB5);
        _delay_us(80);
    }   
    return 1;
}

Allego anche una immagine salvata con l'oscilloscopio
0.2DCycle.png
0.2DCycle.png (4.94 KiB) Osservato 988 volte

In queste condizioni come previsto, ho quindi V_{F2} \approx V_{f} \cdot D_{Cycle} = 614 \text{mV} e I_{F2} \approx I_{F} \cdot D_{Cycle} = 1.6\text{mA}.

Provando ad alimentarlo a 20 \text{mA} a frequenza nulla la corrente misurata è 13 \text {mA} mentre con la prova di duty cycle è 2.56 \text {mA}

Ho registrato anche la prova per osservarne la differenza di luminosità durante il test a \approx 10 \text{mA}. Prima a frequenza nulla e poi con il duty cycle un paio di volte.



Spero che il test sia OK, se ritieni opportuno fare qualche altra prova, dimmi pure.
Grazie mille.
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[14] Re: Cubo di LED

Messaggioda Foto UtenteIsidoroKZ » 29 set 2011, 11:15

Ok. Prova con un tempo di accensione di 40us e di spegnimento di 20ms, che e` quanto otterresti usando i decodificatori e accendendo un led per volta.

La corrente non puo` essere tanto elevata perche' i decoder piu` di una decina di milliampere (e gia` tirandoli oltre le specifiche) non riescono a dare.

Guarda la luminosita` con i tempi che ho detto prima.
Per usare proficuamente un simulatore, bisogna sapere molta più elettronica di lui
Plug it in - it works better!
Il 555 sta all'elettronica come Arduino all'informatica! (entrambi loro malgrado)
Se volete risposte rispondete a tutte le mie domande
Avatar utente
Foto UtenteIsidoroKZ
121,2k 1 3 8
G.Master EY
G.Master EY
 
Messaggi: 21059
Iscritto il: 17 ott 2009, 0:00

0
voti

[15] Re: Cubo di LED

Messaggioda Foto Utentesimo85 » 29 set 2011, 14:45

Ieri avevo provato con un duty cycle praticamente uguale: T_{\text{On}} = 2 \mu \text s & T_{\text{Off}} = 998 \mu \text s.
Avrei dovuto dirtelo, siccome la luminosità è decisamente scarsa non gli ho dato importanza e ti chiedo scusa perché mi avevi già avvisato su questi tempi.

In ogni caso c'è un piccolo cambio. Userò i LED trasparenti però verdi, la differenza è che questi mi costano 150€ di meno... Ho comunque fatto le stesse prove come prima ed i risultati sono praticamente uguali.

Posto comunque i risultati dell'ultima prova che mi hai chiesto.
Prima con un solo LED:



Successivamente ho implementato un ring counter a 3 bit:
Codice: Seleziona tutto
#define F_CPU 16000000UL
#include <avr/io.h>
#include <util/delay.h>

int main(void)
{
    int i = 0;
    DDRB = 0xff;

    /* Infinite loop */
    while(1)
    {
        /*
           0x20 >> 0x10 >> 0x08
        */
        for(i = 0; i < 3; i++)
        {
          if(i == 0)
            PORTB = 0x20;
          if(i == 1)
            PORTB = 0x10;
          if(i == 2)
            PORTB = 0x08;
          /* turn on a LED for 40us */   
          _delay_us(40);

          /* turn off for 20ms */             
          PORTB = 0x00;
          _delay_ms(20);
        }
    }   
    return 1;
}


e questa è l'esecuzione


Direi che è meglio con i registri :-)
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

Precedente

Torna a Elettronica generale

Chi c’è in linea

Visitano il forum: Nessuno e 74 ospiti