Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
РГР_ИУС_ЗАДАНИЕ4.doc
Скачиваний:
14
Добавлен:
17.08.2019
Размер:
4.18 Mб
Скачать

Построение базы нечетких правил

Для формирования базы правил систем нечеткого вывода необходимо предварительно определить входные и выходные лингвистические переменные. Очевидно, в качестве одной из входных лингвистических переменных следует РАССТОЯНИЕ до конечной точки движения локомотива или ОТКЛОНЕНИЕ от заданной траектории движения β1 – “РАССТОЯНИЕ”, а в качестве второй входной лингвистической переменной β2 – “ОТКЛОНЕНИЕ скорости пуска/торможения от заданной линии регулирования процессом пуска/торможения “. В качестве выходных лингвистических переменных будем использовать “угол управления” в задании регулятору электропривода включения режимов “тормоз” и “тяга”: β3 – “угол управления“ и параметр настройки регулятора β4 –зона нечувствительности. Для сокращения записи правил будем использовать рассмотренные ниже символические обозначения, при этом модификатор ОЧЕНЬ преобразован к значению отдельного терма.

В качестве терм-множества первой лингвистической переменной будем использовать множество T1={“очень малое“, “малое“, “в пределах нормы“, “большое“, “очень большое“} или в символическом виде T1={NB, NS, Z, PS, PB} с функциями принадлежности, изображенными на рис.1. В качестве терм-множества второй входной лингвистической переменной будем использовать множество T2={“отрицательная“, “равна нулю“, “положительная“} или в символическом виде T2={NS, Z, PS} с функциями принадлежности, изображенными на рис.2. В качестве терм-множества первой выходной лингвистической переменной будем использовать множество T3={“очень большой угол влево“, “большой угол влево“, “небольшой угол влево“, “выключить регулятор (или нулевой угол)“, “небольшой угол вправо“, “большой угол вправо“, “очень большой угол вправо“} или в символическом виде T3={NB, NM, NS, Z, PS, PM, PB} с функциями принадлежности, изображенными на рис.3. В качестве терм-множества второй выходной лингвистической переменной будем использовать множество T4={“большая зона нечувствительности“, “средняя нечувствительности“, “минимальная нечувствительности“, или в символическом виде T4={B, M, L} с функциями принадлежности, изображенными на рис.4.

В этом случае система нечеткого вывода будет содержать 15 правил нечетких продукций следующего вида:

ПРАВИЛО_1: ЕСЛИ “β1 есть PB“ И “β2 есть PS“ ТО “β3 есть NB“ И “β4есть B“

ПРАВИЛО_2: ЕСЛИ “β1 есть PB“ И “β2 есть NS“ ТО “β3 есть NS“И “β4 есть B“

ПРАВИЛО_3: ЕСЛИ “β1 есть PS“ И “β2 есть PS“ ТО “β3 есть NM“И “β4 есть M“

ПРАВИЛО_4: ЕСЛИ “β1 есть PS“ И “β2 есть NS“ ТО “β3 есть Z“И “β4 есть M“

ПРАВИЛО_5: ЕСЛИ “β1 есть NB“ И “β2 есть NS“ ТО “β3 есть PB“И “β4 есть B“

ПРАВИЛО_6: ЕСЛИ “β1 есть NB“ И “β2 есть PS“ ТО “β3 есть PS“И “β4 есть B“

ПРАВИЛО_7: ЕСЛИ “β1 есть NS“ И “β2 есть NS“ ТО “β3 есть PM“И “β4 есть M“

ПРАВИЛО_8: ЕСЛИ “β1 есть NS“ И “β2 есть PS“ ТО “β3 есть Z“И “β4 есть M“

ПРАВИЛО_9: ЕСЛИ “β1 есть PB“ И “β2 есть Z“ ТО “β3 есть NM“И “β4 есть B“

ПРАВИЛО_10: ЕСЛИ “β1 есть PS“ И “β2 есть Z“ ТО “β3 есть NS“И “β4 есть M“

ПРАВИЛО_11: ЕСЛИ “β1 есть NB“ И “β2 есть Z“ ТО “β3 есть PM“И “β4 есть B“

ПРАВИЛО_12: ЕСЛИ “β1 есть NS“ И “β2 есть Z“ ТО “β3 есть PS“И “β4 есть L“

ПРАВИЛО_13: ЕСЛИ “β1 есть Z“ И “β2 есть PS“ ТО “β3 есть NS“И “β4 есть L“

ПРАВИЛО_14: ЕСЛИ “β1 есть Z“ И “β2 есть NS“ ТО “β3 есть PS“И “β4 есть L“

ПРАВИЛО_15: ЕСЛИ “β1 есть Z“ И “β2 есть Z“ ТО “β3 есть Z“И “β4 есть L“

Фаззификация переменных

Рис. 1 - Графики функций принадлежности для термов входной лингвистической переменной “РАССТОЯНИЕ ”

Рис. 2 - Графики функций принадлежности для термов входной лингвистической переменной “ОТКЛОНЕНИЕ скорости торможения от заданной линии регулирования процессом тяги - торможения “

Рис. 3 - Графики функций принадлежности для термов выходной лингвистической переменной “угол управления регулятора“

Рис. 4- Графики функций принадлежности для термов выходной лингвистической переменной “зона нечувствительности

При этом РАССТОЯНИЕ измеряется в метрах, ОТКЛОНЕНИЕ скорости торможения – в метрах в минуту, угол управления – в угловых градусах, а зона нечувствительности - в процентах от полного диапазона изменения входных сигналов. В последнем случае поворот регулятора вправо означает включение режима “тяга” и положительное направление отсчета, а поворот регулятора влево – включение режима “тормоз” и отрицательное направление отсчета.

Используя в качестве алгоритма вывода алгоритм Мамдани, рассмотрим пример его выполнения для случая, когда текущее РАССТОЯНИЕ равно 200 м, а ОТКЛОНЕНИЕ скорости торможения положительное и равно 0.2 м/мин.

В этом случае фаззификация первой входной лингвистической переменной приводит к значению степени истинности 0.18 для терма PS, а фаззификация второй нечеткой переменной приводит к значению истинности 0.55 для терма Z и значению 0.25 для терма PS. Соответствующие подусловия используются в правилах нечетких продукций с номерами 3 и 10. Эти правила считаются активными и используются в текущем процессе нечеткого вывода.

Агрегирование подусловий правила 3 дает в результате число 0.18, агрегирование подусловий правила 10 – также число 0.18. Следующим этапом нечеткого вывода является активизация заключений в нечетких правилах продукций. Поскольку все заключения правил 1– 5 заданы в форме нечетких лингвистических высказываний первого вида, а весовые коэффициенты правил по умолчанию равны 1, то активизация правил 3 и 10 приводит к двум нечетким множествам.

Аккумулирование заключений нечетких правил продукций с использованием операции max-дизъюнкции для правил 3 и 10 приводит в результате к нечеткому множеству, функция принадлежности которого изображена на рис.5.

Рис. 5 - Графики функций принадлежности двух термов выходной лингвистической переменной “угол включения“ после аккумуляции

Дефаззификация выходных лингвистических переменной “Угол включения регулятора“ и “Зона нечувствительности“ методом центра площади для значений функции принадлежности, изображенной на рис.3 и рис. 4, приводит к значению управляющей переменной, равному повороту уставки регулятора влево на угол 40° (приближенное значение) и значению 0.25% для зоны нечувствительности регулятора. Эти значения соответствуют включению режима “тормоз” и являются результатом решения задачи нечеткого вывода.

Модель процесса нечеткого выбора параметров настройки уставок “УГОЛ ВКЛЮЧЕНИЯ и ЗОНА НЕЧУСТВИТЕЛЬНОСТИ” импульсного нечеткого регулятора процессом тяги–торможения локомотива приведена на рис.6.

а) б)

в) г)

д)

а) главное окно редактора FUZZY LOGIK, б) окно редактора функций входных - выходных переменных, в) окно просмотра базы нечетких правил, г) окно редактора базы нечетких правил, д) окно просмотра поверхности управлений.

Рис. 6 - Модель нечеткого регулятора процесом пуска – торможения ПС в пакете FUZZY LOGIK

Результаты моделирования нечеткого регулятора процессом тяги – торможения локомотива в пакете FUZZY LOGIK приведены на рис. 7 - 10

Рис. 7 - Сигнал ошибки до адаптивного фильтра

Рис. 8 - Сигнал ошибки после адаптивного фильтра

Рис. 9 - Выходной сигнал системы

Рис. 10 - Формируемый дискретный управляющий сигнал

Пример 4.4. Нечеткая модель управления контейнерным краном

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

4.4.1 Содержательная постановка задачи

Контейнерные краны используются при выполнении погрузочно-разгрузочных работ в портах. Они соединяются с моноблочным контейнером гибким тросом и поднимают контейнер к кабине крана. Эта ситуация иллюстрируется на рис. 4.4.1.

Рисунок 4.4.1 - Иллюстрация примера с контейнерным краном

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

Анализ действий крановщиков-операторов, выполняющих управление краном, показывает, что они в своей работе применяют следующие эвристические правила:

  • Начинать движение следует со средней мощностью;

  • Если движение уже началось и кабина находится далеко от цели, отрегулировать мощность двигателя таким образом, чтобы контейнер оказался несколько впереди, кабины крана;

  • Если кабина находится над целью, уменьшить скорость таким образом, чтобы контейнер несколько впереди кабины крана;

  • Когда контейнер находится прямо над позицией цели, следует остановить двигатель.

4.4.2 Построение базы нечетких правил

Для формирования базы правил систем нечеткого вывода необходимо предварительно определить входные и выходные лингвистические переменные. Чтобы иметь возможность автоматически управлять таким краном, необходимо использовать датчики для измерения горизонтального положения кабины крана ("Расстояние") и измерения угла раскачивания контейнера ("Угол"). Выходом в этом случае является мощность мотора.

В качестве одной из входных лингвистических переменных следует использовать: положение кабины крана α – "Расстояние", в качестве второй входной лингвистической переменной β - "угол раскачивания контейнера". В качестве выходной лингвистической переменной будем использовать мощность мотора: Р - "мощность мотора". Каждая из них будет включать в себя пять термов. При этом будем использовать функции принадлежности типа кусочно-линейных функций, а также функции принадлежности для одноточечных необходимо определить методы множеств.

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

ПРАВИЛ0 1: ЕСЛИ "α далекое" И "β равен нулю", ТО "Р положительная средняя"