собой рассмотренные стратегии отладки ПС по приведённым характеристикам (см. табл. 2-4).
В статье предложена нестационарная модель оценивания роста надёжности программ на этапе отладки. По сравнению с разработанными ранее экспоненциальными вероятностными моделями надёжности снимается предположение о виде зависимости интенсивности обнаружения ошибок от текущего номера обнаруженной ошибки.
СПИСОК Л
1. Handbook of Software Reliability Engineering. McGraw Hill, 1996.
2. Уткин Л.В., Шубинский И.Б. Нетрадиционные методы оценки надежности информационных систем. СПб.: Любавич, 2000.
3. Половко А.М., Гуров С.В. Основы теории надежности. СПб.: БХВ-Петербург, 2006.
4. Смагин В.А. Техническая синергетика. Вероятностные модели сложных систем. СПб., 2004.
5. Тырва А.В., Хомоненко А.Д. Метод планирования тестирования сложных программных комплексов на этапах проектирования и разработки / Научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление. 2009. № 4 (82). С. 125-131.
6. Huang C.-Y., Huang W.-C. Software Reliability Analysis and Measurement Using Finite and Infinite Server
Предложенная модель позволяет рассчитать для различных стратегий отладки:
численные значения среднего числа обнаруженных ошибок и среднего числа неисправленных ошибок;
функцию распределения времени обнаружения и устранения заданного числа ошибок;
время отладки по заданной вероятности отсутствия ошибок или по допустимому числу ошибок.
Queuing Models / IEEE Transactions on Reliability. 2008. Vol. 57. № 1. P. 192-203.
7. Бубнов В.П., Сафонов В.И. Разработка динамических моделей нестационарных систем обслуживания. СПб.: Лань, 1999.
8. El-Emam K., Melo W., Machado J.C. The prediction of faulty classes using object-oriented design metrics / Journal of Systems and Software. 2001. Vol. 56. № 1. P 63-75.
9. Chidamber S.R., Kemerer C.F. A metrics suite for object oriented design / IEEE Transactions on Software Engineering. 1994. Vol. 20. Iss. 6. P. 476-493.
10. Basili V.R., Briand L.C., Melo W.L. A validation of object-oriented design metrics as quality indicators / IEEE Transactions on Software Engineering. 1996. Vol. 22. Iss. 10. P. 451-761.
УДК 662.642:621.926.7
К.В. Спорягин
ПРОГРАММНЫЙ КОМПЛЕКС НАСТРОЙКИ ТИПОВЫХ РЕГУЛЯТОРОВ ДЛЯ МНОГОСВЯЗНЫХ ОБЪЕКТОВ УПРАВЛЕНИЯ ПРОИЗВОЛЬНОЙ РАЗМЕРНОСТИ
В сфере промышленной автоматизации наибольшее распространение получили так называемые типовые законы регулирования [1, 2], однако существующие методы расчёта их параметров мало применяются на практике [3]. Одна из основных причин того, что в большинстве случаев регуляторы настраиваются «методом тыка», состоит в недостатке инженерных методик и программ, охватывающих многосвязные объекты управления и учитывающих влияние контуров регулирования друг на друга. Данная статья
посвящена описанию структуры программного комплекса (ПК) настройки типовых регуляторов для многосвязных объектов управления произвольной размерности - «MIMO Master» Рассматриваемый ПК призван стать простым средством настройки параметров и имитационного моделирования многоконтурных систем управления технологическими процессами и предназначен для инженеров-разработчиков АСУТП и наладчиков промышленных систем.
Постановка задачи. Рассмотрим задачу настройки многомерного регулятора, предназначенного для стабилизации многосвязного объекта с l выходными переменными и m < l управляющими воздействиями. Полагая, что каждое управляющее воздействие оказывает влияние на каждую выходную переменную, будем рассматривать линейную динамическую модель объекта управления:
т ___
yi = Thij(p)uj+ni, i = 1,l, j = 1,l. С1) j=i
Смысл задачи управления состоит в поддержании выходных переменных y(t) на заданных
*
уровнях у. в условиях неконтролируемых возмущающих воздействий n(t). Будем также считать, что каждое управляющее воздействие формируется с учётом отклонений от задания каждой из
выходных переменных по правилу: i
uj = у* - у.), i = 1l, j = 1l. (2) i=1
Тогда уравнения системы «объект - регулятор», записанные в векторно-матричной форме, приобретут вид:
У = H(p) u + n, u = W(p) (y* -y), (3)
что соответствует блок-схеме, приведённой на рис. 1.
Далее конкретизируем задачу, приняв, что динамика по каналам передачи управляющих воздействий описывается наиболее распространённой в промышленной автоматике моделью с запаздыванием:
H(p) = [hj(p)], h(p) = hj(p)e-pTj , i = U, j = TTl, (4)
где h.. и Tj. - соответственно устойчивые передаточные функции и запаздывания, определяющие динамическую модель управляемого процесса.
Будем полагать, что для управления по отклонению используются ПИД-регуляторы:
W(p) = [w w j(p) = % + b/p + + c p, i = T,l, j = 1,m,
(5)
Задача состоит в настройке их параметров а, Ь , с . Если интересует применение ПИ-регуляторов,
у
о
W(p) и Н(р) и
) '
i\
то настройке подлежат параметры a., и b ., а параметры c полагаются равными нулю. Заметим, что передаточная матрица многомерного типового регулятора может быть представлена в виде:
W( p) = A + B/p + Cp, (6)
где A = [a.. ], B = [b.. ], C = [c .. ], - матрицы фигурирующих в (5) параметров П, И и Д-составляющих, причем для ПИ-регулятора С = 0.
Программный комплекс «MIMO Master». Решить поставленную задачу, т. е. найти матрицы A, B, C многомерного регулятора (6), позволяет ПК «MIMO Master». Рассматриваемый ПК является логическим продолжением работы, описанной в [4]. В качестве среды разработки ПК используется стандартное средство анализа и моделирования динамических систем MATLAB & Simulink. Такой выбор помогает качественно и быстро решать множество задач с использованием встроенных функциональных возможностей среды разработки (например, задачи идентификации объекта, реализация поисковых процедур и т. п.). Разработанный интерфейс ПК позволяет пользователю ввести параметры объекта управления (4) или определить их по массивам значений разгонных характеристик, выбрать один или несколько употребительных показателей качества управления, выполнить все необходимые расчёты и процедуры численной оптимизации, увидеть на графиках переходные процессы в замкнутой системе управления, не имея дело непосредственно с универсальной средой проектирования системы.
Основные функции ПК. Рассмотрим функциональные возможности ПК и последовательность действий при работе с ПК на примере расчёта регулятора для управления процессом отделения метанола от воды в дистилляционной колонне. Этот процесс был проанализирован в [1], где для его описания в отклонениях от расчётного режима использовалась динамическая модель с передаточной матрицей:
Н(р) =
12,8е~р -18,9е~3р 16,7/? + 1 21,0/7 + 1
6,6е~1р -19,4е~3р
(8)
Рис. 1. Блок-схема системы управления
10,9/7 + 1 14,4/7 + 1
Выходными переменными, которые необходимо поддерживать на заданном уровне, являются молярные концентрации метанола в дистилляте и остатке. Управляющие воздействия - верхний рециркуляционный поток и поток пара на входе в по-
догреватель. Максимальные приведённые к выходу возмущения составляют #imax = 0,6 и N2max = 0,8. Применительно к данному объекту в [1] приведены экспериментально найденные настройки двух автономных ПИ-регуляторов:
W( p) = diag{wn(p), ^22^)}, (8)
где w11(p) = 0,2 + 0,045/p, w22(p) = -0,04 - 0,015/p. Эти настройки мы в дальнейшем будем использовать для сравнения с расчётными настройками, полученными другими методами.
Функции ПК «MIMO Master»:
1. Формирование динамической модели объекта управления. Работа начинается с создания нового или загрузки существующего проекта. Проект содержит всю информацию об объекте, настройках пользователя, результатах расчётов. Динамика многосвязного объекта управления задаётся элементами передаточной матрицы (4). Передаточная матрица может иметь произвольную размерность и быть квадратной (m=l) или прямоугольной (m<l). Таким образом, ПК позволяет рассчитывать типовые регуляторы для объектов с любым числом управляющих и выходных переменных. Каждый элемент должен представлять собой устойчивую дробно-рациональную передаточную функцию произвольного порядка с запаздыванием. Ввод параметров объекта осу-
ществляется поканально в окне ввода параметров объекта, изображённом на рис. 2.
Если введённая пользователем передаточная функция будет выше первого порядка, то по окончании ввода автоматически запускается подпрограмма, аппроксимирующая введённую пользователем функцию в виде инерционного звена первого порядка с запаздыванием. Для аппроксимации используется стандартная функция MATLAB pem [5]. Результаты аппроксимации: параметры аппроксимированного и исходного объекта, графики реакций на ступенчатое воздействие можно посмотреть в окне «Результаты аппроксимации», которое вызывается из меню «Инструменты». Эти данные используются для расчёта многомерного регулятора аналитическим способом, а также для формирования начальных приближений при использовании поисковых процедур.
Если пользователь не знает заранее параметры своего объекта, то он может идентифицировать их по разгонным характеристикам. Для этого с помощью меню «Инструменты» —> «Идентификация объекта» пользователь вызывает окно идентификации, в котором ему предлагается ввести имя файла Excel с массивами разгонных характеристик. Файл должен иметь заданную структуру: первый столбец - массив времени,
Окно ввода параметров канала Рис. 2. Основное окно ПК и окна ввода передаточной матрицы объекта
второй - реакция системы на единичное ступенчатое воздействие. Программа автоматически прочитает данные из файла и идентифицирует объект в виде инерционного звена первого порядка с запаздыванием.
2. Формирование исходных данных для расчётов. Первое, с чем должен определиться пользователь, - это тип регулятора, а именно: ПИ- или ПИД-регулятор - в соответствии с этим выбором формируются элементы передаточной матрицы многомерного регулятора (6).
При формировании исходных данных для расчёта пользователь выбирает также один из общепринятых показателей качества управления: интегральный квадратичный критерий - ИКК; интегральный квадратичный критерий при ограничениях на показатели перерегулирования и степень затухания колебаний (ограничения на показатели перерегулирования и затухания колебаний приняты соответственно на уровне 15 % и 90 %) - ИККогр; интегральный модульный кри-
терий - ИМК; длительность переходного процесса - Быстродействие. Настраиваются также такие параметры как время моделирования, время контроля системы на устойчивость, параметры поисковых процедур. Окно ввода параметров расчёта представлено на рис. 3.
Для большинства объектов промышленной автоматизации характерны явления инерционности и запаздывания. Преодоление значительной инерционности при компенсации действующих на объект возмущений требует сильных управляющих воздействий, которые могут выходить за допустимые границы. В рассматриваемом ПК (в отличие от большинства существующих методик расчёта параметров законов регулирования с обратной связью), учитываются допуски на величину управляющих воздействий. Они входят в число исходных данных для расчётов.
Результаты расчёта параметров регуляторов могут зависеть от типа возмущений. В ПК предусмотрены два типа возмущающих воздействий:
Рис. 3. Окно ввода параметров расчёта
детерминированные ступенчатые и случайные. Для ступенчатых возмущений пользователем указывается их максимальная (по модулю) величина, а для случайных - среднеквадратическое отклонение, параметры передаточной функции формирующего фильтра или время спада корреляции. В многомерном объекте качество управления зависит также и от комбинации знаков ступенчатых возмущений. Всего для вектора ступенчатых возмущений N = N N ..., М]г возможно 21 сочетаний знаков, однако т. к. для всех инженерных показателей качества У:
т=У-Ю,
то практически целесообразно проанализировать 21-1 вариантов. В программном комплексе предусмотрен режим формирования матрицы всех практически целесообразных комбинаций знаков возмущений. В этом режиме пользователь вводит только амплитуду возмущений по каждому каналу (вектор Щ, а матрица возмущений формируется автоматически. Сформированная матрица может быть отредактирована пользователем, например, будет убрана технологически невозможная комбинация возмущений. Настройки регуляторов в этом случае определяются по принципу минимаксного подхода, т. е. ищутся настройки, которые дают лучшее значение критерия при самых неблагоприятных знаках возмущений. На рис. 4 представлено интерфейсное окно ввода ступенчатых возмущений и матрица комбинаций возмущений для рассматриваемого объекта.
Говоря о случайных возмущениях, необходимо отметить, что в многомерном объекте возможна взаимная зависимость случайных возмущений, действующих на разные выходы системы, поэтому в дальнейшем предусматривается дополнительно вводить данные о коэффициентах парной корреляции. Получив указанную информацию, ПК автоматически будет рассчитывать параметры многомерного динамического фильтра, формирующего при моделировании случайные сигналы с требуемыми вероятностными характеристиками.
3. Расчёт параметров многомерных типовых регуляторов. При расчёте настроек многомерного регулятора пользователю доступны вычислительные процедуры двух типов. К первому типу относятся пять способов расчёта, объединённых общей идеей так называемого «комбинированного метода». Суть данного подхода состоит в том, что вектор управляющих воздействий формируется в каждый момент времени в виде линейной комбинации двух составляющих, каждая из которых представляет собой выход «порождающего» (т. е. соответствующего в той или иной мере упрощённой структуре объекта) многомерного ПИ- или ПИД-регулятора. Настройки первого регулятора соответствуют объекту, полученному из исходного путём пренебрежения перекрестными связями. Второй регулятор настраивается на управление объектом, совпадающим с исходным в статике, но отличающимся поведением в динамике за счёт замены различных по каналам управления динамических операторов единым динамическим
Рис. 4. Окно ввода ступенчатых возмущений
звеном с определённым образом сформированными параметрами. В одном из вариантов все настройки каждого из составляющих регуляторов формируются аналитически на основе метода динамической компенсации. При этом весовой коэффициент, определяющий вклад каждого из вспомогательных регуляторов в комбинированную структуру, определяется с использованием так называемой «матрицы Бристоля», характеризующей относительную интенсивность перекрёстных связей в объекте управления. В другом варианте аналитические способы настройки вспомогательных многомерных регуляторов сочетаются с поисковым способом настройки весового коэффициента, который находится в процессе многократной имитации замкнутой системы управления в среде Simulink из условия минимизации той или иной целевой функции. В остальных вариантах параметры вспомогательных многомерных регуляторов также определяются численно в результате поисковой оптимизации на имитационной модели. Подобная комбинация позволяет сочетать быстроту реакции регулятора первого типа, автономного по каналам управления, с возможностью учёта перекрёстных связей более «осторожным» регулятором второго типа. Простота настройки рассмотренных алгоритмов управления определяется малым числом оптимизируемых параметров, причём для их расчёта не требуются сложные аналитические методы и поисковые процедуры - достаточно схем простого перебора в рамках компьютерного имитационного моделирования. Важным достоинством реализованных в ПК методов настройки является пользовательская возможность выбора одного из ряда наиболее употребительных критериев качества управления, включая важные требования обеспечения необходимого запаса устойчивости системы за счёт соблюдения ограничений на колебательность выходных переменных, а также -ограничений на управляющие воздействия. Подробное изложение сущности комбинированного метода расчёта параметров многомерных ПИ- и ПИД-регуляторов содержится в [6, 7].
Ко второму типу способов настройки регуляторов относятся две вычислительных процедуры, где все параметры многомерных ПИ- или ПИД-законов управления определяются путём поисковой оптимизации по одному из выбранных пользователем инженерных критериев. К поисковым методам относятся: General Pattern Search (GPS),
представляющий собой разновидность симплексного метода, и генетический алгоритм (GA). Для первого метода используется стандартная функция MATLAB patternsearch, для второго - стандартная функция ga. Подробное описание этих поисковых процедур дано в [5, 8, 9]. Разумеется, в силу высокой размерности задач поисковой оптимизации алгоритмы настройки, относящиеся к данной группе, обладают существенно меньшим быстродействием, чем варианты комбинированного метода, причём длительность расчётов быстро возрастает с ростом размерности объекта управления. Вместе с тем, в принципиальном плане (при использовании значительных ресурсов времени на поиск настроек) они могут давать лучшие результаты.
4. Имитационное моделирование. ПК предусматривает функции имитационного моделирования [10]. Выполнив процедуры по пунктам 1-3, пользователь имеет возможность изменить характеристики возмущающих воздействий, объекта и регулятора и с помощью развитых средств мониторинга проверить работу системы в самых разных условиях. Другое применение функции имитационного моделирования - анализ настроек регуляторов, полученных какими-либо другими методами, например, найденных экспериментальным путём.
5. Архивация результатов. У пользователя есть возможность сохранить, полученные результаты в файл Excel. Архивируются такие данные как дата и время расчёта, параметры объекта, метод расчёта, настройки регулятора, значения критериев качества управления, тип и величина возмущений.
Анализ результатов работы ПК. В таблице представлены результаты расчётов для объекта (7) всеми методами, реализованными в ПК «MIMO Master». Выполнен расчёт многомерного ПИ-регулятора, показатель качества - интегральный квадратичный критерий. Методы 1-5 реализуют идею комбинированного подхода в различных модификациях, рассмотренных выше. При этом методы 3 и 4 являются предельными случаями метода 5 (весовой коэффициент r = 0 или r = 1).
Сравнивая данные таблицы, можно убедиться в преимуществе методов ПК над экспериментальным регулятором как по ИКК, так и по длительности переходных процессов. Характерным исключением является метод 3. Он показывает влияние перекрёстных связей в объекте управле-
Результаты расчетов разными методами
Метод Минимаксные возмущения ИКК Время регулирования, с А В Время расчета, с
1. Комбинированный (г по Бристолю) [0,6 0,8] 0,057 49 "0,70 -0,05" 0,02 -0,04 "о, 044 -0,005" 0,002 -0,012 0,03
2. Комбинированный (г перебором) [0,6 0,8] 0,047 25 "0,43 -0,12" 0,04 -0,14 "0,029 -0,011" 0,004 -0,012 23
3. Автономный (оптимальный по каналам) (г=0) [0,6 0,8] 0,099 >100 "0,99 0 . 0 -°'19. "0,041 0 0 -0,009 18
4. Осторожный оптимальный (Г=1) [0,6 -0,8] 0,053 45 "0,43 -0,42" 0,15 -0,28_ "0,028 -0,027" 0,009 -0,018 43
5. Комбинированный оптимальный [0,6 0,8] 0,045 22 "0,52 -0,34" 0,12 -0,21 _ "0,030 -0,023" 0,008 -0,017 97
6. GPS [0,6 -0,8] 0,043 53 "0,45 -0,15" 0,04 -0,16 "0,052 -0,013" 0,019 -0,012 116
7. GA [0,6 0,8] 0,048 37 "0,44 -0,1б" 0,01 -0,16 "0,044 -0,005" 0,019 -0,012 559
8. Экспериментальный регулятор [0,6 0,8] 0,093 74 "0,2 0 0 -0,04 "0,045 0 0 -0,015 -
ния на качество переходных процессов в системе с регулятором, настроенным оптимально для управления своим каналом, без учёта перекрёстных связей в объекте. Также видно, что использование поисковых процедур 6 и 7 не привело к значительному улучшению качества управления. Вместе с тем, они затрачивают значительное время для расчёта настроек. К тому же, это время быстро возрастает с ростом размерности объекта, в то время как для комбинированных методов оно остаётся практически неизменным.
После расчёта пользователь имеет возможность изучить вид переходных процессов по графикам. На рис. 5 показано окно просмотра графиков. Переходные процессы для регулятора, найденного экспериментальным путём (2), обозначены серой линией, для регулятора, рассчитанного методом 2, - черной линией.
Перспективы развития программного комплекса. В настоящий момент программный комплекс работает в среде МА^АВ & Simulink,
а также требует наличия следующих опций MATLAB: System Identification Toolbox, Genetic Algorithm and Direct Search Toolbox, Control System Toolbox.
MathWorks предоставляет опцию MATLAB Compiler, которая позволяет компилировать исполняемый файл из исходных m-файлов, написанных на MATLAB. Предполагается в будущем сделать независимое приложение, которым можно будет пользоваться, не приобретая ППП MATLAB.
Разработанный ПК является мощным инструментом для исследования и настройки регуляторов многосвязных управляемых технологических процессов произвольной размерности. Алгоритмы, положенные в основу ПК, позволяют рассчитывать настройки регулятора не только с учётом ограничений на выходные переменные (перерегулирование и степень затухания колебаний), но и на величину управляющих воздействий. Учи-
Рис. 5. Окно просмотра графиков
тывая, что ППП МА^АВ и его опции, известные автору, не обеспечивают решение задачи настройки многомерных типовых регуляторов для
многосвязных динамических объектов с запаздыванием, данный ПК может найти широкое применение в области промышленной автоматизации.
СПИСОК ЛИТЕРАТУРЫ
1. Рей У Методы управления технологическими процессами М.: Мир, 1983. 368 с.
2. Ротач В.Я. Теория автоматического управления: Учеб. для вузов. М.: Изд-во МЭИ, 2004. 400 с.
3. Штейнберг Ш.Е., Сережин Л.П. и др. Проблемы создания и эксплуатации эффективных систем регулирования // Промышленные АСУ и контроллеры. 2004. № 7. С. 1-7.
4. Спорягин К.В., Панов В.С., Яковис Л.М. Программный комплекс настройки типовых регуляторов для многосвязных объектов управления // XXXVIII Неделя науки СПбГПУ. Ч. V. СПб.: Изд-во СПбГПУ, 2009.
5. Официальный сайт MathWorks. URL: http://www. mathworks.com
6. Яковис Л.М., Спорягин К.В. Настройка типовых регуляторов для многосвязных объектов управле-
ния // Мехатроника, Автоматизация, Управление. 2009. № 6. С. 55-63.
7. Яковис Л.М., Спорягин К.В. Расчет регуляторов для инерционных объектов с запаздыванием // Автоматизация в промышленности. 2009. № 12. С. 21-25.
8. Audet Ch., Dennis Jr. J.E. Analysis of Generalized Pattern Searches // SIAM Journal on Optimization. 2003. Vol. 13. № 3. P. 889-903.
9. Goldberg D.E. Genetic Algorithms in Search, Optimization & Machine Learning. Addison-Wesley, 1989.
10. Яковис Л.М. Имитационное моделирование -ключ к решению задач управления сложными технологическими процессами // Автоматизация в промышленности. 2006. № 7. С. 25-30.