swing_up_plan — DRIVE kendama op

• 資料種類:table → any

• 呼叫: import fullseye as fs; fs.ledger.swing_up_plan(kp: 'dict', *, lift: 'float' = 0.265, T_lift: 'float' = 0.15, kind: 'str' = 'bang', origin=(0.0, 0.0, 0.0), dodge=(0.0, 0.0, 0.0))(要直接呼叫實作,import kendama; kendama.swing_up_plan(kp: 'dict', *, lift: 'float' = 0.265, T_lift: 'float' = 0.15, kind: 'str' = 'bang', origin=(0.0, 0.0, 0.0), dodge=(0.0, 0.0, 0.0));從台帳取用則 opsdrive.get("swing_up_plan"))

用法

手端(皿胴中心;繩的支點和大皿相對它偏移 kp 的 offset 並隨之一起運動)的開迴路軌跡:從 origin 垂直向上以 T_lift 秒提升 lift,之後靜止。回傳值為函式 t → (3,)(t ≤ 0 時為 origin,t ≥ T_lift 時靜止於 origin + lift·ẑ)。

> 以下的詳細說明為原文 —— 摘要與標題已翻譯。

kind="bang": 加速 a = 4·lift/T² を T/2、減速 −a を T/2(速度三角形)。kind="trap": 加速・等速・減速を T/3 ずつ(速度台形、a = 9·lift/(2T²))。玉が昇るには減速の加速度が g を超える必要がある(swing_up_apex が閉形式で答える)。既定 lift = 0.265 m、T = 0.15 s(a = 47 m/s² ≈ 4.8 g、手元の最高速 3.5 m/s)で玉の頂点は大皿の縁の 4.9 cm 上(ひもの有効長 0.42 m、大皿の縁は手元の 35 mm 上: swing_up_apex)。

dodge (3,)(水平): 減速に入って玉が離れた後(bang: T/2 → T、trap: 2T/3 → T)に手元を横へ dodge だけ逃がす(S 字の bang-bang)。玉は皿胴の糸穴の真下から真っ直ぐ昇るので、逃がさないと皿胴・小皿を突き抜ける(物理は玉とけん玉の衝突を解かない —— kendamaworld.kendama_clearance で数える)。逃がした分は catch_plan_ballistic の clearance が玉が大皿の縁より上に出てから戻す。

參考(範例資料、文獻)

• 範例資料目錄(下載 URL / 授權) —— 2-D 用 skimage.data(BSD/公有領域)加合成圖,3-D 給出真實資料源(Stanford/PDS 等)的下載 URL。

• 運算子來歷與參考文獻 —— 該運算子族所依據的研究/方法出處。

• 演算法的正典(作者、年份)與用途見上面的族使用指南。

可執行的範例(實際呼叫該運算子並已驗證的樣例)

• poc_kendama — py -3.11 examples/poc_kendama.py

型別可銜接的下一個運算子(可接受 any 作為輸入)

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

同類別(kendama)

kendama_params · elliptic_k_agm · pendulum_period_exact · pendulum_launch_speed · pendulum_rod_simulate · tether_tension_fixed · tether_slack_angle · swing_up_apex


*Provenance: kendama.py — DRIVE 運算子登記表。本條目由 tools/opdocs.py md 自動產生(請勿手動編輯)。*

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