feat: Measurements for 30mm and 50mm actuators

This commit is contained in:
Leni Aniva 2024-07-24 18:17:39 -07:00
parent 98a93cc651
commit 57262f542f
Signed by: aniva
GPG Key ID: 4D9B1C8D10EA4C50
2 changed files with 28 additions and 9 deletions

View File

@ -24,11 +24,11 @@ class LinearActuator(Item):
front_width: float = 9.24 front_width: float = 9.24
front_height: float = 5.98 front_height: float = 5.98
segment1_length: float = 37.55 segment1_length: float = 37.54
segment1_width: float = 15.95 segment1_width: float = 15.95
segment1_height: float = 11.94 segment1_height: float = 11.94
segment2_length: float = 37.47 segment2_length: float = 37.37
segment2_width: float = 20.03 segment2_width: float = 20.03
segment2_height: float = 15.03 segment2_height: float = 15.03
@ -154,7 +154,7 @@ class MountingBracket(Item):
height: float = 12.20 height: float = 12.20
thickness: float = 0.98 thickness: float = 0.98
length: float = 13.00 length: float = 13.00
hole_to_side_ext: float = 8.10 hole_to_side_ext: float = 8.25
def __post_init__(self): def __post_init__(self):
assert self.hole_to_side_ext - self.hole_diam / 2 > 0 assert self.hole_to_side_ext - self.hole_diam / 2 > 0
@ -272,13 +272,24 @@ class BatteryBox18650(Item):
LINEAR_ACTUATOR_50 = LinearActuator( LINEAR_ACTUATOR_50 = LinearActuator(
mass=34.0, mass=40.8,
stroke_length=50, stroke_length=50,
# FIXME: Measure shaft_diam=9.05,
front_hole_ext=6, front_hole_ext=4.32,
back_hole_ext=6, back_hole_ext=4.54,
segment1_length=50, segment1_length=57.35,
segment2_length=50, segment1_width=15.97,
segment1_height=11.95,
segment2_length=37.69,
segment2_width=19.97,
segment2_height=14.96,
front_length=9.40,
front_width=9.17,
front_height=6.12,
back_length=9.18,
back_width=10.07,
back_height=8.06,
) )
LINEAR_ACTUATOR_30 = LinearActuator( LINEAR_ACTUATOR_30 = LinearActuator(
mass=34.0, mass=34.0,

View File

@ -7,6 +7,14 @@ from nhf.checks import pairwise_intersection
class TestElectronics(unittest.TestCase): class TestElectronics(unittest.TestCase):
def test_actuator_length(self):
self.assertAlmostEqual(
ME.LINEAR_ACTUATOR_50.conn_length, 103.9
)
self.assertAlmostEqual(
ME.LINEAR_ACTUATOR_30.conn_length, 83.9
)
def test_flexor(self): def test_flexor(self):
flexor = ME.Flexor( flexor = ME.Flexor(
motion_span=60, motion_span=60,