Этот пример показывает, как применить пользовательскую задачу к набору файлов, управляемых Проектом Simulink®. Пользовательская задача примера анализирует модели Simulink, которые находятся в проекте, сообщая о количестве блоков в каждой модели.
1. Запустите следующие команды, чтобы создать и открыть рабочую копию "sldemo_slproject_airframe" примера.
Simulink.ModelManagement.Project.projectDemo('airframe'); rebuild_s_functions('no_progress_dialog');
Initializing: Project Path Setting up working folders Identifying shadowed project files Building with 'gcc'. MEX completed successfully.
Пример проекта копирует файлы в новую папку так, чтобы можно было отредактировать их и подвергнуть их управлению локальной версией.
Инструмент Проекта Simulink открывает и загружает проект.
2. Нажмите Custom Task button в разделе Tools вкладки панели инструментов Проекта Simulink®.
Вы задаете пользовательскую задачу с функцией MATLAB®. Проект Корпуса в качестве примера содержит пример пользовательские задачи в custom_tasks папке.
3. "Пользовательская Задача" списки меню доступные пользовательские задачи.
Чтобы просмотреть, отредактируйте, и создайте пользовательские задачи, нажмите Custom Tasks> Manage Custom Tasks в разделе Tools вкладки панели инструментов Проекта Simulink®.
4. Выберите 'Analyze Model Files' пользовательская задача.
Имя функции вашей выбранной пользовательской задачи появляется в окне редактирования "Custom task". Пример analyzeModelFiles добавляет метку от категории "Метрики" к каждому образцовому файлу в проекте. Метки в этой категории имеют числовые данные. Пользовательская задача будет считать количество блоков в каждой модели и присоединять этот номер к метке.
5. В диалоговом окне Custom Task проверьте, что все образцовые файлы установили флажки во Включать столбце.
6. Нажмите Run Task button на правом нижнем из Пользовательского наложения Задачи.
Результаты для выбранного файла также показывают в панели Результатов в нижней части диалогового окна. Это может быть полезно, когда возвращенные результаты длинны, или содержат разметку HTML.
Следующий пример показывает диалоговое окно после выполнения пользовательской задачи на некоторых моделях. Можно настроить столбцы, чтобы показать с кнопкой Actions значка "винтика" в правом верхнем.
Пользовательскими Задачами являются функции MATLAB. Отредактируйте свою пользовательскую задачу с редактором MATLAB. В следующих шагах вы изменяете пользовательскую задачу использовать API Проекта, чтобы добавить метку с данными, а также сохранивший любые грязные образцовые файлы.
7. Запустите следующий код MATLAB, чтобы создать Метрическую категорию и Блочную метку количества в проекте.
project = simulinkproject; category = createCategory(project, 'Metrics', 'double');
8. Дважды кликните analyzeModelFiles.m (или щелкните правой кнопкой и выберите Open) отредактировать его в редакторе MATLAB.
9. Добавьте следующие строки сразу после sprintf команды:
[~, compileStats] = sldiagnostics(name, 'CompileStats'); addLabel(projectFile, 'Metrics', 'CPU Compile Time', sum([compileStats.Statistics.CPUTime]));
Можно использовать редактора MATLAB, чтобы установить точки останова и отладить пользовательскую функцию задачи, так же, как с любой другой функцией MATLAB.
Если вы повторно выполняете пользовательскую задачу, она добавляет метку Времени компиляции ЦП к каждому образцовому файлу, который может быть скомпилирован и присоединяет данные к метке, показывающей общее время для всех фаз компиляции для модели. Модели, которые не могут быть скомпилированы, показывают "Отказавший, чтобы анализировать файл" в Пользовательском Отчете Задачи и отображении деталей как предупреждение в командном окне. Исследуйте пользовательскую задачу analyzeModelFiles.m, чтобы видеть, как обработать ошибки.
Чтобы просмотреть новые метрические данные, или покажите Метрический столбец в Пользовательском Отчете Задачи или посмотрите в представлении файлов проекта.
Создайте новую пользовательскую задачу путем создания новой функции MATLAB. Ваши пользовательские задачи должны:
Будьте сохранены на пути MATLAB.
Примите единственный входной параметр: полный путь к файлу.
Возвратите единственный выходной аргумент.
Чтобы создать пользовательские задачи, нажмите Custom Tasks> Manage Custom Tasks в разделе Tools вкладки панели инструментов Проекта Simulink®. В диалоговом окне Manage Custom Tasks нажмите Add, чтобы открыть новый файл с инструкциями, которые ведут вас, чтобы создать пользовательскую задачу с правильной функциональной подписью.
10. Нажмите "Add" и выберите пункт меню "Add Using New Script".
Диалоговое окно файла открывает то, чтобы просить, чтобы вы выбрали, где создать новую пользовательскую задачу. Пользовательская задача должна быть сохранена на пути MATLAB, чтобы запуститься.
11. Обеспечьте имя файла и сохраните файл в 'custom_tasks' папке в рамках проекта.
Редактор MATLAB открывает файл, предварительно заполненный с простым примером пользовательская задача.
12. Чтобы создать вашу новую пользовательскую задачу, отредактируйте содержимое примера, пользовательская задача функционирует и сохраняет.