УДК 004.438LabVIEW
ББК 32.973.26018.1
Т 65
Jeffry Travis, Jim Kring.
LabVIEW for Everyone: Graphical Programming MadeEasy and Fun. Third
Edition
Т 65 Трэвис Дж., Кринг Дж.
LabVIEW для всех. 4е издание, переработанное и дополненное– М.: ДМК
Пресс, 2011. – 904 с.
ISBN 9785940746744
В книге приведено описание функциональных элементов среды проек
тирования виртуальных приборов LabVIEW 2010. Описание выполнения
функций сопровождается примерами их использования. Для большинства
ЭкспрессВП приведены окна конфигурирования с переводом их содержи
мого. В справочнике большое внимание уделено функциям программиро
вания, математики, обработки сигналов, коммуникации, управления при
борами и обмена данными по стандартным интерфейсам. Рассмотрены также
новые элементы LabVIEW 2010 – диаграмма состояний, потоковая переда
ча данные и другие.
Издание может быть полезно широкому кругу специалистов, решающих
задачи измерения, обработки или моделирования сигналов, а также студен
там соответствующих специальностей вузов.
На компактдиске представлена 30дневная версия программы LabVIEW
2010, а также виртуальные приборы примеров и упражнений, рассмотренных
в книге.
УДК 004.438LabVIEW
ББК 32.973.26018.1
Все права защищены. Любая часть этой книги не может быть воспроизведена в какой
бы то ни было форме и какими бы то ни было средствами без письменного разрешения вла
дельцев авторских прав.
Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность
технических ошибок все равно существует, издательство не может гарантировать абсолютную
точность и правильность приводимых сведений. В связи с этим издательство не несет ответ
ственности за возможные ошибки, связанные с использованием книги.
ISBN 0131856723 (англ.)
ISBN 9785940746744 (рус.)
Copyright © Pearson Education, Inc.
© Оформление, издание, ДМК Пресс, 2011
Стр.3
СОДЕРЖАНИЕ
Об авторах ........................................................................................................ 22
За пределами лабораторий ......................................................................... 23
Расширяющийся мир виртуальных приборов ........................................... 24
Итоги .............................................................................................................. 24
Цели данной книги ......................................................................................... 25
Часть I. Основы .............................................................................................26
Часть II. Дополнительные сведения о LabVIEW .......................................... 27
Замечание об указании путей к файлам.....................................................29
Что нового в этом издании .......................................................................... 30
Инструкции по установке LabVIEW ............................................................ 30
Приобретение LabVIEW ............................................................................... 31
Приобретение LabVIEW ............................................................................... 31
Благодарности .................................................................................................. 32
1
Что же такое LabVIEW?.................................................................................. 33
Что такое LabVIEW и что он может для меня сделать? ........................... 34
Потоки данных и язык графического программирования ........................ 36
Как работает LabVIEW .................................................................................. 38
Демонстрационные примеры..................................................................... 41
Поисковик примеров NI (NI example finder) ............................................. 41
Примеры на компактдиске ......................................................................... 42
Упражнение 11: Демонстрация измерения температуры ...................... 42
Стр.4
4
LabVIEW для всех
Изменение значений .................................................................................... 44
Исследование блокдиаграммы .................................................................. 45
Иерархия .......................................................................................................46
Иконка и соединительная панель ................................................................46
Упражнение 12: Пример измерения частотной характеристики .......... 47
Итоги .................................................................................................................49
Дополнительные упражнения ......................................................................49
Упражнение 13: Более изящные примеры ...............................................49
2
Виртуальный прибор: подключение компьютера
к реальному миру ............................................................................................ 51
LabVIEW в реальном мире ........................................................................... 52
Эволюция LabVIEW ......................................................................................... 52
Что такое сбор данных?................................................................................ 55
Что такое КОП? ............................................................................................... 58
Связь через последовательный порт ........................................................ 60
Удаленный сбор данных ...............................................................................61
Сбор данных и USB ........................................................................................62
Применения в реальном мире: почему мы анализируем? ................... 63
Немного о PXI и VXI ....................................................................................... 65
Коммуникации .................................................................................................67
Подключение к Интернету ...........................................................................67
Работа в сети ................................................................................................. 68
ActiveX и .NET ................................................................................................69
Библиотеки коллективного доступа, dll и узел кодового интерфейса ....69
Другие механизмы связи............................................................................. 70
Набор дополнительных инструментов LabVIEW .................................... 70
LabVIEW RealTime, FPGA, PDA and Embedded........................................ 71
Итоги ................................................................................................................. 72
3
Среда LabVIEW ................................................................................................. 73
Лицевые панели .............................................................................................. 74
Элементы управления и индикаторы........................................................... 74
Блокдиаграммы ............................................................................................. 75
Стр.5
Содержание
5
Экономия места на терминалах ................................................................... 77
Узлы данных ...................................................................................................77
Проводники данных ..................................................................................... 78
Программирование потока данных – движение вместе с потоком........79
Проекты в LabVIEW ........................................................................................79
Окно менеджера проектов .........................................................................79
Инструментальная панель Project Еxplorer................................................. 80
Развиваем проект .......................................................................................... 81
Папки проекта ............................................................................................... 82
Конфликты файлов......................................................................................... 83
Удаляем из проекта ....................................................................................... 84
Создание приложения, установщика, DLL, пакета исходников
и Zipфайлов .................................................................................................. 85
Другие возможности проекта ..................................................................... 86
ВПП, иконка и соединительная панель ...................................................... 86
Упражнение 31: Начало работы ................................................................ 88
Ровная сетка (Alignment grid) ....................................................................... 95
Выпадающее меню .........................................................................................96
Меню Файл ....................................................................................................97
Меню Правка .................................................................................................97
Меню Вид ....................................................................................................... 98
Меню Проект ................................................................................................ 98
Меню Управление .........................................................................................99
Меню Инструменты ......................................................................................99
Меню Окно ....................................................................................................99
Меню Справка ............................................................................................ 100
Плавающие палитры ................................................................................... 101
Палитры Элементы управления и Функции ............................................. 101
Настройка палитр ...................................................................................... 107
Быстрый доступ.......................................................................................... 109
Палитра инструментов .............................................................................. 111
Автоматический выбор инструмента ...................................................... 112
Инструментальная панель ...........................................................................113
Контекстное меню ........................................................................................115
Особенности контекстного меню ........................................................... 117
Описание особенностей контекстного меню .........................................118
Справка .......................................................................................................... 121
Окно контекстной помощи ....................................................................... 121
Стр.6
6
LabVIEW для всех
Опция Online Help ......................................................................................122
ЭкспрессВП (ЭВП) ......................................................................................123
ВП как расширяемые терминалы ..............................................................124
Несколько слов о виртуальных подприборах ...................................... 126
Упражнение 32: Основные элементы лицевой панели
и блокдиаграммы ....................................................................................... 126
Итоги .............................................................................................................. 130
4
Основы программирования в LabVIEW ..................................................132
Создание виртуальных приборов – теперь ваша очередь! ............... 133
Размещение объектов на лицевой панели ............................................... 133
Маркировка объектов ................................................................................134
Изменение шрифта, стиля, размера и цвета ............................................137
Размещение объектов на блокдиаграмме .............................................. 138
Методы редактирования ............................................................................ 138
Упражнение 41: Практика редактирования ..........................................145
Элементы управления, индикаторы и их возможности ........................148
Числовые элементы управления и индикаторы .......................................148
Логические элементы................................................................................. 155
Строковые данные ...................................................................................... 158
Путь к файлу .................................................................................................159
Улучшение внешнего вида ........................................................................ 160
Создание элементов управления и индикаторов ................................... 160
Кратко об основных элементах управления и индикаторах .................. 160
Соединение .................................................................................................. 160
Автоматический выбор расположения проводника .............................. 161
Автоматическое соединение ................................................................... 162
Соединение сложных объектов ................................................................163
Поврежденные проводники ......................................................................163
Советы по соединению элементов .......................................................... 164
Удлинение проводников ............................................................................165
Выделение и удаление проводников ........................................................165
Перемещение проводников .................................................................... 166
Соединение с объектами, находящимися за пределами экрана .......... 166
Автоматическое добавление констант, элементов управления
и индикаторов ............................................................................................ 166
Стр.7
Содержание
7
Запуск виртуального прибора ................................................................. 167
Упражнение 42: Создание термометра ..................................................168
Полезные подсказки ................................................................................... 170
Клавишные комбинации быстрого вызова .............................................. 170
Примеры .................................................................................................... 170
Смена инструментов ................................................................................. 170
Изменение направления соединяющего проводника ........................... 171
Отмена операции соединения ................................................................. 171
Удаление последней точки изменения направления проводника ........ 171
Вставка объекта в существующие соединения ....................................... 171
Точное перемещение объекта................................................................. 171
Быстрое приращение значений числовых элементов управления ...... 172
Введение разделов в кольцевые списки .................................................. 172
Копирование объекта ............................................................................... 172
Перемещение объекта только в одном направлении ........................... 172
Выбор цвета ............................................................................................... 172
Замена объектов ........................................................................................ 172
Создание дополнительного рабочего пространства .............................173
Изменение настроек ..................................................................................173
Итоги ...............................................................................................................173
Дополнительные упражнения ................................................................... 174
Упражнение 43: Сравнение чисел .......................................................... 174
Упражнение 44: Простейший калькулятор .............................................175
5
И вновь об основах программирования в LabVIEW .......................... 176
Загрузка и сохранение виртуальных приборов ................................... 177
Опции сохранения .................................................................................... 177
Возврат в прежнее состояние .................................................................. 179
Библиотеки виртуальных приборов ........................................................ 179
Как пользоваться библиотеками ВП ......................................................... 180
Менеджер библиотек ВП ...........................................................................181
Диалоговые окна сохранения и загрузки .................................................182
Выбор типа файлов .....................................................................................182
Методика отладки программ ..................................................................... 182
Отладка неисправного ВП ......................................................................... 183
Предупреждения ........................................................................................184
Стр.8
8
LabVIEW для всех
Наиболее распространенные ошибки ....................................................184
Пошаговое выполнение ВП ....................................................................... 185
Подсветка при выполнении программы .................................................. 185
Использование точек останова выполнения программы .......................186
Временное прекращение выполнения программы ................................ 188
Инструмент установки отладочных индикаторов (пробник) .................189
Упражнение 51: Отладка программы .................................................... 191
Создание подприборов ............................................................................ 194
Создание виртуального подприбора на основе ВП ...............................195
Создание ВПП из блокдиаграммы .......................................................... 203
Окно помощи ВПП: рекомендуемые, обязательные
и необязательные входные данные .......................................................... 204
Обновить связь с ВП .................................................................................. 205
Документирование работы ...................................................................... 206
Создание описаний и подсказок для отдельных объектов .................... 206
Документирование ВП с помощью опции Свойства ВП........................ 208
Немного о распечатке виртуальных приборов ................................... 209
Упражнение 52: Создание ВПП – практикуясь,
вы совершенствуетесь ............................................................................... 210
Итоги ...............................................................................................................213
Дополнительные упражнения ....................................................................214
Упражнение 53: Определите среднее значение ...................................214
Упражнение 54: Деление на нуль (кто говорит, что вы
не можете?) .................................................................................................214
6
Управление выполнением программы с помощью структур ..........215
Два типа структур циклов .......................................................................... 216
Цикл с фиксированным числом итераций ............................................... 216
Цикл по условию ........................................................................................ 217
Размещение объектов внутри структур ...................................................218
Упражнение 61: Счет с помощью циклов ...............................................221
Сдвиговые регистры .................................................................................... 225
Упражнение 62: Использование сдвигового регистра .........................227
Зачем нужны сдвиговые регистры ........................................................... 229
Инициализация сдвиговых регистров...................................................... 230
Узел обратной связи ...................................................................................231
Стр.9
Содержание
9
Туннель в сдвиговый регистр и наоборот................................................ 233
Структуры варианта ..................................................................................... 234
Подключение терминалов ввода/вывода .................................................236
Добавление вариантов .............................................................................. 237
Автоматическое соединение туннелей в структуре варианта ...............237
Диалоговые окна .......................................................................................... 238
Упражнение 63: Извлечение квадратного корня ...................................242
Функция выбора.......................................................................................... 245
Структуры последовательности: компактная и открытая ................... 245
Компактная последовательность и локальные терминалы – зло? ......... 246
Тактирование .................................................................................................247
Упражнение 64: Числа совпадения ........................................................ 250
Экспрессфункции тактирования ..............................................................251
Тактированные структуры .......................................................................... 252
Тактированный цикл.................................................................................... 253
Тактированная последовательность .......................................................... 254
ВП синхронизации ...................................................................................... 254
Узел Формула ................................................................................................ 255
Упражнение 65: Упражнение с узлом Формула .....................................257
Узел Выражение ............................................................................................259
Цикл по условию и структура варианта.................................................. 260
Основной цикл ........................................................................................... 260
Несколько вариантов в одном цикле ....................................................... 261
Увеличиваем производительность: Ожидание действий....................... 264
Итоги .............................................................................................................. 264
Дополнительные упражнения ................................................................... 266
Упражнение 66: Уравнения ..................................................................... 266
Упражнение 67: Калькулятор................................................................... 266
Упражнение 68: Комбинация цикла с фиксированным числом
итераций с циклом по условию ................................................................ 267
Упражнение 69: Диалоговое окно ......................................................... 267
7
Составные данные LabVIEW: массивы и кластеры ..............................268
Что такое массивы....................................................................................... 269
Создание элементов управления и отображения массивов ............. 269
Полосы прокрутки массива .......................................................................272
Стр.10
10
LabVIEW для всех
Использование автоматического индексирования ..............................272
Использование автоиндексирования для установки количества
повторений циклов с фиксированным числом итераций .......................274
Двумерные массивы....................................................................................275
Создание двумерных массивов ................................................................275
Упражнение 71: Создание массивов с помощью
автоиндексирования ................................................................................... 276
Функции работы с массивами ...................................................................278
Упражнение 72: Работа с массивами .....................................................282
Полиморфизм ............................................................................................... 284
Упражнение 73: Полиморфизм ...............................................................286
Составная арифметика ................................................................................ 288
Несколько слов о логической арифметике ............................................. 290
Все о кластерах ............................................................................................ 291
Создание элементов управления и отображения для кластеров .......... 292
Упорядочивание элементов кластера ......................................................293
Использование кластеров для подачи и получения данных в/из ВПП ......295
Замена элемента кластера ........................................................................ 296
Разделение кластеров ............................................................................... 296
Упражнение 74: Работа с кластером ...................................................... 297
Объединение и разделение по имени .................................................... 299
Кластерпиктограмма ................................................................................ 301
Упражнение 75: Еще раз о кластерах..................................................... 302
Взаимозаменяемые массивы и кластеры ................................................303
Сравнение кластеров и массивов .............................................................305
Кластер и обработка ошибок ................................................................... 306
Тип данных: кластер ошибок .................................................................... 307
Распространение ошибки: поток данных ............................................... 307
Сообщение об ошибке и его анализ в LabVIEW ......................................308
Обработка ошибок в ВПП .........................................................................311
Сообщение об ошибке в ВПП ...................................................................311
Последний шаг: сообщение пользователю .............................................312
Дополнительные советы по обработке ошибок ..................................... 313
Итоги ............................................................................................................... 315
Дополнительные упражнения ....................................................................316
Упражнение 76: Изменение порядка ......................................................316
Упражнение 77: Извлечение подмассива...............................................317
Упражнение 78: Игра в кости ...................................................................317
Стр.11
Содержание
11
Упражнение 79: Умножение элементов массива...................................317
8
Средства визуального отображения LabVIEW: развертки
и графики осциллограмм ............................................................................. 318
Развертки осциллограмм ............................................................................319
Режимы обновления развертки осциллограммы .................................... 320
Однолучевая развертка осциллограммы .................................................321
Создание многолучевой развертки осциллограммы .............................. 322
Один график или много: полезный совет ................................................. 323
Цифровой дисплей развертки осциллограммы ...................................... 323
Горизонтальная Полоса прокрутки ........................................................... 324
Очистка содержимого графического индикатора .................................. 324
Отдельные и совмещенные кривые графиков ......................................... 325
Несколько шкал Y ........................................................................................ 325
Длина графика .............................................................................................326
Упражнение 81: Слежение за температурой ........................................327
Графики осциллограмм............................................................................... 331
Однолучевая осциллограмма .................................................................... 332
Многолучевая осциллограмма .................................................................. 333
Упражнение 82: Построение синусоиды на графике
осциллограммы ............................................................................................ 335
Двухкоординатные графики ...................................................................... 339
Преобразования двухкоординатных графиков .......................................341
Компоненты разверток и графиков осциллограмм.............................. 343
Работа с масштабами ................................................................................. 344
Панель редактирования графика...............................................................347
Упражнение 83: Использование двухкоординатного графика
для построения окружности ......................................................................350
Использование палитры элементов управления графиком .................... 351
Курсоры графика ........................................................................................ 352
Пояснения графика ..................................................................................... 354
Упражнение 84: Анализ данных температуры ...................................... 356
Развертки и графики интенсивности – цвет как третье измерение ..... 359
Упражнение 85: График интенсивности ..................................................361
Трехмерные графики.................................................................................. 363
Интервалы, осциллограммы и динамические данные ........................ 366
Стр.12
12
LabVIEW для всех
Интервалы .................................................................................................. 366
Осциллограммы ......................................................................................... 369
Упражнение 86: Создание и построение осциллограммы ................... 375
Цифровые данные ......................................................................................377
Графики цифровых осциллограмм ............................................................ 378
Динамические данные ............................................................................... 378
Графики смешанных сигналов ...................................................................380
Экспортирование изображений с осциллограмм ............................... 384
Экспорт данных ............................................................................................. 384
Итоги ............................................................................................................... 385
Дополнительные упражнения .................................................................... 387
Упражнение 87: Лимит температуры ...................................................... 387
Упражнение 88: Максимальный и минимальный пределы
температуры ............................................................................................... 388
Упражнение 89: Вычерчивание случайных массивов ............................ 388
9
Изучение строк и подприборы ввода/вывода .................................... 389
Еще раз о строках ....................................................................................... 390
Выбор типа отображения ......................................................................... 390
Одинарные строки .....................................................................................392
Обновление строки во время ввода текста .............................................392
Полоса прокрутки ...................................................................................... 393
Таблицы ........................................................................................................ 393
Окна списков ..............................................................................................394
Использование функций обработки строк ............................................ 395
Упражнение 91: Создание строк............................................................. 398
Функции анализа .......................................................................................... 400
Шаблон строки и регулярные выражения .............................................. 401
Упражнение 92: И снова об анализе строк ......................................... 405
Ввод/вывод данных в файл/из файла ........................................................ 407
Как они работают....................................................................................... 407
Чтение и запись файлов таблиц ................................................................ 409
Упражнение 93: Запись в файл табличного формата ............................ 411
Упражнение 94: Считывание из файла ....................................................412
Дополнительные сведения о работе с файлами .....................................413
Упражнение 95: Считывание данных из текстового файла ....................415
Стр.13
Содержание
13
Упражнение 96: Чтение и запись бинарных файлов ............................. 416
Итоги .............................................................................................................. 419
Дополнительные упражнения ................................................................... 420
Упражнение 97: Температуры и отсчет времени ................................. 420
Упражнение 98: Работа с таблицей символов........................................421
10
Ввод/вывод данных на компьютер: получение данных
и управление прибором..............................................................................422
Основные термины...................................................................................... 423
DAQ и другие аббревиатуры .................................................................... 423
Как соединить компьютер с окружающим миром................................ 425
Сигналы .......................................................................................................... 426
Временные параметры – самое главное ................................................ 426
Классификация сигналов ............................................................................427
Цифровые сигналы ..................................................................................... 428
Формирование и преобразование сигнала ............................................436
Проблема заземления ................................................................................ 438
Схемы измерений .......................................................................................441
Дискретизация, появление ложной частоты и мистер Найквист .......... 446
И в заключение…........................................................................................ 448
Выбор и конфигурация измерительной аппаратной части
систем сбора данных ................................................................................. 449
Выбор аппаратной части .......................................................................... 449
Упражнение 102: Анализ измерительной системы ............................... 451
Установка драйверов приборов сбора данных ...................................... 452
Программа анализа измерений и автоматизации ................................... 453
NIDAQmx .................................................................................................... 454
Настройка приборов NIDAQmx в МАХ .................................................. 455
Настройка сбора данных ...........................................................................459
Итоги .............................................................................................................. 462
Ответы к упражнениям ................................................................................463
11
Сбор данных и управление приборами в LabVIEW............................ 464
Аналоговый и цифровой сбор данных ...................................................465
Использование DAQ Assistant ...................................................................465
Стр.14
14
LabVIEW для всех
Упражнение 111: Аналоговый ввод ........................................................468
Термины и определения Аналогового ввода/вывода ............................ 470
Термины и определения цифрового ввода/вывода ............................... 476
Задачи NIDAQmx........................................................................................ 480
Создание задач NIDAQmx в МАХ.............................................................481
Обращение к задачам из LabVIEW ............................................................481
Генерация кода из задач NIDAQmx ......................................................... 484
Использование задач NIDAQmx в LabVIEW ............................................486
Сбор данных, чуть глубже ......................................................................... 496
DAQmx Timing and DAQmx Trigger ........................................................... 496
Многоканальный сбор данных ................................................................. 500
Непрерывный сбор данных ..................................................................... 502
Упражнение 117: Непрерывный сбор данных ..................................... 502
Потоковая запись данных в файл ...............................................................505
Упражнение 118: Потоковая запись в файл ........................................... 506
Измерение частоты и подсчет событий .................................................. 509
Итоги ............................................................................................................... 513
12
Управление приборами в LabVIEW ..........................................................514
Аббревиатуры управления приборами .................................................. 515
Соединяем компьютер с приборами ...................................................... 515
Использование КОП ...................................................................................516
Подготовка к последовательной коммуникации .....................................517
Ethernetприборы ...................................................................................... 520
SCPI, язык приборов ....................................................................................521
VISA – средство общения с приборами ................................................521
Строка ресурса VISA ................................................................................. 522
Настройка VISA в МАХ ............................................................................... 522
Управление приборами в LabVIEW .......................................................... 524
Использование Instrument I/O Assistant .................................................... 524
Драйвера приборов .................................................................................. 525
Поиск драйверов приборов из LabVIEW .................................................527
Функции VISA ..............................................................................................527
Дополнительные функции VISA ................................................................. 531
Функции VISA для данной шины (интерфейса) ........................................ 532
Общение с КОП: традиционные ВП и ВП VISA ....................................... 532
Стр.15
Содержание
15
Последовательная коммуникация ............................................................. 533
Функции VISA USB ...................................................................................... 534
Создание собственных драйверов: Instrument Driver Wizard ................ 536
Итоги ............................................................................................................... 537
13
Продвинутые структуры и функции в LabView ................................... 540
Локальные, глобальные и сетевые переменные ................................... 542
Локальные переменные ............................................................................. 542
Контроль параллельных циклов ................................................................. 543
Упражнение 131: Использование локальных переменных ................... 547
Упражнение 132: Развлекаемся с локальными переменными ..............549
Упражнение 133: Продолжаем развлекаться с локальными
переменными .............................................................................................. 551
Глобальные переменные............................................................................ 551
Сетевые переменные ................................................................................. 559
Узел свойств (Property Node) .................................................................... 559
Еще один пример .......................................................................................564
Упражнение 134: Использование узлов свойств с графиками ............ 566
Узлы методов ................................................................................................. 568
Упражнение 135: Использование узлов методов
для экспорта картинки с графика ............................................................. 569
Программирование на основе событий: структура События .......... 570
Событие по истечении времени ...............................................................572
Настройка событий, поддерживаемых структурой События ................ 573
Использование структуры События .......................................................... 574
Разнообразие событий ..............................................................................577
Упражнение 136: Игры с событиями ......................................................577
Остановка циклов While, содержащих структуры событий ................... 578
Упражнение 137: Использование структуры События
для считывания изменений значений данных ........................................... 581
Продвинутые идеи: Узел данных события и Узел фильтров события ..... 586
Продвинутые идеи: событияОповещения против
событийФильтров ..................................................................................... 586
Продвинутые идеи: Динамические события и Пользовательские
события ........................................................................................................ 587
Определение типа (Type Definition) ......................................................... 588
Стр.16
16
LabVIEW для всех
Упражнение 138: Создание тайпдефа ..................................................... 589
«Конечный автомат» и «обработчик очереди сообщений» ............... 593
Стандартный конечный автомат ................................................................ 593
Упражнение 139: Использование Стандартного конечного
автомата ....................................................................................................... 595
Диаграмма состояний ............................................................................... 600
Обработчик очереди сообщений ........................................................... 602
Передача сообщений и синхронизация................................................ 604
Очереди (Queues)..................................................................................... 604
Уведомители ............................................................................................... 610
Семафоры: закрытие и открытие общих ресурсов ................................615
Рандеву ........................................................................................................618
Происшествия............................................................................................ 622
Структуры для выключения кода ................................................................625
Структура Выключение кода ..................................................................... 626
Выключение кода по условию .................................................................. 626
Остановка ВП и выполнения приложения...............................................628
Удобные опции графического интерфейса пользователя:
смотрите, что я могу! .................................................................................. 629
Системные элементы управления и цвета ............................................... 629
Drag and Drop (Перетащить и оставить) ...................................................631
Элемент управления деревом элементов ................................................ 633
Упражнение 1311: Захват событий мыши на дереве элементов .......... 635
Управление вкладками................................................................................637
Субпанели................................................................................................... 640
Разделители (Splitter Bars) ......................................................................... 641
Полоса прокрутки ..................................................................................... 642
Графика и звук .............................................................................................643
Итоги .............................................................................................................. 646
14
Дополнительные возможности управления данными ........................648
Слово о полиморфных ВП ......................................................................... 649
Продвинутые функции ввода/вывода файлов: текстовые,
бинарные файлы и файлы конфигурации ................................................651
Открытие и закрытие ссылок на файлы.....................................................651
Стр.17
Содержание
17
Продвинутые функции работы с файлами................................................652
End of File .....................................................................................................654
Упражнение 141: Чтение текстового файла .......................................... 656
Упражнение 142: Чтение и запись бинарных файлов............................ 658
Потоковая запись данных на диск ............................................................ 662
Файлы конфигурации (INI) ......................................................................... 666
Открытие и закрытие файлов конфигурации .......................................... 667
Чтение и запись пар ключзначение ........................................................ 668
Упражнение 143: Хранение данных в файле конфигурации ................ 669
Дополнительные операции по работе с конфигурационными
файлами ...................................................................................................... 672
Вызов кода из других языков программирования ................................673
Использование узла Call Library Function для подключения
DLLбиблиотек ............................................................................................ 674
Упражнение 144: Вызов DLL в LabView ...................................................675
Забивание квадратных шпилек в круглые отверстия:
расширенные преобразования и смена типов данных ...................... 680
Условный тип данных ...................................................................................687
Использование условного типа данных: создание настраиваемого
программного обеспечения .................................................................... 691
ActiveX и условный тип данных ................................................................. 691
Итоги .............................................................................................................. 694
Дополнительные упражнения ................................................................... 694
Упражнение 145: Считывание текстового файла постранично ........... 694
15
Продвинутые особенности LabView ...................................................... 695
Настройка LabVIEW: диалоговое окно опций....................................... 696
Конфигурирование виртуального прибора.......................................... 699
Настройки окна Установка узла ВПП (неизбежное зло) ........................ 699
Упражнение 151: Использование виртуальных подприборов ............ 700
Опции свойств виртуальных приборов................................................... 702
Выполнение с повторным вхождением ................................................... 707
Навигация при помощи клавиш ................................................................ 712
Сервер ВП..................................................................................................... 716
Разрешение удаленного доступа к серверу ВП ......................................718
Стр.18
18
LabVIEW для всех
Свойства и методы, «По ссылке» ............................................................. 720
Дежавю: узлы свойств и узлы методов .................................................... 721
Ссылка на приложение ...............................................................................722
Ссылки на ВП ...............................................................................................725
Ссылки на элементы управления ...............................................................732
Упражнение 159: Создание утилиты экстренного прерывания ...........745
Заключительные мысли по серверу ВП ................................................... 746
Система счисления и единица размерности ........................................ 746
Системы счисления.................................................................................... 746
Единицы размерности .............................................................................. 747
Автоматическое создание виртуального подприбора
из фрагмента блокдиаграммы ..................................................................751
Вспомогательные средства LabVIEW .......................................................754
Настраиваемые зонды (Custom probe) ....................................................754
Окно иерархии ...........................................................................................757
Поиск объектов в «виртуальном стоге сена» .......................................... 758
Замена результатов поиска ....................................................................... 761
Найти ВП на диске ..................................................................................... 761
Дополнительные инструментальные средства ....................................... 761
Итоги ...............................................................................................................763
16
Сетевые возможности LabVIEW ...............................................................765
Ваш ВП в Сети: Webсервер LabVIEW .................................................... 766
Настройка встроенного Webсервера LabVIEW.................................... 766
Публикация в HTML с помощью Webсервера LabVIEW ........................ 767
Пересылка данных по электронной почте в LabView ......................... 772
Удаленные панели ........................................................................................773
Самоописывающиеся данные: XML ......................................................... 774
Обмен данными по сети: общие переменные ......................................778
Обобщенные переменные в проектах LabView .....................................778
Привязка элементов управления и индикаторов к общим
переменным ................................................................................................781
Программный доступ к общим переменным с использованием
DataSocket.................................................................................................... 783
Программное считывание общих переменных ......................................784
Стр.19
Содержание
19
Общение с другими программами и объектами..................................786
.Net и ActiveX...............................................................................................787
AppleEvents .................................................................................................795
Каналы ......................................................................................................... 796
Взаимодействие с другими компьютерами: сетевые ВП ....................798
TCP/IP ........................................................................................................... 799
Протокол UDP ............................................................................................ 802
Потоковая передача данных в LabVIEW ................................................. 802
Базы данных .................................................................................................. 804
Создание отчетов ........................................................................................ 806
Экспрессотчет .......................................................................................... 807
Простой текстовый отчет .......................................................................... 807
Продвинутое создание отчетов ............................................................... 809
Сохранение отчетов .................................................................................. 810
Итоги ...............................................................................................................814
17
Искусство программирования в LabVIEW ............................................. 815
Почему так важен графический интерфейс ...........................................816
Размещение, оформление, группировка и блокирование ................816
Да здравствует искусство: импортирование рисунков ......................819
Настройка внешнего вида элементов управления
и индикаторов ............................................................................................... 823
Добавление оперативной подсказки ...................................................... 828
Дополнительные указания и рекомендации........................................... 831
Как чтолибо сделать в LabVIEW? .............................................................. 835
Память, производительность и тому подобное ................................... 840
Лечение амнезии и лености ..................................................................... 840
Декларация независимости ....................................................................... 843
Искусство программирования ................................................................. 844
Очистка блокдиаграммы ........................................................................... 844
Модулирование и испытание ваших ВП ...................................................846
Документирование в процессе работы ..................................................847
Еще раз о потоке данных ...........................................................................847
Итоги ............................................................................................................... 848
Заключительные замечания ........................................................................849
Стр.20
20
LabVIEW для всех
Приложение 1
Компактдиск...................................................................................................850
Приложение 2
Дополнительные модули LabVIEW ............................................................ 851
Создание приложения и модули для выделенных систем ................... 851
Разработка ПО и средства оптимизации ................................................ 851
Управление и отображение данных......................................................... 852
Системы реального времени и ПЛИС ..................................................... 852
Разработка встроенных систем ................................................................ 852
Управление и анализ сигналов .................................................................. 852
Автоматизированное тестирование ........................................................ 852
Захват изображений и техническое зрение ........................................... 853
Эмуляция и расчет систем .......................................................................... 853
Промышленное управление ...................................................................... 853
Приложение 3
Открытые средства для LabVIEW: OpenG.org ...................................... 854
Открытое программное обеспечение ................................................... 854
OpenG.org: дом открытого ПО для LabVIEW ......................................... 855
Приложение 4
Объектноориентированное программирование в LabVIEW ......... 857
Введение ........................................................................................................ 857
Основы ООП .............................................................................................. 857
Анализ и разработка концепции объектов .............................................. 858
ООП в LabVIEW ............................................................................................ 858
Глобальный функционал ............................................................................. 858
Пример: очередь ....................................................................................... 859
Глобальный функционал: заключение ...................................................... 866
ГООП .......................................................................................................... 866
Защищенное хранение данных .................................................................867
Наследование в ГООП ...............................................................................871
Встроенные функции ООП в LabVIEW ....................................................872
Библиотеки проектов .................................................................................872
XControls ......................................................................................................872
Стр.21
Содержание
21
Будущее ООП в LabVIEW ...........................................................................872
Приложение 5
Ресурсы LabVIEW........................................................................................... 873
Документация LabVIEW и справочная система ..................................... 873
Авторы книги ............................................................................................... 873
National Instruments .................................................................................... 874
LabVIEW Advanced Virtual Architects (LAVA) ............................................ 874
InfoLabVIEW Mailing List .............................................................................874
OpenG.org ...................................................................................................874
Другие книги ............................................................................................... 875
Глоссарий .........................................................................................................876
Предметный указатель ................................................................................ 899
Стр.22