exponenta event banner

Руководство по моделированию замены подсистемы Simscape

Чтобы создать код HDL для алгоритмов Simscape™, создайте модель реализации HDL с помощью Simscape HDL Workflow Advisor. Если при моделировании алгоритма Simscape следовать определенным инструкциям, помощник Simscape HDL Workflow Advisor заменяет подсистему Simscape соответствующим HDL Subsystem блок в модели реализации HDL. HDL Subsystem содержит алгоритм пространства состояний, в котором вместо блоков Simscape используются блоки Simulink ®, совместимые с HDL. Можно создать код HDL для HDL Subsystem блокировать и развертывать код на целевых устройствах FPGA и FPGA на системных модулях ввода-вывода FPGA Speedgoat. В этом случае, когда Вы выбираете Произвести логику проверки для флажка модели внедрения в Произвести задаче модели внедрения Советника по вопросам Технологического процесса Simscape HDL, Советник производит отдельную модель проверки пространства состояний. Эта модель сравнивает выходные данные HDL Subsystem и исходную подсистему Simscape для проверки того, что они функционально эквивалентны.

Если не следовать инструкциям, помощник Simscape HDL Workflow Advisor не сможет выполнить эту замену. В этом случае модель реализации HDL содержит алгоритм состояния-пространства с исходной подсистемой Simscape рядом с ней. Перед созданием кода необходимо изменить модель реализации и переупорядочить блоки таким образом, чтобы они заменили подсистему Simscape алгоритмом state-space. В этом случае при установке флажка Генерировать логику проверки для модели реализации помощник помещает логику проверки в модель реализации для проверки функциональной эквивалентности.

В дополнение к этим рекомендациям убедитесь, что модель Simscape настроена на совместимость с Simscape HDL Workflow Advisor. См. раздел Рекомендации по моделированию совместимости Simscape для HDL.

Заключите блоки Simscape в подсистему

  • Заключите блоки Simscape, для которых создается модель реализации HDL, в блок подсистемы и предоставьте тестовые входные данные. Внутри блока «Подсистема» модель может иметь несколько иерархий, использующих блоки Simscape.

  • Не используйте маскированные подсистемы. Simscape HDL Workflow Advisor не может заменить маскированные подсистемы в модели реализации HDL. Для автоматической замены подсистем можно использовать маскированные подсистемы, имеющие косметические маски. Косметические маски - это маски, имеющие только значок, но не имеющие параметров или кода инициализации.

  • В блоке подсистемы, содержащем блоки Simscape, на входных портах добавьте блоки Simulink-PS Converter (Simscape). На выходных портах этой подсистемы добавьте блоки PS-Simulink Converter (Simscape).

    • Используйте значимое имя для блоков конвертера Simulink-PS и конвертера PS-Simulink.

      Помощник Simscape HDL Workflow Advisor использует имена блоков преобразователя Simulink-PS и преобразователя PS-Simulink для входных и выходных портов HDL Subsystem блок. Использование значимого имени упрощает определение соответствия входных и выходных портов в модели реализации HDL.

    • В диалоговом окне «Параметры блока» блоков «Конвертер Simulink-PS» и «Конвертер PS-Simulink» на вкладке «Обработка ввода» оставьте для параметра «Фильтрация и производные» значение Provide signals и Обеспеченные сигналы установлены в Input only.

Например, откройте модель конвертера баков. Блок Simscape_system содержит блоки Simscape. Блоки вне этой подсистемы образуют тестовую среду.

open_system('sschdlexBuckConverterExample')
sim('sschdlexBuckConverterExample')

Buck converter model with test inputs and outputs captured.

Внутри Simscape_system , модель использует блоки Simscape и физические сигналы. Модель имеет блоки Simulink-PS Converter и PS-Simulink Converter на интерфейсах. Введите уникальные имена для этих блоков, чтобы они соответствовали соответствующим именам портов.

open_system('sschdlexBuckConverterExample/Simscape_system')

Inside buck converter subsystem.

Несколько соображений сети Simscape

Если модель Simscape содержит несколько сетей:

  • Заключите каждую сеть в подсистему. Добавьте блоки преобразователя Simulink-PS и преобразователя PS-Simulink в интерфейсе подсистемы.

  • Используйте блок конфигурации решателя (Simscape) для каждой сети. Используйте один и тот же образец времени для блоков конфигурации решателя в различных сетях.

    Например, эта модель содержит больше сетей Simscape, чем блоков конфигурации решателя, сеть Simscape не заменяется подсистемой HDL.

    Two networks with one Solver Configuration block used for both networks.

Затем помощник Simscape HDL Workflow Advisor заменяет каждую подсистему Simscape соответствующей HDL Subsystem.

Пример создания кода HDL для модели с несколькими сетями см. в разделе Создание кода HDL для моделей Simscape с несколькими сетями.

Избегайте использования определенных блоков в библиотеке утилит Simscape

Чтобы создать модель реализации, которая заменяет подсистему Simscape алгоритмом state-space, в исходной модели Simscape не используйте следующие блоки из библиотеки Simscape > Utilities Library:

Например, эта модель содержит блоки «Метка соединения» и «Шина Simscape» в двух различных подсистемах. Помощник Simscape HDL Workflow Advisor не может заменить эти подсистемы алгоритмом state-space.

Unsupported Simscape bus, connection labels and ports for HDL subsystem replacement.

См. также

|

Связанные темы