主要内容

使用StateFlow图表创建用于模拟触发数据采集的应用程序

此示例显示如何使用StateFlow®,数据采集工具箱™和App Designer创建模拟触发的数据采集应用程序。

数据采集​​工具箱提供从DAQ设备或音频声卡获取测量数据的功能。对于某些应用,建议使用基于正在测量的模拟信号中的条件开始捕获或记录数据的模拟触发的获取。软件 - 模拟触发的采集使您只能在连续的测量数据流中仅捕获一个景点。例如,当信号电平通过某个阈值时,可以捕获音频记录。

使用App Designer和StateFlow创建的此示例应用程序,显示了如何实现这些操作:

  • 使用状态流程图控制应用程序的状态逻辑。

  • 发现可用DAQ设备并选择要使用的设备。

  • 配置设备采集参数。

  • 在采集期间在App UI中显示实时绘图。

  • 基于可编程触发条件执行触发数据捕获。

  • 将捕获的数据保存到MATLAB®Pask工作区变量。

默认情况下,应用程序在App Designer中的设计模式下打开。要运行应用程序点击跑步从命令行按钮或执行应用程序:

AmplastriggerAppStateFlow.

需求

此示例应用程序需要:

  • Matlab R2020A或更高版本。

  • 数据采集​​工具箱(仅限Windows®支持)。金宝app

  • StateFlow(仅用于创建和编辑图表)。

  • 支持金宝app的DAQ设备或声卡。例如,任何支持模拟输入的国家仪器或测量计算设备金宝app电压IEPE.测量和背景采集。

  • 相应的硬件支持包和设备驱动程序。金宝app

应用程序状态和状态流程图

创建具有复杂逻辑的应用程序时,请考虑与应用程序的操作模式相对应的各种状态。您可以使用StateFlow图表可视化和组织这些应用状态。使用状态之间的转换来实现应用程序的控制逻辑。例如,文件AmplastriggerApplogic.sfx.定义了控制应用逻辑的状态流图表。该图表可以根据应用UI中的操作或数据驱动条件在状态之间转换。例如,如果单击开始按钮,图表从中转换配置状态获得状态。如果信号的值交叉指定的触发级别,则图表从中转换观察灵通状态CapturingData状态。

将应用程序与StateFlow Chart集成

建立一个双向连接之间的MATLAB应用程序和状态流程图,在startupfcn.函数,创建一个图表对象,并将其句柄存储在app属性中。

app.chart = smalmTriggerApplogic('应用程序',app);

该应用程序使用此句柄来触发图表中的状态转换。例如,当你点击时开始, 这startButtonpushed.app回调函数调用收集架图表的输入事件。此事件触发了从中过渡配置状态获得状态。

为了评估图表中不是事件的转换条件,应用程序调用用于图表对象的函数。例如,当从设备获取数据时,datavailable_callback.应用程序函数定期呼叫功能。检测到触发条件时,图表从中转换观察灵通州到了CapturingData状态。

在StateFlow Chart中,将App对象句柄存储为图表本地数据。要共享应用程序的公共属性并调用公共功能,则状态溢图可以在状态操作,转换条件或转换操作中使用此句柄。

也可以看看

相关的话题