kendama op• 資料種類:table → any
• 呼叫: import fullseye as fs; fs.ledger.catch_plan_staged(kp: 'dict', *, v_max: 'float' = 2.0, a_max: 'float' = 20.0, g: 'float' = None, margin: 'float' = 0.005, absorb_time: 'float' = None, absorb_depth: 'float' = 0.02)(要直接呼叫實作,import kendama; kendama.catch_plan_staged(kp: 'dict', *, v_max: 'float' = 2.0, a_max: 'float' = 20.0, g: 'float' = None, margin: 'float' = 0.005, absorb_time: 'float' = None, absorb_depth: 'float' = 0.02);從台帳取用則 opsdrive.get("catch_plan_staged"))
明確分階段的接球控制(大皿、小皿、中皿、蠟燭使用同一計畫:皿的朝向取自 kp 中招式的姿態)。回傳 plan(t, p, v, cup_state) → dict(kendama_simulate 的 catch_plan)。
階段(仿照人的訣竅「用膝蓋往正上方拉起,繩鬆弛後把皿水平運到球的正下方,著地時下降吸收衝擊(不去撈,而是等待)」):
0. lift / wait(kendama_simulate 端): 甩起期間與鬆弛之前不呼叫計畫 = 鬆弛後才動。
1. hold: 在球的下端高出劍玉最高處(手邊 + kp["top_offset"],+ margin)之前不移動皿(劍無法推球,所以不讓劍靠近上升中的球。若軌道使球升不到那裡,則維持 hold = 不接)。
2. carry: 將皿保持目前高度水平地運到球落在緣上之點的正下方: 球心下降到「皿的中心 + h_c·軸」的時刻 τ (z(τ) = 皿的高度 + h_c·a_z 的較晚根 = 過了頂點正在下降)時球的 xy 減去 h_c·(a_x, a_y) 的點。
3. absorb: 從著地前 absorb_time(預設 √(absorb_depth / a_max) = bang-bang 下降動作的折返時間)開始,將目標下降 absorb_depth: 著地瞬間皿以最高速 √(a_max·absorb_depth)(20 m/s²、2 cm 時為 0.63 m/s)向下移動 = 減少相對速率。absorb_time 取得太長,皿會在著地前降到底而停止,球則相應落得更深而變快(0.06 s 時 4 種招式都在緣上彈開 —— 經實測後否決)。
回傳值 {"target" (皿の中心の目標), "stage", "landing" (玉が縁に乗る点の真下の皿の中心), "t_land", "wait" (hold の残り), "feasible", "apex", "travel"}。頂點達不到落在緣上高度的軌道為 feasible=False 並 hold。限制(誠實揭露): 皿的姿勢依招式固定(不轉手腕迎球),預測不計入阻力(每次從感知重新來過)。
空輸入(kp 為空 dict)會引發 ValueError。
• 範例資料目錄(下載 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_plan
*Provenance: kendama.py — DRIVE 運算子登記表。本條目由 tools/opdocs.py md 自動產生(請勿手動編輯)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.