Fit onbashira profile in 12x12 in panel

This commit is contained in:
Leni Aniva 2025-05-15 23:16:39 -07:00
parent 63c2c74e02
commit c5f9e570a6
Signed by: aniva
GPG Key ID: D5F96287843E8DFB
1 changed files with 10 additions and 7 deletions

View File

@ -11,7 +11,7 @@ class Onbashira(Model):
n_side: int = 6 n_side: int = 6
# Dimensions of each side panel # Dimensions of each side panel
side_width: float = 170.0 side_width: float = 150.0
# Side panels have different lengths # Side panels have different lengths
side_length1: float = 200.0 side_length1: float = 200.0
@ -38,7 +38,7 @@ class Onbashira(Model):
(40, 12), (40, 12),
]) ])
angle_joint_flange_thickness: float = 7.8 angle_joint_flange_thickness: float = 7.8
angle_joint_flange_radius: float = 40.0 angle_joint_flange_radius: float = 30.0
angle_joint_conn_thickness: float = 6.0 angle_joint_conn_thickness: float = 6.0
angle_joint_conn_depth: float = 20.0 angle_joint_conn_depth: float = 20.0
angle_joint_conn_width: float = 20.0 angle_joint_conn_width: float = 20.0
@ -50,23 +50,23 @@ class Onbashira(Model):
barrel_diam: float = 25.4 * 1.5 barrel_diam: float = 25.4 * 1.5
barrel_length: float = 300.0 barrel_length: float = 300.0
# Radius from barrel centre to axis # Radius from barrel centre to axis
rotation_radius: float = 75.0 rotation_radius: float = 66.0
n_bearing_balls: int = 24 n_bearing_balls: int = 12
# Size of ball bearings # Size of ball bearings
bearing_ball_diam: float = 25.4 * 1/2 bearing_ball_diam: float = 25.4 * 1/2
bearing_ball_gap: float = .5 bearing_ball_gap: float = .5
# Thickness of bearing disks # Thickness of bearing disks
bearing_thickness: float = 20.0 bearing_thickness: float = 20.0
bearing_track_radius: float = 110.0 bearing_track_radius: float = 100.0
# Gap between the inner and outer bearing disks # Gap between the inner and outer bearing disks
bearing_gap: float = 10.0 bearing_gap: float = 10.0
bearing_disk_thickness: float = 25.4 / 8 bearing_disk_thickness: float = 25.4 / 8
rotor_inner_radius: float = 40.0 rotor_inner_radius: float = 40.0
rotor_bind_bolt_diam: float = 6.0 rotor_bind_bolt_diam: float = 6.0
rotor_bind_radius: float = 85.0 rotor_bind_radius: float = 78.0
rotor_spacer_outer_diam: float = 15.0 rotor_spacer_outer_diam: float = 15.0
stator_bind_radius: float = 140.0 stator_bind_radius: float = 130.0
material_side: Material = Material.WOOD_BIRCH material_side: Material = Material.WOOD_BIRCH
material_bearing: Material = Material.PLASTIC_PLA material_bearing: Material = Material.PLASTIC_PLA
@ -88,6 +88,9 @@ class Onbashira(Model):
assert self.angle_joint_depth / 2 > self.angle_joint_conn_depth assert self.angle_joint_depth / 2 > self.angle_joint_conn_depth
assert self.angle_joint_thickness > self.angle_joint_conn_thickness assert self.angle_joint_thickness > self.angle_joint_conn_thickness
# Ensure the stator could be printed on a 12x12in board
assert self.side_width * 2 < 12 * 25.4
@property @property
def angle_side(self) -> float: def angle_side(self) -> float:
return 360 / self.n_side return 360 / self.n_side