long op• 資料種類:scalar × scalar → table
• 呼叫: import fullseye as fs; fs.ledger.stop_line_plan(v: 'float', dist_to_line: 'float', theta: 'float' = 0.0, params: 'Optional[dict]' = None, t0: 'float' = 0.0, margin: 'float' = 0.5, A1: 'float' = 1.5, A2: 'float' = 2.5, split: 'float' = 0.5) -> 'Dict[str, object]'(要直接呼叫實作,import drivelong; drivelong.stop_line_plan(v: 'float', dist_to_line: 'float', theta: 'float' = 0.0, params: 'Optional[dict]' = None, t0: 'float' = 0.0, margin: 'float' = 0.5, A1: 'float' = 1.5, A2: 'float' = 2.5, split: 'float' = 0.5) -> 'Dict[str, object]';從台帳取用則 opsdrive.get("stop_line_plan"))
從感知瞬間(時刻 t0,前端到停止線的距離 dist_to_line,速度 v)出發,規劃在停止線前 margin 處停下的2 段制動。
階段:反應(ρ,保持速度)→ [必要時保持速度等待(cruise)] → 第 1 段(減速度的常數部分 A1,直到速度降到 split·v) → 第 2 段(A2,直到停止)→ 保持。將制動分為 2 段,是為了符合通知中的「未分幾次踩煞車」(制動操作不當)。來不及時,以閉式重新求解第 2 段減速度(ln 公式,k > 0 時也精確);若僅第 1 段就足夠距離,則 1 段停止(stages = 1)。若在上限(min(a_brake_max, μ g cos θ))處封頂,則 saturated = True,預測按封頂值給出。坡度在區間內取恆定的 θ(停止區間不跨越坡度的折點)。
dict : phases((t_start, kind, drive, brake) 的列表,kind = react / cruise / brake1 / brake2)、t_breaks、
stages、predicted_gap(停下時前端到停止線的距離。負 = 越線)、t_stop、saturated、theta、d_react, d_cruise, d_brake。
Raises ValueError:v ≤ 0、非有限、split ∉ (0, 1)、A1、A2 ≤ 0。
• 範例資料目錄(下載 URL / 授權) —— 2-D 用 skimage.data(BSD/公有領域)加合成圖,3-D 給出真實資料源(Stanford/PDS 等)的下載 URL。
• 運算子來歷與參考文獻 —— 該運算子族所依據的研究/方法出處。
• 演算法的正典(作者、年份)與用途見上面的族使用指南。
• poc_driving_longitudinal — py -3.11 examples/poc_driving_longitudinal.py
• poc_driving_weather — py -3.11 examples/poc_driving_weather.py
table 作為輸入)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
long)long_params · road_profile · road_eval · long_simulate · long_energy_residual · stopping_distance_grade · plan_command · hill_hold_brake_min
*Provenance: drivelong.py — DRIVE 運算子登記表。本條目由 tools/opdocs.py md 自動產生(請勿手動編輯)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.