리드스크류를 돌리는 모터에 필요한 토크를 계산하는 SageMath 스크립트
위 그림과 같은 경우를 상정한 것이다.
모터가 받는 부하는
(1)스크류 자체에서 발생하는 손실에 의한 것
(2) 질량체가 바닥면과 마찰할 때 발생하는 손실에 의한 것
(3) 인위적으로 축 방향으로 외력을 주는 것
이상 3가지 경우가 고려되어 있다.
마찰계수 등을 조절하면서
변화 양상을 한 눈에 파악하기 위해 작성된 스크립트이다.
이곳에도 올려 두었다.
#########################################
# How much Lead Screw Torque V04 (English)
# 20150415 DH,Kim
# dymaxion.kim@gmail.com
#########################################
html('<center> <img src="http://ed.co.kr/images/ci.gif"> <br>')
html('<center> <font size=2> <b>20150415 by DH,Kim</b> </font> <br>')
html('<center> <font size=5> <b>How much Lead Screw Torque? V04 (English)</b> </font> <br><br>')
@interact
def GearParameter(
Fi = slider(0,50,0.1,10.0,'Axial Force on Screw Nut [kgf]'),
us = slider(0,0.5,0.01,0.1,'Friction Factor on Screw Nut'),
W = slider(0,10,0.01,0.1,'Mass on Screw [kgf]'),
uw = slider(0,0.5,0.01,0.1,'Friction Factor between Mass and Ground'),
D = slider(0.1,10,0.1,3.5,'Pitch Diameter of Screw [mm]'),
P = slider(0.1,5,0.1,0.7,'Pitch of Screw [mm]')
):
### Physical Constant
g = 9806.65 # Gravity Acceleration [mm/s^2]
### Axial Force
F = 50 # Max Axial Force on Screw Nut in [kgf]
F_total = F + uw*W # Total Axial Force [kgf]
Fi_total = Fi + uw*W # Total Axial Force [kgf]
### Screw (ref : http://www.engineersedge.com/hardware/metric-external-thread-sizes1.htm )
R = D*pi # Lead of Screw [mm]
alpha = atan(P/R) # Lead Angle of Screw [Rad]
nu = (1-us*tan(alpha))/(1+us/tan(alpha)) # Efficiency of Screw
### Torque in [kgf.cm]
T = F_total*R/(2*pi*nu) # Torque in [kgf.mm]
T = T*0.1 # Torque in [kgf.cm]
Ti = Fi_total*R/(2*pi*nu) # Torque in [kgf.mm]
Ti = Ti*0.1 # Torque in [kgf.cm]
t = var('t')
DATA = parametric_plot( (t/1000,(0.1*(t+uw*W)*R/(2*pi*nu))/1000), (t,0,int(F_total)*1000), axes_labels=['Total Axial Force\n$[kgf]$','Screw Torque\n$[kgf.cm]$'])
DATA += line([(Fi_total,0), (Fi_total,Ti)], color='red')
DATA += line([(0,Ti), (Fi_total,Ti)], color='red')
DATA += point((Fi_total,Ti), color='green', size=100)
Ti = float(Ti)
html(r'<center>$Given\ Total\ Axial\ Force = %s [kgf]$<br>'%latex(Fi_total))
html(r'<center>$Required\ Screw\ Torque = %s [kgf.cm]$'%latex(Ti))
show(DATA, figsize=7, aspect_ratio='automatic', gridlines='automatic')
댓글 없음:
댓글 쓰기