- 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 EE中的状态机结构实现动态复杂流程
一、实验目的和实验要求
创建基于 LabVIEW中的状态机模板,实现一个基于状态机的动态复杂流程。如
下:
二、实验准备
1、计算机
2、LlabView 2009软件
三、实验内容
操作步骤:
? 创建状态机模板
首先,在LabVIEW的欢迎界面下选择File/New…
在打开的对话框中选择VI/From Template/Frameworks/Design Patterns下的Standard
State Machine。
这样就打开了一个状态机模板,接下去,我们就只需要在这个模板上实现我们的动
态流程控制了。
2. 首先,由于我们这个练习有5个不同的状态,因此需要更改与状态所对应的状
态枚举常量。在这个模板的程序框图上,我们选中下图中红圈标出的状态枚举常量,按Del键将其删除。
点选条件结构的右侧箭头,切换至模板中的STOP状态,
同样,选中STOP状态中被红圈圈出的枚举常量,点击Del键将其删除。
现在的程序框图应当如下图所示:我们右键点击程序框图,在函数选板上选择
Select a VI…
在弹出的对话框中,选择Controls…(*.ctl,*.ctt)
浏览到桌面的StateMachine文件夹,选择StateCtl.ctl. 将这个属于本练习的含有5
个状态的枚举常量放置到程序框图上,并与输入端的移位寄存器连接起来。
右键单击条件结构(Case Structure)的边框,在右键快捷菜单中,选择Add
Case for Every Value(为每个枚举常量状态添加过程分支)。
如此一来,在条件结构中对应每一个枚举常量的状态,就对应有一个相应的处
理状态的过程分支了:
3. 现在,我们可以根据需要的动态流程来切换不同过程之间的跳转顺序和关系了。
复制红圈圈出的枚举常量,将其副本放置于START条件分支的分支框中并按下
图进行连接(传递下一个状态给移位寄存器)。
将上图中右侧的状态枚举常量切换成State3,表示将从Start状态跳转到State3.
我们会在每个状态下点亮一个LED灯来表示当前正处于这个状态。
在Start条件分支中,我们右键点击程序框图空白处,在函数选版上的
Boolean子选版下选择True Constant。
将鼠标放置在True Constant的右侧,点击右键,在快捷菜单中选择Create
Indicator。以在前面板上创建一个LED等,在Start过程执行时,这个LED灯
将被赋予True值,从而被点亮。
我们将这个对应的LED灯的名称改为Start,以便识别。
同理,接下来我们点击条件结构上端右侧的箭头,切换至State3过程分支。
在State3中我们同样会点亮另外一个LED灯,重复以上放置True Constant常量
和Create Indicator的过程,并将新的LED灯命名为State3。
右键点击右侧的空心方框,选择Create/Constant。这样会自动生成一个过程枚举
常量,以便从State3跳转到下一个状态。
由于下一个状态是State2。所以将刚刚创建好的过程枚举常量选择为State2.
5. 按照上面的方法,同样地,将条件结构切换到State2,创建相应名为State2的
LED灯并赋予True Constant,且下一状态设为End。如下图:
将条件结构切换到End过程分支,创建相应名为End的LED灯并赋予True
Constant,且下一状态设为End。如下图:
6. 实际上我们的整个流程估计颠倒了顺序且跳过了状态1没有执行。所以实际上
State1中的内容是无关紧要的。但是,为了验证整个流程的正确性,我们仍将
State1分支补全。创建相应名为State1的LED灯并赋予True Constant(如果状态
机实际执行时这个LED灯没有亮,那么说明我们设计的程序流程的确如我们所
愿地跳过了该状态。),下一状态可以设为任意枚举常量,这里设为Start。
将程序右下角的Stop枚举常量删除,替换为End枚举常量。
这样整个程序框图应该跟下图一致:(将右上角的时间等待设为1000ms)
为了方便观察,可以将前面板的显示LED替换成方形。
右键点击前面板上的LED控件。在快捷菜单中选择Replace/LEDs/Square LED。
整理一下前面板LED的大小,点击运行按钮(快捷键CTRL+R)
可以看到每个状态按照我们的要求运行,并且跳过了State1的执行。
四、实验机时
2学时
您可能关注的文档
最近下载
- 课件:中石油四起典型事故案例分析.ppt VIP
- 通过法律的社会控制.pdf VIP
- (哈尔滨工业大学高级工商管理硕士课程介绍.docx VIP
- 2025年上海市秋考语文真题之文言文一、文言文二知识点汇总.docx VIP
- 机械制图与计算机绘图(第3版)邵娟琴课后习题答案.pdf
- 统编版2024-2025学年四年级上册语文期末专题训练:文言文阅读(含答案).docx VIP
- 超星尔雅学习通《中国传统玉文化与美玉鉴赏》章节测试答案满分版.doc VIP
- 2025年泸州市中考英语试卷真题(含答案).docx VIP
- 中国医大一院内科王永权.ppt VIP
- 2024年11月2日全国事业单位联考B类《综合应用能力》题及参考答案.pdf VIP
文档评论(0)