К этой «компиляции» у Simulinк много вопросов. Например вот в этом примере явно плохо отрабатывает алгоритм сортировки блоков, хотя пример совсем не сложный и на первый взгляд не имеет проблем. видео сравнения
Все верно, только вопрос времени и наглядности. В этом случае пришлось бы прикручивать чужой код на Фортране (двигатель) чужой код на Паскале (Гидравликa) алгоритмы в SimInTech к Simulink. Задача небольшого проекта месяцев так на 2-5. Зачем? Что бы оптимизировать? Так проще специализированные оптимизаторы прицепить к модели общей SimInTech.
Поэтому и называется текст. Скрестить ежа и ужа. Подсунуть незнакомую модель методам управления и посмотреть что получится. И сейчас скорее всего авиационные двигатели управляются так же. Но вот когда на их базе делают наземные возможно применения и электрических клапанов (наверное)
Всякие сбросы задержки у ухищрения конечно есть, но скорее всего дело в том, что при снижении оборотов работать приходится при почти закрытом клапане и там малое перемещение вызывает большое изменение расхода в гидравлической системе и идет раскачивание. (это версия)
Да хотя бы с того, что течение жидкости в трубе у учетом всех использованных уравнений в данной модели, нельзя повторить средствами Simulink
(для примера использование в модели уравнение сохранения импульса выглядит так:
"
Подробнее здесь...
А сам Симулинк плохо переносит увеличение количества блоков в модели за 500
Это не простой перебор. Выдержка из описания алгоритма оптимизации:
"… Реализуется алгоритм квадратичной интерполяции при одном оптимизируемом параметре (n = 1) и алгоритм преобразований вращения и растяжения-сжатия (n > 1).
Рассмотрим алгоритм при n > 1. Он основан на выполнении преобразований растяжения — сжатия и преобразований вращения для такого преобразования системы координат, при котором матрица вторых производных (матрица Гессе) приближается к единичной, а направления поиска становятся сопряженными. Этот алгоритм использует квадратичную интерполяцию…
Пусть H — симметричная положительно-определенная матрица. Будем строить последовательность матриц..."
Подробнее здесь...
А оптимизатор подбирает на всем переходном процессе. Расситывается среднеквадратичное оклонение и подбираются коэфиценты такие что бы оно было минимальным. Метод побора и для ПИД и для НЛ одинаковый.
Ну не совсем уж 100% закономерный. В пример выше подбираются коэфиценты для оптимизации под плавный процеес разгона, а потом проверяются на сткпенчатом воздействии. Нечеткая логика — разлетелась, а ПИД справился.
В случае другой модели произшло наоборот, нечеткая логика настроенная на увеличение частоты, справилась и с снижением. А ПИД настроенный на повышение частоты при снижении не сработал.
Понятно, что дело в том, что модель на низких оборотах ведет себя не так как на высоких, но нечеткий регулятор работает.
Конечно нет. Я настроил оптимизатором регулятор на повышение оборотов в модели с 3600 до 3 900. А потом этим же регулятором попытался опустить обороты до 2 100. На графиках результат.
видео сравнения
Все верно, только вопрос времени и наглядности. В этом случае пришлось бы прикручивать чужой код на Фортране (двигатель) чужой код на Паскале (Гидравликa) алгоритмы в SimInTech к Simulink. Задача небольшого проекта месяцев так на 2-5. Зачем? Что бы оптимизировать? Так проще специализированные оптимизаторы прицепить к модели общей SimInTech.
"
(для примера использование в модели уравнение сохранения импульса выглядит так:
"
Подробнее здесь...
А сам Симулинк плохо переносит увеличение количества блоков в модели за 500
"… Реализуется алгоритм квадратичной интерполяции при одном оптимизируемом параметре (n = 1) и алгоритм преобразований вращения и растяжения-сжатия (n > 1).
Рассмотрим алгоритм при n > 1. Он основан на выполнении преобразований растяжения — сжатия и преобразований вращения для такого преобразования системы координат, при котором матрица вторых производных (матрица Гессе) приближается к единичной, а направления поиска становятся сопряженными. Этот алгоритм использует квадратичную интерполяцию…
Пусть H — симметричная положительно-определенная матрица. Будем строить последовательность матриц..."
Подробнее здесь...
Да перебор параметров блоком оптимизации по критерию минимизации среднеквадратичного отклонения.
Но и нечеткая логика настроена таким же методом.
В случае другой модели произшло наоборот, нечеткая логика настроенная на увеличение частоты, справилась и с снижением. А ПИД настроенный на повышение частоты при снижении не сработал.
Понятно, что дело в том, что модель на низких оборотах ведет себя не так как на высоких, но нечеткий регулятор работает.