Для реализации систем управления с нечётким регулятором на языке программирования Function Block Diagram в среде программирования PC WorX необходимым шагом является фаззификация, т.е. представление входных и выходной (или выходных) переменных в виде совокупности нечётких множеств (термов лингвистической переменной).
В материале представим краткую характеристику различных способов задания нечётких множеств, а также покажем примеры реализации на языке программирования Function Block Diagram в среде программирования PC WorX.
Фаззификация двухпараметрическая.
В этом случае термы лингвистической переменной (которая может быть как входной, так и выходной переменной нечёткого регулятора) могут задаваться функциями принадлежности, представляющие собой S- или Z-образную функцию (как кусочно-линейную, так и сглаженную), описываемую одной из следующих формул:
Для примера реализуем на языке программирования Function Block Diagram в среде программирования PC WorX функцию принадлежности типа Линейная S-образная функция принадлежности (вариант S3), где a = 5, b = 7.
Программа, выполняющая указанную функцию принадлежности на языке Function Block Diagram, представлена на рисунке:
На следующем рисунке показан график Линейной S-образной функции принадлежности (вариант S3), где a = 5, b = 7.
Варианты для самостоятельной реализации в среде программирования PC WorX:
Фаззификация трёхпараметрическая.
В этом случае термы лингвистической переменной (которая может быть как входной, так и выходной переменной нечёткого регулятора) могут задаваться треугольными функциями принадлежности, имеющими следующее аналитическое представление:
Приведём пример реализации на языке программирования Function Block Diagram в среде программирования PC WorX треугольной функции принадлежности при параметрах a = 2, b = 8, c = 11.
В этом случае получим выражение вида:
На следующем рисунке показан график треугольной функции принадлежности с параметрами a = 2, b = 8, c = 11.
Варианты для самостоятельной реализации в среде программирования PC WorX:
Фаззификация четырёхпараметрическая.
В этом случае термы лингвистической переменной могут задаваться трапециевидными или колоколообразными функциями принадлежности, имеющими следующие аналитические представления:
При задании функций принадлежности (варианты Т2, П3-П5) используются двухпараметрические функции принадлежности, рассмотренные выше.
Приведём пример реализации на языке программирования Function Block Diagram в среде программирования PC WorX функции принадлежности типа П5 при параметрах a = 2, b = 8, c = 14, d = 17.
На рисунке можно выделить два фрагмента программы, аналогичных описанному в примере ранее, где сигналы с выхода перемножаются в блоке MUL.
На следующем рисунке показан график колоколообразной функции принадлежности (вариант П5) с параметрами a = 2, b = 8, c = 14, d = 17.
Варианты для самостоятельной реализации в среде программирования PC WorX:
В качестве дополнительного Упражнения в комментариях можете предложить вариант аналитического задания функции принадлежности, который не указан в текущем материале.
см. полный список теоретических материалов и примеров лабораторных работ: https://dzen.ru/a/ZAq0N8VOKEDcTDy3?share_to=link.