- 博客(10)
- 收藏
- 关注
原创 卡尔曼滤波
卡尔曼滤波数据融合例子卡尔曼滤波是一个数据融合的过程,先验数据和后验数据融合,即找到一个合适的权重,取两个数据的加权和。举一个简单的例子直观理解(来源):用两个秤去称同一个物体,得到同一个物体的两个重量和标准差(符合正态分布)为:z1=30gσ1=2gz2=32gσ2=4gz_1 = 30g \quad \sigma_1 = 2g\\z_2 = 32g \quad \sigma_2 = 4gz1=30gσ1=2gz2=32gσ2=4g 图1
2024-07-15 22:50:08 640
原创 PID轨迹跟踪|python实现
关于PID的基本概念网上有很多,简单来说就是用P项(比例项)实现负反馈效果,用I项(积分项)消除稳态误差,用D项(微分项)提供误差信号微分的预测效果。utKpetTt1∫0tetdtTDdtdet式中,ut表示PID控制器的输出,系统的控制输入;etref−feedback表示误差;Kp表示比例增益系数;Tt表示积分时间常数,KiTtKp表示积分增益系数;TD。
2024-07-03 13:05:54 978
原创 基于几何模型的控制方法pure pursuit和stanley
图1 纯跟踪控制方法纯跟踪方法的思想就是在参考轨迹上找一个点Prxryr,通过调整前轮转向角δf让车辆后轴中心通过画圆弧轨迹能够经过点Pr。⎩⎨⎧δfarctanRLR2sinαldαarctanxr−xhyr−yh−ψ式中,δf表示前轮转向角,为车辆模型的输入,L表示车辆的轴距,R表示以后轴中心的转弯半径,ld。
2024-07-01 12:51:18 671
原创 MPC理论推导
MPC是工程中常用到的控制器,其核心思想是以优化的方法求解最优控制器,其中优化方法大多时候采用二次规划QP(Quadratic Programming)求解。MPC与LQR的区别是LQR需要线性模型,MPC可以是线性或者非线性的模型。
2024-06-22 19:58:14 2117 1
原创 LQR轨迹跟踪|python实现
离散LQR求解公式推导看,这里直接给出结果。PkQATPk−1A−ATPBBTPk−1BR−1BTPk−1AKBTPBR−1BTPAu∗k−Kxk式中Pk表示LQR求解过程中的黎卡提矩阵迭代值,P表示收敛后的黎卡提矩阵;K表示反馈增益;AB表示离散的系统矩阵;QR表示系统状态和输入的权重矩阵;xu分别表示系统状态和系统输入,u∗表示最优系统输入。
2024-06-22 19:46:52 881
原创 后轴中心为原点的车辆运动学模型
车辆的运动学模型有好几种,以质心为原点、前轴中心为原点、后轴中心为原点。单独把以后轴中心为原点的模型拎出来讲是因为这个模型在做轨迹跟踪时比较好线性化,像其它两种模型里有三角关系的嵌套耦合,线性化的时候实在太麻烦了,不利于控制。而且在好几个地方都看到过这个模型,包括apollo里轨迹拼接时预测未来状态用的也是以后轴中心为原点的模型。
2024-06-22 19:43:28 1741
原创 常用矩阵求导
在工程中经常涉及到矩阵求导、求偏导,特别是做控制进行优化的时候。矩阵A对矩阵B求导,本质上就是AB。这里引入了分子布局、分母布局来统一矩阵求导结果的维度。分子布局是让求导结果的维度以分子为主,分母布局是让求导结果的维度以分母为主。以下面这个为例∂B∂A分子布局就是让求导的结果以A为主,分子不急就是让结果以B为主。
2024-06-21 12:57:48 687
原创 离散LQR理论推导
工程中用的大部分控制分为两种,无模型和基于模型的。无模型的主要是PID,基于模型的主要是LQR和MPC。PID的思想很直观不涉及推导,而LQR和MPC设计到一些具体数学公式的推导。这篇博客记录一下LQR的原理和推导过程,之后学到MPC了再详细展开记录。首先限定讨论的范围,LQR(Linear Quadratic Regulation,线性二次调节器),针对的是线性时不变系统,本质上是一种状态反馈控制,最终目的是求反馈增益K。此外,工程中应用中计算机控制是离散的,因此本篇博客讨论离散系统的LQR。
2024-06-04 19:15:49 852
原创 车辆侧向运动学和动力学
刚刚开始学习做自动驾驶路径规划,前辈推荐我先去了解汽车的结构,最近看到《车辆动力学及其控制》这本书上对车辆的运动学和动力学模型讲解非常到位。打算分享一下其中的内容,并对它省略的一些过程进行补充推导。最近越来越感觉到对初学者来说数学真是一切的基石,虽然现在已经有各种各样的库,不用自己搞清楚具体是怎么算的,但是对于一名算法工程师我觉得还是很有必要去了解底层的数学原理。
2024-05-28 18:49:30 1224
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人