Software Journal:
Theory and Applications

Send article

Entrance Registration

Разработка структуры клиент-серверной версии среды многоуровневого компьютерного моделирования Mарс

Основными проблемами современных образовательных и научно-исследовательских организаций (школ, колледжей, лицеев, техникумов, вузов, НИИ, лабораторий и т.д.), выполняющих учебные и научные исследования, являются следующие:

– высокая стоимость лабораторного оборудования;

– необходимость строго контролируемого допуска (допускового контроля) к лабораторному оборудованию, так как поломка в результате ошибочных действий пользователя (оператора) может привести к большим финансовым затратам;

– отсутствие у традиционных приборов, используемых в лабораториях, цифровых интерфейсов и невозможность их использования в сетевых информационных технологиях.

Решением данной актуальной проблемы является разработка распределенной лаборатории, основанной на использовании сетевых технологий и дистанционных виртуальных лабораторий (ДВЛ) [1–3]. Такой подход к обеспечению доступа и организации лабораторий имеет ключевые преимущества перед традиционными технологиями.

  1. Для получения доступа к ДВЛ необходимы лишь ПЭВМ, мобильное устройство (смартфон, планшет, ноутбук и т.д.) или сотовый телефон, а также доступ к сети Интернет (по технологии FTTx, Ethernet, Wi-Fi, EDGE, GPRS, LTE и т.д.). Управление и визуализация результатов эксперимента осуществляются непосредственно через интернет-браузер (обозреватель) с поддержкой языка JavaScript, которая имеется на большинстве устройств.
  2. Обеспечивается круглосуточная автоматизированная работа ДВЛ без преподавателя и лаборанта, поэтому нет необходимости в лабораторных помещениях и в рабочих местах для студентов.
  3. Обеспечиваются индивидуализация и повышение качества обучения [4–6]. Школьник (слушатель, студент) вынужден самостоятельно выполнять лабораторную работу. Автоматизируется выполнение всех этапов работы (изучение, допусковый контроль, эксперимент, обработка данных и формирование отчета). Учитель (преподаватель) не ограничивает время проведения работы и может объективно оценить ее по результатам мониторинга.

Среди существующих систем, которые позволяют удаленно выполнять эксперименты (а также мониторинг и управление) над реальными объектами, особо выделяется система LabVIEW, разработанная американской компанией National Instrumentals [7]. Моделирование в этой системе осуществляется на двух уровнях. Один уровень служит для отображения результатов моделирования, а также для размещения органов управления. Второй уровень содержит логику (алгоритм) работы исследуемого объекта,
а также его модель. Совмещение алгоритма работы и модели объекта затрудняет «чтение» схемы и усложняет процесс ее формирования. Еще одним недостатком данной системы является ее высокая стоимость.

На кафедре моделирования и системного анализа Томского государственного университета систем управления и радиоэлектроники разрабатываются виртуальные и виртуально-физические (реально-виртуальные) лаборатории [8, 9]. Для выполнения автоматизированных экспериментов разработана
и используется среда моделирования (СМ) МАРС [10]. Она реализована в виде настольного (desktop) приложения для операционных систем семейства Microsoft Windows. В рамках создания распределенной лаборатории необходимо реализовать клиент-серверную версию среды многоуровневого компьютерного моделирования МАРС с возможностями управления топологией модели и значениями параметров ее компонентов.

Среда многоуровневого компьютерного моделирования МАРС

Формирование многоуровневых компьютерных моделей в среде МАРС осуществляется на объектном, логическом и визуальном взаимосвязанных уровнях, каждый из которых поддерживается соответствующим графическим языком представления.

На объектном уровне располагаются средства интеграции с реальным техническим объектом и его компьютерная модель, представленная в формате языка моделирования сложных технических объектов, допускающих декомпозицию на компоненты с неоднородными векторными связями [11], одновременно описывающими энергетические и информационные потоки между компонентами. Использование объектов данного типа открывает возможности построения и исследования моделей многофазных электрических цепей, многосвязных механических и многокомпонентных химико-технологических систем. Для проведения реального (физического) эксперимента наряду с виртуальным (вычислительным) данному уровню принадлежат компоненты, осуществляющие взаимодействие многоуровневой модели с аппаратно-программным комплексом ЛАРМ (лабораторное автоматизированное рабочее место). Они выполняют такие функции, как подключение к комплексу ЛАРМ, прием результатов измерений наблюдаемых характеристик реального объекта и передача ему команд управления параметрами источников, генераторов и измерительных приборов. Данные измерения реальных сигналов наравне с результатами анализа компьютерных моделей технических объектов передаются с объектного уровня многоуровневой компьютерной модели на ее логический уровень.

На логическом уровне с помощью выражений языка математико-алгоритмических конструкций формируются алгоритмы выполнения реально-виртуальных экспериментов с использованием значений,
поступающих из информационных источников данных, и возможностью формирования документов на основе интерактивных отчетных форм [12]. Их внутримашинной формой представления являются алгоритмические компонентные цепи, для анализа которых используется алгоритм передачи сообщений.

На визуальном уровне с помощью визуальных компонентов формируются лицевые панели виртуальных приборов, предназначенных для визуализации результатов и управления параметрами исследуемых объектов и моделей. Элементами языка виртуальных инструментов и приборов являются визуальные компоненты: компоненты-визуализаторы, отображающие поступающую к ним информацию, и компоненты-регуляторы, позволяющие пользователю изменять значения соответствующих параметров исследуемой модели и переменных, входящих в алгоритмы управления.

Обобщенная архитектура распределенной лаборатории

Среда многоуровневого компьютерного моделирования МАРС в рамках распределенной лаборатории позволяет формировать многоуровневые компьютерные модели серверной части, обеспечивающей хранение, загрузку и анализ моделей схем технических объектов, и клиентской части, предназначенной для визуализации результатов моделирования, а также изменения топологии модели анализируемого объекта и значений параметров, входящих в нее компонентов.

Основными компонентами распределенной лаборатории (рис. 1) являются следующие.

Клиенты – удаленные пользователи, использующие ПЭВМ, мобильные устройства (смартфоны, планшеты, ноутбуки и т.д.) или сотовые телефоны, на которых запущена клиентская часть среды МАРС. Клиентами распределенной лаборатории могут выступать ПЭВМ под управлением операционной системы Windows, *nix или MacOS, мобильное устройство под управлением операционной системы Android, Windows Phone, Windows RT, iOS, сотовый телефон с поддержкой Java-приложений.

Сервер – приложение для операционной системы семейства Microsoft Windows (Vista, 7, 8, 8.1, 10), запущенное на специальном (выделенном) серверном компьютере, работающем в режиме 24/7 (круглосуточно); представляет собой серверную часть среды многоуровневого компьютерного моделирования МАРС.

БД, служащая для централизованного хранения всей необходимой информации.

Системный администратор – оператор, осуществляющий мониторинг и управление всей распределенной лабораторией.

ДВЛ, состоящие из измерительных серверов, устройств ввода-вывода, лабораторных установок, объединенных общим каналом связи. Примером лабораторной установки является ЛАРМ (рис. 2), представляющее собой мощную плату контроллера (начиная от чипов Xmega), имеющее на своем борту достаточно точные ЦАП и АЦП, умеющее управлять почти всеми типами приводов и считывать данные почти со всех датчиков. Плата контроллера может быть так называемой бутербродной, легко расширяемой технологией добавления нового функционала.

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

Задачи серверной и клиентской частей среды многоуровневого компьютерного моделирования МАРС

Серверная часть (сервер) выполняет следующие функции:

– обеспечение хранения и загрузки по команде клиента заранее разработанных в среде МАРС компьютерных моделей исследуемых объектов (хранящихся в БД на сервере);

– анализ загруженных моделей с помощью универсального вычислительного ядра [13];

– передача результатов клиенту, вызвавшему данную модель, на каждом или ряде выбранных шагов;

– изменение значений параметров компонентов анализируемой модели по команде, поступившей от клиента.

Функции клиентской части (клиента):

– передача серверной части имени файла, хранящегося в БД моделей схем, и передача сигналов «старт/пауза/стоп»;

– визуализация результатов моделирования, принятых от сервера;

– формирование управляющих воздействий на основе анализа действий пользователя с визуальной частью и их передача серверу.

Состав и взаимодействие серверной и клиентских частей распределенной среды многоуровневого компьютерного моделирования МАРС представлены на рисунке 3.

На сервере реализуются и функционируют следующие программно-инструментальные модули.

  1. Диспетчер запросов – центральный компонент системы, отвечающий за передачу данных между клиентскими приложениями и сервером СМ МАРС. Его основная задача – прием, преобразование запросов согласно предустановленным правилам (шаблонам) и передача серверу или клиентам. Этот компонент необходим для абстрагирования серверной части СМ МАРС и предоставления публичного программного интерфейса.
  2. Серверный резидент – специальная программа, установленная на сервере, которая получает команды управления от клиентов и осуществляет поиск и загрузку необходимой модели, хранящейся в БД моделей и схем.
  3. БД моделей и схем хранит в себе созданные в СМ МАРС модели исследуемых объектов, для которых разработаны соответствующие панели визуализации на стороне клиента, и при необходимости передает определенную модель универсальному ядру.
  4. Анализируемая модель в формате компонентных цепей хранится в БД моделей и схем и представлена в виде некоторого XML-файла многоуровневой компонентной цепи – файла с особой разметкой, необходимого для открытия универсальным ядром.
  5. Универсальное ядро осуществляет открытие XML-файла схемы, выделение компонентной цепи исследуемого объекта, обрабатываемой вычислительным ядром и имитационным ядром алгоритмической компонентной цепи алгоритма. Для ее осуществления в алгоритмическую компонентную цепь алгоритма включаются компоненты сетевого взаимодействия, осуществляющие взаимодействие с клиентскими приложениями.
  6. Вычислительное ядро производит анализ компьютерной модели технического объекта, представленной в формате метода компонентных цепей, с передачей значений переменных, обозначенных измерительными компонентами, универсальному ядру.
  7. Имитационное ядро осуществляет параметризацию компонентов компьютерной модели технического объекта, математико-алгоритмическую обработку результатов ее анализа с анализом событий, генерируемых активными компонентами, и выборку соответствующих значений переменных, передаваемых клиентам. Помимо этого, имитационное ядро осуществляет анализ команд управления моделью, поступающих от клиентов, с последующим воздействием на компьютерную модель технического объекта.

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

– веб-клиентами, реализуемыми в виде веб-приложений с применением графического движка Unreal Engine; доступ к веб-клиенту осуществляется пользователем при помощи интернет-браузера (обозревателя) с поддержкой языка JavaScript (Opera, Microsoft Internet Explorer, Google Chrome, Mozilla Firefox и т.д.); при этом используется протокол передачи гипертекста без шифрования (hypertext transmission protocol, HTTP) или с шифрованием (hypertext transmission protocol, secured, HTTPS);

– MarsEngine-клиентами [14], являющимися многоуровневыми компьютерными моделями, разработанными в среде многоуровневого компьютерного моделирования и предназначенными для открытия на компьютере с помощью приложения Mars-Engine, являющегося проигрывателем моделей на компьютерах, на которых не установлена среда моделирования (рис. 4); взаимодействие между сервером и клиентами осуществляется в локальной вычислительной сети с помощью компонентов сетевого взаимодействия, использующих стандартные сокеты операционной системы Windows (WinSock) и стек протоколов TCP/IP [15].

Разработка клиент-серверной версии среды многоуровневого компьютерного моделирования МАРС является одним из этапов реализации распределенной лаборатории. Ее создание позволит обеспечить не только прямой (локальный), но и удаленный доступ к лабораторному оборудованию, поэтому становится возможным на расстоянии управлять исполнительными устройствами и получать информацию с датчиков. Можно управлять как любыми простыми ключами (свет, задвижки воды или газа, нагревательные приборы и т.д.), так и более сложными устройствами, например рукой робота-манипулятора. Одной из сфер применения распределенной лаборатории являются создание умных теплиц и разработка компьютерных тренажеров операторов-технологов предприятий различных отраслей промышленности [16].

В результате использования распределенной лаборатории существенно повышается доступность выполнения научных исследований и проведения экспериментов над компьютерными моделями объектов различной физической природы, а также экономятся человеческие ресурсы (если рассматривать технологические производства) или затраты на перемещение (если рассматривать дистанционное образование).

Литература

  1. Berntzen R., Strandman J.O., Fjeldly T.A., Shur M.S. Advanced Solutions for Performing Real Experiments over the Internet. Intern. Conf. on Eng. Education, Oslo: Norway, August 6–10, 2001, pp. 21–26.
  2. Chen S.H., Chen R., Ramakrishnan S.Y.Hu, Zhuang Y., Ko C.C., Chen M. Development of Remote Laboratory Experimentation through Internet. Proc. 1999 IEEE Hong Kong Sympos. on Robotics and Control, Hong Kong, pp. 756–760.
  3. Naumovic M.B., Zivanovic D. Remote Experiments in Control Engineering Education Laboratory. Intern. Journ. of Online Engineering, 2008, vol. 4, no. 2, pp. 48–53.
  4. Casanova R.S., Civelli J.L., Kimbrough D.R., Heath B.P., Reeves J.H. Distance learning: a viable alter-native to the conventional lecture-lab format in general chemistry. J. Chem. Educ. 2006, vol. 83, no. 3, pp. 501–507.
  5. Баран Е.Д., Любенко А.Ю. Лабораторный практикум для дистанционного обучения общетехническим дисциплинам // Образовательные, научные и инженерные приложения в среде LabVIEW и технологии National Instruments: cб. тр. Междунар. науч.-практич. конф. М.: Изд-во РУДН, 2004.
  6. Баран Е.Д., Голошевский Н.В., Захаров П.М., Рогачевский Б.М. Виртуальная лаборатория для дистанционного обучения методам проектирования микропроцессорных систем // Образовательные, научные и инженерные приложения в среде LabVIEW и технологии National Instruments: сб. тр. Междунар. науч.-практич. конф. М.: РУДН, 2003.
  7. Евдокимов Ю.К., Линдваль В.Р., Щербаков Г.И. LabVIEW для радиоинженера: от виртуальной модели до реального прибора: практич. руководство для работы в програм. среде LabVIEW. М.: ДМК Пресс, 2007. 400 с.
  8. Дмитриев В.М., Шутенков А.В., Ганджа Т.В. Архитектура универсального вычислительного ядра для реализации виртуальных лабораторий // Приборы и системы. Управление. Контроль. Диагностика. 2004. № 2. С. 24–28.
  9. Дмитриев В.М., Ганджа Т.В. Архитектура расчетно-моделирующей среды для виртуальных лабораторий // Дистанционные образовательные технологии. Вып. 1. Пути развития: сб. науч. трудов. Томск: Изд-во ТУСУР, 2004. С. 62–69.
  10. Дмитриев В.М., Шутенков А.В., Зайченко Т.Н., Ганджа Т.В. МАРС – среда моделирования технических устройств и систем: монография. Томск: В-Спектр, 2011. 278 с.
  11. Дмитриев В.М., Ганджа Т.В., Важенин С.К. Принципы построения моделей сложных технологических объектов с неоднородными векторными связями // Современные технологии. Системный анализ. Моделирование. 2014. № 1. С. 104–111.
  12. Дмитриев В.М., Ганджа Т.В., Панов С.А. Формирование системы автоматизированного документирования методом компонентных цепей // Информатика и системы управления. 2014. № 3 (41). С. 12–22.
  13. Дмитриев В.М., Шутенков А.В., Ганджа Т.В. Архитектура универсального вычислительного ядра для реализации виртуальных лабораторий // Приборы и системы. Управление. Контроль. Диагностика. 2004. № 2. С. 24–28.
  14. Ганджа Т.В. MARS-Engine – средство использования виртуальных приборов // Современное образование: практико-ориентированные технологии подготовки инженерных кадров: матер. Междунар. науч.-методич. конф. Томск: Изд-во ТУСУР, 2015. С. 49–50.
  15. Буданов А.Н., Ганджа В.В., Ганджа Т.В. Библиотека моделей компонентов «Телеком» для среды моделирования МАРС: свид. о гос. регистр. Прогр. для ЭВМ № 2014617663. М.: Роспатент, 2014.
  16. Dmitriev V.M., Gandzha T.V., Dolganov I.M., Pisarev M.O., Dolganova I.O., Sizova E.N., Ivashkina E.N. Structure of network simulation for training and retraining of operators of controlled technological objects of oil and gas industry. Petroleum and Coal, vol. 57, iss. 6, pp. 691–695.

 

 

 

Comments

There are no comments