5.2.1. Пакет MATLAB/Simulink
Система математического моделирования MATLAB/Simulink является в настоящее время одним из наиболее популярных инструментов численных расчетов и применяется в различных областях знаний [7,8].
Главная особенность среды MATLAB — тщательная проработан-ность и отлаженность всего богатейшего арсенала средств и методов. Возможности MATLAB закрывают большую часть потребностей разработчиков систем управления в различных областях техники. Обширный набор различных численных методов в сочетании с мощными средствами графической визуализации делает MATLAB универсальным инструментом инженерных расчетов и научных исследований.
Серьезными достоинствами среды MATLAB являются ее открытость и расширяемость. Большинство команд и функций системы реализованы в виде текстовых m-файлов (файлов с расширением .m) и файлов на языке Си, причем все файлы доступны для модификации. Это позволяет пользователю создавать не только отдельные файлы, но и целые библиотеки файлов, формируя, таким образом, собственную предметно-ориентированную среду моделирования.
Такой подход используется и самими разработчиками среды MATLAB, что нашло отражение в создании десятков пакетов прикладных программ, намного расширивших сферы применения системы.
Важнейшей составляющей среды MATLAB является пакет структурного моделирования динамических систем Simulink. Разработку этого пакета можно рассматривать как принципиальную модернизацию среды MATLAB, в результате которой она приобрела все черты современной САМ – компонентное моделирование, графическая форма задания информации об объекте и т.п. Simulink настолько органично интегрирован с системой MATLAB, что, рассматривая современные средства исследования технических систем, логично говорить о среде визуального компонентного моделирования MATLAB/Simulink.
На базе пакета Simulink разработаны дополнительные библиотеки блоков для разных областей применения (например, Power System Blockset – моделирование электротехнических устройств, Digital Signal Processing Blockset – набор блоков для разработки цифровых устройств, Control System Toolbox – пакет для разработки систем управления и т.д.). Можно ожидать, что такая политика будет продолжена и в следующих модификациях среды MATLAB появятся новые предметно-ориентированные библиотеки.
При моделировании в Simulink пользователь может воспользоваться достаточно широкой палитрой методов решения дифференциальных уравнений, а также выбрать способ изменения модельного времени (с фиксированным или переменным шагом), что позволяет проводить моделирование для широкого круга систем, включающих непрерывные, дискретные и гибридные системы любой размерности. Отдельное направление исследований связано с возможным переходом в область линеаризованных систем, где реализован весь арсенал методов линейного анализа. Средства визуализации дают возможность следить за процессами, происходящими в системе. Для этого используются специальные устройства наблюдения, входящие в состав библиотеки Simulink. Результаты моделирования могут быть представлены в виде графиков или таблиц.
Базовая библиотека Simulink содержит более 200 блоков, наиболее часто встречающихся при моделировании различных систем. Дополнительные библиотеки позволяют расширить возможности Simulink для применения в аэрокосмической области, обработке сигналов, связи и в других приложениях.
Библиотеки блоков MATLAB/Simulink могут пополняться за счет подпрограмм, написанных как на языке среды MATLAB, так и на языках С++, Fortran и Ada. Кроме того, в нем реализована процедура инкапсуляции, являющаяся еще одним удобным для пользователя средством расширения библиотек
Недостатки MATLAB/Simulink являются общими для всех инструментов структурного моделирования. Как во всех подобных пакетах при создании сложных моделей приходится строить довольно громоздкие многоуровневые блок-схемы, не отражающие естественной структуры моделируемой системы. Частично, этот общий недостаток пакетов структурного моделирования устраняется использованием приложений, в которых реализован принцип физического мультидоменного моделирования, таких как SimMechanics и SimPowerSystems, обеспечивающих возможность построения механических и электрических систем соответственно. А также тем, что разработчики большинства современных пакетов физического мультидоменного моделирования предусматривают возможность подключения библиотек Simulink.
5.2.2. Пакет VisSim
VisSim – пакет компонентного визуального моделирования фирмы Visual Solutions, предназначенный для разработки и моделирования динамики непрерывных, дискретных и гибридных систем [12]. По своим функциональным возможностям и способу задания исходной информации VisSim близок пакету MATLAB/Simulink. Simulink получил несколько большее распространение, тем не менее, VisSim имеет немало почитателей и занимает заметную долю рынка инженерных пакетов.
VisSim – один из наиболее ярких представителей систем, реализующих концепцию структурного моделирования. Основным инструментом задания моделей являются типовые блоки «вход-сосотояние-выход». Подобно MATLAB/Simulink каждый типовой блок VisSim реализует математическую модель или обеспечивает визуализацию того или иного явления, процесса или устройства. Базовая библиотека VisSim содержит более 100 линейных и нелинейных блоков, позволяющих моделировать весьма сложные системы и сгруппированных по функциональному признаку.
Большинство библиотечных блоков-подпрограмм написаны на языке C++, однако пакет предоставляет возможность создавать пользовательские библиотеки практически на любом процедурном языке программирования. Процедура инкапсуляции дает возможность пользователю VisSim создавать новые блоки (подсистемы), основываясь на уже существующих блоках.
Как и Simulink, VisSim имеет широкий набор инструментов оценки качества, устойчивости, синтеза, коррекции, оптимизации, линеаризации, отладки объектов в контуре модели и программирования цифровых сигнальных процессоров.
Решатель VisSim интерпретирующего типа, функционирует в динамическом режиме с возможностью online-взаимодействия с оборудованием реального времени. В составе пакета решателя VisSim реализованы как явные, так и неявные решатели.
Возможности моделирования гибридных систем в пакете VisSim примерно аналогичны Simulink, если не учитывать пакет расширения StateFlow. VisSim не работает с понятием карты состояния Харелла. Он предназначен прежде всего для моделирования непрерывных систем. Общим принципом гибридного моделирования в VisSim является использование готовых гибридных блоков или переключение заранее заготовленных альтернативных участков блок-схем. Однако не исключено, что в ближайшее время появится соответствующее расширение, аналогичное StateFlow.
В качестве ограничений пакета VisSim можно отметить отсутствие альтернатив языку блок-схем. Однако для моделирования технических систем это не является столь уж серьезным недостатком.
Кроме того, VisSim не соответствует требованиям объектно-ориентированного моделирования, не поддерживает наследование, динамическое изменение количества объектов. Тем самым он не дает возможности моделировать систему с меняющимся во времени количеством объектов.
Подобно Simulink, пакет VisSim включает в себя ряд дополнительных модулей, расширяющих его возможности в конкретных предметных областях, а так же инструменты интеграции с пакетами MATLAB, Mathcad и транслятор проектов программы Simulink.
5.2.3. Пакет МВТУ
Из отечественных программных продуктов визуального моделирования технических систем наиболее развитым в настоящее время является пакет, или, как его называют авторы – программный комплекс «Моделирование в технических устройствах» (ПК «МВТУ»), созданный в МГТУ им. Н.Э. Баумана [17,18].
Программный комплекс «МВТУ» реализует структурное моделирование и предназначен для исследования динамики и проектирования разнообразных технических систем и устройств. Авторы считают его альтернативой программным продуктам Simulink, VisSim и др. Действительно, ПК обладает всеми основными достоинствами современных средств визуального моделирования, хотя его функциональные возможности существенно уже, чем у вышеупомянутых пакетов. Удобный редактор структурных схем, обширная библиотека типовых блоков и встроенный язык программирования позволяют реализовывать модели высокой степени сложности, обеспечивая при этом наглядность их представления. Для отечественных пользователей удобство работы с ПК «МВТУ» обусловлено также русскоязычным интерфейсом и наличием обширной документации на русском языке.
Судя по литературным источникам, ПК «МВТУ» успешно применяется для проектирования систем автоматического управления, следящих приводов и роботов-манипуляторов, ядерных и тепловых энергетических установок. Он может функционировать в многокомпьютерных моделирующих комплексах, в том числе и в режиме удаленного доступа к технологическим и информационным ресурсам.
ПК «МВТУ» реализует такие режимы работы как моделирование процессов в непрерывных, дискретных и гибридных динамических системах, в том числе при наличии обмена данными с внешними программами и устройствами; оптимизация показателей качества; анализ и синтез по линейным моделям; контроль и управление с использованием виртуальных аналогов пультов управления с измерительными приборами и управляющими устройствами.
Основными особенностями ПК, делающими его современным программным продуктом и ставящими его в один ряд с аналогичными по назначению зарубежными пакетами, являются:
- принцип вложенности структур, что особо актуально при моделировании сложных динамических систем;
- наличие достаточно полной общетехнической и ряда специализированных библиотек типовых блоков;
- обширный набор алгоритмов численного интегрирования;
- открытость, позволяющая пользователю расширить состав личной библиотеки путем создания новых типов блоков.