Electronics-Related.com
Forums

Relaxation oscillators and SPICE

Started by Piotr Wyderski January 1, 2015
Jim Thompson wrote:
> (2) Oscillators, in any form of Spice, _often_ will not start on their > own.
And what do you do then? Best regards, Piotr
On Thu, 01 Jan 2015 20:31:09 +0100, Piotr Wyderski
<peter.pan@neverland.mil> wrote:

>Jim Thompson wrote: >> (2) Oscillators, in any form of Spice, _often_ will not start on their >> own. > >And what do you do then? > > Best regards, Piotr
You didn't read the last line of my post... "Try .IC of capacitor as zero volts." This _should_ be settable in the capacitor part attributes, if Spice conventions are followed by LTspice (likely). If not, add this "Spice directive"... .IC V(Node_Name_At_Top_Of_Cap)=0 Some forms of oscillators (LC is one) require a "kickstart", a current pulse into the tank. (This is because, unlike in the real world, transient Spice simulations have no noise to start the oscillation.) ...Jim Thompson -- | James E.Thompson | mens | | Analog Innovations | et | | Analog/Mixed-Signal ASIC's and Discrete Systems | manus | | San Tan Valley, AZ 85142 Skype: skypeanalog | | | Voice:(480)460-2350 Fax: Available upon request | Brass Rat | | E-mail Icon at http://www.analog-innovations.com | 1962 | I love to cook with wine. Sometimes I even put it in the food.
On Thu, 01 Jan 2015 20:27:31 +0100, Piotr Wyderski
<peter.pan@neverland.mil> wrote:

>Tauno Voipio wrote: > >> The 220k timing resistor is too small, keeping the PUT continuosly on. >> The following thing oscillates. > >Thank you all very much, in both cases the non-oscillation >seems to be caused by too low resistor value. In the case >of the PUT-based circuit I have not enough experience to >judge whether Spice is right or wrong, but I remember well >my experiments performed over a decade ago with a *real* neon >oscillator. It used to work with pretty any reasonable resistor. >The simulation provided by John does not oscillate with 470k >and with 560k it oscillates *exactly twice*. With 680k it works >well. I must confess that my excitement about Spice has just >entered a colder period... :-/ > >Once again, thank you for your help! > > Best regards, Piotr >
Do the math first and you won't get cold >:-} ...Jim Thompson -- | James E.Thompson | mens | | Analog Innovations | et | | Analog/Mixed-Signal ASIC's and Discrete Systems | manus | | San Tan Valley, AZ 85142 Skype: skypeanalog | | | Voice:(480)460-2350 Fax: Available upon request | Brass Rat | | E-mail Icon at http://www.analog-innovations.com | 1962 | I love to cook with wine. Sometimes I even put it in the food.
On Thu, 01 Jan 2015 20:27:31 +0100, Piotr Wyderski
<peter.pan@neverland.mil> wrote:

>Tauno Voipio wrote: > >> The 220k timing resistor is too small, keeping the PUT continuosly on. >> The following thing oscillates. > >Thank you all very much, in both cases the non-oscillation >seems to be caused by too low resistor value. In the case >of the PUT-based circuit I have not enough experience to >judge whether Spice is right or wrong, but I remember well >my experiments performed over a decade ago with a *real* neon >oscillator. It used to work with pretty any reasonable resistor. >The simulation provided by John does not oscillate with 470k >and with 560k it oscillates *exactly twice*. With 680k it works >well. I must confess that my excitement about Spice has just >entered a colder period... :-/ > >Once again, thank you for your help! > > Best regards, Piotr >
Spice is often very, very wrong. Oscillators, especially high-Q resonator oscillators, can be very tricky. I'm currently playing with a coaxial ceramic resonator oscillator, and can make LT Spice do all sorts of goofy stuff by playing with the time step. The default (automatic) time step results are absurd. 1 picosecond begins to behave maybe-sensibly, and anything smaller explodes run times. -- John Larkin Highland Technology, Inc picosecond timing laser drivers and controllers jlarkin att highlandtechnology dott com http://www.highlandtechnology.com
On Thu, 01 Jan 2015 12:45:40 -0700, Jim Thompson
<To-Email-Use-The-Envelope-Icon@On-My-Web-Site.com> wrote:

>On Thu, 01 Jan 2015 20:31:09 +0100, Piotr Wyderski ><peter.pan@neverland.mil> wrote: > >>Jim Thompson wrote: >>> (2) Oscillators, in any form of Spice, _often_ will not start on their >>> own. >> >>And what do you do then? >> >> Best regards, Piotr > >You didn't read the last line of my post... > >"Try .IC of capacitor as zero volts." > >This _should_ be settable in the capacitor part attributes, if Spice >conventions are followed by LTspice (likely). > >If not, add this "Spice directive"... > > .IC V(Node_Name_At_Top_Of_Cap)=0 > >Some forms of oscillators (LC is one) require a "kickstart", a current >pulse into the tank. > >(This is because, unlike in the real world, transient Spice >simulations have no noise to start the oscillation.) > > ...Jim Thompson
In LT Spice, just check "skip initial operating point solution" in the transient analysis setup window. I do that a lot, for power supplies and such where powerup matters. The other thing to do is use a pulse generator for the power supply, and bring it up after some small time delay, optionally with some realistic rise time. -- John Larkin Highland Technology, Inc picosecond timing laser drivers and controllers jlarkin att highlandtechnology dott com http://www.highlandtechnology.com
On Thu, 01 Jan 2015 12:46:35 -0700, Jim Thompson
<To-Email-Use-The-Envelope-Icon@On-My-Web-Site.com> wrote:

>On Thu, 01 Jan 2015 20:27:31 +0100, Piotr Wyderski ><peter.pan@neverland.mil> wrote: > >>Tauno Voipio wrote: >> >>> The 220k timing resistor is too small, keeping the PUT continuosly on. >>> The following thing oscillates. >> >>Thank you all very much, in both cases the non-oscillation >>seems to be caused by too low resistor value. In the case >>of the PUT-based circuit I have not enough experience to >>judge whether Spice is right or wrong, but I remember well >>my experiments performed over a decade ago with a *real* neon >>oscillator. It used to work with pretty any reasonable resistor. >>The simulation provided by John does not oscillate with 470k >>and with 560k it oscillates *exactly twice*. With 680k it works >>well. I must confess that my excitement about Spice has just >>entered a colder period... :-/ >> >>Once again, thank you for your help! >> >> Best regards, Piotr >> > >Do the math first and you won't get cold >:-} > > ...Jim Thompson
The LT Spice neon model isn't right. -- John Larkin Highland Technology, Inc picosecond timing laser drivers and controllers jlarkin att highlandtechnology dott com http://www.highlandtechnology.com
Jim Thompson wrote:


[cut -- thanks Jim, I have never used additonal directives except of the 
coupling factor for coils]

> (This is because, unlike in the real world, transient Spice > simulations have no noise to start the oscillation.)
Yes, the differential equation which describes many oscillators has the valid solution V(t)=constant. But IMHO in the case of a simulator it is a bug, not a feature. Why don't they set the initial voltage at the nodes (esp. capacitors) to some small, random values instead of 0? Best regards, Piotr
On Thu, 01 Jan 2015 11:53:10 -0800, John Larkin
<jlarkin@highlandtechnology.com> wrote:

>On Thu, 01 Jan 2015 12:46:35 -0700, Jim Thompson ><To-Email-Use-The-Envelope-Icon@On-My-Web-Site.com> wrote: > >>On Thu, 01 Jan 2015 20:27:31 +0100, Piotr Wyderski >><peter.pan@neverland.mil> wrote: >> >>>Tauno Voipio wrote: >>> >>>> The 220k timing resistor is too small, keeping the PUT continuosly on. >>>> The following thing oscillates. >>> >>>Thank you all very much, in both cases the non-oscillation >>>seems to be caused by too low resistor value. In the case >>>of the PUT-based circuit I have not enough experience to >>>judge whether Spice is right or wrong, but I remember well >>>my experiments performed over a decade ago with a *real* neon >>>oscillator. It used to work with pretty any reasonable resistor. >>>The simulation provided by John does not oscillate with 470k >>>and with 560k it oscillates *exactly twice*. With 680k it works >>>well. I must confess that my excitement about Spice has just >>>entered a colder period... :-/ >>> >>>Once again, thank you for your help! >>> >>> Best regards, Piotr >>> >> >>Do the math first and you won't get cold >:-} >> >> ...Jim Thompson > >The LT Spice neon model isn't right.
Try this one (fix the wraps before using)... ****************************************************************** .SUBCKT NE-2H A1 A2 PARAMS: Vs=130 Ii=50u Ti=1m Vh=80 Rh=1k Ia=4m Varc A1 arc 0 ; current sense Garc arc A2 VALUE = {sgn(V(arc,A2))*LIMIT((abs(V(arc,A2))-V(ref))/(Rh*V(abn)),0,1)} Carc arc A2 5p ; stray terminal capacitance Gref 0 ref VALUE = {Vh+(Vs-Vh)/(1+V(ion)**2)} ; Rpar=1 ; voltage transition Rparref 0 ref 1 ; Cref ref 0 1n ; tiny capacitance here aids convergence Gion 0 ion VALUE = {abs(I(Varc))} ; Rpar={1/Ii} ; measure of free ions Rpar 0 ion {1/Ii} Cion ion 0 {Ti*Ii} ; gas ionization time constant Gabn 0 abn VALUE = {Ia**2}+I(Varc)**2 ; Rpar={1/Ia**2} ; abnormal glow Rparabn 0 abn {1/Ia**2} Cabn abn 0 1p ; tiny capacitance here aids convergence .ENDS NE-2H ****************************************************************** This was originally posted on the LTspice list by analog@ieee.org and I then modified some of the behavioral expressions to improve convergence. ...Jim Thompson -- | James E.Thompson | mens | | Analog Innovations | et | | Analog/Mixed-Signal ASIC's and Discrete Systems | manus | | San Tan Valley, AZ 85142 Skype: skypeanalog | | | Voice:(480)460-2350 Fax: Available upon request | Brass Rat | | E-mail Icon at http://www.analog-innovations.com | 1962 | I love to cook with wine. Sometimes I even put it in the food.
On Thu, 01 Jan 2015 13:34:37 -0700, Jim Thompson
<To-Email-Use-The-Envelope-Icon@On-My-Web-Site.com> wrote:

>On Thu, 01 Jan 2015 11:53:10 -0800, John Larkin ><jlarkin@highlandtechnology.com> wrote: > >>On Thu, 01 Jan 2015 12:46:35 -0700, Jim Thompson >><To-Email-Use-The-Envelope-Icon@On-My-Web-Site.com> wrote: >> >>>On Thu, 01 Jan 2015 20:27:31 +0100, Piotr Wyderski >>><peter.pan@neverland.mil> wrote: >>> >>>>Tauno Voipio wrote: >>>> >>>>> The 220k timing resistor is too small, keeping the PUT continuosly on. >>>>> The following thing oscillates. >>>> >>>>Thank you all very much, in both cases the non-oscillation >>>>seems to be caused by too low resistor value. In the case >>>>of the PUT-based circuit I have not enough experience to >>>>judge whether Spice is right or wrong, but I remember well >>>>my experiments performed over a decade ago with a *real* neon >>>>oscillator. It used to work with pretty any reasonable resistor. >>>>The simulation provided by John does not oscillate with 470k >>>>and with 560k it oscillates *exactly twice*. With 680k it works >>>>well. I must confess that my excitement about Spice has just >>>>entered a colder period... :-/ >>>> >>>>Once again, thank you for your help! >>>> >>>> Best regards, Piotr >>>> >>> >>>Do the math first and you won't get cold >:-} >>> >>> ...Jim Thompson >> >>The LT Spice neon model isn't right. > >Try this one (fix the wraps before using)... > >****************************************************************** >.SUBCKT NE-2H A1 A2 PARAMS: Vs=130 Ii=50u Ti=1m Vh=80 Rh=1k Ia=4m >Varc A1 arc 0 ; current sense >Garc arc A2 VALUE = >{sgn(V(arc,A2))*LIMIT((abs(V(arc,A2))-V(ref))/(Rh*V(abn)),0,1)} >Carc arc A2 5p ; stray terminal capacitance >Gref 0 ref VALUE = {Vh+(Vs-Vh)/(1+V(ion)**2)} ; Rpar=1 ; voltage >transition >Rparref 0 ref 1 >; Cref ref 0 1n ; tiny capacitance here aids convergence >Gion 0 ion VALUE = {abs(I(Varc))} ; Rpar={1/Ii} ; measure of free >ions >Rpar 0 ion {1/Ii} >Cion ion 0 {Ti*Ii} ; gas ionization time constant >Gabn 0 abn VALUE = {Ia**2}+I(Varc)**2 ; Rpar={1/Ia**2} ; abnormal >glow >Rparabn 0 abn {1/Ia**2} >Cabn abn 0 1p ; tiny capacitance here aids convergence >.ENDS NE-2H >****************************************************************** > >This was originally posted on the LTspice list by analog@ieee.org and >I then modified some of the behavioral expressions to improve >convergence. > > ...Jim Thompson
Actually, I don't design much with neon bulb oscillators lately. -- John Larkin Highland Technology, Inc picosecond timing laser drivers and controllers jlarkin att highlandtechnology dott com http://www.highlandtechnology.com
"Piotr Wyderski" <peter.pan@neverland.mil> wrote in message 
news:m848sf$7m3$1@node1.news.atman.pl...
> Why don't they set the > initial voltage at the nodes (esp. capacitors) to some small, > random values instead of 0?
Then it would be nondeterministic. It's a simulator, not reality -- it just churns numbers. It's your duty to build a model that's representative of reality. If reality means adding noise voltage/current sources for important components (or all of them), that's what you have to do! Also keep in mind, .MODELs (diodes, BJTs, and bad MOSFET models) are an idealized approximation of the internal chip only. You must add package parasitics yourself. .SUBCKTs usually include this, but inspect the source to be sure it's reasonable. Tim -- Seven Transistor Labs Electrical Engineering Consultation Website: http://seventransistorlabs.com