Pagina 1 di 2

COMPARATORE PER UNA FUNZIONE NON LINEARE

MessaggioInviato: 30 gen 2010, 12:40
da salvatorev
salve
io ho un problema riguardante l'implentazione di una funzione su un circuito analogico per la quale credo di dover usare un comparatore.
la funzione è la seguente:

f(x) = a se |x|<1
b se |x|>1
mi potrebbe dare un suggerimento per la realizzazione?

Re: COMPARATORE PER UNA FUNZIONE NON LINEARE

MessaggioInviato: 30 gen 2010, 12:55
da g.schgor
Ecco uno schema
AbsComp.GIF
AbsComp.GIF (12.95 KiB) Osservato 8058 volte


Si utilizzano 2 dei comparatori di un LM339:
il primo serve all'inversione del segnale (quando è negativo),
il secondo dà un'uscita per il comando di uno scambio
(deviatore statico) per attivare a o b.

Ecco il risultato supponendo il segnale sinusoidale a 2Vpp:
AbsCompg.GIF
AbsCompg.GIF (6.72 KiB) Osservato 8050 volte

Spero sia chiaro

Re: COMPARATORE PER UNA FUNZIONE NON LINEARE

MessaggioInviato: 30 gen 2010, 19:32
da IsidoroKZ
Il 339 riesce a funzionare in linearita` con retroazione negativa? In questo caso lo fai lavorare con retroazione elevata, non oscilla? Come compensi la caduta sui diodi? Forse la si puo` parzialmente compensare spostando la tensione di soglia.

Se e` disponibile una alimentazione duale, proporrei un comparatore a finestra, con le due soglie a -1V e +1V.

Re: COMPARATORE PER UNA FUNZIONE NON LINEARE

MessaggioInviato: 30 gen 2010, 22:27
da g.schgor
Ho cercato di mantenere il circuito semplice, con una sola alimentazione.
X1 fa solo da raddrizzatore, ribaltando la semionde negative (si sarebbe
potuto ottenere la stessa cosa con un ponte a diodi, ma già che c'era
più di un amplificatore inutilizzato..)
Per la caduta sui diodi si potrebbe, nel caso, tenerne conto nella soglia.

Pensavo invece di poter utilizzare gli altri 2 amplificatori del 339 per
fare anche la selezione del segnale (a o b), ma non m'è venuto.
Quindi si utilizza l'uscita di X2 per comandare un deviatore.

Re: COMPARATORE PER UNA FUNZIONE NON LINEARE

MessaggioInviato: 31 gen 2010, 2:05
da IsidoroKZ
g.schgor ha scritto:Ho cercato di mantenere il circuito semplice, con una sola alimentazione.
X1 fa solo da raddrizzatore, ribaltando la semionde negative


Il problema e` che un comparatore usato come amplificatore e` instabile, autoscilla. I comparatori non hanno la compensazione interna in frequenza, cosi` possono andare piu` veloci. Come conseguenza se li si usa da amplificatori oscillano :(. Solo National nell'application note AN-74 fa vedere come usare il 339 come operazionale, ma con pesanti reti di compensazione messe all'esterno e banda passante di 100 Hz :(

Non vedi l'instabilita` in simulazione perche' tipicamente il costruttore non specifica in frequenza i comparatori e quindi il modello spice non tiene conto di quell'aspetto.

Per fare un raddrizzatore a singola semionda senza problemi di soglia, si puo` usare uno di questi circuiti (quello a destra e` di quelli simpatici):

rectifier.gif
rectifier.gif (3.84 KiB) Osservato 8003 volte

g.schgor ha scritto:Pensavo invece di poter utilizzare gli altri 2 amplificatori del 339 per
fare anche la selezione del segnale (a o b), ma non m'è venuto.
Quindi si utilizza l'uscita di X2 per comandare un deviatore.


Non avevo capito dal messaggio originale se a e b sono due segnali oppure due livelli fissi. Se sono due segnali unipolari, introducendo un po' di attenuazione, si potrebbe fare cosi`:

rectif1.gif
rectif1.gif (2.92 KiB) Osservato 7999 volte


La soluzione e` bruttina, ma usa il comparatore in modo non convenzionale!

Re: COMPARATORE PER UNA FUNZIONE NON LINEARE

MessaggioInviato: 31 gen 2010, 9:13
da g.schgor
Bene Isidoro, le tue osservazioni sono convincenti e penso che
il circuito finale possa risolvere il problema senza deviatore statico. =D>

Direi che ciò dimostra l'utilità del Forum, con confronto fra
diverse soluzioni possibili.

Re: COMPARATORE PER UNA FUNZIONE NON LINEARE

MessaggioInviato: 2 feb 2010, 12:20
da salvatorev
Salve,
ne approfitto per ringraziare entrambi per la cortese attenzione e la disponibilità. :)

isidoro ha scritto:
Non avevo capito dal messaggio originale se a e b sono due segnali oppure due livelli fissi. Se sono due segnali unipolari, introducendo un po' di attenuazione, si potrebbe fare cosi`:


Ebbene a e b sono due livelli fissi i cui valori sono rispettivamente:

a= 0.2
b= 10

quindi il mio dubbio è come reallizzare tali livelli, mi chiedevo se non si potesse utilizzare una configurazione con amplicatore operazionale sfruttandone la naturale non linearità:

Codice: Seleziona tutto
vo = f(vd) =
  −Esat, if vd ≤ −Esat/Av
   Av vd, if |vd| < Esat/Av
   Esat, if vd ≥ Esat/Av


nel senso...non si potrebbe usare un raddrizzatore di precisione a doppia semionda del segnale x,un comparatore e poi sfruttare la non linearità di cui sopra per ottenere i due valori?
mi rendo conto della stupidità della questione.... :oops: ma sono veramente in alto mare in materia.

e poi un'altra piccola domanda come deduco la tensione di saturazione di un amplificatore ...ad esempio un TL082 che sto utlizzando nel resto del circuito con alimentazione duale a +15/-15 V?

Re: COMPARATORE PER UNA FUNZIONE NON LINEARE

MessaggioInviato: 2 feb 2010, 15:32
da g.schgor
Io mi ero preoccupato di fare un circuito con una sola alimentazione,
ma se disponi di alimentazione doppia e i valori di a e b sono costanti,
si può pensare un circuito diverso.
Appena mi è possibile te lo invio.

Re: COMPARATORE PER UNA FUNZIONE NON LINEARE

MessaggioInviato: 2 feb 2010, 17:44
da IsidoroKZ
salvatorev ha scritto:Ebbene a e b sono due livelli fissi i cui valori sono rispettivamente:

a= 0.2
b= 10

e poi un'altra piccola domanda come deduco la tensione di saturazione di un amplificatore ...ad esempio un TL082 che sto utlizzando nel resto del circuito con alimentazione duale a +15/-15 V?


Quanto devono essere precisi quei due livelli? (ai quali sarebbe opportuno mettere anche l'unita` di misura!)

Quanto e` caricato il circuito che genera quei due livelli? Che e` tanto come dire: quanta corrente assorbi da quel circuito, dove va a finire quel segnale?

Infine una curiosita`: a cosa ti serve un livello di 0.2V? E` un valore inconsueto.

La tensione di saturazione non e` un valore fisso: di solito viene dato un valore minimo e uno tipico, ma il valore "esatto" varia da un componente all'altro e dalle condizioni di utilizzo (corrente di uscita, temperatura, alimentazione...)

Re: COMPARATORE PER UNA FUNZIONE NON LINEARE

MessaggioInviato: 2 feb 2010, 18:55
da salvatorev
isidoro ha scritto
Quanto devono essere precisi quei due livelli? (ai quali sarebbe opportuno mettere anche l'unita` di misura!)


Ha prorprio ragione :oops: , l'unità di misura sarebbero in volt, per quanto riguarda la precisione mi serve il valore "esatto" nei limiti del possibile.

isidoro ha scritto
Quanto e` caricato il circuito che genera quei due livelli? Che e` tanto come dire: quanta corrente assorbi da quel circuito, dove va a finire quel segnale?


il carico del circuito dovrebbe essere un moltiplicatore(AD633), infatti la funzione complessivamente da implementare è :

sarà la nostra f(x) di cui sopra moltiplicata per un segnale x2

e cioè W(x1,x2)= f(x1)x2

dove f(x1) = a se|x1|<1
b se |x1|>1

isidoro ha scritto
Infine una curiosita`: a cosa ti serve un livello di 0.2V? E` un valore inconsueto.


ebbene io dovrei realizzare un circuito di caotico di Chua tramite le CNN(cellular neural network). la realizzazione tramite questo tipo di celle è dovuto al fatto che in realtà il circuito prevederebbe l'utilizzo di un memristore di cui ovviamente io non dispongo, quindi è necessario "emulare" le caratteristiche sul piano V-I del memristore che è un elemento non lineare.

Se vuole posso mandarle qualche articolo scientifico in messaggi privati credo che di sicuro li troverebbe interessanti.