Научная статья на тему 'Использование сетей Петри для моделирования технологических процессов'

Использование сетей Петри для моделирования технологических процессов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
932
120
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — В. А. Дружинин, Т. Д. Бордя

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — В. А. Дружинин, Т. Д. Бордя

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Practical recommendations of regular net construction by giving an example of real manufacturing processes is offered in the article. The tool of regular characteristic presentation in the form of the three flow charts union is considered.

Текст научной работы на тему «Использование сетей Петри для моделирования технологических процессов»

УДК 519.714.23

ИСПОЛЬЗОВАНИЕ СЕТЕЙ ПЕТРИ ДЛЯ МОДЕЛИРОВАНИЯ ТЕХНОЛОГИЧЕСКИХ ПРОЦЕССОВ

В. А. Дружинин, Т. Д. Бордя

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

Practical recommendations of regular net construction by giving an example of real manufacturing processes is offered in the article. The tool of regular characteristic presentation in the form of the three flow charts union is considered.

1 ВВЕДЕНИЕ

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

Приведем примеры фрагментов программ на разных языках программирования для ПК. В 1992 году был определен стандарт 1ЕС 1131-3 [1] для таких языков: 8ЕС - последовательных функциональных схем (рис.1а); ЬБ - релейных диаграмм (рис.1б); 8Т - структурированного текста (рис.1в); 1Ь - инструкций (рис.1г).

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

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

а)

Е5.1 Е5.2

^ Е-3 Б-

Е5.3

-а/Б-

А1.0

А1.0

г

"V j

6)

Если Е5.1&Е5.2+Е5.3 то А1.0=1 иначе А1.0=0

в)

пЕ5.1 пЕ5.2 оЫЕ5.3 =А1.0

г)

Рисунок 1 - Примеры фрагментов программ на разных языках программирования для ПК

В работе [2] был проведен сравнительный анализ различных графических моделей: автоматных систем взаимосвязанных графов (АСВГ), дилогических автоматов, граф-схем взаимодействия параллельных процессов, сетей Петри. Было показано, что наиболее предпочтительным вариантом для графического описания ДТП является использование сетей Петри [3,4], которые, сохраняя графическую наглядность, присущую и другим видам графических моделей, имеют в своей основе строгий математический аппарат, позволяющий проводить оценку корректности, описываемого сетью процесса.

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

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

Рисунок 3 - Пример фрагмента графа операций

2 ГРАФ ОПЕРАЦИЙ НА ОСНОВЕ СЕТИ ПЕТРИ

Напомним, что сетью Петри называется "четверка"

N = {Р, Т, Е, М^) , где Р = |Рг|г = 1, п | - множество позиций, Т = 1= 1, т| - множество переходов, Р п Т = 0 ,

Е/Р х Т и ТхР 0, 1} - функция инцидентности, М ^{0, 1} - начальная маркировка. В геометрической

интерпретации сети Петри позициям сопоставлены кружки, а переходам черточки (рис 2).

Рисунок 2 - Пример геометрической интерпретации сети Петри

При использовании сети Петри для описания ДТП необходимо связать отдельные операции процесса и сигналы от датчиков объекта управления с элементами сети, что в результате дает "нагруженную" сеть Петри, или, как ее называют, граф операций [2]. Более точно: граф операций - это нагруженная сеть-тройка О = (N,^1,^1) , где N - правильная сеть Петри;

-Р ^ У - помечающая функция над алфавитом У , элементам которого сопоставлены исполнительные действия; и ^2 - Т ^X - помечающая функция над алфавитом X, элементам которого сопоставлены сигналы (0,1) от дискретных датчиков, сигналы (0,1) о завершении отсчета таймеров и т.п., определяющие условия окончания операции, инициированной исполнительным действием.

Рассмотрим простейший пример отображения с помощью графа операций процесса пробивания с помощью пуансона профилированного отверстия в заготовке (рис.3)

При попадании маркера в позицию Р1 она становится активной. Пометка этой позиции У1 , Т1 означает, что при этом запускается исполнительное действие У1 (движение пуансона вниз) и начинается отсчет таймера Т1 (например 0.2 с). Для срабатывания перехода теперь помимо нахождения маркера в позиции Р1 , необходимо, чтобы закончился отсчет таймера Т1 (при этом #1=1), после чего маркер перемещается в позицию Р2 . Здесь происходит отключение движения вниз - ~ У1 , включается движение пуансона вверх - У2 и запускается таймер Т2 . И, наконец, по окончании отсчета Т2 (#2=1) маркер перемещается в позицию Р3 , где происходит отключение перемещения пуансона вверх - ~ У2 . Таким образом позиции Р1 , Р2 , Р3 - последовательно становятся активными. С равным успехом с переходами ¿1 и ¿2 могли бы быть связаны сигналы от датчиков Х1

и Х2 , срабатывающих по завершению соответствующего действия.

3 ВОПРОСЫ ПОСТРОЕНИЯ И ИСПОЛЬЗОВАНИЯ КОРРЕКТНЫХ СЕТЕЙ ПЕТРИ

Одной из важнейших задач при использовании графа операций для представления ДТП является обеспечение корректности сети Петри, представляющей из себя графический "костяк" графа операций. Однако, общие методы анализа сетей Петри, основанные на построении графа достижимых маркирований либо на решении матричных уравнений, имеют экспоненциальную сложность и затруднительны для практического использования. В работе [5] предложены принципы "конструирования" правильных сетей Петри из типовых блоков, на топологию которых наложены ограничения. Эти принципы являются развитием подходов изложенных в [6] и [7]. Общий смысл конструирования заключается в замещении выделенных вершин некоей фундаментной сети Петри типовыми блоками. Показано, что если исходная сеть и подставляемые типовые блоки являются правильными, то такие замещения сохраняют правильность получаемой сети. Здесь мы остановимся подробнее на

практическом применении типовых блоков в графах операций. К первому типу правильного блока относится автоматный блок (А-блок - рис.4)

Рисунок 4 - Пример А-блока

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

Ко второму типу правильного блока относится маркированный блок (М-блок - рис.5)

Рисунок 5 - Пример М-блока

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

Опыт работы с А и М-блоками показал, что их возможностей достаточно для отображения достаточно сложных форм поведения различных ДТП, но в ряде случаев возникают определенные проблемы. В качестве примера рассмотрим отображение с помощью графа операций функционирования робото-технологического комплекса литья под давлением (РТК ЛД). РТК ЛД включает в себя машину литья под давлением (МЛПД) и ряд манипуляторов для полной автоматизации работы комплекса: манипулятор смазки формы, манипулятор заливки расплава, манипулятор извлечения отливки.

Рисунок 6 - Пример графа операций отображения функционирования РТК ЛД

Центральным звеном здесь является МЛПД и поэтому при выходе из строя какого-либо из манипуляторов его функции берет на себя оператор для исключения простоя дорогостоящего оборудования (МЛПД) на время ремонта манипулятора. Для этого перед началом работы РТК ЛД или в момент приостановки его работы с помощью переключателей (или соответствующих опций при работе с дисплеем) задается текущая конфигурация комплекса.

В принципе описанную ситуацию можно отобразить с использованием только А и М блоков, если использовать нижеприведенную конструкцию (рис.6).

Здесь ,../п - логические функции, определяющие

множество возможных конфигураций комплекса; Р ^ , , Р„ - позиции-дублеры т.е. позиции, которые замещаются блоками, описывающими поведение для каждой конкретной конфигурации РТК ЛД.

Однако более целесообразно использовать блок общего вида, правильность которого определена заранее, что позволяет использовать такой блок - назовем его стандартным блоком (С-блоком) в качестве типового. Приведем пример использования такого блока для отображения вышеприведенной ситуации (рис.7)

XI Р8

СИ

Рисунок 7 - Пример блока, отображающего совместное или раздельное функционирование МЛПД и манипулятора заливки

Р

4

Р

6

Данный блок отображает фрагмент функционирования МЛПД (Р6 , Р7 , Р§ ) и манипулятора заливки

расплава (Р2 , Р3 , Р4). Позицию Р1 здесь можно рассматривать как сигнальную "пустую" позицию, которой не приписано никакого действия. Маркер из нее удаляется через ¿1 при Х1 =1 (совместное функционирование МЛПД и манипулятора) либо через ¿5 при Х1 =0 (автономная работа МЛПД). Правильность блока

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

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

1. Последовательная передача управления (рис. 8)

Назначение выходов: У1 - открытие пресс-формы

У1 - выталкивание отливки У5 - ввод манипулятора (подвод к отливке) Уб - схват отливки (зажим клещей) У7 - вывод манипулятора из пресс-формы

Назначение входов: Х1 - пресс-форма открыта

Х5 - манипулятор введен Н1 - закончен отсчет таймера #6 - вывод завершен

Рисунок 8 - Пример взаимодействия графов с последовательной передачей управления

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

На рисунке приведено отображение фрагмента взаимодействия между функционированием МЛПД и манипулятором съема отливки(МСО). Из примера видно, что происходит последовательная передача управления от МЛПД к МСО и обратно. Для проверки правильности отдельных графов в этом случае достаточно "оборвать" внешние связи и просто связать между собой стрелками приведенные вершины (¿1 ^ Р2 ; Х2 ^ Р3 ; ¿4 ^ Р5 ) 2. Синхронизация (рис. 9)

Рисунок 9 - Пример взаимодействия графов с синхронизацией

На приведенном примере два процесса ДТП1 и ДТП2 синхронизированы между собой путем связи ¿4 .

Позицию Р4 здесь можно рассматривать как "сигнальную", т.е. ей не приписано никакого действия. Для срабатывания перехода ¿4 здесь из ДТП2 необходимо как

наличие фишки в Рб , так и в Р4 , которая появляется там, после срабатывания перехода ¿1 из ДТП1. Для сохранения правильности общей сети в этом случае необходимо соблюдать правило "вставки" позиции, описанное в [5]. Для приведенной ситуации данное правило может быть представлено таким образом, что всякий раз, когда создаются условия для срабатывания перехода ¿1 (фишка в позиции Р1 ) из ДТП1 обязательно должны сложиться условия для срабатывания перехода ¿4 (фишка в позиции ¿б). При следовании

этому правилу мы, в конечном итоге,будем получать правильную общую сеть.

3. Синхронизация или отделение

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

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

4 ШАГОВЫЕ ПРОЦЕССЫ И ГРАФ ОПЕРАЦИЙ

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

позицию Р2 , где происходит разовое (однократное) выполнение следующих действий: отключается электромагнит У1 ; включается электромагнит ^ ; запускается

отсчет таймера ¿2 . Затем происходит непрерывный опрос логической функции, связанной с переходом ¿2 (в данном случае - окончание отсчета таймера - Н ). Когда таймер окончит отсчет (#2=1), маркер переместится в позицию Р3 и на этом реализация шага будет закончена.

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

Х5

Х7

Р1/

'(у.3 Х3&Х4)~'-^У3 , У4 , { Б5} =Х6^—»-^ ~У4

Рисунок 10 - Пример отображения следящего и триггерного включения

Здесь с первым шагом (Р^ , Г^ ) связано следящее включение Г3 = Х3 &Х4 , т.е. на протяжении всего выполнения шага (пока на модели маркер переместится в позицию Р2 ) Г3 будет включен, если Х3 &Х4=1, иначе

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

Второй шаг (Р2 , ¿2 ) является примером отображения

триггерного включения флага Е5, в случае, если во время выполнения, хотя бы на короткое время Х6 примет значение "1". В отличие от первого случая Е5 сохраняет единичное состояние и после установки Х6 в 0, т.е. ведет себя подобно триггеру. Такое "запоминание" факта появления некоторого события на практике бывает необходимо для дальнейшего изменения хода ДТП.

В самом общем случае с позицией может быть связана нагрузка, состоящая из системы уравнений, как триг-герного, так и следящего типа. Нагрузка может быть также представлена в виде упомянутых ранее языков программирования - БЕС, ЬБ, БТ.

Рисунок 11 - Использование контрольных таймеров в графе операций

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

Приведенный фрагмент графа является расширением

примера, приведенного ранее на рис.7. При Х|=1, как

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

уже указывалось ранее, машина литья под давлением функционирует совместно с манипулятором заливки расплава. После переноса дозы расплава к заливочному окну МЛПД () запускается контрольный таймер

(~4сек), который связывается с переходом ¿7 . Если по каким-либо причинам закрытие пресс-формы не завершилось (P7), что не дает возможности для срабатывания перехода( ¿2 ), то по истечении времени контрольного таймера срабатывает переход ¿7 , манипулятор заливки возвращается к печи, осуществляет слив набранной дозы и выходит в положение ожидания над печью (P9 ^ fg ^Pi0 ). Аналогично осуществляется выход

МЛПД на нештатное завершение работы(tg ^Pц ^ ... ).

5 УЧЕТ РЕЖИМНЫХ ОСОБЕННОСТЕЙ ДТП

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

Многие из таких операций могут задаваться в форме уравнений следящего включения:

Y1=X1

Y2=X2&~X11

Y3=X3&X12&~X13

состоянии. Пусть маркер в начальной маркировке находится в позиции Р1 . Тогда будут последовательно срабатывать переходы ¿2 , ¿7 ,... и маркер будет перемещаться по цепочке Р1 ^Р4 ^Рб и т.д., пока не дойдет до позиции Р7 , с которой мы свяжем систему уравнений, подобную той, что приведена на рис.12, откуда он через ^ попадет в Р1 . Таким образом, маркер будет совершать

безостановочное циклическое перемещение, пока не будет нажата одна из наладочных кнопок. Например, при нажатии кнопки, соответствующей переменной Х20, маркер переместится в позицию Р2 , т.е. начнется последовательное выполнение наладочной операции, связанной с этой кнопкой. Теперь реакция на нажатие всех остальных кнопок будет исключена до тех пор, пока маркер не переместится в позицию Р4 (по переходу Г5 ),

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

обработана в соответствии с конкретным уравнением. Отметим, что в

Пусть Х1,Х2,Х3 - наладочные кнопки, а Х11,Х12,Х13 - дискретные датчики на оборудовании. Тогда в первом уравнении У1 будет "включен", пока будет нажата кнопка Х1; во втором уравнении после запуска движения, связанного с У2 (Х2=1, Х11=0, ~Х11=1) оно может быть остановлено либо по отжатию кнопки Х2 (Х2=0), либо по достижению в результате перемещения единичного сигнала от датчиков Х11 (Х11=1 и, соответственно, ~Х11=0); и, наконец, третье уравнение, подобно второму, но только при сигнале от блокировочного датчика (Х12=1).

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

Объединяя два приведенных типа описания мы получим "наладочный" граф операций (рис. 12).

Сопоставим логическим примененным Х20 и Х21 -наладочные кнопки. Предположим, что вначале Х20 и Х21 и другие наладочные кнопки находятся в отжатом

Рисунок 12 - Наладочный граф

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

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

Ясно, что для перехода из одного режима в другой необходимо ввести переключатель на два положения. Первое положение назовем "работа" (функционирование); второе - "наладка". Одно из возможных решений отображения рассматриваемых режимов на графе приводится в [8], где оба режима предлагается отображать на едином графе, костяк которого представляет из себя расширение сети Петри - так называемую Е-сеть.

На наш взгляд, такое решение с одной стороны влечет

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

Здесь предлагается другое решение - использование дополнительного графа, который мы назовем диспетчерским (рис.13)

Рисунок 13 - Диспетчерский граф

К диспетчерскому графу относятся не только переключение режимов работы, но и все операции проверки блокировок, обработка данных, т.е. все, что связано с технологическим процессом в целом. Рассмотрим функционирование графа подробнее. Пусть в начальной маркировке маркер находится в позиции Р1 . При срабатывании перехода Г^ маркер перемещается в позицию-дублер Р5 и позицию Р2 . С позицией Р5 связывается

включение/отключение гидропривода, т.е. обеспечивается энергетическая поддержка работы всего РТК. В позиции Р2 происходит выбор: при Х7=1 выбирается

режим "работа" (¿2 ^ Р3 ^ Г3 ^ Рб ) при Х7=0 - режим "наладка" (Г4 ^ Р4 ^ Г5 ^ Р7). С позицией Р3 (соответственно Р4 ) связывается начальная инициализация и разметка графа операций "работа" ("наладка"), а с позицией Р6 ( Р7 ), так называемое, сопровождение режима -

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

Маркер из позиций Р6 и Р5 может быть удален при

изменении с Х7=1 на Х7=0. При этом маркер перемещается в позицию Р9 , с которой связана операция удаления всех маркеров из рабочего графа, и затем, через переход ¿^5 в позицию Р2 , где происходит выбор режима "наладка" (Х7=0) и всех действий, связанных с этим (Р4 ^ ¿5 ^ Р7). Аналогичные действия происходят при

удалении маркеров из позиций Р7 и Р5 .

Для большинства дискретных технологических процессов характерно наличие блокировочных датчи-

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

На приведенном диспетчерском графе, блокировочным датчиком, поставлены в соответствие логические переменные X1,...,Xn. Переходы tg и t? "нагружены"

логическими объединениями этих переменных. Таким образом, если хотя бы одна из этих логических переменных изменит свое значение на 1, то сработает переход tg (для позиций Р5 и Р6) или t? (для позиций

P5 и P7 ) и маркер окажется в позиции Pg . Здесь происходит проверка какие именно блокировки сработали, выдача диагностических сообщений о сработавших блокировках и, наконец, происходит отключение гидропривода.

В предлагаемом подходе общее описание ДТП состоит из трех графов: диспетчерского, рабочего и наладочного. В каждый момент времени активны два графа -диспетчерский рабочий или диспетчерский наладочный.

6 ЗАКЛЮЧЕНИЕ

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

1. Получить наглядное отображение дискретного технологического процесса в виде графа операций.

2. Обеспечить корректность (правильность) сети, лежащей в основе этого графа операций.

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

ПЕРЕЧЕНЬ ССЫЛОК

1. Иванова А.Н., Золотарева C.B. QNX-контроллеры - шаг в XXI век. //Приборы.Системы управления.1998. N 1.

2. Юдицкий С.А., Магергут В.З. Логическое управление дискретными процессами. Модели, анализ, синтез. М: Машиностроение, 1987, - 176с.: с ил.

3. Питерсон Д. Теория сетей Петри и моделирование систем. М.: Мир. 1979. - 274с.

4. Котов В.Е. Сети Петри. М.:Наука 1984. 160с.

5. Дружинин В.А., Юдицкий С.А. Конструирование хорошо

6.

7.

сформированных сетей Петри из типовых блоков.// АиТ. 1992,N 11. с.115-121.

Таль A.A., Юдицкий С,А, Иерархия и параллелизм в сетях Петри //АиТ. 1982. N7. с.113-122. N9 с.82-88 Олейниченко Р.Л, О построении правильных сетей Петри // АиТ. 1982.N12. c.130-139.

8. Березин И.Т. Моделирование режимных особенностей в задачах логического управления дискретными производственными процессами. //Приборы и системы управления. 1991, 7, с.7-10.

Надшшла 05.04.99

УДК 629.113.001.2

ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ В КАРДИОБИОМЕХАНИКЕ

В. И. Дубровин, В. И. Кривенко, Л. Ю. Дейнега, Р. С. Сикорский, И. В. Чекулаева

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

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

The realize mathematics model left stomach heart with using classes of C++ language are consider. The program, which allow model work of left stomach heart in physiologic and patophysio-logic conditions, are describe.

ВВЕДЕНИЕ

Моделирование деятельности человеческих органов с помощью математического аппарата позволяет изучить влияние измения какого-либо параметра на работу всего органа или рассчитать значение параметра, который невозможно измерить непосредственно. Использование для моделирования информационных технологий дает возможность идентифицировать в диагностических целях различные функциональные параметры органов и систем, т.е. получать прикладные результаты [1,2]. Прикладные результаты могут быть получены и в кардиобиомеханике, в частности, при программной реализации нелинейной математической модели левого желудочка (ЛЖ) сердца.

1 ПОСТАНОВКА ЗАДАЧИ

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

Изучение биомеханики ЛЖ на математических моделях позволяет унифицировать действие этих факторов,

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

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

2 МАТЕМАТИЧЕСКАЯ МОДЕЛЬ ЛЕВОГО ЖЕЛУДОЧКА СЕРДЦА

Математическая модель ЛЖ представляет собой задачу Коши для системы трех обыкновенных нелинейных дифференциальных уравнений: деформирования желудочка, истечения крови из него в фазу изгнания, изменения давления в аорте [3,4]:

q' = ЕО, п ^' + Ф(v, П П ,

IV + ^-1-

/ S,

1 - J

J( 1 + v ) 1

v2 - (J - ST\v'

pk jv2(i + v)

(i) (2)

1

KP )p + - pv) = -V -

(3)

где:

ру - венозное давление, К(р) - модуль объемного расширения аортальной системы, Я ^ - периферическое сопротивление, V = Vov' - объемная скорость крови, поступающей в аорту, ^ - объем полости левого желудочка до деформации, S - площадь аортального клапана,

i Надоели баннеры? Вы всегда можете отключить рекламу.