- •Занятие 1. Знакомство с labview
- •1.1. Виртуальные приборы
- •1.2. Запуск виртуального прибора
- •1.3. Лицевая панель
- •1.4. Блок-диаграмма
- •1.5. Поточное программирование
- •1.6. Структуры программирования
- •1.7. Модульность и иерархия
- •Пиктограмма
- •Занятие 2. Моделирование экспериментальной установки. Цифровой термометр
- •2.1. Создание VI
- •2.1.1. Создание лицевой панели (Front Panel)
- •2.1.2. Создание блок-диаграммы
- •2.1.3. Манипулирование объектами
- •2.1.4. Сбор значений температуры
- •Цифровая
- •Константа
- •2.1.5. Соединение объектов
- •Инструмент Соединение
- •2.2. Запуск VI
- •2.3. Сохранение VI
- •2.4. Создание пиктограммы и коннектора
- •2.4.1. Создание пиктограммы
- •2.4.2. Создание коннектора
- •Занятие 3. Виртуальный прибор регулятора температуры
- •3.1. Создание панели
- •Инструмент Оператор
- •3.2. Создание диаграммы
- •3.2.1. Использование цикла While Loop
- •3.2.2. Управление скоростью цикла While Loop
- •3.3. Запуск VI
- •3.4. Модификация виртуального прибора
- •3.4.1. Изменение лицевой панели
- •3.4.2. Изменение блок-диаграммы
- •3.5. Работа с VI
1.5. Поточное программирование
Функциональные пиктограммы и структуры, например цикл For (For Loop), часто рассматриваются как узлы (nodes). Каждый узел начинает действовать только тогда, когда данные доступны на всех его входах. Когда узел закончит работу, данные появятся на его выходах. Такой управляемый данными метод выполнения программ называется поточным (data flow).
Поточное программирование освобождает нас от линейной архитектуры текстовых языков. Так как порядок выполнения программы в LabVIEW устанавливается течением данных между узлами, а не последовательностью строк текста, можно создавать диаграммы, которые имеют несколько параллельных потоков прохождения данных и одновременных операций. LabVIEW обеспечивает прохождение нескольких потоков данных и выполнение независимых блоков одновременно.
1.6. Структуры программирования
В то время как потоки данных предпочтительны для параллельных операций, можно задавать и специальный порядок выполнения. LabVIEW предлагает такие программные структуры, как итерационный цикл, последовательный цикл и оператор выбора (case) для повторяющихся, последовательных или разветвляющихся операций. Эти структуры представлены как графические рамки, окаймляющие управляемые пиктограммы.
Н
апример,
структура цикла For
выполняет пиктограммы, заключенные в
рамку, установленное количество раз,
соответствующее значению, которое
подается на терминал счета (count
terminal).
Терминал итераций (iteration
terminal)
показывает текущую итерацию. Он получает
значения от 0 до N
–1.
В этом примере структура цикла For выполняет свою поддиаграмму столько раз, сколько задается органом управления Number of Steps на лицевой панели. Во время каждой итерации узел Formula Node (Узел Формула) в цикле For вычисляет увеличенную частоту, и генератор функций Stimulate UUT выдает тестовый сигнал заданной амплитуды и увеличенной частоты. Затем вольтметр измеряет ответ тестируемого устройства.
По завершении последней итерации VI преобразует массив данных коэффициентов усиления ТУ в децибелы, вычисляя величину 20 log(y) для каждого значения коэффициента y. Затем VI группирует два выходных массива (частота и соответствующий коэффициент усиления) и посылает результат на терминал дисплея.
С
труктура
Sequence
(Последовательность) выполняет несколько
вложенных в ее границы поддиаграмм в
соответствии с присвоенными им номерами.
В обычном языке программирования
последовательность строк диктует
порядок выполнения программы. В LabVIEW
объекты (узлы) могут выполняться
параллельно, если между ними нет
соединений. Структура Sequence
используется для упорядочения
последовательности выполнения узлов,
которые должны выполняться друг за
другом, но не имеют общих проводников
данных.
Дважды щелкните по узлу Stimulate UUT, чтобы открыть генератор функций, и перейдите на его блок-диаграмму. Нажимайте на стрелку с любой стороны от числа в верхней части структуры Sequence для показа различных поддиаграмм. В этом примере последовательно выполняются пять кадров структуры Sequence.
1.7. Модульность и иерархия
LabVIEW по своей структуре является модульной средой, т. е. любой VI может использоваться в блок-диаграмме другого виртуального прибора как subVI. Разбив свою программную систему на subVI, можно разработать независимо и интерактивно протестировать эти subVI и тут же использовать их как узлы для построения более сложного уровня VI. Использование модульной иерархии позволяет эффективно разрабатывать, модифицировать, заменять и комбинировать виртуальные приборы для удовлетворения изменяющихся требований конкретного приложения.
