Разверните алгоритм оценки частотной характеристики для использования в реальном времени

Можно использовать онлайновый алгоритм оценки частотной характеристики в автономном приложении для оценки в реальном времени физического объекта. Для этого необходимо развернуть блок Frequency Response Estimator в собственную систему путем создания модели Simulink® для развертывания. Можно сконфигурировать эту модель параметрами эксперимента. Или, можно сконфигурировать его, чтобы предоставить такие параметры внешне откуда-либо в системе. После того, как развернутый на вашей собственной системе, модель средства оценки вводит сигналы в ваш объект и получает ответ объекта, не используя Simulink, чтобы управлять экспериментом. Развертывание алгоритма оценки требует продукта генерации кода, такого как Simulink Coder™.

Рабочий процесс

В обзоре рабочий процесс для развертывания Frequency Response Estimator для настройки в реальном времени:

  1. Создайте модель Simulink для развертывания блока к вашей системе.

  2. Сконфигурируйте запустить/остановить сигнал, который управляет, когда эксперимент оценки начинается и заканчивается.

  3. Сконфигурируйте параметры эксперимента, такие как частоты, на которых вы хотите выполнить оценку.

  4. Разверните модель в свою систему и запустите эксперимент оценки против своего физического объекта. Когда вы заканчиваете эксперимент, можно исследовать предполагаемую частотную характеристику.

На практике, для оценки в реальном времени, вы можете хотеть задать некоторые параметры во время выполнения, такие как частоты оценки или амплитуды возмущения. Для получения информации об определении параметров в вашем развертываемом приложении смотрите доступ к Параметрам Эксперимента После Развертывания.

Шаг 1. Создайте развертываемую модель Simulink с блоком средства оценки частотной характеристики

Используя блок Frequency Response Estimator для оценки в реальном времени требует создания модели Simulink для развертывания. В наиболее канонической форме модель для развертывания оценки в реальном времени напоминает следующий рисунок.

Здесь, блоки, соединенные с вводами и выводами блока Frequency Response Estimator, представляют аппаратные интерфейсы, которые читают или пишут данные реального времени для вашей системы. Например, Read control signal блок может быть интерфейсом для получения последовательных данных, блока UDP Receive для получения пакетов UDP или интерфейса для получения других сигналов через беспроводную сеть. Так же блоки для того, чтобы записать данные, такие как Write plant input, могут быть интерфейсы для последовательного, UDP или других интерфейсов для того, чтобы записать данные к оборудованию.

Порты по умолчанию блока Frequency Response Estimator:

  • u — Получает управляющий сигнал.

  • y — Получает объект выход.

  • start/stop — Получает сигнал, который начинает и заканчивает эксперимент оценки.

  • u + Δu — Выводит сигнал питаться к входу объекта. Когда эксперимент не запускается, u + Δu выводит управляющий сигнал, как получено в u. Когда эксперимент запускается, блок добавляет возмущение Δu к этому сигналу.

  • data — Выводит данные моделирования, собранные во время эксперимента оценки. Эти данные включают возмущение, применился к входу объекта и ответу, полученному в y.

  • frd — Выводит предполагаемые частотные характеристики.

Для получения дополнительной информации обо всех портах, смотрите страницу с описанием блока Frequency Response Estimator.

В проиллюстрированной настройке частоты, на которых можно выполнить оценку и амплитуды возмущения, чтобы применяться на каждой частоте, соединены проводами в блок. Если вы хотите установить эти значения после развертывания, установите параметры блоков Excitation Signal Source на External ports. Выполнение так добавляет w и, &amp порты с блоком, как показано на следующем рисунке.

В этой настройке развернутый модуль может считать частоты и амплитуды возмущения для эксперимента оценки во время выполнения.

Храните данные для оффлайновой оценки

Ранее проиллюстрированные настройки отбрасывают data выходной порт, который обеспечивает вход и сигналы ответа, собранные во время эксперимента оценки. Если вы хотите использовать эти данные об эксперименте, можно сохранить выход от этого порта. Например, чтобы сохранить ресурсы в развернутой среде, можно сконфигурировать блок, чтобы собрать данные об эксперименте, не выполняя оценку. Можно затем выполнить оценку использование MATLAB® frestimate. Модель сконфигурировала этот путь к развертыванию, напоминает следующий рисунок.

Шаг 2. Сконфигурируйте Запускают/Останавливают Сигнал

Чтобы запустить и остановить эксперимент оценки частотной характеристики, используйте сигнал в порте start/stop. Когда эксперимент не запускается, блок не генерирует сигнала возмущения. В этом состоянии блок не оказывает влияния на поведение объекта. Эксперимент оценки частотной характеристики начинается и заканчивается, когда блок получает повышение или падающий сигнал в порте start/stop, соответственно. Можно сконфигурировать любую логику, подходящую для приложения, чтобы управлять запуском и временами остановки эксперимента.

Блок обеспечивает рекомендуемую продолжительность эксперимента в разделе Experiment Length параметров блоков. Как правило, вы конфигурируете запустить/остановить сигнал, таким образом, что существует, по крайней мере, так много времени между повышением и падающими сигналами. В развернутой среде, когда вы устанавливаете параметры оценки во время выполнения, необходимо знать, как параметры эксперимента, такие как частоты оценки влияют на необходимую продолжительность эксперимента. Для получения дополнительной информации об определении соответствующей длины, смотрите страницу с описанием блока Frequency Response Estimator.

Шаг 3. Установите параметры эксперимента

Эксперимент оценки частотной характеристики вводит синусоидальные сигналы на частотах, которые вы задаете параметром Frequencies (или в w порт) блока Frequency Response Estimation. Задайте амплитуды возмущения с помощью параметра Amplitudes (или в amp порт.

Блок может применить возмущение на каждой частоте отдельно (sinestream режим) или одновременно (режим суперпозиции). Чтобы задать который режим использовать, установите параметр Experiment mode.

  • Режим Sinestream — Применяет возмущение одна частота за один раз. Режим Sinestream может быть более точным и может вместить более широкую область значений частот, чем режим суперпозиции.

  • Superposition — Применяет возмущение как сигнал суперпозиции, содержащий все частоты целиком. Эксперимент оценки обычно быстрее в режиме суперпозиции.

Можно также задать параметры, которые говорят блок, сколько времени позволить системе обосноваться, когда возмущение применяется, и сколько времени измерить ответ для оценки. Для получения дальнейшей информации о двух типах сигнала и их относительных преимуществах, см. описание параметра Experiment mode на странице с описанием блока Frequency Response Estimator.

Шаг 4. Запустите эксперимент

После того, как вы развернете модуль оценки в свою систему, используйте возрастающий start/stop сигнал начать эксперимент оценки. Развернутый модуль вводит тестовые сигналы в ваш физический объект в режиме реального времени. После подходящего времени, вашего падающего start/stop предупредите заканчивает эксперимент. (Для получения дополнительной информации об определении соответствующей длины, смотрите страницу с описанием блока Frequency Response Estimator.)

Когда эксперимент завершен, можно получить предполагаемую частотную характеристику в frd порт.

Если ваша развернутая среда нуждается в ресурсах для онлайнового расчета оценки, можно сконфигурировать блок, чтобы собрать данные об эксперименте только и выполнить оценку оффлайн позже. Для примера смотрите, Собирают Данные об Эксперименте Частотной характеристики для Оффлайновой Оценки.

Доступ к параметрам эксперимента после развертывания

Некоторые параметры, которые вы устанавливаете, чтобы сконфигурировать эксперимент оценки, являются настраиваемыми, такими, что можно получить доступ к ним в сгенерированном коде. Большинство параметров, однако, не является настраиваемым. Для тех параметров необходимо сконфигурировать их в блоке перед развертыванием или использовать внешний порт блока для параметров, для которых доступен.

Настраиваемые параметры

Следующие параметры блока Frequency Response Estimator являются настраиваемыми после развертывания. Для получения дополнительной информации обо всех этих параметрах, смотрите страницы с описанием блока.

ПараметрОписание
Number of estimation periodsКоличество периодов после урегулирования, чтобы использовать для оценки (sinestream режим)
Number of settling periodsКоличество периодов, чтобы ожидать урегулирования переходных процессов (sinestream режим)
Number of periods of the lowest frequency used for estimationДлительность окна сбора данных (режим суперпозиции)

Ненастраиваемые параметры

Остающиеся параметры Frequency Response Estimator не являются настраиваемыми после развертывания. Для Frequencies и параметров Amplitudes, можно включить внешние порты, которые позволяют вам предоставлять частоты эксперимента и амплитуды возмущения после развертывания. Чтобы включить входные параметры блока w и amp, в параметре Excitation Signal Source, выбирают External ports.

Измените шаг расчета эксперимента после развертывания

Параметр Sample time (Ts) не является настраиваемым. Как следствие вы не можете получить доступ к нему непосредственно в сгенерированном коде, когда вы развертываете блок. Изменить шаг расчета контроллера в развернутом блоке во время выполнения:

  1. Установите Controller sample time (sec) на –1.

  2. Поместите блок в Triggered Subsystem.

  3. Инициируйте подсистему в желаемом шаге расчета.

Если вы используете этот подход, необходимо убедиться во время выполнения, что шаг расчета достаточно быстр, чтобы сохранить частоты оценки ниже частоты Найквиста.

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

Похожие темы