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

исследований и промышленного контроля

Д.А. Бобылев,
 с.н.с., к.т.н.,
dabobyl@ipu.rssi.ru
ИПУ РАН, г. Москва

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

 

The peculiarities of creating of the graphical user interface for virtual impedance analyzers are considered.  The principles of the interface organization are formulated. The examples of concrete decisions are presented.

 

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

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

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

Даже краткое перечисление областей науки и техники, в которых применяются импедансные методы, составляет внушительный список:

·         Научные исследования: твердых и жидких электролитов, процессов в диэлектриках и полупроводниках, коррозии металлов, в кристаллографии, в биологии.

·         Задачи медицинской диагностики.

·         Контроль параметров элементов в процессе их производства или эксплуатации (интегральные микросхемы, транзисторы и диоды, конденсаторы и индуктивности, пьезоэлектрические и кварцевые резонаторы).

·         Контроль параметров устройств (электрические машины, трансформаторы, тестирование и настройка антенн, материалов для жидкокристаллических мониторов и др.).

·         Контроль качества строительных материалов – бетона и строительных смесей.

·         Контроль качества продуктов питания (молока, мяса, пива и др.).

Применение современных вычислительных средств, персональных компьютеров (ПК) для решения рассматриваемых задач позволило создать в ИПУ РАН новый перспективный подкласс средств для импедансных измерений – виртуальные измерители-анализаторы импеданса, представляющие собой недорогие малогабаритные измерительные блоки, подключаемые к последовательному порту ПК (RS-232 или USB) и специализированное программное обеспечение. Эти измерительные средства характеризуются такими же метрологическими свойствами, что и дорогостоящие автономные приборы, но на порядок дешевле их и обладающие существенно большими возможностями в плане обработки, отображения и хранения измерительной информации.

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

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

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

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

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

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

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

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

Интерфейс виртуального анализатора импеданса показан на рисунке.

Анализатор позволяет измерять импеданс объекта исследования (ОИ) в диапазоне частот 0,001 Гц…3 МГц в десятках тысяч точек указанного частотного диапазона. Предусмотрена вариация амплитуды синусоидального тестового сигнала в диапазоне 10…300 мВ. Для исследования нелинейных объектов имеется источник регулируемого напряжения смещения на объекте измерения.

Кроме того, предусматривается возможность измерения температуры ОИ или среды его пребывания посредством внешней термопары, ЭДС. которой измеряется самим анализатором.

Реализованы шесть основных режимов работы:

1.   Циклическое измерение импеданса ОИ на фиксированной частоте.

2.   Сканирование импеданса ОИ по напряжению смещения на фиксированной частоте. При этом устанавливаются начальное и конечное значения напряжения смещения, а также число точек указанного диапазона.

3.   Мониторинг значений импеданса ОИ во времени в зависимости от температуры объекта исследования на фиксированной частоте.

4.   Сканирование импеданса ОИ в диапазоне частот при фиксированном напряжении смещения. При этом устанавливаются начальная и конечная частоты диапазона сканирования, число точек диапазона и характер расположения точек. Последнее означает, что предусмотрена возможность управления плотностью расположения точек частотного диапазона.

5.   Сканирование импеданса ОИ в диапазоне частот с одновременной вариацией напряжения смещения в заданных пределах с заданным шагом.

6.   Циклическое сканирование импеданса в диапазоне частот с фиксацией текущего времени и измерением температуры ОИ.

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

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

Эти данные по окончании цикла измерений записываются для режимов 2…4 в файл, а для режимов 5 и 6 в папку, содержащую массив файлов, каждый из которых в свою очередь содержит совокупность одномерных массивов. Для предотвращения потери в результате случайного сбоя результатов измерительного цикла (подчас весьма длительного) предусмотрена запись данных в реальном масштабе времени в буферный файл на жестком диске.

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

Основные элементы управления режимами измерения и параметрами измерительного процесса располагаются на четырех панелях. Первая из них, расположенная в левой нижней части интерфейса, содержит элементы управления и индикации, отвечающие за установку параметров измерения импеданса на одной фиксированной частоте. Это, прежде всего, кнопки запуска режимов 1…3 – «Z», «Z(U)», «Z(t)», текстовое поле установки и индикации текущей частоты тестового сигнала, переключатель диапазонов, а также регуляторы амплитуды тестового сигнала и времени измерения.

Элементы управления режимами 4…6, предусматривающими автоматическое измерение импеданса в диапазоне частот, расположены на панели внизу в центре интерфейса. Это кнопки включения соответствующих режимов: «Z(f)», «Z(fU)», «Z(f, t)», текстовые поля установки и индикации начала и конца частотного диапазона, регулятор числа точек частотного диапазона и органы управления характером расположения точек. Здесь же находятся регуляторы задержек, которые могут потребоваться для корректной работы анализатора при исследовании ОИ специфических видов.

Третья панель, расположенная внизу справа, позволяет выбрать отображаемые параметры импеданса и схему замещения ОИ.

Четвёртая панель элементов управления, панель поляризации, расположенная слева, ниже табло индикации текущих значений измеряемых параметров, отвечает за установку режимов использования поляризующего напряжения или тока. Здесь расположен переключатель режимов поляризации: режима заданного тока («гальваностатика») и режима заданного напряжения («потенциостатика»), а также текстовое поле установки и индикации тока и напряжения поляризации. Ниже расположена шкала поляризующего напряжения и маркеры начального, конечного и текущего значений поляризующих потенциалов.

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

Рис

Графический интерфейс виртуального анализатора импеданса

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

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

Для более точной установки используется текстовое поле, отображающее соответствующее значение частоты. Щелчок левой кнопки «мыши» по текстовому полю инвертирует его цвета. Светлый шрифт становится черным, а черный фон становится двухцветным: левая половина светло-серой, а правая – белой. При этом курсор «мыши» перемещается в центр текстового поля на линию цветового раздела. С этого момента значение частоты становится функцией горизонтальной координаты курсора «мыши», перемещение которого в пределах текстового поля позволяет изменять значение частоты на ±0,1 % от установленного значения. Вместе с ним перемещается и линия цветового раздела. Повторное нажатие кнопки «мыши» утверждает скорректированное значение частоты и восстанавливает цвета шрифта и фона. Иными словами, текстовому полю придаются еще и функции ползунка или полосы прокрутки для точной подстройки частоты. В результате такого решения всего тремя нажатиями кнопки «мыши» можно установить значение частоты с точностью до пяти десятичных знаков.

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

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

Такие же приемы используются и для формирования массива значений напряжения поляризации на панели поляризации.

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

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

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

Интерфейс был реализован в двух вариантах: с использованием программных средств FreePascal (IDE Lazarus) [2] и FreeBasic (именно второй вариант изображен на рисунке). Главное достоинство последнего – малый размер исполняемого файла, простые надежные средства программирования Com-порта и возможность формирования с высокой точностью временных интервалов средствами самого языка, без обращения к API-функциям. Все это, а также использование собственной библиотеки виджетов, специально разработанной исключительно средствами FreeBasic, делает разработку максимально платформонезависимой, т. е. облегчает перенос программы из Windows в Linux.

Литература

1.  Агамалов  Ю.Р., Бобылев  Д.А., Боровских  Л.П., Кнеллер  В.Ю. Виртуальный самоповеряемый анализатор иммитанса с адаптивными функциональными возможностями // Датчики и системы.– 2008. № 7. С. 21 – 27.

2.  Мансуров  К.Т. Основы программирования в среде Lazarus, 2010. – 772 с., ISBN-978-9967-03-646-8.