Моделирование в реальном времени Dymola / Modelica развивается слишком быстро

Я хочу смоделировать модель в Dymola в реальном времени для использования HiL. По результатам я вижу, что моделирование продвигается примерно на 5% быстрее.

Интеграция успешно завершена при T = 691200

Процессорное время для интеграции: 6.57e + 005 секунд

Процессорное время для одного интервала GRID: 951 миллисекунда

Я уже пытался увеличить интервал сетки, чтобы уменьшить относительную ошибку, но все же моделирование продвигается слишком быстро. Я читал только о подходах к уменьшению сложности модели, чтобы позволить моделирование в пределах определенных временных шагов.

Обратите внимание, что моделирование идет в реальном времени и даже быстрее. Как я могу в этом случае сопоставить смоделированное время и реальное время?

Изменить 1:

Я использовал решатель Lsodar с установленной опцией Synchronize with realtime на вкладке Realtime. У меня есть лицензия на моделирование в реальном времени. Я использую Dymola 2013 в Windows 7. Вот результат для шага 15 с:

Интеграция успешно завершена при T = 691200

Процессорное время для интеграции: 6.6e + 005 секунд

Процессорное время для одного интервала GRID: 1,43e + 004 миллисекунды

Отклонение по-прежнему составляет примерно 4,5%.

Однако я не использовал встроенную интеграцию.

Нужна ли мне интеграция в реальном времени или встроенная интеграция для улучшения этих результатов? Должно ли быть возможно получить отклонение ниже 4,5% с использованием мягкого реального времени или нет?

Изменить 2: относительная разница между реальным временем и продвижением моделирования в%

Я взял блок Python27 из библиотеки Berkeley Buildings, чтобы прочитать системное время и сравнить его с прогрессом моделирования. Результат показывает, что через 36 часов после запуска симуляции симуляция немного замедляется (по сравнению с реальным временем). Примерно через 72 часа после начала моделирования он начинает работать примерно на 10% быстрее, чем в реальном времени. Кроме того, по прошествии этих 72 часов увеличивается дрожание результата.

Какие-нибудь объяснения?

Следующими шагами будут: - переход на решатель с фиксированным шагом (может быть, это большая часть решения) - переход с сервера DDE на сервер OPC, что в настоящий момент кажется невозможным в Dymola 2013.

Изменить 3: Относительное отклонение времени моделирования с решателем с фиксированным шагом

Нет ... использование решателя с фиксированным шагом, похоже, решает проблему. В первые 48 часов моделирования отклонение кажется равным отклонению при использовании решателя с переменным размером шага. В этом примере я использовал решатель Rkfix 3 с шагом интегратора 0,1.

Никто не знает, как избавиться от этих огромных отклонений?


person Filou Baguette    schedule 08.01.2014    source источник


Ответы (3)


Если я правильно помню, у Dymola есть специальная опция компиляции для работы в реальном времени. Однако я думаю, что это лицензионный вариант (не уверен).

person Michael Tiller    schedule 09.01.2014
comment
Да, на вкладке реального времени вы можете установить флажок «Синхронизировать с реальным временем», что я и сделал. У меня есть вариант лицензии. Однако реальное время и время моделирования отклоняются примерно на 5%, и я не знаю почему. Моделирование происходит быстрее, чем в реальном времени, и не ждет его. - person Filou Baguette; 09.01.2014

Я подозреваю, что Димола набирает неправильную тактовую частоту.

Вы можете использовать «Фактор замедления», который находится в настройке моделирования, на вкладке «Реальное время» чуть ниже «Синхронизировать с реальным временем». Установите значение 1 / 0,95.

В Dymola есть параметр, который вы можете использовать для установки скорости процессора, но я не смог найти его сейчас, я еще раз посмотрю его позже.

person user2024223    schedule 10.01.2014
comment
Привет! Как вы видите в моей обновленной задаче, простой фактор, к сожалению, не поможет. Кажется, что скорость моделирования со временем меняется. Если начать немного медленнее, то в конце концов имитация станет быстрее, чем в реальном времени. Но большое спасибо за вашу идею !! - person Filou Baguette; 17.01.2014

Решил проблему переходом на встроенный OPC-сервер. Ошибка между реальным временем и временем моделирования в этом случае показана ниже. Ошибка синхронизации для моделирования со встроенным OPC-сервером

Для компиляции задач Dymola со встроенным OPC-сервером требуются права администратора (которых у меня раньше не было). Активная папка Dymola не должна быть защищена от записи.

person Filou Baguette    schedule 29.01.2014