In [4]:

```
from __future__ import division
w = 10 # width of cut in cm
h = 0.32 # depth of cut in cm
n = 8 # number of teeth in cutter
ft = 0.033 # feed rate per tooth
N = 200 # cutter speed in rpm
ita = 60/100 # efficiency
f = n*ft*N # feed rate in cm/min.
mrr = w*h*f # metal removal rate in cm**3/min.
k = 8.2 # machinibility factor from table 15.3
hpc = mrr/k # horsepower at cutter
hpm = hpc/ita # horsepower at motor
print " Horsepower at cutter = %0.2f\n Horsepower at motor = %0.2f"%(hpc , hpm)
# 'Answers vary due to round off error'
```

In [5]:

```
from math import pi, sqrt
l = 300 # length in mm
w = 100 # width in mm
f = 0.25 # feed in mm/tooth
d = 3.2 # depth of cut in mm
D = 50 # cutter diameter in mm
n = 20 # number of cutter teeth
N = 100 # cutter speed in rev./min.
tf = f*n*N # table feed in mm/min.
mrr = w*d*tf # metal removal rate in mm**3/min.
mrr = mrr/60 # mm**3/s
p = 6*mrr # cutting power from table 14.2 in watts
omega = 2*pi*N/60 # rpm
T = p/omega # torque in N.m
att = sqrt((D*d)-(d**2)) # added table travel in mm
t = (l+att)/tf # cutting time in min.
t = t*60 # s
print " MRR = %0.2f mm**3/s\n Cutting power = %d watts\n Torque = %0.2f N.m\n Cutting time = %0.1fs"%(mrr,p,T,t)
```

In [6]:

```
from math import pi, sqrt
l = 35 # length of bore in mm
v = 0.15 # cutting speed in m/s
t1 = 0.01 # upper limit in mm
t2 = 0.05 # upper limit in mm
D = 32.25 # finished broach in mm
D1 = 32.25+t2 # mm
d = 32.75 # finish diameter in mm
d1 = 32.75 + t1 #finish diameter of hole in mm
s = 0.05 # mm
B = 1.30 # blunt broach factor
c = 45 # specific cutting force in N/mm**2
n = 3 # number of teeth cutting at a time
F = n*pi*d1*s*c*B # force needed for broaching in N
bp = F*v/1000 # Broaching power in kw
# broach design
p = 1.75*sqrt(l) # pitch in mm
theta = 10 # face angle in degree
alha1 = 1.5 # relief angle for roughing in degree
alha2 = 1.0 # relief angle for finishing in degree
w = 0.3*p # width of land in mm
h = 0.4*p # depth of cutting teeth in mm
r = 0.3*p # tooth fillet radius in mm
T = (d1-D1)/2 # mm
n = T/s # number of cutting teeth
n = round(n)
l = (n+7)*p #length of toothed portion of broach in mm
print "(i)Broaching power = %0.4f kW"%bp
print "(ii) Broach Design"
print "(a) Pitch diameter = %0.2fmm\n (b) width of land = %0.2f mm \n depth of cutting teeth = %0.2f mm\n Tooth fillet radius= %0.2f mm"%(p,w,h,r)
print "(c) Length of toothed portion of broach = %d mm"%(l)
# 'Answers vary due to round off error'
```

In [7]:

```
from math import pi
Hb = 200 # brinell hardness
d = 12.7 # diameter in mm
f = 0.254 # feed in mm/rev.
N = 100 # rpm
M = (Hb*(d)**2*f)/8 #moment in kgf-mm
k = 1.1 #material factor
p = (1.25*(d)**2*k*N*(0.056+1.5*f))/(10)**5 # power in kW
T1a = (1.7*M)/d # thrust force kgf
T1b = (3.5*M)/d # kgf
T1 = (T1a+T1b)/2 # average
w = 0.14*d # thickness in mm
T2a = (0.1*pi*(w)**2*Hb)/4 # thrust force kgf
T2b = (0.2*pi*(w)**2*Hb)/4 # thrust force kgf
T2 = (T2a+T2b)/2 # average
avg = T1+T2 # kgf
thrust = 1.16*k*d*(100*f)**0.85 # kgf
print " Moment = %0.1f kgf-mm\n Power = %0.3f hp\n Average force = %d kgf\n Thrust force = %0.1f kgf"%(M, p ,avg , thrust)
# Error in textbook
```

In [8]:

```
from math import ceil, sqrt
d = 55 # diameter in mm
ul = 0.035 # upper limit in mm
ll = 0.000 # lower limit in mm
Dmax = d+ul # maximum diameter of hole in mm
Dmin = d+ll # minimum diameter of hole in mm
IT = 0.035 # hole tolerence in mm
dmax = Dmax-0.15*IT # maximum diameter of reamer in mm
dmin = dmax-0.35*IT # minimum diameter of reamer in mm
l = ((d/4)+(d/3))/2 # length of guiding section in mm
Z = 1.5*sqrt(d)+2 # number of teeth
Z = ceil(Z)
print "1 Diameter of reamer \n Maximum diameter of reamer = %0.3f mm \n Minimum diameter of reamer = %0.3f mm \n 2 Back taper = 0.05 mm \n 3 Values of various angles \n Rake angle = 5 degree \n Plan approach angle = 45 degree \n Circular land = 0.25 to 0.50 mm \n Secondary clearance angle = 10 degree \n 4 Length of reamer \n Length of fluted portion = 82.5 mm \n Length of reaming allowance = 0.18 mm \n Length of cutting section = 2.25 mm \n Length of guiding section = %d mm \n 5 Number of teeth = %d"%(dmax,dmin,l,Z)
# Answer vary due to round off error
```

In [9]:

```
from __future__ import division
from math import sqrt
Pm = 10 # power of motor in kw
v = 40 # cutting speed in m/min.
ita = 70 # efficiency
ita = ita/100
Pc = Pm*ita
Fc = (Pc*1000*60)/v # cutting force
sigmab = 250 # stress in Mpa
B = sqrt((Fc*1.25*6)/(sigmab*1.6)) # width of shank in mm
h = 1.6*B # hieght of shank in mm
l = 1.25*h # shank overang in mm
print " The width of shank = %0.1f mm\n Height of shank = %0.2f mm\n Shank overhang = %0.1f mm"%(B,h,l)
# 'Answers vary due to round off error'
```

In [10]:

```
from math import pi, sqrt
l = 150 # length in mm
D = 12.70 # diameter in mm
dia = 12.19 # diameter on centre lathe in mm
N = 400 # spindle speed in rev./min
s = 203.20 # axial speed in mm/min.*####
v = (pi*D*N)/(1000*60) # cutting velocity in m/s
d = (D-dia)/2 # depth of cut in mm
f = s/N # feed in mm/rev.
Dave = (D+dia)/2 # average diameter in mm
V = pi*Dave*N
a = d*f # area of cut in mm**2
mrr = a*V # metal removal rate in mm**3/min.
T = l/(f*N) # machine timing in min.
c = 56 # constant from table
p = d*f*v*60*c # power in watts
omega = (2*pi*N)/60 # rpm
t = p/omega # torque in Nm
Fc = (2*t*1000)/Dave # cutting force in N
print " Cutting speed = %0.2f m/s\n MRR = %d mm**3/min.\n Time to cut = %0.2f min.\n Power = %0.1f watts\n Cutting force = %d N"%(v , mrr , T ,p ,Fc)
# Answers are given wrong in book
```

In [11]:

```
from math import pi, sqrt
f = 0.2 # feed in mm/rev.
N = 800 # spindle speed in rev./min.
d = 10 # doameter of hole in mm
mrr = pi*(d**2)*f*N/4 # metal removal rate in mm**3/min.
mrr = mrr/60 # mm**3/s
p = 0.5*mrr # cutting power from table 14.2 in watts
omega = 2*pi*N/60 # rpm
T = p/omega # torque in N.m
print " MRR = %0.2f mm**3/s\n Cutting power = %0.3f watts\n Torque = %0.2f N.m"%(mrr,p,T
)
```