- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Labview状态机
当前正在审批5.4 LabVIEW设计模式——标准状态机(LabVIEW design patterns - standard state machine)版本 7? 创建于: 2011-2-3 下午8:07 作者jwdz - 最后修改:? 2011-2-8 下午9:06 作者jwdz?????? 我们进行计算机程序设计的真正目的就是命令计算机按照我们的目的和要求来为我们工作。我们可以通过对工作任务的高度抽象处理来将任务划分为不同的工作状态,并且对每种状态采用相对应、合适的的处理方法来解决不同的问题。对于计算机程序设计来讲也是如此,工程师和科学家将待解问题抽象为不同的工作状态,并对每个工作状态编写相适应的计算机处理程序,这样我们就能够游刃有余的指挥计算机按我们的要求完成工作。??????? 本节中所要介绍的状态机架构就可以使我们轻松的完成计算机程序的设计任务,并可以根据任务的变化实现很方便的改动。??????? 为了更好的理解状态机架构,首先介绍一些与状态机相关的基础知识。??5.4.1 状态机架构基础知识?5.4.1.1 状态和状态机?状态??????? 人或事物表现出来的形态。??????? 对于状态我们可以这样来理解:在竞技领域,相对于高水平的运动员而言,其某一场比赛的失利被称之为状态不好。在技术领域,它又被指物质系统所处的状况(状态由某些物理量来表征)。其实,无论对人还是对事物而言,时间是表征状态的最基本物理量。??????? 在LabVIEW图形化编程语言中,数据流的运行机制最有效的诠释了数据与节点间状态的变迁。?????? 对于同一时刻所发生的事情被称之为:同步。?????? 对于同一时刻所需要处理的事情被称之为:实时处理。?????? 对于同一时段所需要处理的不同事情被称之为:多线程(或多核)。?????? Case结构在执行时,根据输入端条件只能执行所限定Case中的程序代码。?????? For循环结构在执行时,根据输入端配置(N、数组的大小、强制停止等)只能执行有限次循环。?????? While循环结构在执行时,只要不强制停止可以执行任意次循环。??????? 这些基本概念对我们来讲再熟悉不过了。但是,最直观的状态变迁还应当属图形化代码中的顺序结构。??????? 顺序结构有序(定序)的控制了程序的执行流程。参见下图。???????????????????????????????????????????????????????????? 图 5.4.1.1-1 顺序结构状态的变迁??????? 顺序结构可以确定性的控制程序状态的变迁,或者说是:顺序结构定序的控制了程序段的运行流程。比如上图中:从status_1到status_2在到status_3直至status_4。这种按部就班的、一件一件的处理事情的方式通常是被用来处理常规状态下发生的事情。?存在的问题:对于一些依据某些条件控制状态改变的状况,因为存在着不确定性,定序控制方式就无法使用了。??????? 比如上图中:正常的情况下程序执行是从status_1到status_2再到status_3直至status_4,但是,有时因某些条件发生了变化,需要从stat us_1到status_4再到status_3直至status_2的执行顺序。定序结构就不行了,因为它无法自行变更程序的执行顺序。??????? 状态机的出现为解决这类问题提供了灵活的、有效的控制方式。?状态机??????? 状态机是一种具有指定数目的状态的概念机(有限状态机),它在某个指定时刻仅处于一个状态。状态转变是由输入事件引起的状态变化。作为对输入事件的响应,系统可能转变到相同或不同的状态,而输出的的事件可能是任意产生的。[]??????? 此时,状态间的描绘或表述最好使用状态图来进行。?状态图??????? 状态图的英文是state diagram;它是指用一组图形来描绘一个系统或组件可能假设的状态,并且显示引起或导致一个状态切换到另一个状态的事件或环境。??????? 状态图是描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的时间做出反应的。??????? 状态图用于显示状态机(它指定对象所在的状态序列)、使对象达到这些状态的事件和条件、以及达到这些状态时所发生的操作。??????? 对应于前面所提出的问题,使用状态图的表示方法参见下图。?????????????????????????????????????????????????? 图 5.4.1.1-2 复杂状态的图形表示——状态图??????? 那么如何使用图形化的代码来表现复杂的状态机呢????????? 5.4.1.2 状态机的图形化代码基本知识??????? 在LabVIEW中图形化的状态
文档评论(0)