- •Занятие 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
3.2.1. Использование цикла While Loop
Если вы сейчас запустите свой VI, он прочитает одно значение температуры и покажет его на графике. Для многократного повторения измерений нужно использовать циклическую процедуру. В LabVIEW существуют две структуры, обеспечивающие циклическое повторение действий: For Loop (Выполнять действие заданное количество раз) и While Loop (Выполнять, пока...). Сейчас воспользуемся циклом While Loop; измерения будут выполняться, пока включен тумблер Power.
W
hile
Loop
представляет собой условную циклическую
структуру: она имеет терминал условия
(conditional
terminal),
к которому вы подводите булевскую
переменную (“истина” или “ложь”), и
переменную итерации, которая хранит
значение текущей итерации. Поддиаграмма
(диаграмма в рамке) выполняется до тех
пор, пока условие истинно. (Это свойство
структуры While
Loop при
желании можно изменить на противоположное.)
Выберите структуру While Loop из палитры Programming >> Structures меню Functions. Когда появится узел While Loop, возможно, он закроет некоторую часть пиктограмм и терминалов на блок-диаграмме. В этом случае передвиньте рамку структуры, используя инструмент Перемещение.
На свободном месте блок-диаграммы раздвиньте рамку узла While Loop так, чтобы она смогла впоследствии вместить пиктограмму термометра и терминал ленточного графика. Для этого поместите инструмент Перемещение на любой угол рамки таким образом, чтобы появились манипуляторы изменения размера. Нажмите левую клавишу мыши и протащите рамку для изменения размера узла While.
Выделите вместе пиктограмму термометра и терминал ленточного графика, нажав на клавишу инструмента Перемещение слева вверху от пиктограммы VI и протащив курсор вправо и вниз. Созданный вами прямоугольник выбора будет содержать внутри себя выбранные объекты, когда вы отпустите клавишу мыши. Переместите выбранные объекты внутрь цикла While Loop. Если вы что-нибудь потеряете при попытке захватить объекты, они освободятся, и вы должны будете выбрать их снова. (Удалить рамку While Loop можно, щелкнув на ней правой кнопкой мыши и выбрав Remove While Loop.)
П
ереместите
терминал переключателя Power
внутрь цикла и соедините его с терминалом
условия, как показано на рис. 3.3. Точечная
линия представляет булевские (Boolean)
данные. Спозиционируйте курсор на
терминале условия и при нажатой правой
кнопке мыши выберите Continue
if
True
(Продолжать
выполнение, пока “Истина”).
Внимание! Удобнее использовать следующий способ создания циклической процедуры. Выберите структуру While Loop. Не нажимая кнопку мыши, переместите курсор с пунктирным изображением рамки левее и выше всех узлов диаграммы. Затем нажмите левую кнопку мыши и расширьте рамку по диагонали вниз и вправо так, чтобы в ней оказались все требуемые узлы. Отпустите кнопку. Используйте этот прием, предварительно удалив рамку While Loop.
3.2.2. Управление скоростью цикла While Loop
В
ыберите
функцию Wait
Until
Next
ms
Multiple
из палитры Programming
>> Timing
и
поместите ее внутрь цикла
While Loop.
Затем выберите цифровую константу из
палитры Numeric
и измените ее значение на “200”. Функция
Wait
Until Next ms Multiple
заставляет цикл выполняться через
заданное время (в мс). Закончите соединение
блок-диаграммы, как на рис.3.3.
