Chapter 8: Electric Traction Motors

Example 8.1, Page 237

In [2]:
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline

#Variable declaration
v=230;#in volts
rm=0.3;#in ohms
Ia=np.array([5,10,15,20,25,30,35,40]);#in amperes
T=[20,50,100,155,215,290,360,430];#
N = []
#Calculations&Results
for i in range(0,8):
    eb= v-(Ia[i])*rm;#
    N.append((9.55*eb*Ia[i])/(T[i]));#
    print "speed in rpm is for current ",(Ia[i]),"  amperes ",(round(N[i]))," RPM"
    
plt.plot(Ia,N)
plt.xlabel("ARMATURE CURRENT ,Ia IN AMPS")
plt.ylabel("SPEED ,N IN RPM")
plt.title("Speed-Armature current characteristic")
speed in rpm is for current  5   amperes  546.0  RPM
speed in rpm is for current  10   amperes  434.0  RPM
speed in rpm is for current  15   amperes  323.0  RPM
speed in rpm is for current  20   amperes  276.0  RPM
speed in rpm is for current  25   amperes  247.0  RPM
speed in rpm is for current  30   amperes  218.0  RPM
speed in rpm is for current  35   amperes  204.0  RPM
speed in rpm is for current  40   amperes  194.0  RPM
Out[2]:
<matplotlib.text.Text at 0xb14178ac>

Example 8.2, Page 238

In [3]:
import matplotlib.pyplot as plt
%matplotlib inline

#Variable declaration
v=600;#in volts
rm=0.8;#in ohms
N1=600.;#
Ia=[20,40,60,80];#in amperes
EMF=[215,381,485,550]
T = []
N =[]
eb =[]
#Calculations&Results
for i in range(0,4):
    eb.append(v-(Ia[i])*rm);#
    N.append((N1/EMF[i])*eb[i]);#
    T.append((9.55*eb[i]*Ia[i])/(N[i]));#
    print "for current ",(Ia[i])," amperes, speed is",(round(N[i]))," RPM and Torque in N-m is ",round((T[i]),1)
plt.plot(T,N)
plt.xlabel("TORQUE ,T IN Nm")
plt.ylabel("SPEED ,N IN RPM")
plt.title("Speed-torque curve")
#answers differ due to rounding-off errors
for current  20  amperes, speed is 1630.0  RPM and Torque in N-m is  68.4
for current  40  amperes, speed is 894.0  RPM and Torque in N-m is  242.6
for current  60  amperes, speed is 683.0  RPM and Torque in N-m is  463.2
for current  80  amperes, speed is 585.0  RPM and Torque in N-m is  700.3
Out[3]:
<matplotlib.text.Text at 0xb14fb38c>

Example 8.3, Page 239

In [91]:
import math

#Variable declaration
N1=640;# in rpm
I1=15;# in A

#Calculations
I2=math.sqrt((2)*math.sqrt(2)*I1**2);
N2=round((2*I1*N1)/I2);

#Results
print "Current drawn,I2(A) = %.3f"%I2
print "Motor speed,N2(rpm) = %.f"%N2
Current drawn,I2(A) = 25.227
Motor speed,N2(rpm) = 761

Example 8.4, Page 243

In [92]:
#Variable declaration
n1=700;#rpm
n2=750;#rpm
rm=0.3;#in ohms
v=500;#in volts
ib=50;#amperes

#Calculations
eb1=v-(ib*rm);#in volts
eb2=eb1;#
N=((v-(2*(ib*rm)))/((eb1/n1)+(eb2/n2)));#
pdv1=((eb1/n1)*N)+ib*rm;#in volts
pdv2=((eb1/n2)*N)+ib*rm;#in volts

#Results
print "speed in rpm is %.f"%N
print "PD across machine 1 in volts is %.f"%pdv1
print "PD across machine 2 in volts is %.f"%pdv2
speed in rpm is 351
PD across machine 1 in volts is 258
PD across machine 2 in volts is 242

Example 8.5, Page 243

In [93]:
import math

#Variable declaration
V=500;# in volts
Vm=40;# in kmph
Ft=1800;# in N
Rm=0.4;# in ohm
Lm=3200;# losses per motor in watt

#Calculations&Results
Mo=(Ft*Vm*1000)/3600;
Cl=3200;# consatant losses in watt
# formuls: Mi=Po+Cl+C_losses
#C_losses=I^2*Rm
#Mi=V*I
#I1=(V+sqrt(V^2-(4*Rm*(Mo+Cl))))/(2*Rm);leaving as gives a very high value
I1=(V-math.sqrt(V**2-4*Rm*(Mo+Cl)))/(2*Rm);
print "Current drawn by each motor,(A) = %.2f"%I1
It=I1*2;
print "Total current drawn,(A) = %.1f"%It
Current drawn by each motor,(A) = 48.26
Total current drawn,(A) = 96.5

Example 8.6, Page 244

In [97]:
import math

#Variable declaration
Ft=35300.;# in N
V=48.;# in kmph

#Calculations&Results
Po=((Ft*V*1000.)/3600)*10**-3;
Ft1=55180.;#in N
Pd=Po*math.sqrt(Ft1/Ft);
print "part (a)"
print "power delivered(kW) = %.1f"%Pd
Pd1=Po*(Ft1/Ft);
print "part (b)"
print "power delivered(kW) = %.1f"%Pd1
part (a)
power delivered(kW) = 588.5
part (b)
power delivered(kW) = 735.7

Example 8.7, Page 244

In [98]:
#Variable declaration
Ia=[60,120,180,240,300,360];# in amperes
sp1=[80,50,45,42,38,35];#in kmph
tf1=[1.7,5,10,14,16,20];#innewtons
d1=0.85;#in meters
d2=0.9;#in meters
y1=71./21;#
y2=74./19;#

#Calculations&Results
for i in range(0,6):
    V=((d2/d1)*(y1/y2))*sp1[i];#in kmph
    tf2=((d1/d2)*(y2/y1))*(tf1[i]);#in newtons
    print "for armature current",(Ia[i]),"amperes , speed is ",(V)," kmph and tractive effor in thousand newtons is ",round((tf2),2)
for armature current 60 amperes , speed is  73.5316829434  kmph and tractive effor in thousand newtons is  1.85
for armature current 120 amperes , speed is  45.9573018397  kmph and tractive effor in thousand newtons is  5.44
for armature current 180 amperes , speed is  41.3615716557  kmph and tractive effor in thousand newtons is  10.88
for armature current 240 amperes , speed is  38.6041335453  kmph and tractive effor in thousand newtons is  15.23
for armature current 300 amperes , speed is  34.9275493981  kmph and tractive effor in thousand newtons is  17.41
for armature current 360 amperes , speed is  32.1701112878  kmph and tractive effor in thousand newtons is  21.76

Example 8.8, Page 245

In [83]:
import numpy as np

#Variable declaration
n1=500;#in rpm
d1=90;#in cm
d2=86;#in cm
v=600;#in. volts
vd=0.1;#drop

#Calculations
eb1=v-(vd*v);#in volts
A = np.array([[90,-86],[1,1]])
B = np.array([240,600])
Eb1 = np.linalg.solve(A, B)
N1=n1*(Eb1[0]-(vd*v))/(v-(vd*v));#
N2=N1*(d1/d2);#

#Results
print "speed in rpm is %.f"%N1
print "speed in rpm is %.f"%N2
#N2 is calculated wrong in the book'''
speed in rpm is 217
speed in rpm is 217

Example 8.9, Page 245

In [99]:
#Variable declaration
ia=350;#A
ib=305;#A
v=600;#V

#Calculations&Results
pa=(v*ia)/1000;#kW
pb=(v*ib)/1000;#kW
print "(i) When motors are connected in parallel and train speed is 40kmph"
print "power input to motor A is,(kW)= %.f"%pa
print "power input to motor B is,(kW)= %.f"%pb
fta=1625;#kg
ftb=1480;#kg
print "tractive effor of motor A is,(kg)= %.f"%fta
print "tractive effor of motor B is,(kg)= %.f"%ftb
print "(ii) When motors are connected in series and current is 400A"
rm=0.08;#ohm
i=400;#A
eba=v-(i*rm);#V
abb=eba;#V
va=38.5;#V
vb=36.7;#V
vx=((v-2*(i*rm))*((va*vb)/(va+vb)))/eba;#
Va=((eba/va)*vx)+(i*rm);#V
Vb=((eba/vb)*vx)+(i*rm);#V
pa1=(Va*i)/1000;#kW
pb1=(Vb*i)/1000;#kW
print "power input to motor A is,(kW)= %.1f"%pa1
print "power input to motor B is,(kW)= %.1f"%pb1
fta1=1960;#kg
ftb1=2060;#kg
print "tractive effor of motor A is,(kg)= %.f"%fta1
print "tractive effor of motor B is,(kg)= %.f"%ftb1
(i) When motors are connected in parallel and train speed is 40kmph
power input to motor A is,(kW)= 210
power input to motor B is,(kW)= 183
tractive effor of motor A is,(kg)= 1625
tractive effor of motor B is,(kg)= 1480
(ii) When motors are connected in series and current is 400A
power input to motor A is,(kW)= 117.4
power input to motor B is,(kW)= 122.6
tractive effor of motor A is,(kg)= 1960
tractive effor of motor B is,(kg)= 2060

Example 8.10, Page 254

In [100]:
#Variable declaration
f=50;#hz
t=0.5;#in meter
s=0.25;#

#Calculations
vs=2*f*t*(3600./1000);#kmph
vc=vs*(1-s);#kmph

#Results
print "linear synchronous velocity in kmph is %.f"%vs
print "vehicle speed in kmph is %.f"%vc
linear synchronous velocity in kmph is 180
vehicle speed in kmph is 135