Этод стенд как и перевернутый маятник, был разработан и собран как дополнение для моего дипломного проекта.
Собирал его из того что под руку попалось, так что дизайн не очень, задача была, что бы работало.
Разработка нечеткого управления устойчивого объекта на базе калорифера
Устойчивый объект обладает свойством самовыравнивания, т.е. самостоятельно приходить в новое равновесное состояние после нанесения возмущения. В качестве устойчивого объекта принят калорифер (объект для производства теплого воздуха) для снижения влажности в производственных помещениях.
Рассмотрим микропроцессорную САР с четким и нечетким управлением статического объекта.
Описание лабораторной установки
Лабораторная установка включает в себя компьютер и регулируемый физический объект. Регулируемый объект (РО) есть макет калорифера с постоянным наддувом и регулируемым током нагрева с помощью разного типа программных регуляторов температуры.
Рис.1 Структурная схема САР температуры
Для поддержания заданной температуры в камере калорифера с постоянным наддувом используем нечёткий регулятор. Температура в камере калорифера измеряется датчиком температуры типа DS 18B20. Исходя из динамических свойств РО, задаем диапазон изменения ошибки от — 5 до +5 заданного значения и диапазон изменения скорости изменения ошибки от -3 до +3 . Для перехода от четкого значения входа к нечёткой переменной по отклонению температуры и скорости ее изменения примем, соответственно, терму ОМ (отрицательная малая) типа Z, терму Н (норма) типа Л и терму ПМ (положительная малая) типа S, которые приведены на рис.2.
Потребляемая мощность калорифера пропорционально связана с изменением температуры в камере РО, поэтому управляющий сигнал выразим в единицах мощности в диапазоне от 0 до 150 Вт. Лингвистическую переменную µ управления дефаззификатора представим девятью термами,
Рис.2. Термы фаззификатора
№1 (5Вт), №2 (10Вт), №3 (15Вт), №4 (20Вт), №5 (25Вт), №6 (30Вт), №7 (35Вт), №8 (40Вт), №9 (45Вт).
Для примера составим произвольно матрицу решений, приведенную на рис.3.
Рис. 3. Матрица решений
Примем следующие правила:
— если отклонение температура на объекте ОМ, а её производная ОМ, то мощность калорифера должна увеличиться:
= ОМ и = ОМ то P = №1;
— если температура на объекте норма (Н), а её производная (ОМ), то мощность калорифера необходимо увеличить:
= Н и = ОМ то P = №2;
— если температура на объекте больше заданной (ПМ), а её производная отрицательна, то мощность калорифера необходимо оставить прежней:
= ПВ и = ОМ то P = №5;
и т.д.
Совокупность правил отразим в матрице решений 33, в которой на пересечения столбцов и строк записываются коды терм управления . Для устранения нечёткости применим метод центроида, где точное значение выводимой переменной вычисляется как значение координаты «центра тяжести» на оси абсцисс комбинированной термы (аккумуляция).
Допустим, имеет место отклонение температуры равное — 0,33, которая продолжается снижаться со скоростью — 0,15. В этом случае термы ОМ и Н отклонения температуры имеют степень принадлежности 0,33 и 0,67 ,соответственно, а термы ОМ и Н скорости измерения равны 0,15 и 0,85. Терм ПМ имеет степень принадлежности 0.
Из матрицы решений 33, показанной на рис.9, для данного случая имеем:
На первом шаге логического вывода используется связка «И» с помощью оператора min:
На втором шаге логического вывода используется связи «ИЛИ» с помощью оператора max.
Например, выражения 2 и 3 дают разные значения степени принадлежности для терма (№2), но берётся максимальное значение (max).
Таким образом, для текущих значений входных сигналов степени принадлежности термов выходной переменной имеют значения:
Для перехода от нечётких выводов к управляющему воздействию используем метод центроида (метод определения координаты центра тяжести на оси абсцисс:
Описание интерфейса компьютера лабораторной установки
Программное обеспечение лабораторной установки позволяет изучить принцип работы и настройку программных ПИД- и FUZZY – регуляторов, проводить эксперимент в реальном времени, создавать архив и анализировать раннее полученные результаты экспериментов.
При запуске программы проверяется наличие COM- и LPT – портов в компьютере, подключена или нет физическая модель объекта. Если порты не обнаружены, то программа выдаст сообщение об этом. При отсутствии физической модели объекта возможен только просмотр архивов. На рис. 10 приведено главное окно САР температуры.
Описание главного окна САР температуры
Главное окно (см. рис.4) состоит из меню (1), панелей « Регулятор №1» (2), «Регулятор №2» (3), «текущие измерения» (4), «управление» (5), «ШИМ» (6), «вых. регул. №1», «вых. регул. №2», «таймер» (7). Внизу отображаются графики изменения текущего параметра (температуры) и ее заданного значения (8).
Рис 4. Главное окно САР температуры
Панель (2) «Регулятор №1» содержит регулирующее устройство типа «Fuzzy – регулятор». Фаззификатор «Fuzzy – регулятора» переводит четкие значения лингвистических переменных «Отклонение» и «Скорость» в нечеткие значения с помощью трех терм, соответственно, графики которых показаны в панели (2.1) с указанием степеней принадлежности к термам. Ниже слева находится база знаний и продукционных правил (панель 2.2), в которой задаются девять терм дефаззификатора. В панели (2.3) задаются коэффициенты пропорциональный и интегральной составляющей отклонения и дифференциальный составляющей (скорости) входа базы знаний (см. рис. 1) , там же отображается выход каждой составляющей и находится включатель каждой составляющей, а также можно произвести сброс накопленной интегральной составляющей отклонения.
Панель (3) «Регулятор №2» содержит регулятор типа «ПИД – регулятор». В панели задаются коэффициенты пропорциональный, интегральной и дифференциальный составляющей ПИД- регулятора, там же отображается выход с каждой составляющей и находится включатель каждой составляющей, а также можно выполнить сброс накопленной интегральной составляющей регулятора.
Панель (4) «текущие измерения» отображает численные значения текущей температуры, отклонения текущего значения от задания и выход раздельно с регуляторов №1 и №2 (управляющее воздействие, которое идет на нагреватель калорифера) в текущий момент времени в процентах.
На панели (5) находятся кнопки управления. Кнопка «старт» запускает в работу выбранный регулятор в системе. Кнопкой «вкл.» в панели «нагрев» включается нагреватель только для снятия кривой разгона. При этом на объект подается максимальная мощность.
В панели «задание» указывается заданное значение температуры. Ниже в виде таблицы выдаются текущие значения температуры, ошибки регулирования и время отсчета через равные интервалы времени.
С помощью панели (6) «ШИМ» задается ручное широтно-импульсное управляющее воздействие на объект в виде тока нагрева калорифера для снятия кривых разгона.
В панели (7) «вых. регул. №1», «вых. регул. №2» цифровые индикаторы показывают по желанию выход каждого регулятора. Там же находятся выключатели, позволяющие включить нужный регулятор в схему регулирования (см. рис.10).
В панели «таймер» задается интервал времени для снятия отсчетов при записи заданного и текущего значений.
Для запуска лабораторной установки необходимо:
— выбрать в меню (см. рис.10) вкладку «порт» и установить тот, к которому подключена установка (например, СОМ 1);
— выбрать в меню (1) вкладку «файл» и в открывшемся меню нажать «новый» (она активируется, если датчик обнаружен), и создать файл, куда будут архивироваться данные об эксперименте (например, 11августа). По умолчанию он сохраняются в папке «DATA», которая находится в том же каталоге, где и программное обеспечение;
— в меню (1) во вкладке «настройка» выбрать «термы» или два раза щелкните левой мышкой на графике (2.1) входных терм. Откроется окно «Термы», где задаются термы фаззификатора и дефаззификатора и диапазон их отображения. Любые проведенные изменения предыдущей информации нужно подтвердить кнопкой «OK»;
— выбрать регулятор, который хотите использовать в панели (7) «вых.регул. №1» или «вых.регул. №2» и задать нужные коэффициенты;
— в меню (1) во вкладке «скорость» задать скорость измерения в миллисекундах (например, 1000мс=1с);
— в панели задание установить заданную температуру на объекте;
— включить блок питания установки;
— включить питание ШИМ-приставки;
— нажать кнопку «старт».
После нажатия кнопки «старт» начнётся регулирование по заданному Вами закону. Все изменения коэффициентов, терм, скорости измерения фиксируется и записывается в архив. Верхний предел измерения температуры составляет 125, по достижении которого нагрев калорифера прекращается и сработает звуковая и световая сигнализация.
На рис.5 приведена панель настройки термов.
Рис. 5. Панель настройки термов
Просмотр архивов
Чтобы просмотреть архив переходного процесса необходимо:
— после завершения переходного процесса, не выходя из программы, нажать кнопку «стоп»;
— в меню (1), во вкладке файл выбрать «архив», откроется окно архива;
— работая левой клавишей мышки, навести ее на график или на табличные данные. В панелях будут отображаться данные: какой регулятор в данный момент использовался и какие коэффициенты были установлены, а также какая температура, время и ошибка регулирования была на данный момент времени.
Пример архива показан на рис. 6
Рис. 6. Осциллограммы работы САР температуры (архив)
Окно «Архив» почти не отличается от окна «Регулятор». Чтобы просмотреть проведенные эксперименты, в меню «файл» выберите «открыть», откроется текущий каталог «DATA», где нужно выбрать для открытия необходимый файл
Описание аппаратной части лабораторной установки
Регулируемый объект есть макет калорифера с постоянным обдувом, содержащий датчик температуры с программируемым разрешением типа DS18B20, блок питания нагревательного элемента калорифера и ШИМ — приставку для управления током нагревателя. В качестве нагревателя используется проволочный резистор с рассеиваемой мощностью 20 Вт. В установке для работы с датчиком температуры использован адаптер 1-Wire, который подключается к Com-порту компьютера. Принципиальная схема адаптера показана на рис.7.
Рис. 7. Принципиальная схема адаптера
В качестве температурного датчика используется широко распространенная микросхема цифрового термометра DS18B20.
ШИМ – регулятор
На рис.8 приведена принципиальная схема ШИМ-приставки на базе микроконтроллера PIC16F84 и управляется через LPT-порт компьютера. Подробно ШИМ-регулятор описан в описании устройства « Перевёрнутый маятник ».
Рис.8. Принципиальная схема ШИМ-приставки
Программы с исходниками FUZZY, ПИД — регуляторы.