Национальная ассоциация ученых (НАУ) # 52, 20 20 25
ТЕХНИЧЕСКИЕ Н АУКИ
УДК 0 04.43 :66.021
ИСПОЛЬЗОВАНИЕ СТАНДА РТНЫХ ЯЗЫКОВ И СРЕД ПРИ РАЗРАБОТКЕ МОДЕЛЕЙ ДЛЯ
«ПРОДВИНУТЫХ» СИСТЕМ УПРАВЛЕНИЯ ТЕХНОЛОГ ИЧЕСКИМИ ПРОЦЕССАМИ
Кирюшин Олег Валерьевич
кандидат техн. наук, доцент
Кафедра автоматизация технологических процессов и п роизводств
Уфимский государственный нефтяной технический университет
г. Уфа
Асы лов Муса Ангамович
студент 1 курса магистратуры
Кафедра автоматизация технологических процессов и производств
Уфимский государственный нефтяной технический университет
г. Уфа
USING STAN DARD LANGUAGES AND E NVIRONMENTS TO MODEL ADVANCED PROCESS
CONTROL SYSTEMS
Kiryushin Oleg Valeryevich
Candidate of Technical Sciences, Associate Professor
Department of Automation of Technological Processes and Production
of the Ufa State Petrol eum Technol ogical University
Ufa
Asylov Musa Angamovich
Master’s Degree 1 Student
Department of Automation of Technological Processes and Production
of the Ufa State Petroleum Technological University
Ufa
Аннотация
При реализации математических моделей процессов в составе «продвинутых» систем управления,
возникает необходимость выбора языков программирования и сред, которые бы обеспечили разработку
системы оптимальным образом с точки зрения удобства описани я человеко м, реализации в SCADA -
системе и т.д. В данной статье проведен анализ основных языков программирования, применяемых для
описания моделей в различных средах, выделены их основные преимущества и недостатки.
Abstract
When implementing mathematical m odels of p rocesses as part of "advanced" control systems, it is necessary
to select programming languages and environments that would ensure the development of the system in an optimal
way from the point of view of convenience of human description, impleme ntation in SCADA -system, etc. This
article analyses the main programming languages used to describe models in different environments and highlights
their main advantages and disadvantages.
Ключевые слова : Мatlab , XML, UML, Pascal, Delphi, Python, C++, С#, С, Java, V isual Basic, Anylogic,
Maple , Mathematica.
Keywords : Matlab, XML, UML, Pascal, Delphi, Python, C ++ , C#, C, Java, Visual Basic, Anylogic, Maple,
Mathematica.
При разработке «прод винутых» систем
управл ения, поиске режимов, обеспечивающих
оптимальное качеств о продукции, предсказания
поведения технологического процесса и т.д.
используются математические модели,
функционирующие в соответствующей
программной среде.
Корректная работа р еализуемой модели
зав исит от многих факторов, одним из которых
является язык м оделирования, выбранный для
описания статических, динамических, частотных и
др. характеристик моделируемых технологических
объектов. В статье рассматриваются наиболее
часто приме няемые для этих целей языки и среды
моделирования.
ЯЗЫК MATLAB
Язык Matlab явл яется высокоуровневым
интерпретированным языком программирования,
включающий базирующиеся на матрицах
структуры данных, широкий спектр функций,
интегрированную среду для различны х разработок,
объектно -ориентированные возможности и
интерфейсы к программам, реализованным на иных
языках программирования [8].
В качестве достоинств данного языка
выделяются:
26 Национальная ассоциация ученых (НАУ) # 52, 20 20
− данный язык имеет поддержку векторных и
матричных операций;
− в языке Matlab нет таких действий как
объявление переменных, определение типов,
выделение па мяти;
− есть встроенные алгоритмы для анализа и
обработки различных данных.
В качестве недостатков приводятся
следующие аргументы:
− узконаправленность, язык применятся
только в программе Matlab ;
− высокая стоимость программного
обеспечения;
− перегруженность операторами, командами,
функциями.
ЯЗЫК РАЗМЕТКИ XML
Целью XML является хранение данных
подвергнутых структурированию, с целью бартера
информацией среди программ, и для фо рмирования
на его основе более узконаправленных языков
разметки [9].
Выделяются следующие достоинства:
− поддержка Unicode;
− организует вид файлов с данными в виде
текста понятного человеку;
− применяться на низких программных
уровнях в новейших аппаратн ых решениях.
К недостаткам XML можно отнести
следующие пункты:
− синтаксис языка XML весьма избыточный;
− не определена точная методика
моделирования данных в XML ;
− не обладает функцией поддержки типов
данных закрепленных в язык.
ЯЗЫК UML
UML представляет собой стандартизо ванный
графический язык моделирования для
представления, изображения, конструирования и
протоколирования ОО систем [2].
Достоинства:
- обладает возможностью показать систему
почти с любой позиции и различных сторон
действий систем;
- суще ствуют р азличные варианты
неоднократного применения имеющегося проекта
или его фрагмента в новом проекте;
- язык UML увеличивает и разреш ает внедрять
личные текстовые и графические стереотипы.
Недостатки:
- содержит большое количество излишних
диаграмм и к онструкций;
- UML характеризован комбинацией себя то,
есть обладает свойством абстрактного синтаксиса,
OCL (языком описания ограничений - формальным
контролем корректности) и английского
(подробная семантика), из -за этого он не обладает
жесткой скованность ю языка, конкретно
установленными техниками формального
представления;
- рассогласование нагрузки.
ЯЗЫК PASCAL
Pascal представляет собой строго процедурный
язык и обладает такими особенностями как строгая
типизация и наличие средств структурного
программир ования [5]. Несмотря на то, что данный
язык является в первую очередь языком
программирования, он также используется и дл я
описания модел ей объектов, например, при
реализации функций тренажеров -имитаторов.
Достоинства языка:
− легкий синтаксис языка, что д ает
возможность быстро находить о шибки;
− не высокие аппаратные и системные
требования;
− исходный код всегда открыт для
редактирования к аждым пользователем.
Недостатки Pascal:
− язык морально устарел, так как он был
разработан 60 лет назад;
− объектно -ори ентированное
про граммирование осуществлено не
удовлетворительно полно;
− компилятор был задуман на настоящий
режим DOS .
ЯЗЫК DELPHI
Delphi представляет собой систему
визуального объектно -ориентированного
программирования [3].
− довольно быстрая реализация приложений;
− наращиваемость возможностей благодаря
добавлению новых к омпонент и инструментов в
среду;
− компоненты можно разработать с помощью
собственных средств Delphi .
Недостатки:
− статическое присоединение (linking)
библиотеки VCL и компонентов к ис полняемому
файлу ;
− вся информация о форме не оптимально
хранится в файле exe ;
− малое число параметров оптимизации кода.
ЯЗЫК PYTHON
Python является интерпретируемым,
изначально объектно -ориентированным языком
программирования, обладающий мощными
подключа емыми средствами дл я построения
математических моделей [11] .
Достоинства:
− интерпретатор реализован практически на
всех платформах и ОС;
− расширяемость языка;
− присутствие значительного количества
модулей подключаемых к программе, которые
обеспечивают различными дополни тельными
возможностями.
Недостатки языка:
− сравнительно медленная скорость
исполнения Python -программы, что обусловлено ее
интерпретируемостью.
ЯЗЫК С
Язык С является универсальным языком
программирования, обладающий такими
свойствами как экономичность в ыражений,
передовой поток управления и структуры данных
богатый набор операторов [14] .
Достоинством данного языка являются:
Национальная ассоциация ученых (НАУ) # 52, 20 20 27
− нет альтернативной замены новейшими
мощными языками;
− довольно высокая производительность;
− легкая структура языка.
Недостатки:
− сложный синтаксис языка;
− не применяется в нынешних веб –
разработках.
ЯЗЫК C++
C++ − это компилируемый, статически
типизированный язык программирования общего
назначения [6] .
Достоинства:
− поддержка разнообразных стилей и
подходов в программировании;
− способность формирования общих
контейнеров и алгоритмов для разнообразных
типов данных, их типизация и расчеты на этапе
компиляции, использованием шаблонов;
− возможность кроссплатформенности.
Недостатки:
− сложный синтаксис языка;
− примитивный препроцессор;
− модульность поддерживается не достаточно
хорошо.
ЯЗЫК С#
С# - это один из распространенных
представителей объектно -ориентированных языков
программирования [12] .
Достоинства:
− объектно -ориентированный подход к
программированию во всем;
− много синтаксических конструкций,
упрощающих написание кода;
− большое разнообразие библиотек и
шаблонов;
Недостатки:
− не повсеместно распространенный язык;
− не имеет свойства поддержки
множественного наследования классов.
ЯЗЫК JAVA
Java - это один из универсальных языков
моделирования, который может быть интегрирован
в инструмент моделирования, к примеру в
AnyLogic [7] .
Выделяются следующие достоинства языка:
− приложения выполняются на стороне
сервера, и на стороне клиента;
− язык явля ется м ежплатфо рменным;
− обеспечивается механизм многопоточности
и иные возможности ООП.
Недостатками являются следующие пункты:
− низкий уровень быстродействия,
требовательность оперативной памяти;
− сложность изучения языка, связанная с
значительным кол ичеств ом станд артных
библиотек;
− непрерывная модернизация языка, что
способствует появлению новых средств, имеющих
схожее функциональное значение со старыми
средствами.
ЯЗЫК VISUAL BASIC
Visual Basic – язык программирования
третьего поколения (событийный язык
программирования), а также интегрированная
среда разработки прогр аммного обеспечения [15].
Преимущества языка:
− легкий для освоения синтаксис;
− есть способность компиляции как в
машинный код, т ак и в Р – код;
− стабильность работы за счет протекции от
оши бок.
Слабые стороны:
− работа только на операционных системах
Windows и Mac OS X;
− не обладает способностью наследования
реализации объектов;
− низкая производительность, связанная тем,
что вс е встроенные функции языка реализованы
через библиотеку времен и исполнения.
Для описания моделей на том или ином языке,
описанном выше, можно использовать следующие
программные среды.
ANYLOGIC
AnyLogic является программным
обеспечением, применяемым для цел ей имитации
кого -либо процесса. Программа имеет новейший
графи ческий интерфейс, а для получения моделей
используется язык прог раммирования Java [10].
Достоинства:
− минимизация временных и финансовых
ресурсов за счет возможностей программы;
− с одним инст рументом, можно создать
различного вида модели;
− пуск моделей возможен при лю бых
условиях.
MAPLE
Maple - программный пакет предназначенный
для аналитических вычислений на ЭВМ, у которого
количество команд превышает отметку в две
тысячи, которые в свою очередь дают возможность
решать вопросы из различных областей нау к
связанных с математическими расчетами [ 4].
Достоинства:
− осуществление в символьном виде
арифметических действий;
− возможность формировать отчеты в виде
технических документов с содержанием текста,
математических расчетов, рисунков, графиков и
звука;
− наличие протокола TCP/IP, который
предос тавляет динамический путь к информации,
содержащейся в других интернет -источниках.
Недостатки:
− при работе возникает некоторые
торможения;
− дороговизна.
MATHEMATICA
Mathematica – это, во -первых, обыкновенная
сис тема программирования, полученная на осно ве
сильного проблемно -ориентированного языка
функционального программирования высокого
уровня, а во -вторых диалоговая система для
решения большого количества математических
28 Национальная ассоциация ученых (НАУ) # 52, 20 20
задач без использования средств традиционн ого
программирования [13] .
Достоинства:
− довольно большой комплекс функций
графики и опций, изменяющих их действие;
− пакеты расширения дают возможность
приспосабливаться под нужды каждого
пользователя;
Недостатки:
− своеобразный язык.
MATLAB
MATLAB – пр ограммный пак ет,
направленный на получени е решения задач в
символьном виде. Математические расчеты
основаны на применении матричных операций [1].
Достоинства:
− библиотеки MatLab выделяются быстротой
численных расчетов;
− благодаря библиотек Image Processi ng
Toolbox, обеспечивается достаточно шир окий
спектр функций, обеспечивающих визуализацию
осуществляемых расчетов на прямую из среды
MatLab, масштабирование и анализ;
− присутствия гибкого пользовательского
интерфейса, дозволяющего организовать данные и
мо дели в библиотеке System Identification T oolbox.
Недостатки:
− низкая интегрированность среды;
− сложная для понимания справочная система;
− отличающий редактор кода применительно к
MatLab -программам.
Заключение
В результате анализа видно, что каждый язык
и среда, на котором он будет использоваться,
имеют как свои преимущества, так и недостатки. Из
этого следует, что выбор языка программирования
выполняется индивидуально для каждой цели в
зависимости от предъявляе мых к нему требований.
С точки зрения скорос ти разработки и точности
исполнения моделей оп тимальными являются
языки математического моделирования Matlab и
Mathematica , с точки зрения реализуемости в
SCADA -системах – языки типа VB , C, C++ и др.,
для использ ования в составе имитаторов и модулей
оптими зации по показателям качества – XML ,
UML , Python .
Литература:
1. Алексеев Е.Р., Чеснокова О.В. MATLAB 7.
Самоучитель. — Пресс, 2005. — 464 с.
2. Буч Г., Якобсон А., Рамбо Дж. UML.
Классика CS / С. Орлов. — 2-е и зд. — СПб.: Питер,
2006. — 736 с.
3. Вальвач ев А.Н., Сур ков К.А., Сурков Д.А.,
Четырько Ю.М. Программирование на языке
Delphi. Учебное пособие. — 2005.
4. Говорухин В.Н., Цибулин В.Г. Введение в
Maple. Математический пакет для всех. — М.: Мир,
1997. — С. 2 08.
5. Грогоно П. Программирование на языке
Паскаль. — М.: Мир, 1982. — 384 с.
6. Губина Г.Г. Компьютерный английский. Ч.
I. Computer English. Part I. Учебное пособие . — С.
385.
7. Джошуа Блох. Java. Эффективное
программирование. Effective Java. — 3-е. — М.:
Диалектика, 2019. — 464 с.
8. Дьяконов В. П. Справочник п о применению
системы PC MATLAB. — М.: «Физматлит», 1993.
— 112 с.
9. Дэвид Хантер, Джефф Рафтер, Джо Фаусетт,
Эрик ван дер Влист, и др. XML. Работа с XML, 4 -
е— М.: «Диалектика», 2009.
10. Карпов Ю.Г. Имитационное
моделирование систем. Введе ние в моделирование
с AnyLogic 5. — СПб: БХВ -Пе тербург, 2006. — 400
с.
11. Коэльё Л.П., Ричерт В. Построение систем
машинного обучения на языке Python. — Перевод с
английского. — М.: ДМК Пресс, 2015.
12. Либерти Д. Язык программирования C# //
Программирова ние на C#. — Санкт -Петербург. —
2003: Символ -Плюс. — С. 26. — 688 с
13. Морозов А.А., Таранчук В.Б.
Программирование задач численного анализа в
системе Mathematica : Учеб. пособие. - Мн.: БГПУ,
2005. — 145 с.
14. Подбельский В.В., Фомин С.С. Курс
программир ования на языке Си: учебник. — М.:
ДМК Пресс, 2 012. — 318 с.
15. Сергеев В. Visual Basic 6.0. Руководство
для профессионалов. — СПб.: «БХВ -Петербург»,
2004. — 974 с.
ТЕХНОЛОГИИ , ИСПОЛЬЗУЕМЫЕ В ТЕКС ТИЛЬНОЙ ПРОМЫ ШЛЕНОСТИ
Тойбаев Кенжехан Дуйсебаевич
докто р техниче ских наук, академический профессор,
Казахская головная архитектурно -строительная академия
г.Алматы
Закеров Мадияр Серикбаевич
магистрант, факультет общего строительства,
Казахская головная архитектурно -строительная академия
г.Алматы
DOI: 10.31618/nas.2413 -5291.2020.3.52.151
TECHNOLOGIES US ED IN THE TEXTILE IN DUSTRY
Toybaev Kenzhehan
doctor of technical Sciences, academic Professor,