Сравните и объедините модели Simulink, содержащие Stateflow

В этом примере показано, как использовать отчет сравнения в MATLAB®, чтобы изучить то, что изменилось между двумя различными проектами. Это показывает, как просмотреть и объединить изменения между двумя моделями Simulink®, содержащими Stateflow® с помощью отчета сравнения. Лицензия Stateflow требуется запустить этот пример.

Сравните модели

Создайте рабочую копию файлов в качестве примера. MATLAB® копирует файлы в папку в качестве примера так, чтобы можно было отредактировать их.

slcomparisons.examples.stateflowMerge;

Пользователь добавил новый kickdown режим к shift_logic. Можно использовать Сравнение Модели Simulink, чтобы сравнить эти две модели и представить отчет, чтобы исследовать и слить различия.

Используйте visdiff сравнить sl_sfcar_1 и sl_sfcar_2 модели.

visdiff('sl_sfcar_1','sl_sfcar_2');

Изучите результаты

Инструмент Сравнения показывает отчет, который только включает различия между этими двумя моделями, не полные иерархии модели.

Цвета указывают, были ли элементы изменены (фиолетовые), вставили (синий), или удаленный (желтый).

Продвижение через различия

Используйте Следующие и Предыдущие кнопки навигации на вкладке Comparison, чтобы продвинуться через группы изменений в отчете:

  • Отчет проходит изменения один за другим. Если выбранный пункт в Левом дереве будет иметь соответствие, это будет также выбрано в Правильном дереве.

  • MATLAB отображает обе модели рядом с отчетом. Отчет подсвечивает выбранные пункты в обеих моделях Simulink, если это возможно.

Подсветите различия в моделях Simulink

Выберите древовидный узел Out1 в Правильном дереве. Заметьте, что отчет подсвечивает Out1 в отчете и соответствующем блоке в модели sl_sfcar_2.

Управлять выделением в моделях, на вкладке Comparison, в разделе Highlight, выборе или очищать флажок Always Highlight. Можно нажать кнопку Highlight Now, чтобы подсветить в настоящее время выбранный узел отчета в любое время.

Подсветите различия в диаграмме Stateflow

Просмотрите вниз дерево, чтобы определить местоположение диаграмм Stateflow в отчете. Наблюдайте значок диаграммы Stateflow рядом с shift_logic узел. Нажмите kickdown в Правильном дереве. Отчет отображает оба shift_logic Диаграммы Stateflow. Наблюдайте где новый kickdown функциональность была добавлена к одному из графиков.

Фильтрация результатов

Можно управлять типом изменений, отображенных в отчете сравнения путем применения фильтров. Чтобы видеть доступные фильтры и применяются ли они к текущему отчету, на вкладке Comparison, в разделе Filter, кликают по стрелке вниз, чтобы расширить галерею фильтра. Кликните по именам фильтра к переключателю, применяются ли они. В разделе Filter нажмите Show или Hide, чтобы управлять, как фильтры применяются.

Например, некоторая информация в файле модели Simulink задана как являющийся нефункциональным. Это изменения, которые вряд ли изменят поведение проекта. Нефункциональные элементы скрыты по умолчанию. Можно показать им путем отмены выбора кнопки Nonfunctional Changes, когда Скрыть кнопка фильтра нажимается.

Объедините изменения в моделях, содержащих Stateflow

Можно объединить изменения между двумя моделями Simulink и Stateflow путем нажатия кнопки Merge Mode в панели инструментов. Это создает третий файл, targetFile, который может содержать изменения или из левой или из правильной модели модели. Используйте кнопки в Целевом дереве, чтобы выбрать различия, чтобы сохранить в targetFile.

Нажмите кнопку Save File, чтобы сохранить изменения, которые вы выбрали по правильной модели (sl_sfcar_2).

Совет: Объедините блоки перед линиями и объедините состояния и соединения прежде, чем объединить переходы. Смотрите Советы Слияния.

Смотрите также

visdiff

Дополнительная информация

Сравните модели Simulink

Сравнение моделей с идентичными именами

Связанные примеры

Сравните и объедините модели Simulink

Разрешите конфликты с Simulink слияние с тремя путями