Basic fastener
This commit is contained in:
parent
44c9226a49
commit
ba4be74f8a
@ -21,8 +21,9 @@ large_gear_diameter=8.5
|
|||||||
gap = stepper_motor_size * math.sin(math.radians(slant_degree)) / math.sin(math.radians(90-slant_degree))
|
gap = stepper_motor_size * math.sin(math.radians(slant_degree)) / math.sin(math.radians(90-slant_degree))
|
||||||
width = math.sqrt(gap**2 + stepper_motor_size**2 - 2*gap*stepper_motor_size*math.cos(math.radians(90)))
|
width = math.sqrt(gap**2 + stepper_motor_size**2 - 2*gap*stepper_motor_size*math.cos(math.radians(90)))
|
||||||
|
|
||||||
d=20
|
d=25
|
||||||
t=7
|
t=7
|
||||||
|
mount_gap=2
|
||||||
|
|
||||||
end_x=gap+stepper_motor_size-5
|
end_x=gap+stepper_motor_size-5
|
||||||
end_y=-4.5
|
end_y=-4.5
|
||||||
@ -56,7 +57,7 @@ def createOutline(ex_amount):
|
|||||||
n_x=base.val().endPoint().toTuple()[0]
|
n_x=base.val().endPoint().toTuple()[0]
|
||||||
n_y=base.val().endPoint().toTuple()[1]
|
n_y=base.val().endPoint().toTuple()[1]
|
||||||
coor_x, coor_y = findRodInter(n_x, n_y)
|
coor_x, coor_y = findRodInter(n_x, n_y)
|
||||||
last_x, last_y = findRodInter(n_x, n_y+2)
|
last_x, last_y = findRodInter(n_x, n_y+mount_gap)
|
||||||
|
|
||||||
base = base.lineTo(coor_x, coor_y)
|
base = base.lineTo(coor_x, coor_y)
|
||||||
base = base.threePointArc((center_x+rod_thickness/2, center_y), (last_x, last_y))
|
base = base.threePointArc((center_x+rod_thickness/2, center_y), (last_x, last_y))
|
||||||
@ -110,7 +111,19 @@ m_hole_diameter=6
|
|||||||
m_hole_depth=3
|
m_hole_depth=3
|
||||||
lid = lid.faces('<Z[0]').workplane().circle(m_hole_diameter/2).cutBlind(-m_hole_depth)
|
lid = lid.faces('<Z[0]').workplane().circle(m_hole_diameter/2).cutBlind(-m_hole_depth)
|
||||||
|
|
||||||
|
# Threaded insert
|
||||||
|
base = base.faces('<<Y[-1]').workplane().center(-5,0).circle(6.5/2).cutBlind(-t-mount_gap*2-6)
|
||||||
|
base = base.faces('<<Y[-1]').workplane().circle(8.5/2).cutBlind(-t-mount_gap)
|
||||||
|
# Hex mount point
|
||||||
|
fastener_width = 11
|
||||||
|
fastener_height = 3.5
|
||||||
|
fastener_length = 20
|
||||||
|
base = base.faces('<<Y[-1]').workplane().circle((fastener_width+1)/2).cutBlind(-4)
|
||||||
|
fastener = base.faces('<<Y[-4]').workplane().circle(fastener_width/2).extrude(4.5+fastener_height, combine=False)
|
||||||
|
fastener = fastener.faces('<<Y[-1]').workplane().center(-fastener_length,0).line(20,-fastener_width/2).vLine(fastener_width).close().extrude(-fastener_height)
|
||||||
|
fastener = fastener.faces('<<Y[-1]').workplane().circle(fastener_width/6).extrude(-fastener_height)
|
||||||
|
|
||||||
|
# Gears
|
||||||
mod=0.8
|
mod=0.8
|
||||||
l_gear = cq.Workplane('XY').gear(SpurGear(module=mod,
|
l_gear = cq.Workplane('XY').gear(SpurGear(module=mod,
|
||||||
teeth_number=63,
|
teeth_number=63,
|
||||||
@ -128,6 +141,7 @@ s_gear = s_gear.translate((stepper_center[0],stepper_center[1]+offset+loop_thick
|
|||||||
# Render
|
# Render
|
||||||
show_object(base, name='Follow Focus Base')
|
show_object(base, name='Follow Focus Base')
|
||||||
show_object(lid, name='Follow Focus Lid')
|
show_object(lid, name='Follow Focus Lid')
|
||||||
|
show_object(fastener, name='Follow Focus Fastener')
|
||||||
show_object(l_gear, name='Follow Focus Large Gear')
|
show_object(l_gear, name='Follow Focus Large Gear')
|
||||||
show_object(s_gear, name='Follow Focus Small Gear')
|
show_object(s_gear, name='Follow Focus Small Gear')
|
||||||
|
|
||||||
|
@ -1,2 +1,3 @@
|
|||||||
git+https://github.com/meadiode/cq_gears.git@main
|
git+https://github.com/meadiode/cq_gears.git@main
|
||||||
|
git+https://github.com/gumyr/cq_warehouse.git#egg=cq_warehouse
|
||||||
shapely
|
shapely
|
||||||
|
Loading…
x
Reference in New Issue
Block a user