При разработке модели может потребоваться переопределить настройки регистрации сигналов для конкретного прогона моделирования. Свойства регистрации сигналов можно переопределить без изменения модели в редакторе Simulink ®.
Для уменьшения объема памяти и упрощения анализа результатов моделирования регистрации переопределите свойства регистрации сигналов. Переопределение параметров регистрации сигналов позволяет избежать повторной компиляции модели.
Переопределение свойств регистрации сигналов полезно при необходимости:
Сосредоточьтесь только на нескольких сигналах, отключив ведение журнала для большинства сигналов, помеченных для ведения журнала. Можно отметить супернабор сигналов для ведения журнала, а затем выбрать различные их подмножества для ведения журнала.
Исключить несколько сигналов из выхода регистрации сигналов.
Переопределите определенные свойства регистрации сигналов, например прореживание, для сигнала.
Соберите только то, что необходимо при выполнении нескольких тестовых векторов.
Для переопределения параметров регистрации сигналов используйте один из двух интерфейсов:
Можно использовать комбинацию этих двух интерфейсов. Селектор регистрации сигналов создает Simulink.SimulationData.ModelLoggingInfo объектов при сохранении параметров переопределения. Интерфейс командной строки имеет свойства, имена которых соответствуют интерфейсу селектора регистрации сигналов. Например, Simulink.SimulationData.ModelLoggingInfo класс имеет LoggingMode , которое соответствует параметру Logging Mode в селекторе регистрации сигналов.
При переопределении параметров регистрации сигналов Simulink использует эти параметры при моделировании модели.
Simulink сохраняет в модели указанную конфигурацию переопределения регистрации сигналов. Однако Simulink не изменяет настройки регистрации сигналов в диалоговом окне Свойства сигнала (Signal Properties) для каждого сигнала в модели.
В селекторе регистрации сигналов, если переопределить некоторые параметры регистрации сигналов, а затем установить режим регистрации в значение Log all signals as specified in modelпараметры регистрации, определенные в модели, отображаются в селекторе регистрации сигналов. Параметры переопределения затемнены, что указывает на невозможность переопределения этих параметров. Для повторной активации параметров переопределения установите для параметра «Режим ведения журнала» значение Override signals. Использование селектора регистрации сигналов для переопределения регистрации для определенного сигнала не влияет на индикатор регистрации сигналов для этого сигнала.
При закрытии, а затем повторном открытии модели выполняется переопределение параметров ведения журнала, если режим ведения журнала настроен на переопределение сигналов для этой модели. Когда модель отображает индикаторы регистрации сигналов, она отображает индикаторы для всех зарегистрированных сигналов, включая записанные сигналы, которые были переопределены.
Примечание
Simulink перестраивает модель в следующей ситуации:
Модель содержит один или несколько сигналов, помеченных для регистрации сигналов.
Модель моделируется в режиме быстрого ускорения.
Для изменения конфигурации регистрации сигналов используется селектор регистрации сигналов или командная строка MATLAB ®.
Модель снова моделируется в режиме быстрого ускорения.
Откройте селектор регистрации сигналов одним из следующих способов:
На панели Параметры конфигурации > Импорт/экспорт данных нажмите кнопку Настроить сигналы для регистрации.

Совет
Для активизации кнопки Configure Signals to Log выберите параметр конфигурации Signal logging.
Для модели, включающей блок модели, можно также использовать следующий подход.
В редакторе Simulink щелкните правой кнопкой мыши блок модели.
В контекстном меню выберите «Регистрировать сигналы, на которые имеются ссылки».

Установить режим ведения журнала в Override signals.
Примечание
Override signals влияет на все уровни иерархии модели. Эта настройка может привести к отключению регистрации любого сигнала в иерархии на основе существующих настроек. Чтобы просмотреть настройки, выберите соответствующий узел на панели Иерархия модели (Model Hierarchy).
Просмотрите узел, содержащий записанные сигналы, которые требуется переопределить. При необходимости разверните узлы или настройте панель Иерархия модели (Model Hierarchy) для отображения маскированных подсистем. См. раздел Просмотр конфигурации регистрации с помощью селектора регистрации сигналов.
Переопределить параметры регистрации сигналов. В зависимости от того, использует ли модель привязку к модели, используйте один из следующих подходов.
Совет
Чтобы открыть панель Configuration Parameters > Data Import/Export в селекторе регистрации сигналов, нажмите
кнопку.
Если модель не использует ссылку на модель (то есть модель не включает блоки модели), переопределите параметры регистрации сигналов с помощью следующей процедуры.
Откройте селектор регистрации сигналов. На панели Параметры конфигурации > Импорт/экспорт данных нажмите кнопку Настроить сигналы для регистрации.
При необходимости выберите Signal logging для активизации кнопки Configure Signals to Log.

Установить режим ведения журнала в Override signals.
Просмотрите узел, содержащий записанные сигналы, которые требуется переопределить. При необходимости разверните узлы или настройте панель Иерархия модели (Model Hierarchy) для отображения маскированных подсистем. См. раздел Просмотр конфигурации регистрации с помощью селектора регистрации сигналов.
В таблице Панель содержимого (Contents panel) выберите сигнал, параметры регистрации которого требуется переопределить.
Переопределить параметры ведения журнала:
Чтобы отключить ведение журнала для сигнала, очистите DataLogging флажок для этого сигнала.
Чтобы переопределить другие параметры регистрации сигналов (например, прореживание), убедитесь, что DataLogging флажок установлен. Затем измените значения в соответствующих столбцах.
Если в модели используется ссылка на модель (то есть модель включает хотя бы один блок модели), переопределите параметры регистрации сигналов, используя одну или несколько из следующих процедур.
Включить ведение журнала для всех зарегистрированных сигналов. По умолчанию Simulink регистрирует все записанные сигналы в модели, включая записанные сигналы в ссылочных иерархиях модели.
Если ведение журнала отключено для любых зарегистрированных сигналов в модели верхнего уровня или в блоке модели верхнего уровня в иерархии привязок модели, то на панели Иерархия модели (Model Hierarchy) слева от этого узла установлен флажок:
Solid
(), если регистрация для некоторых сигналов отключена.
Пусто
(), если ведение журнала отключено для всех сигналов.
Для активизации регистрации всех зарегистрированных сигналов для узла:
Откройте селектор регистрации сигналов. На панели Параметры конфигурации > Импорт/экспорт данных нажмите кнопку Настроить сигналы для регистрации.
Установить режим ведения журнала в Override signals.
Просмотрите узел, содержащий записанные сигналы, которые требуется переопределить. При необходимости разверните узлы или настройте панель Иерархия модели (Model Hierarchy) для отображения маскированных подсистем. См. раздел Просмотр конфигурации регистрации с помощью селектора регистрации сигналов.
На панели Иерархия модели (Model Hierarchy) установите флажок слева от узла, чтобы флажок имел флажок ().![]()
Для модели верхнего уровня ведение журнала включено для всех регистрируемых сигналов в модели верхнего уровня, но не для регистрируемых сигналов в ссылочных иерархиях модели.
Для блока модели в верхней части ссылочной иерархии модели ведение журнала включено для всей ссылочной иерархии модели для выбранной ссылочной модели.
Деактивизация регистрации всех сигналов в узле. Если регистрация сигналов включена для любых сигналов в узле модели, то на панели Иерархия модели (Model Hierarchy) слева от узла установлен флажок:
Solid
(), если ведение журнала включено для некоторых сигналов.
Флажок
(), если ведение журнала включено для всех сигналов.
Чтобы отключить ведение журнала для всех зарегистрированных сигналов в узле модели, выполните следующие действия.
Откройте селектор регистрации сигналов. На панели Параметры конфигурации > Импорт/экспорт данных нажмите кнопку Настроить сигналы для регистрации.
Установить режим ведения журнала в Override signals.
Просмотрите узел, содержащий записанные сигналы, которые требуется переопределить. При необходимости разверните узлы или настройте панель Иерархия модели (Model Hierarchy) для отображения маскированных подсистем. См. раздел Просмотр конфигурации регистрации с помощью селектора регистрации сигналов.
На панели Иерархия модели (Model Hierarchy) снимите флажок слева от узла, чтобы флажок был пустым ().![]()
Для модели верхнего уровня ведение журнала отключено для всех регистрируемых сигналов в модели верхнего уровня, но не для регистрируемых сигналов в ссылочных иерархиях модели.
Для блока модели в верхней части ссылочной иерархии модели ведение журнала отключено для всей ссылочной иерархии модели для выбранной ссылочной модели.
Переопределение регистрации сигналов для подмножества сигналов. Для регистрации некоторых, но не всех, зарегистрированных сигналов в узле модели:
Откройте селектор регистрации сигналов. На панели Параметры конфигурации > Импорт/экспорт данных нажмите кнопку Настроить сигналы для регистрации.
Установить режим ведения журнала в Override signals.
Просмотрите узел, содержащий записанные сигналы, которые требуется переопределить. При необходимости разверните узлы или настройте панель Иерархия модели (Model Hierarchy) для отображения маскированных подсистем. См. раздел Просмотр конфигурации регистрации с помощью селектора регистрации сигналов.
На панели Иерархия модели (Model Hierarchy) убедитесь, что флажок для модели верхнего уровня или блока модели является сплошным
(), если ведение журнала отключено для некоторых сигналов, или пустым
(), если ведение журнала отключено для всех сигналов. Установите флажок для циклического перехода к различным состояниям.
В таблице Панель содержимого (Contents panel) для сигналов, которые требуется зарегистрировать, установите флажок в поле DataLogging столбец.
Чтобы включить ведение журнала для нескольких сигналов, удерживайте клавишу Shift или Ctrl и выберите диапазон сигналов или отдельные сигналы. Установите флажок в окне DataLogging столбец одного из выделенных сигналов.
Переопределить другие свойства регистрации сигналов. В дополнение к переопределению параметра для DataLogging для сигнала можно переопределить другие свойства регистрации сигнала, например прореживание.
Откройте селектор регистрации сигналов. На панели Параметры конфигурации > Импорт/экспорт данных нажмите кнопку Настроить сигналы для регистрации.
Установить режим ведения журнала в Override signals.
Просмотрите узел, содержащий записанные сигналы, которые требуется переопределить. При необходимости разверните узлы или настройте панель Иерархия модели (Model Hierarchy) для отображения маскированных подсистем. См. раздел Просмотр конфигурации регистрации с помощью селектора регистрации сигналов.
На панели Иерархия модели (Model Hierarchy) убедитесь, что флажок для модели верхнего уровня или блока модели является сплошным
(), если ведение журнала отключено для некоторых сигналов, или пустым
(), если ведение журнала отключено для всех сигналов. Установите флажок для циклического перехода к различным состояниям.
В таблице Панель содержимого (Contents panel) для сигналов, для которых требуется переопределить свойства ведения журнала, включите ведение журнала, установив флажок в окне DataLogging столбец.
Чтобы включить ведение журнала для нескольких сигналов, удерживайте клавишу Shift или Ctrl и выберите диапазон сигналов или отдельные сигналы. Установите флажок в окне DataLogging столбец одного из выделенных сигналов.
В таблице панели «Содержимое» измените параметры свойств, например DecimateData и Decimation.
Интерфейс командной строки MATLAB для переопределения параметров регистрации сигналов включает в себя:
DataLoggingOverride model parameter - используется для просмотра или установки значений переопределения регистрации сигналов для модели.
Следующие классы:
- укажите параметры переопределения регистрации сигналов для модели. Этот класс соответствует общему интерфейсу селектора регистрации сигналов.Simulink.SimulationData.ModelLoggingInfo
- Переопределение настроек для определенного сигнала. Этот класс соответствует строке в таблице свойств регистрации в селекторе регистрации сигналов:Simulink.SimulationData.SignalLoggingInfo

- Переопределения параметров регистрации сигналов, таких как прореживание. Этот класс соответствует редактируемым столбцам в строке таблицы свойств регистрации в селекторе регистрации сигналов.Simulink.SimulationData.LoggingInfo
Чтобы запросить модель о состоянии переопределения регистрации сигналов, используйте DataLoggingOverride параметр.
Для настройки регистрации сигналов из командной строки используйте методы и свойства трех перечисленных выше классов. Чтобы применить конфигурацию, используйте set_param с DataLoggingOverride параметр модели.
В следующих разделах описывается использование интерфейса командной строки для выполнения некоторых общих задач по конфигурированию регистрации сигналов.
Чтобы использовать интерфейс командной строки для переопределения параметров регистрации сигналов, сначала создайте Simulink.SimulationData.ModelLoggingInfo объект. Например, используйте следующие команды для создания объекта переопределения журнала модели для ex_bus_logging и автоматически добавить каждый зарегистрированный сигнал в модели к этому объекту:
open_system(docpath(fullfile(docroot, 'toolbox', 'simulink', ... 'examples', 'ex_bus_logging'))); open_system(docpath(fullfile(docroot, 'toolbox', 'simulink', ... 'examples', 'ex_mdlref_counter_bus'))); mi = Simulink.SimulationData.ModelLoggingInfo.createFromModel(... 'ex_bus_logging')
mi =
ModelLoggingInfo with properties:
Model: 'ex_bus_logging'
LoggingMode: 'OverrideSignals'
LogAsSpecifiedByModels: {}
Signals: [1x4 Simulink.SimulationData.SignalLoggingInfo] LoggingMode свойство имеет значение OverrideSignals, который конфигурирует объект переопределения журнала модели для регистрации только сигналов, указанных в Signals собственность.
Чтобы применить параметры переопределения объекта модели, используйте:
set_param(ex_bus_logging, 'DataLoggingOverride', mi);
Simulink сохраняет настройки при сохранении модели.
Можно управлять типами систем, из которых следует включать регистрируемые сигналы. По умолчанию Simulink.SimulationData.ModelLoggingInfo объект включает в себя зарегистрированные сигналы от:
Библиотеки
Маскированные подсистемы
Ссылочные модели
Активные варианты
В качестве альтернативы можно использовать Simulink.SimulationData.ModelLoggingInfo конструктор и укажите Simulink.SimulationData.SignalLoggingInfo объект для каждого сигнала. Чтобы убедиться, что для модели заданы допустимые параметры регистрации сигналов, используйте verifySignalAndModelPaths с помощью Simulink.SimulationData.ModelLoggingInfo объект для модели.
Чтобы указать, следует ли использовать настройки регистрации сигналов, как указано в модели, и все ссылочные модели, или переопределить эти настройки, используйте команду LoggingMode свойство Simulink.SimulationData.ModelLoggingInfo объект.
Можно управлять тем, используют ли модель верхнего уровня и ссылочные модели параметры переопределения регистрации сигналов или параметры регистрации сигналов, заданные моделью. См. раздел документация.Simulink.SimulationData.ModelLoggingInfo
В этом примере показано, как регистрировать все сигналы, указанные в модели верхнего уровня и во всех ссылочных моделях. Выходной сигнал регистрации сохраняется в topOut.
open_system(docpath(fullfile(docroot, 'toolbox', 'simulink', ... 'examples', 'ex_bus_logging'))); open_system(docpath(fullfile(docroot, 'toolbox', 'simulink', ... 'examples', 'ex_mdlref_counter_bus'))); mi = Simulink.SimulationData.ModelLoggingInfo... ('ex_bus_logging'); mi.LoggingMode = 'LogAllAsSpecifiedInModel'
mi =
ModelLoggingInfo with properties:
Model: 'ex_bus_logging'
LoggingMode: 'LogAllAsSpecifiedInModel'
LogAsSpecifiedByModels: {}
Signals: []Чтобы применить параметры переопределения объекта модели, используйте:
set_param(ex_bus_logging, 'DataLoggingOverride', mi);В следующем примере показано, как регистрировать только сигналы в верхней модели:
open_system(docpath(fullfile(docroot, 'toolbox', 'simulink', ... 'examples', 'ex_bus_logging'))); open_system(docpath(fullfile(docroot, 'toolbox', 'simulink', ... 'examples', 'ex_mdlref_counter_bus'))); mi = Simulink.SimulationData.ModelLoggingInfo... ('ex_bus_logging'); mi.LoggingMode = 'OverrideSignals'; mi = mi.setLogAsSpecifiedInModel('ex_bus_logging',true);
Чтобы применить параметры переопределения объекта модели, используйте:
set_param(ex_bus_logging,'DataLoggingOverride', mi);
Simulink сохраняет настройки при сохранении модели.
Для простой модели с ограниченным количеством регистрируемых сигналов можно создать пустой Simulink.SimulationData.ModelDataLogInfo объект. Затем создать Simulink.SimulationData.SignalLoggingInfo объектов для каждого сигнала, который требуется зарегистрировать, и назначить эти объекты объекту информации регистрации модели.
open_system(docpath(fullfile(docroot, 'toolbox', 'simulink', ... 'examples', 'ex_bus_logging'))); open_system(docpath(fullfile(docroot, 'toolbox', 'simulink', ... 'examples', 'ex_mdlref_counter_bus'))); mdl = 'ex_bus_logging'; blk = 'ex_bus_logging/IncrementBusCreator'; blkPort = 1; load_system(mdl); ov = Simulink.SimulationData.ModelLoggingInfo(mdl); so = Simulink.SimulationData.SignalLoggingInfo(blk,blkPort); ov.Signals(1) = so; % apply this object so the model set_param(mdl,'DataLoggingOverride',ov); % Simulate sim(mdl); % observe that only the signal topOut
Чтобы применить параметры переопределения объекта модели, используйте:
set_param(mdl, 'DataLoggingOverride', ov);
Simulink сохраняет настройки при сохранении модели.
Для модели, которая использует ссылку на модель или является сложной, чтобы указать подмножество регистрируемых сигналов для регистрации, рассмотрите возможность использования findSignal метод с помощью Simulink.SimulationData.ModelLoggingInfo объект. Например, для регистрации только одного сигнала из ссылочного экземпляра модели, на который ссылается:
open_system(docpath(fullfile(docroot, 'toolbox', 'simulink', ... 'examples', 'ex_bus_logging'))); open_system(docpath(fullfile(docroot, 'toolbox', 'simulink', ... 'examples', 'ex_mdlref_counter_bus'))); mi = Simulink.SimulationData.ModelLoggingInfo.createFromModel(... 'ex_bus_logging'); pos = mi.findSignal({'ex_bus_logging/CounterA' ... 'ex_mdlref_counter_bus/Bus Creator'}, 1)
pos =
4for idx=1:length(mi.Signals) mi.Signals(idx).LoggingInfo.DataLogging = (idx == pos); end
Чтобы применить параметры переопределения объекта модели, используйте:
set_param(ex_bus_logging,'DataLoggingOverride', mi);
Simulink сохраняет настройки при сохранении модели.
В дополнение к переопределению параметра для DataLogging для сигнала можно переопределить другие свойства регистрации сигнала, например прореживание.
Использовать для переопределения свойств регистрации сигналов. В следующем примере показано, как задать параметры переопределения прореживания.Simulink.SimulationData.LoggingInfo
open_system(docpath(fullfile(docroot, 'toolbox', 'simulink', ... 'examples', 'ex_bus_logging'))); open_system(docpath(fullfile(docroot, 'toolbox', 'simulink', ... 'examples', 'ex_mdlref_counter_bus'))); mi = Simulink.SimulationData.ModelLoggingInfo.createFromModel... ('ex_bus_logging'); pos = mi.findSignal({'ex_bus_logging/CounterA' ... 'ex_mdlref_counter_bus/Bus Creator'}, 1); mi.Signals(pos).LoggingInfo.DecimateData = true; mi.Signals(pos).LoggingInfo.Decimation = 2;
Чтобы применить параметры переопределения объекта модели, используйте:
set_param(ex_bus_logging,'DataLoggingOverride', mi);
Simulink сохраняет настройки при сохранении модели.