Настройка времени выборки

Определяйте шаги расчета

Simulink® позволяет вам задавать шаг расчета блока непосредственно как численное значение или символически путем определения вектора шага расчета. В случае дискретного шага расчета вектор [Ts , To], где Ts является периодом выборки, и To является начальным смещением времени. Например, рассмотрите дискретную модель, которая производит ее выходные параметры каждые две секунды. Если ваш модуль норматива времени является секундами, можно непосредственно установить дискретный шаг расчета путем определения численного значения of 2 как параметр SampleTime. Поскольку значение смещения является нулем, вы не должны задавать его; однако, можно войти [2,0] в поле Sample time.

Для недискретных блоков компоненты вектора являются символьными значениями, которые представляют один из типов в Типах Шага расчета. Следующая таблица обобщает эти типы и соответствующие значения шага расчета. Таблица также задает явный характер каждого типа шага расчета и определяет связанный цвет и аннотацию. Поскольку наследованный шаг расчета является явным, можно задать его как [-1, 0] или как -1. Принимая во внимание, что, инициированный шаг расчета неявен; только Simulink может присвоить шаг расчета [-1, -1]. (Для получения дополнительной информации о цветах и аннотациях, информации о Шаге расчета вида на море.)

Обозначения информации о шаге расчета

Тип шага расчета'SampleTime' ЦветАннотацияЯвный
Дискретный[Ts, К]В порядке убывания скорости: красный, зеленый, синий, голубой, темно-зеленый, оранжевыйD1, D2, D3, D4, D5, D6, D7... DiДа
Непрерывный[0, 0]черныйПродолжение следуетДа
Зафиксированный на незначительном шаге[0, 1]серыйFiMДа
Наследованный[–1, 0]Нет данныхНет данныхДа
Постоянный[Inf, 0]пурпурныйInfДа
Переменная[–2, Tvo]коричневыйV1, V2... Vi Нет
Управляемый[основа,-2i], i = 0, 1, 2, …,коричневыйCtrl1, Ctrl2, Ctrl3, …. CtrliДа
ГибридНет данныхжелтыйНет данныхНет
ИнициированныйSource: D 1, источник: D2... Источник: DiголубойT1, T2... Ti Нет
Асинхронный[–1, –n]фиолетовыйA1, A2... АйНет
Поток данныхНет данныхсветло-фиолетовыйНет данныхНет

Цвет, который присвоен каждому блоку, зависит от своего шага расчета относительно других шагов расчета в модели. Это означает, что тот же шаг расчета может быть присвоен различные цвета в родительской модели и в моделях, на которые он ссылается. (См. Модели - ссылки.)

Например, предположите, что модель задает три шага расчета: 1, 2 и 3. Далее, предположите, что это ссылается на модель, которая задает два шага расчета: 2 и 3. В этом случае блоки, действующие на уровне частоты дискретизации 2, появляются как зеленые в родительской модели и как красные в модели, на которую ссылаются.

Важно отметить, что Мультиплексор и блоки Демультиплексора просто группируют операторы; сигналы, проходящие через них, сохраняют свою информацию о синхронизации. Поэтому строки, происходящие от блока Demux, могут иметь различные цвета, если они управляются источниками, имеющими различные шаги расчета. В этом случае блоки Мультиплексора и Демультиплексора являются цветом, закодированным как гибриды (желтые), чтобы указать, что они обрабатывают сигналы с несколькими уровнями.

Точно так же блоки Subsystem, которые содержат блоки с отличающимися шагами расчета, также окрашены как гибриды, потому что нет никакого одного уровня, сопоставленного с ними. Если все блоки в подсистеме, запущенной на одном уровне, блок Subsystem окрашен согласно тому уровню.

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

Следующая модель, ex_specify_sample_time, служит ссылкой для этого раздела.

ex_specify_sample_time

В этом примере, набор шаг расчета входного синусоидального сигнала к 0.1. Цель состоит в том, чтобы достигнуть выходного шага расчета 0.2. Блок Rate Transition служит нулевым порядком, содержат. Получившуюся блок-схему после установки шагов расчета и симуляции модели показывают в следующей фигуре. (Цвета и аннотации указывают, что это - дискретная модель.)

ex_specify_sample_time после Установки Шагов расчета

Задайте основанные на блоке шаги расчета в интерактивном режиме

Установить шаг расчета блока в интерактивном режиме:

  1. В окне модели Simulink дважды кликните блок. Диалоговое окно параметров блоков открывается.

  2. Введите шаг расчета в поле Sample time.

  3. Нажмите OK.

Следующее является фигурой диалогового окна параметров для блока Sine Wave после ввода 0.1 в поле Sample time.

Чтобы задать и осмотреть основанные на блоке шаги расчета в модели, рассмотрите использование Model Data Editor (View> Model Data Editor). На Inports/Outports Signals и вкладки Data Stores, устанавливают Change view выпадающий список на Design и используют столбец Sample Time. Для получения дополнительной информации о Model Data Editor, смотрите Configure Data Properties при помощи Model Data Editor.

Задайте основанные на порте шаги расчета в интерактивном режиме

Блок Rate Transition имеет основанные на порте шаги расчета. Можно установить шаг расчета выходного порта в интерактивном режиме путем завершения следующих шагов:

  1. Дважды кликните блок Rate Transition. Диалоговое окно параметров открывается.

  2. Оставьте выпадающий пункт меню Output port sample time options как Specify.

  3. Замените the -1 в поле Output port sample time с 0.2.

  4. Нажмите OK.

Для получения дополнительной информации об опциях шага расчета в диалоговом окне параметров Перехода Уровня, смотрите страницу с описанием Перехода Уровня.

Задайте основанные на блоке шаги расчета программно

Чтобы установить шаг расчета блока программно, установите его параметр SampleTime на желаемый шаг расчета с помощью команды set_param. Например, чтобы установить шаг расчета блока Gain в модели “Specify_Sample_Time” к наследованному (-1), введите следующую команду:

set_param('Specify_Sample_Time/Gain','SampleTime','[-1, 0]')

Как с интерактивной спецификацией, можно ввести только первый векторный компонент, если второй компонент является нулем.

set_param('Specify_Sample_Time/Gain','SampleTime','-1')

Задайте основанные на порте шаги расчета программно

Чтобы установить шаг расчета выходного порта блока Rate Transition к 0.2, используйте команду set_param с параметром OutPortSampleTime:

set_param('Specify_Sample_Time/Rate Transition',...
'OutPortSampleTime', '0.2')

Доступ к информации о шаге расчета программно

Чтобы получить доступ ко всем шагам расчета, сопоставленным с моделью, используйте API Simulink.BlockDiagram.getSampleTimes.

Чтобы получить доступ к шагу расчета одного блока, используйте API Simulink.Block.getSampleTimes.

Настройки времени выборки для авторского блока

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

Определение модулей шага расчета

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

Измените шаг расчета после времени начала симуляции

Чтобы изменить шаг расчета после, симуляция начинается, необходимо остановить симуляцию, сбросить параметр SampleTime, и затем перезапустить выполнение.

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

|

Для просмотра документации необходимо авторизоваться на сайте