In simmechanics how to model the shape of Carrier block of a planetary gear?

3 views (last 30 days)
an example model available in the simulink library for a planetary gear has 4 planet gears. I tried to change the 4 gear planetary gear to 3 geared planetary gear. % Gear Carrier Parameters. smdoc_planetary_gear_e This is the example given
Carrier.RGB = [0.25 0.4 0.7];
Carrier.L = Sun.R + Planet.R;
Carrier.W = 2*T;
Carrier.T = T/2;
Theta = (90:1:270)'*pi/180;
Beta = (-90:1:90)'*pi/180;
Carrier.CS = [-Carrier.L/2 + Carrier.W/2*cos(Theta) ...
Carrier.W/2*sin(Theta); Carrier.L/2 + Carrier.W/2*cos(Beta), ...
Carrier.W/2*sin(Beta)];
I don't know how to arrive to three winged structure. Please someone help me out i am waiting for ur valuable input

Answers (1)

Steve Miller
Steve Miller on 20 Nov 2022
If you go into the Model Workspace for smdoc_planetary_gear_e, you will see the MATLAB code that makes the carrier geometry with four "wings" for the planetary gears. If you look at that code, you will see the extrusion is modeled by simply drawing the arc between each pair of wings. Take a look at that, determine which values should be parameters, and modify it to suit your needs.
Code from Model Workspace is copy/pasted below.
--Steve
% Common Parameters
Rho = 2700;
T = 3;
A = 0.8;
% Sun Gear Parameters
Sun.RGB = [0.75 0.75 0.75];
Sun.R = 15;
Sun.N = 40;
% Planet Gear Parameters
Planet.RGB = [0.65 0.65 0.65];
Planet.R = 7.5;
Planet.N = Planet.R/Sun.R*Sun.N;
% Ring Gear Parameters
Ring.RGB = [0.85 0.45 0];
Ring.R = Sun.R + 2*Planet.R;
Ring.N = Ring.R/Planet.R*Planet.N;
Ring.Theta = linspace(-pi/Ring.N,2*pi-pi/Ring.N,100)';
Ring.RO = 1.1*Ring.R;
Ring.CSO = [Ring.RO*cos(Ring.Theta) Ring.RO*sin(Ring.Theta)];
Ring.CSI = simmechanics.demohelpers.gear_profile(2*Ring.R,Ring.N,A);
Ring.CSI = [Ring.CSI; Ring.CSI(1,:)];
Ring.CS = [Ring.CSO; flipud(Ring.CSI)];
% Gear Carrier Parameters
Carrier.RGB = [0.25 0.4 0.7];
Carrier.R = Sun.R + Planet.R;
Carrier.Theta = (180:-1:90)'*pi/180;
Carrier.Beta = (270:-1:180)'*pi/180;
Carrier.CS1 = Carrier.R*[1.08+cos(Carrier.Theta), -1.08+sin(Carrier.Theta)];
Carrier.CS2 = Carrier.R*[1.08+cos(Carrier.Beta), 1.08+sin(Carrier.Beta)];
Carrier.CS3 = -Carrier.CS1;
Carrier.CS4 = -Carrier.CS2;
Carrier.CS = [Carrier.CS1; Carrier.CS2; Carrier.CS3; Carrier.CS4];
% Joint Parameters:
b = 5e-4;
figure(99)
plot(Carrier.CS(:,1),Carrier.CS(:,2))
axis equal

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!