feat: Right side wrist joint all clear
This commit is contained in:
parent
82570528da
commit
720de20b85
|
@ -33,13 +33,7 @@ WRIST_PARAMS = dict(
|
|||
radius_disk=13.0,
|
||||
radius_housing=15.0,
|
||||
),
|
||||
hole_pos=[10],
|
||||
lip_length=30,
|
||||
child_arm_radius=23.0,
|
||||
parent_arm_radius=30.0,
|
||||
actuator=LINEAR_ACTUATOR_10,
|
||||
flexor_offset_angle=30.0,
|
||||
flexor_child_arm_radius=None,
|
||||
actuator=LINEAR_ACTUATOR_21,
|
||||
)
|
||||
|
||||
@dataclass(kw_only=True)
|
||||
|
@ -775,7 +769,7 @@ class WingProfile(Model):
|
|||
segment_thickness=self.s2_thickness,
|
||||
child=True,
|
||||
)
|
||||
@submodel(name="spacer-s1-elbow-act")
|
||||
@submodel(name="spacer-s2-elbow-act")
|
||||
def spacer_s2_elbow_act(self) -> MountingBox:
|
||||
return MountingBox(
|
||||
length=self.s2_thickness,
|
||||
|
@ -876,9 +870,12 @@ class WingProfile(Model):
|
|||
return profile
|
||||
def surface_s3(self,
|
||||
front: bool = True) -> Cq.Workplane:
|
||||
loc_wrist = Cq.Location.rot2d(self.wrist_rotate) * self.wrist_joint.child_arm_loc()
|
||||
rot_wrist = Cq.Location.rot2d(self.wrist_rotate)
|
||||
loc_wrist = rot_wrist * self.wrist_joint.child_arm_loc()
|
||||
tags = [
|
||||
("wrist", self.wrist_axle_loc * loc_wrist),
|
||||
("wrist_act", self.wrist_axle_loc * rot_wrist *
|
||||
self.wrist_joint.actuator_mount_loc(child=True)),
|
||||
("wrist_bot", self.wrist_axle_loc * loc_wrist *
|
||||
Cq.Location.from2d(0, self.wrist_h2)),
|
||||
("wrist_top", self.wrist_axle_loc * loc_wrist *
|
||||
|
@ -906,6 +903,17 @@ class WingProfile(Model):
|
|||
segment_thickness=self.s3_thickness,
|
||||
child=True,
|
||||
)
|
||||
@submodel(name="spacer-s3-wrist-act")
|
||||
def spacer_s3_wrist_act(self) -> MountingBox:
|
||||
return MountingBox(
|
||||
length=self.s3_thickness,
|
||||
width=self.s3_thickness,
|
||||
thickness=self.spacer_thickness,
|
||||
holes=[Hole(x=0,y=0)],
|
||||
centred=(True, True),
|
||||
hole_diam=self.wrist_joint.hole_diam,
|
||||
centre_left_right_tags=True,
|
||||
)
|
||||
@assembly()
|
||||
def assembly_s3(self) -> Cq.Assembly:
|
||||
result = (
|
||||
|
@ -930,6 +938,12 @@ class WingProfile(Model):
|
|||
.constrain("back?wrist_bot", "extra_back?wrist_bot", "Plane")
|
||||
.constrain("back?wrist_top", "extra_back?wrist_top", "Plane")
|
||||
)
|
||||
self._assembly_insert_spacer(
|
||||
result,
|
||||
self.spacer_s3_wrist_act().generate(),
|
||||
point_tag="wrist_act",
|
||||
flipped=True,
|
||||
)
|
||||
self._assembly_insert_spacer(
|
||||
result,
|
||||
self.spacer_s3_wrist().generate(),
|
||||
|
@ -1084,7 +1098,16 @@ class WingR(WingProfile):
|
|||
wrist_height: float = 60.0
|
||||
wrist_joint: ElbowJoint = field(default_factory=lambda: ElbowJoint(
|
||||
flip=True,
|
||||
angle_neutral=0.0,
|
||||
angle_neutral=-20.0,
|
||||
child_arm_radius=23.0,
|
||||
parent_arm_radius=30.0,
|
||||
flexor_offset_angle=30.0,
|
||||
flexor_child_arm_radius=50.0,
|
||||
flexor_mount_angle_parent=20,
|
||||
flexor_mount_angle_child=-40,
|
||||
hole_pos=[10, 20],
|
||||
lip_length=50,
|
||||
#flexor_pos_smaller=False,
|
||||
**WRIST_PARAMS
|
||||
))
|
||||
|
||||
|
@ -1336,6 +1359,12 @@ class WingL(WingProfile):
|
|||
wrist_height: float = 43.0
|
||||
wrist_joint: ElbowJoint = field(default_factory=lambda: ElbowJoint(
|
||||
flip=False,
|
||||
hole_pos=[10],
|
||||
lip_length=30,
|
||||
child_arm_radius=23.0,
|
||||
parent_arm_radius=30.0,
|
||||
flexor_offset_angle=30.0,
|
||||
flexor_child_arm_radius=None,
|
||||
**WRIST_PARAMS
|
||||
))
|
||||
|
||||
|
|
Loading…
Reference in New Issue