Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Цикл For (с фиксированным числом итераций)



 
 

Цикл For (с фиксированным числом итераций) выполняет повторяющиеся операции над потоком данных определенное количество раз. Следующая иллюстрация ( Рис. 61 ) демонстрирует (1) цикл For в среде LabVIEW, (2) эквивалентную блок-схему работы цикла For, (3) пример текстового аналога кода работы цикла For.

1. LabVIEW 2. Блок-схема 3. Текстовый аналог кода

Рис.61 Цикл For.

Цикл For, расположен в палитре Функций в разделе Functions»Programming»Structures. Значение, присвоенное терминалу максимального числа итераций N цикла, показанного слева, определяет максимальное количество повторений операций над потоком данных.

Терминал счетчика итераций, показанный слева, содержит значение количества выполненных итераций. Начальное значение счетчика итераций всегда равно 0.

Цикл For отличается от цикла While тем, что завершает работу, выполнив заданное максимальное число итераций N. Цикл While завершает работу при выполнении заданного условия выхода из цикла.

 
 

Цикл For, показанный на Рис. 62 ниже, генерирует случайное число каждую секунду 60 раз и отображает их в элементе отображения данных.

Рис.62 Цикл For.

Функции ожидания.

Функция Wait Until Next ms Multiple, показанная слева, обеспечивает интервал между итерациями, равный интервалу времени, необходимому для

того, чтобы миллисекундный счетчик достиг значения, кратного введенному пользователем. Эта функция используется для синхронизации действий. Функцию Wait Until Next ms Multiple вызывают внутри цикла для контроля скорости выполнения цикла.

Функция Wait Until Next ms Multiple обеспечивает интервал между итерациями, равный интервалу времени, необходимому внутреннему таймеру компьютера для достижения указанного кратного значения.

Существует вероятность, что первый период цикла будет коротким, как показано ниже ( Рис. 63 ).

 
 

Рис.63 Функция Wait Until Next ms Multiple с коротким интервалом.

Функция Wait(ms), показанная выше, добавляет время ожидания ко времени выполнения программы, как показано ниже ( Рис. 64 ). Это может вызвать затруднения, если время выполнения программы является переменным.

Рис.64 Функция Wait(ms) добавляет время ожидания ко времени

выполнения программы.

Примечание. ВП Express Time Delay, находящийся в палитре Functions»Express»Execution Control, подобен функции Wait(ms). Однако он обладает встроенным кластером ошибок. Подробнее о кластерах ошибок можно прочитать в Лекции 6 " Кластеры".

Функции ожидания находятся в палитре Functions»Programming»Timing.

Преобразование типов данных.

LabVIEW может оперировать с такими типами данных, как целочисленный тип (integer): byte, word, long, число с плавающей запятой: single, double, extended precision, комплексное число: single, double, extended precision. Когда в поле ввода данных функции поступают операнды разных типов, то значение на выходе функции принимает формат данных более широкого диапазона. При этом LabVIEW автоматически осуществляет преобразование типов и в месте соединения проводника с терминалом появляется изображение серой точки.

Например, терминал максимального числа итераций N цикла For имеет целочисленный тип двойной точности (long integer). На него поступают данные в формате числа двойной точности с плавающей запятой. На терминале числа итераций появляется серая точка, как показано ниже на Рис. 65.

Рис.65 Терминал максимального числа итераций N цикла For.

Если в поля ввода данных функции, работающей с данными одного типа, поступают данные двух разных типов, LabVIEW приводит тип данных одного из терминалов к типу данных другого терминала. LabVIEW выбирает тип данных, занимающий большее количество бит. Если типы эквивалентны по количеству занимаемых бит, LabVIEW предпочитает беззнаковый тип данных.

В следующем примере данные типов I32 (signed 32 bit integer / 32-битный целочисленный со знаком) и DBL (double 64 bit floating-point / 64-битное с плавающей запятой двойной точности) поступают в поля ввода функции деления ( Рис. 66 ). LabVIEW на выходе функции формирует данные в представлении DBL, поскольку тип данных I32 занимает меньшее количество бит.

Рис.66

 
 

Данные типов I32 и DBL.

Для изменения типа представления данных на объектах блок-диаграммы необходимо щелкнуть по ним правой кнопкой мыши и из контекстного меню выбрать пункт Representation.

Когда LabVIEW проводит преобразование данных из формата числа двойной точности с плавающей запятой в целочисленный формат, то значение x, 5 округляется до ближайшего целого четного. Например, LabVIEW округляет 2, 5 до 2, а 3, 5 до 4.

Подробнее о типах данных можно прочитать в Уроке 2, " Создание ВП" или в LabVIEW Help.


Упражнение 4-2. ВП Измерение температуры во времени.


Поделиться:



Популярное:

Последнее изменение этой страницы: 2017-03-10; Просмотров: 1618; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.012 с.)
Главная | Случайная страница | Обратная связь