资源简介
针对纯追踪模型算法的matlab的仿真模型,可直接运行,有参数及代码注释
代码片段和文件信息
%参数定义
dt=0.1; %循环的时间,每次加0.1
Ld=1.9; %车辆的前后轮轴距
k=0.7; %纯追踪公式里的参数K
L=4; %目标点的预瞄距离L
T=0.0; %起始时间0
%目标轨迹 就是那个跟踪的轨迹,用公式表达出来
a=10;
x1=a+linspace(-aa);
y1=3./(1.0+exp(-0.5*(x1-a)))+1.5;
%plot(x1y1‘.‘);
%初始化车辆状态
idx=0;
x = 0.0; %车辆起始位置坐标
y = 1.5; %车辆起始位置坐标
yaw = 0.0; %车辆航向角0度,即x轴正方向
v = 20/3.6; %车辆的速度
X=x;
Y=y;
Yaw=yaw;
V=v;
%&&x<=40&&y<=4.5
while(T<=4) %这个循环是用于设置整个程序跑的时间的,用来跟踪目标路径
T=T+dt;
%更新目标点(预瞄距离)
i=100;
%D=norm([x-x1(1i) y-y1(1i)]);
while(1) %这个循环是用来更新目标点的,不断计算当前点和目标路径间的距离,知道为L时为目标点
D=norm([x-x1(1i) y-y1(1i)]); %计算两个点之间的直线距离函数(内部的)
i=i-1;
if(i<1)
i=1;
break;
end
if(D<=L)
idx=i;
break;
end
end
%Pure Pursuit纯追踪模型
alpha = atan2(y1(1i) - y x1(1i) - x) - yaw; %atan2函数计算点(xy)与x轴正向夹角即atan2(yx).
%Lf= k * v + L;
Lf= k * v;
delta = atan2(2.0 * Ld * sin(alpha) / Lf 1.0);
%更新车辆状态
x = x + v * cos(yaw) * dt;
y = y + v * sin(yaw) * dt;
yaw = yaw +
相关资源
- Pattern Recognition and Machine Learning(高清
- MATLAB 编程 第二版 Stephen J. Chapman 著
- 均值滤波和FFT频谱分析Matlab代码
- 《MATLAB扩展编程》代码
- HDB3码、AMI码的MATLAB实现
- 3点GPS定位MATLAB仿真
- MATLAB数字信号处理85个实用案例精讲入
- matlab从入门到精通pdf94795
- 欧拉放大论文及matlab代码
- 跳一跳辅助_matlab版本
- 全面详解LTE MATLAB建模、仿真与实现
- MIMO-OFDM无线通信技术及MATLAB实现_孙锴
- MATLAB Programming for Engineers 4th - Chapman
- matlab 各种谱分析对比
- 分数阶chen混沌matlab程序
- 基于粒子群算法的非合作博弈的matl
- MATLAB车流仿真 包括跟驰、延误
- matlab空间桁架计算程序
- 基于MATLAB的图像特征点匹配和筛选
- DMA-TVP-FAVAR
- GPS信号的码捕获matlab代码.7z
- 一维光子晶体MATLAB仿真代码吸收率折
- newmark法源程序
- 传统关联成像、计算鬼成像matlab
- pri传统分选算法
- 摆动滚子推杆盘形凸轮设计
- 医学图像重建作业matlab源码
- Matlab实现混沌系统的控制
- 检测疲劳驾驶
- Matlab锁相环仿真-Phase Locked Loop.rar
评论
共有 条评论