Il partitore di resistenze è un tipo di circuito semplice da realizzare e mnolto utile, sopratutto con Arduino, quando il sensore che vuoi utilizzare funziona a 12v ed eroga anche in OUTPUT una tensione di 12v.
Come già sai i pin di Arduino non sono adatti a ricevere segnali con una tensione superiore a 5v, anche se come picco può capitare di raggiungere tensioni maggiori è sempre bene evitare che questo accada.
Io per primo ho avuto l’esigenza di adatatre un segnale in 12v all’ingresso digitale ( pin 2 ) di arduino, per farlo avevo individuato come soluzione quella dell’optoisolatore, a cui avrei collegato in input i 12v ed all’output i 5v.
Questa soluzione è risultata alquanto inadeguata sia per i tempi di risposta del segnale sia per l’uso solo con i pin digitali, su intervalli piccoli è sufficiente ma se hai segnali che variano con una elevata frequenza il ritardo di risposta introdotto dall’oproisolatore si ripercuote sul buon funzionamento; inoltre è in grado di trasferire solo segnalli di tipo 0-1 e non segnali analogici 0-255.
Ho chiesto all’amico ed appassionato Luca di aiutarmi a risolvere il problema e la soluzione suggeritami è quella che ti racconto oggi: il partitore di resistenze o di tensione.
Cosa sia e come funzioni puoi leggerlo in modo approfondito su wikipedia, in questo articolo vogllio illustrarti come è fatto e per quali utilizzi puoi impiegarlo oltre che come calcolarne uno adatto ai tuoi scopi.
Come è fatto un partitore di resistenze
Puoi trovare in giro numerose foto e schemi del partitore di rersistenze, quella all’inizio dell’articolo è un esempio di schema come lo è questo:
in entrambi i casi avrai notato che si tratta di due resistenxe di valore R1 ed R2 collegate in serie, semplice no?
Si è semplicissimo, la differenza tra le due resistenze ti permette di variare il rapporto tra Vi ( Volt input ) e Vo (Volt Output ).
La formula per trovare questi valori è quella espressa nella prima figura, tuttavia puoi utilizzare uncalcolatore on-line, io utilizzo questo: calcolare un partitore di resistenze
Partitore di resistenze in pratica
La teoria su come funziona e come calcolarlo puoi approforndirla nei numerosi link presenti sul web, quello che vorrei chiarirti oggi è praticamente come funziona:
Se R1=R2 qualsiasi sia il loro valore quello che ottiene è un partitore di tensione simmetrico ossia applicando a Vi 12v su Vo avrai 6v, variando il rapporto tra R1 ed R2 a favore di R1 ( R1 > R2 ) il tuo partitore di tensione ti offre una tensione Vo inferiore a Vi/2; variando il rapporto a favore di R2 ( R1 < R2 ) ottieni Vo > Vi/2;
Un rapporto tra R1 ed R2 che io utilizzo con arduino è R1= 1470ohm ed R2 = 1000ohm ottenendo una tensione di Vo = 4,8v dai 12v di Vi per ottenere i 5v esatti dovresti utilizzare R1= 1400ohm e R2=1000ohm, tuttavia non è facile trovare resistenze con tali valori per il tuo partitore di resistenze, la possibilità che tu possieda già una resistenza da 470ohm e due da 1000ohm è maggiore.
Important!
Il partitore di resistenze NON è adatto a realizzare dei riduttori di tensione, per questa esigenza è meglio rivolgersi ad un circuito stabilizzatore tipo 7805 o simili, il partitore di resistenze può essere utili per adattare dei segnali in tensione più altra a input funzionanti in tensione minore ( vedi Arduino ).Uso alternativo del partitore di resistenze
Il principio è valido sia per adattare il segnale a 12v ad un segnale a 5v sia come conftonto in caso di resistenze variabili ( fotoresistenze, termistori, ecc… ) un uso del partitore di resistenze con le fotoresistenze lo hai visto in questo articolo in cui il circuito è composto da R1 fisso ed R2 la fotoresistenza o più in generale la resistenza variabile.
Con arduino misurando la variazione di tensione su un pin analogico ( es.: A0 ) e conoscendo il rapporto massimo tra R1 ed R2 puoi verificare l’intensità luminosa o la variazione di temperatura ( termistore o termo resistenza ).
Sketch di esempio
Il partitore di resistenze può essere utilizzato in molti modi e per molte applicazioni in cui il segnale uscente dal sensore è 12v e il segnale che devi inviare ad Arduino è 5v, ti posto un semplice sketch che trovi tra gli esempi dell’IDE Arduino 1.0: AnalogRaedSerial
/* AnalogReadSerial Reads an analog input on pin 0, prints the result to the serial monitor This example code is in the public domain. */ void setup() { Serial.begin(9600); } void loop() { int sensorValue = analogRead(A0); Serial.println(sensorValue); }
il suo scopo è semplicemente leggere il segnale analogico presente su A0 e scriverlo a video:
Il calcolo del valore in tensione puoi eseguirlo con la formula Vout = (5 x valore) / 255 se sto leggendo, come nell’esempio in figura, 111 il valore in Vout è ( 5 x 111 ) / 255 = 555 / 255 = circa 2,18v.
Buon divertimento !!!
Prima di inserire un commento, per favore, leggi il regolamento
35 pings
Skip to comment form
[…] Per misure fino a 10 volt è sufficiente un partitore con 2 resistenze da 1000 ohm. La formula per calcolare le due resistenze è molto semplice ed è stata spiegata nel blog. […]