基于预测控制模型的自适应巡航控制仿真与机器人实现(Matlab代码实现)

这篇具有很好参考价值的文章主要介绍了基于预测控制模型的自适应巡航控制仿真与机器人实现(Matlab代码实现)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

     目录

💥1 概述

📚2 运行结果

🎉3 参考文献

👨‍💻4 Matlab代码

💥1 概述

自适应巡航控制技术为目前由于汽车保有量不断增长而带来的行车安全、驾驶舒适性及交通拥堵等问题提供了一条有效的解决途径,因此本文通过理论分析、仿真验证及实车实验对自适应巡航控制中的若干关键技术展开研究,以提高自适应巡航控制在不同工况下的应用能力。 ​

本研究为基于预测控制模型的自适应巡航控制仿真与机器人实现。

研究目的:

  • 在两辆车之间已经达到了近乎精确的纵向模型
  • 试图使控制响应接近可行性和真实条件。
  • 满足防撞和保持安全距离,前车为主要目标,舒适性为次要目标。(控制应用于以下汽车)
  • 在 MATLAB 上应用实现和仿真。

📚2 运行结果

基于预测控制模型的自适应巡航控制仿真与机器人实现(Matlab代码实现),机器人,matlab,开发语言

基于预测控制模型的自适应巡航控制仿真与机器人实现(Matlab代码实现),机器人,matlab,开发语言

主函数部分代码:

clear ;
close all;
clc

%
 Define the sample time, |Ts|, and simulation duration, |t|, in seconds.
t0 = 0;
Ts = 0.1;
Tf = 100;
t = t0:Ts:Tf;               
Nt = numel(t);
% Specify the initial position and velocity for the two vehicles.

%
x0_lead = 0;               %Initial position of lead car (m)
%v0_lead = 0;               %Initial velocity of lead car (m/s)

%
x0_ego = 0;                %Initial position of ego car (m)
%v0_ego = 0;                %Initial velocity of ego car (m/s)

%
 The safe distance between the lead car and the ego car is a function
% of the ego car velocity, $V_{ego}$:
%
% $$ D_{safe} = D_{default} + T_{gap}\times V_{ego} $$
%
% where $D_{default}$ is the standstill default spacing and $T_{gap}$ is
% the time gap between the vehicles. Specify values for $D_{default}$, in
% meters, and $T_{gap}$, in seconds.
t_gap = 1.4;
D_default = 10;

%
 Specify the driver-set velocity in m/s.
v_set = 30;

%
 Considering the physical limitations of the vehicle dynamics, the
% acceleration is constrained to the range  |[-3,2]| (m/s^2).
a_max = 2; da_max = 0.15;
a_min = -3; da_min = -0.2;

​
​
%
 the relationship between the actual acceleration and the desired 
% acceleration of the host vehicle satisfies the following conditions 
% 
%  $$ a(k+1) = (1-\frac{Ts}{\tau}) \times a(k) + \frac{Ts}{\tau} \times u(k)$$
%  
% where $ \tau $ is the time lag of the ACC system
tau = 0.3;

​
%
Np = 20 ;          % Prediction Horizon
%Nc = 20 ;          % Control Horizon

%
% Examples
%  In this section we want to try to specify the various parameters 
%   of the machine for different simulation

​
%
EX.1
% N = 5;
% Np = 20 ;          % Prediction Horizon
% Nc = 5 ;          % Control Horizon
% x0_ego  = 0;
% v0_ego  = 0;
% x0_lead = 50;
% v0_lead = 15;
% a_lead = 0.3*sin(2*pi*0.03*t);  % Acceleration of lead car is a disturbance for our plant;
% [lead_car_position , lead_car_velocity] = lead_car_simulation(x0_lead,v0_lead,a_lead,t,Ts ,tau);

%
 EX.2
N = 5;
Np = 20 ;          % Prediction Horizon
Nc = 15 ;          % Control Horizon
x0_ego  = 0;
v0_ego  = 0;
x0_lead = 20;
v0_lead = 5;
a_lead = [1*(1-exp(-0.5*t(1:floor(Nt/5)))) ,0.5+0.5*exp(-0.5*t(1:floor(Nt/5))) , -0.5+exp(-0.5*t(1:floor(Nt/5))) ,-0.5*exp(-0.5*t(1:floor(Nt/5))) , zeros(1,floor(Nt/5)+1)];  
[lead_car_position , lead_car_velocity] = lead_car_simulation(x0_lead,v0_lead,a_lead,t,Ts ,tau);

%
 % % EX.3
% Np = 20 ;          % Prediction Horizon
% Nc = 15 ;          % Control Horizon
% x0_ego  = 0;
% v0_ego  = 0;
% x0_lead = 1500;
% v0_lead = 0;
% a_lead = zeros(1,Nt) ;
% [lead_car_position , lead_car_velocity] = lead_car_simulation(x0_lead,v0_lead,a_lead,t,Ts ,tau);

%
% Car State Space Model
​
Am=[1   Ts   0.5*Ts^2
    0   1      Ts
    0   0     1-Ts/tau ];
​
Bm=[0 ; 0 ; Ts/tau];
​
Cm=[1   0  0
    0   1  0];
​
​
n = size(Am , 1) ;  % number of eigenvalues
q = size(Cm , 1) ;  % number of outputs
m = size(Bm , 2) ;  % number of inputs
​
​
[A , B , C] = AugemenFun(Am , Bm , Cm) ;
​
a = 0.5 ;
[Al , L0] = LagFun(N,a);
L = zeros( N , Nc ); 
L( : , 1) = L0 ; 
for i = 2:Nc
    L(:,i) = Al*L(: , i-1) ; 
end

🎉3 参考文献

[1]李朋,魏民祥,侯晓利.自适应巡航控制系统的建模与联合仿真[J].汽车工程,2012,34(07):622-626.

部分理论引用网络文献,若有侵权联系博主删除。文章来源地址https://www.toymoban.com/news/detail-570076.html

到了这里,关于基于预测控制模型的自适应巡航控制仿真与机器人实现(Matlab代码实现)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MPC(模型预测控制)-Simulink仿真

    一、为什么使用MPC控制器? ① MPC可以处理多输入耦合控制多输出的问题: ② MPC可以处理对于控制量有约束的问题 比如,驾驶汽车的时候,汽车速度和转角都有上限 ③ MPC具有预测效果 即MPC考虑的不是根据当前参考值进行控制,而是根据预测时间内的参考去预测当前的控制量,

    2024年01月25日
    浏览(34)
  • 机器人模型预测控制MPC(model predictive control)

    当前控制动作是在每一个采样瞬间通过求解一个有限时域开环最优控制问题而获得。过程的当前状态作为最优控制问题的初始状态,解得的最优控制序列只实施第一个控制作用。这是它与那些使用预先计算控制律的算法的最大不同。本质上模型预测控制求解一个开环最优控制

    2024年02月07日
    浏览(38)
  • MATLAB 模型预测控制(MPC)控制入门 —— 设计并仿真 MPC 控制器

    MATLAB 模型预测控制(MPC) 模型预测控制工具箱™ 提供了用于开发模型预测控制 (MPC) 的函数、应用程序、Simulink® 模块和参考示例。对于线性问题,该工具箱支持设计隐式、显式、自适应和增益调度 MPC。对于非线性问题,您可以实现单级和多级非线性 MPC。该工具箱提供可部

    2024年02月02日
    浏览(44)
  • (2-3-3)位置控制算法:无人机运动控制系统——基于自适应反演滑模控制器的仿真测试

    2.3.5  基于自适应反演滑模控制器的仿真测试 文件test/fault_AISMC.py实现了一个基于非线性动力学模型的无人机飞行控制仿真环境,通过使用自适应反演滑模控制器(Adaptive Inverse Sliding Mode Control,AdaptiveISMC_nonlinear)对无人机进行控制,并引入了执行器故障模型以模拟实际飞行中

    2024年04月16日
    浏览(39)
  • 基于预测的云计算弹性伸缩策略:实现自动化和自适应控制的资源管理

    随着云计算技术的不断发展,越来越多的企业和组织开始将其业务迁入到云中,以获取更高的灵活性和效率。然而,云计算环境中的资源分配和弹性伸缩问题一直是企业和组织关注的重点。在传统的云计算环境中,资源分配和弹性伸缩主要是通过手动的方式进行的,这需要耗

    2024年02月07日
    浏览(36)
  • (二)基于wpr_simulation 的Ros机器人运动控制,gazebo仿真

    一、创建工作空间          二、下载wpr_simulation源码 git clone https://github.com/6-robot/wpr_simulation.git 三、编译 ~/catkin_make  目录下catkin_make source devel/setup.bash 四、运行 roslaunch wpr_simulation wpb_simple.launch 启动另一个终端,执行: rosrun rqt_robot_steering rqt_robot_steering 鼠标改变速度和角

    2024年01月20日
    浏览(38)
  • 基于ROS的机器人模型建立及3D仿真【物理/机械意义】

    在前面的博客中,我们已经学习过了如何对目标机器人进行数学意义上的模型建立,以便实现基础控制,而在实际生活中,由于机器人造价高昂,我们往往难以获得实际的目标机器人进行部署研究,这就需要我们对目标进行仿真,采用编程或可视化方法建立机器人3D模型,从

    2024年02月09日
    浏览(37)
  • 【MATLAB第71期】基于MATLAB的Abcboost自适应决策树多输入单输出回归预测及多分类预测模型(更新中)

    CSDN后台私信回复“71期”即可获取下载方式。

    2024年02月09日
    浏览(32)
  • 基于html+css的自适应around布局

    项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目结构 index.html代码如下 总结 此代码可以实现图片的水平居中分散对齐展示效果

    2023年04月09日
    浏览(42)
  • 【MFAC】基于紧格式动态线性化的无模型自适应控制

    来源:侯忠生教授的《无模型自适应控制:理论与应用》(2013年科学出版社)。 👉对应书本 3.2 单输入单输出系统(SISO)紧格式动态线性化(CFDL) 和 4.2 单输入单输出系统(SISO)紧格式动态线性化(CFDL)的无模型自适应控制(MFAC) 紧格式动态线性化 (compact form dynamic linearization) SISO离散

    2024年02月02日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包