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

3 次查看(过去 30 天)
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

回答(1 个)

Steve Miller
Steve Miller 2022-11-20
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

类别

Help CenterFile Exchange 中查找有关 Bodies 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by