Come ottenere una tensione analogica da 0 a 10V con arduino

Come da titolo mi trovo incriccato in un problemino... devo controllare in tensione un particolare transistor MPSA42 che lavora con alte tensioni....
Ora, avrei bisogno di controllarlo dandogli in base una tensione analogica varibile da 0 a 10V
Ricordo che tempo addietro era comparso un topic simile su come creare un DAC usando la PWM, sapreste indicarmi il link al sito che spiegava come calcolare condensatore e resistenza ?
ho pensato poi di amplificare di 2 il segnale generato con il DAC con un AMP OP in modo da ottenere così l'escursione 0-10...
secondo voi come metodo è valido ? in alternativa avevo pensato di usare un transistor pilatato in base dal PWM che mi aziona il filtro RC partendo direttamente dalla tensione di 10V
Come potrei operare ?
Grazie

Come DAC esterno puoi usare una cosa del genere, è I2C --> SparkFun I2C DAC Breakout - MCP4725 - BOB-12918 - SparkFun Electronics?

Da pag. 28 del datasheet (http://www.sparkfun.com/datasheets/BreakoutBoards/MCP4725.pdf) trovi le applicazioni con tanto di formule.

Non capisco il Tuo problema.
Un transistore NPN si pilota come sempre in corrente e non in tensione. Basta una tensione sopra 0,7V per far circolare una corrente di base.
Se lo usi col emettitore a massa non cambia niente se il carico sul emettitore é collegato a 12V o 300V.
Ciao Uwe

ratto93:
Come da titolo mi trovo incriccato in un problemino... devo controllare in tensione un particolare transistor MPSA42 che lavora con alte tensioni....
Ora, avrei bisogno di controllarlo dandogli in base una tensione analogica varibile da 0 a 10V

Tutti i transistor sono amplificatori di corrente, non esiste che li piloti con una tensione in base, semmai con una corrente variabile sulla base.
Nel tuo caso la Vbesat è di circa 0.9V, questo vuol dire che i 5V forniti da Arduino bastano e avanzano, quello che devi modulare è Ib e ovviamente puoi ottenerlo variando la tensione su una resistenza in serie alla base, però non ti servono 10V.

uwefed:
Non capisco il Tuo problema.

Abbiamo postato la stessa cosa in simultanea :slight_smile:

Che frequenza vuoi dare in ingresso al MPSA42?

Ricordo che tempo addietro era comparso un topic simile su come creare un DAC usando la PWM, sapreste indicarmi il link al sito che spiegava come calcolare condensatore e resistenza ?

In sostanza devi realizzare un passa basso con le classiche formule, ecco alcuni link ad ogni modo:

http://interface.khm.de/index.php/lab/experiments/arduino-dds-sinewave-generator/

ho pensato poi di amplificare di 2 il segnale generato con il DAC con un AMP OP in modo da ottenere così l'escursione 0-10...
secondo voi come metodo è valido ?

Si, in questo modo hai anche una bassa impedenza in uscita. Ricordati di alimentare l'op-amp correttamente (tensione > 10v)

Ciao

Devo realizzare (l’ho già realizzato) il circuito corrispondente allo schema allegato, al posto del transistor MJE uso un MPSA, non sono uguali ma hanno caratteristiche simili…
Innanzitutto vi avviso che sono un poco ignorante in questo campo i transisto usati in zona attiva non li ho studiati e mi sto documentando ora…
usando lo schema in figura collegando un potenziometro da 100K in base (lo uso da partitore varibile alimentato a 12V) la valvola funziona correttamente, è una barra grafica ed in questo modo si illumina completamente.
Alimentando il potenziometro ed anche il transistor a 5v la barra arriva a visualizzare metà di quanto dovrebbe e non oltre…
in pratica ho bisogno di far variare la tensione ai capi della valvola tra 95 e 110V più o meno…

Immagine.JPG

ratto93:
Devo realizzare (l'ho già realizzato) il circuito corrispondente allo schema allegato, al posto del transistor MJE uso un MPSA, non sono uguali ma hanno caratteristiche simili...

Il transistor è un amplificatore di corrente e non di tensione, semplificando al massimo la cosa si può sintetizzare il tutto con la formuletta Ic = Ib*hfe se lavori in DC.
Hfe è il parametro che indica il fattore di amplificazione del transitor e non è una costante, oltre a variare entro un certo minimo e massimo per le tolleranze di produzione, varia anche in funzione della temperatura, di Ic e Ib stessa.
Sbaglio o stiamo parlando di comandare con Arduino un "occhio magico", molto vintage come cosa.

No, non sto usando un occhio magico, non mi piacciono e poi quelli li ho sulla radio...
sto usando queste :

dopo provo a controllarla direttamente in PWM vediamo che succede...

ratto93:
Devo realizzare (l'ho già realizzato) il circuito corrispondente allo schema allegato, al posto del transistor MJE uso un MPSA, non sono uguali ma hanno caratteristiche simili...
Innanzitutto vi avviso che sono un poco ignorante in questo campo i transisto usati in zona attiva non li ho studiati e mi sto documentando ora...
usando lo schema in figura collegando un potenziometro da 100K in base (lo uso da partitore varibile alimentato a 12V) la valvola funziona correttamente, è una barra grafica ed in questo modo si illumina completamente.
Alimentando il potenziometro ed anche il transistor a 5v la barra arriva a visualizzare metà di quanto dovrebbe e non oltre..
in pratica ho bisogno di far variare la tensione ai capi della valvola tra 95 e 110V più o meno..

Se metti come R1 una resistenza piú piccola riesci a regolare tutto con tensioni piú piccole. Aggiungi una seconda resistenza sul collettore per limitare la corrente.

ciao Uwe

Eccomi, ho fatto alcune prove : versione con PWM (standard, non fast) collegato in base al transitor tramite resistenza, resistenza tra valvola e transistor, alimentazione valvola 140V.
Arduino e di conseguenza il PWM a 5V.
Risultati :
Il video non lo carico perchè non si vede niente… ed ho anche rotto 1 valvola =(
Funziona usando il PWM da 50 a 235 …
La barra però va scatti e non mi piace molto…

Seconda prova, puramente empirica:
stesso hardware con l’aggiunta di un condensatore da 10 uF tra base e massa ed una resistenza da 240 ohm tra il pin PWM e la base…
La barra si muove molto più fluidamente, il consumo resta invariato, molto meglio !!!

Il consumo in entrambe le versioni varia tra 80 e 90mA prima dello step-up e tra 2 e 10.1 mA sulla valvola…
Ora voglio ottimizzare lo step-up per aumentarne il rendimento…

La barra base deve essere pilotata analogicamente non funzioina con un segnale PWM.
Ciao Uwe

uwefed:
La barra deve essere pilotata analogicamente non funzioina con un segnale PWM.
Ciao Uwe

Si lo so, infatti il mio problema era infatti come fare... non trovo integrati che reggano quelle tensioni...
ora però con il filtro RC funziona bene.. domani ci metto un pot lineare al posto della resistenza nel RC così faccio gli aggiustamenti :slight_smile:

Ratto, avevi chiesto il tool per calcolare il filtro RC da applicare al segnale PWM?
Eccolo:
http://sim.okawa-denshi.jp/en/PWMtool.php

ratto93:

uwefed:
La barra deve essere pilotata analogicamente non funzioina con un segnale PWM.
Ciao Uwe

Si lo so, infatti il mio problema era infatti come fare... non trovo integrati che reggano quelle tensioni...
ora però con il filtro RC funziona bene.. domani ci metto un pot lineare al posto della resistenza nel RC così faccio gli aggiustamenti :slight_smile:

Ok per il filtro RC.

PS volevo scrivere "base" non "barra".
Ciao Uwe

leo72:
Ratto, avevi chiesto il tool per calcolare il filtro RC da applicare al segnale PWM?
Eccolo:
(Sample)RC Low-pass Filter Design for PWM - Result -

Grazie :slight_smile:

uwefed:

ratto93:

uwefed:
La barra deve essere pilotata analogicamente non funzioina con un segnale PWM.
Ciao Uwe

Si lo so, infatti il mio problema era infatti come fare... non trovo integrati che reggano quelle tensioni...
ora però con il filtro RC funziona bene.. domani ci metto un pot lineare al posto della resistenza nel RC così faccio gli aggiustamenti :slight_smile:

Ok per il filtro RC.

PS volevo scrivere "base" non "barra".
Ciao Uwe

Ok, ora mi è chiaro :slight_smile: