CASE STUDY / DYNAMIC TRACKING
動きの質が変わった瞬間 — 二重の壁を越えた追従収束
Log#5/#6 → Log#7 / DESCEND 把持失敗の根因が、Z符号反転と Pi 常駐デーモンの二段で初めて解けた
| ケース | sign | dZ | mm/deg |
|---|---|---|---|
| A: j1単独 | +1 | -5.80mm | -2.902 |
| A: j1単独 | -1 | +7.70mm | -3.849 |
| B: j2単独 | +1 | -3.27mm | -1.634 |
| B: j2単独 | -1 | +6.03mm | -3.016 |
| C: j4単独 | +1 | -2.00mm | -1.000 |
| C: j4単独 | -1 | +2.59mm | -1.297 |
| D: 連動 (j1+,j2+,j4-) | +1 | -12.64mm | -6.320 |
| D: 連動 (j1-,j2-,j4+) | -1 | +10.82mm | -5.412 |
設計時の仮定「j1+, j2+, j4- でリーチが伸びて Z+ 方向に動く」は実機計測と完全に逆だった。 4日間「diff_z が縮まらない」を SSH オーバーヘッドのせいにしていた背後で、本当の原因は方向そのものだった。 仮説で詰める前に、測れる手段を持つこと。
Z符号修正だけでは収束しなかった。デーモン化だけでも収束しなかった。 両方を入れて初めて、ループが本来のレートで動き始めた。
| 観察項目 | Log#5 / Log#6 | Log#7 |
|---|---|---|
| 追従収束 | 起きない | t=1.7s で 2D=2.9mm |
| LOOP_TIME | 6-8s → 0.13s | 0.094-0.207 s |
| Connect failed | 頻発/スロットル抑止 | 構造的にゼロ |
| Pi python3 数 | 4 → 13+ | 5 で安定 |
| 動きの質 | 探索が暴走 | スッと寄って止まる |
残課題: DESCEND 前後の get_angles が空リストを返し IndexError で停止。pymycobot の既知挙動。 daemon 側にリトライ追加と空リスト耐性を持たせて次セッションに引き継ぐ。