Если ваш алгоритм должен обработать непрямые данные сквозного соединения через Систему object™, используйте matlab.system.mixin.Nondirect
class., Этот класс использует output
и методы update
, чтобы обработать непрямые данные сквозного соединения через Системный объект.
Большинство Системных объектов использует прямое сквозное соединение, где входной параметр объекта необходим, чтобы сгенерировать вывод. Для этих прямых объектов сквозного соединения метод step
вычисляет вывод и обновляет значения состояния. Для непрямого сквозного соединения, однако, вывод объекта зависит от внутренних состояний и не непосредственно на входных параметрах. Входные параметры или подмножество входных параметров, используются, чтобы обновить объектные состояния. Для этих объектов, вычисляя вывод разделяется от обновления значений состояния. Это позволяет вам использовать объект в качестве элемента обратной связи в обратной связи.
Объект задержки является примером непрямого объекта сквозного соединения.
Добавьте класс matlab.system.mixin.Nondirect
к верхней части файла родительского класса для Системного объекта после matlab.System
class., Например:
IntegerDelaySysObj < matlab.System & matlab.system.mixin.Nondirect
Этот шаг разделяет на подклассы от класса matlab.system.mixin.Nondirect
в дополнение к базовому классу matlab.System
.
Реализуйте следующие методы:
outputImpl updateImpl
При реализации метода outputImpl
не получайте доступ к входным параметрам Системного объекта, для которых прямой флаг сквозного соединения является ложным.
Если Системный объект поддерживает генерацию кода и не наследовался matlab.system.mixin.Propagates
, Simulink® может автоматически вывести прямые настройки сквозного соединения из Системного объекта код MATLAB®. Однако, если Системный объект не поддерживает генерацию кода, метод isInputDirectFeedthroughImpl
по умолчанию возвращает false (никакое прямое сквозное соединение). В этом случае замените этот метод, если вы хотите поведение не по умолчанию.
Обработка непрямого сквозного соединения изменяет способ, которым программное обеспечение вызывает методы Системного объекта в контексте механизма Simulink.