Настройка физических блоков с помощью целевых значений
Целевые значения настраиваются только у блоков физического моделирования. |
В модели есть параметры, заданные напрямую (например индуктивность и масса), и переменные, которые меняются во времени (например ток и температура). Комбинации значений переменных могут быть неверными (например пружина растянута, но нет усилия), а другие показывают нормальное или переходное состояние системы.
Для просмотра всех целевых значений модели воспользуйтесь окном физических переменных. |
Например, два блока Capacitor с одинаковыми параметрами могут работать по-разному, если у одного блока заданы целевые значения, а у другого — нет (подробнее см. в примере):
|
|
Без целевых значений |
С целевым значением |
Важно отметить, что целевые значения — это не начальные условия. Это ориентиры, которые помогают упростить запуск и настройку модели. |
В начале моделирования Engee вычисляет начальные значения переменных, чтобы определить стартовую точку симуляции. Этот процесс включает нахождение начальных значений для всех переменных системы. Целевые значения позволяют влиять на этот процесс, задавая приоритеты и начальные значения для конкретных переменных на уровне блоков. Это можно сделать в разделе Initial Targets в окне настроек соответствующих блоков, например:
Каждое целевое значение состоит из значения переменной, единицы измерения и приоритета. Здесь Current — численное значение тока через конденсатор. По умолчанию равен 0
, измеряется в амперах и имеет приоритет None
.
Приоритеты целевых значений
Значения, заданные при инициализации переменных на уровне блока, — это не их фактические значения, а целевые значения на старте моделирования. Решатель может достичь некоторых из них, а некоторых — нет. Решатель пытается найти решение которое:
-
полностью удовлетворяет всем высоким приоритетам;
-
максимально приблизить переменные к целевым значениям, начиная с наиболее приоритетных.
Приоритеты определяют, насколько важно для решателя достичь конкретных целевых значений при запуске симуляции:
-
High
(высокий приоритет) — решатель старается точно достичь целевых значений для переменных с высоким приоритетом. -
Low
(низкий приоритет) — после выполнения всех высокоприоритетных целей, решатель старается приблизиться к целевым значениям с низким приоритетом. Точность их достижения зависит от выполнения высоких приоритетов.
Если задать слишком много целевых значений, решатель может не найти точного решения для всех высоких приоритетов или вообще не сможет найти решение. |
Пример
Для наглядной демонстрации работы целевых значений постройте две идентичные модели из блоков:
Настройки блоков оставьте по умолчанию, но для блока Capacitor одной из моделей установите значение параметра Capacitor voltage равное 1
. Для сигнальных линий между блоками Inductor и Capacitor включите запись сигналов как показано на рисунке:
В окне настроек выберите следующие параметры решателя, как показано на рисунке:
Запустите симуляцию модели . В окне графиков представлена симуляция двух электрических схем, каждая из которых представляет собой резонансный контур с индуктивностью и конденсатором, подключенный к источнику сигнала .
Исходя из графика видно:
-
Capacitor-1.v — синяя кривая показывает затухающие колебания напряжения на первом конденсаторе. Это указывает на то, что начальные условия или параметры схемы заданы таким образом, что вызвали резонанс в контуре. Конденсатор имеет целевое значение Capacitor voltage =
1
, что и привело к возникновению затухающих колебаний напряжения. -
Capacitor.v — оранжевая линия показывает, что напряжение на втором конденсаторе практически не изменяется, что может свидетельствовать об отсутствии начальных колебаний, поскольку параметр Capacitor voltage =
0
, что объясняет отсутствие значительных колебаний напряжения.
Сравнение двух моделей показывает, как целевые значения могут значительно влиять на поведение физических систем. Модель с заданным целевым значением демонстрирует затухающие колебания напряжения, в то время как вторая модель остается в состоянии покоя. Это подчеркивает важность корректной настройки целевых значений для достижения желаемого поведения системы.