Вы находитесь на странице: 1из 64

ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ

Государственное образовательное учреждение


высшего профессионального образования
ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

Козлов В.В., Мясникова М.Г., Трофимов А.А.

ПРОЕКТИРОВАНИЕ ВИРТУАЛЬНЫХ
ИЗМЕРИТЕЛЬНЫХ ПРИБОРОВ И СИСТЕМ
Методические указания
к выполнению лабораторных работ по курсу
«ИНФОРМАЦИОННО-ИЗМЕРИТЕЛЬНЫЕ СИСТЕМЫ»

Пенза, 2010
УДК 620. 179. 16

Изложены основные принципы создания виртуальных приборов в


среде графического программирования LabVIEW. Приведены примеры
построения компьютерного генератора, осциллографа, анализатора по
принципу усложнения блок-диаграммы. В приложении приведены
примеры создания виртуальных приборов с использованием панелей
программирования LabVIEW.
Методические указания подготовлены на кафедре «Информационно
измерительная техника» и предназначены для студентов специальностей
200102 «Приборы и методы контроля качества и диагностики», 200106
«Информационно-измерительная техника и технологии», а также для
других специальностей по направлению 200100 «Приборостроение».
Ил. 26, прил. 4, библиогр. назв 6.

С о с т а в и т е л и: В.В. Козлов, М.Г. Мясникова, А.А. Трофимов

Р е ц е н з е н т: к.т.н. А.И. Диянов, начальник отдела НИКИРЭТ – филиал


ФГУП “ПО “Старт”

2
Введение

Измерительная информационная система (ИИС) - это совокупность


функционально объединенных измерительных, вычислительных и других
вспомогательных технических средств, для получения измерительной
информации, ее преобразования, обработки с целью представления
потребителю в требуемом виде, либо автоматического осуществления
логических функций контроля, диагностики, идентификации и др.
На сегодняшний день наиболее перспективной тенденцией
проектирования информационных измерительных систем является
использование в составе ИИС виртуальных измерительных приборов.
Виртуальные измерительные приборы, построенные на базе персонального
компьютера и стандартной плате ввода аналоговых сигналов (АЦП) или
микропроцессоре с аналоговым вводом информации, позволяют собирать,
хранить, обрабатывать измерительную информацию, используя сложные
алгоритмы цифровой обработки сигналов, передавать ее на другие
компьютеры, связанные локальной сетью.
Одним из мировых лидеров в производстве аппаратных и
программных средств для создания виртуальных измерительных системам
является фирма National Instruments (США). Разработанная National
Instruments среда разработки лабораторных виртуальных приборов
LabVIEW (Laboratory Virtual Instrument Engineering Workbench)
представляет собой среду прикладного графического программирования,
используемую в качестве стандартного инструмента для проведения
измерений, анализа их данных и последующего управления приборами и
исследуемыми объектами. LabVIEW может использоваться на
компьютерах с операционными системами Windows, MacOS, Linux, Solaris
и HP-UX.
Программы, созданные в среде LabVIEW, называются виртуальными
приборами или, сокращенно, ВП, потому что их внешний вид и
выполняемые ими функций схожи с внешним видом и функциями
реальных физических приборов, таких как осциллограф или мультиметр.
Среда LabVIEW содержит обширный набор инструментальных средств
для сбора, анализа, представления и хранения данных, а также
инструменты, помогающие отладить создаваемый код.
Написание программы в LabVIEW начинается с создания интерфейса
пользователя (или, по другому, лицевой панели), содержащего элементы
управления и индикаторы. Примерами элементов управления являются
ручки управления, кнопки, круговые шкалы и другие элементы ввода.
Индикаторами являются графики, светодиодные индикаторы и другие
элементы вывода. После создания интерфейса пользователя, вы можете

3
создать на блок диаграмме код, используя другие виртуальные приборы
(ВП) и структуры для управления объектами лицевой панели.
Целью данного лабораторного практикума является освоение
студентами технологии проектирования виртуальных приборов в среде
LabVIEW. Каждая лабораторная работа содержит сведения о работе с
программой, необходимые для ее выполнения, и лабораторное задание.
Внешний вид лицевой панели виртуального прибора студент
разрабатывает самостоятельно, исходя их условий лабораторного задания,
эргономичности, компактности и удобства восприятия информации.
Лабораторные работы основаны на принципе усложнения – каждую
последующую можно выполнить на основе предыдущей, добавляя новые
элементы управления и функциональные возможности.
При создании приборов в лабораторных работах используются
встроенные виртуальные приборы – так называемые Express VI. А в
Приложении приведены примеры создания в LabVIEW более сложных
виртуальных приборов с использованием панелей программирования. Они
могут пригодиться для самостоятельных разработок студентов и
описывают такие полезные приложения, как нормирование шкалы при
выводе временных и частотных характеристик на экран ВП, вычисление
функциональных зависимостей по заданному выражению (на примере
вычисления параметрического спектра), решение степенного уравнения,
системы линейных уравнений.

4
Общие положения
Современное программное обеспечение, которое используется в
ИИС, имеет многовариантную и многоуровневую архитектуру и включает
взаимосвязанные средства программной поддержки функционирования
системы в целом и ее отдельных компонентов. Ниже приведена
обобщенная программно-аппаратная модель ИИС, включающая основные
программные и технические средства.
Уровень 4. Программы пользователя
Программное обеспечение верхнего уровня
управления
Уровень 3. Языки и средства программирования
Measurement Studio
Другие средства
(LabWindows/CVI, LabVIEW
программирования
Visual Basic, C++)
Уровень 2. Операционные системы, программная поддержка системных интерфейсов
Программы поддержки операций ввода/вывода для стандартных магистралей на уровне
операционных систем, драйверы
Уровень 1. Вариант аппаратной реализации информационно-измерительных средств и
соответствующие им драйверы
Устройства в Устройства Изме- Устройства в Испол- Устройства Устройства Конт-
стандартах ввода/ ритель- стандартах нитель- ввода видео- для управ- роллеры
GPIB Serial, вывода ные PXI/Compact ные уст- информации ления ввода/
VXI и согласо- модули PCI ройства распреде- вывода
вания ленными
сигналов системами

Уровень 1 определяет вариант аппаратной реализации используемых


в ИИС измерительных и управляющих средств и соответствующие им
драйверы на языках низкого уровня. Уровню 2 соответствуют варианты
стандартных магистралей, с помощью которых организуется обмен
информацией между измерительно-управляющей аппаратурой и
компьютером, пакеты программ, поддерживающие их работу, тип
применяемой операционной системы. Уровень 3 задает способы
программирования операций ввода/вывода и программные средства
прикладного программирования, которые могут использоваться в ИИС. На
уровне 4 реализуется конечный продукт системы - пользовательский
программный интерфейс «человек-машина» (Man-Machine Interface
-MMI).
Долгое время при проектировании автоматизированных систем
наряду с современными программно-управляемыми унифицированными
по ряду показателей техническими средствами использовались
нестандартные локальные измерительные и управляющие устройства. В
таких условиях для каждой конфигурации аппаратных средств и для
каждой задачи автоматизации индивидуальное прикладное программное

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

Средства и языки программирования.


Программные средства для взаимодействия с аппаратурой.
Обеспечение программного ввода/вывода информации между
компьютером и измерительно-управляющим оборудованием через
аппаратную среду обеспечивается специальными программными
средствами, включающими в себя библиотеки ввода/вывода и драйверы
аппаратных средств.
На уровне программирования операций ввода/вывода широко
используются унифицированные, но разработанные под определенный вид
аппаратуры библиотеки ввода/вывода:
NI-DAQ — для встраиваемых в компьютер Plugin-card-устройств;
N1-488.2 — для GPIB-приборов на базе приборного интерфейса в
стандарте IEEE-488;
SICL (Standard Instrument Control Library) — для управления опера-
циями ввода/вывода для магистрали VXI-bus.
С целью интеграции различных систем в единую систему предложен
ряд спецификаций, обеспечивающих стандартизацию библиотек
ввода/вывода. В основе спецификаций лежит архитектура VISA
(Virtual Instrument Software Architecture). Архитектура VISA разработана
компанией «National Instruments» и предложена в качестве проекта
открытого стандарта в подкомитет IEEE 1226.5 [28]. В качестве основных
принципов стандарта заявлены обеспечение Plug&Play - совместимости
драйверов аппаратных средств и использование архитектуры VISA в

6
системах автоматизации. Термин «Plug&Play» означает такую технологию
изготовления и программной поддержки устройств, при которой не
требуется никакой их дополнительной настройки в конкретной
конфигурации системы. Устройство, включенное в рабочее гнездо, само
определяет конфигурацию системы и настраивается для работы.
Это позволит:
- создать единый и удобный в применении набор функций
управления вводом/выводом, не зависящий от типа измерительно-
управляющих устройств и типа интерфейса связи компьютера с ИИС,
операционной системы, языка программирования, сетевого механизма;
- согласовать однопроцессорные, многопроцессорные и полностью
распределенные системные архитектуры;
- обеспечить возможность применения вновь создаваемого
прикладного ПО в уже имеющихся системах;
- обеспечить возможность программно-независимого перехода от
локальных систем к распределенным.
В настоящее время стандарт VISA полностью обеспечивает
унификацию операций ввода/вывода в VXI-системах и начинает
применяться для стандартов PXI, GPIB, УВВ типа FieldPoint. При
присоединении к стандарту VISA большинства производителей средств
автоматизации появляется возможность объединения всех вариантов
реализации ИИС в единую программно-технологическую среду.
Технология разработки систем, обладающих перечисленными выше
свойствами, получила название VXI-технологии.
Замечание. Для объединения VME-системы и систем на базе
промышленных сетей и PLC-операций ввода/вывода с другими,
удовлетворяющими требованиям VXI-технологий, необходима доработка
программного обеспечения. Эти системы в настоящее время не обладают
требуемым уровнем стандартизации.
Средства и языки прикладного программирования. Современные
средства разработки прикладного программного обеспечения
предоставляют широкий выбор инструментов как для опытных
программистов, так и для не искушенных в программировании
пользователей. Эти средства позволяют создавать пользовательские
программы непосредственно на стандартных языках программирования,
например C/C++, Basic, а также с помощью специальных библиотек,
являющихся основой ряда инструментальных программных средств,
которые позволяют сократить время разработки и отладки
пользовательского ПО. Пакеты для разработки прикладного
программирования для систем автоматизации по своему основному
назначению разделяются на две основные группы:

7
- пакеты программ HP-VEE, LabVIEW, Measurement Studio
(LabWindows, Component Works) и т.п. ориентированы, в основном, на
использование в системах автоматизации лабораторного эксперимента и
испытаний, хотя могут применяться и при создании других систем
компьютерной автоматизации;
- пакеты LabVIEW/DSC, Lookout, InTouch, Трейс моуд
предназначены для создания прикладного ПО в системах АСУТП и
промышленной автоматики (система SCADA-Supervisory Control And Data
Acquisition).
По способу программирования эти пакеты делятся на следующие:
- текстово-графические (LabWindows/CVI, Measurement Studio,
Visual Basic), использующие элементы текстового программирования и
ориентированные на опытных программистов;
- графические, объектно-ориентированные (InTouch, Трейс моуд),
основанные на применении графических образов объектов АСУТП в
качестве элементов программирования;
- графические функционально-ориентированные (HP-VEE, Lab-
VIEW, Lookout, LabVIEW/DSC), использующие функционально-
логический принцип конструирования (рисования) и графического
представления алгоритмов программ. Графические пакеты легко
осваиваются не только программистами, но и пользователями, не
имеющими опыта программирования, поэтому они все более широко
используются.
Основные пользовательские характеристики наиболее популярных
пакетов прикладных программ представлены в таблице 1.

Таблица 1 Характеристики некоторых пакетов прикладных программ


Пакет прикладных Фирма (страна Используемые ОС Типы устройств ввода/
программ изготовитель) вывода и стандарты
HP-VEE «Hewlett-Packard» Windows 9x/2000/XP, GPIB, VXI
(США) HP-UX
LabVIEW «National Windows 9x/2000/XP, Plugin-card, GPIB, VME,
Instruments» MacOS, HP-UX, VXI, PXI, SCXI, Field
(США) Solaris, Concurrent Point, Ethernet,
Power Max CompactPCI/PXI
LabWindows/CVI «National Windows 9x/2000/XP, Plugin-card, GPIB, VME,
Instruments» MacOS, HP-UX, VXI, PXI, SCXI, Field
(США) Solaris Point
Measurement «National Windows 9x/2000/XR Plugin-card, GPIB, VME,
Studio Instruments» Linux, Solario, MacOS VXI, PXI, SCXI, Field
(США) Point

8
LabVIEW/DSC «National Windows 9x/2000/XP Plugin-card, GPIB, VME,
Instruments» VXI, PXI, SCXI, Video,
(США) Field Point
Lookout «National Windows 9x/NT Plugin-card, SCXI, PXI,
Instruments» PLC
(США)
InTouch «Wonderware» Windows 9x/NT VME, VXI, PLC
(США)
Трейс моуд «AdAstra MS DOS, Windows VME, PLC
Research Group, 95/NT, Novell
Ltd» (Россия) NetWare
IsaGRAF «CJ International» MS DOS, OS-9, VME, PLC
(Франция) Windows 9x/NT

Материалы лабораторного практикума по курсу «Информационно-


измерительные системы» охватывают разделы:
- спектральные измерительные системы;
- помехи в информационно-измерительных системах;
- метрологические характеристики информационно-измерительных
систем;
- виртуальные системы.

9
ЛАБОРАТОРНАЯ РАБОТА №1
Проектирование многофункционального генератора в среде
LabView

Общие сведения

Для создания программ, управляющих виртуальными


измерительными приборами, необходимо ознакомится с общими
приемами работы в среде LabView.
Диалоговое окно New и Шаблоны ВП
Диалоговое окно New содержит множество шаблонов ВП. Шаблоны
помогают создавать ВП для наиболее распространенных измерительных и
других приложений. Они содержат экспресс ВП, функции и объекты
лицевой панели, которые могут потребоваться при создании указанных
приложений. Чтобы открыть диалоговое окно New, используйте один из
следующих методов:
• После запуска LabVIEW щелкните по ссылкам New, VI from
Template или More в окне Getting Started.
• Выберите меню File » New (Файл » Новый) в окне Getting Started,
на лицевой панели или блок диаграмме.
Лицевая панель представляет собой интерфейс пользователя ВП.
При создании лицевой панели используются элементы управления и
индикаторы, которые являются, соответственно, интерактивными
терминалами ввода/вывода этих ВП. Элементы управления и индикаторы
расположены в палитре элементов управления. Примерами элементов
управления являются ручки управления, кнопки, круговые шкалы и другие
элементы ввода. Они моделируют реальные устройства ввода значений и
поставляют данные на блок диаграмму ВП. Индикаторами являются
графики, светодиодные, числовые индикаторы и др. Индикаторы
моделируют устройства вывода значений и отображают данные, которые
были получены или сгенерированы на блок диаграмме.
Блок диаграмма содержит исходный графический код, также
известный как код на языке G, который определяет работу ВП. Для
управления объектами лицевой панели на блок диаграмме используется
графическое представление функций. Объекты лицевой панели имеют на
блок диаграмме вид иконок терминалов.
Проводники (Wire) соединяют терминалы элементов управления и
индикаторов с экспресс ВП, ВП и функциями. Данные перемещаются по
проводникам от элементов управления к ВП и функциям, от ВП и функций
к другим ВП и функциям, и от ВП и функций к индикаторам.
Перемещение данных через узлы на блок диаграмме определяет порядок

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

Инструментальные средства для работы с лицевой панелью и


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

Запуск и остановка ВП
Выполнение кода происходит при запуске ВП. Нажмите на кнопку
Run или комбинацию клавиш <Ctrl+R> для запуска ВП. Кнопка Run
примет вид затемненной стрелки, чтобы показать, что данный ВП
выполняется. Вы можете остановить ВП немедленно, нажав на кнопку
Abort Execution. Однако подобное прерывание ВП, особенно если он
использует внешние ресурсы, может оставить аппаратные средства в
неизвестном состоянии. Поэтому, во избежание данной проблемы,
предусмотрите в создаваемом ВП кнопку остановки. Кнопка Стоп
останавливает ВП после окончания исполнения текущей итерации ВП.
Экспресс ВП, расположенные в палитре Функций, используются
для выполнения наиболее распространенных измерительных задач. При
размещении экспресс ВП на блок диаграмме по умолчанию появляется
диалоговое окно для настройки данного экспресс ВП. В этом диалоговом
окне можно настроить опции, задавая, таким образом, поведение ВП. Для
вызова диалогового окна настройки, можно дважды щелкнуть по экспресс
ВП или щелкнуть правой кнопкой мыши по экспресс ВП и выбрать опцию
Properties (Свойства) из контекстного меню. Если вы подключите данные
к экспресс ВП и запустите его, экспресс ВП покажет реальные данные в
диалоговом окне конфигурации. Если вы закроете и повторно откроете
экспресс ВП, на графике в диалоговом окне настройки будет показан
образец данных безотносительно подаваемых значений, пока вы не
запустите его снова. На блок диаграмме экспресс ВП имеют вид голубых
иконок с расширяемыми границами. Изменяя размеры экспресс ВП, можно
отобразить все его вводы и выводы, количество которых зависит от
настройки ВП.

11
Запуск LabVIEW
При запуске LabVIEW на экране появится окно первоначального
запуска Getting Started, показанное на рисунке 1.1. Это окно используется,
когда требуется создать новый ВП, открыть созданный ранее файл
LabVIEW, найти примеры или обратиться к справке. Здесь же вы можете
найти дополнительную информацию и ресурсы, помогающие освоить
работу в среде LabVIEW, такие как специальные руководства и разделы
справочника, а также Интернет ресурсы на сайте ni.com компании National
Instruments.

Рисунок 1.1 – Окно Getting Started

Окно первоначально запуска Getting Started исчезнет, если открыть


уже существующий файл или создать новый. Это окно появится снова,
если закрыть все ранее открытые лицевые панели и блок диаграммы.
Также это окно можно вызвать в процессе работы из лицевой панели или
блок диаграммы, выбрав меню View » Getting Started Window.

Добавление элемента управления на Лицевую панель


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

12
1. Если палитра элементов, показанная на рисунке 1.2, не видна на
лицевой панели, выберите меню View » Controls Palette.

Рисунок 1.2 – Палитра элементов управления

Для того, чтобы появились палитра элементов управления или


палитра функций, можно щелкнуть правой кнопкой мыши на любом
свободном месте лицевой панели или блок диаграммы. При этом палитра
элементов управления или функций появляется со значком "булавки" в
левом верхнем углу. Щелкните по нему, чтобы закрепить палитру, и тогда
она будет присутствовать постоянно.
2. Если вы впервые запускаете LabVIEW, палитра элементов
управления по умолчанию появится с открытой подпалитрой Express. Если
эта подпалитра не видна, щелкните Express в палитре элементов
управления.
3. Перемещайте курсор мыши по значкам на подпалитре Express,
чтобы найти подпалитру числовых элементов управления Numeric. Когда
вы перемещаете курсор по значкам в палитре элементов управления,
название подпалитры, элемента управления/индикатора появляется в поле
подсказки под значком.
4. Щелкните по значку Numeric Controls, чтобы отобразить
подпалитру числовых элементов управления/индикаторов.
5. Щелкните по вращающейся ручке (Knob) в палитре Numeric, чтобы
прикрепить элемент управления к курсору, затем поместите ручку на
лицевую панель, слева от графика. Эта ручка будет использоваться в
следующем упражнении для управления амплитудой сигнала.
6. Выберите меню File » Save As (Файл » Сохранить Как) и сохраните
ВП как «Получение сигнала.vi» в заранее определенном месте.

13
Соединение объектов на блок диаграмме
Чтобы использовать вращающуюся ручку для изменения амплитуды
сигнала, необходимо соединить ее с входом Amplitude (Амплитуда)
экспресс ВП Simulate Signal.
Для этого выполните следующие шаги:
1. На блок диаграмме наведите курсор на терминал элемента
управления Knob (Вращающаяся ручка), показанный слева и
обозначающего цикл. Курсор мыши станет стрелкой (инструментом
Позиционирования), как показано слева. Этот инструмент используется
для выбора, размещения или изменения размеров объектов.
2. Выделите терминал Knob (Вращающаяся ручка) с помощью
инструмента Позиционирования. Убедитесь, что он находится слева от
экспресс ВП Simulate Signal и внутри серого контура, показанного слева.
Терминалы внутри цикла являются представлением элементов управления,
расположенных на лицевой панели. Терминалы – точки ввода/вывода,
через которые происходит обмен информацией между лицевой панелью и
блок диаграммой.
3. Снимите выделение с терминала Knob (вращающаяся ручка),
щелкнув в пустом месте блок диаграммы. В будущем, чтобы использовать
другие инструменты при работе с объектами, необходимо предварительно
снять выделение с объекта и затем переключиться на нужный инструмент.
4. Поместите курсор над стрелкой на терминале Knob (Вращающаяся
ручка), как показано слева. Курсор примет вид катушки , или Wiring
tool (Инструмент соединения). Используйте этот инструмент для
соединения объектов на блок-диаграмме.
5. Когда появится инструмент Соединения, щелкните левой кнопкой
мыши по стрелке на терминале Knob, а затем по стрелке на входе
Амплитуда экспресс ВП Simulate Signal, как показано слева, чтобы
соединить эти объекты вместе. Появится проводник, соединяющий
объекты. Данные будут передаваться по этому проводнику от терминала
Knob (вращающаяся ручка) к экспресс ВП.
6. Выберите меню File » Save (Файл » Сохранить), чтобы сохранить
ВП. Запуск ВП Исполнение кода начинается с запуском ВП.
Выполните следующие шаги, чтобы запустить ВП Получение сигнала.
1. Переключитесь на лицевую панель, нажав комбинацию клавиш
<Ctrl+E> или щелкнув по ней.
2. Нажмите кнопку Run (Пуск) или клавиши <Ctrl+R> для запуска ВП.
3. Поместите курсор над ручкой управления. Курсор примет вид
руки, т.е. перейдет в режим Operating tool (инструмент Управление), как

14
показано слева. Используйте его, чтобы менять значение элемента
управления.
4. Используя Инструмент Управление, поверните ручку, чтобы
скорректировать амплитуду пилообразного сигнала. Амплитуда
пилообразного сигнала изменяется настолько, насколько Вы
поворачиваете ручку. При этом инструмент Управление будет показывать
поле подсказки, в котором будет отображаться текущее числовое значение.
Ось Y на графике масштабируется автоматически, подстраиваясь под
изменение амплитуды.
Чтобы показать, что данный ВП выполняется, кнопка Run (Пуск)
изменяется на затемненную стрелку, которая показана слева. Во время
выполнения ВП, можно изменять значения большинства элементов
управления, но редактировать ВП нельзя.
5. Чтобы остановить ВП, щелкните по кнопке STOP (Стоп) ,
которая показана слева. Кнопка STOP останавливает ВП после того, как
он закончит выполнение текущей итерации. Кнопка Abort Execution
(прервать выполнение), которая показана слева, останавливает ВП
немедленно, до окончания текущей итерации . Прерывание работы ВП,
использующего внешние ресурсы, например внешние аппаратные
средства, может оставить ресурсы в неизвестном состоянии, не сбросив
или не освободив их должным образом. Снабдите ВП, который вы
создаете, кнопкой остановки, чтобы обойти эту проблему

Настройка ручки управления


Ручка управления изменяет амплитуду пилообразного сигнала,
поэтому метка "Амплитуда" точно опишет ее назначение.
Выполните следующие шаги, чтобы настроить внешний вид ручки.
1. На лицевой панели щелкните правой кнопкой мыши по ручке и
выберите опцию Properties (Свойства) из контекстного меню. Появится
диалоговое окно Knob Properties (Свойства ручки управления).
2. В разделе Label (Метка) на вкладке Appearance (Внешний вид),
удалите из текстового поля текст Knob и введите Амплитуда. Диалоговое
окно Knob Properties (Свойства ручки управления) должно выглядеть, как
на рисунке 1.3.

15
Рисунок 1.3 – Диалоговое окно Knob Properties

3. Щелкните по вкладке Scale (Шкала) и в разделе Scale Style (Тип


шкалы), выделите пункт Show color ramp (Показать градиентную
заливку). Ручка на лицевой панели обновится в соответствии с этими
изменениями.
4. Щелкните по кнопке OK, чтобы сохранить текущую конфигурацию
и закрыть диалоговое окно Knob Properties.
5. Сохраните ВП.
6. Повторно откройте диалоговое окно Knob Properties и
поэкспериментируйте с другими свойствами ручки управления. Например,
на вкладке Scale попробуйте изменить цвет в поле Marker text color,
щелкая по палитре цветов.
7. Нажмите кнопку Cancel, чтобы отменить сделанные изменения.
Если вы хотите сохранить изменения, нажмите кнопку OK.

Настройка графика осциллограммы


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

16
Выполните следующие шаги, чтобы настроить вид графика
осциллограмм.
1. Поместите курсор на панель редактирования графика. Хотя на
графике изображено две кривых, на панели редактирования отображается
только одна.
2. Когда появится двунаправленная стрелка, как показано на рисунке
1.4, перетащите границу панели редактирования так, чтобы в ней
добавилась еще одна строчка. Когда вы отпустите кнопку мыши, появится
название второго графика.

Рисунок 1.4 – Увеличение панели редактирования

3. Щелкните правой кнопкой мыши по графику осциллограмм и


выберите Properties (Свойства) из контекстного меню. Появится
диалоговое окно Waveform Graph Properties (Свойства графика
осциллограмм).
4. На вкладке Plots (Графики) выберите Sawtooth из выпадающего
меню. В разделе Colors (Цвета) щелкните на палитру цветов линии.
Выберите новый цвет линии.
5. Выберите Sawtooth (Formula Result) из выпадающего меню.
6. Выделите галочкой пункт Do not use waveform names for plot
names (Не использовать названия осциллограмм в качестве названий
кривых).
7. В текстовом поле Name удалите текущий ярлык и измените
название этого графика на "Масштабированный пилообразный сигнал".
8. Щелкните по кнопке OK, чтобы сохранить текущие настройки и
закрыть диалоговое окно Waveform Graph Properties (Свойства графика

17
осциллограмм). Цвет графиков и их названия на лицевой панели
изменится.
9. Повторно откройте диалоговое окно Waveform Graph Properties
(Свойства графика осциллограмм) и поэкспериментируйте с другими
свойствами графиков. Например, на вкладке Scales попробуйте отключить
автоматическое масштабирование по оси Y и менять максимальное и
минимальное значение шкалы Y.
10. Нажмите кнопку Cancel, чтобы отменить сделанные изменения.
Если вы хотите сохранить изменения, нажмите кнопку OK.
11. Сохраните и закройте ВП.

Настройка непрерывного выполнения ВП до остановки его


пользователем
В текущей версии ВП запускается один раз, сгенерирует сигнал и
заканчивает свое выполнение. Чтобы ВП выполнялся до определенного
момента, можно использовать цикл While (While Loop).
Выполните следующие шаги, чтобы добавить цикл While (While
Loop) на блок диаграмму.
1. Активируйте лицевую панель и запустите ВП. ВП выполнится один
раз и, затем, остановится.
2. Переключитесь на блок диаграмму.
3. Щелкните по кнопке Search (Найти), которая показана слева, на
палитре Функций, и введите слово While в текстовое поле. LabVIEW ищет
слова, которые вы набрали, и отображает любые совпадения в текстовом
поле результатов поиска. В поле результатов поиска слева от названия
подпалитры будет отображаться символ папки, а в случае экспресс ВП это
будет иконка ВП на голубом фоне.
4. Дважды щелкните While Loop <<Execution Control>> (Цикл
While<Управление выполнением>), чтобы отобразить подпалитру
Execution Control и Цикл While.
5. Выберите цикл While (While Loop) в палитре Execution Control.
6. Поместите курсор мыши в верхний левый угол блок диаграммы.
Щелкните там, чтобы "закрепить" вернхний левый угол цикла While.
7. Переместите курсор по диагонали так, чтобы охватить все экспресс
ВП и проводники, как показано на рисунке 1.5.

18
Рисунок 1.5 – Размещение экспресс ВП внутри цикла While

8. Еще раз щелкните кнопкой мыши, чтобы создать Цикл While,


охватывающий экспресс ВП и проводники. Цикл While, который показан
на рисунке 1.6, появится с кнопкой Стоп (STOP), соединенной с
терминалом условия выхода (conditional terminal). Этот цикл будет
останавливаться при нажатии на кнопку Стоп (STOP).

Рисунок 1.6 – Цикл While

9. Переключитесь на лицевую панель и выполните ВП. ВП теперь


будет выполняться до тех пор, пока вы не нажмете кнопку Стоп (STOP).
10. Нажмите кнопку Стоп (STOP) и сохраните ВП.

Использование цикла условие (Case)


Конструкция "условие" аналогична таким операторам текстового
языка, как if-then-else и switch (C)/case of (Pascal). Конструкция "условие"
проверяет логический, либо числовой, либо строковый параметр на
различные значения и выполняет лишь один из нескольких,
соответствующий значению параметра, вариантов кода.
Конструкция "условие" состоит из двух (if-then-else) или более
(switch/case of) страниц. На верхней границе конструкции расположен
переключатель страниц. Каждой странице соответствует какое-либо

19
значение проверяемой величины. Например, если проверяется логическое
значение, то у конструкции условие будут две страницы со значениями
"True" и "False". Если проверяется текстовое данное, содержащее название
месяца, то у конструкции могут быть страницы со значениями "январь",
"февраль", "март",… Если проверяются целые числа, то могут быть
страницы со значениями "1", "2", "3:10" (диапазон от 3 до 10), "11,12,13,
15:20" (список и диапазон) и т.п. Менять проверочные значения можно с
клавиатуры. Добавлять, удалять, тиражировать нужные страницы можно
через всплывающее меню (правая кнопка мыши).

Рисунок 1.7 – Использование структуры Case.

На левой границе конструкции "условие" расположен селектор


(контакт со знаком вопроса), к которому следует проводом подключить
проверяемую величину. При выборе из палитры-меню конструкция
"условие" соответствует оператору if-then-else и по умолчанию проверяет
логическую величину, селектор зеленый. Если требуется проверять строки
или числа, то надо лишь подключить нужные данные проводом к
селектору – цвет селектора автоматически изменится на розовый или
синий.
Необходимо заметить, что в случае проверки строковых или числовых
параметров одна из страниц в перечне соответствующих значений должна
содержать специальное значение "Default" (по умолчанию). Эта страница
будет выполнена в том случае, если ни одна из других страниц не пройдет
проверку на соответствие.
На рисунке 1.7 изображена блок-диаграмма определения N методом
табулирования значений (или табличное задание функции), когда

20
интересуют не любые значения N, а лишь некоторые; для них N
рассчитывается предварительно. Каждому такому значению "N"
соответствует своя страница конструкции "условие". Для каждого
"известного", протабулированного значения "N" конструкция "условие"
выдает результат N!. Все остальные, "неизвестные" значения "N" будут
обработаны страницей со значением "Default", в данном случае
результатом работы конструкции в этих случаях будет значение -1.

Особенности выходных туннелей конструкции "условие".


Данные, получаемые от конструкции "условие" с выходных туннелей
должны быть определены независимо от значения проверяемой величины.
Следовательно, для всех выходных туннелей необходимо определить
данные на всех страницах конструкции "условие" – на каждой странице
должен быть провод, передающий данные в выходной туннель. В
некоторых случаях можно использовать значения туннелей по умолчанию.
Для этого используется режим "Use Default If Unwired" всплывающего
меню свойств туннеля. При этом для тех страниц, где данные в туннель не
передаются, будут использованы значения для любых чисел – 0, для строк
- пустая строка, для логических данных – False, для массивов - пустой
массив и т.п.

Порядок выполнения лабораторной работы

1. Создать новый ВП (Blank VI).


2. В окне блок диаграммы выбрать элемент генератор сигналов (Basic
Function Generator), создать для него необходимые элементы
управления и отображения на лицевой панели.
3. Добавить к элементу генератор сигналов возможность
формирования шумового сигнала при помощи элемента генератор
шума (Gaussian White Noise Waveform) и структуры Case. Создать
необходимые элементы управления на лицевой панели.
4. Организовать работу данной программы в цикле While Loop.
5. Оформить лицевую панель ВП.
- эргономично расположить органы управления;
- все надписи сделать на русском языке.
6. Оформить отчет о лабораторной работе.
7. Защитить отчет о лабораторной работе при собеседовании с
преподавателем.

Виртуальная панель управления генератором должна содержать


следующие панели:

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

22
ЛАБОРАТОРНАЯ РАБОТА №2
Проектирование осциллографа в среде LabView

Общие сведения

Преобразование сигнала
Выполните следующие шаги, чтобы увеличить амплитуду сигнала в
10 раз и вывести результат на график на лицевой панели.
1. На блок диаграмме, используя инструмент Перемещение, дважды
щелкните по проводнику, который соединяет экспресс ВП Simulate Signal
с терминалом графика осциллограммы (показано слева).
2. Нажмите клавишу <Delete>, чтобы удалить этот проводник.
3. Если палитра Функций, которая показана на рисунке 1.6, не
отображается, выберите меню View » Functions Palette (Вид » Палитра
Функций), чтобы сделать ее видимой. Палитра Функций по умолчанию
открывается вместе с подпалитрой Express. Если выбрана другая
подпалитра, можно вернуться к подпалитре Express, нажав "Express" в
палитре Функций.
4. В палитре Arithmetic & Comparison palette (Арифметика и
Сравнение), выберите экспресс ВП Formula (Формула), и разместите его
на блок диаграмме в цикле между экспресс ВП и терминалом графика
осциллограммы. Можно переместить терминал вправо, чтобы между
экспресс ВП и терминалом было больше места. Когда вы поместите
экспресс ВП на блок диаграмме, появится диалоговое окно Configure
Formula (Настройка Формулы). При размещении экспресс ВП на блок
диаграмме, диалоговое окно настройки этого ВП появляется
автоматически.
5. Щелкните по кнопке Help (Справка), показанная слева, в правом
нижнем углу диалогового окна Configure Formula (Настройка Формулы),
чтобы отобразить раздел справки LabVIEW для этого экспресс ВП.
Данный документ описывает экспресс ВП, опции диалогового окна
настройки, а также вводы и выводы экспресс ВП.
Каждый экспресс ВП снабжен соответствующей справочной
информацией, к которой можно обратиться, нажав на кнопку Help
(Справка) в диалоговом окне настройки либо вызвав контекстное меню
(нажатие правой кнопкой мыши) экспресс ВП и выбрав пункт Help
(Справка).
6. В справочном разделе Formula (Формула), найдите опцию
диалогового окна, отвечающую за ввод переменных в формулу.
7. Сверните окно LabVIEW Help, чтобы вернуться к диалоговому
окну Configure Formula (Настройка Формулы).

23
8. Измените текст в текстовом поле Label с X1 на Sawtooth, чтобы
переименовать входное значение экспресс ВП Formula. После нажатия
кнопкой мыши в текстовом поле String вверху диалогового окна Configure
Formula, текст изменится в соответствии с введенным названием.
9. Задайте масштабный множитель, вводя символы *10 после слова
Sawtooth в текстовом поле String.
Для этого можно использовать кнопки ввода (Input) в диалоговом
окне конфигурации либо клавиши *, 1, и 0 на клавиатуре. Если вы
используете кнопки Input в диалоговом окне конфигурации, LabVIEW
помещает символы формулы после переменной Sawtooth в текстовом поле
String. При использовании клавиатуры, щелкните левой кнопкой мыши в
текстовом поле String после переменной Sawtooth и введите требуемую
формулу.
Диалоговое окно Configure Formula (Настройка Формулы) должно
выглядеть так же, как на рисунке 2.1.

Рисунок 2.1 – Диалоговое окно Configure Formula

При вводе неправильной формулы в текстовом поле String


светодиодный индикатор Errors (индикатор Ошибок) в правом верхнем
углу станет серым и отобразит текст "Invalid Formula" (Неверная формула).

24
10. Щелкните по кнопке OK, чтобы сохранить текущие настройки и
закрыть диалоговое окно Configure Formula.
11. Поместите курсор над стрелкой на выходе Sawtooth экспресс ВП
Simulate Signal.
12. Когда появится инструмент Соединения, щелкните левой
кнопкой мыши по стрелке на выходе Sawtooth и затем на входе Sawtooth
эспресс ВП Formula, чтобы соединить эти объекты.
13. Используйте инструмент Соединение для соединения выхода
Result (Результат) экспресс ВП Formula с терминалом графика
осциллограммы.
Блок диаграмма должна выглядеть, как показано на рисунке 2.2.

Рисунок 2.2 – Блок диаграмма ВП Получение сигнала

14. Нажмите клавиши <Ctrl S> или выберите меню File » Save (Файл
» Сохранить), чтобы сохранить ВП.

Отображение двух сигналов на графике


Чтобы на одном графике сравнить сигнал, сгенерированный экспресс
ВП Simulate Signal, с сигналом, измененным Экспресс ВП Formula,
используйте функцию Merge Signals (Объединение сигналов).
Необходимо выполнить следующие шаги, чтобы отобразить два
сигнала на одном графике:
1. На блок диаграмме поместите курсор над стрелкой на выходе
Sawtooth экспресс ВП Simulate Signal.
2. Соедините выход Sawtooth с терминалом графика осциллограмм,
используя инструмент Соединение.

25
В месте соединения двух проводников появится функция Merge
Signals (Объединение сигналов), показанная слева. Функция – это
встроенный исполняемый элемент, аналогичный операции, функции или
процедуре в текстовом языке программирования. Функция Merge Signals
комбинирует два сигнала таким образом, чтобы они могли отображаться
на одном графике. Блок диаграмма должна выглядеть, как показано на
рисунке 2.3.

Рисунок 2.3 – Блок диаграмма, демонстрирующая применение


функции Merge Signals

3. Нажмите клавиши <Ctrl S> или выберите меню File » Save (Файл »
Сохранить), чтобы сохранить ВП.
4. Переключитесь на лицевую панель, запустите ВП и поверните
ручку управления. На графике осциллограмм отобразятся пилообразный и
усиленный сигналы. Максимальное значение по оси Y автоматически
изменится, в 10 раз превышая значение, задаваемое ручкой управления.
Масштабирование происходит, потому что Экспресс ВП Formula
умножает сигнал на 10.
5. Щелкните по кнопке STOP, чтобы остановить ВП.

26
Порядок выполнения лабораторной работы

1. Открыть ВП, созданный в предыдущей работе


2. Добавить элемент экспресс ВП Simulate Signal
3. При помощи экспресс ВП Relay организовать возможность выбора
трех каналов (1 канал – сигнал с созданного в предыдущей работе
генератора, 2 канал – сигнал с экспресс ВП Simulate Signal, 3 канал
– сложение/вычитание первого и второго каналов)
4. При помощи экспресс ВП Trigger and Gate организовать
возможность синхронизации принимаемых сигналов по нулевому
уровню.
5. Добавить элемент графического отображения результатов.
6. При помощи узла свойств создать возможность управления
масштабом шкал.
7. Оформить лицевую панель ВП
- эргономично расположить органы управления;
- все надписи сделать на русском языке.
Виртуальная панель осциллографа должна содержать следующие
элементы:
- выбор каналов;
- синхронизация;
- настройки развертки;
- графическое отображение результатов.
8. Оформить отчет о лабораторной работе.
9. Защитить отчет о лабораторной работе при собеседовании с
преподавателем.

27
ЛАБОРАТОРНАЯ РАБОТА №3
Добавление в осциллограф функции мультиметра и возможности
сохранения данных

Общие сведения

Для решения общих измерительных задач используются Express VI,


которые представляют собой узлы с минимальным числом соединений,
поскольку пользователь может сконфигурировать их с помощью
диалоговых окон. Каждый Express VI является самостоятельным блоком,
состоящим из стандартных функций LabVIEW, и все что нужно для его
функционирования ввести несколько параметров и проставить нужные
флажки в диалоговом окне.
Рассмотрим внутреннюю структуру одного из них (например,
Simulate Signal). Переходим в окно редактирования диаграмм и
устанавливаем пиктограмму Simulate Signal (Functions >> Express >> Input
>> Simulate Signal). Как только Вы поместили пиктограмму на поле
редактирования диаграмм, сразу же появляется диалоговое окно
конфигурации VI. Что с ним делать, расскажем далее, а пока просто
нажимаем кнопку "OK". Чтобы раскрыть внутреннюю структуру нашего
Express VI, щелкаем на нем правой кнопкой мыши. Далее, из
всплывающего меню выбираем "Open Front Panel", получив
предупреждение о том, что при раскрытии структуры Express VI теряется
возможность его конфигурирования с помощью диалогового окна,
выбираем "Convert". При этом цвет пиктограммы изменится из
голубоватого на светлобежевый. Открыв окно редактирования диаграмм,
Вы убедитесь в том, что Express VI представляет собой подпрограмму,
состоящую из стандартных функций LabVIEW (рисунок 3.1).

28
Рисунок 3.1 – Блок диаграмма Express VI «Simulate Signal»

В LabVIEW 8, кроме привычного для нас разделения всех VI на


группы (Array, String и т. д.), произведено их разбиение на более
обширные классы (рисунок 3.2): Programming (наиболее употребляемые VI
при создании программы), Instrument I/O (VI, необходимые для
сопряжения внешних устройств с ПК), Mathematics (функции для
проведения математических вычислений), Signal Processing (VI для
симуляции и обработки сигналов), Data Communication (получение,
обработка и передача данных), Connectivity (подключение к программе
динамически-компонуемых (DLL) библиотек, регистров и т. д.), Express
(группа, включающая в себя Express VI), Favorites (любимое).

29
Рисунок 3.2 – Расположение группы ВП Express VI в палитре
функций

Первая группа – Input (ввод информации). В состав данной группы


входят следующие Express VI: Instrument I/O Assistant применяется для
соединения ПК с внешними устройствами или приборами,
использующими последовательный интерфейс, GPIB или Ethernet; Simulate
Signal имитирует сигнал заданной формы, амплитуды и частоты; можно
также добавить к сигналу один из девяти предложенных видов шумов;
Simulate Arbitrary Signal создает сигнал произвольной формы по заданным
пользователем точкам; Acquire Sound - осуществляет получение данных от
звукового устройства; Read From Measurement File - считывает данные из
специальных файлов (с расширениями .lvm и .tdm), в которых хранится

30
информация о проведенных экспериментах, а также результаты этих
экспериментов (запись в эти файлы реализуется с помощью Express VI под
названием Write To Measurement File); Prompt User for Input - предлагает
пользователю ввести какую-либо информацию, например имя или пароль;
File Dialog - используется для выбора существующего файла (директории)
или для создания нового файла по заданному адресу.

Рисунок 3.3 – Расположение группы ВП Express VI Input в палитре


функций

Вторая группа - Signal Analysis (обработка сигала). В состав


группы входят: Spectral Measurements - выполняет вычисление
амплитудного спектра или спектра мощности сигнала; Distortion
Measurements - производит вычисления искажений сигнала, такие как
анализ гармонического колебания, коэффициента нелинейных искажений
и отношение сигнала к шуму и искажениям; Tone Measurements - находит
единственное гармоническое колебание с наибольшей амплитудой или
производит поиск такового колебания в заданном диапазоне частот. Для
найденного колебания могут быть определены частота и фаза. Dual
Channel Spectral Measurements выполняет спектральный анализ двух
сигналов. Amplitude and Level Measurements производит вычисление
постоянной и переменной составляющих сигнала, максимальное и

31
минимальное пиковые значения, от пика до пика, среднеквадратическое
значение, среднее и среднеквадратическое значения цикла.

Рисунок 3.4 – Расположение группы ВП Express VI Signal Analysis в


палитре функций

Timing and Transition Measurements выполняет вычисления


временных (частота, период, длительность импульса) и переходных
(выброс перед фронтом импульса, выброс после фронта импульса,
скорость нарастания) параметров импульсных сигналов. Curve Fitting -
реализует сглаживание сигнала согласно выбранной модели (линейная
аппроксимация, нелинейная аппроксимация, сплайн-интерполяция,
полиномиальная интерполяция). Filter обрабатывает сигналы, используя
функции фильтров или весовых окон, при этом используются цифровые
КИХ-фильтры (с конечной импульсной характеристикой) и БИХ-фильтры
(с бесконечной импульсной характеристикой). Statistics при помощи
данного Express VI можно определить статистические параметры сигнала,
начиная с минимального и максимального значений сигнала, и заканчивая

32
такими моментами, как эксцесс и асимметрия. Convolution and Correlation -
производит свертку (Convolution) или деконволюцию (Deconvolution)
сигналов, вычисляет авто или взаимно корреляционные функции. Здесь же
находится Simulate Signal, а это говорит о том, что к некоторым VI можно
добраться сразу несколькими путями. Mask and Limit Testing проверяет,
входит ли амплитуда сигнала в заданные верхнюю и нижнюю границы,
при этом границы могут описываться как константами, так и различными
функциональными зависимостями. И, наконец, последний Express VI этой
группы Create Histogram. С его помощью можно построить гистограмму
входного сигнала согласно заданному количеству интервалов и граничных
значений.

Третья группа – Output (вывод). В состав группы входят


следующие Express VI: уже рассмотренный Instrument I/O Assistant; Build
Text в наиболее простом случае соединяет две текстовые величины: текст
на входе + текст, заданный в диалоговом окне (если же на вход подаются
не текстовые символы Express VI преобразовывает их в строку, согласно
указанным Вами параметрам преобразования); Display Message To User -
при выполнении определенных Вами условий, пользователю выводится
соответствующее сообщение; Play Waveform выводит сигнал на
звуковоспроизводящее устройство.

Рисунок 3.5 – Расположение группы ВП Express VI Output в палитре


функций

33
Write To Measurement File записывает данные результатов измерения
в файл с расширениями .lvm или .tdm, которые потом можно прочитать
при помощи Read From Measurement File; Report подает на печать или
создает html файл, включающий в себя, возвращенные другими VI данные,
а также имя автора отчета, количество страниц и дату создания; DIAdem
Report дает возможность не только создавать отчеты в виде .html или .pdf,
но и интерактивно анализировать и отображать данные (для правильного
функционирования этого Express VI нужно установить DIAdem 9.1 или
более позднюю версию на Ваш ПК).

Четвертая группа – Signal Manipulation. Merge Signals и Split


Signals - первый VI реализует "слияние" нескольких сигналов в один
поток, второй - наоборот, разделяет его на исходные сигналы; Select
Signals на вход принимает поток сигналов, из которых с помощью
диалогового окна можно выбрать только полезные; Align and Resample
позволяет выравнивать времена запуска сигналов, а также производить их
повторную дискретизацию при заданном Вами периоде дискретизации;
Collector - выводит на Waveform Graph заданное количество точек сигнала
(или нескольких сигналов), при этом выводится N последних точек;
Sample Compression - уменьшает количество выборок входного сигнала в
указанное Вами целое число раз; Trigger and Gate позволяет выделить
часть сигнала согласно указанным Вами условиям; Relay выполняет роль
ключа: в замкнутом состоянии сигнал на выходе ключа равен входному, в
разомкнутом возможны два варианта работы на выходе либо нулевой
сигнал, либо данные отсутствуют; Append Signals позволяет совместить
конец одного сигнала с началом другого; Repack Values разбивает входные
сигналы на "пакеты" заданного Вами размера; Extract Portion of Signal -
вырезает полезную часть сигнала, все что для этого нужно указать
начальную и конечную точки интересующего Вас интервала; Delay Values
содержит данные, полученные в результате циклического выполнения
определенных итераций, выдает данные после того, как операции в цикле
были выполнены некоторое число раз (по умолчанию 1); Convert from
Dynamic Data - преобразует данные динамического типа (динамически
изменяющиеся) в данные другого типа: числового, булевого, в массив и т.
д.; Convert to Dynamic Data - выполняет обратные предыдущему Express VI
преобразования.

34
Рисунок 3.6 – Расположение группы ВП Express VI Signal
Manipulation в палитре функций

Настройка ВП для сохранения данных в файл


Чтобы сохранить информацию о данных, которые моделирует ВП,
используйте Экспресс ВП Write To Measurement File.

Экспресс ВП Write To Measurement File сохраняет данные, которые


генерирует и анализирует ВП в .lvm, .tdm или .tdms файлы. Файл .lvm –
текстовый файл с разделителем – символом табуляции, который вы можете
открыть с помощью любого редактора электронных таблиц или текста. В
.lvm файле LabVIEW сохраняет данные с точностью до шестого знака.
Вместе с данными, которые генерирует Экспресс ВП, .lvm файл включает
заголовки, которые содержат информацию о данных, такую как дата и
время генерации данных. Бинарный файл измерений (.tdm) – двоичный
файл, который содержит данные осциллограмм. Файл .tdm обеспечивает
более высокую точность хранения чисел с плавающей запятой, занимает
меньше места на диске и выполняется/открывается быстрее, чем текстовые

35
файлы .lvm. TDM файл потоковой записи .tdms – двоичный файл, который
обеспечивает более быструю запись, чем файл формата .tdm и имеет более
простой интерфейс для определения свойств.

Выполните следующие шаги для создания ВП, который сохраняет


значения амплитуды размаха и другую информацию в файл данных
LabVIEW.
1. Найдите Экспресс ВП Write To Measurement File и поместите его
на блок диаграмму ниже и правее Экспресс ВП Amplitude and Level
Measurements. На экране появится диалоговое окно настройки Configure
Write To Measurement File. Текстовое поле File Name содержит полный
путь к выходному файлу test.lvm. Данные в файл.lvm записывают в виде
таблицы, состоящей из столбцов разделенных символом табуляции. Этот
файл можно открыть с помощью приложений для просмотра и
редактирования электронных таблиц или текстовых файлов. Среда
LabVIEW сохраняет данные с шестью разрядами точности. По умолчанию
файл сохранится в папке LabVIEW Data. Среда LabVIEW располагает
папку LabVIEW Data в заданном по умолчанию каталоге файлов
операционной системы. Если вы хотите просмотреть данные, используйте
путь к файлу, отображенный в текстовом поле File Name.
2. В разделе If a file already exists (Если файл уже существует)
диалогового окна Configure Write To Measurement File выберите опцию
Append to file, чтобы дописать все данные в файл test.lvm, не стирая уже
существующие.
3. В разделе Segment Headers (Заголовки Сегмента) выберите опцию
One header only, чтобы создать только один заголовок файлу, в который
LabVIEW записывает данные.
4. В текстовое поле File Description введите следующий текст: Sample
of peak to peak values (Пример значений размаха сигнала). LabVIEW
прикрепит этот текст к заголовку файла.
5. Нажмите кнопку OK, чтобы сохранить текущие настройки и
закрыть диалоговое окно Configure Write To Measurement File.
Сохранение данных в файл
После завершения работы ВП, среда LabVIEW сохранит данные в
файл test.lvm.
Выполните следующие шаги, чтобы создать файл test.lvm.
1. На блок_диаграмме соедините выход Peak to Peak Экспресс ВП
Amplitude and Level Measurements с входом Signals (Сигналы) Экспресс
ВП Write To Measurement File.
2. Выберите File » Save (Файл » Сохранить как) и сохраните ВП, как
Save Data.vi в заранее определенном месте.

36
3. Переключитесь на лицевую панель и запустите ВП.
4. Нажмите кнопку STOP на лицевой панели.
5. Чтобы просмотреть данные, которые вы сохранили, откройте файл
test.lvm в папке LabVIEW Data с помощью любого текстового редактора.
Файл будет иметь заголовок, содержащий информацию об Экспресс ВП.
6. Закройте файл после просмотра и вернитесь к ВП Save Data.

Добавление кнопки сохранения данных в файл


Если вы хотите сохранить только определенные значения данных, вы
можете настроить Экспресс ВП Write To Measurement File так, чтобы
значения амплитуды размаха сохранялись только тогда, когда
пользователь нажимает кнопку.
Выполните следующие шаги, чтобы добавить кнопку в ВП и
настроить её поведение при нажатии.
1. Найдите в палтире элементов управления тумблер (rocker button) и
поместите его справа от графиков.
2. Щелкните правой кнопкой мыши по кнопке и выберите опцию
Properties (Свойства) из контекстного меню, чтобы отобразить диалоговое
окно свойств.
3. Измените метку кнопки на Write to File.
4. На вкладке Operation (Функционирование) диалогового окна
Boolean Properties выберите режим Latch when pressed из меню Button
behavior (Режим работы). Это меню используется для задания поведения
кнопки при нажатии. Увидеть, как кнопка реагирует на щелчок, можно в
разделе Preview Selected Behavior.
5. Нажмите кнопку OK, чтобы сохранить текущие настройки и
закрыть диалоговое окно Boolean Properties.
6. Сохраните ВП.

Сохранение данных по запросу пользователя


Выполните следующие шаги, чтобы создать ВП, который
регистрирует данные в файл, когда пользователь нажимает на кнопку на
лицевой панели.
1. На блок_диаграмме дважды щелкните по Экспресс ВП Write To
Measurement File, чтобы отобразить диалоговое окно Configure Write To
Measurement File.
2. В текстовом поле File Name измените имя файла test.lvm на Selected
Samples.lvm, чтобы сохранить данные в другой файл.
3. Нажмите OK, чтобы сохранить текущую конфигурацию и закрыть
диалоговое окно Configure Write To Measurement File.

37
4. Щелкните правой кнопкой мыши по входу Signals Экспресс ВП
Write To Measurement File и выберите пункт Insert Input/Output из
контекстного меню, чтобы вставить вход Comment (Комментарий).
5. Щелкните правой кнопкой мыши по входу Comment Экспресс ВП
Write To Measurement File и выберите Select Input/Output » Enable из
контекстного меню, чтобы заменить вход Comment входом Enable. Входы
и выходы Экспресс ВП появляются в таком же порядке, в котором вы их
добавляете. Чтобы выбрать определенный вход, возможно, сначала
придется создать произвольный, а затем изменить его на тот, который
хотите использовать, щелкая по нему правой кнопкой мыши и выбирая
подходящий из меню.
6. Поместите терминал кнопки Write to File слева от Экспресс ВП
Write To Measurement File.
7. Соедините терминал Write to File с входом Enable Экспресс ВП
Write To Measurement File.
Пример блок диаграммы показан на рисунке 3.7

Рисунок 3.7 – Блок диаграмма ВП Save Data

Просмотр сохраненных данных


Выполните следующие шаги, чтобы просмотреть данные, которые вы
сохранили в файл Selected Samples.lvm.
1. Переключитесь на лицевую панель и запустите ВП. Нажмите
кнопку Write to File несколько раз.
2. Нажмите кнопку STOP на лицевой панели.
3. Откройте файл Selected Samples.lvm с помощью текстового
редактора. Файл Selected Samples.lvm отличается от файла test.lvm. В

38
test.lvm записались все данные, сгенерированные ВП Save Data, тогда как
в файл Selected Samples.lvm данные записывались только тогда, когда вы
щелкали кнопкой Write to File.
4. Закройте файл после просмотра.
5. Сохраните и закройте ВП.
Среда LabVIEW размещает папку LabVIEW Data в заданном по
умолчанию каталоге файлов операционной системы для упрощения
организации файлов данных. Для получения дополнительной информации
о записи/чтении данных в/из .lvm и .tdm файлы обратитесь к справке
LabVIEW Help.

Порядок выполнения лабораторной работы

1. Открыть ВП, созданный в предыдущей работе.


2. С помощью Express VI, описанных выше, добавить элементы для
отображения следующих значений сигнала:
- частоты;
- периода;
- максимальное и минимальное пиковые значения;
- действительное значения амплитуды;
- размах от пика до пика;
- среднеквадратическое значение.
3. При помощи экспресс ВП Write To Measurement File организовать
возможность сохранения принимаемых данных в файл с
последующей возможностью их просмотра.
4. Оформить лицевую панель ВП:
- эргономично расположить органы управления;
- все надписи сделать на русском языке.
5. Оформить отчет о лабораторной работе.
6. Защитить отчет о лабораторной работе при собеседовании с
преподавателем.

39
ЛАБОРАТОРНАЯ РАБОТА №4
Проектирование спектроанализатора в среде LabView

Общие сведения

Фильтрация Сигнала
Для обработки сигналов и удаления шумов из сигнала с помощью
фильтров и окон, можно использовать экспресс ВП Filter (Фильтр)(рис.
4.1), который обрабатывает сигналы, используя функции фильтров или
весовых окон, при этом используются цифровые КИХ фильтры (с
конечной импульсной характеристикой) и БИХ фильтры (с бесконечной
импульсной характеристикой).

Рисунок 4.1 – экспресс ВП Filter

Выполните следующие шаги, чтобы настроить экспресс ВП Filter


так, чтобы он производил обработку сигнала с помощью IIR (БИХ – с
бесконечной импульсной характеристикой) фильтра.
1. Найдите экспресс ВП Filter и поместите его на блок диаграмму
между экспресс ВП Simulate Signal и экспресс ВП Amplitude and Level
Measurements.
2. Вызвыть диалоговое окно Configure Filter, показанное не рисунке
4.2

40
Рисунок 4.2 – диалоговое окно Configure Filter

3. В диалоговом окне задаем: фильтр нижних частот (Lowpass)


4. В разделе Filter Specifications (Характеристики фильтра),
измените Cutoff Frequency (Частота среза) (Гц) на 25.
5. Нажмите кнопку OK, чтобы сохранить настройки и закрыть
диалоговое окно Configure Filter.
6. Переключитесь на лицевую панель.
7. На лицевой панели щелкните по индикатору Unfiltered Signal и,
удерживая нажатой клавишу <Ctrl>, переместите его, чтобы создать еще
один график осциллограмм.
8. Поместите созданный график осциллограмм под исходным.
9. Трижды щелкните по ярлыку Unfiltered Signal2 выше нового
графика осциллограмм и введите Filtered Signal. Также можно изменить
ярлык на вкладке Appearance (вид) диалогового окна Graph Properties.
10. На блок диаграмме соедините выход Result (Результат) экспресс
ВП Formula с входом Signal (Сигнал) экспресс ВП Filter.
11. Соедините выход Filtered Signal экспресс ВП Filter с входом
Signal экспресс ВП Amplitude and Level Measurements и с терминалом
графика осциллограмм Filtered Signal.

41
12. Выберите меню File » Save (Файл » Сохранить).
Примерный вид блок диаграммы ВП Analysis выглядит, как
показано на рисунке 4.3.

Рисунок 4.3 – Блок диаграмма ВП Analysis

Изменение вида графиков


Вы можете использовать страницу Display Format (Формат
отображения) диалогового окна Graph Properties чтобы задать, в каком
масштабе шкалы X и Y появятся на графике.
Выполните следующие шаги, чтобы изменить формат шкал X и Y
для графиков Unfiltered Signal и Filtered Signal.
1. На лицевой панели щелкните правой кнопкой мыши по графику
Unfiltered Signal и выберите пункт Properties (Свойства) из контекстного
меню. На экране появится диалоговое окно Graph Properties.
2. На вкладке Format and Precision выберите Time (X Axis) (Время)
над выпадающим меню.
3. В списке Type (тип) выберите Automatic formatting
(автоформатирование).
4. В поле Digits введите 6 и выберите пункт Significant digits
(значащие цифры) из выпадающего меню Precision Type (Тип Точности).
5. Отметьте пункт Hide trailing zeros (Скрыть лишние нули).
6. Выберите пункт Amplitude (Y Axis) (Амплитуда) над
выпадающим меню и повторите шаги 3 – 5. Теперь настройки оси Y
соответствуют оси X.
7. На вкладке Scales (Масштаб) выберите пункт Amplitude (Y Axis)
(Амплитуда).
8. Удалите отметку с пункта Autoscale.

42
9. В текстовое поле Minimum введите значение – 2.5, в Maximum
значение – 2.5.
10. Нажмите кнопку OK, чтобы сохранить настройки и закрыть
диалоговое окно Graph Properties.
11. Повторите шаги 1 – 10, чтобы настроить вид графика Filtered
Signal.
Оси X и Y на графиках Unfiltered Signal и Filtered Signal изменятся,
отражая сделанные изменения.

В состав палитры функций измерения параметров


осциллограмм входят Экспресс-ВП Измерения спектра (Spectral
Measurements), Измерения искажений (Distortion Measurements),
Измерения гармонического колебания (ТопеMeasurements), Измерения
временных и переходных параметров (Timing and Transition Measurements)
и Измерения амплитуды и уровня (Amplitude and Level Measurements).

Измерения спектра (Spectral Measurements)

Диалоговое окно настройки Spectral Measurements, показано на


рисунке 4.4

43
Рисунок 4.4 – Вид диалогового окна конфигурирования Экспресс-ВП
Измерения спектра (Spectral Measurements)

Экспресс-ВП выполняет измерения спектра сигнала, такие как


измерения амплитудного спектра и спектра мощности. Этот Экспресс-ВП
использует функциональность следующих ВП: Спектр мощности БПФ
(FFT Power Spectrum), Спектр БПФ (действительная - мнимая часть), (FFT
Spectrum (Real-lm)), Спектральная плотность мощности БПФ (FFT Power
Spectral Density)

Измерения искажений (Distortion Measurements)

44
Диалоговое окно настройки Distortion Measurements, показанное не
рисунке 4.5

Рисунок 4.5 – Вид диалогового окна конфигурирования Экспресс-ВП


Измерения искажений (Distortion Measurements)

Экспресс-ВП выполняет измерения искажений сигнала, такие как


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

45
(Harmonic Distortion Aialyzer), Анализатор шума и искажений (SINAD
Analyzer)

Измерения гармонического колебания (Tone Measurements)

Диалоговое окно настройки Tone Measurements, показанное не


рисунке 4.6

Рисунок 4.6 – Вид диалогового окна конфигурирования Экспресс-ВП


Измерения гармонического колебания (Tone Measurements)

46
Экспресс-ВП находит единственное гармоническое колебание с
наибольшей амплитудой или производит поиск такого колебания в
заданном диапазоне частот. Для найденного колебания могут быть
определены частота и фаза

Измерения временных и переходных параметров (Timing and


Transition Measurements)

Диалоговое окно настройки Timing and Transition Measurements,


показанное не рисунке 4.7

47
Рисунок 4.7 – Вид диалогового окна конфигурирования Экспресс-ВП
Измерения временных и переходных параметров (Timing and Transition
Measurements)
Экспресс-ВП выполняет измерения временных и переходных
параметров импульсных сигналов. Этот Экспресс-ВП использует
функциональность следующих ВП. Измерения импульсов (Pulse
Measurements), Измерения перепадов (Transition Measurements)

Измерения амплитуды и уровня (Amplitude and Level


Measurements)

48
Диалоговое окно настройки Amplitude and Level Measurements,
показанное не рисунке 4.8

Рисунок 4.8 – Вид диалогового окна конфигурирования Экспресс-ВП


Измерения амплитуды и уровня (Amplitude and Level Measurements)

49
Экспресс-ВП выполняет измерения напряжений сигнала. Этот
Экспресс-ВП использует функциональность следующих ВП- Основное
измерение постоянной составляющей и среднеквадратичного значения с
усреднением (Basic Averaged DC-RMS), Измерение постоянной
составляющей и среднеквадратичного значения с усреднением (Averaged
DC-RMS), Амплитуда и уровни (Amplitude and Levels), Среднее и
среднеквадратичное значение цикла (Cycle Average and RMS)

Рассмотренные выше Экспресс-ВП измерения параметров


осциллограмм позволяют создавать эффективные ВП анализа сигнала с
компактным кодом. В качестве примера такого ВП на рис. 4.9 приведена
блок-диаграмма ВП Спектральные измерения (Spectrum Measurements)
из набора примеров N1 Example Finder. В данном ВП производятся расчет
и сравнение трех амплитудных спектров синусоидального колебания.
Первый спектр рассчитывается для отрезка исходного сигнала, а два
других - для отрезка сигнала, обработанного весовым окном. Три
амплитудных спектра, представленных данными динамического типа,
объединяются с помощью функции Объединить сигналы (Merge Signals)
в один сигнал и выводятся на графические индикаторы с линейным и
логарифмическим масштабом по амплитуде. Экспресс-ВП Статистика
(Statistics) определяет частоту максимума амплитудного спектра, а
Экспресс-ВП Формула (Formula) – начальный индекс участка
амплитудного спектра, выводимого в увеличенном масштабе. Выделение
участка спектра производится Экспресс-ВП Извлечение части сигнала
(Extract Portion of Signal).

50
Рисунок 4.9 – Блок-диаграмма ВП Спектральные измерения (Spectrum
Measurement

Порядок выполнения лабораторной работы

1. Создать новый ВП, либо открыть уже существующий.


2. Добавить элемент экспресс ВП Simulate Signal, установить в нем тип
сигнала и тип шума.
3. При помощи экспресс ВП Spectral Measurements выполнить
вычисление амплитудного спектра и спектра мощности сигнала.
Сделать возможность выбора одного из спектров на элементе
графического отображения результатов.
4. При помощи экспресс ВП Filter выполнить фильтрацию сигнала, затем
выполнить вычисление спектров сигнала и вывести результат на экран.
5. При помощи экспресс ВП Distortion Measurements выполнить
вычисления искажений сигнала, таких как анализ гармонического
колебания, коэффициента нелинейных искажений и отношение сигнала
к шуму и искажениям.
6. Оформить лицевую панель ВП:
- эргономично расположить органы управления;
- все надписи сделать на русском языке.
7. Оформить отчет о лабораторной работе.
8. Защитить отчет о лабораторной работе при собеседовании с
преподавателем.

51
ПРИЛОЖЕНИЯ

Примеры создания виртуальных приборов с использованием панели


программирования LabVIEW

52
Приложение А.
Прибор для вычисления коэффициентов регрессии

Многие детерминированные и случайные процессы с дискретным


временем, с которым приходится иметь дело на практике, хорошо
аппроксимируются моделью на основе рациональной передаточной
функции. В этой модели входная последовательность  xi  и выходная
последовательность  yi  , которые используются для моделирования
данных, связаны линейным разностным уравнением вида
q p
yi   b l x i 1   a k y i  k
l 0 k 1
.
(1)
По экспериментальным данным – дискретным значениям xi и y i ,
i  1,2,..., N , – могут быть оценены параметры a k , k  1,2,..., p и
bl , l  1,2,..., q . Эта модель в литературе называется авторегрессионой
моделью со скользящим средним (АРСС).
Частными случаями модели (2.2) являются авторегрессионая (АР)
модель
y n  a1 y n 1  ...  a p y n  p b 0 x n
(2)
и модель скользящего среднего (СС)
y n  b0 x n  b1 x n 2 ... bq x n  q
. (3)
Выбор той или иной модели определяется задачей исследования
процесса, конкретными целями и обстоятельствами: возможен переход от
одной модели к другой. Если вход является ненаблюдаемым, для
автоколебательных процессов можно принять такую модель:
p
y n    a m y n  m , при p  n  N  1 .
m 1

(4) Исходя из реальных условий, будем использовать именно эту


модель.
Разрабатываемый прибор вычисляет коэффициенты регрессии
уравнения (4) по последовательности дискретных отсчетов  y i  на основе
метода наименьших квадратов.
Таким образом, входными данными для этого ВП являются
переменная p – порядок модели и массив значений исходных данных.
МНК реализуется в соответствии с системой уравнений (4). Для
этого необходимо сформировать матрицу и вектор-столбец свободных
членов этой системы уравнений следующим образом:

53
N
M k, j   y i  k  y i  j , (5)
i p

N
V j   yi  j  yi , k , j  1... p , i  1...N . (6)
i p

где p – порядок модели.


Тогда, решив систему уравнений относительно M и V, получим
вектор коэффициентов регрессии А.
Блок-диаграмма ВП «АР-коэффициенты» представлена на
следующем рисунке.

Блок-диаграмма подприбора «АР-коэффициенты»

Для формирования матрицы данных (5) и вектора-столбца (6)


свободных членов необходимо организовать три цикла, соответствующих
переменным k, j и i. Таким образом, мы получим систему из p уравнений,
для решения которой используются N дискретных отсчетов данных.
В LabVIEW цикл с фиксированным числом итераций можно
организовать, используя структуру For Loop, входящую в палитру
Structures.

54
Нам понадобятся два внешних цикла, выполняющихся p раз, и
внутренний, выполняющийся N раз. Для определения длины
обрабатываемого массива данных используем функцию Array Size палитры
Array, на вход которой подадим обрабатываемую последовательность,
представляющую собой массив данных типа DBL (числовой с плавающей
запятой двойной точности).
Чтобы присвоить значениям массива индексы ( i  k ) , ( i  l ) и i
используем функцию Index Array (Индексировать массив), которая
возвращает элемент входного массива с заданным индексом. Индексы
были сформированы в соответствии с выражениями (4.1) и (4.2) с
использованием элементов палитры Express Numeric Palette: Subtract
(вычесть) и Decrement (функция, возвращающая значение входа,
уменьшенное на единицу). В дальнейшем элементы с заданными
индексами перемножались и циклически суммировались с
использованием узла обратной связи (Feedback Node), передающего
значения между итерациями внутреннего цикла.
В результате на выходе внешнего цикла были получены вектор и
матрица типа DBL, решение системы линейных уравнений относительно
которых было получено с использованием функции Solve Linear Equations,
предназначенной для работы с действительными числами. Третьим входом
данной функции является тип матрицы, в качестве которого было
установлено значение General (матрица общего вида).
В результате решения системы линейных уравнений, составленных с
помощью МНК, был получен вектор значений АР-коэффициентов
(Solution Vector).

55
Приложение Б.
Прибор для решения степенного уравнения

Несмотря на то, что для решения степенного уравнения в LabVIEW


предусмотрен встроенный ВП, часто бывает необходимо в дальнейшем
использовать корни для последующих вычислений. Это требует
использования дополнительных преобразований. Входными данными для
этого ВП будут являться частота дискретизации f д и массив значений
коэффициентов ai , i=1…p, степенного уравнения вида:
z p  a 1 z p 1  ...  a p  0 (7)
Блок-диаграмма ВП, реализующего решение степенного уравнения,
представлена на следующем рисунке.

Блок-диаграмма прибора для решения степенного уравнения

Корни z характеристического уравнения (7) можно найти с помощью


встроенной функции Complex Polynomial Roots (комплексные корни
полинома), входящей в состав палитры Zeroes. Входом функции является
массив коэффициентов полинома. Однако эта функция требует, чтобы
коэффициенты полинома были размещены в порядке увеличения степени
соответствующей переменной, поэтому в ряде случаев необходимо сначала
обратить элементы вектора АР-коэффициентов с помощью функции
Reverse 1D Array.
Таким образом, на выходе функции Complex Polynomial Roots
получены корни степенного уравнения.
Чаще всего с задачей нахождения корней степенного уравнения
приходится сталкиваться при решении характеристического уравнения

56
(ХУ). Например, уравнение (7) является характеристическим для сигнала,
представленного выражением (4) (см. Приложение А). В этом случае
корни степенного уравнения несут информацию о собственных частотах и
коэффициентах затухания процесса, описываемого выражением (4).
Рассмотрим как можно использовать корни ХУ для нахождения этих
параметров.
Следует отметить, что тип входных данных был DBL, на выходе же
мы получили массив данных типа CDB (комплексный с плавающей
запятой двойной точности). Итак, считается, что корни ХУ используются в
дальнейшем для определения собственных частот и коэффициентов
затухания в соответствии с выражениями:
ln z l
l  , (8)
t

 Im z i 1 
f l  arctg    . (9)
 Re z i 2t 

Для нахождения  l и f l по комплексным значениям z j необходимо


разложить их на действительную (r) и мнимую (theta) части, преобразовав
в полярные координаты в соответствии с выражением:
z  r  e j theta (10)
Эту операцию в LabVIEW можно осуществить с помощью функции
Complex To Polar палитры Complex.
Тогда выражения (8) и (9) можно будет переписать в виде:
thetai
fi 
2t ,
ln( ri )
i 
2t .
Расчет значений этих параметров нетрудно реализовать с помощью
элементов умножения и деления палитры Express Numeric, а также
функции натурального логарифма Natural Log палитры Express
Logarithmic.
Таким образом, кроме корней характеристического уравнения в
данном приборе мы получили комплексно-сопряженные пары частот и
затуханий, число которых равно порядку используемой модели.

57
Приложение В.
Параметрический анализатор спектра

Параметрическими принято считать методы спектрального оценивания,


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

a
i 0
i
S( f )  p (11)
a
i 0
i e  j 2 it  f

В том случае, если исходные данные являются не просто сигналом, а


какой-либо временной характеристикой системы (например, импульсной
или переходной характеристикой), то вычисленная в соответствии с (11)
характеристика будет являться комплексной частотной характеристикой
системы и по ней можно вычислить АЧХ и ФЧХ.
Входными данными для этого ВП являются переменные частота
дискретизации и порядок модели, а также вектор коэффициентов
регрессии уравнения (4).
Блок-диаграмма ВП, реализованного в соответствии с данным
алгоритмом представлена на следующей странице.
Для реализации вычислений по формуле (11) необходимо
организовать два цикла For Loop – в первом будут изменяться значения
частот, на которых вычисляются значения комплексного спектра, во
втором – номера коэффициентов регрессии (их число соответствует
порядку модели).
Так как на экран при построении графика комплексно-сопряженная
часть спектра выводиться не будет, значения частот будут изменяться до
значения половины частоты дискретизации ( f д / 2 ), округленного до
ближайшего целого с помощью функции Round To Nearest Integer.
Комплексные экспоненты в знаменателе выражения (11) e  j 2 it k
(где k – значения частот, на которых вычисляется спектр) можно получить
следующим образом: во внешнем цикле формируются значения  2  it ,
которые в следующем цикле умножаются на значения частот  2  it  k .
Эти значения соответствуют показателям комплексных экспонент, или
значению theta в формуле (10).

58
59
Блок-диаграмма параметрического анализатора спектра
Таким образом, используя функцию преобразования полярных
координат в комплексное число (Polar To Complex), можно получить
значения e  j 2 it k , подав на вход этого элемента в качестве r значение
единицы, а в качестве theta – полученные значения  2  it  k .
Во внутреннем цикле с использованием узла обратной связи
p p

Feedback Node находятся сумма  ai


i 0
и сумма произведений a
i 1
i  e  j 2 it  f ,
которые во внешнем цикле делятся друг на друга, в результате чего
получаются значения комплексного спектра.
Дальнейшее преобразование комплексного спектра с помощью
функции Complex To Polar дает значения АЧХ и ФЧХ.
В дальнейшем ФЧХ сглаживается с использованием готового
виртуального прибора Unwrap Phase из палитры Time Domain Palette.
Данный ВП производит развертку массива значений фазы путем удаления
разрывов, абсолютные значения которых превышают 2.

60
Приложение Г.
Нормирование временной и частотной шкал в LabVIEW

Чаще всего данные, требующие графического представления, в


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

Блок-диаграмма прибора для нормирования временной шкалы

Также на этой блок-диаграмме в качестве примера показано


применение функции Delete From Array для удаления из массива
последнего значения, близкого к бесконечности.
Спектр в LabVIEW чаще всего оценивается с помощью встроенного
ВП FFT, реализующего вычисление комплексного спектра быстого
преобразования Фурье (БПФ). Однако дискретная интерпретация
преобразования Фурье в LabVIEW заключается в преобразовании
цифрового сигнала в коэффициенты ряда Фурье или гармоники. Поэтому
ни время, ни шкала частот непосредственно не связаны с операцией БПФ.

61
Для устранения этого недостатка с целью возможности отображения
шкалы частот ЧХ, полученных по БПФ, в герцах, каждый отсчет сетки
частот БПФ умножался на половину частоты дискретизации и делился на
fд  i
количество отсчетов частоты: . Блок-диаграмма прибора,
2N
осуществляющего данные преобразования, представлена на следующем
рисунке.

Блок-диаграмма прибора для нормирования шкалы частот

В этом же приборе производится нормирование частотной


характеристики, полученной через БПФ, по первому значению.
Нормирование осуществляется путем деления значений спектра на первое,
а не, как принято, на нулевое значение, т.к. в LabVIEW значение спектра
на нулевой частоте равно нулю.

62
СПИСОК ЛИТЕРАТУРЫ

1. Суранов А. Я.LabVIEW 7: справочник по функциям. – М.: ДМК


Пресс, 2005. – 512 с.
2. Джеффри Тревис. LabVIEW для всех: Пер. с англ. Клушин Н. А. –
М.: ДМК Пресс; ПриборКомплект, 2005. – 544 с,: ил.
3. Батоврин В. К., Бессонов А. С, Мошкин В. В., Папуловский В. Ф.
LabVlEW: практикум по основам измерительных технологий:
Учебное пособие для вузов. – М.: ДМК Пресс, 2005. – 208 с: ил.
4. LabVIEW 8. Вводный курс. ni.com/Russia
5. Н.А.Виноградова, Я.И.Листратов, Е.В.Свиридов. Разработка
прикладного программного обеспечения в среде LabVIEW: Учебное
пособие – М.: Издательство МЭИ, 2005. – 50 с.
6. Н.А.Виноградова, В.В. Гайдученко, А.И.Карякин, и др. Основы
построения информационно-измерительных систем: пособие по
системной интеграции. Под ред. В.Г. Свиридова. – М.: Издательство
МЭИ, 2004. – 268 с.

63
СОДЕРЖАНИЕ

Введение…………………………………………………………………….. 3

Общие 5
положения……………………………………………………………

ЛАБОРАТОРНАЯ РАБОТА №1. Проектирование


многофункционального генератора в среде LabView…………………… 10

ЛАБОРАТОРНАЯ РАБОТА №2. Проектирование осциллографа в


среде LabView……………………………………………………………… 23

ЛАБОРАТОРНАЯ РАБОТА №3. Добавление в осциллограф функции


мультиметра и возможности сохранения данных……………………….. 28

ЛАБОРАТОРНАЯ РАБОТА №4. Проектирование спектроанализатора


в среде LabView……………………………………………………………. 40

Примеры создания виртуальных приборов с использованием панели


программирования LabVIEW……………………………………………... 52

Список литературы………………………………………………………… 63

64

Вам также может понравиться