Установка времени выборки входного порта, который наследует время выборки от порта, к которому он подключен
Нет
MATLAB
SetInputPortSampleTime(s, port, time)
s Экземпляр Simulink.MSFcnRunTimeBlock класс, представляющий Уровень 2 MATLAB S-Function block.
port Целочисленное значение, указывающее индекс порта, режим выборки которого должен быть установлен.
time Двухэлементный массив, [period offset], которая определяет период и смещение времени, в течение которого этот порт отсчитывает свои входные данные.
Модуль Simulink ® вызывает этот метод с временем выборки, котороеport наследует от порта, к которому он подключен.
Для Level-2 S-функций MATLAB, если наследуемое время выборки приемлемо, этот метод устанавливает время выборки и время смещения с помощью строки.
s.InputPort(port).SampleTime = time;
Модуль вызывает этот метод до тех пор, пока не будут указаны все входные порты с наследуемым временем выборки.
Если указано унаследованное время выборки на основе порта, время выборки гарантированно будет одним из следующих значений, где 0.0 < period < inf и 0.0 <= offset < period.
| Время выборки | Время смещения | |
|---|---|---|
| Непрерывный | 0.0 | 0.0 |
| Дискретный | period | offset |
Постоянные, запускаемые и переменные значения времени выборки не распространяются на S-функции с значениями времени выборки на основе портов.
Обычно SetInputPortSampleTime вызывается один раз для каждого порта с временем выборки входного порта. Однако могут быть случаи, когда эта функция вызывается несколько раз. Это происходит, когда модуль моделирования преобразует непрерывное время выборки в непрерывное, но фиксированное в малых шагах время выборки. Когда это происходит, исходные значения времени выборки, указанные в setup восстанавливаются перед повторным вызовом этого метода.
Конечное время выборки, указанное в порту, может отличаться (но эквивалентно) от времени выборки, указанного этим методом. Это происходит, когда
Модель использует решатель с фиксированным шагом, а порт имеет непрерывное, но фиксированное время выборки. В этом случае модуль Simulink преобразует время выборки в основное время выборки для модели.
Двигатель корректирует время выборки так, чтобы оно было как можно более численно звуковым. Например, двигатель преобразует [0.2499999999999, 0] кому [0.25, 0].
S-функция может исследовать конечное время выборки в setup.
setup, Simulink.MSFcnRunTimeBlock , mdlSetInputPortSampleTime