wrist_load_from_deflection — DRIVE pegfail op

• Data kinds: table × signal × signal × signal × signal × signal → table

• Call: import fullseye as fs; fs.ledger.wrist_load_from_deflection(kp, q_slide, q_hinge, q_hinge_rest, tip_xyz, axis, lg: 'float | None' = None, peg_mass: 'float' = 0.04, com_from_tip: 'float | None' = None, gravity: 'float' = 9.81) -> 'dict' (to call the implementation directly, import pegfail; pegfail.wrist_load_from_deflection(kp, q_slide, q_hinge, q_hinge_rest, tip_xyz, axis, lg: 'float | None' = None, peg_mass: 'float' = 0.04, com_from_tip: 'float | None' = None, gravity: 'float' = 9.81) -> 'dict'; from the registry, opsdrive.get("wrist_load_from_deflection"))

Usage

From the wrist-spring deflection, the load that the support (+ gravity) applies to the peg, taken about the tip (numpy only): F⃗ = −k_t q_slide − m g ẑ, M⃗_tip = −k_r (q_hinge − rest) + (p_hinge − p_tip) × F⃗_spring + (p_com − p_tip) × F⃗_g.

q_slide = (wx, wy, wz) [m] (translation of the wrist relative to the carriage; the carriage does not rotate, so world axes), q_hinge = (wrx, wry, wrz) [rad], q_hinge_rest = rest angle of the spring (tilt of the grasp), lg = from the tip to the hinge (None → peg length), com_from_tip = distance of the centre of gravity from the tip (None → default peg 0.03 kg @ L/2 + head 0.01 kg @ L + 3 mm centre of gravity). The torques of the 3 hinge axes are added as a world vector under the small-angle approximation that the hinge axes align with the world axes (wrist rotation 5° or less). Returns: F (3,), M_tip (3,), F_spring, M_hinge. Raises ValueError: wrong shape, zero axis.

References (sample data, literature)

• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).

• Operator provenance and references — the sources of the research/methods this op family came from.

• The canonical algorithm (author, year) and its uses are named in the family usage guide above.

Runnable examples (verified samples that actually call this op)

• poc_peg_failure_recovery — py -3.11 examples/poc_peg_failure_recovery.py

Ops the type connects to (they accept table as input)

course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same

Same category (pegfail)

insertion_failure_table · insertion_failure_validate · insertion_signature · insertion_failure_classify · insertion_recovery_primitive · jamming_parallelogram_planar · jamming_force_check · wedging_risk


*Provenance: pegfail.py — DRIVE operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*

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