Мне нужны некоторые рекомендуемые методы для повышения неудовлетворительной эффективности приложений реального времени.
Эффективность во время выполнения и сокращение времени выполнения задачи (TET) модели зависят от проекта модели, емкости целевого компьютера и использования целевого компьютера.
Можно улучшить эффективность во время выполнения и уменьшить время выполнения задачи (TET) модели с помощью этих методов.
Используйте следующие инструменты эффективности:
Чтобы профилировать выполнение приложения реального времени, используйте startProfiler
команда.
Чтобы запустить профилировщик и построить график результатов, используйте plot
функция.
Для получения дополнительной информации смотрите Профилирование выполнения для приложений реального времени.
Можно улучшить эффективность во время выполнения, настроив модель, чтобы использовать преимущества многоядерного целевого компьютера:
Разбейте модель на подсистемы в соответствии с физическими требованиями системы, которую вы моделируете. Установите скорость выборки блоков в каждой подсистеме на самую низкую скорость, которая удовлетворяет физическим требованиям системы.
В диалоговом окне Параметры конфигурации на панели Solver установите флажок для Treat each discrete rate as a separate task.
Щелкните Configure Tasks, а затем установите флажок Enable explicit model partitioning for concurrent behavior.
Создайте задачи и триггеры, а затем явным образом присвойте задачи разделы подсистемы. Смотрите раздел вашей модели используя явное разбиение и многоядерное программирование с Simulink.
Запустите приложение реального времени.
Примечание
Не используйте блоки MATLAB System на верхнем уровне моделей Simulink Real-Time, в которых выполнение задачи явно секционировано. Эти блоки генерируют ошибку TLC при создании приложения реального времени, например:
"Unable to find TLCBlockSID within the Block scope"
Можно улучшить эффективность во время выполнения путем минимизации модели, чтобы сделать больше памяти и Циклы ЦП доступными для приложения реального времени:
На панели Solver увеличьте Fixed-step size (fundamental sample time). Выполнение с коротким шагом расчета может перегрузить центральный процессор.
Используйте режим опроса. См. «Режимы выполнения».
Уменьшите количество каналов ввода-вывода в модели.
Для получения дополнительных указаний см. следующие источники:
MathWorks® Техническая поддержка: сайт справочного центра MathWorks
MATLAB® Ответы: www.mathworks.com/matlabcentral/answers/?term=Simulink+Real-Time
MATLAB Central: www.mathworks.com/matlabcentral
По вопросам оборудования Speedgoat обратитесь в службу технической поддержки Speedgoat: www.speedgoat.com/support.