Forums

SPICE model for brushed DC motor -- some questions

Started by Unknown December 1, 2012
Could some electronics guru please shed 
some light on this ? I created a SPICE 
model for a simple brushed DC motor. It 
is complete as it includes the models 
for torque and inertia. When excited with 
a SPICE pulse or piece-wise linear model,
the armature current, when plotted shows 
the upward and downward spikes, of the 
correct amplitude, as expected. Now when 
I replace the SPICE pulse or piece-wise 
linear sources with a DC source and a power 
MOSFET that is pulsed (switched-on/off) 
with at the same frequency as for the
pure SPICE case, the armature current 
looks very different. Namely, there are 
no downward going spikes, and the
amplitude of the positive spikes is smaller 
than when the excitation is made with 
the SPICE pulse or piece-wise linear. I 
have used a SPICE 'switch' but that has 
not helped either. I use HSpice or NgSpice 
alternatively, and the results are consistent. 
Any hints/suggestions would be of immense 
help. Thanks in advance.
     
On Nov 30, 9:43=A0pm, dakup...@gmail.com wrote:
> Could some electronics guru please shed > some light on this ? I created a SPICE > model for a simple brushed DC motor. It > is complete as it includes the models > for torque and inertia. When excited with > a SPICE pulse or piece-wise linear model, > the armature current, when plotted shows > the upward and downward spikes, of the > correct amplitude, as expected. Now when > I replace the SPICE pulse or piece-wise > linear sources with a DC source and a power > MOSFET that is pulsed (switched-on/off) > with at the same frequency as for the > pure SPICE case, the armature current > looks very different. Namely, there are > no downward going spikes, and the > amplitude of the positive spikes is smaller > than when the excitation is made with > the SPICE pulse or piece-wise linear. I > have used a SPICE 'switch' but that has > not helped either. I use HSpice or NgSpice > alternatively, and the results are consistent. > Any hints/suggestions would be of immense > help. Thanks in advance.
help to post your model.
On Fri, 30 Nov 2012 20:43:43 -0800, dakupoto wrote:

> Could some electronics guru please shed some light on this ? I created a > SPICE model for a simple brushed DC motor. It is complete as it includes > the models for torque and inertia. When excited with a SPICE pulse or > piece-wise linear model, > the armature current, when plotted shows the upward and downward spikes, > of the correct amplitude, as expected. Now when I replace the SPICE > pulse or piece-wise linear sources with a DC source and a power MOSFET > that is pulsed (switched-on/off) > with at the same frequency as for the pure SPICE case, the armature > current looks very different. Namely, there are no downward going > spikes, and the amplitude of the positive spikes is smaller than when > the excitation is made with the SPICE pulse or piece-wise linear. I have > used a SPICE 'switch' but that has not helped either. I use HSpice or > NgSpice alternatively, and the results are consistent. > Any hints/suggestions would be of immense help. Thanks in advance.
The pulse generator always has a zero impedance: it holds its voltage regardless of current. When you use a switch or MOSFET, the impedance is low (but not zero) when the MOSFET is on, and infinite when the MOSFET is off. The LTSpice switch model also works by changing its impedance. It may be educational to look at the voltage across your motor as you switch the MOSFET on or off. -- Tim Wescott Control system and signal processing consulting www.wescottdesign.com
On Saturday, December 1, 2012 9:17:20 PM UTC-5, Tim Wescott wrote:
> On Fri, 30 Nov 2012 20:43:43 -0800, dakupoto wrote: > > > > > Could some electronics guru please shed some light on this ? I created a > > > SPICE model for a simple brushed DC motor. It is complete as it includes > > > the models for torque and inertia. When excited with a SPICE pulse or > > > piece-wise linear model, > > > the armature current, when plotted shows the upward and downward spikes, > > > of the correct amplitude, as expected. Now when I replace the SPICE > > > pulse or piece-wise linear sources with a DC source and a power MOSFET > > > that is pulsed (switched-on/off) > > > with at the same frequency as for the pure SPICE case, the armature > > > current looks very different. Namely, there are no downward going > > > spikes, and the amplitude of the positive spikes is smaller than when > > > the excitation is made with the SPICE pulse or piece-wise linear. I have > > > used a SPICE 'switch' but that has not helped either. I use HSpice or > > > NgSpice alternatively, and the results are consistent. > > > Any hints/suggestions would be of immense help. Thanks in advance. > > > > The pulse generator always has a zero impedance: it holds its voltage > > regardless of current. > > > > When you use a switch or MOSFET, the impedance is low (but not zero) when > > the MOSFET is on, and infinite when the MOSFET is off. The LTSpice > > switch model also works by changing its impedance. > > > > It may be educational to look at the voltage across your motor as you > > switch the MOSFET on or off. > > > > -- > > Tim Wescott > > Control system and signal processing consulting > > www.wescottdesign.com
I had already checked the voltage at the output node of the MOSFET/switch -- that is, the input node of the motor, and it is much lower than the case when the motor is excited with SPICE PULSE or PWL. So, clearly the impedance is driving the voltage down.
On Saturday, December 1, 2012 9:07:47 AM UTC-5, Robert Macy wrote:
> On Nov 30, 9:43=A0pm, dakup...@gmail.com wrote: >=20 > > Could some electronics guru please shed >=20 > > some light on this ? I created a SPICE >=20 > > model for a simple brushed DC motor. It >=20 > > is complete as it includes the models >=20 > > for torque and inertia. When excited with >=20 > > a SPICE pulse or piece-wise linear model, >=20 > > the armature current, when plotted shows >=20 > > the upward and downward spikes, of the >=20 > > correct amplitude, as expected. Now when >=20 > > I replace the SPICE pulse or piece-wise >=20 > > linear sources with a DC source and a power >=20 > > MOSFET that is pulsed (switched-on/off) >=20 > > with at the same frequency as for the >=20 > > pure SPICE case, the armature current >=20 > > looks very different. Namely, there are >=20 > > no downward going spikes, and the >=20 > > amplitude of the positive spikes is smaller >=20 > > than when the excitation is made with >=20 > > the SPICE pulse or piece-wise linear. I >=20 > > have used a SPICE 'switch' but that has >=20 > > not helped either. I use HSpice or NgSpice >=20 > > alternatively, and the results are consistent. >=20 > > Any hints/suggestions would be of immense >=20 > > help. Thanks in advance. >=20 >=20 >=20 > help to post your model.
The following is the bare-bones brushed DC motor with=20 a piece-wise linear excitation. I use HSpice/NGSpice.=20 *SIMPLE BRUSHED DC MOTOR=20 V_AMP 1 0 DC 0.0 AC 1 PWL(0MS 0V 5MS 5V 10MS 10V 1000MS 10V 1010MS 5V 102= 0MS 0V 1050MS 0V 1060MS 5V 1070MS 10V 2000MS 10V 2010MS 5V 2020MS 0V 2050MS= 0V 2060MS 5V 2070MS 10V 3050MS 10V 3060MS 5V 3070MS 0V) * MOTOR VOLTAGE RA 1 2 0.5 LA 2 3 0.0015 H_EMF 3 4 VSENSE2 0.05 VSENSE1 4 0 DC 0V * MOTOR TORQUE BASED ON INERTIA AND FRICTION H_TORQ 6 0 VSENSE1 0.05 LJ 6 7 0.00025 RB 7 8 0.0001 VSENSE2 8 0 DC 0V * MOTOR POSITION FPOS 0 11 VSENSE2 1 CPOS 11 0 1 RPOS 11 0 1MEG * ANALYSIS .OPTIONS NOPAGE METHOD=3DGEAR .IC V(2)=3D0.0 V(3)=3D0.0 V(4)=3D0.0 V(6)=3D0.0 V(7)=3D0.0 V(8)=3D0.0 V(11)= =3D0.0 .PROBE V(*) =20 .TRAN 100ms 3100ms 50ms UIC .PRINT TRAN V(1,4) I(VSENSE1) I(VSENSE2) .END
On Mon, 03 Dec 2012 19:10:14 -0800, dakupoto wrote:

> On Saturday, December 1, 2012 9:07:47 AM UTC-5, Robert Macy wrote: >> On Nov 30, 9:43 pm, dakup...@gmail.com wrote: >> >> > Could some electronics guru please shed >> >> > some light on this ? I created a SPICE >> >> > model for a simple brushed DC motor. It >> >> > is complete as it includes the models >> >> > for torque and inertia. When excited with >> >> > a SPICE pulse or piece-wise linear model, >> >> > the armature current, when plotted shows >> >> > the upward and downward spikes, of the >> >> > correct amplitude, as expected. Now when >> >> > I replace the SPICE pulse or piece-wise >> >> > linear sources with a DC source and a power >> >> > MOSFET that is pulsed (switched-on/off) >> >> > with at the same frequency as for the >> >> > pure SPICE case, the armature current >> >> > looks very different. Namely, there are >> >> > no downward going spikes, and the >> >> > amplitude of the positive spikes is smaller >> >> > than when the excitation is made with >> >> > the SPICE pulse or piece-wise linear. I >> >> > have used a SPICE 'switch' but that has >> >> > not helped either. I use HSpice or NgSpice >> >> > alternatively, and the results are consistent. >> >> > Any hints/suggestions would be of immense >> >> > help. Thanks in advance. >> >> >> >> help to post your model. > The following is the bare-bones brushed DC motor with a piece-wise > linear excitation. I use HSpice/NGSpice. > > *SIMPLE BRUSHED DC MOTOR > > V_AMP 1 0 DC 0.0 AC 1 PWL(0MS 0V 5MS 5V 10MS 10V 1000MS 10V 1010MS 5V > 1020MS 0V 1050MS 0V 1060MS 5V 1070MS 10V 2000MS 10V 2010MS 5V 2020MS 0V > 2050MS 0V 2060MS 5V 2070MS 10V 3050MS 10V 3060MS 5V 3070MS 0V) > > * MOTOR VOLTAGE RA 1 2 0.5 LA 2 3 0.0015 H_EMF 3 4 VSENSE2 0.05 VSENSE1 > 4 0 DC 0V > > * MOTOR TORQUE BASED ON INERTIA AND FRICTION H_TORQ 6 0 VSENSE1 0.05 LJ > 6 7 0.00025 RB 7 8 0.0001 VSENSE2 8 0 DC 0V > > * MOTOR POSITION FPOS 0 11 VSENSE2 1 CPOS 11 0 1 RPOS 11 0 1MEG > > > * ANALYSIS .OPTIONS NOPAGE METHOD=GEAR .IC V(2)=0.0 V(3)=0.0 V(4)=0.0 > V(6)=0.0 V(7)=0.0 V(8)=0.0 V(11)=0.0 .PROBE V(*) > .TRAN 100ms 3100ms 50ms UIC .PRINT TRAN V(1,4) I(VSENSE1) I(VSENSE2) > .END
Without thinking hard about whether the actual values are correct, the topology of your model looks good. -- Tim Wescott Control system and signal processing consulting www.wescottdesign.com