Rambler's Top100 II Всероссийская конференция пользователей MATLAB >>
На первую страницу
Рубрика Matlab&Toolboxes
Российские MATLAB-разработки
Раздел "Simulink"

И.В.Черных. "Simulink: Инструмент моделирования динамических систем"

  В оглавление книги \ К следующему разделу \ К предыдущему разделу

15. Обзор набора инструментов Simulink Performance Tools

Simulink Performance Tools включает четыре приложения, которые расширяют возможности Simulink и существенно увеличивают производительность программы. Использование этих инструментов может значительно повысить скорость процесса моделирования. Пользователь получает инструмент для сравнения разных вариантов модели, а также для быстрого тестирования модели.

Набор инструментов содержит:

  • Simulink Accelerator, ускоряющий моделирование, благодаря использованию скомпилированного кода вместо того, чтобы запускать модель в режиме интерпретатора.
  • Simulink Model Profiler, собирающий данные о производительности в ходе выполнения модели и генерирующий отчет со списком информации о времени выполнения для каждой составляющей в детальной и обобщенной формах.
  • Simulink Model Coverage, помогающий улучшить модель и определить области повышенного риска в моделях Simulink и Stateflow. Приложение генерирует детальный HTML отчет, показывающий какие блоки, состояния и условия были выполнены в ходе имитации.
  • Simulink Model Differencing, позволяющий сравнить две модели Simulink и генерирующий графическое изображение различий.

15.1. Simulink Accelerator

Simulink Accelerator использует технологию генерации кода и пользовательский компилятор языка C для создания выполняемого файла (dll-файла), который заменяет интерактивный код, обычно используемый программой Simulink (в состав программы Simulink входит собственный компилятор lcc).

Simulink Accelerator обеспечивает:

  • Имитацию приблизительно в 2 – 10 раз более быструю, чем в нормальном (не ускоренном режиме). Степень повышения производительности связана с размером и сложностью модели. Увеличение размера или сложности обычно приводит к увеличению степени производительности.
  • Тесную интеграцию с наборами блоков Simulink. Simulink Accelerator полностью совместим с наборами блоков Simulink. В частности, с Fixed-Point Blockset, Power System Blockset и DSP Blockset.
  • Поддержку отладчика Simulink. Процесс отладки больших и сложных моделей значительно ускоряется.
  • Доступ из программ. Контроль за выполнением модели может быть осуществлен из командной строки MATLAB или из m-файлов.

Для перехода в ускоренный режим расчета необходимо в меню Simulation выбрать пункт Accelerator. После запуска модели на расчет будет произведена компиляция модели и выполнен расчет. При повторных запусках, если структура модели не менялась, компиляция выполнятся не будет, а будет сразу производиться расчет. При изменении параметров блоков повторная компиляция также не производится. Для возврата в обычный режим расчета следует меню Simulation выбрать пункт Normal.

При использовании ускоренного режима расчета следует иметь в виду, что модели, имеющие замкнутые алгебраические контуры, не могут быть рассчитаны в этом режиме.

15.2. Simulink Model Profiling

Simulink Model Profiling собирает данные о производительности в процессе выполнения модели и затем генерирует отчет, называемый профилем имитации на основании собранных данных. Этот отчет состоит из двух HTML-файлов: обобщающий файл и детальный файл. Обобщающий файл аккумулирует временную информацию и выводит ее в список, упорядоченный по временам выполнения для каждого метода. Детальный файл показывает, как много времени использует Simulink выполняя каждый метод, требующийся для моделирования, включая производные и основные методы.

Для выполнения профилирования необходимо выполнить команду Profiler в меню Tools и запустить модель на расчет. По завершении расчета будет открыт файл отчета в окне справочной системы. Гиперссылки в отчете позволяют просмотреть детальную информацию для каждого метода. В результате пользователь может легко локализовать области модели, которые требуют наибольшего времени выполнения и быстро определить, где необходимо сконцентрировать усилия по оптимизации. На рис. 15.1 приведен пример модели и фрагмент отчета профилирования для нее.

Рис. 15.1 Пример модели и отчета профилирования.

[Скачать пример]

15.3. Simulink Model Coverage

При разработке больших моделей, имеющих сложную логику переключения путей по которым распространяются сигналы, пользователь может столкнуться с проблемой тестирования модели. В ходе тестирования пользователь обычно пытается разработать тест, который охватывал бы все возможные пути, чтобы быть уверенным, что модель полностью проверена. Simulink Model Coverage помогает проверить эффективность подобных проверочных тестов. Используя Simulink Model Coverage, пользователь может интерпретировать поведение модели внутри индивидуальных блоков Simulink и объектов Stateflow, определить степень выполнения имитации (за счет вычисления количества выполнений каждого из блоков), а также идентифицировать избыточность или недостаточность частей модели. Для определения полноты тестирования модели возможна комбинация данных, полученных из разных имитаций.

Simulink Model Coverage обеспечивает:

  • Охват блоков Simulink и объектов Stateflow.
  • Генерацию HTML документа, который представляет собой полный отчет по выполнению частей модели.
  • Сохранение и загрузку данных охвата между сеансами имитации.
  • Поддержку интерфейса для ввода команд, который автоматизирует выполнение имитаций и сбор данных.

Simulink Model Coverage позволит получить необходимый уровень тестирования разработки и определить количество тестов, необходимых для полной проверки. Анализ набора тестов в ходе разработки существенно уменьшает риск дефектов конструкции на поздних стадиях создания модели.

Для использования Simulink Model Coverage необходимо задать параметры отчета с помощью пункта Coverage Setting меню Tools. После выполнения моделирования будет открыт файл отчета в окне справочной системы.

На рис. 15.2 приведена схема модели и отчет, полученный я помощью Simulink Model Coverage. Из рисунка видно, что при данных параметрах схемы выполняется тестирования только 50% модели. Для полной проверки модели необходимо, чтобы сигнал, подаваемый на управляющий вход ключа менял свою полярность.

Рис. 15.2 Пример модели и отчета, полученного с помощью

Simulink Model Coverage

[Скачать пример]

15.4. Simulink Model Differencing

Simulink Model Differencing сравнивает две Simulink-модели и генерирует графическое изображение различий между ними. На данном изображении выделяются одинаковые блоки моделей, имеющие различные атрибуты (красным цветом) и блоки, которые присутствуют только в одной из двух моделей (синим цветом). Пользователь может настроить изображение, чтобы просмотреть только блоки с графическими различиями, только блоки с неграфическими отличиями или блоки с любыми отличиями. Для выполнения сравнения моделей необходимо выполнить команду Model differences\Merge/Compare two models из меню Tools окна первой модели и в процессе диалога выбрать файл второй модели. Возможно также выполнить сравнение текущего состояния модели и ее последней записи на диске.

На рис. 15.3 показан пример сравнения моделей.

Рис. 15.3. Cравнение моделей с помощью Simulink Model Differencing

[Скачать пример]

В оглавление книги \ К следующему разделу \ К предыдущему разделу


О получении локальных копий сайтов
  Всероссийская научная конференция "Проектирование научных и инженерных приложений в среде MATLAB" (май 2002 г.)
На первую страницу \ Сотрудничество \ MathWorks \ SoftLine \ Exponenta.ru \ Exponenta Pro   
E-mail: info@matlab.ru   
  Информация на сайте была обновлена 10.11.2003 Copyright 2001-2003 SoftLine Co 
  

 

Rambler's Top100    TopList   
Сайт управляется системой uCoz