自动驾驶汽车的舒适型自适应巡航控制(Matlab代码实现)

    目录

💥1 概述

📚2 运行结果

🎉3 参考文献

👨‍💻4 Matlab代码

💥1 概述

舒适型自适应巡航控制是自动驾驶汽车的一种高级驾驶辅助系统。它是自适应巡航控制(ACC)的进一步发展。自适应巡航控制最初是一种技术,允许车辆在高速公路上行驶上自动保持一定的车速,并根据前车的行驶速度自动调整跟车距离。

舒适型自适应巡航控制系统在基本的自适应巡航控制基础上,更加注重提升的舒适性和安全性。它通过使用更高级的传感器和控制系统来提供更加平稳和舒适的驾驶体验。以下是舒适型巡航控制系统自适应巡航控制的一些特点:

平稳加速和停车:舒适型自适应巡航控制可以更加平滑地加速和停车,突然避免的停车和启动,从而减少上升的不稳定感。

智能预测:该系统可能会采用先进的预测算法,通过前车的行为和周围的交通情况来预测未来的交通情况,并相应地调整车速和跟车距离,以保证更加平稳的行驶。

牵引保持:舒适型自适应巡航控制可能结合牵引保持系统,可以帮助车辆在牵引内保持更加稳定的行驶,避免悬架的牵引偏离和修正,提供更舒适的驾驶体验。

交通拥堵模式:该系统可能还具备特别的交通拥堵模式,能够更好地适应缓慢移动的交通状况,如在城市交通拥堵时提供更舒适的驾驶体验。

高级传感器:为了实现更高级的舒适性控制,舒适型巡航控制可能配备更多的传感器,如红外传感器、摄像头、激光雷达等,以获取更全面的周围环境信息。

总体而言,舒适型自适应巡航控制旨在提供更舒适、安全的驾驶体验,并减少乘客在自动驾驶模式下的独立感。随着自动驾驶技术的不断进步,这些系统的性能和可用性将会得到不断改进。

📚2 运行结果

主函数部分代码:

%% Generation of comfort-oriented refrence speed
​
%% Speed for each road profile from 30 to 100
rmsclass_A = [0.05 0.08  0.11  0.13 0.16 0.22 0.28 0.34 0.40 0.46 0.52]
rmsclass_B = [0.11 0.17  0.22  0.26 0.33 0.43 0.56 0.68 0.80 0.92 1.04]
rmsclass_C = [0.21 0.33  0.43  0.52 0.65 0.86 1.11 1.35 1.59 1.83 2.06]
rmsclass_D = [0.42 0.67  0.86  1.04 1.31 1.73 2.22 2.71 3.19 3.67 4.13]
% Vitesse en m/s pour 30 to 100
speed = [30/3.6 40/3.6 50/3.6 60/3.6 70/3.6 80/3.6 90/3.6 100/3.6 110/3.6 120/3.6 130/3.6]
%Plot vitesse
plot(speed, rmsclass_A, 'r', 'LineWidth', 2.0)
; hold 
on
;     plot(speed, rmsclass_B, 'b', 'LineWidth', 2.0); hold on;  
plot(speed, rmsclass_C, 'y', 'LineWidth', 2.0); hold on;     
plot(speed, rmsclass_D, 'm', 'LineWidth', 2.0); 
ylabel('RMS ','FontSize', 12);
xlabel('Velocities ','FontSize', 12);
legend('Class A', 'Class B', 'Class C', 'Class D', 'Location', 'northwest');
legend('boxoff');
​
%% Polynomial
% Class A
x = rmsclass_A;
y = speed;
poli_road_A = polyfit(x, y, 7);
x1 = rmsclass_A;
y1 = polyval(poli_road_A, x1);
figure;
plot(x, y, 'o');
hold on;
plot(x1, y1);
hold off;
​
% Class B
x2 = rmsclass_B;
y2 = speed;
poli_road_B = polyfit(x2, y2, 7);
x3 = rmsclass_B;
y3 = polyval(poli_road_B, x2);
figure;
plot(x2, y2, 'o');
hold on;
plot(x3, y3);
hold off;
​
% Class C
x4 = rmsclass_C;
y4 = speed;
poli_road_C = polyfit(x4, y4, 7);
x5 = rmsclass_C;
y5 = polyval(poli_road_C, x4);
figure;
plot(x4, y4, 'o');
hold on;
plot(x5, y5);
hold off;
​
% Class D
x6 = rmsclass_D;
y6 = speed;
poli_road_D = polyfit(x6, y6, 7);
x7 = rmsclass_D;
y7 = polyval(poli_road_D, x6);
figure;
plot(x6, y6, 'o');
hold on;
plot(x7, y7);
hold off;
​
%% Plot all
figure;
% plot(x, y, 'o'); hold on;
plot(x1, y1, 'r', 'LineWidth', 2.0); hold on; 
% plot(x2, y2, 'o'); hold on;
plot(x3, y3, 'b', 'LineWidth', 2.0); hold on;
% plot(x4, y4, 'o'); hold on;
plot(x5, y5, 'c', 'LineWidth', 2.0); hold on;
% plot(x6, y6, 'o'); hold on;
plot(x7, y7, 'y', 'LineWidth', 2.0) ;
ylabel('Vehicle speed (m/s)', 'FontSize', 12);
xlabel('Frequency weighted RMS acceleration (m/s^2)', 'FontSize', 12);
% legend('PolA', 'Class A', 'PolB', 'Class B', 'PolC', 'Class C', 'PolD', 'Class D', 'Location', 'northwest');
legend('Class A', 'Class B', 'Class C', 'Class D', 'Location', 'southeast');
legend('boxoff');
grid on;
title('Vehicle speed as a function of frequency weighted RMS acceleration');
set(gca, 'FontSize', 20);

🎉3 参考文献

[1]张艳,徐顺,蔺春明等.浅析自动驾驶分类及发展前景[J].汽车实用技术,2020(06):40-42.​

部分理论引用网络文献,若有侵权联系博主删除。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值