Pull to refresh
137
31
Вячеслав @petuhoff

Моделирование сложных технических систем

Send message
Регулятор ПДД, который использует вторую производную дает такую картину после настройки:
Мы привыкли что все алгоритмы на процессоре (одна плата малины) на исполнительные механизмы отправляем только результат работы алгоритма. Поверни свой регулятор на столько-то градусов.
При ступеньчатом воздействии нужно настраивать не на среднее квадратичное отклонение, а на время переходного процесса и величину перерегулирования.
Сравнение с ПИД выбрано потому что было в оригинальном тексте. Мне просто интересно было можно ли подбирать параметры одинаковыми методами, для ПИД и Нечеткой логики, оказалось можно.
Но для чистоты эксперемента, там разобран вариант когда Фаззи знает только про положение и скорость (без ускорения) на рисунке 18 приведен, получается похоже на ПИД.
На самом деле есть генерация кода Си готового к укладке в контроллер. Если Расбери Пи то все сложится из коробки, по одной кнопке. Если другой, то нужно руками доработать.
Критерий качества минимизация среднеквадратичного отклонения. Кстати да, если добавить количество перключений (смена занака воздействия) отклонение получается больше, частота колебаний уменьшается.

Но на ступенке все равно вот так:
Как это не работает? Как раз он отлично работает и ведет ракету по процессу с постоянно уменьшающимися отклонениями от 0.015 до 0.005 в конце процесса. Сравнение такое берем процесс и настриваем два регулятора, одинаковой математикой, методом оптимизацией, на данный процесс — они работают практически идентично. Потом с этим же настройками даем даем дургой процесс.
Супенька для ПИД оптимизированного на процесс с постоянной передаточной функцией:
еДелаю коэфициенты постоянными и оптимизирую регулятор:[Информация]: «Оптимизированные параметры = [1, 5.7140452, 10.42809], критерии оптимизации = [0.0062045026]» в объекте Macro3.OptimizeBlock4. Результат процесса такой:
со ступенькой тоже хуже для переменных параметров с коэфициентами из матлаба получается так:
При значения ПИД Kp = 1.587, Ki = 37.0798, Kd = 6.791. Результат управления такой: <img src="" alt=«image»/>
Спасибо! Теперь понятно, сформулирую и добавлю в начале пояснения…
Поправлю позде но пока пояснение:
Красное — воздествие, зеленое — расхождение!
Именно в этом и смысл, поэтому я проверял потом на ступенькой. Методы оптимизации по процессу, подгоняют коэфициенты для минимзации срденеквадратичного отклоения, но только в заданном процессе. Кстати матлабовские методы дают другие коэфиценты настройки: Kp = 1.587, Ki = 37.0798, Kd = 6.791. Но максимальное отклонение ПИД с такими коэфициента больше — 0.025.
Я не слильно разбираюсь в терминологии поэтому использовал термины из книги В.В. Гостева, там он так и пишет передаточная функция ракеты, у которой (функции) во времени меняются параметры.
Дискретный здесь только регулятор, если его убрать, то функция непрерывная.
Ну да, согласн, просто обучение нейронносетки, это и есть потимизация коэфицентов методом градинетного спуска.
Это ракета, во время полета, она сжигает топливо. И одно и тоже отклоенние руля, на начальном и конечном участки пути вызывает разное изменение угла атаки.
Можно, но итерес был в том, что бы сравнить автоматических подбор коэфициентов для ПИД, методом параметрической оптимизации, с таким же методом оптимизации для контроллера на базе нечеткой логики.
Нет после блоков логических мы получаем не дискретную величину, а набор действительных чисел, для каждого терма от 0 до 1 (уменьшать, норма, увеличивать). Пример в тексте «уменьшаем — 0.3; норма — 0.6; увеличиваем — 0.8». Далее у нас есть заданный диапазон регулирующего воздействия (тексте -30, 30), мы задаем:
Если результа (уменьшать — 1, норма — 0, увеличивать -0) значит воздействие — 30.
Если результат (уменьшать — 0, норма — 1, увеличивать -0) занчит воздействие 0.
Если результат (уменьшать — 0, норма — 0, увеличивать -1) занчит воздействие 30.
Во время расчета эти результатв болтаются от 0 до 1 на каждом шаге расчета.
Диапазоне регулирующего воздействия -30..30 результирующие воздействие = 4.1.

Information

Rating
202-nd
Location
Москва, Москва и Московская обл., Россия
Registered
Activity