Сетевое издание
Международный студенческий научный вестник
ISSN 2409-529X

SIMULINK И MATLAB SYSTEM IDENTIFICATION TOOLBOX – ИНСТРУМЕНТАРИЙ СОВРЕМЕННОГО ИНЖЕНЕРА

Гарбарт А.И. 1 Саенко Я.Д. 1
1 Сибирский федеральный университет
В данной статье рассматривается вопрос об актуальности использования Simulink и Matlab в качестве инструментария современного инженера. Нами было проведёно функциональное сравнение Matlab с его прямыми и косвенными конкурентами: Mathematica, Scilab, Maxima и Microsoft Excel. Сравнение проводилось по шести критериям: наличие встроенного языка программирования, наличие функций линейной алгебры, возможности анализа данных и математической статистики, решение многочленов, решение дифференциальных уравнений и наличие аналога Simulink. По итогам исследования мы пришли к выводу, что из-за отсутствия аналога Simulink Mathematica, Maxima и Microsoft Excel не являются серьёзными конкурентами для Matlab. А так же было проведено качественное сравнение Simulink с его прямыми конкурентами: Scicos (входящего в пакет Scilab) и VisSim. Сравнение проводилось по трём критериям качества программного обеспечения: сопровождаемость, совместимость и портирование. По итогам исследования был сделан вывод, что Simulink является самым качественным из предложенных пакетов. Таким образом, мы пришли к выводу, что и Matlab, и Simulink являются одними из наиболее востребованных пакетов в своей области.
MatLab
Simulink
инженерное дело
математическое моделирование
1. Евдокимов И. В. Математическое и программное обеспечение идентификации нелинейных динамических объектов при использовании суммы гармонических сигналов: Дис. … канд. техн. наук. - Братск, 2006. - 135 с.
2. Евдокимов И. В. Аспекты внедрения информационных технологий на предприятиях г. Братска // Труды Братского государственного университета, Серия: Экономика и управление, 2006. Т. 1. С. 144-148.
3. Евдокимов И. В., Коваленко М. А., Мелех Д. А. Управление разработкой и внедрением учётной информационной системы // Научное обозрение. Экономические науки. 2017. № 4. С. 34-39.
4. Евдокимов И. В., Ященков К. Г., Телков А. Ю., Татауров В. А. Экспертные методы оценки трудоёмкости разработки программных проектов // Экономика и менеджмент систем управления. 2017. Т. 24. № 2.2. С. 272-276.
5. Евдокимов И. В. Процедура идентификации как этап создания систем управления и принятия решений // Проблемы социально-экономического развития Сибири. 2012. № 4. С. 14-18.
6. Ильюшин И. А., Евдокимов И. В. Программное обеспечение идентификации экономических нелинейных динамических систем в классе блочно-ориентированных моделей // Современные информационные технологии. 2016. № 23 (23). С. 21-24.
7. Данилов С. Н. Scicos. Пакет Scilab для моделирования динамических систем // ТГТУ, 2011. – 5 с.
8. Евдокимов И. В., Михалев А. С., Отто А. М. Применение Matlab System Identification Toolbox для построения математических моделей класса фильтр Заде // Системы. Методы. Технологии. 2017. № 3 (35). С. 64-70.
9. Евдокимов И. В., Михалев А. С., Новиков О. С., Суханова А. В. Применение свободных лицензий для разработки программного обеспечения в России // Международный журнал прикладных и фундаментальных исследований. 2017. № 6-1. С. 33-36.
10. Евдокимов И.В., Кулаков Е.Д. Применение метода наискорейшего спуска в одном биоинспирированном алгоритме // Приборы и системы. Управление, контроль, диагностика. 2017. № 8. С. 10-13.
11. Евдокимов И.В., Кулаков Е.Д. Применение метода наискорейшего спуска в одном биоинспирированном алгоритме // Приборы и системы. Управление, контроль, диагностика. 2017. № 8. С. 10-13.

Введение

Инженерное дело тесно связано с развитием науки и средств обработки информации. Благодаря большим вычислительным мощностям современных компьютеров, область деятельности и скорость выполнения задач современных инженеров увеличились. Кроме того, появились новые задачи, которые должен уметь решать каждый инженер, например: интегрирование системы,  изменение частей модели, симуляция взаимодействия отдельных элементов и целой системы, симуляция ошибок, взаимодействия аппаратной и программной частей, расчет рисков до реализации продукта в реальной жизнь как показано в работах [1 – 3]. Для этого используются новые инструменты, список которых тоже расширился удобными средствами расчетов, существует больше количество программ [5 – 7]: Scilab, Maxima, Mathematica, Microsoft Excel, Matlab.

Разнообразие средств работы позволяет инженеру выбрать какой инструмент использовать. На его выбор действует большое количество факторов: спектр решаемых задач, удобство использования, скорость работы, актуальность инструмента и его поддержка разработчиком. Наиболее популярным является Matlab System Identification Toolbox и  его пакет Simulink. Речь в данной статье пойдёт о актуальности использования данного инструментария современными инженерами.

Цель работы

Данная работа ставит перед собой задачу сравнить Matlab и Simulink с их прямыми и косвенными конкурентами (Mathematica, Scilab, Maxima и Microsoft Excel для Matlab и Scicos и VisSim для Simulink), причем не только по критериям качества программного обеспечения, но и по функциональным критериям. На основание проведенных исследований мы сделаем вывод о разумности использовании Matlab и Simulink в качестве основных рабочих инструментов современного инженера.

Материалы и методы

Simulink – это инструмент для имитирование и анализа динамических систем, в виде графов при помощи блок-схем из различных библиотек. При его использовании пользователь ощущает простоту и удобство, так как реализован принцип визуального программирования. Возможность модернизации и создания собственных библиотек позволяет решать большое количество задач, таких как разработка модели, проверка и генерация кода, а также тестирование сложной системы. Готовые результаты могут иметь вид таблиц или графиков.

Сама компания MathWorks выделяет следующие особенности Simulink:

  • Интерактивная графическая среда для построения блок-диаграмм;
  • Расширяемая библиотека готовых блоков;
  • Удобные средства построение многоуровневых иерархических многокомпонентных моделей;
  • Средство навигации и настройки параметров сложных моделей - Model Explorer;
  • Средства интеграции готовых C/C++, FORTRAN, ADA и Matlab-алгоритмов в модель, взаимодействие с внешними программами для моделирования;
  • Современные средства решения дифференциальных уравнений для непрерывных, дискретных, линейных и нелинейных объектов (в т.ч. с гистерезисом и разрывами);
  • Имитационное моделирование нестационарных систем с помощью решателей с переменным и постоянным шагом или методом управляемого из Matlab пакетного моделирования;
  • Удобная интерактивная визуализация выходных сигналов, средства настройки и задания входных воздействий;
  • Средства отладки и анализа моделей;
  • Полная интеграция с Matlab, включая численные методы, визуализацию, анализ данных и графические интерфейсы.

Главным преимуществом Simulink является интегрированность в среду Matlab, откуда пользователь может брать библиотеки и подпрограммы, написанные на различных языках программирования.  

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

Язык, инструментарий и встроенные математические функции позволяют исследовать различные подходы и получать решение быстрее, чем с использованием электронных таблиц или традиционных языков программирования, таких как C/C++ или Java. 

Matlab широко используется в таких областях, как:

  • обработка сигналов и связь;
  • обработка изображений и видео;
  • системы управления;
  • автоматизация тестирования и измерений;
  • финансовый инжиниринг;
  • вычислительная биология.

Актуальность использования Simulink обусловлена широким спектром возможностей, удобством и простотой использования. При этом интегрированность в Matlab проводит зависимость между использованием Simulink’а и Matlab.

Чтобы ответить на вопрос «Актуален ли Simulink?» необходимо понять, какие у него вообще есть конкуренты (и есть ли вообще). Сам Simulink, как мы уже сказали ранее, относится к пакетом блочного моделирования (так же существуют пакеты физического моделирования и пакеты, ориентированные на схему гибридного автомата). Пакеты блочного моделирования хорошо подходят для создания не очень сложных моделей и в силу своей простоты могут быть выполнены даже неопытным пользователем. Также достоинством является эффективность реализации элементарных блоков и простота построения эквивалентной системы. Однако при создании сложных моделей приходится строить довольно громоздкие многоуровневые блок-схемы, не отражающие естественной структуры моделируемой системы. Другими словами, этот подход работает хорошо, когда есть подходящие стандартные блоки.
Наиболее известными представителями пакетами блочного моделирования являются:

  1. Подсистема Simulink пакета Matlab;
  2. Подсистема Scicos пакета Scilab;
  3. VisSim

Однако перед тем как рассматривать более подробно Simulink, поговорим непосредственно о пакете Matlab. Многие считают, что главным конкурентом Matlab’а  является программный пакет для символьных вычислений Mathematica. Тем не менее, компания MathWork рассматривает Microsoft Excel как своего главного конкурента. Пакет Matlab гораздо удобнее для задач численного анализа и линейной алгебры, чем Mathematica, и его часто используют для инженерных разработок. Mathematica, с другой стороны, имеет превосходные возможности для символьных вычислений, делающие её популярной среди физиков. Другая фундаментальная разница заключается в том, что Matlab-язык, используемый для написания кода новых (пользовательских) функций и скриптов, синтаксически близок к языку программирования Basic, в то время как Mathematica использует свой собственный функциональный язык.

В итоге, альтернативными пакетами Matlab’у являются:

  1. Mathematica;
  2. Scilab;
  3. Maxima;
  4. Microsoft Excel.

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

  1. Встроенный язык программирования;
  2. Линейная алгебра (матрицы, алгебра матриц, решение Систем Линейных Алгебраических Уравнений, векторы, сингулярности и другое);
  3. Анализ данных и математическая статистика (быстрое преобразование Фурье, цифровая фильтрация, статическая регрессия и другое);
  4. Многочлены (поиск корней, дифференцирование, интерполяция и экстраполяция кривых);
  5. Дифференциальные уравнения;
  6. Наличие аналога Simulink.

Для удобства и краткости будем использовать соответствующие номера функций, вместо их названия.

Таблица 1 — Matlab и его конкуренты

 

Matlab

Mathematica

Scilab

Maxima

Microsoft Excel

1

да

да

да

да

да

2

да

да

да

да

да

3

да

да

да

да

да

4

да

да

да

да

да

5

да

да

да

да

да

6

да

нет

да

нет

нет

 

Из таблицы можно сделать вывод, что все из данных пакетов выполняют свои математические функции хорошо. Однако отсутствие в большинстве из них аналога Simulink мы не можем поставить их в один ряд. В итоге, реальным конкурентом для Matlab является Scilab, но стоит сказать, что Scilab, в отличие от Matlab, является бесплатным, что, несомненно, плюс.

Теперь проведем сравнение непосредственно библиотеки Simulink с её конкурентами: Scicos и VisSim. Однако сравнивать будем не возможности данных продуктов (поскольку они примерно равны), а их качество как программного обеспечения. Критерии, по которым будем проводить сравнение: совместимость, сопровождаемость, портирование. Оценивать будем по десятибалльной шкале.

Таблица 2 Simulink и его конкуренты

 

Scicos

VisSim

Simulink

Совместимость

10

10

10

Сопровождаемость

3

7

10

Портирование

10

3

10

 

Немного поясним критерии. По пункту «совместимость» все продукты получили по десять баллов, т.к. каждый их них имеет средства, с помощью которых мы можем использовать программу, полученную с помощью этих пакетов, в других программах или как готовый продукт. Например, для VisSim – это VisSim/C-Code, для Scicos и Simulink – встроенные средства [7 – 8].

Оценку 3 по критерию «сопровождаемость» пакет Scicos получил из-за того, что последняя стабильная версия выходила 7 лет назад (апрель 2011 года, версия 4.4.1), что является крайне большим сроком для программного обеспечения [9 – 10]. Последней стабильной версии VisSim 3 года (последняя версия вышла в 2015 году),  что так же является большим сроком для программного обеспечения в современном мире. Для Simulink этот срок – 82 дня, на момент написания статьи (02.06.2018).

Что касается критерия «портирование»: VisSim доступен только для одной платформы – Windows, а Scicos и Simulink – для трёх наиболее популярных: Windows, macOS и Linux.

Результаты и обсуждение

Результаты, представленные в таблицах 1 и 2, показывают, что в сравнении продуктов имитационного моделирования Simulink имеет явное превосходство, по важным критериям качества программного обеспечения: сопровождаемость продукта после релиза, совместимость с другими программами и операционные системы, на которых их можно использовать.

Заключение

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


Библиографическая ссылка

Гарбарт А.И., Саенко Я.Д. SIMULINK И MATLAB SYSTEM IDENTIFICATION TOOLBOX – ИНСТРУМЕНТАРИЙ СОВРЕМЕННОГО ИНЖЕНЕРА // Международный студенческий научный вестник. – 2018. – № 5. ;
URL: https://eduherald.ru/ru/article/view?id=18936 (дата обращения: 20.04.2024).

Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1,674