创建模拟的应用程序触发数据采集利用Stateflow图

这个例子说明如何使用Stateflow®,数据采集工具箱™和应用程序设计器创建一个模拟触发的数据采集应用。

数据采集​​工具箱用于从数据采集设备或音频声卡获取的测量数据提供的功能。对于某些应用,建议模拟触发采集该开始拍摄或记录基于在所测量的模拟信号的状态数据。软件模拟触发采集技术可以只捕获感兴趣的分割出的测量数据的连续流。例如,可以当信号电平超过特定阈值捕获的音频记录。

这个示例应用程序,通过使用App设计和Stateflow创建,展示了如何实现这些操作:

  • 通过使用Stateflow图表控制应用程序状态逻辑。

  • 发现可用的数据采集设备,并选择哪个设备使用。

  • 配置设备采集参数。

  • 显示收购过程中的应用程序UI的现场图。

  • 执行基于可编程触发条件触发数据采集。

  • 保存捕获的数据,以一个MATLAB®基工作区的变量。

默认情况下,应用程序在应用程序设计器设计模式打开。为了运行应用程序点击点击或从命令行执行app:

AnalogTriggerAppStateflow

需求

此示例应用程序需要:

  • MATLAB R2020a或更高版本。

  • 数据采集​​工具箱(仅支持在Windows®)。万博1manbetx

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

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

  • 相应的硬件支持包和设备驱动程序。万博1manbetx

应用程序状态和Stateflow图表

当创建具有复杂逻辑的应用程序,考虑各种状态对应于应用程序的操作模式。您可以使用Stateflow框图来可视化和组织这些应用程序的状态。使用状态之间的转换来实现您的应用程序的控制逻辑。例如,文件AnalogTriggerAppLogic.sfx定义控制应用程序逻辑的Stateflow图表。图表可以根据应用程序UI中的操作或数据驱动的条件在状态之间转换。例如,如果单击开始按钮时,图表转换从组态状态获得州。如果信号的值超过指定的触发电平,则图表转换从LookingForTrigger状态CapturingData州。

用Stateflow的表整合的应用

在MATLAB app与Stateflow图之间建立双向连接startupFcn函数,创建一个图表对象并将其句柄存储在app属性中。

app.Chart = AnalogTriggerAppLogic(“应用”,应用程序);

应用程序使用该句柄来触发状态转换在图表中。例如,当你点击开始中,StartButtonPushed应用回调函数调用acquisitionStart图表输入事件。此事件触发从过渡组态状态获得州。

要评估图表中不是事件的转换条件,应用程序调用函数的图表对象。例如,当从设备中获取数据时,dataAvailable_Callback应用功能定期调用功能。当检测到触发条件,则图表转换从LookingForTrigger国家的CapturingData州。

在状态流图表,存储该应用程序对象句柄作为图表的本地数据。要共享的公共属性和调用应用程序的公共职能,将Stateflow框图可以使用这个手柄政府行为,转变条件,或过渡措施。

也可以看看

相关的话题