HYPOTHESIS A
20 体並列実行時の座標計算誤差
疑い:
FKスキャナは20体並列で動く。各 Robot の World Rotation が違っていれば、ローカル相対化(midpoint - root)が崩れて 97mm 程度の差を生む可能性。
検証:
Hierarchy で 20 体の Inspector を全件確認。Position は格子状に配置されているが、Rotation は全員 (0, 0, 0)。
→ 構造的に問題なし。否定。
HYPOTHESIS B/C
参照 Brep の不一致
疑い:
過去のリネーム作業で Hierarchy 階層が変わり、FKスキャナと TipBrepReader が別の Brep を参照している可能性。
検証:
TipBrepReader Inspector の leftTipBrep / rightTipBrep フィールドをダブルクリックして参照先を辿る。スキャナの FindGripperTipBrep が辿るパス(gripper_left1 → ... → Instance-Def-210103_4302_101 → Brep)と完全一致。
→ 同じ Brep を見ている。否定。
HYPOTHESIS D
物理収束時間の不足
疑い:
FKスキャナは姿勢セット後 0.5 秒で Brep 位置を読む。TipBrepReader は 3 秒待つ。並列負荷下で 0.5 秒は収束しきらない可能性。
検証:
TipBrepReader の Wait Seconds After Set を 3 → 0.5 に変えて再実行。
Wait 3秒 : (0.251820, 0.018492, 0.217731)
Wait 0.5秒: (0.251547, 0.017351, 0.217040)
差 = 約 1.4mm
→ 97mm の説明にならない。否定。
HYPOTHESIS E — CONFIRMED
CSV 生成時と現在で何かが変わった
疑い:
過去の改修で「手首位置基準」から「グリッパ先端 Brep 中点基準」へ座標系を変えた。Unity 側 CSV は更新された。Mac 側 CSV だけが古いまま残っている可能性。
検証:
両 CSV のファイル情報を比較。
Mac 側 : 4/18 10:54、15.7MB、213,313 行
Unity 側: 4/19 06:27、37.5MB、512,088 行
同 angles の行で ee が完全に別物。
差分の正体:
差 = (+69, -24, +64) mm = link6 フランジ → グリッパ先端中点 のオフセット寸法。
→ Mac 側 CSV が改修前のまま放置。確定。