Е-mail: [email protected]
344090, Ростов-на-Дону, ул. Мельчакова, 10
Тел.: +7(8632)696991
Aleksunin Eugene Sergeevich
Federal State-Owned Educational Establishment of Higher Vocational Education «Southern Federal University»
Е-mail: [email protected]
10, Melchikova street, Rostov-on-Don, 344090
Phone: +7(8632)696991
УДК 681.78
В.В.Коробкин, Е.НЧернов
ОДИН ИЗ ПОДХОДОВ К РАСПРЕДЕЛЕНИЮ ЗАДАЧ ПО
РЕСУРСАМ УПРАВЛЯЮЩЕЙ СИСТЕМЫ МЕХАТРОННОГО
КОМПЛЕКСА
Предлагаемый метод распределения задач в компьютерной сети позволяет сократить накладные расходы на решение программы оптимизации и повысить надежность работы системы в условиях отказа (деградации) ресурсов.
Компьютерная сеть; метод коллективного принятия решений; перераспределение задач; итерационная оптимизация.
V.V.Korobkin, E.LChernov
ONE OF APPROACHES TO DISTRIBUTION OF PROBLEMS ON RESOURCES CONTROL SYSTEM OF MECHATRONICS
COMPLEX
The offered method of distribution of problems in a computer network allows to reduce an overhead charge for the decision of the program of optimisation and to raise reliability of work of system in the conditions of refusal (degradation) of resources.
Computer network; method of collective decision-making; redistribution ofprob-lems; iterative optimisation.
Система управления сложного мехатронного комплекса представляет многоуровневую иерархию средств промышленной автоматизации, основу которых составляют промышленные компьютеры, промышленные контроллеры, датчики, исполнительные механизмы, пульты, мониторы, сенсорные панели, принтеры и др. Обмен информацией между ресурсами осуществляется с использованием промышленных шин типа Modbus, CAN, Profibus и др. Использование избыточной (резервной) аппаратуры для обеспечения надежности и безопасности функционирования мехатронного комплекса, большого набора задач и функций (управление, диагностика, мониторинг, прогноз, моделирование, регистрация событий, документооборот) порождает проблему динамического распределения задач по ресурсам системы управления (СУ).
В централизованных иерархических сетях задача распределения решается, как правило, с помощью специально выделенного компьютера (host -машины). Недостаток такого подхода - низкая живучесть системы при выходе из строя центрального компьютера.
Возникает актуальная проблема разработки методов распределения потока задач в промышленных сетях, с помощью которых можно было бы оптимизировать это распределение с точки зрения некоторого критерия, а также обеспечить надежность работы системы в условиях отказа (деградации) ресурсов [1].
Данная задача разбивается на два этапа:
- при начальном пуске системы, при смене технологической операции с верхних уровней УС поступает поток задач, которые необходимо загрузить в компьютеры УС. Если произошел отказ одного или нескольких активных модулей, УС не должна останавливать процесс управления, а производит определение отказавших модулей, выключение их из процесса и реконфигурацию системы. Задачи, которые должны были выполняться в отказавших модулях, оптимально распределяются по рабочим ресурсам системы;
- перераспределение задач, которые произвольным (случайным) образом распределены по компьютерам сети.
Проблему распределения задач в компьютерной сети формально можно представить следующим образом.
Часть 1. Для выполнения совокупности несвязанных между собой задач имеется компьютерная сеть (рис. 1), содержащая п контроллеров Сг(г = 1...п) разной производительности Уг, причем последовательность и время поступления задач определяется заранее известной циклограммой выполнения глобальной задачи, например задачи управления технологическим производством (процессом), моделирования в реальном времени системы управления подвижными объектами и т.п. и/или по команде извне (от компьютера более высокого уровня иерархии, оператора системы и др.) [2, 3]. Аналогично загрузка ресурсов сети производится в случае выхода из строя любого контроллера. Задачи, которые должны были решаться в нем, распределяются по «живой» системе. Это возможно в том случае, если копии этих задач хранятся в памяти каждого компьютера.
Шина задач
Рис. 1. Структура многоконтроллерной системы (компьютерной сети)
Поток задач Z в текущий момент времени содержит т задач єZ (і=1...т). Задача 2і имеет вычислительную сложность Ні. Время выполнения контроллером Сг(г = 1...п) задачи (і= 1...т) оценивается следующим выражением :
Тп = И(Уп Ні),
где Тгі - время выполнения г-м компьютером і-й задачи; И - некоторая функция.
При поступлении на вход системы нового потока задач Z проводится процедура отыскания компьютера Сг с минимальной загрузкой (Тгтіп) и очередная
задача Zi из множества Z поступает в компьютер Сг и время Trmini решения задачи суммируется с Trmin и получаем новое значение Tr.
Задача zt исключается из подмножества Z, получаем новое подмножество
Z ■ = Z \z■
m-i m i
Далее опять отыскивается компьютер Cr с минимальным временем решения задач своего подмножества (Trmin) и очередная задача zlk+1 є Zk+1 поступает в этот компьютер. Здесь k=i - шаг распределения задач. Процедура распределения повторяется до тех пор, пока все задачи потока Z не получат место в соответствующих контроллерах.
Это напоминает игру «тетрис», когда падающую фигуру укладывают таким образом, чтобы не было пустот и произошло выравнивание на дне колодца.
Часть2. Перераспределение задач по компьютерам.
Пусть в данной системе на выполнении находится группа несвязанных между собой задач Z, содержащая в текущий момент времени m задач zg є Z(g = l, m), которые произвольным (случайным) образом распределены по компьютерам.
В качестве критерия оптимизации распределения задач из множества Z по компьютерам Tr(r = l, n) целесообразно принять критерий минимума времени Т выполнения всех задач из множества Z. В свою очередь, значение времени Тз определяется следующим выражением:
T-з = max{T1,T2,..,Tn}, (І)
где Tr (r = l,n) - время выполнения компьютером Сг, подмножества Zg с Z возложенных на него задач из множества Z. Это время определяется как
Tr = Tra + Trb +■■■ + Trc, где а,Ъ, ...с - номера задач из множества Z, включенных в подмножества Zj.
Необходимо найти такое разбиение множества задач Z на подмножества Zj (j = І, n) (т.е. распределение задач потока Z, но компьютерам Q(j = l,n), чтобы значение времени Т (І) выполнения всех задач множества Z было минимальным.
Метод полного перебора предполагает С = (2n - 1)m вариантов [І], где n -число компьютеров в системе, a m - число задач в потоке.
Понятно, что осуществить такой перебор при изменении множества задач в потоке, особенно в реальном времени, практически невозможно.
Число анализируемых вариантов можно резко сократить (С= 100*m2 (n-1)), если применить для решения данной задачи метод коллективного планирования действий, предложенный в [І]. При этом существенное сокращение вариантов перераспределения задач по ресурсам системы может быть достигнуто в отличие от методики [І], если не перебирать в каждом итерационном шаге все задачи множества Z, а выбрать пару наиболее и наименее загруженных компьютеров (Tkimax, Tcjmin), где (i = 1, n), (j = 1, n), затем из подмножества задач Zi компьютера Пі выделяется некоторая задача zн є Zік и включается в подмножество Zj'. В результате получается новое подмножество
v к+1 ^7 к , _
Zj = Zj ^Zh.,
где К=0 - начальный цикл итерации, а К+1 - следующий.
При этом подмножество задач в компьютере Сі уменьшается на эту задачу
к+1 к к+1
и соответственно уменьшится І, .= Timax - TiH , а подмножество задач в компь-
ютере nj увеличится, следовательно Tj к+1.= Tjmn + TjH к+1. Другими словами, одна из задач наиболее нагруженного компьютера перемещается в наименее загруженный компьютер. Назовем компьютер Q инициатором перераспределения и этим
номером будем индексировать переменные. Далее для К+1 цикла найдем
k+1 k+1 k+1 k+1
T3 = max (T1 , T2 , ..., Tn ).
Затем определим
лтк+і = тк+і_ тк.
Если ЛТ3к+1 оказывается меньше нуля, то новое распределение задач лучше, чем предыдущее, следовательно задача 2н включается в подмножество задач 2/+1.
Если ЛТк+1 = 0, ситуация не улучшилась и это может быть по двум причинам:
а) в системе существует по меньшей мере еще один компьютер С, (■, = 1, п) и (у>Ф] # і), загруженный так же, как и і, т.е. время выполнения задач в котором Т,к = Тсітах. Следовательно, перераспределение задач прошло успешно и задача 2н
2’ К+1 Т X 'Т' к+1
. И хотя время решения задач 13 в системе не изменилось, уменьшилась нагрузка на компьютер Сі;
б) загрузка компьютера С'] на К+1 шаге будет равна Сі на К-м шаге (Т}К+1 = Тітахк ), следовательно, новое распределение задач не лучше предыдущего и 7н не
К+1
включается в подмножество задач 2^ .
Если ЛТі +1 больше нуля, то это также означает, что перераспределение задач не улучшает ситуацию, и поэтому подмножества 2^' и 2[' не изменяются. Далее компьютер ]к анализирует следующую задачу из подмножества 2[' и включает в свое множество задач 2ту, которая даст отрицательное значение величины ЛТк+\
В результате получаем новое перераспределение задач, т.е. новые подмножества, причем время Тз всех задач системы будет меньше, чем при предыдущем распределении. В том случае, если перебор всех задач из множества 2іК не приведет к улучшению ситуации, т.е. ЛТк+1 > 0, это говорит о том, что минимально нагруженный }К- й компьютер (Тітш) по быстродействию уступает ік -му . Поэтому на этом шаге компьютер П игнорируется и опять отыскивается минимально загруженный компьютер П (ТМп), где = 1, п-2). Далее процедура повторяется: компьютер П/ анализирует задачи из подмножества 21к и включает в свое множество задач 2/К ту, которая даст отрицательное значение величины ЛТ1 +1. В результате получаем новое распределение задач, представляемое новыми подмножествами 2к+1 ,22к+1 ,...,2к+1 , которое дает меньшее по сравнению с предыдущим общее время Тз решения всех задач множества 2. Следует заметить, что подмножества, которые не участвовали в перераспределении, не изменяются.
Затем ищется новая пара компьютеров (і, ]) в результате получаем новое (к+2)-е перераспределение.
В каждом итерационном цикле один компьютер (самый загруженный) последовательно может анализировать все задачи, входящие в подмножество 21К.
Аналогичным образом процедура итерационной оптимизации повторяется до тех пор, пока в очередном цикле не окажется, что никакое перераспределение
задач не приводит к уменьшению времени решения Тз, т.е.
к+1 к Тз = Тз ,
где Т3к+1 - время решения всех задач, получаемое после (к+1)-го итерационного цикла, Т3к - время решения всех задач, получаемое после к-го итерационного цикла.
Максимальное число задач в подмножестве 2іК - т. Это может быть тогда, когда один компьютер загружен всеми задачами, а остальные имеют нулевую загрузку.
Максимальное количество итерационных циклов С = т- т/п.
Следовательно, предложенный метод по трудоемкости лучше предыдущих.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Каляев И.А., ГайдуК А.Р., Капустян С.Г. Распределенные систем планирования действий коллектива роботов. - М.: Янус-К, 2002. - С.292.
2. Информационная технология: Рекомендации Р50-34.119-90. Архитектура локальных вычислительных сетей в системах промышленной автоматизации. -М.: Госстандарт, 1991
3. Кругляк К.В. Промышленные сети: цели и средства. // Современные технологии автоматизации, 2002. № 4.
Коробкин Владимир Владимирович
Технологический институт федерального государственного образовательного уч -реждения высшего профессионального образования «Южный федеральный университет» в г.Таганроге E-mail: [email protected] 347928, Таганрог, ул. Чехова, 2 Тел.: +7(8634)311865
Чернов Евгений Иванович
Технологический институт федерального государственного образовательного уч -реждения высшего профессионального образования «Южный федеральный университет» в г.Таганроге Е-mail: [email protected].
Korobkin Vladimir Vladimirovich
Taganrog Institute of Technological - Federal State-Owned Educational Establishment of Higher Vocational Education «Southern Federal University»
E-mail: [email protected]
2, Chehova street, Taganrog, 347928, Russia
Phone: +7(8634)371723
Chernov Eugeniy Ivanovich
Taganrog Institute of Technological - Federal State-Owned Educational Establishment of Higher Vocational Education «Southern Federal University»
E-mail :[email protected]
УДК 658.51.011.5.001.2(075.5)
Т.А. Пьявченко, В.М. Карась АЛГОРИТМЫ ЦИФРОВОГО УПРАВЛЕНИЯ ПРОЦЕССОМ ГОРЕНИЯ В ТОПКЕ ПАРОГЕНЕРАТОРА
В работе рассматриваются особенности цифровой реализации алгоритмов управления процессом горения в топке парогенератора. По результатам работы сделано заключение о компенсации нагрузки парогенератора благодаря использованию корректирующего регулятора.
Алгоритмы управления; погрешности вычислений; шаг дискретности; компенсирующий регулятор.
Т.А. Pyavchenko, V.M. Karas ALGORITHMS OF DIGITAL CONTROL COMBUSTION ACTION IN A STEAM GENERATOR FIREBOX
In work are considered particularities to digital realization of algorithms of control combustion action in a steam generator firebox. As a result of work is made a conclusion about compensation of the load a steam generator, due to use correcting regulator.