[RISOLTO] Dubbio su circuiti di protezione pin I/O

Salve a tutti! Ho letto che prima di chiedere aiuto sarebbe educazione presentarsi, ma essendo il mio primo forum non idea di cosa si intenda per presentazione. Quindi provo con: Piacere, Filippo, aspirante ingegnere dell'automazione (primo anno, quindi molto aspirante, poco ingegnere :slight_smile: ) e neo appassionato di arduino! (Se la modalità di presentazione è sbagliata chiedo perdono, farò ammenda in qualche modo...)Comunque, a Natale ho ricevuto una Arduino UNO, e ho iniziato a sperimentare un po'. I primi esperimenti hanno funzionato piuttosto bene, quindi ho deciso di passare a qualcosa di un pochino più complicato. Guardandomi in giro ho scoperto la tecnica di usare i LED come sensori sfruttando il rapporto tra la quantità di luce che colpisce il LED e il tempo di scarica della capacitanza del LED stesso. Per sfruttare questo fenomeno è però necessario utilizzare un pin alternativamente come input (per caricare la capacitanza del led) e come output (per "leggere" la scarica del led in seguito all'irraggiamento). La mia domanda è: è necessario creare un circuito di protezione per un pin utilizzato in questo modo? e se si, di che tipo? Mi sono guardato in giro per qualche giorno, sia sul forum che su google, ma non ho trovato una risposta soddisfacente... Ringrazio tutti in anticipo!

P.S Questo è lo schema per il sensore LED che ho trovato qui sul sito di Arduino, e che ho messo in pratica con un LED Infrarosso da 5mm (940nm di lunghezza d'onda)

// + digital 2
// |
// <
// > 100 ohm resistor
// <
// |
// |
// -----
// / \ LED, maybe a 5mm, clear plastic is good
// -----
// |
// |
// + digital 3

Innanzitutto benvenuto sul forum ,
In quel circuito è Gia inclusion un Sistema di protezione , ovvero la resistenza da 100 ohm , la resistenza serve per evitare che il led assorbendo troppa corrente bruci il pin di arduino , in quel circuito la resistenza é calcolata per un led infrarosso come è scritto nello schema , nel caso usassi un altro led forse dovresti utilizzare una resistenza di valore diverso
Ciao Niko

Che un comune LED possa generare una (debole) corrente essendo colpito da un raggio luminoso è una caratteristica comune a praticamente tutti i semiconduttori.

Io stesso l'ho sperimentato collegando tra di loro due LED ed illuminando uno dei due con un laser da 50mW: l'altro LED si accende (anche se debolmente).

Una volta si usavano i transistor ed i diodi in vetro, ma per evitare il disturbo a 100 Hz della luce elettrica dovevano essere verniciati in nero.

Non capisco a cosa serva farlo condurre prima: il fenomeno è fotoelettrico (conversione di fotoni in energia) o mi sbaglio?

In quel circuito è Gia inclusion un Sistema di protezione , ovvero la resistenza da 100 ohm , la resistenza serve per evitare che il led assorbendo troppa corrente bruci il pin di arduino , in quel circuito la resistenza é calcolata per un led infrarosso come è scritto nello schema , nel caso usassi un altro led forse dovresti utilizzare una resistenza di valore diverso
Ciao Niko
[/quote]

Ciao Niko, grazie della pronta risposta! Il mio dubbio nasceva dal fatto che, in un progetto realizzato quest'estate con un mio amico (un semplice robot su ruote con interruttori a "baffetto" per evitare collisioni coi muri) avevamo isolato tutti i pin con degli optoisolatori (semplifico, in realtà era un circuito più complesso ma non ne so abbastanza e non vorrei scrivere cose sbagliate), cosa che in questo caso, data la natura dualistica del pin sarebbe impossibile fare, giusto? Quindi volevo sapere se era necessaria e fattibile una misura di protezione di questo tipo, magari in caso di sovracorrenti di orgine esterna al led stesso. Altrimenti vado sul sicuro e uso questo schema, che in realtà ho anche già testato con successo sulla breadboard..

cyberhs:
Non capisco a cosa serva farlo condurre prima: il fenomeno è fotoelettrico (conversione di fotoni in energia) o mi sbaglio?

Ringrazio nuovamente per la rapidità di risposta, e allego i link del primo sito che ho consultato per questo schema.

Qui spiega brevemente il fenomeno, (per rispondere alla tua domanda:"immettendo corrente positiva nel polo negativo viene caricato il LED di capacitanza, interrompendo il flusso di tensione possiamo sperimentare un tempo di scarica che varia in rapporto alla luce che colpisce la giunzione.")
Io non ho abbastanza esperienza per spiegare la teoria di questo fenomeno, ma l'ho sperimentato costruendo un "sensore di prossimità" seguendo le istruzioni del sito, e devo confermare che è piuttosto efficiente..

Lo sketch che ho implementato sulla scheda è ispirato ad uno che ho trovato sullo stesso sito, anche se non nella stessa pagina. Il link è questo..

Filo_P:
In quel circuito è Gia inclusion un Sistema di protezione , ovvero la resistenza da 100 ohm , la resistenza serve per evitare che il led assorbendo troppa corrente bruci il pin di arduino , in quel circuito la resistenza é calcolata per un led infrarosso come è scritto nello schema , nel caso usassi un altro led forse dovresti utilizzare una resistenza di valore diverso
Ciao Niko

Ciao Niko, grazie della pronta risposta! Il mio dubbio nasceva dal fatto che, in un progetto realizzato quest'estate con un mio amico (un semplice robot su ruote con interruttori a "baffetto" per evitare collisioni coi muri) avevamo isolato tutti i pin con degli optoisolatori (semplifico, in realtà era un circuito più complesso ma non ne so abbastanza e non vorrei scrivere cose sbagliate), cosa che in questo caso, data la natura dualistica del pin sarebbe impossibile fare, giusto? Quindi volevo sapere se era necessaria e fattibile una misura di protezione di questo tipo, magari in caso di sovracorrenti di orgine esterna al led stesso. Altrimenti vado sul sicuro e uso questo schema, che in realtà ho anche già testato con successo sulla breadboard..
[/quote]
Purtroppo non puoi aggiungere un'ulteriore protezione al circuito senza un circuito decisamente complesso (che sinceramente non saprei costruire) , comunque non ti preoccupare ricorda che ogni pin di arduino regge 40 mA e tutta la scheda 200mA quindi per il led metti la resistenza e vai sul sicuro
Ciao Niko