Simulink ® позволяет задавать начальные значения сигналов и дискретных состояний, т.е. значения сигналов и дискретных состояний во время начала моделирования. Объекты сигнала можно использовать для задания начальных значений любого сигнала или дискретного состояния в модели. Кроме того, для некоторых блоков, например, «Outport», «Data Store Memory» или «Memory», можно использовать либо сигнальный объект, либо параметр блока, либо и то, и другое для задания начального значения состояния блока или вывода. В таких случаях Simulink проверяет непротиворечивость значений, заданных сигнальным объектом и параметром. Сведения о инициализации сигналов шины см. в разделе Определение начальных условий для элементов шины.
При указании сигнального объекта для инициализации сигнала или дискретного состояния или переменной в качестве значения параметра блока Simulink разрешает указанное имя соответствующему объекту или переменной, как описано в разделе Разрешение символов.
Данный сигнал может быть связан максимум с одним сигнальным объектом при любых обстоятельствах. Сигнал может ссылаться на объект несколько раз, но каждая ссылка должна разрешаться на один и тот же объект. Другой сигнальный объект, имеющий точно такие же свойства, не будет отвечать требованиям уникальности. Ошибка компиляции возникает, если модель связывает более одного сигнального объекта с каким-либо сигналом. Дополнительные сведения см. в разделе Simulink.Signal и блок «Слияние».
Для блоков, имеющих начальное значение или параметр начального условия, этот параметр можно использовать для инициализации сигнала. Например, в следующем диалоговом окне «Параметры блока» инициализируется сигнал для блока «Единичная задержка» с начальным условием 0.

Чтобы получить доступ к этим параметрам блока, выберите один из следующих способов:
Используйте Редактор данных модели (на вкладке Моделирование (Modeling) щелкните Редактор данных модели (Model Data Editor)). Этот метод используется для конфигурирования нескольких сигналов и состояний с возможностью поиска и сортировки. Для инициализации состояния блока или хранилища данных можно использовать соответствующую закладку (Состояния или Хранилища данных). Для инициализации сигнала, состояния или хранилища данных можно использовать вкладку «Параметры» и найти строку, соответствующую соответствующему параметру блока.
Дополнительные сведения о редакторе данных модели см. в разделе Настройка свойств данных с помощью редактора данных модели.
Используйте инспектор свойств (на вкладке «Моделирование» в разделе «Проектирование» выберите «Инспектор свойств»). Этот метод используется для одновременного конфигурирования одного сигнала или состояния. Выберите блок, поддерживающий целевое состояние или генерирующий целевой сигнал, и найдите соответствующий параметр блока.
Используйте диалоговое окно параметров блока. Используйте этот метод для конфигурирования одного сигнала или состояния за один раз или для сравнения конфигураций нескольких сигналов или состояний бок о бок.
Дополнительные сведения о методах доступа к параметрам блока (включая параметры, управляющие сигналом и инициализацией состояния) см. в разделе Установка свойств и параметров.
Можно использовать сигнальные объекты с классом хранения, отличным от 'auto' или при установке для класса хранения по умолчанию соответствующей категории данных значения Default (параметр по умолчанию) в редакторе отображения кода, 'Model default' для инициализации:
Дискретные состояния с начальным параметром условия
Сигналы в модели, за исключением сигналов шины и блоков, выводящих постоянное значение
Чтобы задать начальное значение, используйте команды Проводника моделей или MATLAB ® для выполнения следующих действий.
Создайте сигнальный объект.
На панели инструментов Обозревателя моделей выберите «Добавить» > «Simulink Signal». Сигнальный объект появляется в базовой рабочей области с именем по умолчанию. Переименование объекта в S1. Также можно использовать следующую команду в командной строке:
S1 = Simulink.Signal;
Имя сигнального объекта должно совпадать с именем сигнала, инициализируемого объектом. Несмотря на то, что это не обязательно, рекомендуется задать параметр Имя сигнала (Signal name) в диалоговом окне Свойства сигнала (Signal Properties) для параметра Объект сигнала симуляции (Simulink signal object). Эта настройка приводит сигнальные объекты в рабочей области MATLAB в соответствие с сигналами, появляющимися в модели.
Рекомендуется использовать мастер объектов данных для создания сигнальных объектов. Мастер объектов данных выполняет поиск в модели сигналов, для которых сигнальные объекты не существуют. Затем можно выборочно создать объекты сигналов для нескольких сигналов, перечисленных в результатах поиска, с помощью одной операции. Дополнительные сведения о мастере объектов данных см. в разделе Создание объектов данных для модели с помощью мастера объектов данных.
Задайте для класса хранения объекта сигнала значение, отличное от Auto или Model default. На панели Содержимое проводника моделей (Model Explorer Contents) выберите объект сигнала. В диалоговом окне установите для класса Storage значение ExportedGlobal. Также можно использовать следующую команду в командной строке:
S1.CoderInfo.StorageClass = 'ExportedGlobal';Задайте начальное значение. Можно указать выражение MATLAB, включая имя переменной рабочей области, которое вычисляется как числовое скалярное значение или массив.
Модуль Simulink преобразует начальное значение таким образом, чтобы тип, сложность и размер соответствовали соответствующему значению параметра блока. При указании недопустимого значения или выражения при обновлении модели появляется сообщение об ошибке.
В диалоговом окне «Обозреватель моделей» задайте для параметра «Начальное значение» значение 0.5. Также можно использовать следующую команду в командной строке:
S1.InitialValue = '0.5'Если также можно использовать параметр блока для установки начального значения сигнала или состояния, следует установить параметр пустым ([]) или к тому же значению, что и начальное значение сигнального объекта. Если для параметра задано пустое значение, Simulink использует значение, заданное сигнальным объектом, для инициализации сигнала или состояния. Если для параметра задано любое другое значение, Simulink сравнивает значение параметра со значением сигнального объекта и отображает ошибку, если они отличаются.
В следующем примере показан объект сигнала, задающий начальный выход включенной подсистемы.

Сигнал s инициализировано до 4.5. Чтобы избежать ошибки непротиворечивости, начальное значение активированного блока Outport подсистемы должно быть [] или 4,5.
Если необходимо, чтобы объект сигнала и его начальное значение сохранялись в сеансах Simulink, см. раздел Создание постоянных объектов данных.
Некоторые параметры начального значения могут зависеть от режима инициализации. Дополнительные сведения см. в разделе Обнаружение неполной инициализации.
Классический режим инициализации: В этом режиме настройки начального значения для сигнальных объектов, представляющих следующие сигналы и состояния, переопределяют соответствующие начальные значения параметров блока, если они не определены (указано как []):
Выходные сигналы условно выполненных подсистем и блоков объединения
Состояния блоков
Упрощенный режим инициализации: В этом режиме начальные значения сигнальных объектов, связанных с выходом следующих блоков, игнорируются. Вместо этого используются начальные значения соответствующих блоков.
Выходные сигналы условно выполненных подсистем
Объединить блоки
Simulink позволяет использовать сигнальные объекты в качестве альтернативы объектам параметров (см. Simulink.Parameter) для настройки начальных значений блочных выходов и состояний, которые могут быть заданы с помощью настраиваемого параметра. Чтобы использовать сигнальный объект для настройки начального значения, создайте сигнальный объект с тем же именем, что и сигнал или состояние, и установите начальное значение сигнального объекта в выражение, включающее переменную, определенную в рабочей области MATLAB. Затем можно настроить начальное значение, изменив значение соответствующей переменной рабочей области во время моделирования.
Например, предположим, что требуется настроить начальное значение состояния блока памяти с именем M1. Для этого можно создать сигнальный объект с именем M1, установите для его класса хранения значение 'ExportedGlobal', установить его начальное значение в K (M1.InitialValue='K'), где K является переменной рабочей области в рабочей области MATLAB и задает для соответствующего параметра начального условия блока памяти значение [] во избежание ошибок согласованности. Затем можно изменить начальное значение состояния блока памяти в любое время во время моделирования, изменив значение K в командной строке MATLAB и обновление блок-схемы (например, путем ввода Ctrl + D ).
В следующей модели и таблице показаны различные типы сигналов и дискретные состояния, которые можно инициализировать, а также поведение моделирования, которое приводит к каждому из них.

| Сигнальное или дискретное состояние | Описание | Поведение |
|---|---|---|
| S1 | Корневой входной порт |
|
| X1 | Блок единичной задержки - блок с дискретным состоянием, имеющим начальное условие |
|
| X2 | Блок памяти хранилища данных |
|
| S2 | Вывод включенной подсистемы |
|
| S3 | Постоянные сигналы |
|