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

Определяйте частоты дискретизации

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

Для недискретных блоков компоненты вектора являются символьными значениями, которые представляют один из типов в Типах Частоты дискретизации. Следующая таблица обобщает эти типы и соответствующие значения частоты дискретизации. Таблица также задает явный характер каждого типа частоты дискретизации и определяет связанный цвет и аннотацию. Поскольку наследованная частота дискретизации является явной, можно задать его как [-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 окрашен согласно тому уровню.

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

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

ex_specify_sample_time

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

ex_specify_sample_time после Установки Частот дискретизации

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

Установить частоту дискретизации блока в интерактивном режиме:

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

  2. Введите частоту дискретизации в поле Частоты дискретизации.

  3. Нажать ОК.

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

Чтобы задать и осмотреть основанные на блоке частоты дискретизации всюду по модели, рассмотрите использование Редактора Данных модели (Представление> Редактор Данных модели). На Inports/Outports Сигналы и вкладки Хранилищ данных, устанавливают представление Change выпадающий список на Design и используют столбец Частоты дискретизации. Для получения дополнительной информации о Редакторе Данных модели, смотрите Configure Data Properties при помощи Редактора Данных модели.

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

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

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

  2. Оставьте выпадающий пункт меню опций частоты дискретизации Выходного порта как Specify.

  3. Замените the -1 в поле частоты дискретизации Выходного порта с 0.2.

  4. Нажать ОК.

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

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

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

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

|

Была ли эта тема полезной?