首页
学习
活动
专区
工具
TVP
发布

iDoitnow

专栏成员
90
文章
46050
阅读量
15
订阅数
基于前轮跟踪的Pure Pursuit原理及实现
在自动驾驶车辆的路径跟踪技术中,Pure Pursuit算法以其对低速至中速行驶环境的适应性而著称。该算法采用后轴跟踪策略,通过精心选择一个预瞄点,从而精确计算出所需的前轮转向角,以实现对预定路径的稳定跟踪。然而,Pure Pursuit算法的后轴响应特性在面对路径变化时可能稍显迟缓,这是因为它依赖于前轮的转向动作来间接引导后轮的行驶路径。
艰默
2024-05-07
1210
基于模糊控的纯跟踪横向控制在倒车中的应用及实现
Pure Pursuit是一种几何跟踪控制算法,也被称为纯跟踪控制算法。他的思想就是基于当前车辆的后轮中心的位置,在参考路径上寻找一个预瞄点,假设车辆可按照一定转弯半径下行驶到该目标点,然后根据车辆当前位置到预瞄点距离、转弯半径和预瞄点与车头朝向夹角的几何关系来计算车辆的前轮转角,进而得到车辆的横向输入
艰默
2024-04-28
1620
MPC的横向控制与算法仿真实现
随着智能交通系统和自动驾驶技术的发展,车辆的横向控制成为了研究的热点。横向控制指的是对车辆在行驶过程中的水平运动进行控制,包括车辆的转向、车道保持、避障等。这些控制任务对于提高道路安全性、减少交通事故、提升驾驶舒适性具有重要意义。模型预测控制(Model Predictive Control, MPC)作为一种先进的控制策略,因其在处理多变量系统、非线性系统以及约束条件下的优越性能,被广泛应用于车辆横向控制领域。
艰默
2024-04-15
2250
LQR的横向控制与算法仿真实现
在现代控制理论的领域中,线性二次型调节器(Linear Quadratic Regulator,简称LQR)被广泛认可为一种高效的优化控制方法。LQR的核心优势在于其能力,通过最小化一个定义良好的二次型代价函数,来设计出能够引导系统达到预定性能指标的控制策略。尽管LQR最初是为线性时不变系统(Linear Time-Invariant, LTI)设计的,但其在稳定性和性能优化方面的卓越表现,已经使得它在航空航天、机器人技术、汽车工业等多个高端技术领域得到了广泛应用。
艰默
2024-04-03
2330
Modern C++中 STL 算法的执行策略
C++的<algorithm>提供了一系列通用的算法,这些算法可以与各种容器(如vector、list、array等)以及其他可迭代的数据结构一起使用。这些算法涵盖了从基本操作(如复制、查找、替换)到更复杂的操作(如排序、合并、堆操作)等多个方面。这些算法都接受迭代器作为参数,这使得它们可以与各种容器和可迭代对象一起使用。同时,从C++17开始,引入了执行策略(std::execution),该策略决定了它们的执行方式以及与底层硬件的交互方式,允许开发者指定算法的执行方式。
艰默
2024-03-12
920
后轮位置反馈控制与算法仿真实现
后轮反馈控制(Rear wheel feedback)算法是利用后轮中心的跟踪偏差来进行转向控制量计算的方法,属于Frenet坐标系的一个应用。通过选择合适的李雅普诺夫函数设计控制率,利用后轮中心的跟踪偏差来进行转向控制量计算的方法。
艰默
2024-03-04
1410
车辆动力学方程推导和代码实现
车辆动力学模型是描述汽车运动规律的微分方程,一般用于分析汽车的平顺性和操纵稳定性。二自由度的车辆动力学模型基于单车模型假设,只考虑轮胎侧偏特性,其应用前提是
艰默
2024-01-23
3061
Stanley横向控制与算法仿真实现
Stanley横向控制就是我们常说的前轮反馈控制(Front wheel feedback),是一种基于横向跟踪误差的非线性反馈控制算法,其核心思想是根据车辆位姿与给定路径的相对几何关系来控制车辆方向盘转角。具体来说,Stanley横向控制算法将车辆的横向跟踪误差和航向跟踪误差作为反馈信号,通过非线性比例函数计算出前轮转向角,以减小横向跟踪误差并提高车辆的横向跟踪性能。
艰默
2024-01-17
2320
纯跟踪横向控制和算法仿真实现
Pure Pursuit是一种几何跟踪控制算法,也被称为纯跟踪控制算法。他的思想就是基于当前车辆的后轮中心的位置,在参考路径上寻找一个预瞄点,假设车辆可按照一定转弯半径下行驶到该目标点,然后根据车辆当前位置到预瞄点距离、转弯半径和预瞄点与车头朝向夹角的几何关系来计算车辆的前轮转角,即控制车辆的横向跟踪误差。
艰默
2024-01-17
2350
PID横向控制和仿真实现
PID是一种常见的控制算法,全称为Proportional-Integral-Derivative,即比例-积分-微分控制器。PID控制器是一种线性控制器,它将设定值与实际值进行比较,根据误差的大小,控制器会相应地调整系统的比例、积分和微分系数,以减小误差。
艰默
2024-01-11
2300
Matplotlib for C++不完全手册
matplotlib-cpp是Matplotlib(MPL)为C++提供的一个用于python的matplotlib绘图库的C++包装器。它的构建类似于Matlab和matplotlib使用的绘图API。
艰默
2024-01-11
3270
车辆运动学方程推导和代码实现
自行车模型(Bicycle Model)是车辆数字化模型中最常见的一种运动学模型。其除了可以反映车辆的一些基础特性外,更重要的是简单易用。通常情况下我们会把车辆模型简化为二自由度的自行车模型。
艰默
2024-01-04
2610
C++17中的shared_mutex与C++14的shared_timed_mutex
在多线程的应用开发中,我们经常会面临多个线程访问同一个资源的情况,我们使用mutex(互斥量)进行该共享资源的保护,通过mutex实现共享资源的独占性,即同一时刻只有一个线程可以去访问该资源,前面我们介绍了C++11中使用互斥量和互斥量的管理来避免多个读线程同时访问同一资源而导致数据竞争问题(即数据的一致性被遭到破坏)的发生,这里的数据竞争问题往往只涉及到多个线程写另外一个或多个线程读操作的时候,而对于多个线程进行读且不涉及写操作时,不存在数据竞争的问题。面对多线程涉及多访问,少读取的场景,我们有以下读写的例子:
艰默
2023-11-21
5160
C++11的互斥包装器
在C++多线程中会经常用到mutex,在使用的时候lock后,有时候会忘记使用unlock进行解锁造成死锁,或者在lock和unlock之间代码异常跳出,导致程序无法执行到unlock造成死锁,因此在C++11中引入互斥体包装器,互斥体包装器为互斥提供了便利的RAII风格机制,本质上就是在包装器的构造函数中加锁,在析构函数中解锁,将加锁和解锁操作与对象的生存期深度绑定,防止使用mutex加锁(lock)后,忘记解锁(unlock)或者两者之间出现异常退出等造成死锁。
艰默
2023-11-17
1360
c++11 mutex互斥量
C++ mutex 类是一个简单的同步结构,用于保护共享数据免受从多个线程同时访问,避免数据竞争,并提供线程间的同步支持。其在头文件<mutex>中定义。
艰默
2023-11-13
1920
新的线程:C++20 std::jthread
类jthread表示单个执行线程。它拥有通常同 std::thread 的行为,除了jthread在析构时自动再结合,而且能在具体情况下取消/停止。
艰默
2023-11-05
1940
C++ std::thread线程详解
多线程是一种功能,它允许并发执行程序的两个或多个部分,以最大限度地利用 CPU。这种程序的每个部分都称为线程。因此,线程是进程中的轻量级进程。多线程支持是在 C++11 中引入的。在 C++11 之前,我们必须使用 POSIX 线程或库。虽然这个库完成了这项工作,但缺乏任何标准语言提供的功能集导致了严重的可移植性问题。C++ 11 取消了所有这些,并给了我们 std::thread。线程类和相关函数在头文件<thread>中定义。
艰默
2023-10-31
5560
C++ std::optional完全解读
在编写可选择接受或返回对象的函数的时候,通常的做法是选择一个单独的布尔值来确保函数入参或者返回对象的可用性:
艰默
2023-10-24
5020
vector与deque的比较
vector与动态数组相同,能够在插入或删除元素时自动调整自身大小,其存储由容器自动处理,vector通常占用多于静态数组的空间,因为要分配更多的内存以管理将来的增长,在每次插入元素的时,仅当额外内存耗尽时触发重新分配。
艰默
2023-09-05
2760
单向链表和C++ std::forward_list详解
上一章我们介绍了双向链表和C++容器库中提供的std::list容器,与之对应的就是单向链表,顾名思义,单向链表只记录下一个元素的位置,只能朝一个方向遍历元素。C++11从开始提供了std::forward_list(前向列表)来实现单向链表。std::forward_list在插入、删除和移动操作(例如排序)中比其他容器更有用,并且允许时间常数内插入和删除元素。
艰默
2023-09-05
2780
点击加载更多
社区活动
AI代码助手快速上手训练营
鹅厂大牛带你玩转AI智能结对编程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com