Реферат на тему диаграмма состояний

Обновлено: 02.07.2024

Для моделирования поведения на логическом уровне в языке UML могут использоваться сразу несколько канонических диаграмм: состояний, деятельности, последовательности и кооперации, каждая из которых фиксирует внимание на отдельном аспекте функционирования системы.

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

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

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

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

Пример диаграммы состояний для технического устройства типа компьютер:


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

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


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

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

Конечное (финальное) состояние представляет собой частный случай состояния, которое также не содержит никаких внутренних действий (псевдосостояния). В этом состоянии будет находиться объект по умолчанию после завершения работы автомата в конечный момент времени.


Простой переход (simpletransition) представляет собой отношение между двумя последовательными состояниями, которое указывает на факт смены одного состояния другим. Пребывание моделируемого объекта в первом состоянии может сопровождаться выполнением некоторых действий, а переход во второе состояние будет возможен после завершения этих действий, а также после удовлетворения некоторых дополнительных условий. В этом случае говорят, что переход срабатывает, Или происходит срабатывание перехода. До срабатывания перехода объект находится в предыдущем от него состоянии, называемым исходным состоянием, или в источнике (не путать с начальным состоянием –это разные понятия), а после его срабатывания объект находится в последующем от него состоянии (целевом состоянии).

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

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


Составное состояние (compositestate) – такое сложное состояние, которое состоит из других вложенных в него состояний. Последние будут выступать по отношению к первому как подсостояния (substate).

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

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

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

Диаграмма железо – углерод должна распространяться от железа до углерода. Железо образует с углеродом химическое соединение: цементит – Fe3 C. Каждое устойчивое химическое соединение можно рассматривать как компонент, а диаграмму – по частям. Так как на практике применяют металлические сплавы с содержанием углерода до 5 %, то рассматриваем часть диаграммы состояния от железа до химического соединения цементита, содержащего 6,67 % углерода.

1. Компоненты и фазы в системе железо-углерод

Компонентами железоуглеродистых сплавов являются железо, углерод и цементит.

1. Железоd - переходный металл серебристо-светлого цвета. Температура плавления – 1539° С. Удельный вес равен 7,86 г/см 3 .

Наиболее существенной особенностью железа является его полиморфизм. В твердом состоянии железо может находиться в двух модификациях - a и γ. Полиморфные превращения происходят при температурах 911° С и 1392° С. При температуре ниже 911° С и выше 1392° С существует Fea (или α-Fе) с объемно-центрированной кубической решеткой. В интервале температур 911…1392° С устойчивым является Feγ (или γ-Fе) с гранецентрированной кубической решеткой. При превращении α→γ наблюдается уменьшение объема, так как решетка γ-Fе имеет более плотную упаковку атомов, чем решетка α-Fе. При охлаждении во время превращения γ→α наблюдается увеличение объема. В интервале температур 1392…1539° С высокотемпературное Fea называют Feδ . Высокотемпературная модификация Fea не представляет собой новой аллотропической формы.

При температуре ниже 768° С железо ферромагнитно, а выше – парамагнитно. Точку 768° С, соответствующую магнитному превращению, т.е. переходу из ферромагнитного состояния в парамагнитное называют точкой Кюри. Модификация Feγ парамагнитна.

Железо технической чистоты обладает невысокой твердостью (80 НВ) и прочностью (временное сопротивление – σв = 250 МПа, предел текучести – σТ = 120 МПа) и высокими характеристиками пластичности (относительное удлинение – δ =50 %, а относительное сужение – ψ = 80 %). Свойства могут изменяться в некоторых пределах в зависимости от величины зерна. Железо характеризуется высоким модулем упругости, наличие которого проявляется и в сплавах на его основе, обеспечивая высокую жесткость деталей из этих сплавов.

Железо со многими элементами образует растворы: с металлами – растворы замещения, с углеродом, азотом и водородом – растворы внедрения.

2. Углерод относится к неметаллам. Обладает полиморфным превращением, в зависимости от условий образования существует в форме графита с гексагональной кристаллической решеткой (температура плавления – 3500° С, плотность – 2,5 г/см 3 ) или в форме алмаза со сложной кубической решеткой с координационным числом равным четырем (температура плавления 5000° С).

В сплавах железа с углеродом углерод находится в состоянии твердого раствора с железом и в виде химического соединения – цементита (Fe3 C), а также в свободном состоянии в виде графита (в серых чугунах).

3. Цементит (Fe3 C) – химическое соединение железа с углеродом (карбид железа), содержит 6,67 % углерода. Более точные исследования показали, что цементит может иметь переменную концентрацию углерода. Однако в дальнейшем, при разборе диаграммы состояния, сделаем допущение, что Fе3 С имеет постоянный состав. Кристаллическая решетка цементита ромбическая, удельный вес 7,82 г/см 3 (очень близок к удельному весу железа). При высоких температурах цементит диссоциирует, поэтому температура его плавления неясна и проставляется ориентировочно – 1260° С.

Аллотропических превращений не испытывает. Кристаллическая решетка цементита состоит из ряда октаэдров, оси которых наклонены друг к другу. При низких температурах цементит слабо ферромагнитен, магнитные свойства теряет при температуре около 210° С. Цементит имеет высокую твердость (более 800 НВ, легко царапает стекло), но чрезвычайно низкую, практически нулевую, пластичность.

Цементит способен образовывать твердые растворы замещения. Атомы углерода могут замещаться атомами неметаллов: например, азотом; атомы железа – металлами: марганцем, хромом, вольфрамом и др. Такой твердый раствор на базе решетки цементита называется легированным цементитом.

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

В системе железо – углерод существуют следующие фазы: жидкая фаза, феррит, аустенит, цементит, графит.

1. Жидкая фаза. В жидком состоянии железо хорошо растворяет углерод в любых пропорциях с образованием однородной жидкой фазы.

2. Феррит (Ф, a )- твердый раствор внедрения углерода в a-железе (от латинского слова ferrum железо). Различают низкотемпературный феррит с предельной растворимостью углерода 0,02 % при температуре 727° С (точка P ) и высокотемпературный δ-феррит (в интервале температур 1392…1539° С) с предельной растворимостью углерода 0,1 % при температуре 1499° С (точка J ).

Свойства феррита близки к свойствам железа. Он мягок (твердость – 130 НВ, временное сопротивление – σв = 300 МПа) и пластичен (относительное удлинение - δ =50 %), магнитен до 768° С.

3. Аустенит (А, γ) – твердый раствор внедрения углерода в γ –железо (по имени английского ученого Р. Аустена). Углерод занимает место в центре гранецентрированной кубической ячейки. Предельная растворимость углерода в γ -железе 2,14 % при температуре 1147° С (точка Е). Аустенит имеет твердость 200…250 НВ, пластичен (относительное удлинение – δ =40…50 %), парамагнитен.

При растворении в аустените других элементов могут изменяться свойства и температурные границы существования.

4. Цементит – характеристика дана выше.

В железоуглеродистых сплавах присутствуют фазы: цементит первичный, цементит вторичный, цементит третичный. Химические и физические свойства этих фаз одинаковы. Влияние на механические свойства сплавов оказывает различие в размерах, количестве и расположении этих выделений. Цементит первичный выделяется из жидкой фазы в виде крупных пластинчатых кристаллов. Цементит вторичный выделяется из аустенита и располагается в виде сетки вокруг зерен аустенита (при охлаждении – вокруг зерен перлита). Цементит третичный выделяется из феррита и в виде мелких включений располагается у границ ферритных зерен.

5. Графит - характеристика дана выше.

Поскольку углерод в сплавах с железом встречается в виде цементита и графита, существуют две диаграммы состояния, описывающие условия равновесия фаз в системах железо - цементит и железо - графит. Первая диаграмма (Fе — Fе3 С) называется цементитной (метастабильная), вторая (Fе - С) - графитной (стабильная). Оба варианта диаграммы приводятся вместе в одной системе координат: температура - содержание углерода (рис. 1). Диаграмма состояния системы железо - углерод построена по результатам многочисленных исследований, проведенных учеными ряда стран.

Особое место среди них занимают работы Д.К. Чернова. Он открыл существование критических точек в стали, определил их зависимость от содержания углерода, заложил основы для построения диаграммы состояния железоуглеродистых сплавов в ее нижней, наиболее важной части.

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

Рис. 1. Общий вид диаграммы состояния системы железо - углерод.

2. Система железо — цементит ( Fe — F е3 С)

Диаграмма состояния системы железо - цементит изображена на рис. 2. Данные о точках диаграммы приведены в табл. 1.

Рис. 2. Диаграмма состояния системы железо - цементит.

Имеющиеся во всех областях диаграммы фазы видны на рис. 2. Значение всех линий указано в табл. 2.

Ликвидус по всей диаграмме проходит по линиям АВ, ВС, С D ; солидус - по линиям АН, Н J , J Е, ЕС F . Сплавы железа с углеродом обычно делят на стали и чугуны. Условной границей для такого деления является 2,14 % С (точка E ). Сплавы, содержащие углерода менее 2,14 %, относятся к сталям, более 2,14 % - к чугунам.

Температуры, при которых происходят фазовые и структурные превращения в сплавах системы железо – цементит, т.е. критические точки, имеют условные обозначения. Обозначаются буквой А. В зависимости от того, при нагреве или при охлаждении определяется критическая точка, к букве А добавляется индекс с (от слова chauffage – нагрев) при нагреве и индекс r (от слова refroidissement – охлаждение) при охлаждении с оставлением цифры, характеризующей данное превращение.

Таким образом, например, нагрев доэвтектоидной стали выше соответствующей точки на линии С S обозначается как нагрев выше точки АС3 . При охлаждении же этой стали первое превращение должно быть обозначено как А r 3 , второе (на линии Р S К) - как А r 1 .

Узловые точки диаграммы состояния системы F е — F е3 С

Название работы: Диаграмма состояний (statechart diagram)

Предметная область: Информатика, кибернетика и программирование

Описание: Вершинами графа являются возможные состояния автомата изображаемые соответствующими графическими символами а дуги обозначают его переходы из состояния в состояние. Длительность нахождения системы в любом из возможных состояний существенно превышает время которое затрачивается на переход из одного состояния в другое. При этом автомат может находиться в отдельном состоянии как угодно долго если не происходит никаких событий; время нахождения автомата в том или ином состоянии а также время достижения того или иного состояния никак не.

Дата добавления: 2013-07-25

Размер файла: 253 KB

Работу скачали: 2 чел.

26 Диаграмма состояний (statechart diagram)

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

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

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

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

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

Поведение автомата моделируется как последовательное перемещение по графу от вершины к вершине с учетом ориентации связывающих их дуг.

Для автомата должны выполняться следующие обязательные условия:

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

Понятие состояния объекта

Понятие состояния (state) является фундаментальным не только в метамодели языка UML, но и в прикладном системном анализе. Вся концепция динамической системы основывается на понятии состояния. Семантика же состояния в языке UML имеет ряд специфических особенностей.

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

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

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

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

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

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

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

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

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

Переход

Простой переход (simple transition) представляет собой отношение между двумя последовательными состояниями, которое указывает на факт смены одного состояния объекта другим. Если пребывание моделируемого объекта в первом состоянии сопровождается выполнением некоторых действий, то переход во второе состояние будет возможен только после завершения этих действий и, возможно, после выполнения некоторых дополнительных условий, называемых сторожевыми условиями.

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

При этом сигнатура события описывает некоторое событие с необходимыми аргументами:

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

Имя события идентифицирует каждый отдельный переход на диаграмме состояний и может содержать строку текста, начинающуюся со строчной буквы. В этом случае принято считать переход триггерным, то есть таким, который специфицирует событие-триггер. Если рядом со стрелкой перехода не указана никакая строка текста, то соответствующий переход является нетриггерным, и в этом случае из контекста диаграммы состояний должно следовать, после окончания какой деятельности он выполняется. После имени события могут следовать круглые скобки для явного задания параметров соответствующего события-триггера. Если таких параметров нет, то список параметров со скобками может отсутствовать.

Сторожевое условие (guard condition), если оно есть, всегда записывается в прямых скобках после события-триггера и представляет собой некоторое булевское выражение. Из контекста диаграммы состояний должна явно следовать семантика этого выражения, а для записи выражения может использоваться синтаксис языка объектных ограничений.

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

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

Составное состояние и подсостояние

Составное состояние (composite state) это сложное состояние, состоящее из других вложенных в него состояний. Вложенные состояния выступают по отношению к сложному состоянию как подсостояия (substate). Хотя между ними имеет место отношение композиции, графически все вершины диаграммы, которые соответствуют вложенным состояниям, изображаются внутри символа составного состояния. В этом случае размеры графического символа составного состояния увеличиваются, так чтобы вместить в себя все подсостояния.

Рис. 1. Изображение составного состояния

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

Последовательные подсостояния (sequential substates) используются для моделирования такого поведения объекта, во время которого в каждый момент времени объект может находиться в одном и только одном подсостояний. Поведение объекта в этом случае представляет собой последовательную смену подсостояний, начиная от начального и заканчивая конечным. Введение в рассмотрение последовательных подсостояний позволяет учесть более тонкие логические аспекты внутреннего поведения объекта.

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

Параллельные подсостояния (concurrent substates) позволяют специфицировать два и более подавтомата, которые могут выполняться параллельно внутри составного события. Каждый из подавтоматов занимает некоторую область или регион внутри составного состояния, которая отделяется от остальных горизонтальной пунктирной линией. Если на диаграмме состояний имеется составное состояние с вложенными параллельными подсостояниями, то объект может одновременно находиться в каждом из этих подсостояний.

Отдельные параллельные подсостояния могут состоять из нескольких последовательных подсостояний (подавтоматы 1 и 3 на рис. 2).

Рис. 2. Изображение составного состояния с вложенными параллельными подсостояниями

Поскольку каждый регион вложенного состояния специфицирует некоторый подавтомат, то для каждого из вложенных подавтоматов могут быть определены собственные начальное и конечные подсостояния (рис. 2). При переходе в данное составное состояние каждый из подавтоматов оказывается в своем начальном подсостоянии. Далее происходит параллельное выполнение каждого из этих подавтоматов, причем выход из составного состояния будет возможен лишь в том случае, когда все подавтоматы будут находиться в своих конечных подсостояниях. Если какой-либо из подавтоматов пришел в свое конечное состояние раньше других, то он должен ожидать, пока и другие подавтоматы не придут в свои конечные состояния.

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

Рис. 3. Составное состояние со скрытой внутренней структурой

Как отмечалось выше, правила построения обычного автомата не позволяют учитывать предысторию в процессе моделирования поведения объектов. Однако функционирование целого ряда систем основано на возможности выхода из отдельных состояний с последующим возвращением в это же состояние. При этом может оказаться необходимым учесть ту часть деятельности, которая была выполнена на момент выхода из этого состоянии, чтобы не начинать ее выполнение сначала. Для этой цели в языке UML существует историческое состояние .

Историческое состояние (history state) применяется в контексте составного состояния. Оно используется для запоминания того из последовательных подсостояний, которое было текущим в момент выхода из составного состояния. При этом существует две разновидности исторического состояния: недавнее и давнее (рис. 4).

Рис. 4. Изображение недавнего (а) и давнего (б) исторического состояния

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

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

Сложные переходы

Рассмотренное выше понятие перехода является вполне достаточным для большинства типичных расчетно-вычислительных задач. Однако современные программные системы могут реализовывать очень сложную логику поведения отдельных своих компонентов. Может оказаться, что для адекватного представления процесса изменения состояний семантика обычного перехода для них недостаточна. С этой целью в языке UML специфицированы дополнительные обозначения и свойства, которыми могут обладать отдельные переходы на диаграмме состояний.

Переходы между параллельными состояниями

В отдельных случаях переход может иметь несколько состояний-источников и несколько целевых состояний. Такой переход получил название параллельный переход .

Графически такой переход изображается вертикальной черточкой. Если параллельный переход имеет две и более входящие дуги, его называют соединением (join). Если же он имеет две или более исходящие дуги, то его называют ветвлением (fork). Текстовая строка спецификации параллельного перехода записывается рядом с черточкой и относится ко всем входящим или исходящим дугам.

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

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

Переходы между составными состояниями

Переход, стрелка которого соединена с границей некоторого составного состояния, обозначает переход в составное состояние. Такой переход эквивалентен переходу в начальное состояние каждого из подавтоматов, входящих в состав данного суперсостояния. Переход, выходящий из составного состояния, относится к каждому из вложенных подсостояний. Это означает, что объект может покинуть составное суперсостояние, находясь в любом из его подсостояний. Для этого вполне достаточно выполнения события и сторожевого условия.

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

Синхронизирующие состояния

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


Равновесное состояние железоуглеродистых сплавов в зависимости от содержания углерода и температуры описывает диаграмма состояния железо - углерод. На диаграмме состояния железоуглеродистых сплавов (рис. 1) на оси ординат отложена температура, на оси абсцисс - содержание в сплавах углерода до 6,67%, то есть до такого количества, при котором образуется цементит Fе3С. По диаграмме состояния системы железо - углерод судят о структуре медленно охлажденных сплавов, а также о возможности изменения их микроструктуры в результате термической обработки, определяющей эксплуатационные свойства. На диаграмме состояния Fe - Fе3С приняты международные обозначения. Сплошными линиями показана диаграмма состояния железо - цементит (метастабильная, так как возможен распад цементита), а пунктирными - диаграмма состояния железо - графит стабильная).

Рассматриваемую диаграмму правильнее считать не железоуглеродистой (Fe - С), а железоцементитной (Fe - Fе3С), так как свободного углерода в сплавах не содержится. Но так как содержание углерода пропорционально содержанию цементита, то практически удобнее все изменения структуры сплавов связывать с различным содержанием углерода.

Углерод растворим в железе в жидком и твердом состояниях, а также может образовать химическое соединение - цементит Fе3С или присутствовать в сплавах в виде графита.

В системе железо-цементит (Fe - Fе3С) имеются следующие фазы: жидкий раствор. твердые растворы - феррит и аустенит, а также химическое соединение - цементит.

Феррит может иметь две модификации - высоко- и низкотемпературную. Высокотемпературная модификация d -Fe и низкотемпературная - a -Fe представляют собой твердые растворы углерода, соответственно, в d - и a - железе.

Предельное содержание углерода в a -Fe при 723°С -0,02%, а при 20°С - 0,006%. Низкотемпературный феррит a -Fe по свойствам близок к чистому железу и имеет довольно низкие механические свойства, например, при 0,06% С:

Аустенит g -Fe - твердый раствор углерода в g -железе. Предельная растворимость углерода в g -железе 2,14%. Он устойчив только при высоких температурах, а с некоторым примесями (Мn, Сг и др.) при обычных (даже низких) температурах. Аустенит обладает высокой пластичностью, низкими пределами текучести и прочности. Твердость аустенита 160. 200 НВ.

Цементит Fе3С - химическое соединение железа с углеродом, содержащее 6,67% vглерода. Между атомами железа и углерода в цементите действуют металлическая и ковалентная связи. Температура плавления ~1250°С. Цементит является метастабильной фазой; область его гомогенности очень узкая и на диаграмме состояния он изображается вертикалью. Время его устойчивости уменьшается с повышением температуры: при низких температурах он существует бесконечно долго, а при температурах, превышающих 950°С, за несколько часов распадается на железо и графит. Цементит имеет точку Кюри (210°С) и обладает сравнительно высокими твердостью (800 НВ и выше) и хрупкостью. Прочность его i растяжение очень мала ( s =40 МПа).

В системе железо - цементит имеются две тонкие механические смеси фаз - эвтектическая (ледебурит) и эвтектоидная (перлит).

Ледебурит является смесью двух фаз g -Fe + Fе3С, образующихся при 1130°С в сплавах, содержащих от 2,0 до 6,67%С, и наблюдается визуально как структурная составляющая железоуглеродистых сплавов, главным образом, чугунов. Ледебурит обладает достаточно высокими прочностью (НВ>600) и хрупкостью.

Перлит (до 2,0%С) представляет собой смесь a-Fe + Fе3С (в легированных сталях -карбидов), образующуюся при 723°С и содержании углерода 0,83% в процессе распада аустенита, и наблюдается визуально как структурная составляющая железоуглеродистых сплавов. Механические свойства перлита зависят от формы и дисперсности частичек цементита (прочность пластинчатого перлита несколько выше, чем зернистого):

Диаграмма состояния Fe - Fе3С (рис. 1) является комбинацией диаграмм простых типов. На ней имеются три горизонтали трехфазных равновесий: перитектического (1496°С), эвтектического (1147°С) и эвтектоидного (727°С).

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

Линия ABCD - линия начала кристаллизации сплава (ликвидус), линия AHJECF - линия конца кристаллизации сплава (солидус).

В области диаграммы HJCE находится смесь двух фаз: жидкого раствора и аустенита, а в области CFD - жидкого раствора и цементита. В точке С при содержании 4,3%С и температуре 1130°С происходит одновременная кристаллизация аустенита и цементита и образуется их тонкая механическая смесь - ледебурит. Ледебурит присутствует во всех сплавах, содержащих от 2,0 до 6,67%С (чутуны).

В области диаграммы AGSF находится аустенит. При охлаждении сплавов аустенит распадается с выделением по линии GS феррита, а по линии SE - вторичного цементита. Линии GS и PS имеют большое практическое значение для установления режимов термической обработки сталей. Линию GS называют линией верхних критических точек, а линию PS -нижних критических точек.

В области диаграммы GSP находится смесь двух фаз - феррита и распадющегося аустенита, а в области диаграммы SEE' - смесь вторичного цементита и распадающегося аустенита.

В точке S при содержании 0,8%С и при температуре 723°С весь аустенит распадается и одновременно кристаллизуется тонкая механическая смесь феррита и цементита - перлит.

Линия PSK соответствует окончательному распаду аустенита и образованию перлита. В области ниже линии PSK никаких изменений структуры не происходит.

Структурные превращения в сплавах, находящихся в твердом состоянии, вызваны следующими причинами: изменением растворимости углерода в железе в зависимости от температуры сплава (QP и SE), полиморфизмом железа (PSK) и влиянием содержания растворенного углерода на температуру полиморфных превращений (растворение углерода в железе способствует расширению температурной области существования аустенита и сужению области феррита).

Диаграмма стабильного равновесия Fe - Fе3С, обозначенная на рис. 1 пунктиром, отображает возможность образования высокоуглеродистой фазы - графита - на всех этапах структурообразования в сплавах с повышенным содержанием углерода. Диаграмма состояния стабильной системы железо - графит отличается от метастабильной системы железо-цементит только в той части, где в фазовых равновесиях участвует высокоуглеродистая фаза (графит или цементит).

На диаграмме состояния различают две области: стали и чугуны. Условия принятого разграничения - возможность образования ледебурита (предельная растворимость углерода в аустените):

Читайте также: