Сигнал - это изменяющаяся во времени величина, которая имеет значения во все моменты времени. Можно задать широкий диапазон атрибутов сигнала, включая:
Название сигнала
Тип данных (например, 8-разрядное, 16-разрядное или 32-разрядное целое число)
Числовой тип (вещественный или комплексный)
Размерность (одномерный, двумерный или многомерный массив)
В Simulink ® сигналы являются выходами динамических систем, представленных блоками на схеме Simulink и на самой диаграмме. Линии на блок-схеме представляют математические соотношения между сигналами, определенными блок-схемой. Например, линия, соединяющая выход блока А с входом блока В, указывает, что выход сигнала В зависит от выхода сигнала А.
Моделирующие блок-схемы представляют сигналы с линиями, имеющими стрелку. Источник сигнала соответствует блоку, который записывает в сигнал при оценке его блочных методов (уравнений). Адресатами сигнала являются блоки, считывающие сигнал во время оценки блочных методов (уравнений). Назначение сигналов в модели не обязательно представляет порядок моделирования блоков в модели. Порядок моделирования определяется модулем Simulink автоматически.
Примечание
Сигналы симулятора являются математическими, а не физическими объектами. Линии на блок-схеме представляют математические, а не физические связи между блоками. Сигналы имитации не проходят по линиям, соединяющим блоки, так же, как электрические сигналы проходят по проводу. Блок-схемы не представляют физические соединения между блоками.
Можно создать сигнал, добавив исходный блок в модель. Например, можно создать сигнал, который со временем изменяется синусоидально, добавив в модель экземпляр блока синус, косинус из библиотеки Simulink Sources. Список блоков, создающих сигналы в модели, см. в разделе Источники. Кроме того, можно использовать Диспетчер объектов просмотра и генераторов для создания сигналов в модели без использования блоков.
Модель Simulink может включать множество различных типов сигналов. При построении блок-схемы все типы сигналов отображаются как тонкая сплошная линия. После обновления схемы или запуска моделирования сигналы отображаются с указанными стилями линий. Эти типы сигналов позволяют различать различные типы сигналов. Из всех типов сигналов можно настроить только тип нескалярного сигнала. Дополнительные сведения см. в разделе Типы сигналов.
| Тип сигнала | Стиль линии |
|---|---|
| Скалярный и нескалярный | |
| Нескалярные (с включенной опцией Широкие нескалярные линии - см. Широкие нескалярные линии) | |
Управляющий сигнал | |
| Виртуальная шина | |
| Невиртуальная шина | |
| Массив шин | |
| Переменный размер |
Можно задать свойства сигнала в модели, чтобы присвоить сигналам имя или метку, подготовить данные для регистрации или настроить сигналы в модели. Используйте инспектор свойств, редактор данных модели или диалоговое окно «Свойства сигнала» для задания свойств:
Названия и метки сигналов
Регистрация сигналов
Coder™ Simulink для создания кода
Документирование сигнала
Чтобы получить доступ к свойствам сигнала в инспекторе свойств, сначала откройте инспектор свойств. На вкладке «Моделирование» в группе «Проект» выберите «Инспектор свойств». При выборе сигнала свойства отображаются в инспекторе свойств. Чтобы использовать Редактор данных модели (Model Data Editor) (на вкладке Моделирование (Modeling) щелкните Редактор данных модели (Model Data Editor)), проверьте вкладку Сигналы (Signals) и выберите сигнал. Для использования диалогового окна «Свойства сигнала» щелкните правой кнопкой мыши сигнал и выберите «Свойства». Сведения о преимуществах каждого подхода см. в разделе Добавление блоков и задание параметров.
Чтобы программно задать свойства сигнала, используйте такую функцию, как get_param для создания переменной, которая удерживает маркер к выходному порту блока, который создает сигнальную линию. Затем используйте set_param для установки программных параметров порта. Например:
p = get_param(gcb,'PortHandles') l = get_param(p.Outport,'Line') set_param(l,'Name','s9')
В модели можно назвать сигнал в интерактивном или программном режиме. Синтаксические требования к имени сигнала зависят от способа использования имени. Наиболее распространенными случаями являются:
Не используйте символ меньше (<) для запуска имени сигнала.
Имя сигнала может быть преобразовано в Simulink.Signal объект. (см. Simulink.Signal.) Имя сигнала должно быть допустимым идентификатором MATLAB ®. Этот идентификатор начинается с алфавитного символа, за которым следуют алфавитно-цифровые символы или символы подчеркивания до длины, заданной функциейnamelengthmax.
Сигнал имеет имя, так что сигнал может быть идентифицирован и указан по имени в журнале данных. (См. раздел Экспорт данных сигнала с использованием регистрации сигнала.) Такое имя сигнала может содержать пробелы и символы новой строки. Эти символы могут улучшить удобочитаемость, но иногда требуют специальных методов обработки, как описано в разделе Обработка пробелов и новых строк в записанных именах
Название сигнала существует только для уточнения диаграммы и не имеет вычислительного значения. Такое название сигнала может содержать что угодно и не нуждается в специальной обработке.
Сигнал является элементом объекта шины. Используйте допустимый идентификатор языка Си для имени сигнала.
Входные данные блока Bus Creator должны иметь уникальные имена. При наличии повторяющихся имен добавляется блок Bus Creator (signal#) ко всем именам входных сигналов, где # - индекс входного порта.
Придание каждому имени сигнала законного идентификатора MATLAB обрабатывает широкий диапазон конфигураций модели. Непредвиденные требования могут потребовать изменения имен сигналов в соответствии с более строгим синтаксисом. Можно использовать функцию isvarname чтобы определить, является ли имя сигнала допустимым идентификатором MATLAB.
Назовите сигнал в интерактивном режиме:
Использование инспектора свойств (на вкладке «Моделирование» в разделе «Проектирование» выберите «Инспектор свойств»)
Использование Редактора данных модели (на вкладке Моделирование (Modeling) щелкните Редактор данных модели (Model Data Editor)) вкладка Сигналы (Signals)
В диалоговом окне «Свойства сигнала».
Имя сигнала отображается под сигналом, отображаемым как метка сигнала.
Чтобы назвать сигнал программным способом, используйте get_param и set_param функции на сигнале. В таблице ниже приведено описание работы с именами и метками сигналов в редакторе Simulink Editor.
| Задача | Действие |
|---|---|
| Имя сигнальной линии | Дважды щелкните сигнал и введите его имя. |
| Назовите ветвь именованной сигнальной линии | Дважды щелкните ветвь. |
| Назовите каждую ветвь сигнала | Щелкните правой кнопкой мыши сигнал, выберите «Свойства» и используйте диалоговое окно. |
| Удалить метку и имя сигнала | Удалите символы в метке или имя в диалоговом окне «Свойства сигнала». |
| Удалить только метку сигнала | Щелкните метку правой кнопкой мыши и выберите «Удалить метку». |
| Открыть текстовое поле метки сигнала для редактирования | Дважды щелкните по сигнальной линии. Щелкните метку. Выберите сигнальную линию (не метку) и используйте F2. На платформах Macintosh выберите сигнальную линию (не метку) и используйте управление + возврат. |
| Переместить метку сигнала | Перетащите метку в новое место на той же сигнальной линии. |
| Копировать метку сигнала | Ctrl + перетащите метку сигнала. |
| Изменение шрифта метки | Выберите сигнальную линию (не метку), а затем на вкладке Формат (Format) щелкните стрелку кнопки Свойства шрифта (Font Properties), затем нажмите Шрифты (Fonts) для модели (Model). |
Отображение атрибутов сигнала на схеме модели может облегчить считывание модели. Например, в редакторе Simulink на вкладке Отладка (Debug) используйте меню Информационные наложения (Information Overlays), чтобы включить в компоновку модели информацию об атрибутах сигнала, например:
Типы данных порта
Проектные диапазоны
Размеры сигнала
Разрешение сигнала
Дополнительные сведения см. в разделе Отображение атрибутов сигнала.
Можно также выделить сигнал и его исходные или целевые блоки. Дополнительные сведения см. в разделе Выделение источников и мест назначения сигналов.
Параметры блока и свойства сигнала можно использовать для указания таких атрибутов конструкции сигнала, как тип данных, минимальное и максимальное значения, физическая единица измерения и числовая сложность. Для настройки состояний можно использовать параметры блока. При использовании этих параметров блока и свойств сигнала спецификации сохраняются в файле модели.
Кроме того, можно указать эти атрибуты с помощью свойств Simulink.Signal объект, который хранится в рабочей области или словаре данных. Посмотрите Simulink.Signal и объекты данных.
Выберите стратегию для использования на основе целей моделирования.
Чтобы улучшить переносимость, удобочитаемость и простоту обслуживания модели, сохраните эти спецификации в файле модели. Для доступа к параметрам и свойствам используйте инспектор свойств, редактор данных модели, диалоговые окна блоков и диалоговые окна свойств сигналов. Вам не нужно сохранять внешние данные и управлять ими Simulink.Signal объекты. Рассмотрите возможность установки параметра конфигурации модели Signal resolution в значение None, который отключает использование Simulink.Signal объектов по модели.
Чтобы настроить атрибуты конструкции и настройки генерации кода для сигналов с помощью списка, который можно сортировать, группировать и фильтровать, рассмотрите редактор данных модели. Этот инструмент позволяет сохранить спецификации в файле модели вместо использования Simulink.Signal объекты. См. раздел Настройка свойств данных с помощью редактора данных модели.
Чтобы отделить эти спецификации от модели, чтобы управлять каждой из них независимо, используйте Simulink.Signal объекты. Затем можно настроить спецификации в плоском списке, который можно сортировать, группировать и фильтровать с помощью Редактора данных модели (Model Data Editor) или Проводника моделей (Model Explorer). Сведения об определении места постоянного хранения объектов см. в разделе Определение места хранения переменных и объектов для моделей Simulink.
Для сигналов можно выполнить следующие виды тестов:
Для многих блоков Simulink можно задать диапазон допустимых значений для выходных сигналов. Simulink обеспечивает диагностику для обнаружения, когда блоки генерируют сигналы, превышающие заданные диапазоны во время моделирования. Дополнительные сведения см. в разделе Определение диапазонов сигналов.
Многие блоки Simulink имеют ограничения на типы сигналов, которые они принимают. Перед моделированием модели Simulink проверяет все блоки, чтобы убедиться, что блоки могут соответствовать типам сигналов, выводимых портами, к которым подключаются блоки, и сообщает об ошибках несовместимости.
Чтобы обнаружить ошибки совместимости сигналов перед запуском моделирования, обновите схему.
Блок редактора сигналов отображает взаимозаменяемые группы сценариев. Редактор сигналов используется для отображения, создания, редактирования и переключения взаимозаменяемых сценариев.
Сценарии могут помочь в тестировании модели.