Определите, где сохранить переменные и объекты для моделей Simulink

Model data является объектами и переменными, которые вы создаете в рабочих областях, таких как базовое рабочее пространство или словарь данных. Данные модели включают:

  • Числовые значения для параметров блоков, таких как Simulink.Parameter объекты и переменные MATLAB®

  • Сигналы, такие как Simulink.Signal объекты

  • Типы данных

  • Наборы конфигурации модели

  • Входные и выходные данные симуляции

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

  • Ваши цели моделирования.

  • Архитектура модели (модели, на которые ссылаются, подсистемы и другие стратегии разделения) и структура компонента.

  • Типы данных, которые вы используете.

Типы данных

  • Simulation data является набором входных данных, которые вы используете, чтобы управлять симуляцией и набором выходных данных, которые генерирует симуляция. Например, можно использовать переменные, чтобы сохранить входные данные, которые симуляция получает через блоки Inport. Симуляция может экспортировать выходные данные через, например, блоки Outport, блоки To Workspace и регистрируемые сигналы.

    Можно сохранить данные моделирования для текущего сеанса работы с MATLAB в базовом рабочем пространстве. Чтобы постоянно сохранить эти данные моделирования, сохраните его в файле скрипта или MAT-файле. Для получения дополнительной информации о загрузке, генерация и хранение данных моделирования, видят Сравнение Методов Загрузки Сигнала и Данных моделирования Экспорта.

  • Design data является набором переменных, которые вы используете, чтобы задать параметры блоков и характеристики сигнала в модели. Например, данные проектирования включает числовые переменные MATLAB, параметр и объекты данных сигнала, объекты типа данных и объекты шины.

    Можно сохранить данные проектирования в базовом рабочем пространстве, рабочих пространствах модели или разделе Design Data словаря данных. Чтобы постоянно сохранить локальные данные проектирования моделью, используйте рабочие пространства модели. Чтобы совместно использовать данные проектирования между моделями, используйте словари данных или базовое рабочее пространство. Словари данных постоянно хранят данные, и можно управлять осциллографом данных, чтобы установить владение, разделить данные, чтобы упростить удобочитаемость и обслуживание, и отследить изменения. Если вы используете базовое рабочее пространство, чтобы постоянно хранить данные, необходимо сохранить его в файле скрипта или MAT-файле.

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

    Чтобы совместно использовать конфигурации модели между моделями, необходимо создать Simulink.ConfigSet объекты. Каждый объект представляет автономную конфигурацию модели. Можно хранить эти объекты в базовом рабочем пространстве или в разделе Configurations словаря данных. Если вы используете словари данных, можно задать осциллограф каждой конфигурации модели, сравнить различные конфигурации модели и отследить изменения. Словарь данных по сути конфигурации модели разделов от других видов данных.

Храните данные для своего проекта

Таблица показывает методы, которые можно использовать для хранилища, раздела, и управлять данными проектирования и конфигурациями модели.

Моделирование сценарияОписание сценарияМеста хранения и методы

Быстрое прототипирование и экспериментирование с моделью

Вы хотите создать временные данные, такие как переменные, чтобы задать числовые параметры блоков, в то время как вы учитесь использовать Simulink®.

Вы хотите экспериментировать с техниками моделирования. Вы не должны постоянно хранить данные, которые вы создаете.

Храните данные в базовом рабочем пространстве, таким образом, можно быстро создать и изменить данные.

Автономная модель

У У вас есть единственная модель, которая не зависит от других систем по данным. Модель является отдельной, потому что это не часть большей системы.

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

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

Автономная иерархия моделей, на которые ссылаются,

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

Храните данные о локальной модели в каждом рабочем пространстве модели.

Храните данные, которые модели совместно используют, такие как объекты шины и конфигурации модели, в словаре данных. Соедините все модели в иерархии к словарю.

Для примеров смотрите, Перемещают Иерархию Модели - ссылки, чтобы Использовать Словарь и Используя Словарь Данных, чтобы Управлять Данными для Топливной Системы управления.

Система компонентов

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

Храните данные о локальной модели в рабочих пространствах модели.

Храните данные что модели в доле компонента, такие как объекты шины и конфигурации модели, в словаре данных. Соедините все модели в компоненте к словарю.

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

Для примера смотрите Данные о Разделе для Иерархии Модели - ссылки Используя Словари Данных.

Места хранения

Выберите любое из этих местоположений, чтобы хранить данные:

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

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

  • Словарь данных. Используйте словари данных, чтобы постоянно хранить глобальные данные, осуществлять обмен данными между моделями и отследить изменения, внесенные в данные.

График показывает возможности и преимущества каждого места хранения.

ВозможностьБазовое рабочее пространствоРабочее пространство моделиСловарь данных
Связь данные-модельнеявныйнеявный
Объединенный интерфейс для определения данных
Зависимость данных модели
Сравнение ввода данных
Персистентность ввода данных 
Возможности исправления отсутствующей переменнойДополнительные опции
Разделяемые данные 
Группировка данных  
Отслеживание изменений для элементов данных  
Отслеживание изменений для конфигураций модели  
Слияние ввода данных и согласование  
Хранение и разделение вспомогательных данных  
Связь с требованиями  

Для получения информации о способе, которым модели взаимодействуют с рабочими областями и переменными рабочей области, смотрите Разрешение Символа.

Временные данные: базовое рабочее пространство

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

  • В то время как вы учитесь использовать Simulink

  • Когда необходимо быстро создать переменные при экспериментировании с техниками моделирования

  • Когда вы не должны хранить данные постоянно

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

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

Чтобы постоянно хранить данные о базовом рабочем пространстве, прежде чем вы закончите сеанс работы с MATLAB, можно сохранить данные в MAT-файле или файле скрипта. Во время более позднего сеанса можно загрузить данные из файла. Однако, если вы вносите изменения в данные в базовом рабочем пространстве, необходимо сохранить данные к файлу снова. Полагайте, что вместо этого использование рабочего пространства модели или словаря данных постоянно хранит данные.

Локальные данные: рабочее пространство модели

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

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

  • Объекты данных, такие как Simulink.Signal и Simulink.Parameter объекты, которые вы используете для характеристик параметра и управляющего сигнала. Однако объекты сигнала в рабочем пространстве модели могут использовать только Auto класс памяти. Если вы храните AUTOSAR.Parameter объект в рабочем пространстве модели, генератор кода игнорирует класс памяти, который вы задаете для объекта.

  • Simulink.NumericType объекты, которые вы используете, чтобы задать типы данных. Однако вы не можете использовать объект в качестве псевдонима типа данных. Необходимо установить IsAlias свойство к false.

  • Аргументы модели.

Можно улучшить мобильность модели и установить владение данных, храня данные в рабочем пространстве модели. В этом случае файл модели постоянно хранит данные.

В иерархии модели - ссылки каждое рабочее пространство модели действует как уникальное пространство имен. Поэтому можно использовать то же имя переменной в рабочих областях многоуровневой модели. Можно затем присвоить уникальное значение переменных для каждой модели.

Можно использовать Model Explorer, чтобы управлять данными о рабочем пространстве модели. В качестве альтернативы можно использовать командную строку или скрипты в сочетании с рабочим пространством модели программируемый интерфейс.

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

Глобальная переменная и разделяемые данные: словарь данных

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

Когда вы можете с рабочими пространствами модели, можно использовать словари данных, чтобы непосредственно сопоставить данные с моделью. Можно использовать эту ассоциацию, чтобы определить объем данных и установить владение.

Когда вы используете словари, можно разделить данные путем хранения его в дополнительных словарях, на которые ссылаются. Однако каждая запись в словаре должна использовать уникальное имя. Необходимо управлять каждым словарем как отдельным файлом.

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

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

  • Simulink.AliasType и Simulink.NumericType объекты, которые вы используете, чтобы задать типы данных в многоуровневых моделях целиком.

  • Объекты данных, включая объекты сигнала (такие как Simulink.Signal) то использование класс памяти кроме Auto. Если у вас есть лицензия Simulink Coder™, эти объекты могут представлять сигналы и настраиваемые параметры, которые появляются как глобальные переменные в сгенерированном коде.

  • Simulink.Bus объекты, которые вы используете, чтобы задать интерфейсы сигнала между моделями, на которые ссылаются.

  • Simulink.ConfigSet объекты, которые вы используете, чтобы обеспечить однородность параметра конфигурации через многоуровневые модели.

  • Определения перечислимого типа, которые вы храните использование Simulink.data.dictionary.EnumTypeDefinition объекты.

Можно использовать Model Explorer, чтобы управлять данными о словаре. В качестве альтернативы можно использовать командную строку или скрипты в сочетании со словарем данных программируемый интерфейс.

Для основной информации о словарях данных смотрите то, Что Словарь Данных?.

Факторы для генерации кода

Если вы намереваетесь сгенерировать код С из модели (Simulink Coder), примите эти факторы во внимание.

Похожие темы