В этом примере показано, как выполнить тест частотной характеристики модели ex_slrt_slt_osc (open_system(docpath(fullfile(docroot, 'toolbox', 'xpc', 'examples', 'ex_slrt_slt_osc')))).

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

Рисунок показывает представительный выход из приложения реального времени, работающего на целевом компьютере. В низких частотах выход блока Integrator1 обосновывается к тому же значению как выход блока Signal Generator. В высоких частотах выход блока Integrator1 все еще звонит в конце каждого импульса.

Тест определяет самую высокую частоту, на которой выходные значения Интегратора и блоков Генератора Сигнала в заданном критерии друг друга. Тест использует саму модель в качестве источника сигнала и использует тестовую обвязку, чтобы сравнить выходные параметры Интегратора и блоков Генератора Сигнала.
Открытая модель ex_slrt_slt_osc в перезаписываемой папке.
Откройте Параметры конфигурации. На вкладке Real-Time нажмите Hardware Settings.
Выберите Model Referencing> Общее количество экземпляров, позволенных на топ-модель> Один.
Выберите Data Import/Export> Format> Structure со временем.
Выберите Data Import/Export> Format> Time.
Выберите Data Import/Export> Format> Output.
Отмените выбор Импорта/Экспорта Данных> Формат> состояния.
Отмените выбор Импорта/Экспорта Данных> Формат> конечные состояния.
Отмените выбор Импорта/Экспорта Данных> Формат> логгирование Сигнала.
Отмените выбор Импорта/Экспорта Данных> Формат> Хранилища данных.
Отмените выбор Импорта/Экспорта Данных> Формат> Логарифмические данные о Наборе данных к файлу.
На вкладке Apps нажмите Simulink Test.
На вкладке Test нажмите Add Test Harness for Model. Программное обеспечение создает тестовую обвязку с именем по умолчанию ex_slrt_slt_osc_Harness1.
В панели Basic Properties установите флажок Save Test Harnesses Externally.
Для Входа к Компоненту под Тестом выберите None.
Для Выхода от Компонента под Тестом выберите Outport.
Выберите Add отдельное поле проверки блока оценки.
Выберите Открытую обвязку после флажка создания.
Возьмите значения по умолчанию в остающихся панелях.

8. Нажать ОК.
Тестовая обвязка выглядит так фигура.

Модель ex_slrt_slt_osc в качестве примера хранит тестовую обвязку в модели. Получить доступ к тестовой обвязке из модели в качестве примера:
В Редакторе Simulink, на вкладке Test, нажимают Manage Test Harnesses.
Нажмите ex_slrt_slt_osc_Harness1.
Чтобы возвратиться к модели в качестве примера, выберите его в перспективном представлении в правом нижнем углу тестовой обвязки.
Открытая тестовая обвязка ex_slrt_slt_osc_Harness1.
Откройте Параметры конфигурации. На вкладке Real-Time нажмите Hardware Settings.
Выберите Model Referencing> Общее количество экземпляров, позволенных на топ-модель> Один.
Выберите Data Import/Export> Format> Structure со временем.
Выберите Data Import/Export> Format> Time.
Выберите Data Import/Export> Format> Output.
Отмените выбор Импорта/Экспорта Данных> Формат> состояния.
Отмените выбор Импорта/Экспорта Данных> Формат> конечные состояния.
Отмените выбор Импорта/Экспорта Данных> Формат> логгирование Сигнала.
Отмените выбор Импорта/Экспорта Данных> Формат> Хранилища данных.
Отмените выбор Импорта/Экспорта Данных> Формат> Логарифмические данные о Наборе данных к файлу.
Откройте блок Test Assessment.
Упростить тестовую настройку оценки, в списке Вводимых символов, входе Outport замены с входными параметрами Int1 и SigGen.
В ex_slrt_slt_osc_Harness1, соедините блок Demux с ex_slrt_slt_osc/Outport.
В диалоговом окне блока Демультиплексора, определенном Номере выходных параметров к 2.
Чтобы сделать Demux выходными параметрами видимый с блоком Test Assessment, соедините унитарные блоки Усиления с каждым блоком Demux выходные параметры.
Соедините главный блок Demux выход с Test Assessment/Int1 и нижняя часть выход к Test Assessment/SigGen.

Откройте Model Explorer. На вкладке Modeling, выпадающей раздел Design и, нажимают Model Explorer.
Кликните по узлу ex_slrt_slt_osc_Harness1> Рабочее пространство модели.
На панели инструментов нажмите кнопку Add Simulink Parameter.
Добавьте следующий объект данных:
Имя — критерий
Значение — 0
Тип данных 'double'
Класс памяти — ExportedGlobal
5. Подобным образом добавьте параметры Simulink w_open и w_close. Поскольку эти параметры находятся в ex_slrt_slt_osc_Harness1 рабочее пространство модели как параметры модели, вы получаете доступ к ним по наименованию непосредственно без иерархии модели.

6. Сохраните модель.
1. Откройте блок Test Assessment
2. Добавьте эти параметры в список символов Параметра:
Критерий
w_open
w_close
3. Чтобы добавить шаг, в столбце Шага, перемещают курсор в верхнюю строку, нажимают шаг Add после, и тип:
CheckSetting
4. Щелкните правой кнопкой по шагу CheckSetting и набор, Когда флажок разложения.
5. Добавить подшаг в CheckSetting, нажмите подшаг Add и тип:
Hi when (SigGen > 0)
Когда выражение выбирает одну половину формы волны.
6. Щелкните правой кнопкой по подшагу Hi when и набор, Когда флажок разложения.
7. Подпродвигаться Hi when, добавьте подшаг:
HiCheck when ((et >= w_open) && (et <= w_close))
verify((abs(Int1) >= abs(SigGen) * (1.0 - Criterion)) && ...
(abs(Int1) <= abs(SigGen) * (1.0 + Criterion)));Когда выражение выбирает окно времени для тестирования критерия допустимости. Проверять команда тестирует критерий допустимости.
8. Подобным образом, чтобы продвинуться CheckSetting, добавьте подшаг:
Lo when (SigGen < 0)
9. Подпродвигаться Lo when, добавьте подшаг:
LoCheck when ((et >= w_open) && (et <= w_close))
verify((abs(Int1) >= abs(SigGen) * (1.0 - Criterion)) && ...
(abs(Int1) <= abs(SigGen) * (1.0 + Criterion)));10. Щелкните правой кнопкой по подшагу Lo when и набор, Когда флажок разложения.
11. Чтобы удовлетворить требованиям Когда разложение, удалите Run по умолчанию продвиньтесь и вставьте DefaultStep подшаги после шагов CheckSetting, Hi when, и Lo when. Когда разложение требует по крайней мере двух шагов на каждом уровне вложения и одного неанализируемого шага в конце каждого списка шагов.

Нажмите на ex_slrt_slt_osc подсистема.
На вкладке Apps нажмите Simulink Test.
На вкладке Test нажмите Test Manager.
Выберите New> Test File.
Назовите тестовый файл realtimetest.
Щелкните правой кнопкой по тестовому файлу и выберите New> Real-Time Test.
В новом тестовом диалоговом окне в реальном времени введите Simulation в поле Test Type.
Нажмите Create.
Переименуйте новый тестовый набор в realtimesuite.
Переименуйте новый тест в frequencysweep.
В менеджере по Тесту выберите узел frequencysweep.
Выберите вкладку System Under Test.
Установите приложение загрузки от на Model.
Установите модель на ex_slrt_slt_osc.
Установите целевой компьютер на TargetPC1.
Во вкладке Test Harness, Обвязке набора к ex_slrt_slt_osc_Harness1.
Во вкладке Simulation Settings Overrides установите флажок Stop Time.
Возьмите значения по умолчанию для других полей.
В менеджере по Тесту выберите вкладку Parameter Overrides.
Нажмите кнопку Add. Диалоговое окно открывается содержащий список параметров. Если параметры не отображаются, кликните по линии Обновления наверху диалогового окна. Обновление создает модель и загружает модель и параметры блоков от ex_slrt_slt_osc_Harness1 и ex_slrt_slt_osc.
Открытый Набор Параметра 1 и выбирает Criterion, Frequency, w_close, и w_open флажки. Оставьте другие флажки очищенными.

Чтобы сконфигурировать и управлять выполненными с помощью итераций запусками тестовой обвязки, много констант и переменных обеспечивают вход.
Константы тестовой обвязки включают:
cStartFreq = 15.0 Запустите частоту развертки параметра.
cStopFreq = 25.0 Закончите частоту развертки параметра.
cFreqIncr = 1.0 Шаг частоты.
cWOpen = 0.90 Запустите окна времени для оценки criterion.
cWClose = 0.99 Конец окна времени для оценки criterion.
cCriterion = 0.025 Максимальное нормированное амплитудное различие между Генератором Сигнала и Integrator1 в окне времени.
Переменные тестовой обвязки включают:
vfreq Частота в каждой итерации.
vw_open Окно открывается однажды в каждый полупериод.
vw_close Окно закрывается однажды в каждый полупериод.
В менеджере по Тесту выберите вкладку Iterations> Scripted Iterations.
В текстовом поле введите следующий код. Чтобы изменить размер текстового поля Scripted Iterations, перетащите нижний правый угол поля.
% Initialize constants cStartFreq = 15.0; cStopFreq = 25.0; cFreqIncr = 1.0; cWOpen = 0.90; cWClose = 0.99; cCriterion = 0.025;
% Loop through test frequencies for vfreq = cStartFreq:cFreqIncr:cStopFreq
% Create a new iteration testItr = sltest.testmanager.TestIteration();
% Calculate the time window half_period = 0.5 * (1.0/vfreq); vw_open = half_period * cWOpen; vw_close = half_period * cWClose;
% Set the parameters for the iteration
testItr.setVariable('Name','Frequency','Source', ...
'ex_slrt_slt_osc/Signal Generator','Value',vfreq);
testItr.setVariable('Name','w_open','Source', ...
'','Value', vw_open);
testItr.setVariable('Name','w_close','Source', ...
'','Value', vw_close);
testItr.setVariable('Name','Criterion','Source', ...
'','Value', cCriterion); % Name and add the iteration to the testcase
str = sprintf('%.0f Hz', vfreq);
addIteration(sltest_testCase, testItr, str);
end
Создайте и загрузите ex_slrt_slt_osc к целевому компьютеру.
В менеджере по Тесту щелкните по кнопке Run.
Чтобы просмотреть результаты испытаний, в левом столбце, нажимают Results и Artifacts. В этом случае тест привел к сбою в итерации 23 Гц.
Чтобы просмотреть провальные результаты, открытые узлы, 23 Гц> Проверяют Операторы и 23 Гц> Сим Аутпут (ex_slrt_slt_osc).
В Инспекторе Данных моделирования панель нажмите кнопку Layout.
Выберите два дисплея с горизонтальный экраном.
В Инспекторе Данных моделирования лучшее отображение выберите два Out флажки и главный флажок Test Assessment. Эта оценка соответствует HiCheck подшаг.
В нижнем отображении выберите два Out флажки и нижний флажок Test Assessment. Эта оценка соответствует LoCheck подшаг.
Кликните по увеличению кнопки времени и выберите область значений 4.00-4.1.
В лучшем отображении, вертикальной красной линии около 4.04 сопровождаемый горизонтальной зеленой линией показывает что HiCheck тест перестал работать кратко перед следованием. В нижнем отображении, вертикальном красном скачке около 4.02 сопровождаемый горизонтальной зеленой линией показывает что LoCheck тест перестал работать кратко перед следованием.

Test Assessment | Test Sequence