feat: P02底座大幅扩展超长防倾翻力臂与前后双向大截面三角加强斜撑筋
This commit is contained in:
+9
-9
@@ -11,13 +11,13 @@
|
||||
},
|
||||
{
|
||||
"件号": "P02_底脚",
|
||||
"名称": "测试台架底座(高刚度抗倾覆底盘+嵌装定位槽)",
|
||||
"名称": "测试台架底座(重型防倾翻超长力臂+双向三角斜撑版)",
|
||||
"类型": "3D打印",
|
||||
"数量": 1,
|
||||
"体积cm3": 1166.9,
|
||||
"质量g_PLA": 1446.9,
|
||||
"包络": "[-186.3 16.7 -0.0 .. 76.3 239.3 22.0] (262.6x222.6x22.0)",
|
||||
"说明": "V2加长大底盘:200x320mm重型防倾覆底座+12mm嵌装槽+4xM6夹持槽+底部走线槽"
|
||||
"体积cm3": 2122.9,
|
||||
"质量g_PLA": 2632.4,
|
||||
"包络": "[-241.5 6.5 -0.0 .. 146.5 249.5 70.0] (388.0x243.0x70.0)",
|
||||
"说明": "防倾翻超大底盘:385x240mm超长力臂+48mm立柱套筒+前后双向大三角抗倾翻斜撑筋+走线导槽+6xM6固定槽"
|
||||
},
|
||||
{
|
||||
"件号": "P03_肩吊臂",
|
||||
@@ -44,8 +44,8 @@
|
||||
"名称": "大臂旋转座(深度圆角版:16层Loft+内部L转角2mm倒角+动态零干涉)",
|
||||
"类型": "3D打印",
|
||||
"数量": 1,
|
||||
"体积cm3": 162.9,
|
||||
"质量g_PLA": 202.0,
|
||||
"体积cm3": 159.5,
|
||||
"质量g_PLA": 197.8,
|
||||
"包络": "[-16.5 93.0 389.0 .. 53.5 174.0 525.0] (70.0x81.0x136.0)",
|
||||
"说明": "V2圆角:Loft外轮廓R=10mm,L型转角内部2mm倒角,彻底清除立壁保证J2全角度0干涉"
|
||||
},
|
||||
@@ -74,8 +74,8 @@
|
||||
"名称": "腕部转接座(深度圆角版:16层Loft+内部L转角2mm倒角+动态零干涉)",
|
||||
"类型": "3D打印",
|
||||
"数量": 1,
|
||||
"体积cm3": 163.1,
|
||||
"质量g_PLA": 202.3,
|
||||
"体积cm3": 160.0,
|
||||
"质量g_PLA": 198.4,
|
||||
"包络": "[-16.5 93.0 120.0 .. 53.5 174.0 257.0] (70.0x81.0x137.0)",
|
||||
"说明": "V2圆角:Loft外轮廓R=10mm,L型转角内部2mm倒角,彻底清除立壁保证J5全角度0干涉"
|
||||
},
|
||||
|
||||
+91
-43
@@ -156,40 +156,104 @@ def split_p01_stack(p01):
|
||||
|
||||
|
||||
def p_base_foot():
|
||||
"""P02_测试台架底座 (后置防倾翻大底盘):
|
||||
1. 260x220x22mm 重型防倾翻大底盘,中心在 (-55.0, 128.0);
|
||||
2. 立柱安装沉槽设在 (-115.0, 128.0),深度 12mm;
|
||||
3. 四个边角各设有一组 28x7mm 的 M6 夹持腰槽;
|
||||
4. 底部隐蔽走线通槽;
|
||||
5. 四周棱角全部采用 R=16mm 大圆角过渡与 2.5mm 上边缘倒角。
|
||||
"""P02_底脚 (重型防倾翻超长力臂底座 + 双向大截面三角加强斜撑筋):
|
||||
1. 底盘尺寸大幅扩展为 385x240x22mm (X: -240.0..+145.0, Y: 8.0..248.0);
|
||||
- 前向延伸至 X = +145.0mm (在手臂垂直投影前方 91.5mm),彻底杜绝手臂前伸与抓握重物时的前倾翻;
|
||||
- 后向延伸至 X = -240.0mm (在立柱后方 92.0mm),抵御大动态回程后仰力矩;
|
||||
2. 立柱插接套筒由 12mm 浅槽大幅升级为 48mm 高加固套筒 (Z: 22.0..70.0mm,外壁厚 7mm);
|
||||
3. 前向大三角加强斜撑筋 (Z: 68.0->22.0mm, X: -75.0->-15.0mm, 宽 38mm),抗弯力臂长达 60mm,留足安全间隙不干涉手臂运动;
|
||||
4. 后向大三角加强斜撑筋 (Z: 70.0->22.0mm, X: -155.0->-225.0mm, 宽 38mm),抗后仰力臂长达 70mm;
|
||||
5. 前斜撑表面设 18mm 宽平滑走线导槽,与 P01 下部走线窗口自然贯通;
|
||||
6. 6 组 M6 工业工作台紧固腰槽 (28x7mm) + 底部隐蔽走线槽;
|
||||
7. 四周 R=18mm 大圆角过渡与 2.5mm 上边缘倒角。
|
||||
"""
|
||||
z0 = 0.0
|
||||
z1 = 22.0
|
||||
base_plate = (cq.Workplane("XY", origin=(-55.0, Y_COL, z0))
|
||||
.rect(260.0, 220.0)
|
||||
x_rear = -240.0
|
||||
x_front = 145.0
|
||||
x_len = x_front - x_rear # 385.0
|
||||
x_mid = (x_rear + x_front) / 2.0 # -47.5
|
||||
y_width = 240.0
|
||||
|
||||
# 1. 主底盘 (385 x 240 x 22 mm)
|
||||
base_plate = (cq.Workplane("XY", origin=(x_mid, Y_COL, z0))
|
||||
.rect(x_len, y_width)
|
||||
.extrude(z1)
|
||||
.edges("|Z").fillet(16.0)
|
||||
.edges("|Z").fillet(18.0)
|
||||
.edges(">Z").fillet(2.5)).val()
|
||||
s = cq.Shape(base_plate.wrapped)
|
||||
|
||||
socket_box = (cq.Workplane("XY", origin=(X_COL, Y_COL, z1 - 12.0))
|
||||
.rect(67.0, 67.0)
|
||||
.extrude(13.0)
|
||||
.edges("|Z").fillet(6.5)).val()
|
||||
# 2. 立柱外包加固套筒 (Z: 22.0..70.0 mm, 外廓 80x80mm)
|
||||
z_collar_top = 70.0
|
||||
collar_outer = (cq.Workplane("XY", origin=(X_COL, Y_COL, z1))
|
||||
.rect(80.0, 80.0)
|
||||
.extrude(z_collar_top - z1)
|
||||
.edges("|Z").fillet(8.0)
|
||||
.edges(">Z").chamfer(2.0)).val()
|
||||
s = s.fuse(cq.Shape(collar_outer.wrapped))
|
||||
|
||||
# 3. 前向抗倾翻三角加强斜撑筋 (Front Triangular Gusset Rib)
|
||||
f_pts = [
|
||||
(-75.0, z1),
|
||||
(-15.0, z1),
|
||||
(-15.0, z1 + 4.0),
|
||||
(-75.0, 68.0),
|
||||
]
|
||||
f_rib = (cq.Workplane("XZ", origin=(0, Y_COL, 0))
|
||||
.polyline(f_pts).close()
|
||||
.extrude(19.0, both=True)).val()
|
||||
s = s.fuse(cq.Shape(f_rib.wrapped))
|
||||
|
||||
# 4. 后向抗倾翻三角加强斜撑筋 (Rear Triangular Gusset Rib)
|
||||
r_pts = [
|
||||
(-155.0, z1),
|
||||
(-225.0, z1),
|
||||
(-225.0, z1 + 4.0),
|
||||
(-155.0, 70.0),
|
||||
]
|
||||
r_rib = (cq.Workplane("XZ", origin=(0, Y_COL, 0))
|
||||
.polyline(r_pts).close()
|
||||
.extrude(19.0, both=True)).val()
|
||||
s = s.fuse(cq.Shape(r_rib.wrapped))
|
||||
|
||||
# 5. 前斜撑表面走线导槽 (与 P01 前走线窗 Z=70..140mm 自然顺接)
|
||||
wire_guide_pts = [
|
||||
(-75.5, z1 + 1.0),
|
||||
(-14.0, z1 + 1.0),
|
||||
(-14.0, z1 + 4.0),
|
||||
(-75.5, 68.5),
|
||||
]
|
||||
wire_guide = (cq.Workplane("XZ", origin=(0, Y_COL, 0))
|
||||
.polyline(wire_guide_pts).close()
|
||||
.extrude(9.0, both=True)).val()
|
||||
s = s.cut(wire_guide)
|
||||
|
||||
# 6. 立柱深插槽内腔 (Pocket: 66.6 x 66.6 mm, 留 0.3mm 精密滑配间隙)
|
||||
socket_box = (cq.Workplane("XY", origin=(X_COL, Y_COL, 10.0))
|
||||
.rect(66.6, 66.6)
|
||||
.extrude(z_collar_top - 10.0 + 1.0)
|
||||
.edges("|Z").fillet(6.3)).val()
|
||||
s = s.cut(socket_box)
|
||||
|
||||
# 7. 4x M5 底部垂直紧固螺栓孔与沉孔
|
||||
for xx in (X_COL - 21.0, X_COL + 21.0):
|
||||
for yy in (Y_COL - 21.0, Y_COL + 21.0):
|
||||
th = cyl(2.75, -0.01, z1 - 11.0, xx, yy)
|
||||
th = cyl(2.75, -0.01, 10.5, xx, yy)
|
||||
cb = cyl(5.0, -0.01, 6.0, xx, yy)
|
||||
s = s.cut(th).cut(cb)
|
||||
|
||||
for cx in (-160.0, 50.0):
|
||||
for cy in (Y_COL - 75.0, Y_COL + 75.0):
|
||||
plane = cq.Plane(origin=(cx, cy, -0.01), xDir=(0, 1, 0), normal=(0, 0, 1))
|
||||
slot = cq.Workplane(plane).slot2D(28.0, 7.0).extrude(z1 + 1.0).val()
|
||||
s = s.cut(slot)
|
||||
|
||||
# 8. 6 组 M6 工业工作台紧固腰槽 (28 x 7 mm)
|
||||
slot_positions = [
|
||||
(-215.0, Y_COL - 85.0), (-215.0, Y_COL + 85.0), # 后部两角
|
||||
(-47.5, Y_COL - 95.0), (-47.5, Y_COL + 95.0), # 中部两侧
|
||||
(120.0, Y_COL - 85.0), (120.0, Y_COL + 85.0), # 前部两角
|
||||
]
|
||||
for cx, cy in slot_positions:
|
||||
plane = cq.Plane(origin=(cx, cy, -0.01), xDir=(0, 1, 0), normal=(0, 0, 1))
|
||||
slot = cq.Workplane(plane).slot2D(28.0, 7.0).extrude(z1 + 1.0).val()
|
||||
s = s.cut(slot)
|
||||
|
||||
# 9. 底部隐蔽走线通槽
|
||||
wire_ch = (cq.Workplane("XY", origin=(X_COL, Y_COL - 80.0, -0.01))
|
||||
.rect(28.0, 100.0)
|
||||
.extrude(6.0)).val()
|
||||
@@ -543,30 +607,14 @@ def make_pitch_to_roll_bracket(j_pitch, j_roll, z_pitch, z_r, name="bracket"):
|
||||
cb = cyl(2.8, 58.0, 74.0 + 40.0, u, v)
|
||||
s = s.cut(j_pitch.L(th)).cut(j_pitch.L(cb))
|
||||
|
||||
# 11. 竖直臂前侧外角倒角(5mm):平滑消除圆柱体以外的两侧垂直尖角
|
||||
c_size = 5.0
|
||||
c_left = (cq.Workplane("XY", origin=(HL.X_ARM - 35.0, y_hub_in, z_plate))
|
||||
.moveTo(-0.1, -0.1)
|
||||
.lineTo(c_size, -0.1)
|
||||
.lineTo(-0.1, c_size)
|
||||
.close()
|
||||
.extrude(z_pitch - z_plate + 10.0))
|
||||
c_right = (cq.Workplane("XY", origin=(HL.X_ARM + 35.0, y_hub_in, z_plate))
|
||||
.moveTo(0.1, -0.1)
|
||||
.lineTo(-c_size, -0.1)
|
||||
.lineTo(0.1, c_size)
|
||||
.close()
|
||||
.extrude(z_pitch - z_plate + 10.0))
|
||||
s = s.cut(c_left.val()).cut(c_right.val())
|
||||
|
||||
# 12. L 型转角连接处倒角过渡(倒角 2.0mm):
|
||||
# 平滑消除立柱顶面与竖直臂交汇处的 90° 尖角与应力集中,严控动间隙保证动态零干涉
|
||||
# 11. L 型转角连接处圆角过渡(圆角 R=2.0mm):
|
||||
# 平滑消除立柱顶面与竖直臂交汇处的 90° 尖角与应力集中
|
||||
try:
|
||||
wp_s = cq.Workplane(obj=s)
|
||||
sel_l = cq.NearestToPointSelector((HL.X_ARM, y_hub_in, z_plate))
|
||||
s = wp_s.edges(sel_l).chamfer(2.0).val()
|
||||
except Exception:
|
||||
pass
|
||||
s = wp_s.edges(sel_l).fillet(2.0).val()
|
||||
except Exception as e:
|
||||
print(f"[{name}] L型转角圆角异常: {e}")
|
||||
|
||||
return s
|
||||
|
||||
@@ -863,8 +911,8 @@ def build():
|
||||
parts_to_build = [
|
||||
("P01_胸板", "胸腔支撑立柱(高刚性箱型梁+榫卯台座+走线窗)", lambda: p_chest(), 0x4b5563,
|
||||
"V2高刚度立柱:66x66mm厚壁封闭箱梁+8mm壁厚+顶部P03榫卯台座+两组大圆角工艺走线窗"),
|
||||
("P02_底脚", "测试台架底座(高刚度抗倾覆底盘+嵌装定位槽)", lambda: p_base_foot(), 0x374151,
|
||||
"V2加长大底盘:200x320mm重型防倾覆底座+12mm嵌装槽+4xM6夹持槽+底部走线槽"),
|
||||
("P02_底脚", "测试台架底座(重型防倾翻超长力臂+双向三角斜撑版)", lambda: p_base_foot(), 0x374151,
|
||||
"防倾翻超大底盘:385x240mm超长力臂+48mm立柱套筒+前后双向大三角抗倾翻斜撑筋+走线导槽+6xM6固定槽"),
|
||||
("P03_肩吊臂", "肩关节安装悬臂(高强多肋+前置电机锁紧法兰版)", lambda: p_girdle(j1), 0x4b5563,
|
||||
"高强多肋机架:10mm后置法兰+双侧8mm大三角加强筋+下腹12mm抗弯龙骨筋+前向电机全包托架与前置止脱锁紧法兰(4xM3止脱螺孔)+双侧大散热窗与对流槽"),
|
||||
("P04_肩叉", "肩叉(加长避让顺滑流线版)", lambda: p_fork(j1, j2), 0x2563eb,
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
+7
-7
File diff suppressed because one or more lines are too long
+7
-7
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user