exponenta event banner

Укажите время образца

Обозначить время образца

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

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

Обозначения информации о времени выборки

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

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

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

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

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

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

Следующая модель, ex_specify_sample_time, служит в качестве справочной информации для этого раздела.

ex_specify_sample_time

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

ex_specify_sample_time после установки времени образца

Интерактивное определение времени образца на основе блоков

Чтобы установить время выборки блока в интерактивном режиме:

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

  2. Введите время выборки в поле Время выборки.

  3. Нажмите кнопку ОК.

Ниже приведен рисунок диалогового окна параметров для блока синусоидальной волны после ввода 0.1 в поле Время выборки.

Для задания и проверки времени образца на основе блоков в модели рекомендуется использовать Редактор данных модели (на вкладке Моделирование (Modeling) щелкните Редактор данных модели (Model Data Editor)). На вкладках Inports/Outports, Signals и Data Stores установите в раскрывающемся списке Change view значение Design и используйте столбец Sample Time. Дополнительные сведения о редакторе данных модели см. в разделе Настройка свойств данных с помощью редактора данных модели.

Интерактивное определение времени выборки на основе портов

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

  1. Дважды щелкните на блоке «Скорость перехода». Откроется диалоговое окно параметров.

  2. Оставьте в раскрывающемся меню опции времени выборки выходного порта как Specify.

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

  4. Нажмите кнопку ОК.

Дополнительные сведения о параметрах времени выборки в диалоговом окне Rate Transition parameters см. на справочной странице Rate Transition.

Программно задать время выборки на основе блоков

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

См. также

|