Модель для исполнения в масштабе реального времени (далее модель реального времени), будет почти всегда отличаться от модели, которая создана для разработки САУ и/или анализа динамики и переходных процессов объекта (далее – десктоп модель). Главное отличие заключается в том, что любая модель реального времени не требует настолько высокой степени детализации, как изначально установлено. Запуск модели на стенде реального времени необходим для анализа поведения САУ реализованной в конечном «железе», а то, как ведут себя те или иные узлы внутри – неважно, поскольку на десктоп модели это уже проверено.


Важный нюанс: между готовой к исполнению в реальном времени моделью и теми математическими функциями, которые будут исполняться на стенде под управлением операционной системы реального времени, еще осуществляются процессы автоматического синтеза C кода, который уже и будет скомпилирован для исполнения на стенде. Таким образом, для достижения конечной цели, а именно соблюдения необходимой скорости и такта исполнения модели, необходима осознанная оптимизация множества настроек. Важно отметить, что при соблюдении стандартов и правил моделирования (в этом вопросе помогут автоматические проверки на эти стандарты) отличия десктоп модели от модели реального времени будут пренебрежимо малы.

Помимо Simulink существуют другие инструменты разработки. Например, использование элементов Simscape, сделает десктопную модель более чувствительной к переводу в модель реального времени. Если сборка импортирована из CAD системы, скажем из Creo, она зачастую будет содержать от 1000 элементов. При запуске модели в десктоп варианте (при этом в ней могут присутствовать гидравлика, силовая электроника, пневматика и сама САУ) она может выполняться довольно продолжительное время. В результате симуляции будут получены отчеты по переходным процессам и анализу в критичных точках - в данном случае детально исследуется сам объект. Просимулировать все сценарии, аварийные ситуации и т.д. не получится, поскольку этот процесс займет месяцы или даже годы, если модель грамотно не упростить до подходящего для решения задачи уровня.

Для отработки алгоритмов САУ прежде всего важно, чтобы модель реагировала на управляющие воздействия в реальном масштабе времени, ведь при реализации на контроллере алгоритмы будут работать именно в реальном времени. Также и модель должна в реальном масштабе времени отвечать на входящие управляющие воздействия. Сложность в том, что модель в несколько тысяч блоков, "импортированная" или смоделированная без учета соответствующих стандартов и правил и неподготовленная для получения исполняемого на стенде кода, не запустится "как есть" в реальном времени.

Услуга «Оптимизация моделей для исполнения в реальном времени» включает:

  • Управляемое изменение уровня детализации десктоп моделей без потери точности их исполнения.
  • Оптимизация десктоп модели для перевода ее в модель реального времени (подбор правильного типа решателя, задание гарантированной точности решения, настройка отдельных блоков (правильная параметризация), проверка на стандарты и правила моделирования, использование рекомендуемых блоков).
  • Настройка генератора кода под специфику модели и подготовка модели к кодогенерации.
  • Мониторинг: профилирование (измерение времени выполнения) модели на КПМ РИТМ. Это обеспечит понимание, достигнут ли режим реального времени именно с объектом заказчика и его моделью.
  • Разработка методологий для работы с моделями реального времени.