MATLAB-stateflow教程.pdfVIP

  1. 1、本文档共51页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MATLAB-stateflow教程

第十二章 利用状态流 Stateflow 进行控制系统状态转换 Statefolw 是一种图形化的设计开发工具,是有限状态机的图形实现工具,有人称之为状态流。主 要用于 simulink 中控制和检测逻辑关系的。用户可以在进行 Simulink 仿真时,使用这种图形化的工 具实现各个状态之间的转换,解决复杂的监控逻辑问题。它和 Simulink 同时使用使得 Simulink 更具 有事件驱动控制能力。利用状态流可以做以下事情: 1)基于有限状态机理论的相对复杂系统进行图形化建模和仿真; 2 )设计开发确定的、检测的控制系统; 3 )更容易在设计的不同阶段修改设计、评估结果和验证系统的性能; 4 ) 自动直接地从设计中产生整数、浮点和定点代码(需要状态流编码器); 5 )更好地结合利用 Matlab 和 Simulink 的环境对系统进行建模、仿真和分析。 在状态流图中利用状态机原理、流图概念和状态转化图,状态流能够对复杂系统的行为进行清晰、 简洁的描述。 Stateflow 生成的监控逻辑可以直接嵌入到 Simulink 模型下,两者之间能够实现无缝连接。仿真初始 化时,Simulink 会自动启动编译程序,将 Stateflow 绘制的逻辑框图转换成 C 格式的 S-函数(Mex -文 件),产生的代码就是仿真目标,且在状态流内称作 Sfun 目标,这样在仿真过程中直接调用相应的动态连 接库文件,将二者组成一个仿真整体。Sfun 目标只能与Simulink 一起使用。在产生代码前,如果还没有 建立名为 sfprj 子目录,状态流会在 Matlab 的当前目录下产生一个 sfprj 子目录。状态流在产生代码的过 程中使用 sfprj 子目录存贮产生的文件。 12.1 有限状态机简介 Stateflow 的仿真原理是有限状态机(finite state machine,简称FSM )理论。为了更快地掌握 Stateflow 的使用方法,用户有必要先了解FSM 的一些基本知识。 所谓有限状态机是指系统中存在可数的状态,在某些事件发生时,系统从一个状态转换成另一个状 态,故有限状态机又称为事件驱动的系统。在有限状态机的描述中,可以设计出由一种状态转换至另一 种状态的条件,并将每对可转换的状态均设计出状态迁移的事件,从而构造出状态迁移图。 Simulink/Stateflow 为用户提供了图形界面支持 的设计有限状态机的方法。它允许用户建立有限的 状态,用图形的形式绘制出状态迁移的条件,并使 用其规定的命令设计状态迁移执行的任务,从而构 造出整个有限状态机系统。 在 Stateflow 中,状态和状态转换是最基本的元 素,有限状态机的示意图如图 12.1 所示。 图 12.1 中有三个(有限个)状态,这几个状态的转 换是有条件的,其中有些状态之间是相互转换的,A 状态是自行转换的。在有限状态机系统中,还表明 了状态迁移的条件或事件。 Stateflow 模型一般是嵌在 Simulink 模型下运行 图 12.1 有限状态机示意图 的,Stateflow 是事件驱动的,这些事件可以来自同 一个 Stateflow 图中,也可以来自 Simulink。 12.2 Stateflow 应用基础 164 在 MATLAB 命令窗口键入 stateflow 命令,将打开如图 12.2.1 所示的界面。其中,sflib 窗口中有许多 Simulink 给用户提供的仿真算例。 如果用户在 MATLAB 命令窗 口键入 sfnew 命令,将打开嵌入 Stateflow 模块 Charts 的 Simulink 窗 口 untitled* 。如图 12.2(b)所示。其 中Charts 是空白的 Stateflow 模块图 标。 双 击 untitled* 窗 口 中 的 Stateflow 模块打开如图 12.3 所示的 Stateflow 编辑界面,用户可以在此 窗口中编辑所需的 Stateflow 模型。 Stateflow 提供了强大的图形编辑功 能

文档评论(0)

pengyou2017 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档