usare led come sensore di luce

mi serve aiuto perche' non capisco come fare, vi spiego

non ho fotoresistenze sottomano ma di led invece son pieno...

prendendo un led (quelli con contenitore trasparente "water clear") se misuriamo la tensione ai suoi capi (a vuoto) questa varia da zero (se e' al buio) a circa 1,5 volt quando e' illuminato da luce esterna diretta

pero' la lettura e' troppo oscillante quando non ha luce diretta, come posso rendere il voltaggio del led piu' stabile per avere una lettura stabile sull' analogread

gnd-----(-led+)------A0

credo serva una resistenza... ma dove e da quanto?

mannaggia alla tua bionda, non mi fa concentrare :grin: Quindi non hai un led normale hai un fotodiodo, ma come lo stai usando? Cos'è questa tensione "a vuoto"? Insomma come lo stai collegando? Per quel che ne so devi mettere una R da calcolare in base alla caratteristiche del fotodiodo, tra i +5V e l'anodo e poi mettere il catodo a GND, il punto di giunzione tra R e anodo lo mandi sull'ADC. Se guardi il datasheet vedi che difficilmente ti danno linearità sull'intera gamma buio-luce intensa quindi devi aspettarti delle anomalie agli estremi.

menniti cancella tutto quello che sai d'elettronica, non ci siamo capiti :sweat_smile:

prendi un led di quelli che fanno luce rossa o verde o blu o ecc, deve essere un led di quelli con il contenitore trasparente

quindi prendi il tester, mettilo in tensione e misura la tensione ai capi del led, vedrai che varia in base alla luce che il led riceve

io voglio quindi usare un led emettitore in modalita' ricevitore di luce, tipo una cella fotovoltaica

fa la prova e capisci subito (non son sui libri ste cose...)

Ps.: nn guardare le tette! :P

un led non fatto esattamente come un fotodiodo, ma in linea teorica il suo funzionamento è reversibile anche se il suo comportamento non è proprio lineare.
Nel modo in cui lo hai connesso lo usi in polarizzazione diretta , cioè come generatore e uindi il collegamento è corretto, per ovviare al “rumore” potresti fare una media e vedere come và.
Un altro modo di sfruttare il led come sensore, è quello di sfruttare la sua capacità intrinseca (quella della giunzione) che si comporta come un condensatore che reagisce anche alla luce.
Da prima si polarizza il led inversamente (caricando la capacità interna) e poi, polarizzato direttamente si fà scaricare attraverso una resistenza di valore noto si calcola il tempo di scarica co n le classiche regole dei circuiti R C, il tempo di scarica sarà proporzionale alla luce captata.
Adesso telho riassunto a grandissime linee, ma sul playgroung cè un esempio:
http://www.arduino.cc/playground/Learning/LEDSensor

grazie BrainBooster, anche del link che non avevo finora visto

facendo una media delle letture forse risolvo

ahhah usarlo come condensatore in scarica, questo non c'e' su nessun libro mi sa :) figata!

aggiungo le scoperte visto che sto testando...

per avere letture molto piu' stabili basta mettere piu' led tutti in parallelo, la tensione ai loro capi oscilla molto meno

domani provo con la luce del sole che e' la luce che vorrei rilevare, basta che mi dica ombra/luce, altro che fotoresistenze :P

risolte pure le oscillazioni, basta un condensatore in parallelo ai led

gnd------+-----(-led+)------+------A0 | | | | +-------||---------+ condensatore 1nF

per chi vuole sperimentare...

Forte! Un sistema per capire giorno/notte che costa 1/10 rispetto la fotoresistenza. E quasi come scrivere codice offuscato usare un led per vedere se "gli altri" fanno luce :-) F

Siete sicuri che invece che una fotoresistenza non sia più un termometro? Il calore potrebbe cambiare alcuni parametri di conduzione nei semiconduttori o sbaglio?

ho trovato questo http://www.thebox.myzen.co.uk/Workshop/LED_Sensing.html

non e' calore, e' proprio il fotone che modifica la giunzione pn del diodo

sto testando con la luce del sole, poi faccio un inseguitore solare con 4 led rossi e 2 servi XD

@ reizel: in tutta la mia vita avrò imparato sì e no tre cose di elettronica e tu mi dici di cancellarle in cambio del tuo led testaingiù (nel senso di uso al contrario :grin:) sei impazzito a forza di stare sotto il solleone a testare il tuo le trasparente? :grin: Scherzi a parte è una cosa molto interessante, visto che lo vuoi usare ON-OFF (ma può essere che ho capito male anche stavolta :blush:) forse di converrebbe applicarlo ad un partitore con un diodo 1N4148 sulla base di un npn, così il TR conduce solo quando superi la soglia del diodo e fino ad allora sta quieto.

@ Federico: non so se scherzi, ma ormai in questo Topic per me è tutto strano, chissà se davvero qyesto led è sensibile alla luce di altri led :fearful:

menniti, credo tu sappia + di 2-3 cose d'elettronica :) e no, niente diodi e transistor, uso arduino, anche se e' facilmente fattibile con componenti discreti voglio farlo con l'arduino.

riguardo alla sensibilita' dei led rispetto alla luce ho letto che i rossi sono i piu' sensibili all'intero spettro luminoso (io testavo i rossi illuminandoli con un led bianco da 3W a varie distanze), ma se usi invece un blu come sensore e' quasi "cieco", i bianchi sono i peggiori e sensibili solo agli uv

son tutte cose da provare, in fondo bastano 10 minuti ;)

reizel: menniti, credo tu sappia + di 2-3 cose d'elettronica :) e no, niente diodi e transistor, uso arduino, anche se e' facilmente fattibile con componenti discreti voglio farlo con l'arduino.

Ah, ok, allora ti basta settare una soglia di lettura dell'ADC sopra la quale attivi quello che i serve, ma questo lo sai meglio di me :) Per il resto grazie della fducia, ma è assolutamente immeritata.

riguardo alla sensibilita' dei led rispetto alla luce ho letto che i rossi sono i piu' sensibili all'intero spettro luminoso (io testavo i rossi illuminandoli con un led bianco da 3W a varie distanze), ma se usi invece un blu come sensore e' quasi "cieco", i bianchi sono i peggiori e sensibili solo agli uv

son tutte cose da provare, in fondo bastano 10 minuti ;)

Sì, hai ragionissima, ma ho una lista di cose che vorrei prove che non saprei da dove iniziare; un paio di mesi fa mi ero ridotto a passare il mio pochissimo tempo a cercare di decidere cosa provare, per poi accorgermi che il tempo era finito e non avevo provato niente =( Così ho fatto una "scaletta", ogni volta che cancello una riga dalla lavagnetta passo alla successiva; da maggio ad oggi sono arrivato alla seconda riga, il test del tuo led è alla riga 1846, spero divivere 3-400 anni, poi tri farò sapere se funziona :.

menniti, il problema tuo -e la manna per noi- e’ che quando tu “provi” qualcosa poi ci fai una guida tipo bibbia :slight_smile:

si uso proprio l’ADC per rilevare la soglia, per dirvi, avendo come reference i 5 volt di arduino con il led collegato su A0 mi da 290-300bit in pieno sole verticale sul led, quindi <=289 mi deve attivare lo spostamento fino a raggiungere la verticale, quasi banale

M..hia! Dovresti fare lo psicologo XD Hai ragione, è più forte di me, sono condizionato dal mio lavoro, ormai ho imparato a scrivere tutto ciò che studio (e trasmetto....) in forma comprensibile ai più altrimenti quei U dei miei studenti trovano scuse agli esami ]:D. Ma questo mi impone di imparare a fondo ogni argomento, non posso fermarmi all'"ok, funziona", devo sviscerarlo e siccome i miei neuroni sono ormai agli sgoccioli scrivo ogni cosa e poi la rielaboro per usi successivi; questo naturalmente vale in ogni cosa che faccio, quindi anche qui, e poi è il solo modo per sentirmi utile in un Forum dove normalmente faccio il Vampiro scassaczz, meno male che ho 5-6 amici mooolto pazienti che mi danno retta altrimenti sarebbe la fine :blush:

La tua soluzione è bella, forse dovresti essere più tollerante con la soglia, altrimenti se il pieno sole è un po' meno pieno il tuo circuito sta lì a girare come un ubriaco in cerca dell'Isola che non c'è

come ho scritto "e' una manna per noi" che tu poi faccia le guide, infatti appena mi arrivano gli atmega vergini usero' la tua guida per programmarli :P

hai studenti? digli che possono usare i led per rilevare la luce, e' una di quelle cose che mi avrebbe incuriosito non poco quando studiavo...

per il progettino sensore di luce la soglia va verificata e aggiunto altro, se c'e' poca luce e' inutile cercare il sole, tutto deve stare fermo, se l'illuminazione supera una soglia allora deve puntare la verticale e seguirla, questo il linea di massima

Beh, in pratica stai usando un LED come fosse un fotodiodo. Il principio è quello, solo che hai meno sensibilità.

E' tutto già noto, come hai detto tu. Basta cercare e la prima voce che viene fuori è la Wiki inglese. Cito:

An LED can be used as a photodiode used for light detection as well as emission. This capability has been demonstrated and used in a variety of applications including ambient light detection and bidirectional communications.[11][12] This implementation of LEDs is important because functionality can be added to designs with only minor modifications, usually at little or no cost.[11] An LED is simply a diode that has been doped specifically for efficient light emission and has been packaged in a transparent case. Therefore, if inserted into a circuit in the same way as a photodiode, which is essentially the same thing, the LED will perform the same function. As a photodiode, it is sensitive to wavelengths equal to or shorter than the predominant wavelength it emits. For example, a green LED will be sensitive to blue light and to some green light, but not to yellow or red light. Additionally, the LED can be multiplexed in such a circuit, such that it can be used for both light emission and sensing at different times.[11]

Traduco per chi non comprende bene l'english:

Un LED può anche essere usato come un fotodiodo per il rilevamento della luce. Questa capacità è stata dimostrata ed usata in diverse occasioni, quali sensori per la luce ambientale e comunicazioni bidirezionali. Questa implementazione dei LED è importante perché questa funzionalità può essere aggiunta ai progetti con solo piccole modifiche, in genere a basso costo, se non senza costi aggiuntivi. Un LED è semplicemente un diodo che è stato specificatamente drogato per avere un'emissione efficiente di luce ed è stato incapsulato in un involucro trasparente. Quindi, se usato in un circuito nella stessa maniera di un fotodiodo, che è essenzialmente la stessa cosa, il LED si comporterà nello stesso modo. Come un fotodiodo, è sensibile alle lunghezze d'onda uguali o più corte di quelle della lunghezza d'onda predominante che emette. Ad esempio, un LED verde sarà sensibile alla luce blu e ad una parte di quella verde ma non a quella gialla o rossa. Inoltre, il LED può essere multiplato in un circuito, così da poter essere usato sia come emettitore di luce che come sensore in momenti differenti.