exponenta event banner

Повышение скорости и точности

Почему скорость и точность имеют значение для моделирования в реальном времени

Скорость и точность являются определяющими факторами для создания возможностей модели в реальном времени. Модель может работать в режиме реального времени, если она удовлетворяет обоим условиям при моделировании на конкретном целевом оборудовании:

  • Переполнений нет.

  • Результаты моделирования соответствуют критериям точности.

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

  • Выполните моделирование.

  • Ввод и вывод технологического процесса.

  • Выполнение общих задач компьютера.

Переполнение происходит, когда для любого временного шага время, затрачиваемое системой на выполнение задач обработки, превышает предел реального времени для задач. Если целевой компьютер сообщает о перерасходе при его использовании для моделирования модели, модель недостаточно быстра для моделирования в реальном времени.

Модель Simscape™ является точной, если она дает результаты, соответствующие эмпирическим и теоретическим данным, которые являются основой модели. Точность является более субъективной, когда данные основы и моделирования схожи, но не в абсолютном согласии. Чтобы определить, является ли модель достаточно точной для моделирования в реальном времени, когда данные не совпадают полностью, рассмотрите следующие вопросы:

  • Модель представляет явления, которые нужно измерить?

  • Правильно ли оно представляет эти явления?

  • Если вы планируете использовать модель для тестирования конструкции контроллера, достаточно ли точна модель для получения результатов, на которые вы можете положиться при квалификации системы?

Единственный способ проверить, способна ли ваша модель работать в режиме реального времени, это запустить ее на вашем фактическом целевом оборудовании в режиме реального времени с помощью решателей с фиксированными шагами и фиксированными затратами. Однако можно оценить, достаточно ли быстрая и точная модель для моделирования в реальном времени, проанализировав результаты моделирования на рабочем столе. Сведения о том, может ли модель работать в режиме реального времени, см. в разделах Определение размера шага и оценка затрат на вычисления.

Если анализ, полученный при моделировании рабочего стола, показывает, что модель, вероятно, не способна работать в режиме реального времени, увеличьте скорость или точность модели перед развертыванием модели на целевой машине в режиме реального времени. Увеличение скорости моделирования приводит к снижению точности, и, наоборот, увеличение точности снижает скорость. Чтобы модель могла работать в режиме реального времени, соблюдайте баланс между скоростью и точностью.

Скорость и точность балансировки

Скорость и точность моделирования коррелируют с выбором:

  • Точность и объем модели

  • Вычислительная мощность оборудования в реальном времени

  • Время выборки решателя (размер шага) и количество итераций

Чтобы попытаться увеличить скорость моделирования, потенциально за счет точности:

  • Уменьшите точность модели или область действия.

  • Увеличение времени выборки.

  • Уменьшите число итераций решателя.

Чтобы попытаться повысить точность моделирования, потенциально за счет скорости:

  • Повышение точности модели или области видимости.

  • Уменьшение времени выборки.

  • Увеличьте число итераций решателя.

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

Указанный тип решателя также влияет на скорость и точность моделирования. Для моделирования с фиксированным шагом локальные решатели Simscape являются более быстрыми и точными, чем глобальные решатели Simulink ®. Неявные решатели быстрее, но менее точны, чем явные решатели. Однако численная жесткость сети также является определяющим фактором для принятия решения об использовании неявного решателя или явного решателя. Явные решатели дают более точные результаты для численно жестких сетей.

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

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

Устранение эффектов, требующих интенсивных вычислений

Если анализ моделирования рабочего стола показывает, что модель, вероятно, недостаточно быстра для моделирования в реальном времени, устраните эффекты, требующие интенсивных вычислений. Определите в модели элементы, которые вызывают дорогостоящие эффекты, такие как разрывы и быстрые изменения, которые, как правило, замедляют моделирование.

К элементам, вызывающим разрывы, относятся:

  • Жесткие остановки или обратная реакция

  • Трение при проскальзывании

  • Переключатели или муфты

Элементы с небольшими постоянными времени, которые вызывают быстрые изменения, включают в себя:

  • Небольшие массы, прикрепленные к жестким пружинам с минимальным демпфированием

  • Электрические цепи с низкой емкостью, индуктивностью и сопротивлением

  • Гидравлические контуры с небольшими сжимаемыми объемами

Чтобы исключить или изменить элементы, ответственные за эффекты, замедляющие моделирование, используйте следующие подходы:

  • Замените нелинейные компоненты линеаризованными версиями.

  • Замените сложные уравнения таблицами поиска для их решения.

  • Замена сложных компонентов упрощенными моделями.

  • Сглаживание прерывистых функций (изменение шага) с помощью фильтров, задержек и других методов.

Оптимизация локальных и глобальных конфигураций решателей

Вы также можете влиять на скорость и точность моделирования с помощью спецификаций решателя. Уровень точности, который обеспечивает целевая машина в реальном времени, не обязательно коррелирует с определенным размером шага во всех сетях в одной модели. Целевая машина в реальном времени может дать точные результаты для простой сети в модели, но неточные результаты для более сложной сети. Воспользуйтесь возможностью задания различных конфигураций решателя для каждой сети в модели Simscape. Чтобы модель могла работать в режиме реального времени, настройте глобальный решатель с фиксированным шагом и каждый локальный решатель по отдельности.

Сведения о вариантах решателя и определении решателей, которые помогают сделать модель Simscape способной работать в реальном времени, см. в разделе Решатели для моделирования в реальном времени.

Обновление целевого оборудования

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

Моделирование частей системы параллельно

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

Связанные примеры

Подробнее