基于LabVIEW的自动售货机设计.pdf

上传人:wj 文档编号:14654689 上传时间:2023-06-25 格式:PDF 页数:15 大小:719.74KB
下载 相关 举报
基于LabVIEW的自动售货机设计.pdf_第1页
第1页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第2页
第2页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第3页
第3页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第4页
第4页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第5页
第5页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第6页
第6页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第7页
第7页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第8页
第8页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第9页
第9页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第10页
第10页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第11页
第11页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第12页
第12页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第13页
第13页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第14页
第14页 / 共15页
基于LabVIEW的自动售货机设计.pdf_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于LabVIEW的自动售货机设计.pdf

《基于LabVIEW的自动售货机设计.pdf》由会员分享,可在线阅读,更多相关《基于LabVIEW的自动售货机设计.pdf(15页珍藏版)》请在冰点文库上搜索。

基于LabVIEW的自动售货机设计.pdf

课程设计课程设计报告报告(LabVIEW2010基础教程)学学院:

院:

电气工程与自动化学院电气工程与自动化学院题题目:

目:

基于基于LabVLabVIEWIEW的自动售货的自动售货机机设计设计专业班级:

专业班级:

自动化自动化131131班班学学号:

号:

24201329052420132905学生姓名:

学生姓名:

吴亚敏吴亚敏指导老师:

指导老师:

张振利张振利时时间:

间:

20120166年年55月月1616日日摘摘要要基于LabVIEW2010的自动售货机设计,采用以自定义控件、移位寄存器、While循环和条件结构组成的状态机作为主要设计思路,辅以属性节点和利用For循环对数组的自动索引功能建立的子VI以及自定义枚举型控件组成的数组等控件,完成自动售货机的功能设计。

最后,对前面板的输入控件和显示控件进行布局,调色等操作,完成视觉设计和交互设计。

关键词:

关键词:

LabVIEW;状态机;设计目目录录摘摘要要.2第一章第一章LabVIEWLabVIEW状态机状态机.11.1状态机的概念.11.2状态机的组成.21.3状态机的状态转换.4第二章第二章自动售货机的设计过程自动售货机的设计过程.72.1自定义枚举型控件的制作.72.2下一状态子VI的设计.72.3自动售货机程序框图的编写.82.4自动售货机前面板的设计.9第三章第三章心得体会心得体会.10致致谢谢.11参考文献参考文献.12江西理工大学2013级自动化专业项目驱动设计报告1第第一一章章LabVIEWLabVIEW状态机状态机1.11.1状态机的概念状态机的概念顺序模式是我们最先接触,也是最基本的一种编程模式,程序按照固定的顺序依次执行,结束。

图1顺序结构模式但在很多情况下,静态的顺序模式并不能满足我们编程的要求,我们需要更有效地动态结构来实时改变程序的执行顺序。

比如,一个自动的可乐贩售机,当然它可以实现简单的投币,取可乐,结束这样的顺序模式,但更多的情况下,需要经过多次投币,或者是取消购买来结束一次操作。

图2动态的程序结构在这种情况下,状态机的引入就成了必然的结果。

那么什么是状态机呢?

简单的说,状态机是对系统的一种描述,该类系统包含了有限的状态,并且在各个状态之间可以通过一定的条件执行转换。

一般可以用状态图来对一个状态机执行精确地描述。

江西理工大学2013级自动化专业项目驱动设计报告2找零投币5元结束出货投币1元空闲初始化投币5角无操作投币5角总金额3元投币1元总金额=3元总金额3元累计总金额=3元累计总金额=3元单价:

¥3图3可乐自动贩售机模型从图中就可以清楚地看到可乐机的运行过程,图中直观地表现了可乐机投入不同金额硬币时的情况以及几个处理步骤的各个状态和它们之间的转换关系,根据投入硬币的不同面值,对总金额执行计算,并对各种操作执行响应以完成一次购买。

显然,类似这样的系统,使用顺序结构是难以实现的。

1.21.2状态机的组成状态机的组成在LabVIEW中,任何一个状态机都是由三个基本部分构成的,首先外层是一个while循环,同时在while循环中包含有一个条件结构,while循环用于维持状态机的运行,条件结构用以对各个不同的状态执行判断,第三个基本部分是移位寄存器,用以将下一个状态传递到下一次循环状态判断中。

另外在一个完整的状态机中,我们一般还会提供初始状态,每一个状态的执行步骤以及下一个状态切换代码等等。

江西理工大学2013级自动化专业项目驱动设计报告3图4LabVIEW中的状态机除了前面提到的三个基本部分以外,状态机的构建还有一个技巧,就是使用枚举型常量作为状态变量,相对于其它数据类型来说,枚举常量表示了两组成对的数据,一组是字符串,一组是数值,两者一一对应,在前面板上,能直观地看到字符串,在程序面板上则简单地表示为数值型数据,整个枚举型数据的值可以是预定义的多个数据中的任何一个值。

图5枚举常量与条件结构为什么要使用枚举型数据来作为状态变量呢?

因为枚举型数据和条件结构配合使用时相当方便。

第一,在条件结构的条件判断框中,我们看到的将不是单纯的数值,而是我们定义好的字符串,这样直观的表现形式给不同状态的管理带来了方便,另外,我们在条件结构上通过右键单江西理工大学2013级自动化专业项目驱动设计报告4击,选择为每个值添加分支,就能够自动地将条件结构根据枚举数据执行展开,从而保证每个状态的完整性。

此外,考虑到以后对状态机修改及维护的方便,通常,我们将该枚举常量保存为一个自定义控件,将该自定义控件作为枚举常量引入状态机中,当我们需要对状态变量执行修改的时候,只需要对这个自定义控件执行一次修改,更新,就能对该状态机中任何位置的状态变量执行统一的管理了。

图6自定义枚举常量1.31.3状态机的状态转换状态机的状态转换在实际的工程状态机中,很多时候会遇到一个状态可能往多个状态转换的情况,在这个时候,我们能够使用LabVIEW提供的附加的逻辑功能来实现下一个状态的判断。

在状态框图中有一个子VI,利用该子VI来对选择哪一个分支为下一状态执行判断。

这个功能的实现分为两个子功能,一是子VI实现的逻辑运算,这一部分,大家可以根据程序实际的需要自行编写,第二部分就是状态变量的选择。

一般来说,实现状态变量的选择有4个基本的方法。

图7状态机的逻辑状态转换江西理工大学2013级自动化专业项目驱动设计报告5一般来说,实现状态变量的选择有4个基本的方法:

(1)默认转换。

无论这个状态执行的情况怎么样,都会无条件地转换下指定的下一个状态中。

图8默认状态转换

(2)选择转换利用真假选择函数来实现。

在逻辑子VI输出为真时,跳入真分支的状态,运行State1;为假时,跳入假分支的状态,运行State2。

这个方式在两个可能状态的情况下非常简单和好用,但如果下一个状态的有可能是三个或三个以上的状态呢?

后两种方式就是处理这个情况的图9选择转换(3)条件结构转换。

条件结构的多个分支分别对应了不同的下一状态值,根据逻辑判断子VI输出的结果,跳入不同的分支以选择不同的状态。

江西理工大学2013级自动化专业项目驱动设计报告6图10条件结构转换(4)转换数组转换。

条件结构虽然解决了多个状态选择的问题,但从结构上来看不太直观,管理不够方便,我们可以把所有待选择的状态放入数组中,通过逻辑判断子VI输出不同的索引值直接从数组中索引出下一个状态输出到移位寄存器。

图11转换数组转换江西理工大学2013级自动化专业项目驱动设计报告7第第二二章章自动售货机自动售货机的的设计设计过程过程2.12.1自定义枚举型控件的制作自定义枚举型控件的制作在路径“函数选板编程数值”下找到“枚举常量”,将其拖拽到程序框图中,然后鼠标右键单击选择“制作自定义类型”,接着再次右键单击选择“打开自定义类型”,就可以对其属性进行编辑。

图12自定义枚举型控件的编辑2.2.22下一状态子下一状态子VIVI的设计的设计为了解决多状态选择的难题,可以利用For循环对数组的自动索引功能来建立子VI。

江西理工大学2013级自动化专业项目驱动设计报告8图13下一状态子VI的前面板和程序框图2.2.33自动售货机程序框图的编写自动售货机程序框图的编写图14自动售货机的初始化江西理工大学2013级自动化专业项目驱动设计报告9图15自动售货机的空闲状态2.2.44自动售货机前面板的设计自动售货机前面板的设计图16自动售货机的前面板江西理工大学2013级自动化专业项目驱动设计报告10第三章第三章心得体会心得体会通过这次课程设计真切地体会到课程设计的目的并不止于自己单纯任务的完成,而在于学习新的知识并掌握具体的方法,如何具体使用和具体应用你所学所用的语言。

回首整个开发设计过程,我学到了很多书本上学不到的东西。

比如上课讲到的知识点,通常都是实现比较简单的功能。

但是这次课设,我要做的是虚拟贩卖机系统的整个设计过程,设计的题目看似高深,其实,在整个程序设计过程中,我所使用的知识都是课堂上讲过的。

在每次程序修改中,我都能学到很多的东西。

同时,这个课程设计也是对逻辑要求挺强的要求,对我的逻辑能力提高很大。

在整个课程设计过程中,基本上完成了虚拟贩卖机系统各个模块的功能,达到了课程设计的要求。

江西理工大学2013级自动化专业项目驱动设计报告11致致谢谢在报告完成之际,我首先向关心帮助和指导我的指导老师张振利老师表示衷心的感谢并致以崇高的敬意!

大三下学期的学习生活即将结束,回顾一学期来的学习经历,面对现在的收获,我感到无限欣慰。

为此,我向热心帮助过我的所有老师和同学表示由衷的感谢!

在撰写报告的过程中,我遇到了许许多多这样那样的问题,有的是专业上的问题,有的是报告格式上的问题,一直得到老师的亲切关怀和悉心指导,使我的报告可以又快又好的完成,张振利老师以其渊博的学识、严谨的治学态度、求实的工作作风和他敏捷的思维给我留下了深刻的印象,我将终生难忘老师对我的亲切关怀和悉心指导,再一次向他表示衷心的感谢,感谢他为学生营造的浓郁学术氛围,以及学习、生活上的无私帮助!

还要特别感谢帮助我完成设计的几位同学,没有你们的帮助,我也不可能这么顺利地完成设计,在此表示深深的谢意!

感谢学长学姐,谢谢他们在这一年来对我学习上的悉心指导,他们在整个实验的过程中都给了我很大的帮助,使我能够顺利的完成这次设计报告。

江西理工大学2013级自动化专业项目驱动设计报告12参考文献参考文献【1】LabVIEW大学实用教程.JeffreyTravis等编著.电子工业出版社,2008【2】虚拟仪器设计基础教程.黄松岭,吴静编著.清华大学出版社,2008【3】LabVIEW2010基础教程.肖成勇,雷振山等编著.中国铁道出版社,2012

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2