Виртуальный конечный автомат

редактировать

A виртуальный конечный автомат (VFSM ) есть конечный автомат (FSM), определенный в виртуальной среде. Концепция VFSM предоставляет метод спецификации программного обеспечения для описания поведения системы управления с использованием присвоенных имен свойств элемента управления вводом и действий вывода.

Метод VFSM представляет модель выполнения и упрощает представление о исполняемой спецификации. Эта технология в основном используется в сложных системах управления машинами, контрольно-измерительной аппаратуре и телекоммуникациях.

Содержание
  • 1 Почему
  • 2 Свойства элемента управления
  • 3 Действия
  • 4 Виртуальная среда
  • 5 Положительная логическая алгебра
    • 5.1 Имена входов и виртуальный вход
    • 5.2 Логические операции на входе Имена
    • 5.3 Логическое выражение
    • 5.4 Оценка логического выражения
    • 5.5 Имена выходов и виртуальный выход
    • 5.6 Виртуальная среда
  • 6 Модель выполнения VFSM
  • 7 Таблица состояний
  • 8 Инструменты
  • 9 Ссылки
Почему

Основной проблемой при реализации конечного автомата является генерация логических условий (условия перехода между состояниями и условия действия). В аппаратной среде, где конечные автоматы нашли свое первоначальное применение, этой проблемы не существует: все сигналы являются логическими. Напротив, конечные автоматы, указанные и реализованные в программном обеспечении, требуют логических условий, которые сами по себе являются многозначными.

Примеры:. - Температура может быть как минимум Low, OK, High. - Команды могут иметь несколько значений: Init, Start, Stop, Break, Continue. - в (иерархической) система конечных автоматов конечные автоматы ведомых имеют много состояний, которые используются в условиях конечного автомата ведущего.. Кроме того, многие входные сигналы могут быть неизвестны из-за, например, обрыва кабеля, что означает, что даже цифровые входные сигналы ( рассматриваются как классические логические значения) фактически являются сигналами трех значений: Low, High, Unknown. В примере с температурой, вероятно, также потребуется значение Unknown.

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

Свойства элемента управления

Переменная в среде VFSM может иметь одно или несколько значений, относящихся к элементу управления - в этом случае это входная переменная. Эти значения являются управляющими свойствами этой переменной. Свойства управления не обязательно являются конкретными значениями данных, а скорее являются определенными состояниями переменной. Например, цифровая переменная может предоставлять три управляющих свойства: ИСТИНА, ЛОЖЬ и НЕИЗВЕСТНО в соответствии с ее возможными логическими значениями. Числовая (аналоговая) входная переменная имеет управляющие свойства, такие как: LOW, HIGH, OK, BAD, UNKNOWN, в соответствии с диапазоном требуемых значений. Таймер может иметь состояние OVER (истекло время ожидания) в качестве наиболее значимого контрольного значения; другие значения могут быть STOPPED, RUNNING и т. д.

Actions

Переменная в среде VFSM может быть активирована действиями - в этом случае это выходная переменная. Например, цифровой выход имеет два действия: Истина и Ложь. У числовой (аналоговой) выходной переменной есть действие: Установить. Таймер, который одновременно является входной и выходной переменной, может запускаться такими действиями, как: Start, Stop или Reset.

Виртуальная среда

Виртуальная среда характеризует среду, в которой работает VFSM. Он определяется тремя наборами имен:

  • имена входов представляют управляющие свойства всех доступных переменных
  • имена выходов представляют доступные действия с переменными
  • именами состояний, как определены для каждого из состояний конечного автомата.

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

Рисунок 1: VFSM в виртуальной среде

A виртуальный конечный автомат - это конечный автомат (FSM), определенный в виртуальной среде. Концепция VFSM предоставляет метод спецификации программного обеспечения для описания поведения системы управления с использованием присвоенных имен входных свойств управления и выходных действий .

. Метод VFSM представляет модель выполнения и упрощает реализацию идеи. спецификации исполняемого файла . Эта технология в основном используется в сложных системах управления машинами, контрольно-измерительной аппаратуре и телекоммуникациях.

Положительная логическая алгебра

Правила построения виртуального условия следующие:

Имена входов и виртуальный вход

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

Например:. - для входа A: Anames = {A1, A2, A3}. - для входа B: Bnames = {B1, B2}. - для входа C: Cnames = {C1, C2, C3, C4, C5}. и т. Д.

ВП виртуального ввода - это набор взаимоисключающих элементов имен входов. ВП всегда всегда содержит элемент.

Примеры:. VI = {всегда}. VI = {всегда, A1}. VI = {всегда, A1, B2, C4}

Логические операции на входе Имена

(И) - это набор имен входов.

Например,. A1 B3 C2 =>{A1, B3, C2}

|(OR) операция - это таблица наборов имен входов.

Например,. A1 | B3 | C2 =>[{A 1} {B 3} {C 2}] {\ displaystyle {\ begin {bmatrix} \ {A1 \} \\\ {B3 \} \\\ {C2 \} \\ \ end {bmatrix}}}{\ displaystyle { \ begin {bmatrix} \ {A1 \} \\\ {B3 \} \\\ {C2 \} \\\ end {bmatrix}}}

~(Дополнение) - это дополнение к набору имен входов.

Например,. ~ A2 = {A1, A3}

Логическое выражение

Логическое выражение представляет собой таблицу ИЛИ наборов И (соответствует дизъюнктивной форме логического выражения).

Например:. A1 B3 | A1, B2 и C4 | C2 =>[{A 1 B 3} {A 1 B 2 C 4} {C 2}] {\ displaystyle {\ begin {bmatrix} \ {A1 B3 \} \\\ {A1 B2 C4 \} \\\ {C2 \} \\\ end {bmatrix}}}{\ displaystyle {\ begin {bmatrix} \ {A1 B3 \} \\\ {A1 B2 C4 \} \\\ {C2 \} \\\ end {bmatrix}}} . Логические выражения используются для выражения любой логической функции.

Оценка логического выражения

Логическое значение (истина, ложь) логического выражения вычисляется путем проверки того, является ли какой-либо из наборов И в таблице ИЛИ подмножеством VI.

Имена выходов и виртуальный выход

Состояние выхода описывается именами выходов, которые создают набор.

Например:. для выхода Xnames = {X1, X2}. для выхода Ynames = {Y1, Y2, Y3}. VO виртуального выхода представляет собой набор взаимоисключающих элементов имен выходов.

Виртуальная среда

Виртуальное имя и виртуальный вывод, заполненные именами состояний, создают виртуальную среду VE, в которой указано поведение.

Модель выполнения VFSM
Рис. 2: Блок-схема исполнителя VFSM

Подмножество всех определенных имен входов, которые могут существовать только в определенной ситуации, называется виртуальным входом (VI). Например, температура может быть «слишком низкой», «хорошей» или «слишком высокой». Хотя определены три имени входа, в реальной ситуации может существовать только одно из них. Этот строит VI.

Подмножество всех определенных имен выходов, которые могут существовать только в определенной ситуации, называется виртуальным выходом (VO). VO создается текущим действием (ями) VFSM.

Спецификация поведения построена на основе таблицы состояний, которая описывает все детали всех состояний VFSM.

Исполнитель VFSM запускается VI и текущим состоянием VFSM. VO устанавливается с учетом спецификации поведения текущего состояния.

На рисунке 2 показана одна из возможных реализаций исполнителя VFSM. На основе этой реализации необходимо учитывать типичные характеристики поведения.

Таблица состояний
главная страница: таблица переходов состояний.

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

Имя состоянияУсловие (я)Действия
Текущее состояниеДействие входаИмя (я) выхода
Действие выходаИмя (я) выхода
Виртуальное условиеИмя (я) выхода
......
Имя следующего состоянияВиртуальное условиеИмя (я) выхода
Имя следующего состоянияВиртуальное условиеИмя (я) выхода
.........

Прочтите таблицу следующим образом: первые две строки определяют действия входа и выхода текущего состояния. Следующие строки, которые не предоставляют следующее состояние, представляют действия ввода. Наконец, строки, обозначающие следующее состояние, представляют условия перехода между состояниями и действия перехода. Все поля необязательны. Чистый комбинаторный VFSM возможен только в том случае, если используются входные действия, но не определены переходы между состояниями. Действие перехода можно заменить правильным использованием других действий.

Инструменты
Ссылки
Последняя правка сделана 2021-06-18 03:36:32
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте