Трэвис Дж., Кринг Дж. Lab VIEW для всех Четвертое издание, переработанное и дополненное Обновление содержания четвертого издания книги произведено сотрудниками Центра измерительных технологий и промышленной автоматизации физического факультета и МЛЦ МГУ имени М.В. Ломоносова Михеевым П. М., Соболевым А.С., Сомовым А.С. Д М » Москва, 2011 УДК 004.438LabVIEW ББК 32.973.26-018.1 Т 65 Jeffry Travis, Jim Kring. LabVIEW for Everyone: Graphical Programming MadeEasy and Fun. Third Edition T 65 Трэвис Дж., Кринг Дж. LabVIEW для всех. 4-е издание, переработанное и дополненное- М.: ДМК Пресс, 2011. - 904 с. ISBN 978-5-94074-674-4 В книге приведено описание функциональных элементов среды проек тирования виртуальных приборов LabVIEW 2010. Описание выполнения функций сопровождается примерами их использования. Для большинства Экспресс-ВП приведены окна конфигурирования с переводом их содержи мого. В справочнике большое внимание уделено функциям программиро вания, математики, обработки сигналов, коммуникации, управления при борами и обмена данными по стандартным интерфейсам. Рассмотрены также новые элементы LabVIEW 2010 - диаграмма состояний, потоковая переда ча данные и другие. Издание может быть полезно широкому кругу специалистов, решающих задачи измерения, обработки или моделирования сигналов, а также студен там соответствующих специальностей вузов. На компакт-диске представлена 30-дневная версия программы LabVIEW 2010, а также виртуальные приборы примеров и упражнений, рассмотренных в книге. УДК 004.438Lab VIEW ББК 32.973.26-018.1 Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения вла дельцев авторских прав. Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим издательство не несет ответ ственности за возможные ошибки, связанные с использованием книги. ISBN 0-13-185672-3 (англ.) Copyright © Pearson Education, Inc. ISBN 9785-94074-674-4 (рус.) © Оформление, издание, ДМК Пресс, 2011 СОДЕРЖАНИЕ ■ Об авторах........................................................................................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 Упражнение 1-1: Демонстрация измерения температуры.................. 42 4 LabVIEW для всех Изменение значений.......................................................................44 Исследование блок-диаграммы........................................................45 Иерархия.......................................................................................46 Иконка и соединительная панель......................................................46 Упражнение 1-2: Пример измерения частотной характеристики 47 Итоги................................................................................................49 Дополнительные упражнения...........................................................49 Упражнение 1-3: Более изящные примеры........................................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 Real-Time, FPGA PDA and Embedded..................................71 Итоги................................................................................................72 ▼ З Среда LabVIEW..................................................................................73 Лицевые панели................................................................................74 Элементы управления и индикаторы..................................................74 Блок-диаграммы...............................................................................75 Содержание 5 Экономия места на терминалах.........................................................77 Узлы данных....................................................................................77 Проводники данных........................................................................78 Программирование потока данных - движение вместе с потоком 79 Проекты в LabVIEW.......................................................................... 79 Окно менеджера проектов..............................................................79 Инструментальная панель Project Explorer......................................... 80 Развиваем проект............................................................................ 81 Папки проекта.................................................................................82 Конфликты файлов............................................................................83 Удаляем из проекта..........................................................................84 Создание приложения, установщика, DLL, пакета исходников и Zip-файлов...................................................................................85 Другие возможности проекта.......................................................... 86 ВПП, иконка и соединительная панель..............................................86 Упражнение 3-1: Начало работы...................................................... 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 LabVIEW для всех Опция Online Help.........................................................................122 Экспресс-ВП (ЭВП).........................................................................123 ВП как расширяемые терминалы.................................................... 124 Несколько слов о виртуальных подприборах.................................126 Упражнение 3-2: Основные элементы лицевой панели и блок-диаграммы.......................................................................... 126 Итоги..............................................................................................130 ▼ 4 Основы программирования в LabVIEW.......................................... 132 Создание виртуальных приборов - теперь ваша очередь!.............133 Размещение объектов на лицевой панели........................................133 Маркировка объектов....................................................................134 Изменение шрифта, стиля, размера и цвета..................................... 137 Размещение объектов на блок-диаграмме.......................................138 Методы редактирования.................................................................138 Упражнение 4-1: Практика редактирования....................................145 Элементы управления, индикаторы и их возможности.................... 148 Числовые элементы управления и индикаторы.................................148 Логические элементы.....................................................................155 Строковые данные.........................................................................158 Путь к файлу..................................................................................159 Улучшение внешнего вида..............................................................160 Создание элементов управления и индикаторов..............................160 Кратко об основных элементах управления и индикаторах................160 Соединение....................................................................................160 Автоматический выбор расположения проводника..........................161 Автоматическое соединение......................................................... 162 Соединение сложных объектов......................................................163 Поврежденные проводники........................................................... 163 Советы по соединению элементов..................................................164 Удлинение проводников................................................................ 165 Выделение и удаление проводников............................................... 165 Перемещение проводников..........................................................166 Соединение с объектами, находящимися за пределами экрана 166 Автоматическое добавление констант, элементов управления и индикаторов...............................................................................166 Содержание 7 Запуск виртуального прибора......................................................167 Упражнение 4-2: Создание термометра.......................................... 168 Полезные подсказки.......................................................................170 Клавишные комбинации быстрого вызова......................................170 Примеры..................................................................................... 170 Смена инструментов....................................................................170 Изменение направления соединяющего проводника........................171 Отмена операции соединения........................................................171 Удаление последней точки изменения направления проводника 171 Вставка объекта в существующие соединения..................................171 Точное перемещение объекта........................................................171 Быстрое приращение значений числовых элементов управления 172 Введение разделов в кольцевые списки......................................... 172 Копирование объекта....................................................................172 Перемещение объекта только в одном направлении......................172 Выбор цвета................................................................................. 172 Замена объектов..........................................................................172 Создание дополнительного рабочего пространства.........................173 Изменение настроек......................................................................173 Итоги..............................................................................................173 Дополнительные упражнения........................................................174 Упражнение 4-3: Сравнение чисел................................................174 Упражнение 4-4: Простейший калькулятор......................................175 ▼ 5 И вновь об основах программирования в LabVIEW.....................176 Загрузка и сохранение виртуальных приборов.............................177 Опции сохранения........................................................................177 Возврат в прежнее состояние.......................................................179 Библиотеки виртуальных приборов.............................................. 179 Как пользоваться библиотеками ВП............................................... 180 Менеджер библиотек ВП................................................................181 Диалоговые окна сохранения и загрузки..........................................182 Выбор типа файлов........................................................................182 Методика отладки программ...........................................................182 Отладка неисправного ВП..............................................................183 Предупреждения...........................................................................184 8 LabVIEW для всех Наиболее распространенные ошибки............................................184 Пошаговое выполнение ВП............................................................ 185 Подсветка при выполнении программы...........................................185 Использование точек останова выполнения программы................... 186 Временное прекращение выполнения программы...........................188 Инструмент установки отладочных индикаторов (пробник).............. 189 Упражнение 5-1: Отладка программы...........................................191 Создание подприборов............................................................... 194 Создание виртуального подприбора на основе ВП..........................195 Создание ВПП из блок-диаграммы..................................................203 Окно помощи ВПП: рекомендуемые, обязательные и необязательные входные данные..................................................204 Обновить связь с ВП......................................................................205 Документирование работы............................................................206 Создание описаний и подсказок для отдельных объектов.................206 Документирование ВП с помощью опции Свойства ВП.....................208 Немного о распечатке виртуальных приборов..............................209 Упражнение 5-2: Создание ВПП - практикуясь, вы совершенствуетесь................................................................... 210 Итоги..............................................................................................213 Дополнительные упражнения......................................................... 214 Упражнение 5-3: Определите среднее значение............................. 214 Упражнение 5-4: Деление на нуль (кто говорит, что вы не можете?)..................................................................................214 ▼ 6 Управление выполнением программы с помощью структур 215 Два типа структур циклов..............................................................216 Цикл с фиксированным числом итераций.......................................216 Цикл по условию..........................................................................217 Размещение объектов внутри структур...........................................218 Упражнение 6-1: Счет с помощью циклов........................................221 Сдвиговые регистры.......................................................................225 Упражнение 6-2: Использование сдвигового регистра.....................227 Зачем нужны сдвиговые регистры...................................................229 Инициализация сдвиговых регистров.............................................. 230 Узел обратной связи...................................................................... 231 Содержание 9 Туннель в сдвиговый регистр и наоборот.........................................233 Структуры варианта........................................................................234 Подключение терминалов ввода/вывода......................................... 236 Добавление вариантов..................................................................237 Автоматическое соединение туннелей в структуре варианта.............237 Диалоговые окна............................................................................ 238 Упражнение 6-3: Извлечение квадратного корня..............................242 Функция выбора............................................................................245 Структуры последовательности: компактная и открытая................. 245 Компактная последовательность и локальные терминалы - зло? 246 Тактирование..................................................................................247 Упражнение 6-4: Числа совпадения................................................250 Экспресс-функции тактирования.................................................... 251 Тактированные структуры...............................................................252 Тактированный цикл.......................................................................253 Тактированная последовательность.................................................254 ВП синхронизации.........................................................................254 Узел Формула................................................................................. 255 Упражнение 6-5: Упражнение с узлом Формула...............................257 Узел Выражение..............................................................................259 Цикл по условию и структура варианта...........................................260 Основной цикл..............................................................................260 Несколько вариантов в одном цикле...............................................261 Увеличиваем производительность: Ожидание действий....................264 Итоги..............................................................................................264 Дополнительные упражнения.........................................................266 Упражнение 6-6: Уравнения...........................................................266 Упражнение 6-7: Калькулятор.........................................................266 Упражнение 6-8: Комбинация цикла с фиксированным числом итераций с циклом по условию.......................................................267 Упражнение 6-9: Диалоговое окно.................................................267 ▼ 7 Составные данные LabVIEW: массивы и кластеры.........................268 Что такое массивы..........................................................................269 Создание элементов управления и отображения массивов........... 269 Полосы прокрутки массива............................................................272 10 LabVIEW для всех Использование автоматического индексирования.........................272 Использование автоиндексирования для установки количества повторений циклов с фиксированным числом итераций...................274 Двумерные массивы.......................................................................275 Создание двумерных массивов......................................................275 Упражнение 7-1: Создание массивов с помощью автоиндексирования.......................................................................276 Функции работы с массивами.........................................................278 Упражнение 7-2: Работа с массивами.............................................282 Полиморфизм................................................................................ 284 Упражнение 7-3: Полиморфизм.....................................................286 Составная арифметика....................................................................288 Несколько слов о логической арифметике.......................................290 Все о кластерах...............................................................................291 Создание элементов управления и отображения для кластеров 292 Упорядочивание элементов кластера..............................................293 Использование кластеров для подачи и получения данных в/из ВПП 295 Замена элемента кластера..............................................................296 Разделение кластеров................................................................... 296 Упражнение 7-4: Работа с кластером.............................................. 297 Объединение и разделение по имени.............................................299 Кластер-пиктограмма.................................................................... 301 Упражнение 7-5: Еще раз о кластерах............................................. 302 Взаимозаменяемые массивы и кластеры........................................ 303 Сравнение кластеров и массивов................................................... 305 Кластер и обработка ошибок.........................................................306 Тип данных: кластер ошибок..........................................................307 Распространение ошибки: поток данных........................................ 307 Сообщение об ошибке и его анализ в LabVIEW................................308 Обработка ошибок в ВПП..............................................................311 Сообщение об ошибке в ВПП.........................................................311 Последний шаг: сообщение пользователю......................................312 Дополнительные советы по обработке ошибок............................... 313 Итоги..............................................................................................315 Дополнительные упражнения......................................................... 316 Упражнение 7-6: Изменение порядка............................................. 316 Упражнение 7-7: Извлечение подмассива........................................317 Упражнение 7-8: Игра в кости.........................................................317