cuttouch op• Datenarten: table × table × table × scalar → table
• Aufruf: import fullseye as fs; fs.ledger.knife_load_from_pads(read_R: 'dict', read_L: 'dict', pad: 'dict', Lz: 'float', edge_slope: 'float' = 0.0, torsion_model: 'str' = 'partial_slip', tare=None, v_min: 'float' = 0.05, na: 'int' = 64) -> 'dict' (die Implementierung direkt: import cuttouch; cuttouch.knife_load_from_pads(read_R: 'dict', read_L: 'dict', pad: 'dict', Lz: 'float', edge_slope: 'float' = 0.0, torsion_model: 'str' = 'partial_slip', tare=None, v_min: 'float' = 0.05, na: 'int' = 64) -> 'dict'; aus dem Register: opsdrive.get("knife_load_from_pads"))
Messwerte von 2 Pads (pegtactile.pad_tactile_read) → Druck V, Zug H und Moment M_x, die die Klinge vom Schnittgut erfährt, sowie die Kontaktposition der Klinge Ly.
Lz [m]: Höhe vom Greifpunkt bis zur Schneide (bei geneigter Klinge der Wert Lz₀ direkt unter dem Greifpunkt; mit edge_slope = Tangens der Schneidenneigung Ly = (M_x + Lz₀ H)/(V + s H)). torsion_model: "partial_slip" (Standard —— korrigiert die über die Haftbeziehung gelesene Torsion mit der numerischen Lösung für Teilgleiten, Modulkopf) / "no_slip" (behält die Lesung ohne Gleiten = Konvention von pegtactile 0.4.0, zum Vergleich). Auch wenn die Lesung der Standard von pegtactile.pad_tactile_read ist (bereits auf Teilgleiten korrigiertes torsion und torsion_no_slip ohne Gleiten), beginnt dieses op beim Wert ohne Gleiten, korrigiert also nicht doppelt. tare: die zwei Lesungen eines Frames in der Luft (read_R, read_L) (oder eine frühere Rückgabe / ein Pad-Wrench {"F": (3,), "M": (3,)}) —— zieht das Gewicht des Messers ab (der Frame in der Luft selbst hat V = 0, Ly ist also unbestimmt; er kann diesem op nicht allein übergeben werden).
Rückgabe: V, H, Mx (Schneidgut → Klinge, Greifersystem), Ly, xi (= H/V), je Pad torsion (korrigierter Wert), torsion_read, torsion_ratio, slip_ratio (Schub |q|/μP), c_over_a, combined_margin = 1 − max(Schubverhältnis + Torsionsverhältnis) (hinreichende Bedingung), readable (auf beiden Pads enthält der Haftkreis den Kern der Lesung), Ly_range_full_slip, Ly_range_readable (Bereich von Ly bis zum vollständigen Gleiten / bis zur Unlesbarkeit, wenn die Kontakt- position sich bei gleichem V, H und Greifkraft verschiebt = Grenze der haltbaren Grifflänge), pad_wrench (Pad → Klinge, vor tare), torsion_model. Raises ValueError: Lesung beschädigt, V ≤ v_min (die Klinge drückt nicht auf das Schneidgut = Ly unbestimmt), Schreibfehler, Lz nicht endlich.
• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).
• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.
• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.
• poc_knife_tactile_toughness — py -3.11 examples/poc_knife_tactile_toughness.py
table als Eingabe)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
cuttouch)torsion_partial_slip · toughness_from_pads
*Provenance: cuttouch.py — DRIVE Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.