Создайте, отредактируйте и управляйте переменными рабочей области

Поделиться информацией, такой как значения параметров и данные сигнала вводит между отдельными блоками и моделями, вы используете переменные рабочей области. Например, можно создать числовую переменную MATLAB® в базовом рабочем пространстве и использовать переменную, чтобы установить значение параметра Gain в нескольких блоках Gain одновременно (см. Значения Параметров блоков Доли и Повторного использования путем Создания Переменных). Можно создать Simulink.Bus возразите, чтобы явным образом задать структуру сигнала шины.

Можно сохранить переменные рабочей области в базовом рабочем пространстве, рабочих пространствах модели или словарях данных. Чтобы решить, где сохранить переменные, смотрите, Определяют, Где Сохранить Переменные и Объекты для Моделей Simulink.

Инструменты для переменных управления

Используйте один или несколько из этих методов, чтобы создать, изменить, сохранить, и переместить переменные рабочей области:

  • Совместно использовать значения параметров блоков и создать Simulink.Parameter и Simulink.Signal объекты (например, при подготовке к генерации кода), можно использовать Model Data Editor. Можно взаимодействовать со всеми параметрами блоков, сигнальными линиями и состояниями блока в модели целиком. Можно также смотреть настраиваемые параметры блоков в списке, который можно искать, отсортировать, и фильтр.

    • Чтобы создать переменную, в таблице данных, начинают редактировать ячейку, которая соответствует значению параметров блоков (в столбце Value) или имя состояния или сигнала (в столбце Name). Введите имя переменной, вы хотите создать и кликнуть по кнопке действий в правой стороне ячейки.

      Если значение параметров блоков уже установлено к простому числовому выражению, можно создать переменную для того выражения. Щелкните в правой стороне ячейки, которая соответствует значению, затем выберите Create variable. В диалоговом окне Create New Data, набор название и местоположение для новой переменной, затем нажимают Create. Ячейка теперь отображает новую переменную.

    • Чтобы изменить переменные при помощи столбцов в таблице данных, нажмите кнопку Show/refresh additional information. Затем таблица данных содержит строки, которые соответствуют переменным, и возражает, что модель использует.

    • Чтобы взаимодействовать с одной переменной за один раз (например, чтобы смотреть все переменные свойства целиком), открывают Property Inspector (на вкладке Modeling, под Design, нажимают Property Inspector), и выберите соответствующую строку в таблице данных. Property Inspector показывает свойства выбранной переменной.

    Для получения дополнительной информации о Model Data Editor, смотрите Configure Data Properties при помощи Model Data Editor.

  • Чтобы взаимодействовать с небольшим количеством параметров, сигналы или состояния за один раз, используют отдельные диалоговые окна параметров блоков или Property Inspector, чтобы создать переменные для совместного использования значений параметров блоков и создать и сконфигурировать параметр и объекты сигнала для генерации кода.

    В диалоговом окне или Property Inspector, кликните по кнопке действий рядом со значением параметров блоков, имени сигнала, или утвердите имя.

  • Чтобы создать и отредактировать любой тип или класс переменной или объекта, переменные перемещения между рабочими областями, и смотреть все переменные в рабочей области целиком, используют Model Explorer. Можно также переименовать переменные и точно анализировать способ, которым целая модель или отдельный блок используют переменные. Смотрите Model Explorer и Редактирование и Управляйте Переменными Рабочей области при помощи Model Explorer.

Отредактируйте значение переменных или свойство от параметров блоков

В этом примере показано, как изменить значение параметра Gain (блок Gain), чье значение установлено числовой переменной. Измените переменную, не параметры блоков.

  1. Откройте модель f14. Модель загружает переменные в базовое рабочее пространство.

  2. В модели откройте Property Inspector. На вкладке Modeling, под Design, нажимают Property Inspector.

  3. В модели выберите блок Gain, который использует переменную Mw.

  4. В Property Inspector нажмите кнопку рядом со значением параметра Gain. Выберите Open.

  5. В диалоговом окне Data properties введите новое значение для переменной в поле Value и нажмите OK.

Измените структуру и переменные типа массив в интерактивном режиме

Чтобы смотреть и изменить переменную, значение которой является структурой или массивом, можно запустить Редактора переменных путем нажатия соседней кнопки. Выберите один из этих методов:

  • В Model Explorer выберите переменную в панели Contents. В Диалоговой панели (правая панель), появляется кнопка.

  • В Model Data Editor (на вкладке Modeling, нажмите Model Data Editor), на вкладке Parameters, нажмите кнопку Show/refresh additional information. В таблице данных найдите строку, которая соответствует переменной и в столбце Value, начните редактировать значение переменной. Кнопка появляется в правой стороне ячейки.

  • В диалоговом окне блока или Property Inspector, кнопка появляется рядом со значением параметров блоков, которые используют переменную. Нажмите кнопку и используйте пункты меню открыть диалоговое окно свойства для переменной. Затем в диалоговом окне свойства нажмите кнопку снова, чтобы запустить Редактора переменных. Можно использовать этот метод только для объектов параметра, таких как Simulink.Parameter.

Разветвления изменения или удаления переменной

Когда вы изменяете или удаляете переменную, изменение может повлиять на несколько блоков и моделей, которые используют переменную. Чтобы оценить удар путем определения, где переменная используется, используйте Model Explorer (см., Анализируют Переменное Использование в Модели). Однако можно анализировать переменное использование только для моделей, которые открыты во время анализа. Прежде чем вы выполните анализ, откроете любые модели, которые вы подозреваете, используют переменную.

Модели и блоки используют переменные посредством разрешения имени (см. Разрешение Символа). Когда вы меняете имя переменной, не внося соответствующие изменения в зависимые блоки и модели, блоки и модели генерируют ошибки. Вместо этого чтобы переименовать переменную в контексте одной или нескольких моделей, смотрите, Переименовывают Переменную В Модели.

Когда блок или модель не могут получить доступ к переменной, в которой это нуждается, это генерирует ошибку в Диагностическом Средстве просмотра. В некоторых случаях можно использовать кнопки в Диагностическом Средстве просмотра, чтобы зафиксировать ошибку (например, путем восстановления удаленной переменной). Чтобы увеличить вероятность, что можно использовать Диагностическое Средство просмотра, чтобы восстановиться с отсутствия переменной, используйте эти методы:

  • Сохраните переменные в словаре данных вместо базового рабочего пространства. Со словарем данных вы получаете дополнительные опции для восстановления. Для получения информации о словарях данных смотрите то, Что Словарь Данных?.

  • Для каждой модели сохраните соответствующий файл кэша Simulink® доступным. Например, когда вы совместно используете модель с кем-то еще, совместно используете файл кэша, также. Когда вы выбираете последние файлы проекта модели от системы контроля версий, выбираете файл кэша от непрерывной системы интегрирования или последней папки сборки. Файл кэша сохраняет информацию, которую Simulink Coder™ может использовать, чтобы помочь вам восстановиться с отсутствия переменной. Для получения дополнительной информации о файлах кэша Simulink, смотрите Долю Файлы кэша Simulink для Более быстрой Симуляции.

Анализируйте переменное использование в модели

Чтобы анализировать пути, которыми модель использует переменные, используйте Model Explorer. Вы можете:

  • Определите, где переменная используется в модели.

  • Определите, использует ли модель переменную.

  • Определите, какие переменные в рабочей области не используются моделью.

Для получения дополнительной информации смотрите Редактирование и Управляйте Переменными Рабочей области при помощи Model Explorer.

Переименуйте переменную в модели

В этом примере показано, как переименовать переменную в Model Data Editor.

  1. Откройте модель f14. Модель загружает переменные в базовое рабочее пространство.

  2. В модели, на вкладке Modeling, нажимают Model Data Editor. В Model Data Editor смотрите вкладку Parameters.

  3. В модели щелкните, блок Gain пометил Mw.

    В Model Data Editor столбец Value показывает, что блок использует переменную Mw. Предположим, что вы хотите переименовать эту переменную.

  4. В Model Data Editor нажмите кнопку Show/refresh additional information.

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

  5. Активируйте кнопку Change scope.

    Теперь таблица данных показывает информацию об элементах данных в подсистемах.

  6. В поле Filter contents введите Mw.

    Таблица данных показывает строки, которые соответствуют переменной и с блоками, которые используют переменную.

  7. В строке, которая представляет Mw, щелкните правой кнопкой и выберите Rename All.

  8. В диалоговом окне Select a system кликните по имени модели f14 выбрать его как контекст для переименования переменной Mw.

  9. Снимите флажок Search in referenced models, начиная с f14 не ссылается ни на какие модели и нажимает OK.

    С выбранным Search in referenced models можно переименовать целевую переменную везде, это используется в иерархии модели - ссылки. Однако переименование целевой переменной в целой иерархии может занять больше времени.

    Флажок Update diagram to include recent changes снимается по умолчанию, чтобы сэкономить время путем предотвращения ненужных обновлений диаграммы модели. Установите флажок, чтобы включить недавние изменения, которые вы внесли в модель путем принуждения обновления схемы.

  10. В диалоговом окне Rename All введите новое имя для переменной в поле New name и нажмите OK.

  11. Нажмите Show/refresh additional information снова. Поскольку операция переименования изменила название переменной и значения некоторых параметров блоков для более достоверной информации в Model Data Editor, необходимо нажать Show/refresh additional information.

Взаимодействуйте с переменными программно

В командной строке можно создать и изменить переменные в базовом рабочем пространстве путем ввода команд, таких как myVar = 15;. Чтобы программно создать, измените, и сохраните переменные в различной рабочей области, такие как рабочее пространство модели, используйте программируемый интерфейс для целевой рабочей области. Таблица показывает интерфейсы и методы, что можно использовать, чтобы программно управлять переменными.

Целевая рабочая областьМетод или интерфейс
Базовое рабочее пространствоВведите команды в командной строке.
Рабочее пространство моделиСмотрите Simulink.ModelWorkspace.
Словарь данныхСмотрите хранят данные в словаре программно.

Чтобы программно перечислить переменные, которые модель использует или не использует, смотрите Simulink.findVars.

К программно переменным доступа в целях широких значений параметров блоков рассмотрите использование Simulink.SimulationInput объекты вместо того, чтобы изменить переменные через программируемые интерфейсы рабочей области. Смотрите Оптимизируют, Оценка и Значения Параметров блоков Развертки.

Похожие темы