polish_scene_mjcf — DRIVE polish op

• データ種: scalar → any

• 呼び出し: import fullseye as fs; fs.ledger.polish_scene_mjcf(radius: 'float' = 0.008, k_z: 'float' = 500.0, k_xy: 'float' = 20000.0, mass: 'float' = 0.2, friction: 'float' = 0.3, thickness: 'float' = 0.004, timestep: 'float' = 0.0005) -> 'str' (実装を直接呼ぶなら import polish; polish.polish_scene_mjcf(radius: 'float' = 0.008, k_z: 'float' = 500.0, k_xy: 'float' = 20000.0, mass: 'float' = 0.2, friction: 'float' = 0.3, thickness: 'float' = 0.004, timestep: 'float' = 0.0005) -> 'str'、台帳から引くなら opsdrive.get("polish_scene_mjcf"))

使い方

平らな板(z = 0 の平面)の上で、円柱の工具(半径 `radius、厚さ thickness、質量 mass`)を x・y・z の 3 本の直動の

関節で動かす MJCF。z は位置サーボ(ゲイン `k_z [N/m] = 手首の押し付けのばね)、x・y は硬いサーボ k_xy`。重力あり。

ばねの閉形式: 工具の底が板に載っている時の法線力 N = m g + k_z (q_surface − q_cmd)(q_surface = 底が z = 0 に来る関節値)。

接触は硬めに(solref の時定数 = 4 × timestep、solimp 0.99)して、めり込みを ばねの縮みより十分小さくする(既定の柔らかい接触では

質量 0.05 kg・5 N で 0.7 mm めり込み、手首のばねと直列になって力が 6 % 小さく出た —— 実測)。摩擦の錐は角錐(pyramidal)。

楕円の錐 + impratio = 10 では、硬い手首(20 kN/m)で 0.1〜0.36 mm めり込んで力が 17 % 小さく出た(摩擦 0 でも同じ、実測)。

Raises ValueError: 数の検査。

参考(サンプルデータ・文献)

• サンプルデータ カタログ(DL URL / ライセンス) — 2-D は skimage.data(BSD/public)+ 合成、3-D は実データ源(Stanford/PDS 等)の DL URL。

• 演算子の来歴・参考文献 — この op 族の元になった研究/手法の出典。

• アルゴリズムの正典(著者・年)と用途は上記ファミリ使い方ガイドに記載。

実行できる例(この op を実際に呼ぶ検証済みサンプル)

• poc_polish_wipe_measure — py -3.11 examples/poc_polish_wipe_measure.py

型が繋がる次の op(any を入力に取れる)

course_crank · course_s_curve · course_turnaround · course_slope · course_intersection · course_parallel_parking · course_crossing · course_road

同カテゴリ(polish)

preston_pressure_kernel · preston_removal_map · preston_track_profile · wipe_band_width · raster_wipe_area · coat_image · coat_thickness_from_image · wipe_coverage


*Provenance: polish.py — DRIVE operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.