Add z stepper mount and holes in z bracket
This commit is contained in:
parent
e0debae8ce
commit
c4f687ea99
115
gantry.py
115
gantry.py
|
@ -402,7 +402,10 @@ class Carriage:
|
||||||
.center(-x - HGR20.L - x_carriage_spacing / 2, -x_rail_spacing / 2)
|
.center(-x - HGR20.L - x_carriage_spacing / 2, -x_rail_spacing / 2)
|
||||||
.transformed(rotate=(180, 0, 0))
|
.transformed(rotate=(180, 0, 0))
|
||||||
.rect(60, 60)
|
.rect(60, 60)
|
||||||
.extrude(64)
|
.extrude(64 - 8)
|
||||||
|
.faces(">z")
|
||||||
|
.rect(60, 32)
|
||||||
|
.extrude(8)
|
||||||
)
|
)
|
||||||
self.x_nut_mount = gantry.ball_screw_model.nutHoles(
|
self.x_nut_mount = gantry.ball_screw_model.nutHoles(
|
||||||
self.x_nut_mount, x + carriage_w / 2
|
self.x_nut_mount, x + carriage_w / 2
|
||||||
|
@ -418,7 +421,7 @@ class Carriage:
|
||||||
s.copyWorkplane(back)
|
s.copyWorkplane(back)
|
||||||
.center(-x - HGR20.L - x_carriage_spacing / 2, -x_rail_spacing / 2)
|
.center(-x - HGR20.L - x_carriage_spacing / 2, -x_rail_spacing / 2)
|
||||||
.transformed(rotate=(0 if forward else 180, 0, 0))
|
.transformed(rotate=(0 if forward else 180, 0, 0))
|
||||||
.rect(44, 44)
|
.rect(48, 48)
|
||||||
.vertices()
|
.vertices()
|
||||||
.hole(5)
|
.hole(5)
|
||||||
)
|
)
|
||||||
|
@ -508,7 +511,7 @@ class Carrier:
|
||||||
|
|
||||||
angle_z = 0.188 * 25.4
|
angle_z = 0.188 * 25.4
|
||||||
angle_w = 2.0 * 25.4
|
angle_w = 2.0 * 25.4
|
||||||
self.stepper_mount = (
|
self.stepper_bracket = (
|
||||||
cq.Workplane()
|
cq.Workplane()
|
||||||
.copyWorkplane(self.plane)
|
.copyWorkplane(self.plane)
|
||||||
.transformed(offset=(-200 / 2, z_rail_len / 2, 0), rotate=(0, 90, 0))
|
.transformed(offset=(-200 / 2, z_rail_len / 2, 0), rotate=(0, 90, 0))
|
||||||
|
@ -520,10 +523,106 @@ class Carrier:
|
||||||
.finalize()
|
.finalize()
|
||||||
.extrude(200)
|
.extrude(200)
|
||||||
)
|
)
|
||||||
|
self.stepper_bracket = carriage.left_rail.holes(self.stepper_bracket)
|
||||||
|
self.stepper_bracket = carriage.right_rail.holes(self.stepper_bracket)
|
||||||
|
self.stepper_bracket = (
|
||||||
|
self.stepper_bracket.copyWorkplane(
|
||||||
|
self.ballscrew_model.w.transformed(rotate=(90, 0, 0))
|
||||||
|
).hole(32)
|
||||||
|
# .copyWorkplane(self.ballscrew_model.w.transformed(rotate=(90, 0, 0)))
|
||||||
|
# .pushPoints([(40, 0)])
|
||||||
|
# .hole(5)
|
||||||
|
)
|
||||||
|
self.stepper_bracket = self.ballscrew_model.fixedBearingHoles(
|
||||||
|
self.stepper_bracket
|
||||||
|
)
|
||||||
|
|
||||||
|
offset = (
|
||||||
|
self.ballscrew_model.w.vertices().val()
|
||||||
|
- self.plane.transformed(
|
||||||
|
offset=(0, z_rail_len / 2 + 10, 0), rotate=(-90, 0, 0)
|
||||||
|
)
|
||||||
|
.vertices()
|
||||||
|
.val()
|
||||||
|
)
|
||||||
|
|
||||||
|
# print("offset: ", offset)
|
||||||
|
self.stepper_mount = (
|
||||||
|
cq.Workplane()
|
||||||
|
.copyWorkplane(
|
||||||
|
self.plane.transformed(
|
||||||
|
offset=(0, z_rail_len / 2 + 10, 0), rotate=(-90, 0, 0)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
.tag("flange_center")
|
||||||
|
.rect(100, 50)
|
||||||
|
.extrude(5)
|
||||||
|
.workplaneFromTagged("flange_center")
|
||||||
|
.transformed(rotate=(180, 0, 0))
|
||||||
|
.rect(90, 25, forConstruction=True)
|
||||||
|
.vertices()
|
||||||
|
.hole(5)
|
||||||
|
.copyWorkplane(
|
||||||
|
self.plane.transformed(
|
||||||
|
offset=(0, z_rail_len / 2 + 10, 0), rotate=(-90, 0, 0)
|
||||||
|
).transformed(offset=(0, -offset.y, 0), rotate=(0, 0, 30))
|
||||||
|
)
|
||||||
|
.tag("stepper_center")
|
||||||
|
.rect(58.4, 58.4)
|
||||||
|
.extrude(5)
|
||||||
|
.workplaneFromTagged("stepper_center")
|
||||||
|
.transformed(rotate=(180, 0, 0))
|
||||||
|
.rect(47.41, 47.41, forConstruction=True)
|
||||||
|
.vertices()
|
||||||
|
.hole(5)
|
||||||
|
.copyWorkplane(self.ballscrew_model.w.transformed(rotate=(90, 0, 0)))
|
||||||
|
.hole(40)
|
||||||
|
)
|
||||||
|
self.stepper_bracket = (
|
||||||
|
self.stepper_bracket.copyWorkplane(
|
||||||
|
self.stepper_mount.workplaneFromTagged("stepper_center")
|
||||||
|
)
|
||||||
|
.rect(47.41, 47.41, forConstruction=True)
|
||||||
|
.vertices()
|
||||||
|
.hole(5)
|
||||||
|
.copyWorkplane(self.stepper_mount.workplaneFromTagged("flange_center"))
|
||||||
|
.transformed(rotate=(0, 0, 0))
|
||||||
|
.rect(90, 25, forConstruction=True)
|
||||||
|
.vertices()
|
||||||
|
.hole(5)
|
||||||
|
)
|
||||||
|
|
||||||
|
self.stepper_lower_spacer = (
|
||||||
|
cq.Workplane()
|
||||||
|
.copyWorkplane(self.fixed_bearing.workplaneFromTagged("mounting face"))
|
||||||
|
.rect(60, 40)
|
||||||
|
.extrude(16)
|
||||||
|
.copyWorkplane(self.ballscrew_model.w.transformed(rotate=(90, 0, 0)))
|
||||||
|
.rect(36, 36)
|
||||||
|
.cutThruAll()
|
||||||
|
)
|
||||||
|
self.stepper_lower_spacer = self.ballscrew_model.fixedBearingHoles(
|
||||||
|
self.stepper_lower_spacer
|
||||||
|
)
|
||||||
|
self.stepper_mount = self.ballscrew_model.fixedBearingHoles(self.stepper_mount)
|
||||||
|
|
||||||
|
def bracket_mounting_holes(s):
|
||||||
|
points = [
|
||||||
|
(x, y)
|
||||||
|
for x in [-93, -83, 93, 83]
|
||||||
|
for y in [-z_ballscrew_len / 2 + 30, -z_ballscrew_len / 2 + 10]
|
||||||
|
]
|
||||||
|
return (
|
||||||
|
s.copyWorkplane(self.plane.transformed(rotate=(180, 0, 0)))
|
||||||
|
.pushPoints(points)
|
||||||
|
.hole(5)
|
||||||
|
)
|
||||||
|
|
||||||
|
self.plate = bracket_mounting_holes(self.plate)
|
||||||
|
self.stepper_bracket = bracket_mounting_holes(self.stepper_bracket)
|
||||||
|
|
||||||
ballscrew_offset = z_ballscrew_len / 2 + carriage.z / 2 - z
|
ballscrew_offset = z_ballscrew_len / 2 + carriage.z / 2 - z
|
||||||
carriage.z_nut = self.ballscrew_model.nut(ballscrew_offset)
|
carriage.z_nut = self.ballscrew_model.nut(ballscrew_offset)
|
||||||
# TODO add carriage nut mount to carriage
|
|
||||||
carriage.z_nut_mount = (
|
carriage.z_nut_mount = (
|
||||||
cq.Workplane()
|
cq.Workplane()
|
||||||
.copyWorkplane(carriage.plate.workplaneFromTagged("carriage_plate"))
|
.copyWorkplane(carriage.plate.workplaneFromTagged("carriage_plate"))
|
||||||
|
@ -538,7 +637,7 @@ class Carrier:
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
.rect(
|
.rect(
|
||||||
44, 44
|
48, 48
|
||||||
) # mounting holes; these need to line up with the x nut mounting holes
|
) # mounting holes; these need to line up with the x nut mounting holes
|
||||||
.vertices()
|
.vertices()
|
||||||
.hole(5)
|
.hole(5)
|
||||||
|
@ -561,8 +660,10 @@ class Carrier:
|
||||||
.add(self.plate, name="z plate")
|
.add(self.plate, name="z plate")
|
||||||
.add(self.ballscrew, name="z ballscrew")
|
.add(self.ballscrew, name="z ballscrew")
|
||||||
.add(self.fixed_bearing, name="z fixed bearing")
|
.add(self.fixed_bearing, name="z fixed bearing")
|
||||||
.add(self.floating_bearing, name="z floating bearing")
|
# .add(self.floating_bearing, name="z floating bearing")
|
||||||
.add(self.stepper_mount, name="stepper motor-ballscrew mount")
|
.add(self.stepper_bracket, name="stepper motor-ballscrew bracket")
|
||||||
|
.add(self.stepper_lower_spacer, name="stepper motor lower spacer")
|
||||||
|
.add(self.stepper_mount, name="stepper mount")
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
2
utils.py
2
utils.py
|
@ -104,6 +104,8 @@ class SFU1204:
|
||||||
.copyWorkplane(w2)
|
.copyWorkplane(w2)
|
||||||
.rect(B, H1)
|
.rect(B, H1)
|
||||||
.extrude(L)
|
.extrude(L)
|
||||||
|
.copyWorkplane(w2.transformed(offset=(0, 0, L)))
|
||||||
|
.tag("mounting face")
|
||||||
.copyWorkplane(w.transformed(rotate=(180, 0, 0)))
|
.copyWorkplane(w.transformed(rotate=(180, 0, 0)))
|
||||||
.hole(d1)
|
.hole(d1)
|
||||||
.copyWorkplane(w3.transformed(rotate=(180, 0, 0)))
|
.copyWorkplane(w3.transformed(rotate=(180, 0, 0)))
|
||||||
|
|
Loading…
Reference in New Issue