Resistenza per Fotoresistenza

Ciao a tutti,
questa domanda credo per voi risulta la base dell'elettronica ma aime' e' data sempre per scontata ma per me così scontata non è.

Montando una fotoresistenza vedo che c'e' sempre su tutti gli sketch una resistenza sul piede della fotoresistenza che poi va al + e all'analogico di arduino.

A cosa serve e come calcolarne il valore?
Grazie

Un fotoresistore ha una resistenza che decresce in presenza di luce.

Inserendola in un partitore resistivo nel ramo "alto" (quelllo verso i +5V) e con un resistore di riferimento da 10k verso ground, otteniamo che la tensione ai capi del resistore da 10k aumenta in funzione della luce che colpisce il fotoresistore.

Se invertissimo tra loro la posizione dei due elementi, la cosa funzionerebbe al contrario.

www.mauroalfieri.it/elettronica/fotoresistenze-e-arduino.html

Grazie.
Quindi in teoria la resistenza che devo mettere deve essere uguale a quella del mio fotoresistore.

Perche' nell'esempio la mette da 50khom, e tu mi dici di metterla a 10k, supponendo diciamo che la mia fotoresistenza sia da 10k.

Deve essere lo stesso preciso valore o nell'ordine di grandezza?

Ottima osservazione: si vede che hai studiato la cosa!
Se metti un resistore con una resistenza pari a quella nominale del fotoresistore (diciamo 20k), al buio otterrai esattamente 2.5V cioè la metà dell'alimentazione.
Invece la metti più piccola (10k) otterrai una tensione pari ad un terzo, cioè 1.66V
Questo consente di ottimizzare meglio lo "zero" del sistema.

EUREKA!

La metto più piccola per “tarare” il valore di 0 del circuito, che altrimenti non sarà mai zero vero e proprio?

Spero di aver capito bene :slight_smile:

Scusa se ne approfitto, e quella sui pulsanti invece a che serve?
Ho sbattuto ore sulle guide per pullUP e pullDOWN senza afferrare il concetto. Per i pulsanti la questione e’ resistenza di pullUP e pullDOWN se non erro

il pull-up edil pulldow è piu semplice di quanto credi, solo che ha due funzioni:

-1 lasciare (ad interruttore o pulsante aperto) il pin da auino ad un livello logico certo (o alto o basso) in modo che non possa "sentire" cose strane.

-2 la seconda è che quando chiudi il pulsante senza resistenza faresti un corto circuito netto, facendo fumare qualcosa in giro.

il pull-up (collegato a +Vcc) tiene ll'ingresso alto quando il pulsante non è premuto
il pull-dow (r a gnd) iene l'ingresso basso quando il pulsante non è premuto.

il valore da mettereva benissimo a 10K per esempio.. ma nessun promalema 15K o 5K :wink:

certo che con un disegnino si capirebbe meglio!! :wink:

Perfetto.
Grazie a tutti
Credo di aver capito.

Una curiosità, inserendoci un Microswitch , se ho ben capito si genera di questo.

Il microswitch ha di suo un uscita fissa piu' una NORMAL CLOSE e NORMAL OPEN

La NORMAL OPEN, corrisponde a PULLUP e quindi se voglio mettere il pulsante in NORMAL OPEN (quindi valore high quindi circuito aperto) devo collegarlo con resistenza in PULLUP altrimenti il contrario.

Ho capito bene?

Se metto uno switch normal close ad esempio ma con resistenza pullup che succede?
Grazie infinite . Mi avete rasserenato la giornata :slight_smile:

in realtà puoi mettere come vuoi... cambia però lo stato da leggere e verificare
in più per motivi di "sicurezza" è meglio pensare a che stato ti trovi nel caso si stacchi un filo, o roba del genere

quindi tu puoi mettere in pull-up si con normalmente aperto che con normalmente chiuso (e cosi pure il pull-down) cambia come detto prima lo stato "della normalita" quindi dovrai tenerne conto nella scrittura del programma.

poi se metti un pull-up per esempio con un N.C. avrai per lo più corrente che scorre sul ramo resistenza/contatto, aumentando un pò i consumi... ma fattibile!

Grazie mille. E' tutto chiaro

Il valore della resistenza che fa il partitore resistivo con la fotoresistenza dipende dalla resistenza della fotoresistenza e dalla luce che vuoi controlalre. Se vuoi distinguere sole e ombra i valori della fotoresistenza sono diversi rispetto se vuoi costruirti una luce crepuscolare che deve accendere una luce quando é troppo buio per vedere qualcosa.

I microswitch come certi pulsanti/interuttori o relé hanno un contatto che sui chiude quando viene azionato (normal open / normalmente aperto) e un altro che si apre quando viene azionato (normal close / normalmente chiuso). per i 2 contatti NO e NC spesso c'é un comune che fa capo di entrambi i contatti.
La logica di uso di un contatto che si apre o che si chiude sono svariate.
Per esempio su un sistema di alarme usi un NC perché coí controlli anche i cavi che non vengano tagliati e percui disattivato il sensore.

Per altri ragionamenti di sicurezza si devono usare dei NC anziche dei NO o viceversa.

Ciao Uwe

Ciao Uwe
grazie per le delucidazioni, ,io devo utilizzare un crepuscolare per apertura e chiusura di porte. Mi serve un minimo di sensibilità ma difatto mi serve che, dato un valore che imposto manualmente con un potenziometro, al di sotto di quel valore di luminosità chiude una porta e al di sopra la riapre.

Che mi consigli come resistenza da usare?

Per lo switch , mi servono per fermare questa porta che si apre. Mi serve che al click, fermi il motore e ne inverta il senso in attesa della successiva esecuzione. Lo stesso farà un secondo switch a fine corsa. Credo sia indifferente come li monto in questo caso giusto?

Quello di sicurezza invece, che deve agire se arduno si impalla, lo devo collegare direttamente tra motore e alimentazione del motore e dovrà essere NO perchè se entra in azione deve disattivare la corrente del motore. Questo mi avevi consigliato tu stesso di montarlo per sicurezza :slight_smile: E' corretto come l'ho interpretato?

Come in tutti i dispositivi di di questo tipo, devi usare un sistema ad isteresi, onde evitare porte che si aprono e subito si chiudono poiché la luminosità varia a seguito di una nuvola di passaggio od i fari di un'automobile.

Per lo stesso motivo, non sarebbe male inserire anche un ritardo prima di attivare il relè.

Ciao,

sistema ad isteresi... cioè?

Per quanto riguarda i relè, non uso relè ma un ponte H è sufficiente no?

Supponiamo che tu scelga un valore X di luminosità al di sopra od al di sotto del quale il relè od il ponte H si attivi o si disattivi.
Se facessi così avresti creato un sistema instabile che alla minima variazione di luminosità scatterebbe.
Meglio inserire una isteresi K: se Valore = X + K ---> attiva, se Valore = X - K ---> disattiva

Ah perfetto capito.
Considerando che il mio sistema serve per una porta di un pollaio, dovrà aprirsi necessariamente una sola volta la mattina e chiudersi la sera.
Mi avevano consigliato ed era mia idea di combinarlo con l'orario.

ovvero oltre quella soglia e in un range di orario

Devi anche controllare che le galline sia effettivamente entrate tutte nel pollaio?

perche’ anche l’orario ?
Le galline mica seguono l’ora legale.

Quando e’ giorno si svegliano, quando e’ buio dormono

X Icio
Se sono entrate tutte bene, altrimenti ciccia ... ci pensa la volpe

X Brunello
Me lo hanno suggerito come controllo incrociato per evitare Nuvoloni o fari della macchina che gli danno falsi positivi.
Così se li restringo in un determinato range, dovrei diminuire la possibilità di errore di aperture/chiusure automatiche.

Mi preoccupano effettivamente solo il fari delle auto, ma la posizione e' pochissimo transitata ed e' abbastanza inboscato.
io avrei messo solo la fotoresistenza in prima battuta

Me lo hanno suggerito come controllo incrociato per evitare Nuvoloni o fari della macchina che gli danno falsi positivi.

scusa, ma vale quanto detto prima da @cyberhs per l' isteresi
Fai la lettura, aggiungi l'isteresi per sicurezza
Controlli dopo qualche secondo se non e' cambiato niente

Aggiungere un RTC ( perche' questo dovresti metterci ) mi pare un'esagerazione

Praticamente con l'Isteresi devo verificare che il cambiamento di luminosità sia "permanente" e non temporaneo.
Non risolvo però con le nuvole, che ci mettono qualche tempo a passare eventualmente.

Ma comunque essendo un crepuscolare NOTTE/GIORNO lo dovrei settare con un livello di luminosità irrisorio. Il controllo nel lato notte di luminosità dovute ai fari eventuali delle auto posso farla con questa isteresi.

Un fac-simile a livello di codice per gestire l'Isteresi?