sigrangeinfo

Получите информацию о покрытии диапазона сигнала из cvdata объект

Синтаксис

[min, max] = sigrangeinfo(cvdo, object)
[min, max] = sigrangeinfo(cvdo, object, portID)

Описание

[min, max] = sigrangeinfo(cvdo, object) возвращает минимальные и максимальные значения сигналов, выведенные компонентом модели object в cvdata объект cvdo.

[min, max] = sigrangeinfo(cvdo, object, portID) возвращает минимальные и максимальные значения сигналов, сопоставленные с выходным портом portID из блока object Simulink®.

Входные параметры

cvdo

cvdata объект

object

Объект в модели или графике Stateflow®, который получает покрытие диапазона сигнала. Допустимые значения для object включайте следующее:

Объектная спецификацияОписание

BlockPath

Полный путь к модели или блоку

BlockHandle

Обработайте к модели или блоку

slObj

Обработайте к объекту Simulink API

sfID

ID Stateflow

sfObj

Обработайте к объекту Stateflow API

{BlockPath, sfID}

Массив ячеек с путем к диаграмме Stateflow или атомарной субдиаграмме и ID объекта, содержавшегося в том графике или субдиаграмме

{BlockPath, sfObj}

Массив ячеек с путем к диаграмме Stateflow или атомарной субдиаграмме и указателю API объекта Stateflow, содержавшемуся в том графике или субдиаграмме

{BlockHandle, sfID}

Массив ячеек с указателем на диаграмму Stateflow или атомарную субдиаграмму и ID объекта, содержавшегося в том графике или субдиаграмме

portID

Выходной порт блока object

Выходные аргументы

max

Максимальное значение сигналов выводится компонентом модели object в cvdata объект, cvdo. Если object выводит вектор, min и max также векторы.

min

Минимальное значение сигналов выводится компонентом модели object в cvdata объект, cvdo. Если object выводит вектор, min и max также векторы.

Примеры

свернуть все

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

Переместите текущую директорию MATLAB® в местоположение, которое содержит файлы в качестве примера.

openExample('slcoverage/CollectSignalRangeDataForABlockExample');

Загрузите модель и настройте опции покрытия

Загрузите модель в память. Этот пример использует маленькие модели контроллеров.

modelName = 'slvnvdemo_cv_small_controller';
load_system(modelName)

Объявите настройки покрытия с помощью структуры названия и значения параметра. Для полного списка параметров покрытия и их возможных значений, смотрите Настройки Покрытия.

covOpts.CovEnable = 'on';
covOpts.CovSaveSingleToWorkspaceVar = 'on';
covOpts.CovSaveName = 'covData';
covOpts.CovMetricSignalRange = 'on';

Симулируйте модель с помощью sim с именем модели и структурой параметра как входные параметры.

simOut = sim(modelName,covOpts);

Получите данные о диапазоне сигнала

Получите указатель блока блока продукта с помощью get_param.

bHandle = get_param([modelName,'/Product'],'Handle');

Получите данные о диапазоне сигнала путем вызова sigrangeinfo с cvdata возразите и указатель блока как входные параметры.

[minVal, maxVal] = sigrangeinfo(covData,bHandle)
minVal =

     0


maxVal =

   25.0000

Альтернативы

Используйте настройки покрытия, чтобы собрать покрытие диапазона сигнала для модели:

  1. Откройте модель, для которой вы хотите собрать покрытие диапазона сигнала.

  2. В Редакторе моделей выберите Model Settings на вкладке Modeling.

  3. На панели Coverage диалогового окна Configuration Parameters выберите Enable coverage analysis.

  4. Под Coverage metrics выберите Signal Range.

  5. Нажмите OK, чтобы закрыть диалоговое окно Configuration Parameters и сохранить ваши изменения.

  6. Симулируйте модель путем нажатия кнопки Run и рассмотрите результаты.

Представленный в R2006b