MATLAB Simulink Statflow学习笔记
MATLAB Simulink Statflow学习笔记
1.概述
在做算法设计时,会用到Statflow模块和MATLAB Function模块,我们可以在这里搭建自己需要的程序逻辑。
(1) Statflow、MATLAB Function和Simulink之间的区别
做一些逻辑设计,尤其是和状态机相关的,用Statflow更方便。
做一些和矩阵相关的计算,用MATLAB Function更方便。
做一些数据流传,用Simulink更方便。
2.Statflow创建一个简单的逻辑
搭建一个简单的流程图如下:
画完连线如下:
Statflow更擅长做状态机,具体操作如下:
我们可以在状态机里面添加条件,
en:
fun();
LED1 = 1;
LED2 = 0;
du:
LED1 = 0;
LED2 = 1;
ex:
LED1 = 1;
LED2 = 1;
en(entry):表示进入状态的动作
du(during):表示在状态条件下的动作
ex(exit):表示离开状态的动作
3.Statflow模块介绍
4.Statflow案例
例如:用Stateflow做一个简易的温度控制系统(节点形式)
下面在stateflow外面画好输入输出
我们画一个动态输入源可以观看仿真动画
点击运行后可以看到节点和连线被高亮,表示此刻程序执行的状态。
有可能电脑执行画面太快,在下图可以更改动画速度
例如:用Stateflow挡位切换控制系统(状态形式)
下图表示挡位切换的逻辑
下面我们在D档写汽车自动换挡控制逻辑
在statflow外面建立逻辑如下:
定义好PP、RR、NN、DD变量
点击仿真按钮,更改Constant模块数值即可在仿真动画中看到挡位的切换情况
仿真结果如下:
5.Statflow其他
(1)函数调用事件
点击apply,这样ststeflow页面就多出来一个端口,这个端口和其他端口不一样,这是个函数调用端口,可以调用一些函数事件。这个端口可以接Function-Call Subsystem子系统,用这个端口太触发子系统。
这个Function-Call Subsystem,我们可以在合适的时机(例如:在N档的时候触发子系统)进行调用
(2)默认子状态
一般每个页面会带一个默认子状态,当然如果我们要修改其位置,可以把自带的删掉,自己在所需的模块上添加;
(3)语言选择
一般我们默认使用matlab语言,在某些特殊情况下,比如要引入其他地方的C代码,自己不想转述成matlab语言,可以使用此手段。
(4)状态机里面也可以画流程逻辑
可以看到,新画的流程逻辑在P档状态机里面,表示当状态进入P状态机后执行流程逻辑,相当于代码en:
如果要实现代码du:的功能,可以拉一条线到状态机,
MATLAB Simulink Statflow学习笔记相关推荐
- matlab机器人工具箱学习笔记——ikine函数
matlab机器人工具箱学习笔记--ikine函数 ikine函数用法 使用实例 链接: https://blog.csdn.net/weixin_42596724/article/details/8 ...
- comsol与matlab连接使用学习笔记 1 基础设置
comsol与matlab连接使用学习笔记 1 基础设置 前言 1.安装 COMSOL livlink for Matlab 2.首次运行 前言 以前从来没有用过comsol livelink for ...
- 数理方程及MATLAB解算学习笔记
数理方程及MATLAB解算学习笔记 文章目录 数理方程及MATLAB解算学习笔记 第一章 MATLAB基础知识 1.class查询数值类型 2.永久性数值变量 3.创建特殊矩阵的专用指令 4.基本初等 ...
- 【Matlab 机器人工具箱 学习笔记】双旋转台5轴数控机床 运动学模型02
参考: [1]何永红, 齐乐华, 赵宝林. 双转台五轴数控机床后置处理算法研究[J]. 制造技术与机床, 2006(1). [2]李永桥, 陈强, 谌永祥. 双转台五轴数控机床运动变换及求解方法的研究 ...
- Matlab App Designer 学习笔记
提示:本文的学习视频来自B站小刘老师的教程 链接:https://www.bilibili.com/video/BV16f4y147x9?from=search&seid=2070258926 ...
- 一维离散动力学系统的混沌研究【基于matlab的动力学模型学习笔记_8】
摘 要:混沌(Chaos)是指发生在确定系统中的貌似随机的不规则运动,本文将基于几种经典的一维动力学方程系统,根据其动力学方程研究其混沌产生过程以及相对应的MATLAB仿真. /*仅当作学习笔记,若有 ...
- 二维离散动力学系统的混沌研究【基于matlab的动力学模型学习笔记_9】
摘 要:混沌(Chaos)是指发生在确定系统中的貌似随机的不规则运动,本文将基于经典的二维系统,然后根据动力学方程研究其混沌产生过程以及相对应的MATLAB仿真,再讨论Lyapunov指数以及正平衡点 ...
- 双时滞四维捕食网络的分析【基于matlab的动力学模型学习笔记_6】
/*仅当作学习笔记,若有纰漏欢迎友好交流指正,此外若能提供一点帮助将会十分荣幸*/ 本系列谈论过单时滞,但还没提及过双时滞,本文将着重介绍一种双时滞系统并对其进行简单处理分析. 摘 要:本文针对一个捕 ...
- 基于传染病模型中的再生数R0的讨论【基于matlab的动力学模型学习笔记_2】
/*仅当作学习笔记,若有纰漏欢迎友好交流指正,此外若能提供一点帮助将会十分荣幸*/ 在上一篇博文中介绍了病毒模型的基本计算思路方法,而本文将会重点讨论基本再生数R0-这个决定病毒是继续发展还是衰减的关 ...
最新文章
- BaaS, IaaS, PaaS, SaaS介绍
- Android的数据存储
- antd 能自适应吗_自首要满足的条件有哪些,自首能从宽处罚吗?
- 多线程编程--异步转同步之CountDownLatch
- 与资源库同步时,我的svn报错 Previous operation has not finished; run 'cleanup' if it was interrupted...
- [Java] 蓝桥杯ADV-91 算法提高 素数判断
- 简单com编写流程及注册事项
- SQL语言入门详细教程(更新中)
- 邱锡鹏神经网络怎么样,邱锡鹏 神经网络pdf
- 图书条形码跟ISBN号互相转换的类 续
- 说明书丨亲和纯化驴抗绵羊IgG(H+L)二抗
- 股票价格中后取复权的计算
- Unity-黑暗之魂复刻-手柄接入与配置(Joystick)
- 大数据体系构建数据仓库
- Overvoltage category (过电压类别, 过电压等级)
- 中文核心期刊目录(2004年版)
- 总结性能优化:构建你的前端知识体系
- Oracle19c的安装配置教程
- 操作系统之进程状态及进程状态切换 (六) --- 创建态、就绪态、运行态、阻塞态、终止态。
- #Geek Talk# The Tech Trend (AI、Blockchain and IoT)