Используйте системные объекты в обратной связи

Если ваш алгоритм должен обработать непрямые данные сквозного соединения через Систему object™, используйте matlab.system.mixin.Nondirect class., Этот класс использует output и методы update, чтобы обработать непрямые данные сквозного соединения через Системный объект.

Большинство Системных объектов использует прямое сквозное соединение, где входной параметр объекта необходим, чтобы сгенерировать вывод. Для этих прямых объектов сквозного соединения метод step вычисляет вывод и обновляет значения состояния. Для непрямого сквозного соединения, однако, вывод объекта зависит от внутренних состояний и не непосредственно на входных параметрах. Входные параметры или подмножество входных параметров, используются, чтобы обновить объектные состояния. Для этих объектов, вычисляя вывод разделяется от обновления значений состояния. Это позволяет вам использовать объект в качестве элемента обратной связи в обратной связи.

Объект задержки является примером непрямого объекта сквозного соединения.

  1. Добавьте класс matlab.system.mixin.Nondirect к верхней части файла родительского класса для Системного объекта после matlab.System class., Например:

    IntegerDelaySysObj < matlab.System & matlab.system.mixin.Nondirect

    Этот шаг разделяет на подклассы от класса matlab.system.mixin.Nondirect в дополнение к базовому классу matlab.System.

  2. Реализуйте следующие методы:

    outputImpl
    updateImpl

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

  3. Если Системный объект поддерживает генерацию кода и не наследовался matlab.system.mixin.Propagates, Simulink® может автоматически вывести прямые настройки сквозного соединения из Системного объекта код MATLAB®. Однако, если Системный объект не поддерживает генерацию кода, метод isInputDirectFeedthroughImpl по умолчанию возвращает false (никакое прямое сквозное соединение). В этом случае замените этот метод, если вы хотите поведение не по умолчанию.

Обработка непрямого сквозного соединения изменяет способ, которым программное обеспечение вызывает методы Системного объекта в контексте механизма Simulink.

Связанные примеры

Больше о

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