Компьютерные технологии проектирования виртуальных приборов

1. Введение

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

В настоящее время для построения виртуальных приборов (ВП), в основном для проведения реальных экспериментов, применяется программная система LabView [1] фирмы National Instruments (США) и интегрированный с ней аппаратно-программный комплекс NI Elvis [2]. Помимо этого, находят применение лаборатории фирмы ITE LTD (Израиль) [3], приборы научно-производственного предприятия «АУРИС» (Беларусь) [4]. Среди отечественных производителей можно выделить фирму «АКТАКОМ» [5], зарекомендовавшую себя на рынке контрольно-измерительной аппаратуры. Кроме того, что эти комплексы обладают высокой стоимостью, они требуют определенной квалификации пользователей, что ограничивает их применение в учебных и научных заведениях технического профиля. К тому же перечисленные комплексы программ позволяют автоматизировать лишь проведение реальных экспериментов, а современные тенденции развития образовательных технологий нуждаются в интеграции вычислительных и натурных экспериментов на лекционных, практических и лабораторных занятиях [6]. Максимального приближения вычислительного эксперимента к натурному можно достичь за счет реализации комплекса программ построения виртуальных измерительных приборов, ориентированных как на проведение вычислительных (виртуальных) и натурных (реальных) экспериментов.

В данной работе предлагается подход визуального построения виртуальных приборов генераторного и измерительного назначения, основанный на представлении приборов в виде многоуровневой компьютерной модели [7]. На основе этого подхода реализована система виртуальных инструментов и приборов [8], позволяющая создавать виртуальные приборы для целей их использования в вычислительных экспериментах, проводимых в среде многоуровневого компьютерного моделирования МАРС [9].

2. Многоуровневая структура виртуального прибора

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

лицевую панель, представляющую собой замкнутую экранную область, в которой осуществляется визуализация результатов измерения и моделирования, а также располагаются органы управления параметрами и характеристиками прибора;

модель алгоритма функционирования прибора, осуществляющую обработку поступающих в прибор данных для их вывода на лицевую панель или подготовку информации к передаче на исследуемый с помощью данного прибора объект;

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

Согласно методу многоуровневого компьютерного моделирования [11] каждый виртуальный прибор будет представляться многоуровневой компьютерной моделью (рис. 1), состоящей из следующих взаимосвязанных уровней:

Компьютерные технологии проектирования виртуальных приборов

Рис. 1. Многоуровневое представление виртуального прибора.

– визуального уровня, содержащего лицевую панель ВП, состоящую из визуальных компонентов отображения данных в понятном исследователю ТО виде и органов интерактивного управления параметрами и характеристиками прибора;

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

– объектного уровня, где представлен интерфейс взаимодействия ВП с исследуемой компьютерной моделью, представленной в формате метода компонентных цепей (МКЦ) [12].

Представленная на рис. 1 структура может быть создана вместе с исследуемой моделью технического объекта, либо же быть обособленной в конкретный виртуальный прибор, представляющий собой макрокомпонент в формате метода многоуровневого компьютерного моделирования [11].

Интеграция трех уровней ВП, представленных в виде многоуровневых компьютерных моделей, осуществляется с помощью:

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

– компонентов-атрибутов, осуществляющих передачу сформированных команд управления параметрами прибора с логического уровня на объектный;

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

– компонентов-регуляторов, с помощью которых с визуального на логический уровень передаются пользовательские команды, направленные на измерения параметров ВП, значений параметров исследуемой КМ и воздействий на реальный ТО.

3. Формализованное представление виртуальных приборов

Любой виртуальный прибор генераторного или измерительного типа в формате метода многоуровневого компьютерного моделирования формально представляется в виде тройки объектов, называемой компонентной цепью (КЦ) виртуального прибора

KBП – множество компонентов ВП, реализующих его функциональность;

BBП – множество связей компонентов – ветвей его цепи;

NBП – множество узлов цепи, образованных связями компонентов.

Множество компонентов KBП включает в себя три подмножества:

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

KL – множество логических компонентов, организующих логику функционирования прибора;

KO – множество объектных компонентов, представляющих собой исследуемую компьютерную модели исследуемого ТО.

Рассмотрим данные множества компонентов, а также методику построения виртуального прибора.

4. Визуальные компоненты

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

KV1 –множество компонентов визуализации статической информации, предназначенных для представления на лицевых панелях ВП статической информации для повышения их информативности;

KV2 – множество компонентов-визуализаторов результатов измерения и моделирования, представленных значениями числовых и нечисловых типов;

KV3 – множество управляющих компонентов, позволяющих пользователю вводить данные числовых и нечисловых типов данных для их использования в алгоритмах функционирования ВП;

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

Множество компонентов визуализации статической информации предназначено для повышения информативности лицевых панелей ВП. К ним относятся коэффициент «Надпись» (рис. 2). В нем в качестве параметра «Текст» вводится строка, статически отображаемая на визуальном уровне прибора.

Компьютерные технологии проектирования виртуальных приборов

Рис. 2. Компонент «Надпись» на визуальном слое.

Помимо этого, для изменения визуального представления компонента «Надпись» варьированию подлежат следующие параметры: использование/не использование рамки, цвет рамки, цвет текста, использование/не использование фона, шрифт и выравнивание текста (по центру, по левому краю, по правому краю).

Для визуализации результатов измерения и моделирования, представленных значениями числовых типов данных, используются компоненты-визуализаторы множества KV2. На визуальном уровне многоуровневой компьютерной модели ВП (рис. 3, а) каждый из них представляет собой графическое поле, на котором в понятной пользователю форме выводятся соответствующие результаты измерения и (или) моделирования.

Компьютерные технологии проектирования виртуальных приборов

Компьютерные технологии проектирования виртуальных приборов

Рис. 3. Компонент-визуализатор скалярных значений (емкость)

а) отображение на визуальном уровне;

б) отображение на логическом уровне

Компоненты данного множества помимо изображения на визуальном уровне многоуровневой компьютерной модели ВП (рис. 3, б) имеют отображения на ее логическом уровне, где с помощью связи, образованной узлом n1, принимают подлежащее визуализации значение H. После этого у компонента-визуализатора, реализованного в виде определенного класса на объектно-ориентированном языке программирования Visual C++, вызывается функция перерисовки изображения компонента на визуальном уровне. В ней реализуется алгоритм пересчета принятого значения H в экранные координаты подвижного объекта (в случае емкости – в координаты уровня ее заполнения).

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

Управляющие компоненты множества KV3 предоставляют пользователю возможность вносить изменения в процесс работы алгоритмов функционирования ВП, а также задавать значения, использующиеся для расчета значений параметров исследуемой модели ТО и управляющих воздействий на реальный объект. К таким компонентам относятся различные кнопки, бегунки, цифровые табло с возможностью задания значений. Компоненты множества KV3 имеют свои отображения на визуальном (рис. 4, а) и логическом уровнях (рис. 4, б) многоуровневой КМ ВП.

Компьютерные технологии проектирования виртуальных приборов

Компьютерные технологии проектирования виртуальных приборов

Рис. 4. Управляющий компонент

а) отображение на визуальном уровне;

б) отображение на логическом уровне.

На визуальном уровне многоуровневой КМ ВП такие компоненты обычно имеют определенный подвижный объект, меняющий свое положение при воздействии на него мышью. Данный подвижный объект, изменяющий свое текущее положение, указывает на определенное значение U, которое рассчитывается по определенной формуле относительно своих текущих координат. С помощью единственной связи, образованной узлом n1, данные компоненты передают текущее значение U с визуального на логический уровень многоуровневой компьютерной модели виртуального прибора.

Множество KV4 включает в себя компоненты, предназначенные для визуализации временных, частотных, параметрических и других характеристик. Такие компоненты помимо отображений на визуальном и логическом слоях многоуровневой КМ имеют специальные интерфейсные окна. Они позволяют более детально визуализировать и исследовать характеристики с помощью реализованных в них функций. К компонентам множества KV4 относятся компоненты «График», «Таблица», «Круговая диаграмма» и другие. Набор данных компонентов постоянно расширяется при решении задач различного класса.

Компонент «График», приведенный на рис. 5, предназначен для отображения массивов данных в графическом виде, в форме графиков, диаграмм, годографов и т.п. Принадлежа визуальному уровню многоуровневой КМ ВП, на ее логическом уровне он имеет свое отображение в виде компонента с переменным числом связей. Каждая из них, образованная узлом ni (где i=1..n, n – количество визуализируемых зависимостей), предназначена для поэтапного приема точек определенной визуализируемой зависимости.

Компьютерные технологии проектирования виртуальных приборов

На визуальном уровне многоуровневой КМ ВП компонент «График» имеет свое отображение в виде поля, в котором строятся временные, частотные и параметрические зависимости, а также корневые и частотные годографы, вольтамперные и другие характеристики. Для их исследования необходимо открыть отдельное окно, представленное на рис. 6. Для этого требуется выполнить двойной щелчок мыши по изображению компонента на визуальном уровне КМ ВП.

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

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

– Опция «Отображение линейных сканеров» позволяет управлять режимами линейных сканеров. На рис. 6 они представлены двумя вертикальными линиями. Для изменения положений сканеров необходимо при нажатой кнопке Ctrl на клавиатуре переместить сканер в необходимую позицию (левый сканер перемещается при нажатой левой кнопки мыши, а правый – при ее правой кнопке). В поле Обозначение происходит отображение значений характеристик, соответствующих положению левого и правого сканера, а также разностного значения между соответствующими координатами точек. Это бывает необходимо для исследования фазовых сдвигов, разниц амплитуд и других функциональных показателей характеристик.

Компьютерные технологии проектирования виртуальных приборов

Рис. 6. Окно исследования характеристик.

– Опция «В одном масштабе» позволяет масштабировать графики. При включенном режиме визуализация производится так, как показано на рис. 6. При отключенном – каждый график масштабируется на все окно. Для отключения определенного графика необходимо снять метку «Галочка» в окне «Обозначение». Точкой в нем обозначается график, для которого требуется визуализировать значения оси ординат;

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

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

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

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

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

Задание и изменения типа линий, меток и цветов, которыми отображается тот или иной график, осуществляется в окне «Выбор характеристик линии», которое приведено на рис.7.

Компьютерные технологии проектирования виртуальных приборов

Рис. 7. Окно Выбор характеристик линии.

Для вывода данных в табличной форме во множество компонентов KV4 входит компонент «Таблица». Он обладает специальным окном, приведенным на рис. 8 и предназначенным для вывода информации различных типов: строкового, численного (целого, вещественного, комплексного), логического.

Компьютерные технологии проектирования виртуальных приборов

Количество столбцов отображаемой в окне таблицы соответствует количеству организованных связей компонента «Таблица», который представлен на рис. 9.

Компьютерные технологии проектирования виртуальных приборов

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

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

5. Принципы формирования алгоритмов функционирования ВП

На логическом уровне многоуровневой КМ виртуального прибора формируется математико-алгоритмическая модель алгоритма функционирования прибора. Она представляется в графической форме в виде одной или нескольких алгоритмических компонентных цепей, каждая из которых имеет вид

KA – множество алгоритмических компонентов, принадлежащих логическому уровню многоуровневой КМ ВП. В это множество также входят компоненты-визуализаторы результатов измерения и моделирования множества KV2 и управляющие компоненты множества KV2, предназначенные для интерактивного управления параметрами виртуального прибора;

BA – множество связей алгоритмической КЦ;

NA – множество узлов алгоритмической КЦ;

M – множество передаваемых по связям сообщений с данными, полученными путем расчета записанной в явном виде модели компонента

X – входные данные компонента множества KA; Y – результат работы компонента.

Работа компонентов множества KA заключается в получении входных данных X, их преобразовании в соответствии с предписанным математико-алгоритмическим выражением FA, а также в передаче результатов Y другим компонентам, подключенным к выходным связям компонента.

Каждый компонент множества KA (2) представляется совокупностью множеств

PA – набор параметров компонента, значения которых не зависят от данных, принятых в сообщениях;

b – массив номеров ветвей компонента;

n – массив узлов компонента, предназначенных для образования связей с другими компонентами;

M – массив сообщений, размер которого соответствует количеству ветвей компонента.

Согласно методу компонентных цепей [12], являющемуся методологической основой метода многоуровневого компьютерного моделирования, каждый компонент множества KA формируется на основе четырех аспектов: геометрического, топологического, физического и математического (математико-алгоритмического).

Согласно геометрическому аспекту каждый компонент множества KA имеет свое графическое и (или) текстовое обозначение на логическом уровне многоуровневой КМ ВП. Для визуальных компонентов множества KV, имеющих свое отображение на логическом и визуальном уровнях, он предписывает правила визуализации полученных результатов, а также правила преобразования действий пользователя с управляющими компонентами на визуальном уровне.

Топологическим аспектом устанавливаются типы связей компонента, которые могут быть либо входными, либо выходными. По входным связям данные, являющиеся аргументами реализуемой компонентом функции FA (3), поступают в него для их последующего преобразования. Выходные связи позволяют передавать результаты обработки входных данных другим, подключенным к ним компонентам. Каждая алгоритмическая связь (входная или выходная) SAj задается парой значений (bj, nj), где bj – номер ветви связи, nj – номер ее узла, заданные в локальном координатном базисе компонента. Знак номера ветви bj определяет тип данной связи. Если указан знак «минус», то есть bj 0. Коммутация связей компонентов множества KA производится на основании правила 1:

Правило 1. Согласно топологическому аспекту в одном узле, образованном соединениями компонентов, допускается соединение нескольких входных KI_1, KI_2, …, KI_n и нескольких выходных алгоритмических связей KO_1, KO_2, …, KO_m (рис. 10). При этом не допускается, чтобы к одному узлу были подсоединены либо только входные (m=0), либо только выходные связи (n=0) компонентом множества KA.

Компьютерные технологии проектирования виртуальных приборов

Рис. 10. Правило соединения алгоритмических компонентов.

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

Правило 2. Соединение в одном узле допустимо между связями компонентов, по которым передаются и принимаются данные одного и того же типа данных.

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

где P – параметры компонента, значения которых задаются и изменяются пользователем и не зависят от работы компонента; VI1 – входные данные, поступающие на вход компонента посредством связей SI1; VI2 – выходные связи, являющиеся результатами работы алгоритмической функции F и предназначенные для передачи другим компонентам, подключенным к связям SI2 данного компонента.

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

KAS – компоненты-источники данных (рис. 11, а), предназначенные для передачи в алгоритмы функционирования ВП данных различных типов. К ним относятся компоненты, осуществляющие передачу данных с объектного или визуального на логический уровень многоуровневой модели ВП, и компоненты, принимающие информацию от исследуемого реального объекта или внешних хранилищ данных;

Источник