Каждый Simulink® для успешной работы модели требуется набор файлов. Эти файлы могут включать ссылки на модели, файлы данных, S-функции и другие файлы, без которых модель не может запускаться. Эти необходимые файлы называются model dependencies. Анализатор Зависимостей позволяет вам анализировать модель, чтобы определить зависимости ее модели.
Точно так же Simscape™ файлы и пользовательские библиотеки также зависят от определенных файлов, чтобы создать их успешно, или чтобы правильно визуализировать и выполнить в MATLAB®. Эти файлы могут включать все файлы компонентов для создания библиотеки, файлы области, пользовательские файлы изображений для блоков или библиотек и так далее.
Инструменты анализа зависимостей для файлов Simscape состоят из следующих опций командной строки:
simscape.dependency.file
- Возвращает набор существующих файлов зависимостей полного пути и отсутствующих файлов для одного файла Simscape для определенного типа зависимости.
simscape.dependency.lib
- Возвращает набор существующих файлов зависимостей полного пути и отсутствующих файлов для пользовательского пакета библиотеки Simscape. Можно опционально задать тип зависимости и имя файла модели библиотеки.
simscape.dependency.model
- Верните набор связанных с Simscape файлов зависимостей и отсутствующих файлов для заданной модели, содержащей блоки Simscape и Simulink.
Анализатор Зависимостей также включает зависимости для блоков Simscape, присутствующих в модели. Для получения дополнительной информации об анализаторе зависимостей смотрите Анализ зависимостей модели.
Если пакет содержит защищенные Simscape файлы, с соответствующими исходными файлами Simscape в той же папке, анализ возвращает имена защищенных файлов, а затем анализирует исходные файлы на предмет дальнейших зависимостей. Если пакет содержит защищенные файлы Simscape без соответствующих исходных файлов, защищенные имена файлов возвращаются без последующего анализа.
Таким образом, информация о зависимостях не доступна пользователю модели, который имеет только защищенные файлы. Однако разработчик, у которого есть и исходный, и защищенный файлы, способен выполнить полный анализ зависимостей.
Чтобы проверить зависимости для одного файла Simscape, используйте функцию simscape.dependency.file
.
Для примера рассмотрим следующую директории структуру:
- +MySimscapeLibrary |-- +MechanicalElements | |-- lib.m | |-- lib.jpg | |-- spring.ssc | |-- spring.jpg | |-- ...
Пакет верхнего уровня, +MySimscapeLibrary
, находится в директории по пути MATLAB.
Чтобы проверить зависимости для файла spring.ssc
введите в командной строке MATLAB следующее:
[a, b] = simscape.dependency.file('MySimscapeLibrary.MechanicalElements.spring')
Эта команда возвращает два массива ячеек строк: array a
, содержащие полные имена путей к существующим файлам зависимостей (таким как spring.jpg
) и b массива
, содержащего имена отсутствующих файлов. Если ни один из файлов не пропал, выполните команду array b
пуст.
Для получения дополнительной информации смотрите simscape.dependency.file
страница с описанием функции.
Чтобы проверить зависимости для пакета библиотеки Simscape, используйте функцию simscape.dependency.lib
.
Например, чтобы вернуть все файлы зависимостей для пакета верхнего уровня +MySimscapeLibrary
измените рабочую директорию на папку, содержащую этот пакет, и введите в командной строке MATLAB следующее:
[a, b] = simscape.dependency.lib('MySimscapeLibrary')
Если эта команда запускается из рабочей директории внутри пакета, можно опустить имя библиотеки, поскольку это единственный аргумент, и ввести:
[a, b] = simscape.dependency.lib
Эта команда возвращает два массива ячеек строк: array a
, содержащие полные имена путей всех существующих файлов зависимостей и массивов b
, содержащего имена отсутствующих файлов. Если ни один из файлов не пропал, выполните команду array b
пуст.
Чтобы определить, какие файлы необходимы для совместного использования пакета библиотеки, введите:
[a, b] = simscape.dependency.lib('MySimscapeLibrary',simscape.DependencyType.Simulink)
В этом случае массивы a
и b
содержит все файлы, необходимые для создания библиотеки, запуска моделей, созданных из ее блоков, и их правильной визуализации.
Чтобы выполнить полную проверку зависимостей, откройте модель. На вкладке Modeling панели инструментов Simulink Toolstrip, в разделе Design, нажмите Dependency Analyzer. Для получения дополнительной информации смотрите Анализ зависимостей модели.
Чтобы проверить зависимости только от блоков и файлов Simscape, используйте функцию simscape.dependency.model
. Для примера откройте модель dc_motor
и тип:
[a b c d] = simscape.dependency.model('dc_motor')
Эта команда возвращает два массива ячеек строк и два списка структур. Массивы a
содержит полные пути имена всех существующих файлов зависимостей. Массивы b
содержит имена отсутствующих файлов. Списки структур c
и d
укажите типы ссылок для существующих и отсутствующих файлов ссылок, соответственно. Каждая структура включает поле 'names'
как список имен файлов, вызывающих ссылку, и поля 'type'
в качестве типа ссылки для каждого файла. Используются два типа ссылок: 'Simscape component'
указывает ссылку из блока модели. 'Simscape'
указывает ссылку из файла.
Если ни один из файлов не пропал, выполните команду array b
и перечислите d
пусты.