Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

конспект Гугнин

.pdf
Скачиваний:
83
Добавлен:
10.02.2016
Размер:
3.18 Mб
Скачать

Ввиду того, что вычислительные операции в матричной форме имеют исключительно важное значение, рассмотрим их подробнее.

LabVIEW поддерживает все основные матричные операции. По своей сути матрица является двумерным массивом, а значит, к ней применимы все операции по работе с многомерными массивами (подробнее работа с массивами будет рассмотрена позднее).

Рис. 3.5. Лицевую панель и блок-диаграмма ВП для расчета токов в цепи

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

ВП для работы с матрицами находятся на панели Functions Mathematics Linear Algebra. Список наиболее часто используемых функций по работе с матрицами приведен в табл. 3.1.

Таблица 3.1. Часто используемых функции по работе с матрицами

ВП

Название

Описание

 

Solve Linear Equations

Решение системы линейных

 

 

алгебраических уравнений

 

Inverse Matrix VI

Обращение матрицы

 

 

 

 

Determinant VI

Вычисление определителя

 

 

 

 

Eigenvalues and Vectors VI

Вычисление собственных чисел и

 

 

векторов

 

A x B VI

Перемножение матриц

 

 

 

37

 

Dot Product

Скалярное произведение векторов

 

 

 

 

Outer Product VI

Внешнее произведение векторов

 

 

 

Различные матричные функции в LabVIEW имеют похожий набор входных и выходных параметров (рис.3.6). Один из входов, matrix type, позволяет уточнить структуру исходной матрицы. Значения свойства matrix type приведены в табл. 3.2.

Рис. 3.6. Входные и выходные параметра матричной функции

Таблица 3.2. Значения свойства matrix type

Значения matrix type

 

Тип матрицы

0

General

Общего вида

1

Positive definite

Положительно определенная

2

Lower triangular

Нижняя треугольная

3

Upper triangular

Верхняя треугольная

Если вход matrix type оставлен неподключенным, считается, что матрица имеет общий вид. Параметр matrix type относится к перечислимому типу, поэтому если нажать ПКМ на этом входе любого ВП для работы с матрицами и выбрать из контекстного меню пункт Create Constant, значение этого параметра можно будет выбирать по текстовым названиям. Указав тип матрицы, можно существенно повысить скорость выполнения программы.

На подпанели Linear Algebra имеются функции: Dot Product и Outer Product. Dot Product (скалярное произведение) считает первый вектор строкой, а второй столбцом и вычисляет сумму произведений элементов векторов. Outer Product (внешнее произведение) формирует матрицу из произведений взаимноортогональных элементов.

На подпанели Linear Algebra имеется также функция Eigenvalues and Vectors VI, предназначенная для вычисления собственных чисел и собственных векторов матриц. К ее входу помимо самой матрицы подключаются два специальных признака. Первый из них matrix type указывает тип матрицы, причем здесь, в отличие от других матричных операций, предусмотрено всего два типа матриц: общего вида и симметричная. Если на вход подается симметричная матрица, в качестве matrix type следует указать единицу. Второй признак output option определяет, нужно ли вычислять собственные векторы:

38

если к нему подключить 0, будут вычислены только собственные числа, в противном случае и собственные числа и собственные векторы.

На панели Functions Mathematics Linear Algebra имеются и другие функции для работы с матрицами описание которых приведено в [2, с.231 –

245].

Вопросы для самопроверки к четвертой лекции:

1. . Как вписываются расчетные формулы в узлел Формула?

2.Как в узел Формула внести исходные данные и вывести результаты расчета?

3.Как вывести на лицевую панель ВП для решения линейных уравнений объекты ввода данных и индикации результатов расчета?

4.Как вывести на индикаторы значения строк выходного вектора?

5.Какие функций по работе с матрицами наиболее часто используются

вLabVIEW?

6.Какие значения может иметь параметр matrix type?.

Литература для дополнительного обучения: [2, с.231 – 245; 3, с.35 – 40].

Лекция 5 Цель лекции – изучить получить предварительные сведения о виртуаль-

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

4. МОДЕЛИРОВАНИЕ И ИЗМЕРЕНИЕ ПЕРЕМЕННЫХ НАПРЯЖЕНИЙ И ТОКОВ В СРЕДЕ LabVIEW

4.1. Моделирование синусоидальных токов и напряжений

Рассмотрим моделирование напряжения и токов, представляющие собой синусоидальные функции времени:

u = Um ×sin (t), i = Im ×sin(t – j),

(4.1)

а также мгновенной мощности

p = u×i

(4.2)

и активной мощности Р.

Моделирование синусоидальных функций времени среде LabVIEW можно выполнить различными способами: вызвать генератор синусоидальных колебаний, или записать выражение синусоидальной функции в формульном узле Формула, либо вызвать синусоидальную функцию.

39

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

Переменные токи и напряжения характеризуются их действующими значениями. Как известно, действующее значение (среднеквадратичное) связано с амплитудным соотношением U = Um/Ö2. Активная мощность (среднее за период значение мгновенной мощности) определяется выражением Р =

U×I×cos j.

В системе LabVIEW существуют специальные виртуальные приборы для определения действующих и средних за период значений измеряемых величин. Для измерения действующих значений (среднеквадратичных) применяется прибор RMS (Root mean square). Средняя за период величина измеряется прибором Mean.

Показания этих приборов считываются при помощи цифровых индикаторов.

4.2. Моделирование синусоидального напряжения при помощи виртуального генератора синусоидальных колебаний.

1. С этой целью нужно вызвать генератор на панели блок-схем по пути

Functions Programming Waveform Analog Waveform Waveform Generation Sine Waveform.vi. Для задания частоты, амплитуды и начальной фазы напряжения следует создать три цифровых источника напряжения

(Controls Modern Numeric Dial).

2. Наблюдение полученной кривой осуществляется при помощи виртуального осциллографа, который вызывается с лицевой панели (Controls

Modern Graph Waveform Grart).

Цикл по заданию (с фиксированным числом итераций) For Loop выполняет повторяющиеся операции над потоком данных определенное количество раз N.

Цикл For Loop расположен в палитре функций в разделе Functions

Programming Structures For Loop.

Значение, присвоенное терминалу [N] цикла, показанному слева вверху (рис 4.1), определяет максимальное количество повторений операций над потоком данных. Терминал счетчика показанный [I] – снизу слева, содержит значение количества выполненных операций. Начальное значение счетчика итераций всегда равно 0.

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

3. Для подключения генератора следует на питре инструментов выбрать инструмент Соединение (Connect Wire, «катушка») и с его помощью соединить входи ВПП Sine Waveform.vi с соответсввующими источниками, выход Sine Waveform.vi подключается к Waveform Grart. После сборки блок-схемы следует задать амплитуду напряжения и фазу (в градусах) и установить частоту (если

40

частота 1 Гц, на экране осциллографа будет изображен один период колебаний, есди частота 2 Гц то это означает двойную частоту и на экране будет изображено два периода).

Рис 4.1. ВП для моделирования синусоидальных токов и напряжений

41

4. Задавая различные (по собственному выбору) амплитуды, фазы, частоты и количество циклов, можно получать различные осциллограммы синусоидального напряжения.

4.3. Моделирование двух синусоидальных величин - напряжения и тока

Соберем блок-схему для моделирования двух синусоидальных величин – напряжения и тока с применением синусоидальных функций и цикла по заданию For Loop (рис. 4.2).

Рассмотрим вычисление синусоидальных функций на протяжении периода с интервалом 1 градус, при этом N = 360.

1.Цикл вызывается на панели блок-схем: Functions Programming Structures For Loop. Рамку цикла растягиваем за уголок до нужного размера инструментом Перемещение (Position/Size/Select, «стрелка»).

2.Внутрь цикла вносятся иконки синусоидальных функций, одна из

которых изображает напряжение, а другая ток (Functions Mathematics

Elementary & Special Functions Trigonometric Functions Sine). На вход их подаются значения углов в радианах, поэтому при градусной мере задания

углов их следует перевести в радианы по известному соотношению jрад =

p×jград/180 .

3. Количество вычислений за один период в нашем случае N = 360 (к терминалу [N] нужно подключить источник с числом 360). Текущий параметр цикла i (синяя буква в рамке) соответствует количеству градусов i = jград и изменяется от 0 до 360.

4.Начальная фаза задается прибавлением нужного количества градусов к параметру соответствующей синусоиды.

5.Выходные величины синусоидальных функций умножаются соответственно на амплитудные значения напряжения и тока и наблюдаются на виртуальном осциллографе.

6.Создадим прибор для одновременного наблюдения двух синусоидальных функций - виртуальный двухлучевой осциллограф. Для этого на лицевой панели вызывается осциллограф Waveform Graph и на нем устанавливается второй график - для этого нужно инструментом Перемещение растянуть окошко Plot по вертикали. Затем следует на блок-диаграмме установить элемент построитель массива (Build Array) найдя его на палитре

элементов лицевой панели (Functions Programming Array Build Array),

который нужен для объединения двух сигналов на входе осциллографа. Появившийся построитель массива растянуть по вертикали так, чтобы он имел два входа.

7. Запустив программу на выполнение, построим кривые тока и напряжения, при различных фазовых сдвигах (положительных и отрицательных).

42

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

Рис. 4.2. ВП для моделирования двух синусоидальных величин

43

4.4. Моделирование напряжения, тока и мощности

1. Для решения этой задачи следует вызвать цикл по заданию (For Loop) и

поместить в него узел Формула (Functions Programming Structures Formula Node), в который вписать формулу u = Um×sin(t) , где аргумент t в радианах записывается как t = k×p/180. Здесь параметр счетчика операций обозначен буквой k для того, чтобы отличить его от обозначения тока. Параметр k соответствует числу градусов k = ×jград. В нашем случае целесообразно провести расчет на протяжении двух периодов. Поэтому нужно задать число отсчетов N = 720.

2.Нажав ПКМ на рамку узла Формула, вводим входные и выходные величины (Add Input, Add Output).

3.Полученные значения напряжения, тока и мгновенной мощности нужно выводим на осциллографы Waveform Graph.

4.Действующие (среднеквадратичные) значения синусоидального напряжения и тока измеряются виртуальными подприборами RMS (Root Mean

Square), вызываемыми на панели блок-схем по пути Functions Mathematics Probability & Statistics RMS.vi, к выходам которых подключаются цифровые индикаторы. Активная мощность, представляющая собой среднее за период значение мгновенной мощности, измеряется виртуальным прибором Mean.vi,

вызываемым аналогично Functions Mathematics Probability & Statistics Mean.vi, на выходе также требуется индикатор.

Окончательная блок-диаграмма изображена на рис. 4.3.

Рис. 4.3. Моделирование напряжения, тока и мощности в цепи

4.4. Построение кривых напряжения, тока и мгновенной мощности при сдвигах фаз между напряжением и током

44

Можно построить кривые напряжения, тока и мгновенной мощности при различных сдвигах фаз между напряжением и током. Результаты измерений интересно сравнить с результатами расчетов по формулам (4.1), (4.2).

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

Рассматрим последовательное соединение катушки, индуктивность которой L, конденсатора емкостью С и резистора с сопротивлением R. Цепь подключена к источнику синусоидальной ЭДС Е c переменной частотой ω. Требуется построить зависимости тока в цепи и напряжений на катушке и конденсаторе от частоты при неизменном напряжении U.

1. Ток и напряжения определяются по закону Ома

I = U z ;

U L = ω × L × I ;

UC = I ×C);

(4.3)

 

 

 

 

 

 

 

z =

 

R2 + × L -1

×C))

2 .

(4.4)

Пусть заданы числовые значения: U=

150 В, R = 0,8 Ом,

L = 0,035 Гн,

С = 0,003 Ф.

Для решения задачи используется узел Формула, работающий в цикле For Loop. В узел Формула записываются уравнения (3), (4). В качестве изменяющейся частоты ω применим счетчик операций i. Так как, в формулах (4.3), (4.4) частота содержится в знаменателе, поэтому для того чтобы избежать деления на ноль, примем ω = i+1. В качестве индикатора возьмем трехлучевой осциллограф, который подключим по аналогии с тем, как это было сделано в примере 4.2. Количество операций N выбирается таким образом, чтобы наблюдались резонансные пики тока и напряжений. Примем N = 200.

Лицевая панель и блок-схема ВП с наблюдаемыми резонансными токами приведены рис. 4.4

Вопросы для самопроверки к пятой лекции:

1.Какими способами можно моделировать синусоидальные колебания в

LabVIEW?

2.Каким соотношением связаны действующее значения тока и напряжения с их амплитудой?

3.Какими выражением определяется активная мощьность?

4.Какими ВП определяются среднеквадратичные и средние значения переменных в LabVIEW?

5.В какой последовательности собирается ВП с использованием генератора синусоидальных колебаний?

6.В какой последовательности собирается ВП с использованием синусоидальных функций?

7.В какой последовательности собирается ВП с использованием виртуальных подприборов определяющих среднеквадратичные и средние значения переменных?

45

8. Сравните значения токов полученных по формулам 4.1,4.2 и формулам

4.3, 4.4?

Литература для дополнительного обучения: [2, с.257 – 268; 3, с.41 – 46].

Рис.4.4. Лицевая панель и блок-схема ВП с резонансными токами

46