EDAboard.com | EDAboard.eu | EDAboard.de | EDAboard.co.uk | RTV forum PL | NewsGroups PL

X7R simulieren

elektroda.net NewsGroups Forum Index - Electronics DE - X7R simulieren

Goto page 1, 2  Next

Matthias Weingart
Guest

Thu Feb 11, 2010 12:17 pm   



Das Kondensatormaterial X7R zeigt ja eine Spannungsabhängigkeit der
Kapazität. z.B.:

http://www.epcos.de/inf/mlcc/DC-Bias/X7R0805_NBA/PDF/X7R0805_NBA_DC-Bias_25C_
100n_50V.pdf

(link bidde wieder zusammenbasteln)

Ich würde das gern mal in Spice simulieren, um zu sehen was für Auswirkungen
auf das Signal der C hat (im Rückkoppelzweig einer invertieren Opamp-
Schaltung). Wie krieg ich die Kurve oben nun in Spice rein?
(oder hat das schon mal jemand gemacht?)

Im Prinzip kann man so einen X7R wie eine Kapazitätsdiode einsetzen Wink. Wie
schnell reagiert das Material eigentlich?

M.

Hansjörg Oesch
Guest

Thu Feb 11, 2010 2:25 pm   



Hallo Matthias,

"Matthias Weingart" <mwnews_at_pentax.boerde.de> wrote in message
news:Xns9D1C68C049C8AAlwLookOnTBrightSide_at_penthouse.boerde.de...
Quote:
Das Kondensatormaterial X7R zeigt ja eine Spannungsabhängigkeit der
Kapazität. z.B.:

http://www.epcos.de/inf/mlcc/DC-Bias/X7R0805_NBA/PDF/X7R0805_NBA_DC-Bias_25C_
100n_50V.pdf

(link bidde wieder zusammenbasteln)

Ich würde das gern mal in Spice simulieren, um zu sehen was für
Auswirkungen
auf das Signal der C hat (im Rückkoppelzweig einer invertieren Opamp-
Schaltung). Wie krieg ich die Kurve oben nun in Spice rein?
(oder hat das schon mal jemand gemacht?)

Das würde etwa so gehen:
Kurve mit einem Polynom 3ter oder 4ter Ordnung nachbilden.
Diese spannungsabhängige Funktion als Steuergrössen für einen Variablen
Kondensator verwenden (sehe http://powerelectronics.com/mag/504PET07.pdf)
Ich versuche mal was wenn ich Zeit habe.

Quote:

Im Prinzip kann man so einen X7R wie eine Kapazitätsdiode einsetzen Wink.
Wie
schnell reagiert das Material eigentlich?

Das Verhalten kommt von den piezoelektrischen Eigenschaften der X7R Keramik.
Ein Teil der Energie wird mechanisch, in Deformation, gespeichert. Das geht
recht flott bis in den MHz Bereich. Die Genze wird durch die Verlustleistung
des Kondensators gegeben. Das mit der Kapazitätsdiode im 1nF Bereich ist von
der Idee her gut und müsste auch funktionieren. Das Signal sollte aber eine
nicht zu grosse Amplithude haben.

Guss Hansjörg

Joerg
Guest

Thu Feb 11, 2010 6:38 pm   



Matthias Weingart wrote:
Quote:
Das Kondensatormaterial X7R zeigt ja eine Spannungsabhängigkeit der
Kapazität. z.B.:

http://www.epcos.de/inf/mlcc/DC-Bias/X7R0805_NBA/PDF/X7R0805_NBA_DC-Bias_25C_
100n_50V.pdf

(link bidde wieder zusammenbasteln)

Ich würde das gern mal in Spice simulieren, um zu sehen was für Auswirkungen
auf das Signal der C hat (im Rückkoppelzweig einer invertieren Opamp-
Schaltung). Wie krieg ich die Kurve oben nun in Spice rein?
(oder hat das schon mal jemand gemacht?)


Das geht ueber Curve Fitting, kommt vermutlich von Pipe Fitting, solange
biegen bis es passt :-)

Kann sein dass das bei Euch Naeherungsformel oder so aehnlich heisst, wo
man nicht regulaere Vorgaenge versucht mit Polynomen nachzubilden. Hier
wird erklaert wie das fuer solche Kondensatoren geht:

http://www.cliftonlaboratories.com/capacitor_voltage_change.htm


Quote:
Im Prinzip kann man so einen X7R wie eine Kapazitätsdiode einsetzen Wink. Wie
schnell reagiert das Material eigentlich?


Sauschnell :-)

Ich hatte Z5U fuer Super-Billisch VCOs im Audiobereich benutzt, da war
nichts an Verzoegerungen festzustellen.

--
Gruesse, Joerg

http://www.analogconsultants.com/

"gmail" domain blocked because of excessive spam.
Use another domain or send PM.

Joerg
Guest

Thu Feb 11, 2010 7:26 pm   



Matthias Weingart wrote:
Quote:
"Hansjörg Oesch" <hardware_at_remove_this.sc-devices.ch>:

Das würde etwa so gehen:
Kurve mit einem Polynom 3ter oder 4ter Ordnung nachbilden.

Also ein 3er was schon sehr gut passt ist für den 50V Typ:
y = 0,001x3 - 0,0848x2 + 0,5544x + 0,5115

y ist delta C in Prozent und x ist die Spannung in Volt

Nun muss ich mich erst mal damit beschäftigen wie man subcircuits baut...


Brauchst Du m.W. nicht, wenn Du die Gleichung als Q=f(x) in das
Wertefeld des Kondensators (anstatt der Kapazitaet) reinkopierst.
Natuerlich mit der korrekten Skalierung damit die Kapazitaet bei Null
Volt die richtige Zehnerpotenz und so hat.

--
Gruesse, Joerg

http://www.analogconsultants.com/

"gmail" domain blocked because of excessive spam.
Use another domain or send PM.

Matthias Weingart
Guest

Thu Feb 11, 2010 7:51 pm   



"Hansjörg Oesch" <hardware_at_remove_this.sc-devices.ch>:

Quote:
Das würde etwa so gehen:
Kurve mit einem Polynom 3ter oder 4ter Ordnung nachbilden.

Also ein 3er was schon sehr gut passt ist für den 50V Typ:
y = 0,001x3 - 0,0848x2 + 0,5544x + 0,5115

y ist delta C in Prozent und x ist die Spannung in Volt

Nun muss ich mich erst mal damit beschäftigen wie man subcircuits baut...

M.

Helmut Sennewald
Guest

Thu Feb 11, 2010 10:57 pm   



"Joerg" <invalid_at_invalid.invalid> schrieb im Newsbeitrag
news:7tisu2Fc7oU1_at_mid.individual.net...
Quote:
Matthias Weingart wrote:
"Hansjörg Oesch" <hardware_at_remove_this.sc-devices.ch>:

Das würde etwa so gehen:
Kurve mit einem Polynom 3ter oder 4ter Ordnung nachbilden.

Also ein 3er was schon sehr gut passt ist für den 50V Typ:
y = 0,001x3 - 0,0848x2 + 0,5544x + 0,5115

y ist delta C in Prozent und x ist die Spannung in Volt

Nun muss ich mich erst mal damit beschäftigen wie man subcircuits baut...


Brauchst Du m.W. nicht, wenn Du die Gleichung als Q=f(x) in das Wertefeld
des Kondensators (anstatt der Kapazitaet) reinkopierst. Natuerlich mit der
korrekten Skalierung damit die Kapazitaet bei Null Volt die richtige
Zehnerpotenz und so hat.

--
Gruesse, Joerg

Hallo,

Ja das geht in LTspice mit der Ladungsbeschreibung Q.
Wie immer sind die tanh-Funktionen der Bringer.

Q=75n*30*tanh(x/30)+40n*x-5n*5*tanh(x/5)

Gruß
Helmut


Das ist die Testschaltung. Einfach als "test.asc" abspeichern
und mit LTspice ausführen. Dann I(C1)/(2*pi*1k) plotten.


Version 4
SHEET 1 880 680
WIRE 128 80 -112 80
WIRE -112 112 -112 80
WIRE 128 128 128 80
WIRE -112 256 -112 192
WIRE 128 256 128 192
WIRE 128 256 -112 256
WIRE -112 272 -112 256
FLAG -112 272 0
SYMBOL cap 112 128 R0
SYMATTR InstName C1
SYMATTR Value Q=75n*30*tanh(x/30)+40n*x-5n*5*tanh(x/5)
SYMBOL voltage -112 96 R0
WINDOW 123 24 132 Left 0
WINDOW 39 0 0 Left 0
SYMATTR InstName V1
SYMATTR Value {VDC}
SYMATTR Value2 AC 1
TEXT -120 24 Left 0 !.ac list 1k
TEXT -120 -8 Left 0 !.step param VDC -50 50 1
TEXT -120 -80 Left 0 ;Plot function:\nI(C1)/(2*pi*1k)

Joerg
Guest

Fri Feb 12, 2010 1:50 am   



Helmut Sennewald wrote:
Quote:
"Joerg" <invalid_at_invalid.invalid> schrieb im Newsbeitrag
news:7tisu2Fc7oU1_at_mid.individual.net...
Matthias Weingart wrote:
"Hansjörg Oesch" <hardware_at_remove_this.sc-devices.ch>:

Das würde etwa so gehen:
Kurve mit einem Polynom 3ter oder 4ter Ordnung nachbilden.
Also ein 3er was schon sehr gut passt ist für den 50V Typ:
y = 0,001x3 - 0,0848x2 + 0,5544x + 0,5115

y ist delta C in Prozent und x ist die Spannung in Volt

Nun muss ich mich erst mal damit beschäftigen wie man subcircuits baut...

Brauchst Du m.W. nicht, wenn Du die Gleichung als Q=f(x) in das Wertefeld
des Kondensators (anstatt der Kapazitaet) reinkopierst. Natuerlich mit der
korrekten Skalierung damit die Kapazitaet bei Null Volt die richtige
Zehnerpotenz und so hat.

--
Gruesse, Joerg

Hallo,

Ja das geht in LTspice mit der Ladungsbeschreibung Q.
Wie immer sind die tanh-Funktionen der Bringer.

Q=75n*30*tanh(x/30)+40n*x-5n*5*tanh(x/5)

Gruß
Helmut


Ah, der Experte. Mit trigonometrischen Funktionen ist das natuerlich
edler als die Naeherungs-Holzhammermethoden die unsereins meist benutzt,
Naehrung so nach dem Motto "If it doesn't work just use a bigger hammer" :-)

Quote:

Das ist die Testschaltung. Einfach als "test.asc" abspeichern
und mit LTspice ausführen. Dann I(C1)/(2*pi*1k) plotten.


Version 4
SHEET 1 880 680
WIRE 128 80 -112 80
WIRE -112 112 -112 80
WIRE 128 128 128 80
WIRE -112 256 -112 192
WIRE 128 256 128 192
WIRE 128 256 -112 256
WIRE -112 272 -112 256
FLAG -112 272 0
SYMBOL cap 112 128 R0
SYMATTR InstName C1
SYMATTR Value Q=75n*30*tanh(x/30)+40n*x-5n*5*tanh(x/5)
SYMBOL voltage -112 96 R0
WINDOW 123 24 132 Left 0
WINDOW 39 0 0 Left 0
SYMATTR InstName V1
SYMATTR Value {VDC}
SYMATTR Value2 AC 1
TEXT -120 24 Left 0 !.ac list 1k
TEXT -120 -8 Left 0 !.step param VDC -50 50 1
TEXT -120 -80 Left 0 ;Plot function:\nI(C1)/(2*pi*1k)


Funzt :-)

--
Gruesse, Joerg

http://www.analogconsultants.com/

"gmail" domain blocked because of excessive spam.
Use another domain or send PM.

Matthias Weingart
Guest

Fri Feb 12, 2010 10:56 am   



Joerg <invalid_at_invalid.invalid>:

Quote:
Helmut Sennewald wrote:

Ja das geht in LTspice mit der Ladungsbeschreibung Q.
Wie immer sind die tanh-Funktionen der Bringer.

Q=75n*30*tanh(x/30)+40n*x-5n*5*tanh(x/5)

Ah, der Experte. Mit trigonometrischen Funktionen ist das natuerlich
edler als die Naeherungs-Holzhammermethoden die unsereins meist benutzt,
Naehrung so nach dem Motto "If it doesn't work just use a bigger hammer"
:-)


Das ist die Testschaltung. Einfach als "test.asc" abspeichern
und mit LTspice ausführen. Dann I(C1)/(2*pi*1k) plotten.


Version 4
SHEET 1 880 680
WIRE 128 80 -112 80
WIRE -112 112 -112 80
WIRE 128 128 128 80
WIRE -112 256 -112 192
WIRE 128 256 128 192
WIRE 128 256 -112 256
WIRE -112 272 -112 256
FLAG -112 272 0
SYMBOL cap 112 128 R0
SYMATTR InstName C1
SYMATTR Value Q=75n*30*tanh(x/30)+40n*x-5n*5*tanh(x/5)
SYMBOL voltage -112 96 R0
WINDOW 123 24 132 Left 0
WINDOW 39 0 0 Left 0
SYMATTR InstName V1
SYMATTR Value {VDC}
SYMATTR Value2 AC 1
TEXT -120 24 Left 0 !.ac list 1k
TEXT -120 -8 Left 0 !.step param VDC -50 50 1
TEXT -120 -80 Left 0 ;Plot function:\nI(C1)/(2*pi*1k)


Funzt :-)


Wenn ich Euch nicht hätte, würde ich da ein paar Stunden drüber rumgrübeln
und das über einen suboptimalen Weg lösen.

Danke!

Warum eigentlich tanh? Und wie hast Du die ermittelt?
Auf dem PC ist tanh sicherlich eine gute Lösung für die Gleitkommaeinheit,
falls ich sowas auf einem uC zu realisieren hätte, dann wäre die
Multiplikations-/Additionsmethode imho aber besser, gerade Polynome 3. Grades
verhalten sich sehr gutmütig; notfalls muss man die halt
hintereinanderketteln (Splines).

M.

Matthias Weingart
Guest

Fri Feb 12, 2010 11:13 am   



Matthias Weingart <mwnews_at_pentax.boerde.de>:

Quote:
Q=75n*30*tanh(x/30)+40n*x-5n*5*tanh(x/5)

Bleibt noch anzumerken, das das für den 100nF 0805 50V Typ von Epcos gilt.
Hab mir mal ein paar Diagramme bei epcos angesehen, (leider der einzige
Hersteller der solche Diagramme hat). Es scheint so zu sein, dass man diese
Funktion bei einem 100V Typen (und vermutlich auch bei einem 16V Typen) dann
auf die entsprechende Spannungsfestigkeit skalieren muss, z.B.:
Der 50V Typ hat -55% bei 50V und
der 100V Typ -40% bei 100V und die Kurven verlaufen leicht
unterschiedlich.

M.

Rainer Buchty
Guest

Fri Feb 12, 2010 11:33 am   



In article <Xns9D1D5B0529AF3AlwLookOnTBrightSide_at_penthouse.boerde.de>,
Matthias Weingart <mwnews_at_pentax.boerde.de> writes:

|> Auf dem PC ist tanh sicherlich eine gute Lösung für die Gleitkommaeinheit,
|> falls ich sowas auf einem uC zu realisieren hätte, dann wäre die
|> Multiplikations-/Additionsmethode imho aber besser

Sofern Du Dich im Wertebereich [-1:1] bewegst, kannst Du tanh durch
x-(x^3)/6 approximieren.

Läuft zwar im Randbereich etwas davon, aber ist für Audioanwendungen
hinreichend tauglich.

Rainer

Joerg
Guest

Fri Feb 12, 2010 6:12 pm   



Matthias Weingart wrote:
Quote:
Joerg <invalid_at_invalid.invalid>:

Helmut Sennewald wrote:
Ja das geht in LTspice mit der Ladungsbeschreibung Q.
Wie immer sind die tanh-Funktionen der Bringer.

Q=75n*30*tanh(x/30)+40n*x-5n*5*tanh(x/5)
Ah, der Experte. Mit trigonometrischen Funktionen ist das natuerlich
edler als die Naeherungs-Holzhammermethoden die unsereins meist benutzt,
Naehrung so nach dem Motto "If it doesn't work just use a bigger hammer"
:-)

Das ist die Testschaltung. Einfach als "test.asc" abspeichern
und mit LTspice ausführen. Dann I(C1)/(2*pi*1k) plotten.


Version 4
SHEET 1 880 680
WIRE 128 80 -112 80
WIRE -112 112 -112 80
WIRE 128 128 128 80
WIRE -112 256 -112 192
WIRE 128 256 128 192
WIRE 128 256 -112 256
WIRE -112 272 -112 256
FLAG -112 272 0
SYMBOL cap 112 128 R0
SYMATTR InstName C1
SYMATTR Value Q=75n*30*tanh(x/30)+40n*x-5n*5*tanh(x/5)
SYMBOL voltage -112 96 R0
WINDOW 123 24 132 Left 0
WINDOW 39 0 0 Left 0
SYMATTR InstName V1
SYMATTR Value {VDC}
SYMATTR Value2 AC 1
TEXT -120 24 Left 0 !.ac list 1k
TEXT -120 -8 Left 0 !.step param VDC -50 50 1
TEXT -120 -80 Left 0 ;Plot function:\nI(C1)/(2*pi*1k)

Funzt :-)


Wenn ich Euch nicht hätte, würde ich da ein paar Stunden drüber rumgrübeln
und das über einen suboptimalen Weg lösen.

Danke!

Warum eigentlich tanh? Und wie hast Du die ermittelt?
Auf dem PC ist tanh sicherlich eine gute Lösung für die Gleitkommaeinheit,
falls ich sowas auf einem uC zu realisieren hätte, dann wäre die
Multiplikations-/Additionsmethode imho aber besser, gerade Polynome 3. Grades
verhalten sich sehr gutmütig; notfalls muss man die halt
hintereinanderketteln (Splines).


Das ueberlasse ich lieber Helmut. Frueher musste man sowas immer seinem
Rechner anpassen, trigonometrische Funktionen in groesserem Stil konnte
ich mir Anfang der 90er erst leisten nachdem ich ein paar hundert
Maerker fuer einen Math-Coprocessor auf den Tisch gelegt hatte. Ich habe
den Cyrix noch :-)

--
Gruesse, Joerg

http://www.analogconsultants.com/

"gmail" domain blocked because of excessive spam.
Use another domain or send PM.

Matthias Weingart
Guest

Fri Feb 12, 2010 7:30 pm   



buchty_at_atbode100.lrr.in.tum.de (Rainer Buchty):

Quote:
In article <Xns9D1D5B0529AF3AlwLookOnTBrightSide_at_penthouse.boerde.de>,
Matthias Weingart <mwnews_at_pentax.boerde.de> writes:

|> Auf dem PC ist tanh sicherlich eine gute Lösung für die
|> Gleitkommaeinheit, falls ich sowas auf einem uC zu realisieren hätte,
|> dann wäre die Multiplikations-/Additionsmethode imho aber besser

Sofern Du Dich im Wertebereich [-1:1] bewegst, kannst Du tanh durch
x-(x^3)/6 approximieren.

Ohje eine Division, die nicht durch 2 geht Wink.

M.

Helmut Sennewald
Guest

Fri Feb 12, 2010 7:46 pm   



"Matthias Weingart" <mwnews_at_pentax.boerde.de> schrieb im Newsbeitrag
news:Xns9D1D5B0529AF3AlwLookOnTBrightSide_at_penthouse.boerde.de...
Quote:
Joerg <invalid_at_invalid.invalid>:

Helmut Sennewald wrote:

Ja das geht in LTspice mit der Ladungsbeschreibung Q.
Wie immer sind die tanh-Funktionen der Bringer.

Q=75n*30*tanh(x/30)+40n*x-5n*5*tanh(x/5)

Ah, der Experte. Mit trigonometrischen Funktionen ist das natuerlich
edler als die Naeherungs-Holzhammermethoden die unsereins meist benutzt,
Naehrung so nach dem Motto "If it doesn't work just use a bigger hammer"
:-)


Das ist die Testschaltung. Einfach als "test.asc" abspeichern
und mit LTspice ausführen. Dann I(C1)/(2*pi*1k) plotten.


Version 4
SHEET 1 880 680
WIRE 128 80 -112 80
WIRE -112 112 -112 80
WIRE 128 128 128 80
WIRE -112 256 -112 192
WIRE 128 256 128 192
WIRE 128 256 -112 256
WIRE -112 272 -112 256
FLAG -112 272 0
SYMBOL cap 112 128 R0
SYMATTR InstName C1
SYMATTR Value Q=75n*30*tanh(x/30)+40n*x-5n*5*tanh(x/5)
SYMBOL voltage -112 96 R0
WINDOW 123 24 132 Left 0
WINDOW 39 0 0 Left 0
SYMATTR InstName V1
SYMATTR Value {VDC}
SYMATTR Value2 AC 1
TEXT -120 24 Left 0 !.ac list 1k
TEXT -120 -8 Left 0 !.step param VDC -50 50 1
TEXT -120 -80 Left 0 ;Plot function:\nI(C1)/(2*pi*1k)


Funzt :-)


Wenn ich Euch nicht hätte, würde ich da ein paar Stunden drüber rumgrübeln
und das über einen suboptimalen Weg lösen.

Danke!

Warum eigentlich tanh?

Hallo Matthias,

Tanh ist gut weil die Funktion in Sättigung geht und weil sie
punktsymmetrisch ist (f(x) = -f(-x).

Quote:
Und wie hast Du die ermittelt?

Einfach mal die drei Terme hingeschrieben.

x*30nF ist ein Kondensator mit konstanter Kapazität von 20nF

75n*30*tanh(x/30) für den Abfall

-5n*5*tanh(x/5) für die Delle nach oben

Dann einfach mit den Faktoren "gespielt" bis es brauchbar aussah. x ist die
Spannung.

Etwas äquivalentes gibt es auch für die Induktivität von Spulen. Hier ist x
der Strom.
flux = 100u*tanh(x/5)

Gruß
Helmut

Quote:
Auf dem PC ist tanh sicherlich eine gute Lösung für die Gleitkommaeinheit,
falls ich sowas auf einem uC zu realisieren hätte, dann wäre die
Multiplikations-/Additionsmethode imho aber besser, gerade Polynome 3.
Grades
verhalten sich sehr gutmütig; notfalls muss man die halt
hintereinanderketteln (Splines).

M.


Klaus Butzmann
Guest

Sat Feb 13, 2010 4:44 pm   



Am 12.02.2010 17:12, schrieb Joerg:

Quote:
ich mir Anfang der 90er erst leisten nachdem ich ein paar hundert
Maerker fuer einen Math-Coprocessor auf den Tisch gelegt hatte. Ich habe
den Cyrix noch Smile
Ich meinen auf 10 MHz gepimpten 80287 auch noch, DM 500 Sad



Butzo

Rainer Buchty
Guest

Sun Feb 14, 2010 7:44 pm   



In article <Xns9D1DB22D36D0AAlwLookOnTBrightSide_at_penthouse.boerde.de>,
Matthias Weingart <mwnews_at_pentax.boerde.de> writes:
|> buchty_at_atbode100.lrr.in.tum.de (Rainer Buchty):
|> >
|> > Sofern Du Dich im Wertebereich [-1:1] bewegst, kannst Du tanh durch
|> > x-(x^3)/6 approximieren.
|>
|> Ohje eine Division, die nicht durch 2 geht Wink.

Dann multiplizier doch mit 10923 und schieb 16 Stellen nach rechts :)

Rainer

Goto page 1, 2  Next

elektroda.net NewsGroups Forum Index - Electronics DE - X7R simulieren

Arabic versionBulgarian versionCatalan versionCzech versionDanish versionGerman versionGreek versionEnglish versionSpanish versionFinnish versionFrench versionHindi versionCroatian versionIndonesian versionItalian versionHebrew versionJapanese versionKorean versionLithuanian versionLatvian versionDutch versionNorwegian versionPolish versionPortuguese versionRomanian versionRussian versionSlovak versionSlovenian versionSerbian versionSwedish versionTagalog versionUkrainian versionVietnamese versionChinese version
RTV map EDAboard.com map News map EDAboard.eu map EDAboard.de map EDAboard.co.uk map Opony