锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

【自动驾驶】后轮位置反馈实现轨迹跟踪

时间:2023-04-03 23:37:00 evr高压直流继电器

文章目录

  • 参考资料
  • 1. 基本概念
  • 2. 李雅普诺夫判断稳定
  • 3. python代码实现
    • 3.1 车辆模型
    • 3.2 设置相关参数
    • 3.3 产生轨迹曲线
    • 3.4 角度归一化
    • 3.5 实现后轮反馈控制算法
    • 3.6 主函数

参考资料

  • 自动驾驶规划控制概述
  • A Survey of Motion Planning and Control Techniques for Self-Driving Urban Vehicles
  • https://zhuanlan.zhihu.com/p/46377932
  • pythonRobotics
  • Frenet整理坐标推导过程
  • Frenet学习坐标系相关知识系统
  • 反馈后轮位置
  • 后轴反馈控制——frenet坐标的应用

1. 基本概念

后轮反馈控制(Rear wheel feedback)是利用后轮中心的跟踪偏差计算转向控制量的方法。

如图所示,参考轨迹上最接近车辆后轴中心的点 ( x r e f , y r e f ) (x_{ref},y_{ref}) (xref,yref)为:
s ( t ) = arg min γ ∥ ( x r ( t ) , y r ( t ) ) ? ( x r e f ( γ ) , y r e f ( γ ) ) ∥ (1) \tag{1} s(t)=\arg \min _{\gamma}\left\|\left(x_{r}(t), y_{r}(t)\right)-\left(x_{r e f}(\gamma), y_{r e f}(\gamma)\right)\right\| s(t)=argγmin (xr(t),yr(t)) (xref(γ),yref(γ)) (1)
其中, ( x r ( t ) , y r ( t ) ) \left(x_{r}(t), y_{r}(t)\right) (xr(t),yr(t)) 代表 t t t 时刻车辆后轴中心位置坐标, ( x r e f ( γ ) , y r e f ( γ ) ) \left(x_{r e f}(\gamma), y_{r e f}(\gamma)\right) (xref(γ),yref(γ)) 代表参考路径上离车辆后 轴距离最近点的位置坐标, s ( t ) s(t) s(t) 代表 t t t 时刻与车辆后轴中心点距离最近参考轨迹点的位置参数 γ \gamma γ
在这里插入图片描述

参考路径在 s ( t ) s(t) s(t) 参数处的单位切向量为
t ⃗ = ( ∂ x r e f ∂ s ∥ s ( t ) , ∂ y r e f ∂ s ∥ s ( t ) ) ∥ ( ∂ x r e f ( s ( t ) ) ∂ s , ∂ y r e f ( s ( t ) ) ∂ s ) ∥ = ( t x , t y ) (2) \tag{2} \vec{t}=\frac{\left(\frac{\partial x_{r e f}}{\partial s}\left\|_{s(t)}, \frac{\partial y_{r e f}}{\partial s}\right\|_{s(t)}\right)}{\left\|\left(\frac{\partial x_{r e f}(s(t))}{\partial s}, \frac{\partial y_{r e f}(s(t))}{\partial s}\right)\right\|}=\left(t_{x}, t_{y}\right) t =(sxref(s(t)),syref(s(t)))(sxrefs(t),syrefs(t))=(tx,ty)(2)
跟踪误差向量表示如下:
d ⃗ ( t ) = ( x r ( t ) − x r e f ( s ( t ) ) , y r ( t ) − y r e f ( s ( t ) ) ) = ( d x , d y ) (3) \tag{3} \vec{d}(t)=\left(x_{r}(t)-x_{r e f}(s(t)), y_{r}(t)-y_{r e f}(s(t))\right)=\left(d_{x}, d_{y}\right) d (t)=(xr(t)xref(s(t)),yr(t)yref(s(t)))=(dx,dy)(3)
所以跟踪误差向量 d ⃗ \vec{d} d 和参考路径上最近点的单位切向量 t ⃗ \vec{t} t 的叉积为
e ⃗ = t ⃗ × d ⃗ = ∣ t x t y d x d y ∣ = t x d y − t y d x (4) \tag{4} \vec{e}=\vec{t} \times \vec{d}=\left|\begin{array}{cc} t_{x} & t_{y} \\ d_{x} & d_{y} \end{array}\right|=t_{x} d_{y}-t_{y} d_{x} e =t ×d =txdxtydy=txdytydx(4)

关于车辆航向向量与目标路径切向量的夹角 ψ e \psi_{e} ψe 如下:
ψ e ( t ) = ψ − arctan ⁡ ∂ y r e f ( s ( t ) ) / ∂ s ∂ x r e f ( s ( t ) ) / ∂ s (5) \tag{5} \psi_{e}(t)=\psi-\arctan \frac{\partial y_{r e f}(s(t))/\partial s} {\partial x_{r e f}(s(t))/\partial s} ψe(t)=ψarctanxref(s(t))/sy元器件数据手册
IC替代型号,打造电子元器件IC百科大全!

相关文章