В этом примере показано, как сгенерировать независимый исполняемый файл для потоковой передачи статистики с помощью MATLAB Coder™ и настроить сгенерированный исполняемый файл с помощью пользовательского интерфейса (UI), который запускается в MATLAB(TM).
Большинство алгоритмов в DSP System Toolbox™ поддерживает генерацию кода C с помощью MATLAB Coder.
Одна из опций MATLAB Coder должна сгенерировать независимый исполняемый файл, который может быть запущен за пределами среды MATLAB путем запуска исполняемого файла непосредственно от терминала или командной строки.
Для алгоритмов, которые являются настраиваемыми, желательно взаимодействовать с алгоритмом во времени выполнения с помощью пользовательского интерфейса. Один способ достигнуть этого путем отправки/получения информации через UDP.
Этот пример использует UDP, чтобы обмениваться между MATLAB и сгенерированным независимым исполняемым файлом во времени выполнения. Отклонение, смещение и экспоненциальные значения взвешивания отправляются от MATLAB до исполняемого файла. Фактический случайный сигнал наряду со средним значением, RMS и оценками отклонения отправляется от независимого исполняемого файла назад к MATLAB для графического вывода.
Архитектура примера состоит из двух первичных разделов:
streamingStatsCodegenExampleApp
: Функция MATLAB, которая создает пользовательский интерфейс (UI), чтобы изменить отклонение, смещение и экспоненциальные значения взвешивания. Эта функция также отображает на графике данные, полученные от независимого исполняемого файла.
HelperStreamingStatsEXEProcessing
: Это - функция, от которой сгенерирован независимый исполняемый файл. Эта функция генерирует случайный сигнал данного смещения и отклонения и вычисляет среднее значение, RMS и оценки отклонения такого сигнала. Шумовой сигнал наряду со статистическими данными, которые вычисляются, отправляется по UDP за графическим выводом (или дальнейшая обработка). В любое время во время симуляции, это может также ответить на изменения в ползунках пользовательского интерфейса MATLAB.
Можно использовать MATLAB Coder, чтобы сгенерировать читаемый и автономный код С от кода алгоритма статистики потоковой передачи. Поскольку UDP используется, существуют дополнительные зависимости для сгенерированного кода и исполняемого файла. Они доступны в / каталоге bin вашей установки MATLAB.
Выполнение скрипта HelperStreamingStatsGenerateEXE
вызовет MATLAB Coder, чтобы автоматически сгенерировать код С и независимый исполняемый файл от кода алгоритма, существующего в HelperStreamingStatsEXEProcessing
.
Если вы сгенерировали исполняемый файл, запустите функциональный streamingStatsCodegenExampleApp
запустить исполняемый файл и пользовательский интерфейс (UI), спроектированный, чтобы взаимодействовать с симуляцией. Пользовательский интерфейс позволяет вам настройкам параметров, и результаты отражаются в симуляции немедленно. Например, перемещение ползунка для 'Отклонения', в то время как симуляция запускается, будет влиять на шумовой сигнал наряду с RMS и оценками отклонения, которые построены.
Существует также две кнопки на пользовательском интерфейсе - кнопка 'Pause Simulation' будет содержать симуляцию, пока вы не нажмете на нем снова. Симуляция может быть отключена путем нажатия на кнопку 'Stop simulation'.
Независимый исполняемый файл выполняется как отдельный процесс. Это означает, что графика может запуститься параллельно с расчетом статистики. Это может быть привлекательным подходом для высокоэффективных расчетов включающая графика.
Вместо использования system
команда, чтобы запустить исполняемый файл из MATLAB, исполняемый файл может быть запущен вручную от терминала или командной строки. Поскольку этот исполняемый файл включает вызовы UDP, необходимо, чтобы dlls был на пути для правильного поведения. Смотрите, Как Запустить Сгенерированный Исполняемый файл Вне MATLAB для получения дополнительной информации.