车辆行驶控制运动学模型的matlab建模与仿真,仿真输出车辆动态行驶过程

目录

1.课题概述

2.系统仿真结果

3.核心程序与模型

4.系统原理简介

4.1 基本假设

4.2 运动学方程

5.完整工程文件


1.课题概述

车辆行驶控制运动学模型的matlab建模与仿真,仿真输出车辆动态行驶过程.

2.系统仿真结果

3.核心程序与模型

版本:MATLAB2022a

........................................................
%车轮轴距
Lwheel = 2.7;                   
%前悬长度 
Lf     = 0.935;        
%质心到前轴的距离 
Lft    = Lwheel/2;           
%质心到后轴的距离 
Ltr    = Lwheel/2;           
%后悬长度 
Lro    = 0.995;       
%车宽
Wcar   = 1.780;              
%初始条件   
%后轴的初始位置
x0     = 0;                    
y0     = 0;   
%初始偏航角
psi0   = 0;                  
%初始转向角
delta0 = 0;                     
z0     = [x0 x0 psi0 delta0];
%最终时间 
Tsimu  = 40;                    
%帧率
F_rate = 30;           
%时间数组
time   = linspace(0,Tsimu,Tsimu*F_rate);  
%设置ODE求解器选项  
OPT            = odeset('RelTol',1e-5);
[dset,xylines] = ode45(@(t,z) func_car_model(t,z,Lwheel),time,z0,OPT);
.........................................................................

figure
hold on ; 
grid on ; 
xlabel('x');
ylabel('y');
% 循环绘制每个时间点的车辆位置  
for j = 1:length(time)
    j
    cla
     
    plot(xyc5(:,1),xyc5(:,2),'b')
    plot(xyc6(:,1),xyc6(:,2),'m--')

    % 计算四个角的坐标 
    xc = [xyc1(j, 1) xyc2(j, 1) xyc3(j, 1) xyc4(j, 1)];
    yc = [xyc1(j, 2) xyc2(j, 2) xyc3(j, 2) xyc4(j, 2)];

    % 填充车辆图形 
    fill(xc, yc,'g')

    % 调用func_draw函数绘制前后轴的向量  
    func_draw(xyc5(j, 1:2),(alpha1(j)+theta1(j)),Speed1(j),'b');
    func_draw(xyc6(j, 1:2),(alpha2(j)+theta1(j)),Speed2(j),'m--');

    xlim([0,70]);
    ylim([-5,70]);

    drawnow;

end
19 

 

4.系统原理简介

       车辆运动学模型从几何学的角度研究车辆的运动规律。包括车辆的空间位姿、速度等随时间的变化。当车辆在良好路面上低速行驶时,一般不需要考虑车辆的操纵稳定性等动力学问题。此时基于运动学模型设计的路径跟踪控制器具备可靠的控制性能。

车辆行驶控制运动学模型是描述车辆运动状态的基础模型,它主要关注车辆的位置、速度、加速度等运动学参数的变化规律。这些模型通常基于牛顿运动定律和车辆的动力学特性建立。

4.1 基本假设

在运动学模型中,通常会做出一些基本假设来简化问题,例如:

  • 车辆在平面内运动,忽略垂直方向的运动。
  • 车辆的运动是连续的,没有跳跃。
  • 车辆的轮胎与地面之间无滑动,即轮胎的滚动速度与车辆的移动速度一致。

4.2 运动学方程

        车辆的运动学方程通常包括位置、速度和加速度的关系。在二维平面上,车辆的位置可以用坐标 ((x, y)) 表示:。

         基于跟踪误差模型设计的模型预测控制权可以方便的对跟踪过程中的航向偏差和距离偏差施加约束。同时可以考虑道路曲率对跟踪效果的影响,有利于提升弯道跟踪的效果。

5.完整工程文件

v

v

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/309199.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

内存分区模型---C++

目录 内存分区模型1.1 程序运行前1.2 程序运行后1.2.1 new操作符 内存分区模型 C程序在执行时,将内存大方向划分为4个区域 代码区:存放函数体的二进制代码,由操作系统进行管理的;全局区:存放全局变量和静态变量以及常…

微服务自动化.etcd跨主机集群

目录 一、容器间内部通信 二、跨主机通信 1、直接路由 2、Pipework 3、Flannel ①、Flannel特点 三、环境搭建 ETCD版本问题 ①、修改配置文件 ②、api 2 使用方法 ③、 api 3 使用方法 4、 ETCD中保存网络信息 ①、使用v2版的set命令向ETCD中保存flannel覆盖网络信…

111.连接已终止的线程、线程分离、线程取消

一、连接已终止的线程 功能:和一个已经终止的线程进行连接 回收子线程的资源 这个函数是阻塞函数,调用一次只能回收一个子线程 参数:thread:需要回收的子线程的ID retval: 接收子线程推出时的返回值 返回值&#xff1a…

JVM基础(2)——JVM内存模型

一、简介 JVM会加载类到内存中,所以 JVM 中必然会有一块内存区域来存放我们写的那些类。Java中有类对象、普通对象、本地变量、方法信息等等各种对象信息,所以JVM会对内存区域进行划分: JDK1.8及以后,上图中的方法区变成了Metasp…

Java使用IText生产PDF时,中文标点符号出现在行首的问题处理

Java使用IText生成PDF时,中文标点符号出现在行首的问题处理 使用itext 5进行html转成pdf时,标点符号出现在某一行的开头 但这种情况下显然不符合中文书写的规则,主要问题出在itext中的DefaultSplitCharacter类,该方法主要用来判断…

基于ChatGPT4+Python近红外光谱数据分析及机器学习与深度学习建模

2022年11月30日,可能将成为一个改变人类历史的日子——美国人工智能开发机构OpenAI推出了聊天机器人ChatGPT3.5,将人工智能的发展推向了一个新的高度。2023年4月,更强版本的ChatGPT4.0上线,文本、语音、图像等多模态交互方式使其在…

C# Open Vocabulary Object Detection 部署开放域目标检测

目录 介绍 效果 模型信息 owlvit-image.onnx owlvit-post.onnx owlvit-text.onnx 项目 代码 Form1.cs OWLVIT.cs 下载 C# Open Vocabulary Object Detection 部署开放域目标检测 介绍 训练源码地址:https://github.com/google-research/scenic/tree/…

性格是如何形成的?能不能改变性格?

有一句话叫“性格决定命运”,广泛流传,也就是说 “命运”与“性格”是紧密相连的,可见“性格”对于一个人的重要性。 性格是怎么来的? 1、遗传基因 根据一些心理学家的最新研究,认为性格与人体内的基因有关系&#x…

浏览器缓存引发的odoo前端报错

前两天,跑了一个odoo16项目,莫名其妙的前端报错, moment.js 报的错, 这是一个时间库,不是我自己写的代码,我也没做过任何修改,搞不清楚为什么报错。以为是odoo的bug,所以从gitee下载…

【Python】编程练习的解密与实战(一)

​🌈个人主页:Sarapines Programmer🔥 系列专栏:《Python | 编程解码》⏰诗赋清音:云生高巅梦远游, 星光点缀碧海愁。 山川深邃情难晤, 剑气凌云志自修。 目录 🪐1. 初识Python &a…

RuntimeError: CUDA error: invalid device ordinal解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

C#基础-空处理

在c#中,值对象是没有办法赋值为null的。比如说,你想要定义一个布尔值,你的赋值数据要么得是true、要么就得是false,默认情况下我们永远没可能给这个布尔赋值为null,即使只是对这个变量进行声明而不初始化数据&#xff…

ChatGPT会给教育界带来怎样的冲击,又将与教育碰撞出怎样的火花?

11 月 7 日凌晨,美国人工智能公司 OpenAI 的开发者大会正式开启,创始人 Sam Altman 和其同事,发布了团队最新的成果GPT-4 Turbo,新一代的GPT不仅更快、有更长的上下文、而且更好的控制。而随之推出的「GPTs」——让人们能用自然语…

服务器执行rm命令时自动记录到审计日志中

目的 当在服务器上执行类似于 rm 命令时,自动记录该命令执行的时间,在哪里执行的,删除的什么文件,记录到审计日志中,能够查找到某些文件丢失原因 配置 # 需要root权限,sudo不行,这里假设执行…

Java:爬虫htmlunit实践

之前我们已经讲过使用htmlunit及基础,没有看过的可以参考Java:爬虫htmlunit-CSDN博客 我们今天就来实际操作一下,爬取指定网站的数据 1、首先我们要爬取一个网站数据的时候我们需要对其数据获取方式我们要进行分析,我们今天就拿双…

注册中心(Nacos)

简介 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管…

基于DNA的密码学和隐写术综述

摘要 本文全面调研了不同的脱氧核糖核酸(DNA)-基于密码学和隐写术技术。基于DNA的密码学是一个新兴领域,利用DNA分子的大规模并行性和巨大的存储容量来编码和解码信息。近年来,由于其相对传统密码学方法的潜在优势,如高存储容量、低错误率和对环境因素的抗性,该领域引起…

网络之路28:二层链路聚合

正文共:1666 字 14 图,预估阅读时间:2 分钟 目录 网络之路第一章:Windows系统中的网络 0、序言 1、Windows系统中的网络1.1、桌面中的网卡1.2、命令行中的网卡1.3、路由表1.4、家用路由器 网络之路第二章:认识企业设备…

Elasticsearch windows开箱即用【记录】

一、准备工作 安装ES之前要在本机安装好JDK,对应的兼容性见官网链接:https://www.elastic.co/cn/support/matrix ES官网链接:https://www.elastic.co/cn/, 我本机安装的是JDK8,测试使用的是7.3.0版本的ES和Kibana。 1、首先去…

Spring Boot 2.6 以上整合 Swagger + Knife4j 报错

Spring Boot 2.6 以上整合 Swagger Knife4j 报错 报错信息报错原因解决办法 报错信息 org.springframework.context.ApplicationContextException: Failed to start bean documentationPluginsBootstrapper; nested exception is java.lang.NullPointerException: Cannot inv…