Maker Pro
Maker Pro

SPICE question regarding astable multivibrator with transistor

M

Michael Vick

I am not really sure how to do tht , coz i'm using google groups to
post this msg...but here;s the netlist..

* Schematics Netlist *



C_C2 $N_0001 $N_0002 10nF
R_R5 $N_0004 $N_0003 1k
R_R6 $N_0002 $N_0003 1k
V_V1 $N_0003 0 10V
Q_Q3 $N_0002 $N_0005 0 Q2N3904
Q_Q4 $N_0004 $N_0001 0 Q2N3904
R_R2 $N_0005 $N_0003 10k
R_R3 $N_0001 $N_0003 10k
C_C1 $N_0004 $N_0005 10nF IC=0
 
H

Helmut Sennewald

Michael Vick said:
Thanks a lot to all these quick replies...The initial condition
problem does infact occur in spice....and once i corrected it , i saw
oscillations immediately...one step in the right direction.
However when i ran a Parametric sweep of the DV voltage from 0-10 V,
the frequency of the oscillations remain the same , with just change
in the amplitude... this is a interesting problem since the same
circuit in realtime has varying frequencies(obvious) at diff voltages.

being a new user to Spice , i have not come across this kind of error.
does anyone have further ideas on tht.. I tried to change the gain to
around 100 , to see if it had any effect on the frequency.but it didnt
change a bit...
I am thinkking it could probably be because of the transistor model(
q2n2222)...

Hello Michael,
this is indeed the missing Vbe breakdown voltage in most of the bipolar
ransistor models from the vendors. The real transistors have Vbe breakdown
voltages in the range of 5 to 7V. Hf transistors may have lower values.
Your real circuit should behave very similar to the simulation until
supply voltages up to 5V where no breakdown occurs. Above this value,
the negative voltage peak at the base of the Qs is limited to about -5V
in your real circuit.

Best Regards
Helmut

PS: Even when I ramped up the supply voltage, it didn't oscillate
in LTSPICE until I mismatched any one of the R or C by 1%.
 
J

Jim Thompson

I am not really sure how to do tht , coz i'm using google groups to
post this msg...but here;s the netlist..

* Schematics Netlist *



C_C2 $N_0001 $N_0002 10nF
R_R5 $N_0004 $N_0003 1k
R_R6 $N_0002 $N_0003 1k
V_V1 $N_0003 0 10V
Q_Q3 $N_0002 $N_0005 0 Q2N3904
Q_Q4 $N_0004 $N_0001 0 Q2N3904
R_R2 $N_0005 $N_0003 10k
R_R3 $N_0001 $N_0003 10k
C_C1 $N_0004 $N_0005 10nF IC=0

Now that's *really* funny. Your circuit is (except for different R/C
values) what I threw together to demonstrate the need for a .IC
statement. However the PSpice people threw me a curve ball in v10.0
and it *will* run without a .IC statement... I'm trying to find out
right now what they've changed in the Solver routines.

But a comment... this structure *does not* change frequency
*significantly* with supply potential until the voltage nears VBE.

For example, with collector resistors of 30K, base resistors of 300K,
and 1nF capacitors I got the following:

Vsupply Frequency
10 2.34375KHz
3 2.21365KHz
1 1.87008K
0.8 1.7775K

If you're trying to emulate a voltage-controlled multivibrator,
check-out my old-old-old TTL design, the Motorola MC4024 or the ECL
version, MC1658; both of which (IIRC) have 3.5:1 tuning ranges.

...Jim Thompson
 
K

Kevin Aylward

Mike said:
Kevin,


Nonsense. It was a guess to the problem based on the original
poster's circuit description. I certainly never thought nor
intended that 555 type astables needed noise to start.
No one
thinks that.

As I notated, there was implication made in this thread, that astables
require noise to start them.
A *wrong* assumption about the original poster's circuit. His
circuit did need a kick start.

Apparently not.
You might read his post and his
follow-up.

I did.

Michael Vick:
"The initial condition problem does infact occur in spice....and once i
corrected it , i saw oscillations immediately"

This is *not* a "kick start". It is setting an initial guess of the
solution. A "kick start" can only rationally be interpreted as
generating a pulse, as might be used for starting "linear" oscillators.

Kevin Aylward
[email protected]
http://www.anasoft.co.uk
SuperSpice, a very affordable Mixed-Mode
Windows Simulator with Schematic Capture,
Waveform Display, FFT's and Filter Design.
 
M

Mike Engelhardt

Head-Up-Ass-Kevin, the drunken Warden of the King's Ale said:
As I notated, there was implication made in this thread, that
astables require noise to start them.

Only you thought any body was saying that.
Apparently not.

Stupid, he posted his deck! The suggestion I made was a guess
on the type of astable based on the subject and original description.
Now that he posted his deck, the astable class you were stuck on
doesn't apply but want to defend a stupid postion by claiming others
were saying things they never did.
I did.

Michael Vick:

This is *not* a "kick start". It is setting an initial guess of the
solution. A "kick start" can only rationally be interpreted as
generating a pulse, as might be used for starting "linear" oscillators.

What utter nonsense and you probably even know it. The methods here are
basically the same. Think of the IC as starting the simulation
at the middle of the kick start.

You are a waste of time.
Hopefully one day Kevin will hear a loud pop -- or maybe just
a quiet squish -- and see daylight.

OK, possibly totally overly optimistic. Maybe there is no hope.

--Mike
 
J

Jim Thompson

Mike Engelhardt wrote: [snip]
A *wrong* assumption about the original poster's circuit. His
circuit did need a kick start.

Apparently not.
You might read his post and his
follow-up.

I did.

Michael Vick:
"The initial condition problem does infact occur in spice....and once i
corrected it , i saw oscillations immediately"

This is *not* a "kick start". It is setting an initial guess of the
solution. A "kick start" can only rationally be interpreted as
generating a pulse, as might be used for starting "linear" oscillators.

Kevin Aylward

Kevin, You're just stubborn as a stump. Setting a .IC that is
OFF-equilibrium is certainly equivalent to a "kick start".

You can start '"linear" oscillators' oscillators the same way... I do
it all the time in preference to "kick starts"... I don't like to
induce an artificial level in a circuit.

...Jim Thompson
 
J

Jens Tingleff

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Kevin Aylward wrote:

[....]
Michael Vick:
"The initial condition problem does infact occur in spice....and once i
corrected it , i saw oscillations immediately"

This is *not* a "kick start". It is setting an initial guess of the
solution. A "kick start" can only rationally be interpreted as
generating a pulse, as might be used for starting "linear" oscillators.

Well, linear oscillators can also be started by setting an initial
condition.

For an example of a linear circuit where an initial condition starts of a
time-varying voltage, consider the simple RC parallel circuit, where the
voltage across the two components is set to non-zero with a .IC command,
e.g.

===============

C1 1 0 1u
R1 1 0 1k

..IC V(1)=1

..end
===============

For a very simple linear oscillator, a .IC command can set up the
oscillation directly:

==============

C1 1 0 1u
L1 1 0 1m

..IC V(1)=1

..TR 1u 1

..option method=gear

..alter

..option method=trap

..end
===============

(For best effect, make sure that the simulator doesn't take too large steps
- - it will be tempted to do so.)

In the first run, using Gear method numerical integration, the oscillation
decays[1]. In the second, using trapezoidal numerical integration, it
maintains a constant amplitude.

As far as I know, the reason that this does much the same thing[2] as what I
think of as a "kick start" (e.g. a current pulse from zero to non-zero
current and back to zero onto node 1 in the netlists above) is that Spice
numerically solves partial differential equations assuming constant values
for all state variables (the node voltage in both netlists, inductor
current[3] in the second) *and* zero derivatives for time less than zero.
For time equal to zero and greater, the derivatives are determined by the
numerical algorithm[4]. Since the .IC voltage is not the actual quiescent
voltage (V(1)=0), the derivative for t >= 0 is non-zero and V(1) changes. A
step on the derivative should be quite enough of a kick to start most
linear oscillators ;-) ;-)

Best Regards

Jens

[1] Yes, i used to be able to show why this is so, and why this should be
so; these days, I just look in the manual :-(

[2] Obviously, kick-start sources are more flexible. They are just not
necessarily better at starting oscillators.

[3] or transformed state variable if currents cannot be state variables

[4] An other approach is to find a linear approximation to the circuit, find
the eigenvalues of this linear circuit, establish the time domain solution
exactly from the known initial conditions and the known sources and then
simply calculate values of the time-domain solution. Since this is first of
all useless with non-linear circuits *and* secondly grows in numerical
complexity much more rapidly with growing circuit size than Spice-like
simulators, this was abandoned as soon as Spice appeared. It still means
that the error on the first calculated cycle is the same as the error on
any other calculated cycle, unlike the step-by-step solvers used by
Spice-like simulators.
- --
Key ID 0x09723C12, [email protected]/[email protected]
Analogue filtering / 5GHz RLAN / Mdk Linux / odds and ends
http://www.imaginet.fr/~jensting/ +44 1223 211 585
"Howdy, stranger.." "Stranger than WHAT?" 'Texarkana'
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)

iD8DBQE/oWifimJs3AlyPBIRAu38AKCSxkepuoR08MM1UzquMCiSJKOqIQCfamZz
JZyUX8SeVPxcQAFh6xJ9msg=
=G/xr
-----END PGP SIGNATURE-----
 
J

Jim Thompson

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Kevin Aylward wrote:

[....]
Michael Vick:
"The initial condition problem does infact occur in spice....and once i
corrected it , i saw oscillations immediately"

This is *not* a "kick start". It is setting an initial guess of the
solution. A "kick start" can only rationally be interpreted as
generating a pulse, as might be used for starting "linear" oscillators.

Well, linear oscillators can also be started by setting an initial
condition.

For an example of a linear circuit where an initial condition starts of a
time-varying voltage, consider the simple RC parallel circuit, where the
voltage across the two components is set to non-zero with a .IC command,
e.g.

===============

C1 1 0 1u
R1 1 0 1k

.IC V(1)=1

.end
===============

For a very simple linear oscillator, a .IC command can set up the
oscillation directly:

==============

C1 1 0 1u
L1 1 0 1m

.IC V(1)=1

.TR 1u 1

.option method=gear

.alter

.option method=trap

.end
===============

(For best effect, make sure that the simulator doesn't take too large steps
- - it will be tempted to do so.)

In the first run, using Gear method numerical integration, the oscillation
decays[1]. In the second, using trapezoidal numerical integration, it
maintains a constant amplitude.

As far as I know, the reason that this does much the same thing[2] as what I
think of as a "kick start" (e.g. a current pulse from zero to non-zero
current and back to zero onto node 1 in the netlists above) is that Spice
numerically solves partial differential equations assuming constant values
for all state variables (the node voltage in both netlists, inductor
current[3] in the second) *and* zero derivatives for time less than zero.
For time equal to zero and greater, the derivatives are determined by the
numerical algorithm[4]. Since the .IC voltage is not the actual quiescent
voltage (V(1)=0), the derivative for t >= 0 is non-zero and V(1) changes. A
step on the derivative should be quite enough of a kick to start most
linear oscillators ;-) ;-)

Best Regards

Jens

[1] Yes, i used to be able to show why this is so, and why this should be
so; these days, I just look in the manual :-(

[2] Obviously, kick-start sources are more flexible. They are just not
necessarily better at starting oscillators.

[3] or transformed state variable if currents cannot be state variables

[4] An other approach is to find a linear approximation to the circuit, find
the eigenvalues of this linear circuit, establish the time domain solution
exactly from the known initial conditions and the known sources and then
simply calculate values of the time-domain solution. Since this is first of
all useless with non-linear circuits *and* secondly grows in numerical
complexity much more rapidly with growing circuit size than Spice-like
simulators, this was abandoned as soon as Spice appeared. It still means
that the error on the first calculated cycle is the same as the error on
any other calculated cycle, unlike the step-by-step solvers used by
Spice-like simulators.

Jens, You are late to the debate. The OP indeed used a .IC statement
upon my recommendation.

...Jim Thompson
 
Top