Pages: [1] 2 3   Go Down
Author Topic: Semplice Convertitore D/A con ARDUINO duemilanove : problemi di overshoot  (Read 2560 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 45
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Salve,
Sto cercando di utilizzare Arduino come generatore di segnali per la mia tesi, però con scarsi risultati.

Allego uno schema di massima.

[/url]


Le porte wal 1:4 sono collegate alle porte digital out di arduino.

Il problema è dato dai picchi di overshoot presenti ogni volta che c'è una commutazione.

All' inizio pensavo fosse un problema di iduttanza parassita, loop di massa induttivi o cose del genere.
Però anche collegando DIRETTAMENTE la sonda dell'oscilloscopio ad una porta digitale di arduino, è presente il picco di overshoot.

L'ingresso dell' oscilloscopio dichiara  una resistenza di 1 M ohm e una capacità di 40 pF

Io ho trovato degli esempi di dac r2r che funzionano benissimo, senza problemi.
Insomma io vorrei ottenere un risultato simile a questo :

 http://arduino.cc/forum/index.php/topic,8715.0.html

Se qualcuno ha un'idea a riguardo è il benvenuto.

Grazie.




Logged

Parma
Offline Offline
Edison Member
*
Karma: 19
Posts: 2314
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Arduino non è granché per generare segnali, arrivi a frequenze e risoluzioni molto basse. Ci sono molti modi migliori.

L'overshoot è in genere capacitivo, hai provato ad usare la molla del probe dell'oscilloscopio invece del coccodrillo senza cavetti jumper o breadboard con tutto scollegato? Puoi allegare qualche schermata dell'oscilloscopio?

Il TL082 lo alimenti dualmente? Direi che ad ogni modo non va bene, è una pessima scelta.

Ma che schema hai trovato? Non potevi fare un semplice DAC R2R senza Mosfet?

Ciao

IMPORTANTE: Hai calibrato l'oscilloscopio? I probe sono da tarare ogni tanto
« Last Edit: November 28, 2012, 02:43:51 pm by flz47655 » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 45
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Allego foto


image

Questo è l'andamento a vista, giusto per capire cosa succede. Se  necessario nei prossimi giorni allego uno screen cap fatto come si deve


online photo storage
Logged

Parma
Offline Offline
Edison Member
*
Karma: 19
Posts: 2314
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Un minimo di picco è normale che ci sia, nel tuo caso molto è introdotto nella misurazione, prova a seguire i consigli che ti ho dato
Ciao
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 45
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


Quote
Ma che schema hai trovato? Non potevi fare un semplice DAC R2R senza Mosfet?

Lo schema funziona, il problema non è nei mosfet e neppure nell' operazionale


Quote
Hai calibrato l'oscilloscopio? I probe sono da tarare ogni tanto

Si, ho fatto, putroppo lo spike è dovuto proprio alla scheda :-(


Grazie.


Logged

Parma
Offline Offline
Edison Member
*
Karma: 19
Posts: 2314
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Secondo me è un pessimo schema, con componenti discreti ti viene un macello con quei mosfet.
Le resistenze da 470k poi sono assurde secondo me, sia che il rumore è proporzionale al valore della resistenza?
L'op-amp non è rail-to-rail oltre che essere totalmente inadatto a questo compito, mettici un MCP6022
Logged

Parma
Offline Offline
Edison Member
*
Karma: 19
Posts: 2314
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hai letto il mio vecchio post: http://arduino.cc/forum/index.php?topic=104750.0 ?
Con il MCP6022 ho risolto moltissimi problemi, te lo consiglio caldamente.
Costa poco (te lo mandano gratuitamente come sample per l'università) , ha una buona banda (10 MHz) è Rail-to-Rail input/output ed è stabile a guadagno unitario, è fatto apposta per essere utilizzato come DAC Buffer

Ma perché ti danno così fastidio quei picchi?

Ciao
Logged

Parma
Offline Offline
Edison Member
*
Karma: 19
Posts: 2314
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

La capacità di ingresso è determinata anche (e sopratutto) dalla sonda, metti l'attenuazione massima per avere meno capacità (dopo ritara), ti faccio coi numeri dei miei probe per farti capire:
Attenuazione 1x   1M ohm 100pF
Attenuazione 10x 10M ohm 17pF

40pF non sono pochissimi.. se non compensati tramite la taratura di entrambe le sonde i pinnacchi si alzano
Ciao
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 45
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Grazie per la info sull' operazionale.

Quote
Ma perché ti danno così fastidio quei picchi?

Semplicemente perchè in uscita voglio un segnale fatto a scalini come questo  :




Questo non ha overshoots, come avrà fatto? smiley-cry smiley-cry

Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

40pF non sono pochissimi.. se non compensati tramite la taratura di entrambe le sonde i pinnacchi si alzano

Per non parlare di tutte le capacità parassite introdotte dalla bread board, mi associo pure io al commento su quanto sia assurdo usare dei mos, che a loro volta introducono altre capacità parassite, per commutare le resistenze, idem per l'opamp scelto e per i valori della rete di feedback.
Logged

Parma
Offline Offline
Edison Member
*
Karma: 19
Posts: 2314
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Il segnale è visto con poco zoom (e potrebbe essere un segnale a frequenza molto bassa) e l'oscilloscopio è molto vecchio, si perde parte degli eventi

Ciao

PS: Se vogliamo mettere il coltello i mosfet sono senza resistenza sulla base, se li comandi con una frequenza un pò elevata... BUM!

@Astro: Per misurare l'overshoot gli avevo consigliato di scollegare tutto, spero l'abbia fatto altrimenti è inutile stare a discutere se era con la  breadboard collegata..
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 45
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Per non parlare di tutte le capacità parassite introdotte dalla bread board, mi associo pure io al commento su quanto sia assurdo usare dei mos, che a loro volta introducono altre capacità parassite, per commutare le resistenze, idem per l'opamp scelto e per i valori della rete di feedback.

Lasciamo perdere per un momento lo schema elettrico, poichè ci vorrebbe troppo tempo per spiegare a fondo la scelta dei cmos e andrei inesorabilmente OT.
Prendetela per buona.
Il problema è l'overshoot presente sull' uscita digitale SENZA mosfet a valle.
A cosa è dovuto? E' eliminabile?

Grazie.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 45
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

 
Quote
PS: Se vogliamo mettere il coltello i mosfet sono senza resistenza sulla base, se li comandi con una frequenza un pò elevata... BUM!

Per base intendi tra GATE e massa? Perchè "BUM"?

Grazie.

Logged

Parma
Offline Offline
Edison Member
*
Karma: 19
Posts: 2314
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Si scusami intendevo sul gate ovviamente, BUM! perché il gate è come una capacità e serve corrente per caricarla e scaricarla velocemente, se hai una frequenza troppo alta potresti superare il limite dei 40mA per pin e danneggiare il micro.

L'overshoot è dovuto da capacità parassite, in parte non eliminabili, abbassando la frequenza le percepisci di meno.

Ciao
Logged

BZ (I)
Online Online
Brattain Member
*****
Karma: 234
Posts: 20196
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

dr.benway oggi sono tonto.
Spiegami il funzionamento di questo circuito.



L' operazionale é un comparatore con retroazione. Tu cosa volevi che fosse?
Come puoi pilotare quei MOSFET? Il source non é collegato a massa. Se la retorazione del operationale funziona hai una tensione quasi uguale sulle entrate + e -. Visto che il + lo hai messo a 3V (partitore con le 2 resistenze da 470Kohm anche la entrata negativa  del operazionale é a 3V. Se la source é a 3V non riesci a pilotare il MOSFET con 5V di Arduino perché troppo pochi per portarlo in piena conduzione.

Come detto, spiegami il funzionamento di quel schema; io non ci arrivo.

Ciao Uwe
Logged

Pages: [1] 2 3   Go Up
Jump to: