exponenta event banner

ssc_build

Создание пользовательской библиотеки из коллекции файлов Simscape

Описание

пример

ssc_build(package) создает файл пользовательской библиотеки Simscape™ из указанного пакета, package. Звонить ssc_build из родительского каталога пакета, то есть из каталога, содержащего каталог пакета верхнего уровня. Дополнительные сведения о структуре каталогов пакетов см. в разделе Организация файлов Simscape.

При звонке ssc_build с одним аргументом файлу библиотеки присваивается имя package_lib и находится в родительском каталоге пакета. Библиотека содержит все вспомогательные библиотеки и блоки, созданные из файлов Simscape (исходных или защищенных), расположенных в пакете и его подкаталогах. Защищенные файлы Simscape имеют более высокий приоритет, чем исходные файлы при создании библиотеки. Если в пакете присутствуют как защищенные, так и исходные файлы, а исходные файлы новее защищенных файлов, ssc_build использует защищенные файлы для построения библиотеки, но выдает предупреждение.

пример

ssc_build(package,'-output',outputlibrary) создает пользовательский файл библиотеки Simscape из указанного пакета, package, с outputlibrary определение имени и расположения файла библиотеки. В этом синтаксисе используется пара «имя-значение», где '-output' является именем необязательного аргумента и outputlibrary - значение аргумента. Функция реализует частичное совпадение имен аргументов, поэтому задает '-o' так как имя аргумента также работает.

пример

ssc_build package - командная форма синтаксиса. Форма команды требует меньше специальных символов. Нет необходимости вводить круглые скобки или заключать ввод в одинарные или двойные кавычки. Разделяйте входные данные пробелами, а не запятыми.

Например, для построения пакета с именем +MyPackage, эти утверждения эквивалентны:

ssc_build MyPackage        % command form
ssc_build('MyPackage')     % function form

Также можно использовать форму команды с парой «имя-значение», описанной в предыдущем синтаксисе, если путь и имя выходной библиотеки являются символьным вектором. Например, для построения пакета с именем +MyPackage и сохраните библиотеку выходных данных как 'C:\Work\MyLibrary', эти утверждения эквивалентны:

ssc_build MyPackage -output C:\Work\MyLibrary          % command form
ssc_build('MyPackage','-output','C:\Work\MyLibrary')   % function form

Не использовать форму команды при outputlibrary использует переменные или такие функции, как fullfile, чтобы указать имя и расположение выходной библиотеки. Дополнительные сведения о двойственности команда-функция см. в разделе Выбор синтаксиса команды или синтаксиса функции.

ssc_build - это специальный синтаксис без аргументов, который можно использовать для вызова функции из структуры каталога пакета. Он создает библиотеку из текущего пакета с именем и расположением библиотеки по умолчанию. Чтобы указать другое имя или расположение для выходной библиотеки, вызовите ssc_build из родительского каталога пакета с помощью команды или функциональной формы синтаксиса с парой «имя-значение».

Примеры

свернуть все

Предположим, что папка пакета верхнего уровня, в которой хранятся файлы Simscape, имеет имя +SimscapeCustomBlocks и находится в C:\Work\MyLibraries.

Чтобы создать пользовательскую библиотеку блоков, измените текущую рабочую папку на C:\Work\MyLibraries. Затем в командной строке MATLAB ® введите :

ssc_build('SimscapeCustomBlocks');

Можно также использовать командную форму этого синтаксиса, которая требует меньшего количества специальных символов:

ssc_build SimscapeCustomBlocks;

Эта команда создает файл модели Simulink ® с именемSimscapeCustomBlocks_lib в родительском каталоге пакета, C:\Work\MyLibraries (то есть в том же каталоге, который содержит +SimscapeCustomBlocks пакет).

Предположим, что папка пакета верхнего уровня, в которой хранятся файлы Simscape, имеет имя +CustomElectricalBlocks и находится в C:\Work. Вы хотите создать пользовательскую библиотеку блоков из этого пакета, поместите ее в C:\Work\MyLibrariesи дать ему более короткое и значимое имя, CustomDiodes. Это можно сделать, предоставив пару «имя-значение» аргументу ssc_build функция.

Чтобы создать пользовательскую библиотеку блоков, измените текущую рабочую папку на C:\Work. Затем в командной строке MATLAB введите:

ssc_build('CustomElectricalBlocks','-output','C:\Work\MyLibraries\CustomDiodes')
Generating Simulink library 'CustomDiodes' in the output directory 'C:\Work\MyLibraries' ...

Этот вызов функции создает файл модели Simulink с именем CustomDiodes.slx в указанном каталоге. Добавить C:\Work\MyLibraries к пути MATLAB для упрощения использования этих пользовательских блоков в различных моделях.

Предположим, что пакет с исходными файлами находится в каталоге только для чтения. Например, +BatteryPack используется в примере литий-ионного батарейного блока с отказом с использованием массивов. Дополнительные сведения об этом пакете см. в разделе Пример - Аккумуляторный блок с отказом с использованием массивов.

Создание пользовательской библиотеки блоков из +BatteryPack необходимо указать расположение выходной библиотеки, отличное от родительского каталога пакета, доступного только для чтения. Это можно сделать, предоставив пару «имя-значение» аргументу ssc_build функция. В этом примере имя папки вывода является символьным вектором, который позволяет использовать командную форму синтаксиса.

Измените текущий рабочий каталог на каталог, содержащий +BatteryPack пакет.

cd(matlabroot)
cd toolbox/physmod/simscape/simscapedemos 

В командной строке MATLAB введите:

ssc_build BatteryPack -output C:\Work\BatteryPack_lib
Generating Simulink library 'BatteryPack_lib' in the output directory 'C:\Work' ...

Эта команда создает файл модели Simulink с именем BatteryPack_lib в указанном выходном каталоге, C:\Work.

Можно также воспользоваться частичным совпадением имени аргумента и еще больше сократить синтаксис команды:

ssc_build BatteryPack -o C:\Work\BatteryPack_lib

Эта команда эквивалентна предыдущей.

Входные аргументы

свернуть все

Имя пакета, содержащего файлы Simscape, указанный как вектор символов или скаляр строки и расположенный в каталоге, из которого вызывается ssc_build функция. package - имя каталога пакетов верхнего уровня без ведущего + персонаж. При звонке ssc_build используя синтаксис команды, не используйте кавычки вокруг package. Дополнительные сведения о двойственности команда-функция см. в разделе Выбор синтаксиса команды или синтаксиса функции.

Пример: ssc_build MyPackage - синтаксис команды для построения библиотеки из пакета +MyPackage. Синтаксис эквивалентной функции: ssc_build('MyPackage').

Имя и местоположение файла библиотеки блоков, созданного из пакета, заданного как вектор символов или строковый скаляр. При звонке ssc_build с помощью синтаксиса функции можно также использовать переменные и функции MATLAB, такие как fullfile или genpath, чтобы указать путь к файлу библиотеки.

Если указать имя файла без пути, библиотека будет создана в текущей рабочей папке. При указании имени файла можно указать расширение файла, .slxили опустить его.

Пример: fullfile(tempdir,'MyLibrary.slx') с помощью синтаксиса функций можно использовать переменные и функции MATLAB для задания пути.

Представлен в R2008b