make_cycloidal_disc_rsolid
Kind: Function
Domain: Standard library
Canonical import: from cadflow.stdlib import make_cycloidal_disc_rsolid
Signature
def make_cycloidal_disc_rsolid(n_lobes: 'int', ring_pin_pitch_radius: 'float', roller_radius: 'float', eccentricity: 'float', gear_height: 'float' = 6.0, *, bore_radius: 'float' = 0.0, output_pin_count: 'int' = 0, output_pin_pitch_radius: 'float' = 0.0, output_pin_clearance_radius: 'float' = 0.0, output_pin_phase: 'float' = 0.0, sample_count_per_lobe: 'int' = 33, spline_tolerance: 'float' = 0.005, max_control_points: 'int' = 20) -> 'Solid'
Description
Create a cycloidal reducer disc for a one-tooth-difference pin ring.
Create a cycloidal reducer disc for a one-tooth-difference pin ring.
This is a single-disc geometric standard part. Real compact reducers often stack two identical-lobe discs to balance output-pin side loads. In that assembly-level pattern, separate two concepts that are easy to confuse:
- Place the two input eccentric cam centers 180 degrees apart, for example
(+e, 0)and(-e, 0), so their orbit loads oppose each other. - Tooth-index the second cycloidal profile by half a lobe, not by a full 180 degree shape rotation. For a disc withn_lobeslobes, that geometric body phase is180 / n_lobesdegrees. A 10-lobe disc rotated by 180 degrees is exactly five full lobe pitches and is visually and mechanically equivalent to no tooth-index phase change.
If output-pin clearance holes must stay aligned to one shared output pin set, compensate the second disc's output_pin_phase by subtracting the same body phase before rotating the finished disc body.
Parameters ---------- n_lobes : int Number of cycloidal lobes. The matching fixed pin ring has n_lobes + 1 pins and gives a single-stage n_lobes:1 reduction. ring_pin_pitch_radius : float Radius of the fixed ring pin centers in mm. roller_radius : float Radius of the fixed ring pins or rollers used to offset the profile. eccentricity : float Input crank eccentricity in mm. gear_height : float, default 6.0 Disc thickness / extrusion height along Z in mm. bore_radius : float, default 0.0 Optional central bore radius. Zero leaves the disc unbored. output_pin_count : int, default 0 Optional number of circular output-pin clearance holes. output_pin_pitch_radius : float, default 0.0 Radius of the output-pin clearance hole centers in mm. output_pin_clearance_radius : float, default 0.0 Radius of each output-pin clearance hole in mm. output_pin_phase : float, default 0.0 Angular phase of the first output-pin clearance hole in degrees, in the unrotated disc's local frame. When a finished disc is rotated to create a tooth-index phase in a twin-disc stack, subtract that same rotation from output_pin_phase if the clearance holes should remain aligned to the same global output pins. sample_count_per_lobe : int, default 33 Number of analytic samples fitted into each lobe B-spline segment. spline_tolerance : float, default 0.005 Cubic B-spline fit tolerance in mm. max_control_points : int, default 20 Maximum poles allowed for each fitted lobe segment.
Parameters
| Name | Type | Required | Default | Source description |
|---|---|---|---|---|
n_lobes | 'int' | yes | - | Not explicitly described in the source docstring. |
ring_pin_pitch_radius | 'float' | yes | - | Not explicitly described in the source docstring. |
roller_radius | 'float' | yes | - | Not explicitly described in the source docstring. |
eccentricity | 'float' | yes | - | Not explicitly described in the source docstring. |
gear_height | 'float' | no | 6.0 | Not explicitly described in the source docstring. |
bore_radius | 'float' | no | 0.0 | Not explicitly described in the source docstring. |
output_pin_count | 'int' | no | 0 | Not explicitly described in the source docstring. |
output_pin_pitch_radius | 'float' | no | 0.0 | Not explicitly described in the source docstring. |
output_pin_clearance_radius | 'float' | no | 0.0 | Not explicitly described in the source docstring. |
output_pin_phase | 'float' | no | 0.0 | Not explicitly described in the source docstring. |
sample_count_per_lobe | 'int' | no | 33 | Not explicitly described in the source docstring. |
spline_tolerance | 'float' | no | 0.005 | Not explicitly described in the source docstring. |
max_control_points | 'int' | no | 20 | Not explicitly described in the source docstring. |
Returns
Type: 'Solid'
The source docstring does not declare additional return semantics.
Errors
The source docstring does not declare a narrower exception contract. Invalid types, values, ownership, paths, or backend state may still raise the corresponding public error.
Behavior and constraints
- The contract below is generated from the current public runtime signature. Check domain notes for ownership and workflow constraints.
Import check
from cadflow.stdlib import make_cycloidal_disc_rsolid