Основы сигнала

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

  • Имя сигнала

  • Тип данных (например, 8-битное, 16-битное, или 32-битное целое число)

  • Числовой тип (действительный или комплексный)

  • Размерность (одномерный, двумерный, или многомерный массив)

В Simulink®, сигналами являются выходные параметры динамических систем, представленных блоками в схеме Simulink и самой схемой. Линии в блок-схеме представляют математические отношения среди сигналов, заданных блок-схемой. Например, линия, соединяющая выход блока A к входу блока B, указывает, что выход сигнала B зависит от выхода сигнала A.

Диаграммы Simulink представляют сигналы линиями, которые имеют наконечник стрелки. Источник сигнала соответствует блоку, который пишет в сигнал во время оценки его методов блока (уравнения). Места назначения сигнала являются блоками, которые читают сигнал во время оценки методов блока (уравнения). Место назначения сигналов в модели не обязательно представляет порядок симуляции блоков в модели. Порядок симуляции определяется Simulink автоматически.

Примечание

Сигналы Simulink являются математическими, не физическими, сущности. Линии в блок-схеме представляют математический, не физический, отношения среди блоков. Сигналы Simulink не перемещаются вдоль линий, которые соединяют блоки таким же образом, что электрические сигналы перемещаются вдоль провода. Блок-схемы не представляют физические соединения между блоками.

Можно создать сигнал путем добавления исходного блока в модель. Например, можно создать сигнал, который варьируется синусоидально со временем путем добавления экземпляра блока Sine, Cosine из библиотеки Simulink Sources в модель. Чтобы видеть список блоков, которые создают сигналы в модели, смотрите Источники. В качестве альтернативы можно использовать менеджера по Средствам просмотра и Генераторам, чтобы создать сигналы в модели, не используя блоки.

Стили сигнальной линии

Модель Simulink может включать много различных типов сигналов. Когда вы создаете блок-схему, все типы сигнала появляются как тонкая, сплошная линия. После того, как вы обновите схему или запустите симуляцию, сигналы появляются с заданными стилями линии. Эти типы сигнала позволяют вам дифференцироваться между различными типами сигнала. От всех типов сигнала можно только настроить нескалярный тип сигнала. Чтобы узнать больше, смотрите Типы Сигнала.

Тип сигналаСтиль линии
Скаляр и нескалярный
Нескалярный (с включенной опцией Wide nonscalar lines — смотрите Широкие Нескалярные Линии),

Управляющий сигнал

Виртуальная шина
Невиртуальная шина
Массив шин
Переменный размер

Свойства сигнала

Можно хотеть задать свойства сигнала в модели, чтобы дать имя или метку к сигналам, подготовить данные к логгированию или настроить сигналы в модели. Используйте Property Inspector, Model Data Editor или диалоговое окно Signal Properties, чтобы задать свойства для:

  • Имена сигнала и метки

  • Логгирование сигнала

  • Simulink Coder™, чтобы использовать, чтобы сгенерировать код

  • Документация сигнала

Чтобы получить доступ к свойствам сигнала в Property Inspector, сначала отобразите Property Inspector. На вкладке Modeling, под Design, нажимают Property Inspector. Когда вы выбираете сигнал, свойства появляются в Property Inspector.

Чтобы открыть Model Data Editor, на вкладке Modeling, нажимают Model Data Editor. Затем смотрите вкладку Signals и выберите сигнал.

Чтобы использовать диалоговое окно Signal Properties, щелкните правой кнопкой по сигналу и выберите Properties.

Чтобы задать свойства сигнала программно, используйте функцию такой как 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.

  • Сигнал имеет имя, таким образом, сигнал может быть идентифицирован и сослан по наименованию в журнале данных. (См., что Данные сигнала Экспорта Используют Логгирование Сигнала.) Такое имя сигнала может содержать пробел и символы новой строки. Эти символы могут улучшить удобочитаемость, но иногда требовать специальных методов обработки, как описано в Обработке Пробелов и Новых строк на Регистрируемые Имена

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

  • Сигнал является элементом объекта шины. Используйте допустимый идентификатор языка C для имени сигнала.

  • Входные параметры с блоком Bus Creator должны иметь уникальные имена. Если существуют двойные названия, блок Bus Creator добавляет (signal#) ко всем именам входного сигнала, где # индекс входного порта.

Делая каждое имя сигнала легальный идентификатор MATLAB обрабатывает широкий спектр настроек модели. Неожиданные требования могут потребовать, чтобы изменяющие названия сигнала следовали за более строгим синтаксисом. Можно использовать функцию isvarname определить, является ли имя сигнала легальным идентификатором MATLAB.

Назовите сигнал в интерактивном режиме при помощи одной из этих опций:

Имя сигнала появляется ниже сигнала, отображенного как signal label.

Чтобы назвать сигнал программно, используйте get_param и set_param функции на сигнале. Приведенная ниже таблица подводит итог, как работать с именами сигнала и метками в Редакторе Simulink.

ЗадачаДействие
Назовите сигнальную линиюДважды кликните сигнал и введите его имя.
Назовите ветвь именованной сигнальной линииДважды кликните ветвь.
Назовите каждую ветвь сигнала Щелкните правой кнопкой по сигналу, выберите Properties и используйте диалоговое окно.
Удалите метку сигнала и имяУдалите символы в метке или удалите имя в диалоговом окне Signal Properties.
Удалите метку сигнала только Щелкните правой кнопкой по метке и выберите Delete Label.
Открытое поле текста метки сигнала для редактирования

Дважды кликните сигнальную линию.

Кликните по метке.

Выберите сигнальную линию (не метка) и используйте F2.

На Mac выберите сигнальную линию (не метка) и используйте control+return.

Метка сигнала движения Перетащите метку к новому местоположению на той же сигнальной линии.
Скопируйте метку сигналаCtrl+ перетаскивает метку сигнала.
Измените шрифт меткиВыберите сигнальную линию (не метка), и затем на вкладке Format, кликните по стреле кнопки Font Properties, затем нажмите Fonts for Model.

Параметры отображения сигнала

Отображение атрибутов сигнала в диаграмме модели может сделать модель легче читать. Например, в Редакторе Simulink, на вкладке Debug, используют меню Information Overlays, чтобы включать в информацию о макете модели об атрибутах сигнала, таких как:

  • Типы данных порта

  • Спроектируйте области значений

  • Размерности сигнала

  • Разрешение сигнала

Для получения дополнительной информации смотрите Атрибуты Сигнала Отображения.

Можно также подсветить сигнал и его источник или целевые блоки. Для получения дополнительной информации смотрите Источники Сигнала Подсветки и Места назначения.

Сохраните атрибуты проекта сигналов и состояний

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

В качестве альтернативы можно задать эти атрибуты при помощи свойств Simulink.Signal или Simulink.ValueType возразите, что вы храните в словаре данных или рабочей области.

Выберите который стратегия использовать на основе ваших целей моделирования.

Моделирование целиСтратегия

Улучшите мобильность модели, удобочитаемость и простоту обслуживания

Сохраните спецификации атрибута сигнала в файле модели. Вы не должны сохранять и управлять внешними объектами. Считайте установку параметра конфигурации модели Signal resolution к None, который отключает использование Simulink.Signal объекты моделью.

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

Используйте Simulink.Signal объекты.

Отдельные спецификации атрибута сигнала из модели так, чтобы можно было снова использовать специализированный набор атрибутов

Используйте Simulink.Valuetype объекты.

Чтобы сконфигурировать атрибуты проекта и настройки генерации кода для сигналов при помощи списка, что можно отсортировать, сгруппируйте, и фильтр, рассмотрите использование Model Data Editor. Для объектов можно также использовать Model Explorer.

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

Тестовые сигналы

Можно выполнить следующие виды тестов на сигналах:

  • Минимальные и Максимальные значения — Для многих блоков Simulink, можно указать диапазон допустимых значений для выходных сигналов. Simulink обеспечивает диагностику для обнаружения, когда блоки генерируют сигналы, которые превышают их заданные области в процессе моделирования. Для получения дополнительной информации смотрите, Указывают Диапазоны сигнала.

  • Валидация связи — Много блоков Simulink имеют ограничения на типы сигналов, что они принимают. Прежде, чем симулировать модель, Simulink Check все блоки, чтобы гарантировать, что блоки могут вместить типы сигналов, выведенных портами к который подключение блоков и ошибки отчетов о несовместимостях. Чтобы обнаружить ошибки совместимости сигнала прежде, чем запустить симуляцию, обновите схему.

Блок Signal Editor отображает взаимозаменяемые группы сценариев. Используйте Signal Editor , чтобы отобразить, создать, отредактировать, и переключить взаимозаменяемые сценарии.

Сценарии могут помочь с тестированием модели.

Похожие темы