离散连续系统仿真(汽车自动停车系统和弹跳球运动模型) matlab

news2025/7/11 14:55:19

文章目录

  • 一、汽车自动停车系统
    • 1.1 实验描述
    • 1.2 实验目的
    • 1.3 建模
      • 1)建立这个自动停车系统的混成自动机模型:
      • 2)状态图
    • 1.4 Simulink仿真
      • 1.4.1 仿真图
      • 1.4.2 仿真结果
    • 1.5 实验体会
  • 二、弹跳球运动模型
    • 2.1 实验描述
    • 2.2 实验目的
    • 2.3 建模
      • 1)建立这个弹跳球运动系统的混成自动机模型:
      • 2)状态图
    • 2.4 Simulink仿真
      • 2.4.1 仿真图
      • 2.4.2 仿真结果
    • 2.5 实验体会

一、汽车自动停车系统

1.1 实验描述

汽车自动停车系统按照汽车分成三个阶段进行,第一阶段是匀减速行驶, 减速的加速度是dv/dt=-1.35(米/秒平方),当车速到达每小时20公里速度时,进入第二阶段,第二阶段也是减速行驶,减速的加速度是dv/dt=0.09t-4.36(米/秒平方),当车速到达为零时,汽车进入第三阶段,停车。车速初始速度为100公里/小时。

1.2 实验目的

使用Simulink对汽车自动停车系统进行仿真,绘制停车速度,停车距离,停车时间。

1.3 建模

1)建立这个自动停车系统的混成自动机模型:

1、离散状态集 Q={匀减速,减速,停车};
2、连续状态集 X=R2,连续变量 x 代表二维向量(v,s), v车辆的行驶速度,s是车辆行驶距离,它们都是时间 t 的函数;
3、向量场函数 F(·,·):{匀减速,减速,停车}×X→R2:
F(匀减速,x)=(dv∕dt=-1.35,ds/dt=v0-1.35t),速度匀速下降;
F(减速,x)=(dv∕dt=0.09t-4.36,ds/dt=v0+0.09t2-4.36t),车辆行驶加速度下降;
F(停车,x) =(dv/dt = 0,ds/dt=0),车辆速度为0;
4、初始状态集 Init:{匀减速}×{v=100/3.6,s=0};
5、域函数 Dom(·):Q →P(X)定义为:
Dom(匀减速)={v>20/3.6},规定 匀减速状态下车辆速度超过 20/3.6米/秒;
Dom(减速)={0<v<=20/3.6},规定减速状态下车辆速度超过0小于20/3.6米/秒;
6、边集 E Q×Q:
匀减速→减速:匀减速 状态到 减速 状态有一条边,
减速→停车:减速状态到 停车状态有一条边;
7、转换条件 G(·):E →P(X):
(1)G(匀减速→减速) ={v=20/3.6},从匀减速状态转换到减速状态的条件是汽车速度等于 20/3.6米/秒。
(2)G(减速→停车 )={v=0},从减速状态转换到停车状态的条件是汽车速度等于0米/秒。
8、重置映射 R(·,·):E×X→ P(X):
为每个边都指定了一个空集,即没有重置动作,在状态转换过程中车辆速度变量 x不进行重置,保留变换前的值。

2)状态图

在这里插入图片描述

图1 汽车自动停车系统状态图

1.4 Simulink仿真

1.4.1 仿真图

图2是汽车自动停车系统stateflow状态图,最左边为匀减速状态,中间是减速状态,最右边是停车状态。v是速度,s是距离,t是时间。
在这里插入图片描述
图2 汽车自动停车系统stateflow图

图3是stateflow的输入和输出,v、t、s是输出,clock是时钟触发输入。
在这里插入图片描述

图3 stateflow中symbols

图4是simulink仿真模型,对stateflow增加了一个时钟触发事件,每0.01秒事件触发一次。将stateflow的输出连接到scope示波器上。
在这里插入图片描述

图4 汽车自动停车系统simulink模型

1.4.2 仿真结果

双击示波器可以看到仿真结果,如图5,蓝色是时间,黄色是车辆速度,单位为米/秒,红色是车辆行驶距离,单位米。在这里插入图片描述

图5 汽车自动停车系统simulink仿真结果
在这里插入图片描述

图6 汽车自动停车系统状态变化时间点
从图6中可以看到,在第一个竖线处,16.464秒处,汽车从匀减速状态转换到减速状态,在第二个竖线处,17.746处,汽车从减速状态转换为停车状态。

1.5 实验体会

通过此次实验,学习了解了simulink中子系统,时钟与示波器的使用。对于stateflow中的状态,变化方程不能写错,可以通过仿真结果图找出哪个地方出了问题。

二、弹跳球运动模型

2.1 实验描述

让球体在高度h处放下做自由落体运动,当落地时受到下落力作用,球会弹起,速度损失20%,到最高处又会受到地球引力作用做自由落体运动,这样反复落-弹运动,直到球落地不再弹起为止。

2.2 实验目的

建立弹跳球运动系统的Simulink模型,并对参数h分别等于100厘米和200厘米进行仿真。

2.3 建模

1)建立这个弹跳球运动系统的混成自动机模型:

1、离散状态集 Q={down,up};down表示下落,up表示上升
2、连续状态集 X=R2,连续变量 x是二维向量(v,h) v代表球体的速度,往下为正,往上为负,h代表球体的高度, 都是时间 t 的函数。
3、向量场函数 F(·,·):{down,up}×X→R2:
F(down,x)=(dv∕dt=g,dh/dt=-gt),小球下降;
F(up,v)=(dv∕dt=g,dh/dt=-v-gt),小球上升;

4、初始状态集 Init:{down}×{v=0^h=1};
5、域函数 Dom(·):Q →P(X)定义为:
Dom(down)={v>=0^h>0},规定 下降状态下弹跳球速度大于等于0并且高度大于0;
Dom(up)={v<0},规定上升状态下弹跳球速度为负,即反向;
6、边集 E Q×Q:
down→up:down 状态到 up状态有一条边;
up→down:up 状态到 down状态有一条边;
7、转换条件 G(·):E →P(X):
(1)G(down→up) ={h=0},从down状态转换到up状态的条件是球体高度等于 0。
(2)G(up→down )={v=0},从up状态转换到down状态的条件是球体速度等于0。
8、重置映射 R(·,·):E×V→ P(X):R(down→up,x)={v=-0.8v}速度损失百分之二十且反向。

2)状态图

在这里插入图片描述

图7 弹跳球状态图

2.4 Simulink仿真

2.4.1 仿真图

在这里插入图片描述在这里插入图片描述

图8 弹跳球运动 Stateflow 模型
图8是stateflow状态图,左边是down状态,右边是up状态,v代表速度,单位米/秒、t代表时间,单位秒、h代表球的高度,单位m;
在这里插入图片描述

图9 stateflow中symbols

图9是stateflow的输入和输出,h、v、t是输出,clock是时钟触发输入。
在这里插入图片描述

图10 弹跳球运动simulink模型
图10是simulink仿真图,对stateflow增加了一个时钟触发事件,每0.01秒事件触发一次。将stateflow的输出连接到scope示波器上。

2.4.2 仿真结果

1)对h等于100厘米进行仿真
横坐标代表时间,
蓝色线代表小球的速度,正数表示向下,负数表示向上,单位为米/秒;
黄色线代表弹球的高度,单位为米;
红色线代表时间,单位秒;
可以观察到弹球的高度变化为二次函数型,高度与速度逐渐缩小到0;

图11 h=100厘米时simulink仿真结果
在这里插入图片描述

2)对h等于200厘米进行仿真
在这里插入图片描述

图12 h=200厘米时simulink仿真结果

2.5 实验体会

通过此次实验,学习了解了matlab的simulink仿真,状态间的转换条件与变换状态是值的变化需要理清,不然在状态变换时,状态中的值可能会不按预期的变化发展。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【计算机组成原理Note】5.1 CPU的功能和基本结构

5.1 CPU的功能和基本结构 5.1.1 CPU的功能 指令控制。完成取指令、分析指令和执行指令的操作&#xff0c;即程序的顺序控制。操作控制。一条指令的功能往往是由若干操作信号的组合来实现的。CPu管理并产生由内存取出的每条指令的操作信号&#xff0c;把各种操作信号送往相应的部…

前端JS基础第一篇:执行上下文与执行栈

目录 执行上下文与执行栈 引言 什么是执行上下文? 执行上下文生命周期 变量对象 执行上下文的类型 执行上下文的特点 执行栈 执行栈示例 执行上下文与执行栈 引言 对于我们前端开发者来说理解JS程序内部执行机制是必要的&#xff0c;其中一个关键概念就是Js的执行上…

使用QEMU调试ARM64 Linux内核v6.0.9

环境准备 开发环境&#xff1a;Ubuntu 20.04.5 LTS&#xff0c;推荐修改阿里云的apt源&#xff0c;遇到编译依赖方便安装。 环境准备&#xff1a;在Windows上基于WSL2搭建Linux开发环境 本文用到的软件选用的是截至当前(2022-11-19)官网发布的最新的release版本&#xff0c;详…

JavaEE之HTTPS

文章目录HTTPS加密引入证书总结HTTPS 加密 HTTPS 就是在 HTTP 的基础上进行了 加密 , 进一步的来保证用户的信息安全~ 举个例子: 83 版 <<火烧圆明园>> , 有人要谋反干掉慈禧太后. 恭亲王奕䜣给慈禧递的折子. 折子内容只是扯一扯家常,但套上一张挖了洞的纸就能看…

ESP32的BLE使用学习

UUID生成网站&#xff1a; Online UUID Generator Tool 0.前言 什么是低功耗蓝牙&#xff1f; BLE之所以被称为低功耗蓝牙&#xff0c;就是需要通讯的时候才握手&#xff0c;数据传输完成后&#xff0c;就断开连接。在通讯过程中&#xff0c;主动方是客户端&#xff0c;由客…

中微SC8F5771模拟IIC通信——指令运行速度的探索(附编译软件与烧录软件)

文章目录一、中微单片机烧录与使用编译软件烧录软件下载地址烧录软件二、模拟IIC三、逻辑分析仪下的时序一、中微单片机烧录与使用 编译软件 中微所使用编译软件为SCMCU_IDE&#xff0c;不过个人不推荐使用这个软件写代码&#xff08;十分不好用&#xff0c;不能跳转&#xf…

Linux搜索查找命令【详细整理】

目录Linux下文件搜索、查找、查看命令findfind 【搜索范围】【选项】​ find /home -name ‘hello.txt’​ find /home -user root​ find / -size 100Mlocate特别说明&#xff1a;locate 文件名whichwhich lsgrep​ 基本语法&#xff1a;grep [选项] 查找内容 源文件grep -niL…

第六章 图论 8 AcWing 1624. 地铁地图

第六章 图论 8 AcWing 1624. 地铁地图 原题链接 AcWing 1624. 地铁地图 算法标签 图论 单源最短路 dijkstra spfa 思路 若采用邻接矩阵存储 超出本题空间限制&#xff0c;因此无法采用邻接矩阵存储&#xff0c;可采用邻接表存储 若采用常规建图方式&#xff08;即相邻两…

微信小程序|基于小程序实现人脸融合

文章目录一、文章前言二、具体流程及准备三、开发步骤四、完整代码一、文章前言 此文主要通过小程序实现人脸图像融合&#xff0c;将检测到的两张人脸进行融合&#xff0c;输出一张融合后的人脸。 二、具体流程及准备 2.1、注册百度开放平台及微信公众平台账号。 2.2、下载及安…

概论_第2章随机变量及其概率分布__离散型随机变量之二项分布

二项分布是离散型随机变量的内容 一. 定义&#xff1a; 若随机变量X的可能取值为0, 1, ... ,n, 而X的分布值为 , k0,1,…n 其中&#xff0c;0<p<1, q 1-p, 称X服从参数为n, p的二项分布&#xff0c; 简记为 X ~ B(n, p) 1. 当n1时&#xff0c; X服从0-1分布, …

想进入游戏建模行业,这4点必须了解

“游戏行业不关心你的专业&#xff0c;只关心你的作品”&#xff0c;想要进入游戏行业就记住这句话&#x1f44d; 这一年可是越来越多人想要进入游戏行业啦&#xff5e;造成了汤多肉少的情况&#xff0c;咱们怎样才能在一群竞争者中脱颖而出呢❓有4⃣大点你要注意的&#xff1…

决策树算法在计算机视觉中的应用附matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;修心和技术同步精进&#xff0c;matlab项目合作可私信。 &#x1f34e;个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知。 更多Matlab仿真内容点击&#x1f447; 智能优化算法 …

利用SpringBoot和vue+elementui做一个简单的书本信息管理系统

目录 1.准备工作 1.1.数据库准备 1.2.前端准备工作 1.3.后端准备工作 2.后台代码的编写 2.1.修改配置文件 2.2. 编写service层 2.3.编写Controller层 3.前台代码的编写 3.1.在src里面的api里面的action.js 3.2.搜索栏&#xff0c;表单 3.3.表格 3.4.弹出新增的模态…

[附源码]SSM计算机毕业设计整形美容咨询网站JAVA

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

【考研复试】计算机专业考研复试英语常见问题二(研究方向/前沿技术/本科毕设篇)

相关链接&#xff1a; 【考研复试】计算机专业考研复试英语常见问题一&#xff08;家庭/家乡/学校篇&#xff09;【考研复试】计算机专业考研复试英语常见问题二&#xff08;研究方向/前沿技术/本科毕设篇&#xff09;【考研复试】计算机专业考研复试英语常见问题三&#xff0…

助老服务机器人结构设计

目 录 摘要 I Abstract II 第1章 绪论 1 1.1 课题背景 1 1.2 国外助老服务机器人的研究 1 1.2.1 爱尔兰PAM-AID 助老服务机器人 1 1.2.2 美国SmartCane 助老服务机器人 2 1.2.3 韩国WAR 助老服务机器人 3 1.2.4 日本助老服务机器人 4 1.2.5 可穿戴的外骨骼式助老服务机器人 4 …

(九)Spring之Bean的循环依赖问题

文章目录环境什么是Bean的循环依赖singleton下的set注入产生的循环依赖prototype下的set注入产生的循环依赖构造注入产生的循环依赖singleton下的构造注入prototype下的构造注入Spring解决循环依赖的机理&#xff08;底层实现&#xff09;上一篇&#xff1a;&#xff08;八&…

注释写的好,文档不潦草.

大家好&#xff0c;long time no see&#xff01;这次聊一聊「注释」。写「注释」的好处众所周知&#xff0c;但有时在实现一些「公共代码」后&#xff0c;需要编写「文档」&#xff0c;其中「注释」和「文档」的内容是大致相同的&#xff0c;比如param和returns等(相信有不少同…

Java_抽象类和接口(一)

作者&#xff1a;爱塔居的博客_CSDN博客-JavaSE领域博主 专栏&#xff1a;JavaSE 作者简介&#xff1a;大三学生&#xff0c;希望跟大家一起进步&#xff01; 文章目录 目录 文章目录 一、抽象类 1.1 抽象类概念 1.2 抽象类语句 1.3 抽象类特性 1.4 抽象类和普通类的区别 1.5 抽…

赞不绝口!仅靠阿里P9分享的 Redis 工作手册,拿到60W年薪Offer

昨晚有六七位小伙伴告诉我说&#xff1a;“大佬&#xff0c;有没有Redis的面试教程啊&#xff0c;最近面试被问到好多” 这就帮小伙伴们专门整理了一份资料&#xff08;不仅仅是面试题&#xff09;&#xff0c;从Redis核心原理到Redis设计与源码帮助大家梳理体系&#xff0c;快…