Анализ и документирование требований для программного комплекса по проведению вычислительных экспериментов и численному исследованию системы «расходомерная трубка – жидкость» кориолисова расходомера

0

Аннотация

Предмет. Работа описывает этапы разработки программного комплекса, предназначенного для проведения серий вычислительных экспериментов по численному моделированию системы «расходомерная трубка – жидкость» кориолисова расходомера и автоматизации алгоритмов последующей обработки и визуализации данных. Цель данной статьи заключается в формировании и документировании требований к программному комплексу, и его проектированию на основе современных подходов к разработке программных продуктов. Методы. Структура требований для программного комплекса разработана на основе шаблона 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. Определения, акронимы и сокращения
    • Кориолисов расходомер – это массовый расходомер, предназначенный для прямого и непрерывного измерения массы жидкости [1,2].
    • Система «расходомерная трубка – жидкость» состоит из вибрирующей трубки кориолисова расходомера, зажатой с обоих концов, и протекающей по ней измеряемой жидкости [4].
    • Датчики кориолисова расходомера расположены равноудалено от центра в левой и правой половинах расходомерной трубки. Они измеряют амплитуду колебаний трубки с течением времени. Под действием силы Кориолиса, возникающей из-за движения жидкости в вибрирующей трубке, возникает временная (фазовая) задержка сигналов [1-5].
    • COMSOL Multiphysicals – это пакет программного обеспечения для анализа методом конечных элементов, моделирования физических и мультифизических явлений [11].
    • Расчетная модель – это информация о моделируемой системе «расходомерная трубка – жидкость» (геометрия, свойства, состояние, внешние воздействия), о способе моделирования (математическая модель, параметры математической модели, используемые методы решения задачи, расчетная сетка), представленная в определенном формате (текстовом или бинарном) и передаваемая решателю в качестве входных данных [12].
    • Радиус кривизны расходомерной трубки – параметр изгиба, выраженный в градусах и позволяющий изменять геометрию трубки от прямотрубной до U-образных конструкций.
    • MATLAB – пакет прикладных программ для решения задач технических вычислений [13].
  2. Описание требований

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

а) Выполнение вычислительных экспериментов:

  • Реализовать управление расчетной моделью, разработанной в среде 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 на основе расчетных данных вычисляет параметры ошибок, погрешностей и формирует пользовательские графики.
  • Использование разработанного программного комплекса позволило упростить взаимодействие с расчетной моделью в процессе анализа и исследования динамики потоков жидкости в расходомерной трубке, а также автоматизировать алгоритмы обработки и визуализации данных. Применение программного комплекса при проведении серий вычислительных экспериментов снижает временные затраты на обработку полученных результатов.

Заключение 

Разработан программный комплекс, позволяющий проводить вычислительные эксперименты в области численного моделирования системы «расходомерная трубка-жидкость» кориолисова расходомера. Программный комплекс обеспечил автоматизацию алгоритмов обработки и визуализации данных, что значительно упростило процесс анализа результатов численного моделирования и позволило сосредоточиться на интерпретации данных и выявлении закономерностей.

Согласно разработанной структуре требований были реализованы основные функциональные требования в виде подпрограмм комплекса. Программный комплекс обладает простым и понятным интерфейсом, что относится к нефункциональному требованию «удобство использования». Разработанная архитектура программного комплекса позволяет вносить быстрые изменения в его компоненты для улучшения работы и добавления новых функций и дальнейшего развития, что соответствует требованиям масштабируемости и гибкости. Требование «Надежность и производительность» реализовано на основе эффективных численных методов и алгоритмов проведения вычислительных экспериментов.

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

Литература

  1. 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
  2. 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).
  3. Юрманов В. А., Гудков К. В. Анализ некоторых погрешностей кориолисовых расходомеров// Современные информационные технологии. 2006. № 4. С. 48–50.
  4. Гудкова, Е. А. Таранцева К.Р., Михеев М.Ю. Анализ критериев, влияющих на точность измерения массового расхода жидкости // XXI век: итоги прошлого и проблемы настоящего плюс. 2022. Т. 11. № 2(58). С. 49–54. DOI: 10.46548/21vek-2022-1158-0008
  5. Гудкова, Е. А. Таранцева К.Р., Михеев М.Ю. Сравнительный анализ численных и аналитических методов моделирования системы «расходомерная трубка – жидкость» в кориолисовых расходомерах // XXI век: итоги прошлого и проблемы настоящего плюс. 2022. Т. 11. № 3(59). С. 57–63. DOI: 10.46548/21vek-2022-1159-0009
  6. Брежнев Р. В. Методы и средства проектирования информационных систем и технологий: учебное пособие, 2021. 216 с. – Текст: непосредственный: электронный.
  7. Бубнов А.А., Бубнов С.А., Майков К.А. Разработка и анализ требований к программному обеспечению: учебник / Бубнов А.А., Бубнов С.А., Майков К.А. – М: КУРС, 2022.– 176 с.
  8. Коберн А. Современные методы описания функциональных требований. – М.: Изд-во «Лори», 2002. – 264 с.
  9. Patton J., Economy P. User story mapping: discover the whole story, build the right product. – O'Reilly Media, Inc., 2014. – 200 с.
  10. Documenting non-functional requirements using FURPS+ [Электронный ресурс] // URL: https://www.marcinziemek.com/blog/content/articles/8/article _en.html (дата обращения 10.11.2023).
  11. COMSOL – Software for Multiphysics Simulation [Электронный ресурс] // URL: https://www.comsol.com (дата обращения 10.11.2023).
  12. Федорова Н. Н. Основы работы в ANSYS 17 [Электронный ресурс] / Н.Н. Федорова,С.А. Вальгер, М.Н. Данилов, Ю.В. Захарова. – Москва: ДМК Пресс, 2017. – 210 с. – ISBN 978-5-97060-425-0. URL: https://ibooks.ru/bookshelf/364374/reading (дата обращения: 10.11.2023).
  13. MATLAB [Электронный ресурс]. URL: https://ww2.mathworks.cn/en/products/matlab.html (дата обращения 10.11.2023).

Информация об авторах

Гудкова Екатерина Александровна, Старший преподаватель кафедры «Информационные технологии и системы» факультета информационных и образовательных технологий, Пензенский государственный технологический университет , Пенза, Россия, ORCID: https://orcid.org/0000-0003-2197-6419, e-mail: gudkova-penza@yandex.ru

Метрики

Просмотров

Всего: 0
В прошлом месяце: 0
В текущем месяце: 0

Скачиваний

Всего: 0
В прошлом месяце: 0
В текущем месяце: 0