Simulink® позволяет вам задавать блочную частоту дискретизации непосредственно как численное значение или символически путем определения вектора частоты дискретизации. В случае дискретной частоты дискретизации вектор [Ts
], где , To
является периодом выборки, и Ts
является начальным смещением времени. Например, рассмотрите дискретную модель, которая производит ее выходные параметры каждые две секунды. Если ваш модуль норматива времени является секундами, можно непосредственно установить дискретную частоту дискретизации путем определения численного значения ofTo
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 после Установки Частот дискретизации
Установить частоту дискретизации блока в интерактивном режиме:
В окне модели Simulink дважды кликните блок. Блочное диалоговое окно параметра открывается.
Введите частоту дискретизации в поле Частоты дискретизации.
Нажать ОК.
Следующее является фигурой диалогового окна параметров для блока Sine Wave после ввода 0.1
в поле Частоты дискретизации.
Чтобы задать и осмотреть основанные на блоке частоты дискретизации всюду по модели, рассмотрите использование Редактора Данных модели (Представление> Редактор Данных модели). На Inports/Outports Сигналы и вкладки Хранилищ данных, устанавливают представление Change выпадающий список на Design
и используют столбец Частоты дискретизации. Для получения дополнительной информации о Редакторе Данных модели, смотрите Configure Data Properties при помощи Редактора Данных модели.
Блок Rate Transition имеет основанные на порте частоты дискретизации. Можно установить частоту дискретизации выходного порта в интерактивном режиме путем завершения следующих шагов:
Дважды кликните блок Rate Transition. Диалоговое окно параметров открывается.
Оставьте выпадающий пункт меню опций частоты дискретизации Выходного порта как Specify
.
Замените the -1
в поле частоты дискретизации Выходного порта с 0.2
.
Нажать ОК.
Для получения дополнительной информации об опциях частоты дискретизации в диалоговом окне параметров Перехода Уровня, смотрите страницу с описанием Перехода Уровня.
Чтобы установить блочную частоту дискретизации программно, установите ее параметр 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
, и затем перезапустить выполнение.
Типы частоты дискретизации | Что такое частота дискретизации?