MATLAB.Exponenta
MATLAB и Simulink на русском
Технологии разработки и отладки
		сложных технических систем

Проектирование систем управления\Fuzzy Logic Toolbox

Демонстрационные примеры

  В оглавление \ К следующему разделу \ К предыдущему разделу

SHOWER

В этом разделе описывается демонстрационная программа shower, иллюстрирующая применение нечеткого контроллера для управления душем. Задача управления состоит в установке таких положений вентилей холодной и горячей воды смесителя, которые обеспечили бы требуемые уровни температуры и расхода воды. Для работы программа shower необходим пакет Simulink.

После запуска программы shower на экране появляется графическое окно пакета Simulink. Это окно содержит симулинк-модель (рис. 9. 47), используемую демонстрационной программой shower.

Рисунок 9.47 - Симулинк-модель системы "душ с нечетким контроллером"

Для запуска анимации необходимо выбрать команду Start меню Simulation. После этого в графических окнах temp scope и flow scope будут выводиться временные диаграммы температуры и расхода воды в душе, соответственно. В качестве примера на рис. 9.48 показаны типовые временные диаграммы. Требуемые значения температуры и расхода воды показаны сиреневыми линиями, а текущие значения желтыми линиями. Моделирование системы "душ с нечетким контроллером" происходит при следующих параметрах:

  • температура холодной воды - 10 градусов;
  • температура горячей воды - 30 градусов;
  • закон изменения требуемого расхода воды - прямоугольная волна с частотой 0.3 рад/c;
  • закон изменения требуемой температуры воды - прямоугольная волна с частотой 0.21432 рад/c.
Рисунок 9.48 - Временные диаграммы температуры и расхода воды

Управление душем осуществляет нечеткий контроллер. Он реализован в виде системы нечеткого логического вывода типа Мамдани с двумя входами и двумя выходами. Входными переменными являются: temp - разница между текущей и требуемой температурами воды и flow разница между текущим и требуемым расходами воды. Выходными переменными являются: cold - изменение положения вентиля холодной воды и hot - изменение положения вентиля горячей воды. Для лингвистической оценки входных переменных используется по три терма. Крайние термы заданы трапециевидными функциями принадлежности, а остальные - треугольными. Для лингвистической оценки выходных переменных используется по пять термов с треугольными функциями принадлежности. База знаний содержит такие правила:

1) If (temp is cold) and (flow is soft) then (cold is openSlow) and (hot is openFast);
2) If (temp is cold) and (flow is good) then (cold is closeSlow) and (hot is openSlow);
3) If (temp is cold) and (flow is hard) then (cold is closeFast) and (hot is closeSlow);
4) If (temp is good) and (flow is soft) then (cold is openSlow) and (hot is openSlow);
5) If (temp is good) and (flow is good) then (cold is steady) and (hot is steady);
6) If (temp is good) and (flow is hard) then (cold is closeSlow) and (hot is closeSlow);
7) If (temp is hot) and (flow is soft) then (cold is openFast) and (hot is openSlow);
8) If (temp is hot) and (flow is good) then (cold is openSlow) and (hot is closeSlow);
9) If (temp is hot) and (flow is hard) then (cold is closeSlow) and (hot is closeFast).

Для просмотра нечеткого контроллера в симулинк-формате (рис. 9.49) необходимо щелкнуть правой кнопкой мыши по блоку Fuzzy Logic Controller (см. рис. 9.47) и в появившемся меню выбрать команду Look under mask. Затем в появившемся графическом окне Link: shower/Fuzzy Logic Controller* щелкнуть правой кнопкой мыши по блоку FIS Wizard и снова в появившемся меню выбрать команду Look under mask.

Рисунок 9.49 - Нечеткий контроллер душа в симулинк-формате

  В оглавление \ К следующему разделу \ К предыдущему разделу


Поиск по сайту:

Система Orphus

Яндекс.Метрика