• 大小: 3KB
    文件类型: .m
    金币: 2
    下载: 0 次
    发布日期: 2024-01-28
  • 语言: Matlab
  • 标签: MATLAB  

资源简介

MATLAB初学者的练手之作,瑕疵较多,仅供参考

资源截图

代码片段和文件信息

clear
clc
%定义道路属性长度100m,宽度3.5m,限制车速70km/h,坡度0度
R=[1003.5700];   
x=0:0.5:R(1);
y=zeros(1length(x));
y1=y+4.5;      %道路一条边
y2=y1+R(12);  %道路另外一条边
figure(1)
plot(xy1‘LineWidth‘2);
hold on
plot(xy2‘LineWidth‘2);
axis equal
box off
% axis([-10 110 2 10]);
t=0.05;%步长
T=1.4;%反应时间1.4s
s=int8(T/t);
a0=10;%前车加速度10m/s^2
a1=zeros(1s);
x3=zeros(1s);
x7=zeros(1s)-20;
v0=zeros(1s)*30/3.6;%前车初始速度
v1=30*ones(1s)/3.6;%后车初始速度
% 定义单个机动车属性,长5米,宽1.8米,期望车速50km/h,允许最大转角30度;
M = [51.85030];
for i=1:1000
        for j=1:28
            v0(1)=v0(28);
            v1(1)=v1(28);
            a1(1)=a1(28);
            x3(11)=x3(128);
            x7(11)=x7(128);
            

              v0(j+1)=v0(j)+a0*t;
              if (v0(j)>13.8888)&&(a0>0) || (v0(j)<8.3333)&&(a0<0)==1    %限制车速在30~50km/h
                  a0=-a0;
              end
              x3(1j+1)=x3(1j)+v0(j)*t+0.5*a0*t^2;        y3 = 4.5+R(2)/2-M(2)/2;%前车参数
              x4(1j+1)=x3(1j+1);                        y4=y3+M(2);
              x5(1j+1)=x3(1j+1)+M(1);                   y5=y4;
              x6(1j+1)=x5(1j+1);                        y6=y5-M(2);

              h(1j+28*i)=x3(j)-x7(j);                      %车头间距
              ht(1j+28*i)=h(1j+28*i

评论

共有 条评论