com_support_margin — DRIVE locomotion op

• Data kinds: vector × points → measurement

• Call: import fullseye as fs; fs.ledger.com_support_margin(com_xy, contacts, ground=None, contact_tol: 'float' = 0.02) -> 'float' (implementation को सीधे call करना हो तो import locomotion; locomotion.com_support_margin(com_xy, contacts, ground=None, contact_tol: 'float' = 0.02) -> 'float', registry से लेना हो तो opsdrive.get("com_support_margin"))

• GPU: नहीं (केवल CPU reference implementation)

उपयोग

Static stability margin: COM के ground-projection से support-polygon की सीमा तक signed दूरी (McGhee & Frank 1968)।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

com_xy is the COM projected onto the ground (x, y). Positive = the COM is inside the support polygon by that margin (statically stable, larger = safer); negative = outside (tipping). Returns the margin in world units (-inf if the polygon is degenerate / has no area).

★ground / contact_tol are forwarded to support_polygon — pass them (floor level z or plane [a, b, c, d]) so airborne feet are excluded. Without them the contacts are used as given and a lifted foot can turn a tipping robot into a "stable" one; pre-filter with contact_points in that case.

★2 足支持(線分)と 1 足(点)では面積が無いので -inf を返す(この値は変えない —— 変えると破壊的変更)。線分・点までの余裕が要るときは support_line_margin。Two-foot (segment) and one-foot support return -inf by contract; use support_line_margin for a finite margin there.

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• consumer_hillco — py -3.11 examples/consumer_hillco.py

• consumer_onocollo — py -3.11 examples/consumer_onocollo.py

• physical_ai_perception — py -3.11 examples/physical_ai_perception.py

• walking_ops_tour — py -3.11 examples/walking_ops_tour.py

वे अगले ops जिनसे type जुड़ता है (measurement को input के रूप में लेते हैं)

spin_from_marker_sequence · carla_transform_matrix · carla_pose_to_world · carla_camera_pose · carla_xy_yaw · carla_scene_load · town_chain · osm_parse

इसी category के (locomotion)

contact_points · com_from_silhouette · support_polygon · gait_phase · support_line_margin · lipm_capture_point · capture_margin · gait_step_events


*Provenance: locomotion.py — DRIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

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