exponenta event banner

Stateflow. StateTransitionTableChart

Табличное представление конечного автомата для модальной логики

    Описание

    Использовать Stateflow.StateTransitionTableChart создание табличного представления конечного конечного автомата для модальной логики. Преимущества использования таблиц переходов состояний включают в себя:

    • Простота моделирования train-подобных конечных автоматов, где модальная логика включает в себя переходы из одного состояния в соседнее

    • Сжатый, компактный формат конечного автомата

    • Сокращение объема обслуживания графических объектов

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

    Создание

    Создание Stateflow.StateTransitionTableChart объект, вызовите функцию sfnew с -STT аргумент. Например, чтобы создать блок таблицы перехода состояния в новой модели Simulink ® с именемmyModel, введите:

    sfnew -STT myModel

    Можно также добавить новый блок Таблица перехода состояния (State Transition Table) в существующую модель с помощью функции add_block (Simulink):

    add_block('sflib/State Transition Table','myModel/State Transition Table')

    Затем для доступа к Stateflow.StateTransitionTableChart объект, вызовите find для функции Simulink.Root объект:

    rt = sfroot;
    table = find(rt,'-isa','Stateflow.StateTransitionTableChart', ...
        'Path','myModel/State Transition Table');

    Свойства

    развернуть все

    Содержание

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

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

    Семантика конечного автомата, реализованная таблицей переходов состояний, указанная как 'Classic', 'Mealy', или 'Moore'. Дополнительные сведения см. в разделе Обзор машин Mealy и Moore.

    Поддерживает ли таблица перехода состояния данные переменного размера, указанные как числовые или логические 1 (true) или 0 (false). Только данные переменного размера могут изменять размеры во время моделирования. Дополнительные сведения см. в разделе Объявление данных переменного размера в диаграммах потока состояний.

    Инициализация диаграммы

    Инициализировать ли конфигурацию состояния таблицы перехода состояния в нуль времени вместо первого входного события, указанного как числовой или логический 1 (true) или 0 (false). Дополнительные сведения см. в разделе Выполнение диаграммы при инициализации.

    Поведение состояний, когда событие ввода вызова функции повторно активирует таблицу перехода состояния, заданную как одно из следующих значений:

    • '' - Таблица перехода состояния не содержит событий ввода вызова функции.

    • 'held' - Таблица переходов состояний сохраняет самые последние значения состояний.

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

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

    Инициализировать ли выходные данные при каждом пробуждении таблицы перехода состояния, указанной как числовой или логический 1 (true) или 0 (false). Дополнительные сведения см. в разделе Инициализация выходных данных при каждом включении диаграммы.

    Выход активного состояния

    Создать ли порт вывода данных активного состояния для таблицы перехода состояния, указанной как числовой или логический 1 (true) или 0 (false). Дополнительные сведения см. в разделе Мониторинг активности состояния через данные активного состояния.

    Это свойство доступно только для чтения.

    Объект данных активного состояния для таблицы перехода состояния, указанный как Stateflow.Data объект. Это свойство применяется только в том случае, если HasOutputData свойство для таблицы перехода состояния true.

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

    Режим мониторинга выходных данных активного состояния, указанный как 'ChildActivity' или 'LeafStateActivity'.

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

    Определить ли перечисляемый тип данных для вывода данных активного состояния вручную, указанный как числовой или логический 1 (true) или 0 (false). Дополнительные сведения см. в разделе Определение типа перечисления действий состояния.

    Дискретная семантика с непрерывным временем

    Метод активации для таблицы перехода к состоянию, указанный как 'CONTINUOUS', 'DISCRETE', или 'INHERITED'. Дополнительные сведения см. в разделе Обновление метода.

    Время выборки для активации таблицы переходов состояний, указанное как символьный вектор. Это свойство применяется только в том случае, если ChartUpdate свойство для таблицы перехода состояния 'DISCRETE'.

    Включить ли обнаружение пересечения нуля при переходах состояний в таблице переходов состояний, указанной как числовой или логический 1 (true) или 0 (false). Это свойство применяется только в том случае, если ChartUpdate свойство для таблицы перехода состояния имеет значение 'CONTINUOUS'. Дополнительные сведения см. в разделе Отключение обнаружения пересечения нулей.

    Супершаговая семантика

    Включить ли семантику супершагов для таблицы переходов состояний, указанной как числовой или логический 1 (true) или 0 (false). Дополнительные сведения см. в разделе Супершаговая семантика.

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

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

    • 'Proceed' - таблица перехода состояния переходит в спящий режим с последней конфигурацией активного состояния.

    • 'Throw Error' - таблица перехода состояния генерирует ошибку.

    Это свойство применяется только в том случае, если EnableNonTerminalStates свойство для таблицы перехода состояния true.

    Целочисленные данные и данные с фиксированной точкой

    Насыщает ли данные в таблице перехода состояний переполнение целых чисел, указанное как числовое или логическое 1 (true) или 0 (false). Если это свойство отключено, данные в таблице перехода состояния переносятся при переполнении целых чисел. Дополнительные сведения см. в разделе Обработка переполнения целых чисел для данных диаграммы.

    Унаследованные сигналы Simulink для обработки как Designer™ с фиксированной точкой fi объекты, указанные как одно из следующих значений:

    • 'Fixed-point' - Таблица переходов состояний рассматривает все вводы с фиксированной точкой как fi объекты.

    • 'Fixed-point & Integer' - Таблица переходов состояний рассматривает все фиксированные и целочисленные входы как fi объекты.

    Это свойство применяется только в том случае, если ActionLanguage свойство таблицы перехода состояния 'MATLAB'.

    Дефолт fimath свойства таблицы перехода состояния, указанные как одно из следующих значений:

    • 'Same as MATLAB Default' - Использовать то же самое fimath свойства в качестве текущего значения по умолчанию fimath объект.

    • 'Other:UserSpecified' - Использовать InputFimath свойство для указания значения по умолчанию fimath объект.

    Это свойство применяется только в том случае, если ActionLanguage свойство таблицы перехода состояния 'MATLAB'.

    Дефолт fimath объект, указанный как символьный вектор. Когда EmlDefaultFimath свойство для таблицы перехода состояния 'Other:UserSpecified', это свойство можно использовать для:

    • Введите выражение, которое создает fimath объект.

    • Введите имя переменной для fimath в рабочей области MATLAB ® или модели.

    Это свойство применяется только в том случае, если ActionLanguage свойство таблицы перехода состояния 'MATLAB'.

    Язык действий C

    Следует ли использовать строгий ввод данных, когда таблица перехода состояния взаимодействует с входными и выходными сигналами Simulink, заданными как числовые или логические 1 (true) или 0 (false). Это свойство применяется только к таблицам переходов состояний, которые используют C в качестве языка действий. Дополнительные сведения см. в разделе Использование строгой типизации данных с Simulink I/O.

    Следует ли использовать битовые операции в действиях состояния и перехода в таблице перехода состояния, указанной как числовой или логический 1 (true) или 0 (false). Это свойство применяется только к таблицам переходов состояний, которые используют C в качестве языка действий. Дополнительные сведения см. в разделе Включение C-разрядных операций.

    Отладка

    Установить ли On Chart Entry точка останова для таблицы перехода состояния, заданная как числовая или логическая 1 (true) или 0 (false).

    Пример: table.Debug.Breakpoints.OnEntry = true;

    Графический образ

    Это свойство доступно только для чтения.

    Редактор для таблицы переходов состояний, указанной как Stateflow.Editor объект. Этот объект можно использовать для управления положением, размером и уровнем увеличения окна Stateflow ® Editor.

    Отображается ли в окне Stateflow Editor таблица перехода состояния, заданная как числовая или логическая 1 (true) или 0 (false).

    Цвет фона для диаграммы, автоматически создаваемой для таблицы переходов состояний, определяемый как трехэлементный числовой вектор формы [red green blue] определяет значения красного, зеленого и синего цветов. Каждый элемент должен находиться в диапазоне от 0 до 1.

    Цвет полей, функций и состояний в диаграмме, автоматически генерируемой для таблицы перехода состояний, заданной как трехэлементный числовой вектор формы [red green blue] определяет значения красного, зеленого и синего цветов. Каждый элемент должен находиться в диапазоне от 0 до 1.

    Цвет для переходов в диаграмме, автоматически генерируемой для таблицы переходов состояний, заданной как трехэлементный числовой вектор формы [red green blue] определяет значения красного, зеленого и синего цветов. Каждый элемент должен находиться в диапазоне от 0 до 1.

    Цвет для соединений в диаграмме, автоматически генерируемой для таблицы переходов состояний, определяемый как трехэлементный числовой вектор формы [red green blue] определяет значения красного, зеленого и синего цветов. Каждый элемент должен находиться в диапазоне от 0 до 1.

    Цвет для меток поля, функции и состояния в диаграмме, автоматически генерируемой для таблицы перехода состояния, заданной как трехэлементный числовой вектор формы [red green blue] определяет значения красного, зеленого и синего цветов. Каждый элемент должен находиться в диапазоне от 0 до 1.

    Угол шрифта для поля, функции и меток состояния на диаграмме, который автоматически генерируется для таблицы перехода состояния, указанной как 'NORMAL' или 'ITALIC'.

    Пример: table.StateFont.Angle = 'ITALIC';

    Вес шрифта для меток поля, функции и состояния в диаграмме, который автоматически генерируется для таблицы перехода состояния, указанной как 'NORMAL' или 'BOLD'.

    Пример: table.StateFont.Weight = 'BOLD;

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

    Пример: table.StateFont.Size = 8;

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

    Пример: table.StateFont.Name = 'Arial';

    Цвет меток перехода в диаграмме, автоматически генерируемой для таблицы перехода состояния, заданной как трехэлементный числовой вектор формы [red green blue] определяет значения красного, зеленого и синего цветов. Каждый элемент должен находиться в диапазоне от 0 до 1.

    Угол шрифта для меток перехода на диаграмме, автоматически генерируемый для таблицы перехода состояния, указанный как 'NORMAL' или 'ITALIC'.

    Пример: table.TransitionFont.Angle = 'ITALIC';

    Вес шрифта для меток перехода в диаграмме, который автоматически генерируется для таблицы перехода состояния, указанной как 'NORMAL' или 'BOLD'.

    Пример: table.TransitionFont.Weight = 'BOLD';

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

    Пример: table.TransitionFont.Size = 8;

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

    Пример: table.TransitionFont.Name = 'Arial';

    Иерархия

    Это свойство доступно только для чтения.

    Машина, содержащая таблицу переходов состояний, заданную как Stateflow.Machine объект.

    Это свойство доступно только для чтения.

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

    Изменяется ли таблица перехода состояния после открытия или сохранения, указывается как числовой или логический 1 (true) или 0 (false).

    Блокируется ли таблица перехода состояния, указывается как числовой или логический 1 (true) или 0 (false). Включите это свойство, чтобы предотвратить изменения в таблице перехода состояний.

    Это свойство доступно только для чтения.

    Блокируется ли таблица перехода состояния, указывается как числовой или логический 1 (true) или 0 (false). Это свойство эквивалентно свойству Locked, но используется внутри для предотвращения изменений в таблице перехода состояния во время моделирования.

    Идентификация

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

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

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

    Это свойство доступно только для чтения.

    Уникальный идентификатор, указанный как целочисленный скаляр. Это свойство используется для отличия таблицы переходов состояний от других объектов модели. Значение этого свойства переназначается при каждом запуске нового сеанса MATLAB и может быть повторно использовано после удаления объекта.

    Функции объекта

    classhandleПредоставить дескриптор класса для объекта
    dialogДиалоговое окно «Открыть свойства»
    findУказанные объекты в иерархии
    getВозврат структуры MATLAB, содержащей параметры свойств объекта или массива объектов
    parseАнализ одной или всех диаграмм в модели
    setЗадать свойства с заданными значениями
    viewЭкранный объект в среде редактирования

    Примеры

    свернуть все

    Вызовите функцию sfnew с -STT для открытия новой модели Simulink, содержащей пустой блок таблицы перехода состояния.

    sfnew -STT

    Доступ к Simulink.Root путем вызова sfroot функция.

    rt = sfroot;

    Доступ к Stateflow.StateTransitionTableChart путем вызова find для функции Simulink.Root объект.

    table = find(rt,'-isa','Stateflow.StateTransitionTableChart');
    Представлен в R2012b