本人初学labView2015,以此blog记录学习,并交流分享,欢迎交流
labView2015入门知识,项目创建里面有几个模版供选择,下面来研究一下,各种模板之间的区别与用途
简单状态机
队列消息处理器
操作者框架
仪器驱动程式项目
触摸面板项目
以上是labView2015支持的5种模板,我先研究一下
一.简单状态机
“简单状态机”模板便于定义各代码段的执行序列。这种特定的实现通常称为摩尔机-下一个状态取决于当前状态的决定。代码段可以随意增减,执行顺序可以随意更改,不必对应用程序的结构作大改动。
使用条件
本模板适用于符合以下所有情况的应用程序:
- 状态
- 决策逻辑:确定何时转移至特定的状态
例如,对下列应用程序采用状态机模式非常有效:
- 单个页面或包含多个选项卡的对话框。对话框的每个选项卡对应用于一种状态。用户单击特定的选项卡时,启动状态转移。对于每个选项卡,用户可执行的操作都包含在相应的状态中。
- 自动取款机(ATM)。该应用程序可能涉及以下几种状态:等待用户输入、检查请求的金额是否超过账户余额、吐钞、打印收据等。
- 执行一次测量,将结果记录至磁盘,然后等待其他用户操作的应用程序。该应用程序可能涉及以下几种状态:等待用户输入、执行测量、记录数据、显示数据等。
二.队列消息处理器
“队列消息处理器(QMH)”模板便于并行执行多段代码,以及在段与段之间发送数据。每段代码表示一个任务,如采集数据。其设计模式和状态机相似。这种设计模式可以将每个任务分成多个状态。
QMH模板是生产者/消费者设计模式的一种实现,其中用户界面(生产者)负责生成消息,任务(消费者)负责处理消息。但在QMH模板中,也可从消费者循环生成消息。
该模板包含一个生产者循环和一个消费者循环。用户可根据需求添加消费者循环。
使用条件
OMH模板用于多个任务并行执行的应用程序,且速率通常各不相同。例如,连续采集、记录并显示两个信号(一个RS-232信号和一个模拟信号)的应用程序。这些信号发生的速率各不相同,因此应用程序必须包含两个并行运行的循环。此外,每个循环分为以下状态:
- 初始化数据采集硬件
- 采集数据
- 将采集数据记录至磁盘
- 在波形图表中显示采集到的数据
- 将硬件设置为安全状态
- 停止数据采集并关闭硬件
该应用程序需要一个交互式用户界面,即应用程序执行其他命令时,用户可以单击按钮。因此,应用程序需要第三个并行循环,用于持续监控前面板事件,例如下列命令:
- 开始RS-232采集
- 停止RS-232采集
- 启用RS-232记录
- 禁用RS-232记录
- 开始模拟数据采集
- 停止模拟数据采集
- 启用模拟数据记录
- 禁用模拟数据记录
QMH模板提供一个编写此类应用程序的起点。