デュアルアーム並列シミュレーション
24/24
TOTAL SUCCESS — ARM0 × ARM1 × 12 PATTERNS
ARM 0
mecharm270m5_0_0
12 / 12 SUCCESS
approach standard / high / low / side
place_err 0.0 ~ 0.2 mm
j_lag_max 8.6 ~ 19.8°
direction → 右へ配置
ARM 1
mecharm270mpi_1_0
12 / 12 SUCCESS
approach standard / high / low / side
place_err 0.0 ~ 0.02 mm
j_lag_max 8.6 ~ 19.8°
direction ← 左へ配置(反転)
ARM 0 ARM 1 mecharm270m5_0_0 mecharm270mpi_1_0 MIRROR 12/12 SUCCESS 12/12 SUCCESS

2体が逆方向にアプローチ。コードは共通、CSVが異なる。

ARM 0 — mecharm270m5_0_0
positionX = 0
csvFoldermotions/
cupcoffeecup_3
cup X-0.15
place X+0.15
j0 GRASP+38.51°
direction左→右
TrajectoryFollower.cs 共通
ARM 1 — mecharm270mpi_1_0
positionX = -1
csvFoldermotions_arm1/
cupcoffeecup_3_arm1
cup X-0.85
place X-1.15
j0 GRASP-38.51°
direction右→左(反転)
KEY INSIGHT

コードの変更はゼロ。cupInitPos をStart()で動的記録し、 csvFolderPath をInspectorで指定。 同一スクリプトが独立したインスタンスとして動作する。

📄
generate_
motions.py
→
🔄
j0 反転
±符号
→
📄
generate_
motions_arm1.py
→
📊
motions_arm1/
12 CSV
PARAMETER DIFF — arm0 vs arm1
KEY
ARM 0
ARM 1
GRASP j0
+38.51°
-38.51°
LIFT j0
+40°
-40°
PLACE_HIGH j0
-55°
+55°
result
12/12 ✓
12/12 ✓