无人驾驶的规划与控制(四)——反馈控制

无人驾驶中的决策规划控制技术 作者: 李力耘,刘少山 责编:何永灿,欢迎人工智能领域技术投稿、约稿、给文章纠错,请发送邮件至heyc@youkuaiyun.com 本文为《程序员》原创文章,未经允许不得转载,更多精彩文章请订阅《程序员》 无人车作为一个复杂软硬件结合系统,其安全可靠运行需要车载硬件、传感器集成、感知预测,以及控制规划等多个模块的协同配合工作。作者认为最关键的部分是感知预测和决策控制规划的紧密配合。狭义上... 阅读详情

1 自行车模型

在自行车模型中,我们假设车辆姿态处于一个二维的平面坐标系内,车辆的姿态可以由位移(position)和车身夹角(heading)完全描述,并且前后轮由一个刚性(rigid)轴连接,前轮可转动,后轮只能直行。

自行车模型的一个重要特征是:如果车辆不向前移动,就不能横向位移,称为非完整性约束(nonholonomic constraint)。
在这里插入图片描述

符号含义
e ‾ x , e ‾ y \overline{e}_{x},\overline{e}_{y} ex​,ey​x和y方向的单位向量
p r p_{r} pr​position rear tyre 后轮所在位置的向量
p ˙ r \dot{p}_{r} p˙​r​后轮地面接触点瞬时速度向量
p f p_{f} pf​position front tyre 前轮所在位置的向量
p ˙ f \dot{p}_{f} p˙​f​前轮地面接触点瞬时速度向量
θ \theta θ车身的朝向角,即后轮朝向角 P ˙ r \dot{P}_r P˙r​和 e ‾ x \overline{e}_x ex​的夹角
δ \delta δ方向盘转角,前轮朝向和车身朝向的夹角
l l l刚性轴长度

这样后轮的x方向速度分量 x ˙ r \dot{x}_r x˙r​,y方向速度分量 y ˙ r \dot{y}_r y˙​r​,和朝向角可以表示为:
x ˙ r = v r cos ⁡ ( θ ) \dot{x}_{r}=v_{r} \cos (\theta) x˙r​=vr​cos(θ)

y ˙ r = v r sin ⁡ ( θ ) \dot{y}_{r}=v_{r} \sin (\theta) y˙​r​=vr​sin(θ)

θ = v r tan ⁡ ( δ ) / l \theta=v_{r} \tan (\delta) / l θ=vr​tan(δ)/l

同理,前轮的x方向速度分量 x ˙ f \dot{x}_f x˙f​,y方向速度分量 y ˙ f \dot{y}_f y˙​f​,和朝向角可以表示为:
x ˙ f = v f cos ⁡ ( θ + δ ) \dot{x}_{f}=v_{f} \cos (\theta+\delta) x˙f​=vf​cos(θ+δ)

y ˙ f = v f sin ⁡ ( θ + δ ) \dot{y}_{f}=v_{f} \sin (\theta+\delta) y˙​f​=vf​sin(θ+δ)

θ = v f sin ⁡ ( δ ) / l \theta=v_{f} \sin (\delta) / l θ=vf​sin(δ)/l

前后轮的切向速度满足: v r = v f cos ⁡ ( δ ) v_{r}=v_{f} \cos (\delta) vr​=vf​cos(δ)

在这样的车辆模型下,反馈控制需要解决的问题之一,就是寻找满足车辆动态姿态限制的方向盘转角 δ ∈ [ δ m i n , δ m a x ] \delta\in[\delta_{min},\delta_{max}] δ∈[δmin​,δmax​]和前向速度 v r ∈ [ v m i n , v m a x ] v_r\in[v_{min},v_{max}] vr​∈[vmin​,vmax​]。

2 PID反馈控制

在这里插入图片描述

无人车反馈控制模块的任务,是控制车辆尽可能遵循上游动作规划(轨迹和速度)出的时空轨迹。

这里使用两个PID控制器分别控制方向盘转角 δ \delta δ以及前进速度 v s v_s vs​。

2.1 横向控制

横向控制主要跟踪的变量误差主要是轨迹的横向误差,和角度误差。

在n采样时刻,控制方向盘转角的PID控制器如下:
δ n = K 1 θ e + K 2 l e / V s + K 3 i e + K 4 ∑ i = 1 n l e Δ t \delta_{n}=K_{1} \theta_{e}+K_{2} l_{e} / V_{s}+K_{3} i_{e}+K_{4} \sum_{i=1}^{n} l_{e} \Delta t δn​=K1​θe​+K2​le​/Vs​+K3​ie​+K4​i=1∑n​le​Δt

符号说明
θ e \theta_e θe​当前车朝向,和基准轨迹点(Reference Point)之间的跟踪角度误差
l e l_e le​横向位置和基准点轨迹之间的距离误差
V s V_s Vs​车辆在纵向方向的速度

2.2 纵向控制

纵向控制主要跟踪的速度误差,其中速度误差是轨迹曲率和基准轨迹点曲率的函数:
V e = − f ( k  Vehicle  , k  Reference  ) V_e=-f\left(k_{\text { Vehicle }}, k_{\text { Reference }}\right) Ve​=−f(k Vehicle ​,k Reference ​)
因此前进速度的PID控制器可以写成:
U V = K P V e + K I ∑ V e Δ t + K D Δ V e / Δ t U_{V}=K_{P} V_{e}+K_{I} \sum V_{e} \Delta t+K_{D} \Delta V_{e} / \Delta t UV​=KP​Ve​+KI​∑Ve​Δt+KD​ΔVe​/Δt

符号说明
k  Vehicle  k_{\text { Vehicle }} k Vehicle ​车辆当前的轨迹点曲率
k  Reference  k_{\text { Reference }} k Reference ​基准轨迹点的基准点曲率

参考文章

《第一本无人驾驶技术书》刘少山

在Typora中输入公式

Typora开启行内公式

常用数学符号的 LaTeX 表示方法

一份不太简短的LATEX2ε介绍【精华】

无人驾驶的规划与控制(三)——动作规划(轨迹规划和速度规划) 文章目录1 无人驾驶的动作规划2 轨迹规划2.1 车辆模型2.2 道路定义2.3 候选轨迹生成2.4 根据轨迹点构建有向图并搜索3 速度规划3.1 S-T图算法3.2 设置Cost 1 无人驾驶的动作规划 动作规划的目的:是将上游行为决策(behavior)的宏观指令解释成一条带有时间信息的轨迹曲线(trajectory),最后给底层的反馈控制。 一种简单的思路是,将动作规划问题拆分成两个问题:... 阅读详情

相关推荐

无人驾驶车辆与模型预测控制(三)——模型预测控制算法基础

0 模型预测控制三个步骤 预测模型:根据历史信息、未来输入预测未来输出。 滚动优化:某一性能指标最优,反复在线优化。 反馈校正:基于测量对模型预测进行修正。 图例: 对于参考轨迹1,以时刻k作为当前时刻,预测[K,K+Np]的系统输出,通过求解以某目标的优化问题,得到预测控制量4,以该控制序列的第一个元素作为实际控制量。 下一时刻,重复该过程(滚动)。 根据所用模型不同,模型预测控制分为动态...

qq_41986495的博客 1万+

自动驾驶(五)---------车辆运动学模型

车辆运动学模型 我的定义:正常直线行驶,位置变化等于速度*时间,车辆不是直线行驶,已知速度和方向盘转角等,求新的位置。1.单车模型(Bicycle Model) 其中将左/右前轮合并为一个点,位于A点;将左/右后轮合并为一个点,位于B点;点C为车辆质心点。,O 为...

zhouyy858 3万+

14、自动驾驶中的运动规划与反馈控制详解

本文详细解析了自动驾驶中的运动规划与反馈控制核心模块。首先介绍了基于ST-graph和SL坐标系的纵向与横向运动规划方法,阐述了如何通过优化成本函数生成候选轨迹,并结合行为决策选择最优轨迹。随后,深入探讨了反馈控制中的自行车模型与PID控制器设计,涵盖方向盘角度与速度控制策略。最后总结了自动驾驶规划与控制系统的整体流程与挑战,强调模块化分层解决的重要性。

x8y9z0的博客 76

正北坐标系和车辆坐标系下的heading转换

正北坐标系由组合导航给出,以正北为0,顺时针为正。本车的heading与期望heading 之间的夹角,delta_heading 计算方法如下: function [delta_heading] = CalHeading(heading_desire, heading_current) index_store = 0; index_current = 0; index_store = floo...

gophae的博客 2793

Qwen3-Omni-30B-A3B-Instruct微调指南:如何打造专属智能博物官(附数据集)

本文详细介绍了如何对Qwen3-Omni-30B-A3B-Instruct模型进行微调,以打造专业的智能博物官。指南涵盖了从理解模型架构优势、构建高质量文博数据集,到使用LLaMA-Factory进行实战微调、效果评估与部署优化的完整流程,并提供了关键的环境配置与性能优化建议,帮助开发者在垂直领域高效定制专属AI助手。

weixin_29096377的博客 1143

锐捷交换机配置SSH

锐捷交换机配置ssh 一、组网需求 通过ssh功能可以远程登录管理设备 二、配置步骤 全局开启ssh服务,并且指定ssh版本 Ruijie>enable Ruijie#configure terminal Ruijie(config)#enable service ssh-server ------>开启SSH服务,默认关闭 Ruijie(config)#ip ssh version 2 ------>默认1.99版本,设置为版本2 添加登

Loners_fan的博客 1万+

车辆运动学模型

其中将左/右前轮合并为一个点,位于A点;将左/右后轮合并为一个点,位于B点;O 为OA、OB的交点,是车辆的瞬时滚动中心,线段OA、OB分别垂直于两个滚动轮的方向;β 为滑移角(Tire Slip Angle),指车辆行进方向和轮圈所指方向两者间所成的角度,ψ为航向角(Heading Angle),指车身与X轴的夹角。四轮模型和自行车模型最大得不同就是前轮左右角度不同,但是保证两个前轮得垂线和后轴得垂线相交与一点,具体如何实现是由转向机构来负责,只要知道两个前轮得转角是不一样的。在一般情况下 后轮转角。

weixin_49037446的博客 1002

MIA文献阅读 —— 深度学习在医学图像分析中的最新进展及临床应用【2024】_再现性;深度学习

coderVAEVAEVAE) (Kingma威林,2014)在概率性的工作方式学习观测数据之间的映射空间x∈Rmx∈R^mx∈Rm 和潜在的空间z∈Rnmnz∈Rn(m>>n)。作为一个潜变量模型,VAEVAEVAE制定这个问题作为观察样品的最大化对数似logpxlog∫px∣zpzdzpx∣zp (x | z)p(x∣z)可以很容易地使用神经网络建模,和pzp (z)

2401_84181704的博客 1242

无人驾驶-控制-自行车模型

无人驾驶-控制-自行车模型 一、综述 1.1 简介 在了解高级的车辆控制算法之前,掌握车辆运动模型是非常有必要的。车辆运动模型就 是一类能够描述我们的车辆的运动规律的模型。显然,越复杂的模型就越接近现实中的 车辆运动规律,本节我们一起了解一下两个广泛使用的车辆模型——运动学自行车模型 和动力学自行车模型。 无人驾驶系统往往分成感知,决策和控制三个模块,其中无人车的路径规划和底层控制是工作在不同的层的,路径规划层往往会基于更加高层的(感知层,定位层)的信息和底层的(控制层)的实时信息指定行驶的路径,那么从路径

weixin_47012067的博客 7176

《Sigrity SystemSI 2023+LPDDR4仿真自学笔记》(一)创建工程(Part1)

为了加强SystemSI 2023软件的熟悉度,咱们完整的走一个仿真全流程。

weixin_45199544的博客 6328

组态王与SqlServer数据库交互总结

组态王可以与SqlServer、mysql、acess、oracle等数据库进行数据交互。 本文重点梳理了如何把组态王中的数据保存到SqlServer数据库中,并使用ADO控件对数据库中的数据进行查询。 一、数据存到SQL数据库 1.新建记录体 2、创建表格模板(用于创建数据库中的表格) 3、打开sqlserver,新建数据库 4、创建ODBC数据源 选择自己新建的数据库 5.使用SQLConnect函数连接数据库,SQLCraetTable函数用于在数据库中创建表格 6.使用

逍遥子的博客 2万+

无人驾驶决策控制

近年来,随着人工智能和物联网技术的快速发展,无人驾驶汽车受到学术界、产业界极大关注,无人驾驶概念持续火热。从概念定义来看,智能驾驶汽车是一种自动化载体,能够部分或者全面代替驾驶员进行驾驶行为,无人驾驶汽车是智能汽车发展的最高形态。从原理角度看,无人驾驶控制系统模拟人类的驾驶方式,由传感器、控制器、执行器组成,对应感知、决策、执行三大功能模块。从技术角度看,无人驾驶在实现的过程中需要融合和运用多种技...

SWMLJ的博客 8873

AI产品经理面试宝典第94天:RAG知识库构建与预处理策略面试指南

本文深入解析RAG知识库构建的核心挑战与预处理策略,涵盖文档格式转换、问答对生成及自动化测试全流程,为AI产品经理提供面试必备的实战方法论与避坑指南,助你精准应对技术深度类问题。

打造全国最全的AI Agent开发知识领域的博客 312

无人驾驶汽车系统入门(四)——反馈控制入门,PID控制

前面几篇博客介绍了卡尔曼滤波的一些基本算法,其实目标追踪,定位,传感器融合还有很多问题要处理,这些我们在以后的系列博客中在进一步细讲,现在我想给大家介绍一下无人驾驶汽车系统开发中需要的控制相关的理论和技术,还是和第一篇说的那样,我想到哪就写到哪,追踪和定位等更高级的算法我在后面会继续写。所以感兴趣的同学可以关注我的博客,无人驾驶汽车系统入门系列博客会一直更新下去。 这一篇主要讲控制的入门,为什么需要

AdamShan的博客 3万+

【图像去噪(Image Denoising)】关于【图像去噪】专栏的相关说明,包含适配人群、专栏简介、专栏亮点、阅读方法、定价理由、品质承诺、关于更新、去噪概述、文章目录、资料汇总、问题汇总(更新中)

你是否在全网苦寻【图像去噪(ImageDenoising)】的相关资料?你的目标是否是看懂【图像去噪(ImageDenoising)】的相关论文,复现代码,跑出结果,并试图创新?你是否需要发表【图像去噪(ImageDenoising)】的相关论文毕业?你是否需要做【图像去噪(ImageDenoising)】的相关项目,开发软件,研究算法,获得专利或者软著?只要是与【图像去噪(ImageDenoising)】有关的问题,那么请继续往下看。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 2万+

Android 12 大屏时底下显示任务栏以及虚拟按键靠右问题

Android 12 点大屏时,底下导航栏变成显示任务栏,虚拟按键靠右的分析以及修改

Android系统开发笔记 4686

城市道路自动驾驶车辆运动规划和控制技术综述(1)

城市道路自动驾驶车辆运动规划和控制技术综述 本文为翻译《A survey of motion planning and control techniques for self-driving Urban vehicles》部分内容. I. 引言 主要集中于自动驾驶决策、运动规划和控制,尤其针对level3及以上系统。当代自动驾驶系统中的决策通常分层结构化为路线规划,行为决策...

hgdwdtt的博客 8663

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

无人驾驶运动学模型——线性时变模型预测控制的思路推演过程

无人驾驶运动学模型——线性时变模型预测控制的思路推演过程 在做MPC仿真时,有些代码看不太懂,就去重翻了龚建伟的《无人驾驶车辆模型预测控制》这本书,怎么说呢,这么说吧,应该说它是目前为止讲MPC讲得比较清楚的书了,但是书中的推导过程有些给省略了,我看了好多次了还是看着费劲。昨天我又在B站搜了一下有关模型推导至仿真计算的,B站博主讲了许久,还是讲错了,最后又重新总结修正了下,(说明这个还真不好讲)。所以我看了之后,自己想重新总结一下,一方面是方便我之后复习,另一方面也方便那些第一次学习模型预测控制的同学,好的

百叶书的博客 1万+

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

无人驾驶的规划与控制(一)——路由寻径

文章目录1 无人车规划与控制的模块分类2 路由寻径2.1 把车道划分成Lane序列2.2 建立有向带权图2.3 利用Dijkstra或A*算法搜索 1 无人车规划与控制的模块分类 无人车的规划与控制(Planning & Control)在广义上可以分为4个模块: 路由寻径(Routing) 行为决策(Behavior Decision) 动作规划(Motion Planning) 反馈...

凯哥大数据——刘凯的博客 2809

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

【自动控制】反馈控制与最优控制的不同:原理与案例详解

反馈控制和最优控制是现代控制理论中两类基本而又各具特色的控制策略。尽管它们在许多系统中可以互相融合使用,但在设计理念、信息使用方式、性能指标、系统依赖程度和适用场景等方面存在本质性差异。本文从基本原理出发,系统比较反馈控制与最优控制在结构、方法、作用机制方面的不同,并通过多个典型工程案例,如恒温控制系统、列车节能控制、无人车路径跟踪、火箭姿态调节等,深入说明两者在实际工程中的区别和应用差异,进而揭示不同控制策略的适用条件与发展方向。项目反馈控制(PID)最优控制(轨迹优化)实时调节能力强。

wq6qeg88的博客 1548

自动驾驶控制概况

    Claudine Badue[1]等人以圣西班牙联邦大学(UFES)开发的自动驾驶汽车(Intelligent Autonomous Robotics Automobile,IARA)为例,提出了自动驾驶汽车的自动驾驶系统的典型架构。如图所示,自动驾驶系统主要由感知系统(Perception System)和规划决策系统(Decision Making System)组成。感知系统主要由交通信号检测模块(Traffic Signalization Detector,TSD)、移动目标跟踪模块(Mov

sinat_52032317的博客 4216

【无人驾驶系列十一】无人驾驶中的决策规划控制技术

笔者认为整个无人车广义决策规划控制(Decision,Planning & Control)范畴下的路由寻径(Routing),行为决策(Behavior Decision),动作规划(Motion Planning)以及反馈控制(Feedback Control)等几大模块,在当前的学术和工业界都有一些较为成熟的解决方案可以借鉴。这些解决方案有些有着牢固的理论基础和数学推导,还有的在实际的无人车相关比赛中有着的出色发挥。事实上,我们认为单独看每个层面需要解决的问题,都不是非常困难。

木牛的博客 948

【自动驾驶】汽车速度规划介绍

当局部路径规划给定了一条或者若干条选出的路径曲线之后,运动规划模块需要解决的后续问题是在此局部路径的基础上加人与速度相关的信息,这一问题被称为速度规划。速度规划的目标是在给定的局部路径曲线上,在满足反馈控制的操作限制及符合行为决策的输出结果这两个前提下,将路径点赋予速度及加速度信息。速度规划主要考虑的是对动态障碍物的规避。...

weixin_42301220的博客 7134

第7章 无人驾驶系统规划与控制技术详解

本文介绍了无人驾驶系统的规划与控制技术,重点分析了分层架构的实现方法。规划控制系统作为自动驾驶的核心模块,包含路由寻径、行为决策、动作规划和反馈控制四个层次,采用C++实现了基础框架。全局路径规划部分详细讲解了A*算法,包括其启发式函数设计和邻居节点获取逻辑,并提供了Python实现示例。这些技术共同解决了自动驾驶中的路径规划与车辆控制问题,为无人驾驶系统的开发提供了重要参考。

小宝哥Code的专栏 1313

论文解读 - 城市自动驾驶车辆运动规划与控制技术综述 (第1部分)

论文题目:A Survey of Motion Planning and Control Techniques for Self-Driving Urban Vehicles 论文解读 - 城市自动驾驶车辆运动规划与控制技术综述 (第1部分)

Make something people want. 1917
上一篇: 无人驾驶的规划与控制(三)——动作规划(轨迹规划和速度规划)
下一篇: BASH的基本语法
刘凯KAI
博客等级 码龄15年 663粉丝 128原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值