Лингвистические функциональные преобразователи с нечеткой логикой широко используются в системах управления для многих автомобильных агрегатов, например, в гидравлических тормозах с системой ABS.
Для эффективного торможения система ABS ограничивает давление тормозной жидкости, предотвращая блокировку колес, удерживая коэффициент скольжения S в оптимальных пределах 0,05...0,2 (рис. 4.7).
Рис. 4.7. Зависимость силы трения μ от коэффициента скольжения S
Коэффициент скольжения:
где Va — скорость автомобиля, Vk — линейная скорость точки на радиусе колеса.
Системы ABS большинства производителей настроены на компромиссное значение S=0,1. Но дорожные условия разные и па обледенелой дороге S должно быть равно 0,05, а на сухом асфальте 0,2.
Датчики текущего состояния дорожного покрытия слишком дороги. Переключатель, управляющий системой ABS, для водителя устанавливать бессмысленно. С другой стороны, опытный водитель по реакции автомобиля при нажатии педали тормоза способен идентифицировать состояние покрытия дороги. Это же делает и ЭБУ-ABS по информации от имеющихся датчиков: скорости и ускорения автомобиля, скорости и ускорения колес, давления тормозной жидкости. Информация обрабатывается по алгоритмам нечеткой логики.
Эксперименты показали, что работа системы ABS существенно улучшается уже при введении шести продукционных правил.
Алгоритмы нечеткой логики можно встретить в программном обеспечении электронных систем автомобиля для определения УОЗ, управления подачей топлива, управления дроссельной заслонкой в круиз-контроле, управления автоматической коробкой передач, в зарядных устройствах интеллектуальных аккумуляторов электромобилей.
Автомобиль — сложный объект для управления. Например, система управления динамической стабильностью и курсовой устойчивостью движения на основе нечеткой логики использует 200—600 продукционных правил. Но срабатывание системы значительно ускоряется по сравнению с техническим решением на основе калибровочных диаграмм.
Процесс разработки системы управления с нечеткой логикой функционирования включает:
- определение лингвистических переменных, нечетких правил, метода дефазификации;
- отладку и анализ программной модели;
- оптимизацию системы управления на базе персональной ЭВМ с реальным объектом;
- генерацию кода для микроконтроллера реальной системы управления.
Эти этапы обычно выполняются с использованием компьютеризированной системы CAD-fuzzy-TECH (например, версии 5.5).
На первом этапе при помощи программных продуктов, заложенных в fuzzy-ТЕСН, задача формализуется. Здесь необходимо описать используемые лингвистические переменные, их функции принадлежности, описать стратегию управления посредством нечетких правил.
Ниже приводятся окна проекта с описанием лингвистических переменных Ti (рис. 4.8), US (рис. 4.9) и HTR (рис. 4.10) для случая с автомобильным отопителем (см. рис. 4.5).
Рис. 4.8. Описание входной лингвистической переменной TI
Рис. 4.9. Описание входной лингвистической переменной US
Рис. 4.10. Описание выходной лингвистической переменной HTR
На рис. 4.11 с помощью табличного представления продукционных правил описана стратегия нечеткой логики управления, отвечающая структуре проектируемой системы (рис. 4.12). В некоторых задачах вместо табличной используется матричная форма представления продукционных правил.
Рис. 4.11. Табличное задание продукционных правил
Рис. 4.12. Структура проектируемой системы в окне проекта
В таблице (рис. 4.11) DoS — это весовой коэффициент соответствующего правила, в данном случае DoS = 1.
Программный пакет fuzzy-TECH позволяет моделировать поведение проектируемой системы. Изменяя значения входных переменных, можно наблюдать соответствующие значения выходных (рис. 4.13).
Рис. 4.13. Окно отладки (а) и окно лингвистической переменной TI в режиме отладки (б)
Пакет fuzzy-TECH допускает соединение физической линией связи компьютера с разрабатываемой системой управления и реального объекта управления в единый отладочный комплекс. Такой вид отладки позволяет наблюдать поведение системы в реальных условиях и при необходимости вносить изменения в проект.
На последнем этапе необходимо получить окончательный вариант программного кода для конкретного микроконтроллера и, если нужно, связать его с основной программой ЭСАУ. Основу программного кода, генерируемого пакетом fuzzy-TECH, составляет программное ядро, аппаратно-ориентированное на конкретный тип процессора. Поставляемое с пакетом fuzzy-TECH MCU-96 программное ядро совместимо с такими типами контроллеров, как 8051..., 80251... и т. д..