Рисунок показывает рабочий процесс подготовки модели реального времени.
Модель с поддержкой реального времени является и быстрой, и точной. Когда вы моделируете модель с поддержкой реального времени на вашей машине реального времени, она запускается до своего завершения и генерирует результаты, которые соответствуют вашим ожиданиям, на основе теоретических моделей и эмпирических данных. Единственный способ определить, способна ли ваша модель в реальном времени, - запустить ее на своей машине реального времени. Можно, однако, использовать симуляцию рабочего стола, то есть симуляцию на вашем компьютере разработчика, чтобы определить вероятность того, что ваша модель способна в реальном времени, прежде чем развертывать ее.
Рабочий процесс подготовки модели реального времени является первым из двух рабочих процессов, которые вы выполняете на своем компьютере разработчика, чтобы сделать более вероятным, что ваша модель способна в реальном времени. Рабочий процесс показывает, как настроить размер или точность вашей модели, чтобы улучшить скорость без ущерба и точности. Когда вы закончите этот процесс, используйте рабочий процесс симуляции в реальном времени, чтобы найти лучшее строение решателя с фиксированными и фиксированными затратами, которая будет использоваться для симуляции вашей модели в реальном времени.
Используйте эмпирические или теоретические данные для разработки и создания модели Simscape™. Использование Simulink® глобальный решатель переменной для симуляции вашей модели. Уточните свою модель по мере необходимости, чтобы получить результаты симуляции, которые поддерживают базовые данные. Ссылки результаты обеспечивают базовый уровень для оценки точности модели по всем этапам подготовки модели и рабочих процессов симуляции в реальном времени.
Переполнение происходит, когда размер шага слишком мал, чтобы позволить компьютеру в реальном времени выполнить всю обработку, необходимую для любого одного шага. Если ваша модель требует размер шага, который настолько мал, что, вероятно, вызовет переполнение, то ваша модель недостаточно быстрая для симуляции в реальном времени. Чтобы определить, могут ли небольшие шаги вызвать переполнение, создайте график размера шагов, которые решатель шага переменной использует для выполнения симуляции вашей модели. График размера шага говорит вам количество и размер небольших шагов, которые решатель использует во время симуляции.
Нет жестких метрик для размера или количества небольших шагов, которые могут вызвать переполнение симуляции в реальном времени. Перемещение вашей модели от симуляции рабочего стола к симуляции в реальном времени является итеративным процессом. Процесс, который включает изменение, симуляцию и анализ вашей модели, помогает вам определить, являются ли небольшие шаги в вашей модели ограничивающими по времени или достаточно многочисленными, чтобы заставить переполнение.
Опыт, который вы получаете, симулируя различные модели на своей машине в реальном времени, может также помочь вам решить, могут ли небольшие шаги в вашей модели привести к переполнению. Например, рассмотрим случай с двумя моделями, M1 и M2, и двумя различными процессорами в реальном времени, RT1 и RT2. Процессоры RT1 и RT2 имеют одинаковую номинальную скорость обработки. Модели M1, механическая модель и M2, электрическая модель, оба имеют несколько шагов, которые составляют 1e-15 секунд. Возможно, M1 модели моделируют с достаточно точными результатами на RT1 процессора в реальном времени, но несут переполнение или моделируют с недостаточно точными результатами на RT2 процессора в реальном времени. Также возможно, что M1 модели запускается до своего завершения с точными результатами на RT1 и RT2, в то время как M2 модели генерирует переполнение на обоих процессорах. Эти сценарии возможны, потому что различные топологии модели дают разную динамику и потому что номинальная скорость обработки не является единственным определяющим для времени выполнения симуляции. Другие факторы, такие как операционная система и строение ввода-вывода, также влияют на то, как выполняется симуляция на процессоре в реальном времени. Знакомство с динамикой системы и степенью обработки вашего оборудования в реальном времени может помочь вам принять решение, когда вы оцениваете влияние размеров небольшого шага на жизнеспособность модели в реальном времени.
Измените модель, чтобы увеличить скорость или точность, если ваш анализ указывает, что симуляция в реальном времени с моделью, вероятно, будет иметь переполнение или привести к недостаточно точным результатам.
Когда вы оцениваете риск переполнения, если вы обнаруживаете, что в симуляции используется слишком много небольших шагов, используйте эти подходы для улучшения скорости симуляции:
Уменьшите вычислительные затраты.
Уменьшите числовую жесткость.
Уменьшите нулевые пересечения.
Уменьшите быструю динамику
Разбейте модель на разделы для параллельной обработки.
Когда вы оцениваете точность модели, если вы обнаруживаете, что результаты симуляции не соответствуют результатам ссылки, используйте эти подходы для повышения точности модели:
Лучшие практики Simulink для моделирования динамических систем
Simscape необходимые техники моделирования
Используя решатель глобальной переменной Simulink, получите результаты для измененной версии вашей модели.
График размера шага также помогает вам:
Оцените максимальный размер шага, который будет использоваться для решателя с фиксированным шагом, чтобы достичь точных результатов во время симуляции в реальном времени.
Идентифицируйте точные моменты, когда разрывы или быстрая динамика замедляют симуляцию.
Сравните результаты симуляции на целевом компьютере с вашими ссылками результатами. Являются ли результаты эталонной и модифицированной модели одинаковыми? Если нет, достаточно ли они похожи, чтобы эмпирические или теоретические данные также поддерживали результаты симуляции измененной модели? Измененная модель, представляющая явления, которые вы хотите измерить? Правильно ли это представляет эти явления? Если вы планируете использовать свою модель, чтобы протестировать проектирование контроллера, является ли модель достаточно точной, чтобы получить результаты, на которые можно положиться для проверки системы? Ответы на эти вопросы помогают вам решить, достаточно ли точны результаты в реальном времени.
Когда результаты моделирования переменных указывают, что ваша модель имеет скорость и точность, необходимые для обработки в реальном времени, можно использовать Рабочий процесс симуляции в реальном времени, чтобы сконфигурировать свою модель для симуляции с фиксированной и фиксированной стоимостью.
Соединитель является точкой входа для возврата к рабочему процессу подготовки модели реального времени из другого рабочего процесса (для примера, рабочего процесса симуляции в реальном времени или рабочего процесса симуляции оборудования в цикле).
Возможно, что вашей машина реального времени не хватает вычислительных возможностей для запуска вашей модели в реальном времени. Если после нескольких итераций рабочего процесса нет уровня сложности модели, который делает вашу модель способной в реальном времени, рассмотрите эти опции для увеличения вычислительной степени: