Известно, что основной задачей первых трех десятилетий компьютерной эры являлось развитие аппаратных


Рис. 12.1.  Обозначение состояния  Переходы между состояниями отображаются помеченными стрелками (рис. 12.2).  Рис. 12.2



Pdf көрінісі
бет58/78
Дата30.09.2024
өлшемі1,76 Mb.
#146202
түріЛекция
1   ...   54   55   56   57   58   59   60   61   ...   78
Байланысты:
материалы ТРСПО 2024

Рис. 12.1. 
Обозначение состояния 
Переходы между состояниями отображаются помеченными стрелками (рис. 12.2). 
Рис. 12.2. 
Переходы между состояниями 
На рис. 12.2 обозначено: Событие — происшествие, вызывающее изменение состояния, Действие — набор операций, 
запускаемых событием. 
Иначе говоря, события вызывают переходы, а действия являются реакциями на переходы. 
Примеры событий: 
баланс < 0
помехи
уменьшить(Давление)
after (5 seconds)
when (time = 16:30)
Изменение в состоянии
Сигнал (объект с именем)
Вызов действия
Истечение периода времени
Наступление абсолютного момента времени
Примеры действий: 
Кассир. прекратитьВыплаты( )
flt:= new(Фильтp); Ш.убратьПомехи( )
send Ник. привет
Вызов одной операции
Вызов двух операций
Посылка сигнала в объект Ник
 
ПРИМЕЧАНИЕ
Для отображения посылки сигнала используют специальное обозначение — перед именем сигнала указывают служебное 
слово send. 
Для отображения перехода в начальное состояние принято обозначение, показанное на рис. 12.3. 
Рис. 12.3.
Переход в начальное состояние 
Соответственно, обозначение перехода в конечное состояние имеет вид, представленный на рис. 12.4. 
Рис. 12.4. 
Переход в конечное состояние 
В качестве примера на рис. 12.5 показана диаграмма схем состояний для системы охранной сигнализации. 


Рис. 12.5. 
Диаграмма схем состояний системы охранной сигнализации 
Из рисунка видно, что система начинает свою жизнь в состоянии Инициализация, затем переходит в состояние Ожидание. 
В этом состоянии через каждые 10 секунд (по событию after (10 sec.)) выполняется самопроверка системы (операция 
Самопроверка ()). При наступлении события Тревога (Датчик) реализуются действия, связанные с блокировкой периметра 
охраняемого объекта, — исполняется операция БлокироватьПериметр() и осуществляется переход в состояние Активна. В 
активном состоянии через каждые 5 секунд по событию after (5 sec.) запускается операция ПриемКоманды(). Если команда 
получена (наступило событие Сброс), система возвращается в состояние Ожидание. В процессе возврата разблокируется 
периметр охраняемого объекта (операция РазблокироватьПериметр()). 


Достарыңызбен бөлісу:
1   ...   54   55   56   57   58   59   60   61   ...   78




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет