Был использован для сервопривода 5010. Я удалил старую коробку передач, потому что зубчатое колесо было сломано.
Может быть, тебе понадобится скорректировать диаметр, чтобы он подходил для двигателя, вот и все.
Соотношение передаточного числа 4:1.
Его ширина составляет не менее 53,1 мм, а высота - 22 мм.
Включить <BOSL2/std.scad>
Включить <BOSL2/gears.scad>
/[Настройки оператора]/
Ширина несущего элемента = 8,0;
carrier_hub_extension = 3.0;
Толщина несущей пластины = 2,5;
overlap_margin = 1,5;
/[Контроль рабочего процесса]/
layout = "assembled"; // [assembled, flat]
/[Переключатели видимости]/
show_sun = true;
show_planets = true;
show_ring = true;
show_carrier = true;
show_pins = true;
show_cup = true;
show_rocker = true;
show_cover = true;
/[Параметры снаряжения]/
Питч = 2,932;
sun_t = 15;
planet_t = 15;
ring_t = sun_t + 2 * planet_t;
Толщина = 6,0;
clear = 0.3;
/[Аппаратное обеспечение и посадка]/
pin_diam = 3,1;
pin_extra = 2.5;
Выступ штифта = 0,5;
щелевой зазор = 0,15;
/[Параметры чашки]/
cup_od = 20.2;
cup_h = 6.1;
Глубина углубления чашки = 3,5;
cup_recess_id = 17.4;
cup_center_hole = 6.1;
cup_z_push = 0.0;
/[Контроль обложки]/
cover_base_thick = 1.6;
pin_h = толщина + толщина опорной пластины + дополнительная толщина штифта + выступ штифта;
Fit_clearance = 0.1;
Длина вала двигателя = 3,6;
z_offset = 0.0;
// --- МАТЕМАТИКА ---
pitch_diam_sun = (sun_t <)Питч / PI;
Питч_диам_планета = (планета_тПитч / PI;
Центральное расстояние = (диаметр Солнца + диаметр планеты) / 2;
ring_outer_teeth = ring_t + 18;
Внешний диаметр кольца = (внешние зубья кольца)Питч / PI;
Внутренний диаметр кольца = (толщина кольца)Питч / PI;
Радиус расширения = (внутренний диаметр кольца / 2) + зазор для перекрытия;
$fn = 64;
// --- ГЛАВНОЕ ВЫПОЛНЕНИЕ ---
если (布局 == "плоский") {
grid_space = ring_t + 25;
Sun_gear_part();
move([grid_space, 0, 0]) planet_gears_part();
Переместить([grid_space2, 0, 0]) ring_gear_part();
двигаться([0, grid_space, 0]) переноситель_частицы();
Переместить([grid_space, grid_space, 0]) cup_part();
Переместить([grid_space2, grid_space, 0]) rocker_part();
Переместить([grid_space3, 0, 0]) cover_part();
Переместить([grid_space3, grid_space, 0]) pins_part();
} иначе {
Sun_gear_part();
planet_gears_part();
шестерня кольцевая();
Carrier_part();
pins_part();
cup_part();
рокерская часть();
cover_part();
}
// --- ЧАСТИ МОДУЛЕЙ ---
Модуль pins_part() {
// Примечание: Мы отображаем все 3 контакта в собранном режиме, чтобы крышка могла использовать их для вырезания отверстий.
если (show_pins || $parent_geom) {
pin_z_start = (layout == "flat") ? 0 : -carrier_plate_thick - pin_protrusion;
color("серебряный") {
если (布局 == "плоский") {
cyl(h=pin_h, d=pin_diam, anchor=BOTTOM);
} иначе {
для(a = [0, 120, 240]) {
Поворачиваем ([0, 0, a]) и перемещаем ([центр_расстояние, 0, начальная_высота_штыря])
cyl(h=pin_h, d=pin_diam, anchor=BOTTOM);
}
}
}
}
}
Модуль cover_part() {
если (показать обложку) {
z_pos = (布局 == "flat") ? 0 : толщина;
двигаться([0, 0, z_pos]) {
color("lightgray", 0.8)
diff() {
union() {
// Основа тарелки.
cyl(h=cover_base_thick, d=cup_od + carrier_hub_extension, anchor=BOTTOM);
для(a = [0, 120, 240]) {
rotate([0, 0, a]) {
Переместить([радиус расширения/2, 0, толщина основания крышки/2])
Cube([радиус расширения, ширина несущего спица, толщина основания крышки], anchor=CENTER);
двигаться([радиус расширения, 0, 0])
cyl(h=cover_base_thick, d=carrier_spoke_width, anchor=BOTTOM);
// Зона поддержки для пинов.
двигаться([центр_расстояние, 0, 0])
cyl(h=cover_base_thick, d=carrier_spoke_width + 1.5, anchor=BOTTOM);
}
}
}
Тэг ("удалить") {
// 1. Центральное отверстие.
cyl(h=100, d=motor_shaft_d + 1, anchor=CENTER);
)
// Остальные модули (носитель, зубчатые колёса, чашка, качалка) остаются без изменений...
Модуль carrier_part() {
если (показать перевозчика) {
z_pos = (layout == "flat") ? толщина пластины носителя : 0;
r_v = (布局 == "плоский") ? [180, 0, 0] : [0, 0, 0];
inner_hub_d = cup_od + carrier_hub_extension;
color("slategray") rotate(r_v) up(z_pos)
diff() {
union() {
cyl(h=thickness_of_carrier_plate, d=diameter_of_inner_hub, anchor=TOP);
для(a = [0, 120, 240]) {
rotate([0, 0, a]) {
двигаться([радиус расширения/2, 0, -толщина пластины носителя/2])
Cube([радиус расширения, ширина несущего спица, толщина несущей пластины], anchor=CENTER);
двигаться([центр_расстояние, 0, 0])
cyl(h=thickness_of_carrier_plate, d=width_of_carrier_spoke + 1.5, anchor=TOP);
двигаться([радиус расширения, 0, 0])
CyL(h=thickness_of_carrier_plate, d=width_of_carrier_spoke, anchor=TOP);
}
}
}
Тэг ("удалить") {
cyl(h=thickness_of_carrier_plate + 2, d=outer_diameter_of_cup + clearance_for_fit, anchor=CENTER);
для(a = [0, 120, 240]) {
Вращаем ([0, 0, a]) и перемещаем ([центр_расстояние, 0, 0])
cyl(h=thickness_of_carrier_plate + 5, d=diameter_of_pin + clearance_of_pin_hole, anchor=CENTER);
}
CyL(h=100, d=cup_center_hole, anchor=CENTER);
}
}
}
}
Модуль ring_gear_part() {
Если (показать кольцо) {
color("white", 0.3) up(z_offset)
diff() {
шестерня_зубчатая(круговой_шаг=шаг, зубья=зубья_наружного_кольца, толщина=толщина, крепление=НИЖНЕЕ);
Тэг ("удалить") {
шестерня_зубчатая(радиальный_шаг=шаг, зубы=кольцо_т, толщина=толщина+0.1, внутренняя=истина, зазор=зазор, якорь=НИЗ);
}
}
}
}
Модуль sun_gear_part() {
если (показать солнце) {
color("orange") up(z_offset)
spur_gear(circ_pitch=pitch, teeth=sun_t, thickness=thick, shaft_diam=motor_shaft_d, anchor=BOTTOM);
}
}
Модуль planet_gears_part() {
Если (показать планеты) {
для(a = [0, 120, 240]) {
d_val = (layout == "flat") ? (planet_t2.5): center_dist;
Поверните ([0, 0, (布局 == "flat") ? 0 : a])
Переместить([(макет == "плоский") ? (а/120 < 120)]).d_val) : d_val, 0, z_offset])
color("skyblue")
spur_gear(circ_pitch=pitch, teeth=planet_t, thickness=thick, shaft_diam=pin_diam + fit_clearance, clearance=clear, anchor=BOTTOM);
}
}
}
Модуль cup_part() {
Если (показать кубок) {
p_z = (layout == "flat") ? 0 : (-carrier_plate_thick + cup_z_push);
r_c = (布局 == "flat") ? [180, 0, 0] : [0, 0, 0];
color("lime") rotate(r_c) move([0,0,p_z])
diff()
cyl(h = cup_h, d = cup_od, anchor = TOP) {
Тэг ("удалить") {
Вниз (cup_h)
cyl(h = cup_recess_depth, d = cup_recess_id, anchor = BOTTOM);
cyl(h = cup_h + 10, d = cup_center_hole, anchor = CENTER);
}
}
}
}
Модуль rocker_part() {
Если (показать рокера) {
r_dist = (внешний диаметр кольца + (12 * шаг / ПИ))/2;
m_v = (布局 == "flat") ? [0, 0, 0] : [r_dist, 0, z_offset];
Переместить(m_v) цвет("красный")
spur_gear(circ_pitch=pitch, teeth=12, thickness=thick, shaft_diam=4.2, anchor=BOTTOM);
}
}
Etiketler
Model Kaynağı
