pure_pursuit_circle_offset — DRIVE lateral op

• 資料種類:無 → table(僅由參數決定的運算子 —— 不接受影像或資料輸入)

• 呼叫: import fullseye as fs; fs.ledger.pure_pursuit_circle_offset(radius: 'float', lookahead: 'float', wheelbase: 'float', *, understeer: 'float' = 0.0, speed: 'float' = 0.0, params: 'Optional[dict]' = None) -> 'Dict[str, float]'(要直接呼叫實作,import drivelateral; drivelateral.pure_pursuit_circle_offset(radius: 'float', lookahead: 'float', wheelbase: 'float', *, understeer: 'float' = 0.0, speed: 'float' = 0.0, params: 'Optional[dict]' = None) -> 'Dict[str, float]';從台帳取用則 opsdrive.get("pure_pursuit_circle_offset"))

用法

以 pure pursuit(以後軸中心為基準)追蹤定常圓(半徑 R)時的穩態圓半徑 ρ 與橫向偏差 ρ − R(向外為正)。

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

運動学 + アンダーステア(params = None): 指令の舵角 δ = L κ_cmd に対し実際の曲率が κ_cmd / (1 + K v²/L) になるとすると、同心円の定常で ρ = √(R² + (K v²/L) L_d²)(この版で導いた閉形式)。K = 0 なら ρ = R(横ずれ 0)。

線形 2 輪等価モデル(params を与える。δ = atan(L κ_cmd)): 定常では車体の向きが後車軸の速度(円の接線)より後軸の横すべり角 α_r = m l_f a_y / (C_r L) だけ内を向くので、注視点の見える角が α_r 減る。定常の関係(δ = L/R_c + K u²/R_c、β、回転の中心)を重心の旋回半径 R_c の 1 変数の方程式にして二分法で解く(半閉形式)。運動学の式はこの効果を落とすので横ずれを小さく見積もる(PoC では約半分)。

Raises ValueError: R, L_d, L ≤ 0、注視点が円に届かない、1 + K v²/L ≤ 0、params で v ≤ 0.5。

參考(範例資料、文獻)

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

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

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

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

• poc_driving_lateral — py -3.11 examples/poc_driving_lateral.py

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

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

同類別(lateral)

friction_circle_usage · curve_speed_limit · design_min_radius · understeer_gradient · steady_cornering · bicycle_model_step · ackermann_steer_angles · offtracking_circle


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

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