Если ваш алгоритм должен обработать непрямые проходные данные через Систему object™, используйте isInputDirectFeedthroughImpl
outputImpl
, и updateImpl
методы. Эти методы обрабатывают непрямые проходные данные через Системный объект.
Большинство Системных объектов использует прямое сквозное соединение, где вход объекта необходим, чтобы сгенерировать выход. Для этих прямых проходных объектов, step
метод вычисляет выход и обновляет значения состояния. Для непрямого сквозного соединения, однако, выход объекта зависит от внутренних состояний и не непосредственно на входных параметрах. Входные параметры или подмножество входных параметров, используются, чтобы обновить объектные состояния. Для этих объектов, вычисляя выход разделяется от обновления значений состояния. Это позволяет вам использовать объект в качестве элемента обратной связи в обратной связи.
В этом примере показано, как реализовать объект задержки с непрямым сквозным соединением.
В MATLAB®, выберите New> System object> Basic.
Выберите Insert Method и реализуйте outputImpl
и updateImpl
методы.
outputImpl
вычисляет выходные параметры от состояний и/или входных параметров. updateImpl
обновления утверждают значения от входных параметров.
При реализации outputImpl
метод, не получайте доступ к входным параметрам Системного объекта, для которых прямой проходной флаг является ложным.
Если Системный объект поддерживает генерацию кода и не использует распространение, Simulink® может автоматически вывести прямые проходные настройки из Системного объекта код MATLAB. Однако, если Системный объект не поддерживает генерацию кода, isInputDirectFeedthroughImpl
по умолчанию метод возвращает false (никакое прямое сквозное соединение). В этом случае замените этот метод, чтобы задать непрямое проходное поведение.
Обработка непрямого сквозного соединения изменяет способ, которым программное обеспечение вызывает методы Системного объекта в контексте механизма Simulink.