Diseño de una Leva plana de seguidor radial
Enviado por Jillian • 11 de Enero de 2019 • 1.162 Palabras (5 Páginas) • 308 Visitas
...
w=n*2*np.pi/60 ydot2=75 yp2=1.5717 L2=0.85
beta2=L2/yp2 t5=0.1
beta5=w*t5 k1=0.5*L2/beta2 k3=(2/np.pi)*L2/beta2;
L4=3
k34=k3/(L4*4) a=(1-(k3/k1))*k34; b=1;
c=-2*np.pi+beta2+beta5+(L4-L2)/k1
beta4=(-b+np.sqrt(b**2-4*a*c))/(2*a)
---------------------------------------------------------------
beta3=k34*beta4**2
beta1=((L4-L2)/k1)-k3*beta3/k1 L1=k1*beta1
L3=k3*beta3 theta1=np.arange(0,beta1,0.01) theta2=np.arange(beta1,beta1+beta2,0.01)
theta3=np.arange(beta1+beta2,beta1+beta2+beta3,0.01) theta4=np.arange(beta1+beta2+beta3,beta1+beta2+beta3+beta4,0.01) theta5=np.arange(beta1+beta2+beta3+beta4,beta1+beta2+beta3+beta4+beta5,0.01) theta=np.concatenate([theta1,theta2,theta3,theta4,theta5])
## Desplazamientos verticales
y1=L1*(theta1/beta1-(1/np.pi)*np.sin(np.pi*theta1/beta1)) y2=(L2/beta2)*(theta2-beta1)+L1 y3=L3*np.sin(0.5*np.pi*(theta3-beta1-beta2)/beta3)+L1+L2
y4=0.5*L4*(1+np.cos(np.pi*(theta4-beta1-beta2-beta3)/beta4)-0.25*( 1-np.cos(2*np.pi*(theta4-beta1-beta2-beta3)/beta4)))
y5=0*theta5 ytotal=np.concatenate([y1,y2,y3,y4,y5]) ## Velocidades verticales
v1=L1*(1/beta1-(1/beta1)*np.cos(np.pi*theta1/beta1)) # seccion 1 v2=(L2/beta2)*np.ones(np.shape(y2)) # seccion 2 v3=(0.5*np.pi*L3/beta3)*np.cos(0.5*np.pi*(theta3-beta1-beta2)/beta3) # seccion 3
v4=0.5*L4*(-(np.pi/beta4)*np.sin(np.pi*(theta4-beta1-beta2-beta3)/beta4)- 0.25*((2*np.pi/beta4)*np.sin(2*np.pi*(theta4-beta1-beta2-beta3)/beta4))) # seccion 4
---------------------------------------------------------------
v5=0*theta5 # seccion 5 vtotal=np.concatenate([v1,v2,v3,v4,v5]) # Total ## aceleraciones verticales
ac1=L1*((np.pi/(beta1**2))*np.sin(np.pi*theta1/beta1)) # seccion 1 ac2=0*np.ones(np.shape(y2)) # seccion 2
ac3=-(0.25*np.pi*np.pi*L3/(beta3**2))*np.sin(0.5*np.pi*(theta3-beta1-beta2)/beta3) #seccion 3
ac4=0.5*L4*(-(np.pi/beta4)*(np.pi/beta4)*np.cos(np.pi*(theta4-beta1-beta2-beta3)/beta4)- 0.25*((2*np.pi/beta4)*(2*np.pi/beta4)*np.cos(2*np.pi*(theta4-beta1-beta2-beta3)/beta4))) #seccion 4
ac5=0*theta5 # seccion 5 atotal=np.concatenate([ac1,ac2,ac3,ac4,ac5]) # Total
## Diagramas de desplazamientos, velocidad y aceleración f, axarr = plt.subplots(3, sharex=True) axarr[0].plot(theta,ytotal)
axarr[0].set_title('Diagrama de desplazamientos') axarr[0].grid('on')
axarr[1].plot(theta,vtotal) axarr[1].set_title('Diagrama de velocidades') axarr[1].grid('on')
axarr[2].plot(theta,atotal) axarr[2].set_title('Diagrama de aceleraciones') axarr[2].grid('on')
dth=0.01 # incremento angular y=ytotal # vector de desplazamiento
---------------------------------------------------------------
yp=vtotal # vector de velocidad ypp=atotal # vector de aceleracion
epsilon=0.5 # Excentricidad (si no hay excentricidad aqui se pone cero) turn_direction='clockwise' # direccion de giro ('clockwise' o 'anti-clockwise') fig1, ax1 = plt.subplots() # ejes donde se grafica la animacion
hole=3.0/8 # agujero de la Leva
r0=2.5 # Radio de la circunferencia primaria Leva1=LevaCunia(theta,dth,y,yp,ypp,epsilon,r0,turn_direction,ax1,hole) Leva1.graficarLevaSegCunia(3,detailed=False) xc,yc=Leva1.PerfilCunia() np.savetxt('DatosCunia.txt',np.transpose([xc,yc]))
anim1 = FuncAnimation(fig1, Leva1, frames=np.arange(1000), init_func=Leva1.init, interval=100, blit=True)
plt.show()
dth=0.01 # incremento angular y=ytotal # vector de desplazamiento yp=vtotal # vector de velocidad ypp=atotal # vector de aceleracion epsilon=0.5 # Excentricidad
turn_direction='anti-clockwise' # direccion de giro ('clockwise' o 'anti-clockwise' fig3, ax3 = plt.subplots()
hole=3.0/8 # ejes donde se grafica la animacion r0=2.5 # agujero de la Leva
rd=1/4 # radio del rodillo
Leva3.graficarLevaSegRodillo(7,detailed=False)
---------------------------------------------------------------
xr,yr=Leva3.Calcperfilrodillo() np.savetxt('DatosSegRodillo.txt',np.transpose([xr,yr]))
anim3 = FuncAnimation(fig3, Leva3, frames=np.arange(1000), init_func=Leva3.init, interval=100, blit=True)
plt.show()
---------------------------------------------------------------
Diseño en 3D en AutoCAD
---------------------------------------------------------------
Fotos en Físico
[pic 19][pic 20]
---------------------------------------------------------------
Conclusión
Las dimensiones y características de una leva, así como las leyes que definen su movimiento, responden a las diferentes necesidades en cada aplicación particular, lo que hace que no existan normas o procedimientos estándar en el diseño o dimensionado de este elemento. Existen varias formas de obtener el perfil de una leva, ya sean gráficas o analíticas; siendo estas últimas, las más apropiadas para realizar un código para diseñar como el que se describe en el presente trabajo, por la facilidad del computador para almacenar grandes
...