Аналоговое триггерное приложение при помощи диаграмм Stateflow

Этот пример показывает, как создать инициированное аналогом приложение сбора данных при помощи Stateflow®, Data Acquisition Toolbox™ и App Designer.

Data Acquisition Toolbox обеспечивает функциональность для получения данных об измерении из устройства DAQ или аудио звуковой карты. Для определенных приложений рекомендуется инициированное аналогом приобретение, которое начинает получать или регистрировать данные на основе условия в измеряемом аналоговом сигнале. Инициированное приобретение аналога программного обеспечения позволяет вам получить только сегмент интереса из непрерывного потока данных об измерении. Например, можно получить аудиозапись, когда уровень сигнала передает определенный порог.

Это приложение в качестве примера, созданное при помощи App Designer и Stateflow, показывает, как реализовать эти операции:

  • Управляйте приложением, утверждают логику при помощи диаграммы Stateflow.

  • Узнайте доступные устройства DAQ и выбор который устройство использовать.

  • Сконфигурируйте параметры приобретения устройства.

  • Отобразите живой график в приложении пользовательский интерфейс во время приобретения.

  • Выполните инициированный сбор данных на основе программируемого триггерного условия.

  • Сохраните собранные данные к переменной базового рабочего пространства MATLAB®.

По умолчанию приложение открывается в режиме проектирования в App Designer. Чтобы запустить приложение щелкают по кнопке Run или выполняют приложение из командной строки:

AnalogTriggerAppStateflow

Требования

Это приложение в качестве примера требует:

  • MATLAB R2019a или позже

  • Data Acquisition Toolbox

  • Stateflow для создания и редактирования графиков

  • Поддерживаемое устройство DAQ или звуковая карта. Например, любые Национальные Инструменты или Вычислительное устройство Измерения, которое поддерживает аналоговый вход Voltage или измерения IEPE и фоновое приобретение.

  • Соответствующий пакет аппаратной поддержки и драйверы устройств

Состояния приложения и диаграмма Stateflow

При создавании приложения, которое имеет сложную логику, рассмотрите различные состояния, которые соответствуют рабочим режимам приложения. Можно использовать диаграмму Stateflow, чтобы визуализировать и организовать эти состояния приложения. Используйте переходы между состояниями, чтобы реализовать управляющую логику вашего приложения. Например, файл, AnalogTriggerAppChart.sfx задает диаграмму Stateflow, которая управляет логикой для этого приложения. График может перейти между состояниями на основе действия в приложении пользовательский интерфейс или на управляемом данными условии. Например, если вы кликаете по Кнопке запуска, переходам графика от состояния Configuration до состояния Acquisition. Если значение сигнала пересекает заданный пороговый уровень, переходы графика от состояния LookingForTrigger до состояния CapturingData.

Интеграция приложения с диаграммой Stateflow

Чтобы установить двунаправленную связь между приложением MATLAB и диаграммой Stateflow, в функции startupFcn вашего приложения, создают объект диаграммы и хранят его указатель в свойстве приложения.

app.Chart = AnalogTriggerAppChart('app',app);

Приложение использует этот указатель, чтобы инициировать изменения состояния в графике. Например, когда вы нажимаете Start, функция обратного вызова приложения StartButtonPushed вызывает событие входа acquisitionStart для графика. Это событие инициировало переход от состояния Configuration до состояния Acquisition.

Чтобы оценить условия перехода, которые не являются событиями в графике, приложение вызывает функцию step для объекта диаграммы. Например, при получении данных из устройства, функция приложения dataAvailable_Callback периодически вызывает функцию step. Когда триггерное условие обнаруживается, утверждают переходы графика от состояния LookingForTrigger до CapturingData.

В диаграмме Stateflow сохраните указатель на объект приложения как график локальные данные. Чтобы совместно использовать публичные свойства и вызвать государственные функции приложения, диаграмма Stateflow может использовать этот указатель в актах государственной власти, условиях перехода или действиях перехода.

Смотрите также

Похожие темы