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

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

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

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

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

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

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

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

Важно отметить, что Mux и блоки Demux просто группируют операторы; сигналы, проходящие через них, сохраняют свое время выполнения. Поэтому линии, происходящие от блока Demux, могут иметь различные цвета, если они управляются источниками, имеющими различные шаги расчета. В этом случае Mux и блоки 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 (на вкладке Modeling, нажмите Model Data Editor). На Inports/Outports Signals и вкладки Data Stores, устанавливают Change view выпадающий список на Design и используйте столбец Sample Time. Для получения дополнительной информации смотрите 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.

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

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

Чтобы установить шаг расчета блока программно, установите его SampleTime параметр к желаемому шагу расчета с помощью set_param команда. Например, чтобы установить шаг расчета the 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 параметр, и затем перезапускает выполнение.

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

|