УДК 62.50
КОНТРОЛЛЕР НЕЧЕТКОЙ ЛОГИКИ НА ОСНОВЕ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ ДЛЯ ЭЛЕКТРОПРИВОДА ТЕЛЕЖКИ ПОДЪЕМНОГО КРАНА
Асп. Алави С. Э., канд. техн. наук, доц. ПЕТРЕНКО Ю. Н.
Белорусский национальный технический университет
Актуальным является обеспечение антиколебательного управления электроприводом при перемещении грузов подъемными кранами [1]. Наряду с традиционными способами управления [2, 3] микропроцессорные средства [4] позволяют реализовать управление на основе нечеткой логики и генетических алгоритмов [5-7]. При проектировании контроллера управления движением на основе нечеткой логики (КНЛ) возникают две проблемы: выбор структуры обучения КНЛ и определение численных значений параметров КНЛ. Для решения этих задач может быть успешно применен генетический алгоритм (ГА) как для проектирования КНЛ, так и для настройки его параметров. Фактически ГА используется для нахождения базы нечетких правил управления, которые проверяются на оптимальность путем определения их функцией пригодности согласно необходимым особенностям.
Параметры баз правил включают в себя следующее: 1) число нечетких правил; 2) расположение всех центров С(,) и ст(; ^) параметра гауссовой
функции (ГФ) (коэффициент формы ГФ принадлежности) Л(г, ) и выхода
системы В(/1, /г, • • •, ').
Здесь принята гауссова форма функции принадлежности
\г, 1,)
(с, , аг, Хг ) = еХР
2а2
(1)
Во-первых, необходимо определить кодирование хромосомы [4]. Для каждого входа КНЛ хг устанавливаем три кодовых последовательности. Верхняя последовательность (рис. 1) состоит из строк ^)
(й-строки), двоичные коды которых обозначаются индексом С(,;) или а(,;)
(с - для нечетной итерации и а - для четной итерации) [5].
Нижняя строка (рис. 1) состоит из строк С(,;) (с-строка) или а(г]-)
(у-строка), которые являются реальными величинами, означающими местоположение центра или отклонение Л(г, 1г ) .
В дальнейшем будем рассматривать только с-строки; у-строки одинаковы для четных итераций. Значение ;) = 1 означает полноценность [5, 6]
(пригодность) С(, /), но /) = 0 означает непригодность С(,;).
Заметим, что С(,;) - это центр Л(г, ji). Таким образом, если С(,;) непригодно, то Л(г, 1',) также непригодно.
Рис. 1. Кодовая выходная строка, полученная на основе двух кодовых строк
¿(ио и
Для удобства вычислений следствие каждого правила устанавливается в виде одноэлементного множества (ОЭМ-синглетон), поэтому остается лишь определить его положение.
Количество ОЭМ зависит от количества правил. Номер правила зависит от положения строк ) и ). Например, положим, что каждый вход
XI двоичных разрядов имеет семь ), тогда два входа имеют по крайней
мере 7 • 7 = 49 нечетких правил, поэтому имеется 49 соответствующих выходных ОЭМ нечетких правил. На рис. 1 показана кодовая строка, определенная двумя кодовыми строками ^) и й(2 ^), где ji = 1, 2, ..., 7.
Следствие (выход) В( j1, j2) имеет действительный номер, означающий ОЭМ, который зависит от ^) и ). При любом d(i;) = 0 (/' = 1 или
i = 2) соответствующий выход, т. е. В( j1, j2), теряет свой смысл (т. е. является бесполезным и игнорируется). Таким образом, правило Я(j1, j2) -бесполезно. Только оба ;) = 1 (для i = 1, 2) будут полезными, и их величина будет определена посредством ГА. Другими словами, лишь в случае, когда оба j) = 1 (для i = 1, 2) будет изменяться и В(j1, j2) в виде новой генерации ГА (новой хромосомы). В противном случае величина В( j1, j2) остается той же и будет игнорирована. После формирования кодов условий и следствий формируется полная индивидуальная хромосома.
Операции ГА. Рассмотрим две ключевые генетические операции: воспроизводство и мутация. Эти операторы предлагают генам прекрасный механизм поиска. Во-первых, мы инициируем в случайном порядке Р индивидуальностей (хромосом) с действительными числами на с^)
и В(У2,...,]'т) и двоичные коды на йц ;). Здесь воспроизводство включает в себя две стратегии: одна - это стратегия элитарности (элитности); вторая - это стратегия колеса рулетки [5, 6]. Стратегия элитарности применена для того, чтобы гарантировать выживание лучших двух последовательностей в каждом поколении. Другое лучшее потомство произведено обычным принципом колеса рулетки. Тогда поколение (результат) с самыми высокими ценностями пригодности будет скопировано к следующему поколению. Здесь использован принцип колеса рулетки как наиболее распространенный [6].
Введем понятие иерархической мутации. Сначала видоизменяем ^-последовательность и затем мутируем с- и ^-последовательности. Мутация d(i j)) будет оказывать влияние на пригодность с(г 7) и затем будет изменяться также величина В(¡1, у2).
В( ¡1, } 2)
1 0 1 0 0 0 1
г
1 1 1 0 0 0 1
с( 1,2)
1 \г
1 1 1 0 0 0 1
,к)
1 1 0 0 0 1 1
1 1 1 0 0 1 1
А
с(2,3)
т
с'(2,3)
1110 0 11
5( 1,1) 5(2,3) 5(2,7) 5(3,1) 5(7,1) 5(7,2) В( 7,3) 5(7,7)
я'Сл.Л) в '(1,1) В'( 2,3) В'(2,7) 5'(3,1) 5'(7,1) 5'(7,2) 5'(7,7)
Рис. 2. Иерархическая мутация
Например, на рис. 2 df(ll^) или d''2 ^) есть кодовые последовательности после мутации от d(1¡) или d{2 ^) соответственно (с^) или с{2 ^)) и (с(\ ^) или с(2 ^)) зависят от оригинальной последовательности (d(1 ^) или d(2 ^)) и мутируемой последовательности (d('1 ) или d(2 ^)) соответственно.
На рис. 2 приведены последовательности В(]х,у2) и В'(У1?¡2) связанные с оригинальной парой { ) или d^2 h)} последовательностей и видоизмененной (мутированной) последовательностью { d('1 ^), d('2 ^) } соответственно. Упомянутый выше процесс мутации назовем иерархической мутацией (рис. 2).
После представления названных выше операций в ГА остается самая важная вещь - установка функции пригодности, которая используется для того, чтобы оценить действие каждой хромосомы в поколении. Она определяется следующим образом:
1
¥И =
™р\\еА 12 +
Wp + Wr = 1,
(2)
где е1 = yd — у1 - ошибка на выходе; yi - выход замкнутой системы с контроллером, произведенным 1-й отдельной хромосомой; уа - желаемый выход; Я1 - номер правила 1-й хромосомы.
Необходимо заметить, что каждая хромосома представляет одну базу нечетких правил. Вообще есть определенная зависимость между ошибкой на выходе системы ег- и числом нечетких правил; поэтому мы устанавливаем два веса: wp (для ошибки на выходе) и wr (для номера правил) в функции пригодности. Эти веса могут приспособить (согласовать) значение ошибки на выходе или на номере правила соответственно.
Рациональное значение Fit (2) устанавливается в результате численных расчетов. Например, если значение Fit (2) при очередной мутации не изменяется (например, 5 раз), то процесс может считаться законченным.
Пример. Продемонстрируем предложенный метод для проектирования КНЛ электропривода тележки мостового подъемного крана. На основе расчетной схемы и математической модели [7] представим процедуру получения базы нечетких правил с применением разработанного модифицированного ГА, обеспечивающим бесколебательное перемещение груза. Входами антиколебательного [7] КНЛ (АКНЛ) являются угловое отклонение груза от вертикали и его производная ее и ede соответственно; выходом - сигнал на систему управления электропривода.
В КНЛ используется гауссова форма функций принадлежности [7], которая предполагает их аналитическое представление параметров. База правил АКНЛ, полученная в [7] при классическом использовании НЛ, приве-денав табл. 1.
Таблица 1
База правил антиколебательного контроллера нечеткой логики
ел! ее!
NB NM NS Z PS PM PB
NB PB PB PM PM PS PS Z
NM PB PM PM PS PS Z NS
NS PM PM PS PS Z NS NS
Z PM PS PS Z NS NS NM
PS PS PS Z NS NS NM NM
PM PS Z NS NS NM NM NB
PB Z NS NS NM NM NB NB
В табл. 1 обозначено: N - отрицательный; Р - положительный; Ъ - нуль; 8 - маленький; М - средний; В - большой.
Рассмотрим совершенствование АКНЛ на основе ГА. Выбираем длину каждого элемента 16 битов для с- и у-последовательностей (на рис. 2 не показана). Каждый элемент должен быть нормализован относительно принятых максимальных отклонений. Для нормализации с-последовательно-сти используем число, которое генерируется от декодера 32768 (2 ).
Пределы изменения с-последовательности в (1) в нормализованном виде составляют от +1 до -1 (15 битов). Для у-последовательности пределы изменения составляют 16 битов (без знака).
Результаты усовершенствования представлены в табл. 2 и на рис. 3.
Таблица 2
База правил АКНЛ, полученная с помощью генетического алгоритма
е^е! ее!
Ш N Ъ Р РВ
Ш РВ РВ РМ Р8 Ъ
N РВ РМ Р8 Ъ N8
Ъ РМ Р8 Ъ N8 ЫМ
Р Р8 Ъ N8 КМ Ш
РВ Ъ N8 ММ N8 ш
Рис. 3. Функции принадлежности для входных переменных АКНЛ
Цифровое моделирование. Переходные процессы колебаний груза при позиционировании для параметров, изложенных в [7], изучены на математической модели с использованием пакета МАТЛАБ-СИМУЛИНК и приведены на рис. 4. Сравнение характеристик показывает их близкое совпадение как по амплитуде колебаний, так и по времени переходного процесса.
Рис. 4. Колебания груза при позиционировании: А - с обычным контроллером нечеткой логики; В - с контроллером, полученным на основе генетического алгоритма
В Ы В О Д
Предложена методика проектирования базы правил фазификации переменных антиколебательного контроллера нечеткой логики на основе генетического алгоритма для электропривода механизма перемещения подъемного крана. Методика позволяет сократить число правил в два раза и, следовательно, упростить вычислительную процедуру управления без снижения качества управления.
Л И Т Е Р А Т У Р А
1. С е р и к о в, С. А. Способ успокоения колебаний груза, транспортируемого мостовым краном / С. А. Сериков // Приборы и системы. Управление, контроль, диагностика. -2006. - № 9.
2. К л ю ч е в, В. И. Электропривод и автоматизация общепромышленных механизмов: учеб. для вузов / В. И. Ключев, В. М. Терехов. - М.: Энергия, 1980.
3. D i e Antipendel-Regelung Шг mehr Tempo, mehr Pruzision, mehr Sicherheit: HIPAC. -http:/Avww,automation.siemens.cotn
4. О п е й к о, О. Ф. Микропроцессорные средства в автоматизированном электроприводе: учеб. пособие / О. Ф. Опейко, Ю. Н. Петренко. - Минск: Амалфея, 2008. - 340 с.
5. L i-X i n, W a n g. Adaptive Fuzzy Systems and Control / Li-Xin Wang.- Prentice Hall, Englewood Clifs, New Jersey, 1994.
6. A t t i a, A. A. Adaptation of genetic algorithms for optimization problem solving / A. A. Attia, P. Horacek // 7th International Conference on Computing MENDEL, 2001. - Brno, 2001. - P. 36-41.
7. А л а в и, С. Э н а я т о л л а х. Контроллер позиционного электропривода на основе нечеткой логики / Алави С. Энаятоллах, Ю. Н. Петренко // Тр. БГТУ. Серия IX, вып. XVI. -2008. - С. 49-52.
Представлена кафедрой электропривода и автоматизации промышленных установок
и технологических комплексов Поступила 12.12.2008
УДК 004.942.519.876.5
МОДЕЛИРОВАНИЕ РАБОТЫ СИСТЕМЫ УПРАВЛЕНИЯ ЭЛЕКТРОПРИВОДОМ ПОСТОЯННОГО ТОКА В СРЕДЕ ПРОГРАММИРОВАНИЯ СоБе8у8
Инж. НОВИКОВ С. О.
Белорусский национальный технический университет
Возможности среды программирования СоБе8у8 для управления электроприводом постоянного тока. Большинство значимых программных проектов для персональных компьютеров (ПК) сегодня реализуется с помощью объектно-ориентированного программирования (ООП). Хотя поначалу некоторые программисты скептически относились к ООП, уменьшение сроков разработки программного обеспечения (ПО) и простота повторного использования теперь уже никем не оспариваются.
В системе программирования CoDeSys [1] полноценно реализованы фундаментальные особенности объектно-ориентированного программирования: классы, интерфейсы, наследование, полиморфизм и динамическое связывание. Компания 38 расширила стандарт МЭК 61131-3 без его изменения, введя дополнительный набор ключевых слов.