Costruzione Orologio a led da parete - guida per dummies

scusate,
altra domanduccia: come riconosco positivo da negativo dei transistor bc337 e bc 327? ho visto solo che la testa è una sorta di semicilindro :slight_smile:

I transistor hanno 3 piedini, devi cercare su un motore di ricerca il transistor specifico perché non esiste una piedinatura unificata e ogni transistor ha la sua piedinatura, più o meno.

A me sembra che tu stia aggiungendo sempre più funzioni quando ancora non hai acceso nemmeno un led.
Cerca esempi che usano direttamente i led a 7 segmenti, l'esempio che hai trovato usa un LCD e con quello l'orario si scrive come in un print.
Visualizzare una temperatura non sarà un problema. Anche per la data. Ma questo viene dopo.

ghezzia:
scusate,
altra domanduccia: come riconosco positivo da negativo dei transistor bc337 e bc 327? ho visto solo che la testa è una sorta di semicilindro :slight_smile:

Ciao ghezzia, il vero miracolo sarà veder acceso e funzionante questo meraviglioso progetto senza che tu capisca un'acca di elettronica, forse un minimissimo di lettura di base, ma ormai sei troppo preso dalla fretta, ed è un peccato perché sarebbe un'occasione buona per farti una cultura oltre che realizzare il tuo primo progetto.
Il transistor, a meno che tu non parta dalla costruzione fisica, non ha poli positivi e negativi, ma tre poli ben distinti, che si chiamano base, collettore ed emettitore; si dividono in due grandi famiglie, in base alla polarità delle due giunzioni fisiche che li compongono: NPN e PNP, i primi molto più usati dei secondi perché hanno prestazioni migliori; in genere la base serve per "controllare" la giunzione tra collettore ed emettitore, nel primo entra la corrente, dal secondo esce, ma devi comunque considerarlo come una sorta di "canale" unico, poi esistono varie modalità di uso o "configurazioni"; nella maggior parte dei casi si usa come una sorta di interruttore on/off, cioè fornendo una opportuna tensione/corrente alla base, la giunzione CE va quasi in corto circuito, togliendola invece di interrompe e non fa passare più corrente. Negli altri casi si usa come amplificatore "regolabile", appunto modulando la resistenza tra C ed E. La descrizione è molto spartana e rozza, ma almeno ora puoi distinguere un transistor da un LED, e non solo per la forma o il numero di piedini....e comunque sono parenti..... :slight_smile:
Sto veramente seguendo con grande ammirazione coloro che ti stanno aiutando, con schemi, suggerimenti e tanta pazienza; personalmente, da "professore" (ma non in questo campo), ti avrei prima costretto a studiare un poco, però se alla fine si arriva al risultato senza troppi danni, va bene lo stesso, in fondo questo, per gente come noi, è un passatempo e non un lavoro.

Personalmente ti consiglierei di scaricarti in PDF il libro "imparare l'elettronica partendo da zero" (non si puo mettere il link perche', anche se la proprieta' non esiste piu, e' comunque protetto de copyright, ma lo si trova facilmente con google) ... non solo per le nozioni di base che contiene, che non fanno mai male, ma anche perche', in mezzo ai vari esempi, ci sono pure i disegni di parte dei comuni componenti elettronici, con le loro piedinature :wink:

ghezzia:
Aspetta aspetta! diciamo che la scelta del multiplexing mi sembrava fosse logica dal momento che la uno (o la MCU che la sostituirà) non hanno un numero sufficiente di pin... giusto?

Se preferisci farlo con 4 shift al posto di due ed evitare il multiplexing, faccio presto a disegnarti anche quello schema ... pero' diventano 8 integrati (4 shift e 4 ULN2803), oppure 4 integrati e 29 transistor (per cui secondo me' ti conviene usare gli ULN, spendi di meno e ti risparmi un casino di ponticelli ;))

La differenza principale sara' che NON ci sara' alcun multiplexing, i registri andranno aggiornati solo una volta al minuto, oppure quando scambi data/ora/temp, ma quello piu avanti, e che ti servira' un solo pin in piu se vorrai far lampeggiare i punti di divisione, ed inoltre i segmenti saranno piu luminosi che con il multiplexing ... per il resto cambia poco, a parte il fatto che ci saranno piu fili che dalla schedina andranno ai display alla fine, ed il fatto che per fare le prove con i display piccoli ti serviranno per forza quelli separati, oppure quelli che non hanno i segmenti in comune ...

Vedi tu, io ci metto poco a modificare lo schema, se decidi in quel senso ...

EDIT: dimenticavo, mentre fai le prove, gli ULN non sono indispensabili, quindi se decidi di usare questo sistema, le prove le puoi fare lo stesso, quindi puoi anche montarli in seguito, oppure quando ti arrivano, basta solo prevedere lo spazio libero sulla millefori ...

zoomx:
A me sembra che tu stia aggiungendo sempre più funzioni quando ancora non hai acceso nemmeno un led.

In effetti qualche led l'ho acceso già... ho anche fatto funzionare un display 7 segmenti! Guarda che sono moooooolto avanti :P.

Comunque in effetti ho messo molta carne al fuoco... resta fermo l'obiettivo iniziale di costruire un orologio (eventualmente scalabile con altre funzioni future) composto da 4 cifre create da 7 segmenti di stripled.

Etemenanki:
Personalmente ti consiglierei di scaricarti in PDF il libro "imparare l'elettronica partendo da zero"

Fatto :wink:

Etemenanki:
ed inoltre i segmenti saranno piu luminosi che con il multiplexing ...

Vedi tu, io ci metto poco a modificare lo schema, se decidi in quel senso ...

Mi sembra che, in virtù di quanto detto in precedenza relativamente alla luminosità, forse valga la pena adottare questa soluzione... riesci veramente senza troppi sbattimenti a cambiare lo schema?

Ma io ci credo nei miracoli :wink:

Non credi che ci si possa fare una cultura anche sperimentando? Io purtroppo sono uno "alla vecchia maniera" .... fail fast and learn :wink:

Grazie dei suggerimenti, anche le lezioni di teoria sono sempre utili sopratutto se sono "spartane e rozze"

Ben detto!!

Etemenanki:
25Hz e' la frequenza di variazione dei film su pellicola ... non e' che lampeggino molto :wink: (la retina gia a 20Hz, salvo alcune eccezioni, non si accorge dello sfarfallio)

Al cinema non so, ma su un LED si vede benissimo, peggio ancora se sono più LED (o display) uno a fianco all'altro. Basta comandare l'onboard LED della UNO a 25 Hz e 25% duty:

#define OUTPIN 13 // onboard LED
uint8_t  n = 0;
uint32_t looptime = millis();

void setup(){ pinMode(OUTPIN, OUTPUT); }

void loop(){
   if (millis() - looptime  >=  10){
       looptime += 10;
       digitalWrite(OUTPIN, (n) ? 0 : 1); 
       n = (n + 1) & 3;
    } 
}

ghezzia:
Aspetta aspetta! diciamo che la scelta del multiplexing mi sembrava fosse logica dal momento che la uno (o la MCU che la sostituirà) non hanno un numero sufficiente di pin... giusto?

La UNO non ha sufficienti pin per comandare contemporaneamente tutti i segmenti, da cui è nata prima l'idea del multiplex (e allora strettamente parlando per l'orologio i pin sarebbero bastati), ma poi è nata anche quella degli shift register per risparmiare comunque pin. Ora usando gli shift register si può lo stesso tenere in piedi il multiplex, oppure si possono usare più shift register facendo a meno del multiplex (i display di brunello).

ghezzia:
come riconosco positivo da negativo dei transistor bc337 e bc 327?

Interrogando l'oracolo dei componenti ::slight_smile: E anche qui sarebbe bene provare a mano qualche configurazione per vedere come comandare i LED con i transistor (cioè come usare i transistor, sia NPN che PNP come interruttori comandati dalle uscite di Arduino).

ghezzia:
... riesci veramente senza troppi sbattimenti a cambiare lo schema?

Mah, non so se ci riesco prima del mese prossimo, a trovare i 10 minuti necessari ... :stuck_out_tongue: :smiley:

Etemenanki:
Mah, non so se ci riesco prima del mese prossimo, a trovare i 10 minuti necessari ... :stuck_out_tongue: :smiley:

He he he!! grazie :wink:

Ho dato un'occhiata veloce allo schema; mi sembra anche più semplice di quello precedente... non vedo ne transistor ne condensatori... o mi sbaglio? Quindi mi confermi che in fase di test sulla breadboard posso fare a meno degli ULN? però devo mettere comunque le resistenze da 150 ohm giusto?

ghezzia:
Ho dato un'occhiata veloce allo schema; mi sembra anche più semplice di quello precedente... non vedo ne transistor ne condensatori... o mi sbaglio?

Sbagli :wink: Di transistor ce ne sono 64, ma sono tutti dentro gli ULN, guardando il datasheet (cosa che avrai sicuramente fatto) si vede che ogni ULN2803 contiene otto sezioni come questa:

E quindi la risposta alla tua domanda è data dalla risposta alla domanda: "a cosa servono gli ULN2803 in quello schema?"

Ok Claudio_F ma io non devo mettere sulla millefiori 64 transistor... ho mi sbaglio? Con 4 ULN che hanno 16 piedini l'uno me la cavo. Corretto? Altrimenti non ho capito nulla :slight_smile:

Si, e' quello lo scopo di usare gli ULN ... ogni ULN ti fa la stessa funzione di 8 darlington (o 16 transistor separati, se ci tieni), quindi con 4 ULN ci piloti gia direttamente i segmenti fatti con le striscie, senza bisogno di altri transistor ... a meno che tu non esageri con le correnti, ovviamente ... e' vero che il massimo pilotabile da ogni singola uscita e' 500mA, pero' e' anche vero che l'intero chip ha una corrente massima pilotabile di 2.5A ... e siccome questi sono i massimi assoluti, e' sempre meglio rimanere alla meta' o massimo due terzi di questi valori ... diciamo ad esempio che ogni ULN in tutto ti puo pilotare 1.5A di carico ... diviso 8 uscite, dovrei rimanere sotto i 180mA per segmento, per essere sicuro che non si danneggino ...

Considera comunque che, se usi le strip con i 5050 o anche quelle con i 2835 rossi, 180mA sono 9 diodi a segmento ... non sono proprio pochi, specie considerando che fanno come minimo il triplo di luce (anche di piu per i 2835) dei normali led ... :wink:

Etemenanki:
Si, e' quello lo scopo di usare gli ULN ... ogni ULN ti fa la stessa funzione di 8 darlington (o 16 transistor separati, se ci tieni), quindi con 4 ULN ci piloti gia direttamente i segmenti fatti con le striscie, senza bisogno di altri transistor ...

fiuuuuh!! mi ero un attimo preoccupato :)... Claudio_F mi fa venire gli sss-cio-poni :smiley:

Ma se si passa alle strip con 5050 a questo punto si salta ai WS8212 e si pilota tutto con un solo pin senza altri componenti. L'alimentazione però deve essere a parte.

Si, ma poi il software diventerebbe un casino, perche' dovresti considerare TUTTI i segmenti comeuna singola sequenza in serie di gruppi di "tot" led per segmento, ma allo stesso tempo indirizzare ogni singolo gruppo in base alla relativa posizione come "X" segmento di "Y" cifra ... vuoi mettere quanto piu semplice diventa fare poche shiftout ogni qualche secondo e dare un'onda quadra da un hertz sul pin dei punti e basta ? ... :wink:

(a meno che tu non voglia fare le cifre che ciclano in fade su tutte le sfumature di colore ... ma a quel punto, buona fortuna con lo sketch :D)

(( e poi si parlava piu che altro di 2835, che sono piu efficenti :D))

zoomx:
Ma se si passa alle strip con 5050 a questo punto si salta ai WS8212 e si pilota tutto con un solo pin senza altri componenti. L'alimentazione però deve essere a parte.

No no direi di rimanere sulle Strip... adesso che sto imparando... :smiley:

ghezzia:
Quindi mi confermi che in fase di test sulla breadboard posso fare a meno degli ULN? però devo mettere comunque le resistenze da 150 ohm giusto?

Scusa Etem, riguardo alla domanda sopra mi confermi che sia così? ma sopratutto, se tolgo gli ULM posso andare dritto con i collegamenti sulle resistenze? Mi spiego meglio, sugli ULM 1b lo collego direttamente ad 1c, 2b a 2c, 3b a 3c e così via?
Buonanotte
Alex

Gli ULN2803 fanno tre cose:

  • Sono in grado di assorbire fino a 500mA di corrente per pilotare i segmenti (le uscite dei 74HC595 erogano o assorbono al massimo 6mA).
  • Invertono il livello logico delle uscite dei 74HC595 per poter accendere con un uno logico dei LED con l'anodo collegato al positivo dell'alimentazione.
  • Reggono LED collegati fino a 50V di alimentazione (le uscite dei 74HC595 reggono fino a un massimo di 5V con 5V di alimentazione)

Quindi li puoi omettere? Certo, se rispetti tutte tre le condizioni:

  • Alle uscite dei 74HC595 non fai assorbire più di 6mA
  • Inverti a software il livello logico in uscita dai 74HC595
  • Alimenti i LED a 5V

ghezzia:
... posso andare dritto con i collegamenti sulle resistenze? ...

Si, l'unica cosa, come ti ha detto anche Claudio, e' che li devi pilotare "in negativo", cioe' mentre fai le prove, dai 0 all'uscita per accendere il segmento ed 1 per spegnerlo ... non comporta un grosso lavoro, solo il ricordarsi alla fine che quando monterai anche gli ULN, dovrai invertire i livelli delle uscite nello sketch ... oppure, in alternativa, che per le prove dovrai usare dei display con catodo comune mettendone i comuni a massa, invece che al +5, mentre dopo, nel definitivo, agli ULN le strip andranno collegate come anodo comune ... oppure ancora, lasciare tutto com'e' e ricordarti che i segmenti che vedi accesi saranno poi spenti e viceversa, nella versione definitiva ... fare una qualsiasi delle tre cose e' indifferente, al fine dei test, dato che quelli servono solo per creare lo sketch funzionante prima dell'assemblaggio finale ...

Potrebbe semplicemente usare due variabili tipo ON/OFF e così basta mettere nelle dichiarazioni LOW e HIGH, per poi invertirle, senza impazzire a modificare l'intero sketch, col rischio di perdere il filo ed imbordellirsi la vita.....