Содержание

Введение........................................................................................................... 13

Автоматизация физических исследований и эксперимента.................. 13

LabVIEW.......................................................................................................... 14

Сведения о коллективе авторов пособия.................................................. 14

Содержание пособия..................................................................................... 15

Благодарности................................................................................................. 16

Лекция 1. Общие сведения

о программно-инструментальной среде LabVIEW................................ 17

Введение.......................................................................................................... 17

Вход в среду LabVIEW................................................................................... 17

Создание нового виртуального прибора................................................... 18

Главное меню.................................................................................................. 19

Палитра инструментов.................................................................................. 19

Лицевая панель.....................................................................................20

Палитра элементов лицевой панели ......................................................20

Инструментальная панель лицевой панели.....................................22

Блок-диаграмма................................................................................. 23

Палитра функций блок-диаграммы..................................................23

Инструментальная панель блок-диаграммы..................................24

Пример 1.1..............................................................................................24

Поиск объектов на палитрах Controls и Functions.............................25

Контекстное меню..................................................................................26

Выводы.............................................................................................................. 26

Лекция 2. Выполнение арифметических действий

в среде LabVIEW............................................................................................27

Пример 2.1.............................................................................................. 27

Пример 2.2.............................................................................................. 28

Задача 2.1..................................................................................... 28

Редактирование ВП........................................................................................29

Создание объектов.................................................................................29

Выделение объектов...............................................................................29

Перемещение объектов......................................................................... 30

Удаление объектов.................................................................................. 30

Отмена и восстановление действий...................................................30

Копирование объектов..........................................................................30

Метки объектов.......................................................................................30

Выделение и удаление проводников данных..................................... 31

Автомасштабирование проводников данных................................... 31

Разорванные проводники данных........................................................32

Редактирование текста (изменение шрифта, стиля и размера) ... 32

Изменение размеров объектов............................................................32

Выравнивание и распределение объектов в пространстве............33

Установка порядка размещения объектов, объединение объектов в группу и закрепление местоположения объектов на рабочем пространстве лицевой панели.......33

Приведение нескольких объектов к одному размеру......................34

Копирование объектов между ВП или между другими

приложениями........................................................................................34

Окрашивание объектов.......................................................................34

Выводы..............................................................................................................34

Лекция 3. Решение линейных алгебраических уравнений

в среде LabVIEW...............................................................................................35

Пример 3.1. Определение токов в цепи с использованием

формульного узла..................................................................................35

Пример 3.2. Решение алгебраических уравнений

в матричной форме..................................................................................36

Дополнение. Матричные операции в среде LabVIEW...........................38

Выводы.............................................................................................................. 40

Лекция 4. Моделирование и измерение переменных

напряжений и токов в среде LabVIEW........................... 41

Моделирование синусоидальных токов и напряжений .......................... 41

Пример 4.1..........................................................................................42

Пример 4.2..............................................................................................42

Пример 4.3.............................................................................................. 44

Пример 4.4..............................................................................................45

Выводы.............................................................................................................. 46

Лекция 5. Численное решение обыкновенных

дифференциальных уравнений в среде LabVIEW.................................47

Расчетные алгоритмы.....................................................................................47

Пример 5.1.......................................................................................... 48

Пример 5.2 ...............................................................................................50

Выводы..............................................................................................................50

Лекция 6. Массивы..................................................................51

Создание массива элементов управления и индикации.......................51

Двумерные массивы..................................................................................... 53

Математические функции (полиморфизм)...............................................54

Основные функции работы с массивами..................................................54

Автоматическое масштабирование функций работы с массивами.....56

Дополнительные функции работы с массивами..................................56

Функции для работы с массивами логических переменных..................57

Выводы..............................................................................................................57

Лекция 7. Структуры.....................................................................................58

Цикл с фиксированным числом итераций (For).......................................59

Автоматическая индексация.......................................................................60

Пример 7.1. Автоиндексация...............................................................60

Пример 7.2. Окружность......................................................................60

Индексация нескольких массивов в одном цикле...................................61

Организация доступа к значениям предыдущих итераций цикла ....... 62

Сдвиговый регистр (Shift Register)...............................................................62

Пример 7.3. Сдвиговый регистр.........................................................62

Стек сдвиговых регистров..................................................................63

Пример 7.4. Стек сдвиговых регистров...........................................63

Узел обратной связи......................................................................................64

выводы..............................................................................................................64

Лекция 8. Логические элементы управления и индикации...................65

Механическое действие (Mechanical Action)...........................................65

Логические функции......................................................................................66

Цикл по условию (While).......................................................................68

Доступ к значениям предыдущих итераций цикла.............................68

Автоиндексирование в цикле по условию.............................................68

Пример. 8.1. Цикл While.......................................................................69

Задание 8.1. Решение нелинейного уравнения...............................69

Выводы..............................................................................................................72

Лекция 9. Структура выбора (Case)..........................................................73

Задание 9.1. Ввод пароля....................................................................74

Задание 9.2. Калькулятор.....................................................................75

Структура последовательности (Sequence)...............................................77

Структура открытой последовательности (Flat Sequence Structure)......77

Задание 9.3. Время выполнения программы.....................................77

Структура многослойной последовательности

(Stacked Sequence Structure)........................................................................78

Выводы..............................................................................................................79

Лекция 10. Структура обработки данных события (Event).................80

Пример 10.1. Обработка события закрытия ВП..............................85

Задание 10.2. Секундомер...................................................................86

Выводы.............................................................................................................87

Лекция 11. Кластеры......................................................................................88

Создание кластеров из элементов управления и индикации.............. 88

Порядок элементов в кластере...................................................................89

Создание кластера констант.......................................................................90

Функции работы с кластерами...................................................................90

Сборка кластеров...........................................................................................90

Разделение кластера.....................................................................................92

Пример 11.1. Масштабирование кластера (рис.11.7).................. 92

Преобразование кластера в массив.........................................................93

Пример 11.2. Преобразования массива в кластер и наоборот..............93

Кластеры ошибок...........................................................................................93

Обработка ошибок........................................................................................94

Кластеры ошибок.................................................................................... 95

Объяснение ошибки..............................................................................95

Использование цикла пока (While) при обработке ошибок.......... 96

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

при обработке ошибок............................................................................. 96

Выводы.............................................................................................................. 96

Лекция 12. Графическое представление данных...................................... 97

График диаграмм............................................................................................97

Соединение графиков..................................................................................97

График осциллограмм и двухкоординатный график осциллограмм.......99

Одиночный график осциллограмм.....................................................100

График множества осциллограмм...................................................... 100

Пример 12.1. График множества осциллограмм............................100

Одиночные двухкоординатные графики осциллограмм.................102

Двухкоординатные графики множества осциллограмм .................102

Графики интенсивности..:........................................................................ 102

Настройки графиков и таблиц интенсивности.......................................103

Выводы............................................................................................................ 104

Лекция 13. Виртуальные подприборы (SubVI)......................................105

Создание и настройка ВПП.......................................................................105

Редактирование иконки (EditIcon)............................................................106

Привязка полей ввода/вывода данных к элементам

лицевой панели............................................................................................108

Использование подпрограмм ВП.............................................................. 109

Редактирование подпрограммы ВП.................................................. 109

Установка значимости полей ввода/вывода данных: обязательные,

рекомендуемые и дополнительные (не обязательные).........................109

Создание ВПП из секции блок-диаграммы............................................. 110

Использование единиц измерения......................................................... 110

Пример 13.7. Использование размерностей.................................. 112

Выводы............................................................................................................ 113

Лекция 14. Строки.....................................................................................114

Создание строковых элементов управления и индикации .................114

Функции работы со строками....................................................................115

Преобразование строк в числовые данные......................117

Таблицы...........................................................................................................118

Задание 14.1. Сортировка таблицы................................................118

Выводы........................................................................................................... 120

Лекция 15. Функции работы с файлами.............................................121

Основы файлового ввода/вывода...........................................................121

Функции файлового ввода/вывода низкого уровня...................... 122

Сохранение данных в новом или уже существующем файле.............123

Пример 15.1. Запись строки в файл............................................... 123

Форматирование строк таблицы символов............................................124

Пример 15.2. Создание файла с таблицей....................................124

Функции файлового ввода/вывода высокого уровня............................125

Экспресс ВП............................................................................................. 126

Выводы............................................................................................................127

Лекция 16. Дополнительные приемы программирования:

Экспресс ВП, создание собственного меню........................................ 128

Экспресс ВП...............................................................................................128

Пример 16.1. Экспресс-ВП Build Text Express VI...........................129

Динамический тип данных (Dynamic Data Type).............................130

Преобразование экспресс-ВП в подпрограмму ВП.........................131

Создание собственного меню............................................................... 132

Задание 16.1. Добавление пункта меню «About» .........................132

Выводы...........................................................................................................134

Лекция 17. Дополнительные приемы программирования: формирование отчетов, изменение внешнего вида объектов лицевой панели, менеджер библиотек.............135

Формирование отчетов.............................................................................135

Задание 17.1. Формирование отчета........................................135

Изменение внешнего вида элементов

управления и индикации............................................................................ 137

Окно редактирования внешнего вида элементов

лицевой панели..................................................................................... 137

Режим настройки................................................................................138

Режим редактирования.......................................................................139

Определение типа................................................................................140

Диалоговое окно VI Library Manager...................................................... 140

Выводы............................................................................................................142

Лекция 18. Сбор данных.............................................143

DAQ-устройства...........................................................................................143

Назначение DAQ-устройств...............................................................143

Составление измерительных систем на базе компьютера

и DAQ-устройства.................................................................................144

Роль программного обеспечения.....................................................145

Настройка измерительных устройств...............................................146

Measurement & Automation Explorer.........................................................146

Классические драйверы..................................................................... 148

DAQmx-драйверы.................................................................................. 151

Частота дискретизаций (отсчетов)...................................................151

Подмена частот (при недостаточно высокой частоте

дискретизации сигнала)....................................................................... 152

выводы............................................................................................................ 152

Лекция 7 9. Сбор данных на базе традиционного NI-DAQ.

Тип данных осциллограмма........................................................................153

Тип данных осциллограмма (waveform)...................................................153

Аналоговый ввод реального сигнала.......................................................155

Простые функции аналогового ввода..............................................155

Пример 19.1. Простейший анализатор спектра............................156

Улучшенный аналоговый ввод...........................................................157

Пример 19.2. Непрерывный аналоговый ввод

с использованием буфера...................................................................157

Выводы............................................................................................................158

Лекция 20. Запуск сбора данных. Использование DAQmx............. 159

Включение (triggering)................................................................................ 159

Использование DAQmx..............................................................................161

Задание 20.1. Измерение переменного напряжения

с помощью экспресс-ВП DAQmx Assistant..................................... 161

Задание 20.2. Измерение переменного напряжения

с помощью функций палитры DAQmx - Data Acquisition..............165

Задание 20.3. Измерение переменного напряжения

с запуском по уровню и наклону сигнала.......................................166

Выводы............................................................................................................166

Лекция 21. Аналоговый вывод сигнала.................................................167

Реальные нелинейные элементы в виртуальных схемах......................168

Задание 21.1. Исследование работы выпрямителя....................... 169

Пример 21.2. Исследование работы выпрямителя в реальном времени..........172

выводы...........................................................................................................174

Лекция 22. NI ELVIS.................................................................................. 175

DAQ-устройство........................................................................................... 176

Настольная станция NI ELVIS.....................................................................176

Монтажная панель NI ELVIS..............................................................178

Задание 22.1. Полосовой фильтр.....................................................183

Выводы............................................................................................................184

Лекция 23. Программное обеспечение NI ELVIS............................. 195

Модуль запуска виртуальных приборов - Insfrumenf Launcher...........195

Цифровой мультиметр -Digital Multimeter (DMM)................................186

Осциллограф - Oscilloscope (Scope).......................................................187

Генератор функций - Function Generator (FGEN)..................................187

Регулируемые источники питания - Variable Power Supplies............... 188

Частотно-фазовый анализатор - Bode Analyzer....................................188

Задание 23.1. Снятие АЧХ и ФЧХ....................................................188

Анализатор динамических сигналов - Dynamic Signal Analyzer.....................189

Задание 23.2. Анализ динамических сигналов..............................190

Генератор сигналов произвольной формы - Arbitrary Waveform Generation................191

Задание 23.3. Генерация сигнала произвольной формы.............. 192

Цифровое считывающее и записывающее устройство -

Digital Reader и Digital Writer......................................................................192

Задание 23.4. Цифровой ввод-вывод...............................................192

Анализатор входного сопротивления - Impedance Analyzer..............192

Двухпроводный вольтамперный анализатор -

Two-Wire Current-Voltage Analyzer..........................................................192

Трехпроводный вольтамперный анализатор -

Three-Wire Current-Voltage Analyzer.........................................................194

Выводы............................................................................................................195

Лекция 24. Обработка изображений:....................................................196

Представление графики в LabVIEW.........................................................196

Холст, кисти и краски..................................................................................197

Задание 24.1. Создание рисунка....................................................198

Подписи к рисункам....................................................................................200

Операции с графическими данными......................................................202

Пример 24.1. Титры..............................................................................202

Создание собственных элементов индикации........................................203

Пример 24.2. Элемент индикации в виде рисунка........................203

Выводы............................................................................................................205

Лекция 25. Работа в сети......................................................................206

Web-сервер...................................................................................................206

Инструмент Web Publishing........................................................................ 209

Доступ к Web-серверу................................................................................213

Удаленная панель.........................................................................................216

Выводы............................................................................................................ 216

Лекция 26. Технология DataSocket.........................................................217

Использование DataSocket на лицевой панели......................................219

Использование DataSocket на блок-диаграмме.....................................221

Функции DataSocket.............................................................................221

Пример 26.1. Использование функции DataSocket Write.............221

Пример 26.2. Использование DataSocket Read.............................222

Буферизация данных.......................................................................222

Задание 26.1. Буферизация данных............................................222

Тип данных вариант..............................................................................224

Задание 26.2. Добавление к измеренным данным

отметки времени...................................................................................224

Задание 26.3. Получение измеренных данных

и отметок времени................................................................................225

Выводы............................................................................................................226

Лекция 27. Разработка больших проектов..........................................227

Иерархия виртуальных приборов..............................................................227

Инструмент сравнения проектов.............................................................230

Сравнение двух виртуальных приборов...........................................230

Сравнение двух иерархий...................................................................232

Выводы..........................................................................................................234

Лекция 28. Производительность и управление памятью.

Контроль за исходным кодом......................................................235

Некоторые советы по увеличению производительности............... 237

Инструмент VI Metrics........................................................................239

Выводы............................................................................................................ 241

Лекция 29. Обеспечение готовых проектов LabVIEW документацией.....................242

Окно VI History.............................................................................................243

Страница Documentation Properties...........................................................245

Окно Description and Tip.............................................................................247

Распечатка ВП с помощью инструмента Print VI.................................... 247

Выводы............................................................................................................253

Лекция 30. Создание автономно выполняемого приложения

при помощи инструмента Application Builder....................................255

Вкладка файлов приложения (Target)....................................................... 255

Вкладка исходных файлов (Source Files)..................................................256

Вкладка настройки ВП (VI Setting)............................................................ 257

Вкладка настроек приложения (Application Settings)............................. 258

Вкладка настроек инсталлятора (Installer Settings).................................259

Выводы............................................................................................................261

Литература....................................................................................................262

Типы данных LabVIEW..........................................................................263

Хостинг от uCoz