- •Оглавление
- •Рекомендации слушателю курса
- •B. Что нужно для начала
- •C. Установка программного обеспечения курса
- •Восстановление или удаление материалов курса
- •D. Цели курса
- •Урок 1 Решение задач
- •A. Методика разработки ПО
- •Определение входных данных
- •Определение выходных данных
- •Определение дополнительных требований
- •Разработка алгоритма решения задачи
- •Разработка блок-схемы
- •Разработка диаграммы переходов
- •Цель
- •Сценарий
- •Проектирование
- •Реализация
- •Тестирование
- •Сопровождение
- •Цель
- •Сценарий
- •Проектирование
- •Входные данные
- •Выходные данные
- •Диаграмма переходов
- •G. Курсовой проект
- •Вопросы для самопроверки
- •Ответы
- •Урок 2 Введение в LabVIEW
- •A. Виртуальные приборы
- •B. Составные части ВП
- •Лицевая панель
- •Блок-диаграмма
- •Иконка и соединительная панель
- •C. Начало разработки ВП
- •Создание/открытие ВП или проекта
- •Создание «с чистого листа»
- •Создание ВП или проекта по шаблону
- •Открытие существующего ВП
- •Сохранение ВП
- •D. Project Explorer
- •Окно Project Explorer
- •Инструментальные панели проекта
- •Создание проекта LabVIEW
- •Добавление существующих файлов к проекту
- •Удаление элементов проекта
- •Организация элементов в проекте
- •Просмотр файлов проекта
- •Сохранение проекта
- •E. Лицевая панель
- •Элементы управления и индикаторы
- •Числовые элементы управления и индикаторы
- •Логические элементы управления и индикаторы
- •Строковые элементы управления и индикаторы
- •Палитра элементов управления
- •Контекстные меню
- •Диалоги свойств
- •Инструментальная панель лицевой панели
- •Терминалы
- •Узлы блок-диаграммы
- •Функции
- •ПодВП
- •Расширяемые узлы в сравнении с иконками
- •Проводники
- •Типы данных
- •Автоматическое соединение объектов
- •Ручное соединение объектов
- •Палитра функций
- •Инструментальная панель блок-диаграммы
- •Цель
- •Описание
- •G. Поиск элементов управления, ВП и функций
- •Цель
- •Описание
- •H. Выбор инструмента
- •Инструмент УПРАВЛЕНИЕ
- •Инструмент ПЕРЕМЕЩЕНИЕ
- •Инструмент ВВОД ТЕКСТА
- •Инструмент СОЕДИНЕНИЕ
- •Другие инструменты палитры Tools
- •Цель
- •Описание
- •I. Поток данных
- •Цель
- •Описание
- •J. Создание простого ВП
- •Сбор данных
- •DAQ Assistant
- •Instrument I/O Assistant
- •Simulate Signal
- •Read From Measurement File
- •Анализ данных
- •Amplitude and Level Measurements
- •Statistics
- •Spectral Measurements
- •Tone Measurements
- •Filter
- •Представление данных
- •Write To Measurement File
- •Build Text
- •Запуск ВП
- •Индикация ошибок кнопкой Run
- •Цель
- •Сценарий
- •Проектирование
- •Блок-схема
- •Вопросы по архитектуре программы
- •Ответы на вопросы по архитектуре программы
- •Реализация
- •При наличии аппаратуры
- •Без аппаратуры
- •При наличии аппаратуры
- •Без аппаратуры
- •Тестирование
- •K. Справочные средства LabVIEW
- •Окно контекстной справки
- •Справочная система LabVIEW
- •Система поиска примеров
- •Цель
- •Описание
- •NI Example Finder
- •Окно Context Help
- •Справочная система LabVIEW
- •Вопросы для самопроверки
- •Ответы
- •Урок 3 Создание ВП
- •A. Проектирование лицевой панели
- •Проектирование элементов управления и индикации
- •Метки и подписи
- •Настройка элементов управления и индикации
- •Использование цвета
- •Размещение и выравнивание
- •Текст и шрифты
- •Инструменты и подсказки в пользовательском интерфейсе
- •Системные элементы управления
- •Многостраничный элемент управления
- •Декоративные элементы
- •Меню
- •Автоматическое масштабирование объектов лицевой панели
- •Цель
- •Сценарий
- •Проектирование
- •Входные и выходные данные пользовательского интерфейса
- •Внешние входные и выходные данные
- •Диаграмма переходов
- •Реализация
- •B. Терминалы блок-диаграммы
- •Элементы управления, индикаторы и константы
- •Типы данных LabVIEW
- •Числовой тип данных
- •Числа с плавающей точкой
- •Целые числа
- •Комплексные числа
- •Логический тип данных
- •Строковый тип данных
- •Перечислимый тип данных
- •Динамический тип данных
- •C. Документирование кода
- •Всплывающие подсказки
- •Свойства ВП
- •Именование элементов управления и индикаторов
- •Графическое программирование
- •Цель
- •Сценарий
- •Проектирование
- •Входные и выходные данные
- •Блок-схема
- •Реализация
- •Тестирование
- •D. Цикл While
- •Туннели
- •Цель
- •Сценарий
- •Проектирование
- •Блок-схема
- •Реализация
- •Тестирование
- •E. Цикл For
- •Преобразование числовых типов данных
- •Цель
- •Описание
- •Сценарий 1
- •Сценарий 2
- •Сценарий 3
- •Сценарий 4
- •Ответы
- •Сценарий 1
- •Сценарий 2
- •Сценарий 3
- •Сценарий 4
- •F. Синхронизация ВП
- •Функции ожидания
- •Истекшее время
- •G. Передача данных между итерациями
- •Инициализация сдвиговых регистров
- •Стек сдвиговых регистров
- •Цель
- •Сценарий
- •Проектирование
- •Реализация
- •При наличии аппаратуры
- •Без аппаратуры
- •Тестирование
- •H. Графическое представление данных
- •Waveform Chart
- •Соединения на диаграммах
- •Waveform Graph
- •Waveform Graph с одной кривой
- •Waveform Graph со многими кривыми
- •XY Graph с одной кривой
- •XY Graph со многими кривыми
- •Цель
- •Сценарий
- •Проектирование
- •Реализация
- •Тестирование
- •I. Структура выбора Case
- •Выбор варианта
- •Входные и выходные туннели
- •Примеры
- •Логическая структура Case
- •Целочисленная структура Case
- •Строковая структура Case
- •Перечислимая структура Case
- •Цель
- •Сценарий
- •Проектирование
- •Реализация
- •Тестирование
- •J. Узел формул
- •Цель
- •Сценарий
- •Проектирование
- •Входные и выходные данные
- •Блок-схема
- •Реализация
- •Тестирование
- •Цель
- •Сценарий
- •Проектирование
- •Входные и выходные данные
- •Блок-схема
- •Реализация
- •Цель
- •Сценарий
- •Проектирование
- •Входные и выходные данные
- •Блок-схема
- •Архитектура ВП
- •Реализация
- •Тестирование
- •Вопросы для самопроверки
- •Ответы
- •Урок 4 Объединение данных
- •Ограничения
- •Создание массивов из элементов управления и индикаторов
- •Двумерные массивы
- •Инициализация массивов
- •Создание константного массива
- •Автоматическая индексация массивов
- •Ввод массивов в цикл
- •Вывод массивов из цикла
- •Создание двумерных массивов
- •Цель
- •Описание
- •Часть 1: индексация, модификация и отображение массива.
- •Часть 2: упрощенная индексация, модификация и отображение массива.
- •Часть 3: создание подмножеств массива
- •Часть 1: реализация
- •Часть 2: реализация
- •Часть 3: реализация
- •B. Кластеры
- •Создание кластеров из элементов управления и индикаторов
- •Создание кластерных констант
- •Порядок элементов в кластере
- •Функции для работы с кластерами
- •Сборка кластеров
- •Модификация кластера
- •Разборка кластеров
- •Кластеры ошибок
- •Цель
- •Описание
- •Цель
- •Сценарий
- •Проектирование
- •Реализация
- •C. Определения типов
- •Заказные элементы управления
- •Режим редактирования
- •Режим настройки
- •Сохранение элементов управления
- •Определение типа
- •Цель
- •Сценарий
- •Проектирование
- •Реализация
- •Вопросы для самопроверки
- •Ответы на вопросы
- •Урок 5 Отладка ВП
- •Поиск причин неработоспособности ВП
- •Типичные причины неработоспособности ВП
- •B. Методы отладки
- •Подсветка выполнения
- •Пошаговое выполнение
- •Инструмент ПРОБНИК
- •Типы пробников
- •Универсальный пробник
- •Просмотр данных с помощью индикаторов лицевой панели
- •Специализированные пробники
- •Заказные пробники
- •Контрольные точки
- •Состояние ожидания
- •Определение текущего экземпляра подВП
- •C. Неопределенные или непредвиденные данные
- •D. Обработка ошибок
- •Автоматическая обработка ошибок
- •Ручная обработка ошибок
- •Кластеры ошибок
- •Объяснение ошибок
- •Обработка ошибок при помощи структуры Case
- •Обработка ошибок при помощи цикла While
- •Цель
- •Описание
- •Вопросы для самопроверки
- •Ответы
- •Урок 6 Разработка модульных приложений
- •B. Иконка и соединительная панель
- •Создание иконки
- •Настройка соединительной панели
- •Выбор и модификация шаблонов терминалов
- •Привязка терминалов к элементам управления и индикаторам
- •C. Использование подВП
- •Открытие и редактирование подВП
- •Обязательные, рекомендуемые и необязательные входы и выходы
- •Создание подВП из кода существующего ВП
- •Цель
- •Сценарий
- •Проектирование
- •Реализация
- •Тестирование
- •Вопросы для самопроверки
- •Ответы
- •Урок 7 Основы измерений
- •Ввод сигналов
- •Источники сигналов
- •Заземленный источник сигнала
- •Плавающий источник сигнала
- •Формирование сигнала
- •Усиление
- •Линеаризация
- •Возбуждение датчика
- •Изоляция
- •Измерительные системы
- •Дифференциальные измерительные системы
- •Несимметричные заземленные и незаземленные системы
- •Источники сигнала и измерительные системы
- •C. Повышение качества измерений
- •Достижение предельной чувствительности
- •Разрешение
- •Входной диапазон
- •Усиление
- •Шаг квантования
- •Повышение точности восстановления формы
- •Уменьшение шума
- •Цель
- •Описание
- •Вопросы для самопроверки
- •Ответы
- •Урок 8 Сбор данных
- •Блок терминалов и кабель
- •Панель DAQ Signal Accessory
- •Устройство DAQ
- •B. Программная архитектура
- •Конфигурирование аппаратуры DAQ
- •Windows
- •Measurement & Automation Explorer
- •Шкалы
- •C. Имитация устройства DAQ
- •Создание имитированных устройств NI-DAQmx
- •Удаление имитированных устройств NI-DAQmx
- •Цель
- •Описание
- •Часть А. Создание имитированного устройства
- •Часть B. Изучение конфигурации устройства DAQ
- •Часть C. Тестирование компонентов устройства DAQ
- •Часть D. Создание заказной шкалы
- •D. Аналоговый ввод
- •Аналого-цифровое преобразование
- •Управление задачами
- •Однократная выборка
- •Многократная выборка
- •Непрерывная выборка
- •Синхронизация задач
- •Цель
- •Описание
- •Проектирование
- •Входы и выходы пользовательского интерфейса
- •Внешние входы и выходы
- •Реализация
- •Тестирование
- •Аппаратура
- •Без аппаратуры
- •E. Аналоговый вывод
- •Управление задачами
- •Однократное обновление
- •Генерация N точек
- •Непрерывная генерация
- •Синхронизация задач
- •Цифро-аналоговое преобразование
- •F. Счетчики
- •Цель
- •Сценарий
- •Проектирование
- •Датчик положения
- •Входы и выходы пользовательского интерфейса
- •Внешние входы
- •Реализация
- •Тестирование
- •G. Цифровой ввод-вывод
- •Цель
- •Сценарий
- •Проектирование
- •Цифровой ввод-вывод
- •Блок-схема
- •Реализация
- •Тестирование
- •Вопросы для самопроверки
- •Вопросы для самопроверки
- •Урок 9 Управление приборами
- •Завершение передачи данных
- •Пропускная способность
- •C. Последовательная связь
- •Скорость передачи данных
- •Стандарты последовательных портов
- •D. Другие интерфейсы
- •E. Программная архитектура
- •MAX (Windows, GPIB)
- •Цель
- •Описание
- •F. Instrument I/O Assistant
- •Цель
- •Часть A: последовательный интерфейс
- •Часть B: GPIB
- •Терминология VISA
- •VISA и последовательный порт
- •Цель
- •Описание
- •Тест A: последовательный порт
- •Тест B: GPIB
- •H. Драйверы приборов
- •Что такое драйвер прибора?
- •Где найти драйверы приборов?
- •Пример работы с драйвером прибора
- •Как работает драйвер прибора?
- •Цель
- •Описание
- •Установка драйвера прибора
- •Знакомство с драйвером прибора
- •Работа с примерами программ
- •Вопросы для самопроверки
- •Ответы
- •Урок 10 Анализ и сохранение результатов измерений
- •Выбор правильного метода анализа
- •Оперативный и отложенный анализ
- •Программный и интерактивный анализ
- •Категории анализа
- •Цель
- •Описание
- •Сценарий 1
- •Сценарий 2
- •Сценарий 3
- •Сценарий 4
- •Сценарий 1
- •Сценарий 2
- •Сценарий 3
- •Сценарий 4
- •B. Чтение и запись данных в файл
- •Форматы файлов
- •Каталог LabVIEW Data
- •ВП файлового ввода-вывода
- •Потоковый вывод на диск
- •Высокоуровневый файловый ввод-вывод
- •Цель
- •Сценарий
- •Проектирование
- •Входы и выходы
- •Блок-схема
- •Реализация
- •Тестирование
- •Вопросы для самопроверки
- •Ответы
- •Урок 11 Стандартные методы и образцы проектирования
- •Инфраструктура конечного автомата
- •Управление конечным автоматом
- •Элемент управления перечислимого типа
- •Переход по умолчанию
- •Переход между двумя состояниями
- •Переход между двумя и более состояниями
- •Цель
- •Сценарий
- •Проектирование
- •Входы и выходы пользовательского интерфейса
- •Внешние входы и выходы
- •Реализация
- •Состояние сбора данных
- •Аппаратура
- •Без аппаратуры
- •Состояние анализа
- •Состояние сохранения
- •Состояние проверки времени
- •Завершение работы конечного автомата
- •Тестирование
- •D. Параллелизм
- •Заключение
- •Приложение A Дополнительная информация и ресурсы
- •Публикации о LabVIEW
- •Бюллетень LabVIEW Technical Resource (LTR)
- •Книги по LabVIEW
- •Информационная рассылка info-labview
Урок 10 Анализ и сохранение результатов измерений
A.Анализ и обработки числовых данных
Решение задач, которые включают в себя взаимодействие с физическими процессами, обычно начинается с ввода данных в программу. Чтобы извлекать из данных полезную информацию, управлять процессом и получать результаты, данные необходимо обрабатывать и анализировать.
LabVIEW, будучи ориентирован главным образом на прикладные разработки, содержит сотни функций для анализа. Эти функции можно встраивать непосредственно в приложения, чтобы проводить «интеллектуальные» измерения и быстрее получать результаты.
Выбор правильного метода анализа
Функции анализа можно встраивать в приложения различными способами. Для выбора оптимального способа существуют определенные критерии, которые следует принимать во внимание.
Оперативный и отложенный анализ
Оперативный (встроенный, inline) анализ выполняется в том же приложении, которое выполняет сбор данных. Как правило, такой подход применяется в управляющих приложениях, где решения должны приниматься в ходе выполнения и результаты анализа используются для воздействия на процесс (через изменение параметров или выполнение определенных действий). При оперативном анализе важно учитывать объем собранных данных и сложность процедур обработки. Необходимо найти правильный баланс, поскольку объем вычислений может стать настолько большим, что это отрицательно повлияет на быстродействие.
Другой пример, когда требуется оперативный анализ — это приложения, в которых параметры измерительной системы должны подстраиваться под измеряемый сигнал. Пусть, например, нужно регистрировать медленно меняющийся сигнал, в котором время от времени присутствуют высокочастотные возмущения. Чтобы сократить объем записываемых данных, приложение должно повышать частоту выборки при возникновении быстрого процесса и снижать частоту по его завершении. Оперативно анализируя определенные параметры сигнала, приложение сможет адаптироваться к меняющейся обстановке. Это лишь один пример; существуют тысячи приложений, где требуется та или иная степень «интеллектуальности» (способности принимать решения в зависимости от различных условий) и адаптируемости. Все это можно реализовать только путем встраивания алгоритмов анализа непосредственно в программу.
Решения, основанные на результатах измерений, не всегда принимаются в автоматическом режиме. Очень часто операторам приходится лично контролировать процесс и определять, не выходят ли его параметры за допустимые пределы. Нередко бывает так, что пользователи вручную сохраняют данные, затем извлекают их из файла или базы данных и анализируют в другом приложении, чтобы принять решение о модификации процесса. Однако во
©National Instruments Corporation |
10-2 |
Учебный курс LabVIEW Основы I |
Урок 10 Анализ и сохранение результатов измерений
многих случаях изменения должны выполняться достаточно быстро, а это означает, что приложение, выполняющее сбор данных, должно их обработать и представить пользователю в формате, наиболее удобном для восприятия.
LabVIEW содержит процедуры для поточечного (point-by-point) анализа, когда данные обрабатываются по мере их поступления. Эти процедуры разработаны специально для оперативного анализа в приложениях реального времени. Поточечный анализ играет важную роль при управлении процессами в условиях быстрого детерминированного поступления данных. При сборе данных в режиме реального времени поточечный анализ становится необходимостью, когда частота выборки и частота повторения управляющего цикла возрастают на порядки. Поточечный подход упрощает проектирование, реализацию и тестирование, поскольку работа приложения хорошо согласуется с естественным ходом процесса, которым это приложение управляет. Поточечный анализ прямолинеен и стабилен, поскольку он тесно связан с процессом сбора данных.
Отложенный (offline) анализ следует использовать в тех случаях, когда для принятия решений не требуется получать результаты в реальном времени. Приложения для отложенного анализа требуют лишь достаточных вычислительных ресурсов. Основное назначение таких приложений — выявлять причинно-следственные связи путем корреляции множественных наборов данных. Эти приложения обычно импортируют данные из двоичных или ASCII-файлов, или же из коммерческих баз данных, таких как Oracle, Access и других, поддерживающих SQL/ODBC. После импорта данных в LabVIEW пользователи применяют к ним те или иные процедуры анализа (количество доступных процедур исчисляется сотнями) и приводят результаты к определенному формату, требуемому для отчета.
Программный и интерактивный анализ
Недостаточно просто собрать данные и обработать их с целью оперативной визуализации. Пользователи обычно сохраняют сотни и тысячи мегабайт данных на своих жестких дисках и в базах данных. После какого-то количества прогонов приложения (от одного до сотен) пользователи начинают извлекать информацию с целью принятия решений, сравнения результатов и внесения изменений в процесс, пока не будут достигнуты желаемые результаты. Количество собранных данных легко может стать неуправляемым. Фактически, при наличии быстрой платы сбора данных и достаточного числа каналов можно за миллисекунды накопить тысячи значений. Извлечь из них полезную информацию
— менее тривиальная задача. От инженеров и ученых обычно ожидают представления отчетов, графиков и, в конечном счете, подтверждения своих оценок и выводов эмпирическими данными.
Процесс анализа измерений можно упростить путем создания интерактивных приложений с диалогами и интерфейсами, дающими возможность пользователям выполнять те или иные операции над заданными наборами данных. Чтобы такой подход был эффективен,
©National Instruments Corporation |
10-3 |
Учебный курс LabVIEW Основы I |
