Моделирование и анализ данных
2024. Том 14. № 2. С. 140–151
doi:10.17759/mda.2024140210
ISSN: 2219-3758 / 2311-9454 (online)
Анализ и документирование требований для программного комплекса по проведению вычислительных экспериментов и численному исследованию системы «расходомерная трубка – жидкость» кориолисова расходомера
Аннотация
Предмет. Работа описывает этапы разработки программного комплекса, предназначенного для проведения серий вычислительных экспериментов по численному моделированию системы «расходомерная трубка – жидкость» кориолисова расходомера и автоматизации алгоритмов последующей обработки и визуализации данных. Цель данной статьи заключается в формировании и документировании требований к программному комплексу, и его проектированию на основе современных подходов к разработке программных продуктов. Методы. Структура требований для программного комплекса разработана на основе шаблона Software Requirements Specification, принятого в методологии разработки программного обеспечения Rational Unified Process, в соответствии с классификацией требований к программным системам FURPS+. Для разработки подпрограмм комплекса использованы язык Python 3 и интерпретируемый язык программирования среды MATLAB. Результаты. Разработана структура требований для программного комплекса, включая функциональные и нефункциональные требования. Разработан программный комплекс, состоящий из трех подпрограмм, описаны его структура, основные компоненты и возможности, продемонстрированы примеры использования. Выводы. Программный комплекс решает задачи автоматизации алгоритмов моделирования, обработки и визуализации данных, полученных в результате экспериментов. Он может быть использован в инженерных и научных исследованиях, связанных с анализом работы кориолисовых расходомеров.
Общая информация
Ключевые слова: программный комплекс, система «расходомерная трубка – жидкость», математическое моделирование
Рубрика издания: Комплексы программ
Тип материала: научная статья
DOI: https://doi.org/10.17759/mda.2024140210
Получена: 14.03.2024
Принята в печать:
Для цитаты: Гудкова Е.А. Анализ и документирование требований для программного комплекса по проведению вычислительных экспериментов и численному исследованию системы «расходомерная трубка – жидкость» кориолисова расходомера // Моделирование и анализ данных. 2024. Том 14. № 2. С. 140–151. DOI: 10.17759/mda.2024140210
Полный текст
Введение
Современные технологические процессы требуют высокой точности и эффективности в измерениях физических параметров, таких как расход жидкости. В этом контексте, кориолисовы расходомеры представляют собой приборы, обеспечивающие точные измерения массового расхода жидкости [1,2]. Однако проектирование и оптимизация параметров кориолисовых расходомеров представляют собой сложные задачи, требующие учета множества факторов, подробно рассмотренных в работах [2-4] . В работе [5] обосновано применение эффективных численных методов при моделировании элементов кориолисовых расходомеров. В этой связи разработка программного комплекса, предназначенного для проведения серий вычислительных экспериментов по численному моделированию системы «расходомерная трубка – жидкость» кориолисова расходомера [5] и автоматизации алгоритмов последующей обработки и визуализации данных, представляет собой актуальное прикладное направление. Цель данной статьи заключается в формировании и документировании требований к программному комплексу, и его проектированию на основе современных подходов к разработке программных продуктов.
Материалы и методы
Эволюция теории разработки программного обеспечения (ПО) привела к возникновению трех основных моделей, описывающих структуру этого процесса – каскадная, итерационная и спиральная. Эти модели по-разному рассматривают процесс разработки, но так или иначе они опираются на следующий базис: формирование требований, проектирование, конструирование, тестирование, внедрение, сопровождение [6]. Разработка требований является ключевым процессом в жизненном цикле разработки программного обеспечения [7-9]. С точки зрения работы ПО требования можно разделить на функциональные и нефункциональные. Функциональные требования [7-9] определяют конкретные операции, действия, которые должен выполнять программный продукт. Нефункциональные требования [7-9] определяют его характеристики, такие как безопасность, производительность или надежность. Таким образом, функциональные требования отвечают на вопрос – «что программный продукт должен делать», а нефункциональные требования – «насколько хорошо». Для разрабатываемого программного комплекса были сформированы требования в соответствии с классификацией требований к программным системам – FURPS+ [10], отвечающей за функциональность, удобство использования, надежность, производительность и возможность поддержки. Знак «+» в аббревиатуре FURPS+ позволяет указывать ограничения, включая дизайн, реализацию, интерфейс, атрибуты качества.
Одним из широко применяемых стандартов спецификации требований является документ SRS (Software Requirements Specification), принятый в методологии разработки ПО Rational Unified Process (RUP) [7-9]. Структура требований в SRS адаптирована из Международного стандарта IEEE STD 830 и является его упрощенной версией, описывающей функциональные требования в виде списка вариантов использования и их интерпретации [5,9].
Документирование требований
Была разработана структура требований для программного комплекса на основе шаблона SRS, включающая следующие пункты:
- Определения, акронимы и сокращения
- Кориолисов расходомер – это массовый расходомер, предназначенный для прямого и непрерывного измерения массы жидкости [1,2].
- Система «расходомерная трубка – жидкость» состоит из вибрирующей трубки кориолисова расходомера, зажатой с обоих концов, и протекающей по ней измеряемой жидкости [4].
- Датчики кориолисова расходомера расположены равноудалено от центра в левой и правой половинах расходомерной трубки. Они измеряют амплитуду колебаний трубки с течением времени. Под действием силы Кориолиса, возникающей из-за движения жидкости в вибрирующей трубке, возникает временная (фазовая) задержка сигналов [1-5].
- COMSOL Multiphysicals – это пакет программного обеспечения для анализа методом конечных элементов, моделирования физических и мультифизических явлений [11].
- Расчетная модель – это информация о моделируемой системе «расходомерная трубка – жидкость» (геометрия, свойства, состояние, внешние воздействия), о способе моделирования (математическая модель, параметры математической модели, используемые методы решения задачи, расчетная сетка), представленная в определенном формате (текстовом или бинарном) и передаваемая решателю в качестве входных данных [12].
- Радиус кривизны расходомерной трубки – параметр изгиба, выраженный в градусах и позволяющий изменять геометрию трубки от прямотрубной до U-образных конструкций.
- MATLAB – пакет прикладных программ для решения задач технических вычислений [13].
- Описание требований
Функциональные требования к программному комплексу, а также задачи направленные на их выполнение, включают:
а) Выполнение вычислительных экспериментов:
- Реализовать управление расчетной моделью, разработанной в среде COMSOL для численного моделирования «системы расходомерная трубка – жидкость».
- Разработать пользовательский интерфейс управления расчетной моделью.
- Обеспечить варьирование параметров моделирования: радиуса кривизны расходомерной трубки, количества периодов ее колебаний.
- Формировать таблицы данных о расходе жидкости, частоте колебаний расходомерной трубки, временных сигналах с датчиков расходомерной трубки.
б) Ввод данных:
- Реализовать ввод параметров исследования (радиус кривизны расходомерной трубки, количество периодов ее колебаний) с клавиатуры.
- Настроить визуальное отображение геометрии расходомерной трубки с введенным радиусом кривизны.
в) Автоматизация алгоритмов обработки данных:
- Реализовать алгоритмы обработки данных вычислительного эксперимента.
- Обеспечить возможность фильтрации, интерполяции данных временных сигналов датчиков для возможности расчета временной задержки.
- Вычислять временную и фазовую задержки сигналов датчиков.
г) Просмотр и документирование результатов:
- Предоставить графический интерфейс для визуализации данных.
- Реализовать функции построения 2D и 3D-графиков, диаграмм и других наглядных средств для анализа и визуализации результатов экспериментов.
- Генерировать отчет о проведении вычислительного эксперимента в Microsoft Word.
Нефункциональные требования к программному комплексу включают.
а) Удобство использования:
- Интерфейс пользователя должен быть интуитивно понятным и удобным для использования.
- Поддержка различных числовых форматов данных для ввода и вывода.
б) Масштабируемость и гибкость:
- Возможно внесения изменений в текст подпрограмм и их интерфейс.
в) Надежность и производительность:
- Обеспечение стабильной работы программного комплекса при обработке вычислительных экспериментов с большим количеством периодов колебаний и различными параметрами потоков.
- Оптимизация алгоритмов для ускорения вычислений и повышения их эффективности.
Разработка программного комплекса
Подпрограмма 1 создана на базе расчетной модели в пакете мультифизического моделирования COMSOL Multiphysics [11] в среде разработки приложений Application Builder. Данная среда позволила создать интерфейс, управляющий моделью COMSOL и представляющий результаты пользователю. При запуске модели на расчет отсутствует необходимость контролировать процесс вычислений и вручную запускать последовательность исследований. Реализованы возможности автоматического сохранения результатов после завершения расчетов и генерации отчетов.
Перечисленные выше функции реализованы путем создания набора форм, которые связывают входные данные пользователя с входными данными в имитационной модели. Тоже самое относится и к отображению результатов (как в виде таблиц модели, так и в виде диаграмм и графиков), составлению отчетов и генерации данных. В интерфейс приложения (рис. 1) добавлены необходимые параметры из расчетной модели, задана последовательность вычислений, что позволило быстрее и удобнее управлять расчетной моделью.
Рис. 1. Разработка интерфейса и функционала подпрограммы 1
Как показано на рис. 1 и 2 разработанный интерфейс подпрограммы 1 содержит поля ввода данных (радиус кривизны расходомерной трубки, количество периодов ее колебаний), и кнопки, при нажатии на которые выполняется соответствующее действие. Подпрограмма 1 использует расчетную модель кориолисова расходомера с универсальной геометрией, в поле можно вводить радиус кривизны расходомерной трубки и при нажатии кнопки «обновить геометрию» выполняется визуализация получившейся формы расходомерной трубки (рис. 2).
Рис. 2. Пример ввода параметров и обновления геометрии расходомерной трубки
Реализованы возможности запуска полного расчета заданной последовательности исследований или расчета конкретного исследования. Из подпрограммы 1 временные сигналы датчиков в виде табличных значений передаются в подпрограмму 2 (разработанную на языке Python 3) для их интерполяции и вычисления временной и фазовой задержек (рис. 3). Подпрограмма 1 автоматизирует процесс формирования и выгрузки необходимых данных в заданном формате. Дополнительно подпрограмма 2 генерирует отчеты для документации результатов в Microsoft Excel.
Рис. 3. Пример расчета фазовой и временной задержек сигналов
Подпрограмма 2 выполняет построение первоначального графика колебаний системы «расходомерная трубка – жидкость» для проверки результативности и адекватности вычислений. Программа обладает графическим интерфейсом пользователя, который позволяет удобно осуществлять ввод результатов моделирования как вручную, так и из файла, и выгрузку расчетных данных. Подпрограмма 3 разработана на языке MATLAB, пример кода программы представлен на рис. 4.
Рис. 4. Код программы в среде MATLAB
Подпрограмма 3 на основе данных расхода жидкости, временной задержки и прочих результатов вычислительного эксперимента позволяет рассчитать необходимые параметры относительной и абсолютной погрешностей, и визуализировать полученные результаты в виде 2D и 3D-графиков (примеры показаны на рис.5).
Рис. 5. Примеры визуализации результатов моделирования системы «расходомерная трубка – жидкость» для 6-ти массовых расходов
Результаты работы программного комплекса позволяют численно оценить внесенные изменения в расчетную модель при проведении вычислительного эксперимента, рассчитать отклонения от данных базовой модели. Также программный комплекс предоставляет пользователю возможности вычислить и визуализировать различия измерений между экспериментами, выявить разброс результатов, проанализировать их повторяемость.
Обсуждение
В рамках проведенного исследования были получены следующие результаты:
- Разработана структура требований для программного комплекса на основе шаблона SRS, принятого в методологии разработки ПО RUP. Анализ и документирование требований позволили создать четкий план разработки, определить базовые параметры, функциональные и нефункциональные возможности комплекса, что в свою очередь повысило эффективность его дальнейшей реализации.
- На основе разработанных требований определена оптимальная структура комплекса, состоящая из трех подпрограмм. Подпрограмма 1 управляет расчетной моделью COMSOL, позволяет изменять выбранные параметры моделирования и запускать модель на расчет. По окончании расчетов подпрограмма формирует файл-отчет с графиками, таблицами, выгружает данные о временных сигналах датчиков кориолисова расходомера для их интерполяции в подпрограмме 2. Подпрограмма 2 вычисляет временную и фазовую задержки сигналов для каждого массового расхода. Подпрограмма 3 на основе расчетных данных вычисляет параметры ошибок, погрешностей и формирует пользовательские графики.
- Использование разработанного программного комплекса позволило упростить взаимодействие с расчетной моделью в процессе анализа и исследования динамики потоков жидкости в расходомерной трубке, а также автоматизировать алгоритмы обработки и визуализации данных. Применение программного комплекса при проведении серий вычислительных экспериментов снижает временные затраты на обработку полученных результатов.
Заключение
Разработан программный комплекс, позволяющий проводить вычислительные эксперименты в области численного моделирования системы «расходомерная трубка-жидкость» кориолисова расходомера. Программный комплекс обеспечил автоматизацию алгоритмов обработки и визуализации данных, что значительно упростило процесс анализа результатов численного моделирования и позволило сосредоточиться на интерпретации данных и выявлении закономерностей.
Согласно разработанной структуре требований были реализованы основные функциональные требования в виде подпрограмм комплекса. Программный комплекс обладает простым и понятным интерфейсом, что относится к нефункциональному требованию «удобство использования». Разработанная архитектура программного комплекса позволяет вносить быстрые изменения в его компоненты для улучшения работы и добавления новых функций и дальнейшего развития, что соответствует требованиям масштабируемости и гибкости. Требование «Надежность и производительность» реализовано на основе эффективных численных методов и алгоритмов проведения вычислительных экспериментов.
Разработанный программный комплекс предоставляет полезный инструмент для различных групп пользователей и организаций, связанных с анализом работы кориолисовых расходомеров и оптимизацией их параметров. Он может быть использован как для научных исследований, так и в промышленных и образовательных целях. Планируемое усовершенствование программного комплекса будет направлено на реализацию новых алгоритмов интерполяции данных с использованием полиномиальных функций, а также на добавление средств обработки данных для работы с зашумленными сигналами.
Литература
- Wang T., Baker R. Coriolis flowmeters: a review of developments over the past 20 years, and an assessment of the state of the art and likely future directions// Flow Measurement and Instrumentation. 2014. Vol. 40. P. 99–123. DOI: 10.1016/j.flowmeasinst.2014.08.015
- ISO 10790:2015. Measurement of fluid flow in closed conduits – Guidance to the selection, installation and use of Coriolis flowmeters (mass flow, density and volume flow measurements).
- Юрманов В. А., Гудков К. В. Анализ некоторых погрешностей кориолисовых расходомеров// Современные информационные технологии. 2006. № 4. С. 48–50.
- Гудкова, Е. А. Таранцева К.Р., Михеев М.Ю. Анализ критериев, влияющих на точность измерения массового расхода жидкости // XXI век: итоги прошлого и проблемы настоящего плюс. 2022. Т. 11. № 2(58). С. 49–54. DOI: 10.46548/21vek-2022-1158-0008
- Гудкова, Е. А. Таранцева К.Р., Михеев М.Ю. Сравнительный анализ численных и аналитических методов моделирования системы «расходомерная трубка – жидкость» в кориолисовых расходомерах // XXI век: итоги прошлого и проблемы настоящего плюс. 2022. Т. 11. № 3(59). С. 57–63. DOI: 10.46548/21vek-2022-1159-0009
- Брежнев Р. В. Методы и средства проектирования информационных систем и технологий: учебное пособие, 2021. 216 с. – Текст: непосредственный: электронный.
- Бубнов А.А., Бубнов С.А., Майков К.А. Разработка и анализ требований к программному обеспечению: учебник / Бубнов А.А., Бубнов С.А., Майков К.А. – М: КУРС, 2022.– 176 с.
- Коберн А. Современные методы описания функциональных требований. – М.: Изд-во «Лори», 2002. – 264 с.
- Patton J., Economy P. User story mapping: discover the whole story, build the right product. – O'Reilly Media, Inc., 2014. – 200 с.
- Documenting non-functional requirements using FURPS+ [Электронный ресурс] // URL: https://www.marcinziemek.com/blog/content/articles/8/article _en.html (дата обращения 10.11.2023).
- COMSOL – Software for Multiphysics Simulation [Электронный ресурс] // URL: https://www.comsol.com (дата обращения 10.11.2023).
- Федорова Н. Н. Основы работы в ANSYS 17 [Электронный ресурс] / Н.Н. Федорова,С.А. Вальгер, М.Н. Данилов, Ю.В. Захарова. – Москва: ДМК Пресс, 2017. – 210 с. – ISBN 978-5-97060-425-0. URL: https://ibooks.ru/bookshelf/364374/reading (дата обращения: 10.11.2023).
- MATLAB [Электронный ресурс]. URL: https://ww2.mathworks.cn/en/products/matlab.html (дата обращения 10.11.2023).
Информация об авторах
Метрики
Просмотров
Всего: 54
В прошлом месяце: 6
В текущем месяце: 3
Скачиваний
Всего: 17
В прошлом месяце: 1
В текущем месяце: 3