|
Массивы. Функции работы с массивами
Основы программирования в LabView
(Массивы. Функции работы с массивами.)
Массив (Array) - это набор данных одного и того же типа. Массивы могут быть разной размерности. Одномерный - просто набор чисел, двумерный - таблица с этими числами и т.п. На каждую размерность в массиве может приходиться максимум 231-1 элементов.
Можно создать массив из данных следующих типов: numeric, Boolean, path, string, waveform, и cluster. Нельзя создать массив из массивов, однако можно сделать cluster (о кластерах будет подробно рассказано в следующих разделах).
Элементы в массиве упорядочены, каждый из них имеет номер (index). Номера начинаются с нуля, как и положено.
Создание Array Controls и Indicators
Чтобы создать регулятор или индикатор массива, выберите "Array" в палитре Controls>>All Controls>>Array & Cluster и поместите его на лицевую панель. Затем перетащите внутрь рамки массива какой-нибудь уже имеющийся регулятор или индикатор нужного вам типа данных. Все, готово.
Примерно вот так выглядит массив (array) на лицевой панели. 1 - это индекс массива, 2 - элементы этого массива.
Чтобы изменить размерность массива, щелкните на индексе и выберите в контекстном меню "Add Dimension". Как уже говорилось, двумерный массив - это таблица. Чтобы массив был более наглядным, можно растянуть область элементов до нужного вам размера:
Помните, что размерность массива и количество элементов в нем не определяются видом массива на лицевой панели (например, у того же двумерного массива можно сделать зону элементов состоящей только из одно видимого).
Так же, можно добавить на блок-диаграмму массив-константу (это может быть полезно, например, для передачи данных в SubVI). Для этого нужно в палитре unctions>>All Functions>>Array выбрать "array constant" и поместить ее на поле диаграммы, а затем перетащить внутрь рамки константу нужного типа.
Функции для работы с массивами
Рассмотрим основные функции, которые используются при работе с массивами в LabVIEW. Все эти функции находятся в палитре Functions>>All Functions>>Array.
Array Size - - возвращает число элементов в массиве. Если массив многомерный, то результатом выполнения функции будет массив, число элементов в котором равно размерности. Например, результатом применения этой функции к следующему одномерному массиву [1,6,5,3,4] будет число 5.
Initialize Array - - создает массив нужной размерности с нужным числом элементов в каждой размерности и заполняет его значениями, определяемыми терминалом element. Чтобы добавить измерение, нужно "растянуть" кубик функции.
Array Subset - - возвращает часть массива (подмассив элементов), начиная с некого (определяется терминалом index) и длиной, определяемой терминалом length. Например, если применить эту функцию к массиву [1,6,5,3,4] с аргументами index=1 и length=2, результатом будет массив [6,5]
Build Array - - с помощью этой функции можно добавить элементы в массив, или построить из нескольких массивов массив большей размерности. Кубик можно растягивать. Для того, чтобы при соединении двух массивов получить массив той же размерности, нужно щелкнуть правой кнопкой мыши на функции и в контекстном меню выбрать "Concatenate Inputs".
Index Array - - возвращает элемент или подмассив массива с указанным номером (index). Пример: для нашего массива [1,6,5,3,4] эта функция с аргументом 2 вернет число 5.
Полиморфизм
Полиморфизм, наследование и инкапсуляция. Что-то из ООП:)
Функции, которые находятся в палитрах Functions>>Express Numeric и Functions>>All Functions>>Numeric - полиморфные. Это означает, что на вход этим функциям можно подавать данные разных типов, в том числе не только скалярные - но и массивы. Например, функцию add можно использовать для сложения массива и скаляра, или двух массивов. Пример: при сложении массива [1,3,2] и числа 2 получится массив [3,5,4]. При сложении двух массивов [1,3,2] и [3,5,4] получится массив [4,8,6]. Если в двух массивах разное число элементов, то в результате сложения получится массив, число элементов в котором равно числу элементов в самом маленьком из двух массивов. Например, при сложение массива [3,1,2,3] с массивом [1,2,1] получим в результате [4,3,3].
Оригинальный источник материала:
www.labview.webhost.ru
|
|
|