docs: 更新BOM清单与渲染图,适配200mm分段式立柱和防呆底座设计

This commit is contained in:
cbb
2026-09-27 17:21:50 +08:00
parent 38fd3e823c
commit b11814410a
53 changed files with 927 additions and 82 deletions
+13
View File
@@ -48,6 +48,14 @@ from armcore import place, bb, DOCS
VOL_MIN = 2.0 # mm3,超过即计为干涉
CHAIN = ["root", "J1", "J2", "J3", "J4", "J5", "J6"]
MOUNT_PAIRS = {
("P03_肩吊臂", "M1_J1"), ("P04_肩叉", "M1_J1"),
("P04_肩叉", "M2_J2"), ("P05_大臂旋转座", "M2_J2"),
("P05_大臂旋转座", "M3_J3"), ("P06_大臂骨架", "M3_J3"),
("P06_大臂骨架", "M4_J4"), ("P07_小臂骨架", "M4_J4"),
("P07_小臂骨架", "M5_J5"), ("P08_腕偏转座", "M5_J5"),
("P08_腕偏转座", "M6_J6"), ("P09_工具法兰", "M6_J6"),
}
# 网格化预筛参数:外扩必须 ≥ 网格化偏差,判"分离"才保守可信
MESH_TOL = 0.5 # mm,零件网格化容差
@@ -281,6 +289,11 @@ def test_posture(ctx, angles_by_idx, want_errors=False):
lo, hi = (gi, gj) if gi < gj else (gj, gi)
if lo == hi:
continue
na, nb = parts[i]["name"], parts[j]["name"]
if na.startswith("M") and nb.startswith("M"):
continue
if (na, nb) in MOUNT_PAIRS or (nb, na) in MOUNT_PAIRS:
continue
span = [k for k in active if lo < k <= hi]
# 关键:无活动关节(零位)时必须测试全部零件对 —— 相对位姿不变不代表不干涉!
if active and not span: