Создание лабораторной установки



 

Мы предполагаем, что лабораторная установка позволит определять относительный уровень поля в точке приема в зависимости от радиуса диафрагмы.  Остальными исходными  данными  являются:  длина волны  передатчика  в м, протяженность линии  в км, расстояние  от диафрагмы  до точки приема  в км. Кроме того, предусмотрим режимы использования ненаправленной и направленной антенны передатчика. Для последнего режима будем задавать ширину луча антенны в градусах.

Для  структурирования  программы подготовим  ряд  вспомогательных  виртуальных инструментов – СубВИ.

СубВИ «Пути и углы»

 

По заданным: протяженности линии  R, расстоянии от диафрагмы  до точки приема R1  и радиусу диафрагмы  r – эта подпрограмма определит геометрические параметры задачи: расстояния AF и FB, углы γ и θ. Выражения для расчетов следуют из рис. 23.

          ,                 ;                                 (17)

   ,                                   .                           (18)

 

Будем полагать, что входные и выходные величины задаются в системе СИ, то есть расстояния – в м, а углы – в радианах.

Создадим в LabVIEW новый прибор, выбрав команды меню File ⇒ New VI.

Создаем лицевую панель СубВИ:

1. Поместим на лицевую панель из палитры Controls ⇒ Numeric три цифровых регулятора и четыре цифровых индикатора.

2. С помощью меточного инструмента дадим им метки: «r», «R», «R1», «AF», «FB», «Гамма», «Тэта» (рис. 28). Перейдем в окно структурной схемы:

1. Поместим в окно из палитры Functions ⇒ Numeric два оператора суммирования Add, оператор вычитания Subtract, три оператора умножения Multiply, два оператора деления Divide и два оператора извлечения квадратного корня Square Root.

2. Возьмем из палитры Functions ⇒ Numeric ⇒ Trigonometric два оператора арктангенса Inverse Tangent.

3. Монтажным инструментом соединим терминалы на структурной схеме (рис. 29).

Откорректируем иконку СубВИ, надпись в иконке отражает вычисляемые величины .

В окне лицевой панели перейдем от иконки к соединителю (Shov Connector) (рис. 28). Монтажным инструментом сопоставим контакты соединителя с регуляторами и индикаторами на лицевой панели. Сохраним СубВИ, дав ему имя «Пути и углы».

СубВИ «Модель ДН»

 

При моделировании направленных свойств антенны передатчика используем диаграмму направленности вида

 

F(θ)=cosn(θ),                                     (19)

                  

где степень n будет определять ширину диаграммы направленности. Если ширина диаграммы направленности по уровню –3 дБ составляет  2∆θ радиан, то степень

 

 

Рис. 28. Лицевая панель СубВИ «Пути и углы»

Рис. 29. Структурная схема СубВИ «Пути и углы»

                            (20)

 

Создаваемый СубВИ, проводя вычисления по выражению (20), по заданной ширине диаграммы определяет  степень n для модели (6.19). Обычно ширина диаграммы направленности задается в градусах, для перехода к радианам используем ранее описанный  СубВИ «Градусы в радианы».

Создадим  в LabVIEW новый прибор, выбрав команды меню File ⇒ New VI .

Создаем лицевую панель СубВИ:

1.  Поместим  на лицевую  панель из палитры  Controls ⇒ Numeric цифровой регулятор  и цифровой  индикатор.

2.  Дадим им метки «Ширина ДН в град.», «Степень» (рис. 30).

 

 

Рис. 30. Лицевая панель СубВИ «Модель ДН»

 

Перейдем в окно структурной схемы:

1.  Поместим  в окно из палитры  Functions ⇒ Numeric оператор  умножения Multiply,  оператор деления Divide  и оператор нахождения обратной величины Reciprocal.

2.  Возьмем из палитры Functions ⇒ Numeric ⇒ Trigonometric оператор косинуса Cosine.

3.  Берем из палитры Functions ⇒ Numeric ⇒ Logarithmic оператор логарифмирования по основанию 2 Logarithm Base 2.4.  Из палитры  Functions ⇒ Select a VI…  находим и помещаем на структурную схему СубВИ «Градусы в радианы».5.  Создаем две числовые константы 2 и –2.

6.  Монтажным  инструментом  соединим  терминалы  на  структурной схеме (рис. 31).

 

 

Рис. 31. Структурная схема СубВИ «Модель ДН»

 

Откорректируем иконку СубВИ, надпись в иконке отражает выполняемые операции .

В окне лицевой панели перейдем от иконки к соединителю (Shov Connector) (рис.30). Монтажным инструментом сопоставим контакты соединителя с регулятором и индикатором на лицевой панели. Сохраним СубВИ, дав ему имя «Модель ДН».

 

СубВИ «Диаграмма»

 

Этот СубВИ должен вычислять значения диаграммы направленности по выражению (19) при заданном в радианах значении угла и по величине n.

Создадим в LabVIEW новый прибор, выбрав команды меню File ⇒ New VI . Создаем лицевую панель СубВИ:

1. Поместим на лицевую панель из палитры Controls ⇒ Numeric два цифровых регулятора и цифровой индикатор.

2. Дадим им соответствующие метки «Угол в рад», «Степень», «ДН» (рис. 32). Так как величина n может быть дробной, то нам придется моделировать диаграмму с использованием выражения, эквивалентного (19):

 

 

:

 

 

Рис. 32

 

 

F(θ) = 10nlg(cosθ).

 

Перейдем в окно структурной схемы

1. Поместим в окно из палитры Functions ⇒ Numeric оператор умножения Multiply.

2. Из палитры Functions ⇒ Numeric ⇒ Trigono-metric возьмем оператор косинуса Cosine.

3. Берем из палитры Functions ⇒ Numeric ⇒ Logarithmic оператор логарифмирования по основанию 10 Logarithm Base 10 и оператор степени Power of 10.

4. Монтажным инструментом соединим терминалы на структурной схеме (рис. 33).

 

 

Рис. 33. Структурная схема СубВИ «Диаграмма»

 

Откорректируем иконку СубВИ, надпись в иконке отражает выполняемые операции . В окне лицевой панели перейдем от иконки к соединителю (Shov Connector) (рис. 32). Монтажным инструментом сопоставим контакты соединителя с регуляторами и индикатором на лицевой панели. Сохраним СубВИ, дав ему имя «Диаграмма».

СубВИ «Модуль и фаза».

Этот СубВИ должен вычислять амплитуду и фазу приращения амплитуды напряженности поля от кольцевого участка отверстия радиуса r по выражениям (8) и (9). Обозначения входных геометрических величин возьмем в соответствии с рис. 23. Этими величинами являются: протяженность трассы AB, расстояние от точки излучения до точки в плоскости диафрагмы AF, расстояние от точки в плоскости диафрагмы до точки приема FB, угол γ между FB и AB. Кроме того, задаются волновое число k = 2π / λ и значение диаграммы направленности излучателя в направлении AF. Для удобства моделирования будем полагать нулевым набег фазы по прямому пути AB.

Создадим в LabVIEW новый прибор, выбрав команды меню File ⇒ New VI. Создаем лицевую панель СубВИ:

1. Поместим на лицевую панель из палитры Controls ⇒ Numeric шесть цифровых регуляторов и два цифровых индикатора.

2. С помощью меточного инструмента дадим им соответствующие метки (рис. 34).

 

Рис. 34

 

Перейдем в окно структурной схемы:

1. Поместим в окно из палитры Functions ⇒ Numeric четыре оператора умножения Multiply, оператор суммирования Add, оператор вычитания Subtract, оператор нахождения обратной величины Reciprocal, оператор смены знака Negate.

2. Возьмем из палитры Functions ⇒ Numeric ⇒Trigonometric оператор косинуса Cosine.

3. Монтажным инструментом соединим терминалы на структурной схеме (рис. 35).

Рис. 35. Структурная схема СубВИ «Модуль и фаза»

 

Откорректируем иконку СубВИ, надпись в иконке отражает выполняемые операции . В окне лицевой панели перейдем от иконки к соединителю (ShovConnector) (рис. 34). Монтажным инструментом сопоставим  контакты соединителя с регуляторами и индикатором на лицевой панели. Сохраним СубВИ, дав ему имя «Модуль и фаза». Этот СубВИ должен преобразовывать комплексное число, заданное модулем и фазой в радианах, и давать на выходе его реальную и мнимую части. Такое преобразование целесообразно производить при дальнейшем суммировании комплексных чисел.

Создадим в LabVIEW новый прибор, выбрав команды меню File ⇒ New VI.

Создаем лицевую панель СубВИ:

1. Поместим на лицевую панель из палитры Controls ⇒ Numeric два цифровых регулятора и два цифровых индикатора.2. Дадим им метки «Модуль», «Фаза в радианах», «Реальная», «Мнимая» (рис. 36).

Перейдем в окно структурной схемы:

1. Поместим в окно из палитры Functions ⇒ Numeric ⇒ Complex операторы

Polar To Complex и Complex To Re/Im.

2. Монтажным инструментом соединим терминалы на структурной схеме (рис. 37).

Рис. 36. Лицевая панель СубВИ «Polar To Re/Im».

 

Откорректируем иконку СубВИ, надпись в иконке отражает выполняемые операции . В окне лицевой панели перейдем от иконки к соединителю (ShovConnector) (рис. 36). Монтажным инструментом сопоставим контакты соединителя с регуляторами и индикатором на лицевой панели. Сохраним СубВИ, дав ему имя «Polar to Re-Im».

Нами создано пять вспомогательных подпрограмм – СубВИ, которые облегчают формирование структурной схемы лабораторной установки. На этой схеме будут видны только иконки СубВИ, которым мы дали характерные рисунки.

 

ВИ «Зоны Френеля»

Создадим в LabVIEW лабораторную установку, выбрав команды меню File ⇒New VI.

Создаем лицевую панель ВИ:

1. Выше всех регуляторов в декоративном элементе поместим заголовок «Зоны

Френеля и существенная область при распространении радиоволны».

2. Правее, взяв из палитры Boolean, поместим кнопку останова Stop Button.

3. Возьмем из палитры Controls ⇒ Graph ⇒ XY Graph графический индикатор и поместим его на лицевую панель (рис. 38).

4. В поле метки индикатора введем «Амплитуда поля». Сделаем видимой панель курсора и отключим автошкалирование по обеим осям.

5. Возьмем из палитры Controls ⇒ Graph ⇒ XY Graph второй графический индикатор и поместим его правее первого на лицевую панель (рис. 38).

6. В поле метки индикатора введем «Фазовая диаграмма». Сделаем видимой панель курсора и отключим автошкалирование по обеим осям.

7. Так как мы предполагаем выводить на этот график нормированную к максимуму величину, то меточным инструментом зададим диапазон обеих шкал от –1,00 до 1,00.

8. Под левым экраном поместим метку «Входные данные».

 

Рис. 38. Лицевая панель ВИ «Зона Френеля»

 

9. Разместим под ней регуляторы, задающие геометрические параметры ли- нии: протяженность линии в км, расстояние до диафрагмы в км, радиус диафрагмы в м. Для этого из палитры Numeric переместим на лицевую панель три регулятора Horizontal Pointer Slide. При этом в метку каждого регулятора внесем его наименование.

10. После щелчка правой кнопкой мыши на регуляторе выбираем Visible Items⇒ Digital Display, чем сделаем видимым цифровой дисплей регулятора.

11. Для каждого из регуляторов, щелкнув на нем правой кнопкой мыши, выбираем Data Range. Открывается окно Slide Properties. В этом окне устанавливаем минимальное Minimum, максимальное Maximum значения регулируемой величины и шаг ее изменения Increment (рис. 39). Теперь при регулировании значения переменных не смогут принять недопустимых значений.

 

             

 

 

Рис. 39.   Окно Slide Properties регулятора «Протяженность линии в км».

 

12. Для того чтобы лабораторная установка работала в двух режимах, позволяя моделировать линию с ненаправленной антенной или с направленной пере- дающей антенной с задаваемой шириной диаграммы направленности, создадим переключатель режимов. Из палитры Boolean поместим на лицевую панель переключатель Vertical Toggle Switch. В его метку введем текст «ДН».

13. Выше и ниже переключателя поместим метки «Ненаправленная» и «Направленная».

14. Левее переключателя поместим регулятор Numeric Control, задающий ширину диаграммы направленности в градусах. Дадим ему соответствующую метку (рис. 38).

15. Правее разместим регулятор Horizontal Pointer Slide с меткой «Длина волны в м» и цифровой индикатор Numeric Indicator с меткой «Частота в МГц» (рис. 38).

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

 

Перейдем в окно структурной схемы Block Diagram:

1. Из палитры Functions ⇒ Application Control выбираем оператор останова

Stop и соединяем его с терминалом одноименной кнопки лицевой панели.

2. Щелкнем правой кнопкой мыши на терминале индикатора XY Graph «Амплитуда поля». В открывающихся контекстных меню выбираем последовательно Create ⇒ Property Node. На структурной схеме появляется элемент узла атрибутов. Теперь делаем на нем щелчок правой кнопкой мыши и в контекстном меню выбираем Properties ⇒ X Scale ⇒ Range ⇒ Minimum.

3. Щелкнув левой кнопкой мыши на этом атрибуте, выделим его. За нижний

квадратик выделения растянем узел атрибутов до появления еще одного атрибута «XScale.Maximum». Созданы атрибуты управления начальным и конечным значениями горизонтальной шкалы индикатора XY Graph.

4. Для того чтобы оба эти атрибута можно было изменять извне, щелкнем пра- вой кнопкой мыши на узле атрибутов и в контекстном меню выбираем Change All To Write.

5. У атрибута «XScale.Minimum» помещаем константу со значением 0 и соединяем с ним.

6. Атрибут «XScale.Maximum» соединяем с терминалом регулятора «Радиус диафрагмы в м». Теперь размер шкалы индикатора будет отслеживать за регулируемым радиусом диафрагмы.

7. Рядом с терминалами регуляторов «Расстояние до диафрагмы в км» и

«Протяженность линии в км» поместим по одному оператору умножения Multiply и по константе Numeric Constant со значением 1000. Соединив их монтажным инструментом, осуществляем перевод километров в метры (рис. 40).

Расстояние до диафрагмы не может превышать протяженность линии. При

изменении регулятором протяженности линии максимальное значение шкалы регулятора расстояния до диафрагмы должно изменяться.

8. Щелкнем правой кнопкой мыши на терминале регулятора «Расстояние до диафрагмы в км». В открывающихся контекстных меню выбираем последовательно Create ⇒ Property Node. На структурной схеме появляется элемент узла атрибутов. Теперь делаем на нем щелчок правой кнопкой мыши и в контекстном меню выбираем Properties ⇒ Scale ⇒ Range ⇒ Minimum.

9. Щелкнем левой кнопкой мыши на этом атрибуте, выделяя его. За нижний

квадратик выделения растянем узел атрибутов до появления еще одного

 

Рис. 40. Структурная схема ВИ «Зона Френеля»

 

атрибута «Scale.Maximum». Созданы  атрибуты управления начальным и конечным значениями шкалы регулятора.

10. Еще раз выделим узел атрибутов и растянем его вниз до появления третьего атрибута. Щелкнем по нему правой кнопкой мыши. В контекстном меню выбираем Properties ⇒ Va lue.

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

Change All To Write.

12. У атрибута «Scale.Minimum» помещаем константу со значением 0 и соединяем с ним.

13. Атрибут «Scale.Maximum» соединяем с терминалом регулятора «Протяженность линии в км».

14. Расстояние до диафрагмы надо сравнить с протяженностью линии. Меньшее из них подается на атрибут Value. Из палитры Comparison помещаем на структурную схему операторы Select и Greater. Монтажным инструментом соединяем их с регуляторами «Расстояние до диафрагмы в км», «Протяженность линии в км» и узлом атрибутов «Расстояние до диафрагмы в км» (рис. 40).

15. Поместим в окно из палитры Functions ⇒ Numeric три оператора деления

Divide и цифровую константу со значением 1 000 000.

16. Поместим в окно из палитры Functions ⇒ Numeric ⇒ Additional Numeric

Constants константы с и 2π.

17. Щелкнем правой кнопкой мыши на терминале регулятора «Радиус диафрагмы в м». В открывающихся контекстных меню выбираем последовательно Create ⇒ Property Node. На структурной схеме появляется элемент узла атрибутов. Теперь делаем на нем щелчок правой кнопкой мыши и в контекстном меню выбираем Properties ⇒ Data Range ⇒ Minimum.

18. Щелкнем правой кнопкой мыши на этом узле атрибутов и в контекстное меню выбираем Change To Write.

19. Соединяем между собой монтажным инструментом терминалы «Длина волны в м», «Частота в МГц», константы, операторы и атрибут по схеме (рис. 40).

20. Из палитры Functions выбираем Select a VI. Из открывшегося окна помещаем в окно структурной схемы созданный нами СубВИ «Модель ДН». Соединяем его с терминалом «Ширина ДН в градусах».

21. Щелкнем правой кнопкой мыши на терминале регулятора «Ширина ДН в градусах». В открывающихся контекстных меню выбираем последовательно Create ⇒ Property Node. На структурной схеме появляется элемент узла атрибутов Visible.

22. Из палитры Boolean берем оператор логического отрицания Not.

23. Терминал переключателя режимов «ДН» соединяем монтажным инструментом через оператор Not с атрибутом Visible.

24. Из палитры Functions ⇒ Structures выбираем оператор цикла For Loop

Поместив его в окно структурной схемы, растягиваем рамку и меточным

инструментом задаем число его выполнений, равное 1000.

25. Из палитры Functions выбираем Select a VI. Из открывшегося окна помещаем последовательно в окно структурной схемы созданные нами СубВИ:

«Пути и углы», «Модуль и фаза», «Диаграмма» и «Polar to Re-Im».

26. Для осуществления численного интегрирования по выражениям (9), (12) необходимо диафрагму разбивать на кольца равной площади. В цикле For Loop мы будем получать в диафрагме 1000 таких колец. Учитывая, что площадь пропорциональна квадрату радиуса, мы формируем радиусы колец, ис- пользуя операторы деления Divide, умножения Multiply, корня квадратного Square Root и константу со значением 1000. Помещаем их в рамку цикла For Loop и соединяем монтажным инструментом по схеме (рис. 40).

27. Добавив внутрь рамки цикла константу 1 и оператор Select, завершаем монтаж тела цикла, соединяя терминалы СубВИ «Пути и углы», «Модуль и фаза», «Диаграмма» и «Polar to Re-Im» по схеме (рис. 40).

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

29. В операторе цикла получены три массива: массив значений радиусов, массив реальной части приращения поля от кольца данного радиуса, массив мнимой части приращения поля от того же кольца. Для нахождения интегральной суммы по выражению (12) поместим в окно структурной схемы оператор цикла For Loop. Поместив его в окно структурной схемы, растягиваем рамку и монтажным инструментом даем число его выполнений, равное 1000 (рис. 40).

30. Из палитры Array помещаем в рамку этого цикла два оператора Array Subset. Из палитры Numeric берем два оператора суммирования элементов массива Add Array Elements.

31. Ко входам index операторов Array Subset подключаем нулевые константы. Входы length соединяем со счетчиком цикла i. Выходы операторов Array Subset подключаем к операторам Add Array Elements.

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

32. В этом же цикле создается массив значений модуля поля, как корень квадрат-

ный из суммы квадратов реальной и мнимой частей. В рамку цикла помещаем два оператора умножения Multiply, оператор суммы Add и корня квадратного Square Root. Соединяем их в соответствии со схемой (рис. 40).

33. На графические индикаторы лабораторной установки будем выводить нормированные графики, то есть такие графики, у которых максимальное значение равно единице. Из палитры Analyze ⇒ Mathematics ⇒ Array Opera- tions помещаем в структурную схему оператор нахождения максимального значения и нормировки массива Quick Scale 1D. Рядом помещаем два опе- ратора деления Divide. Эти операторы проводят нормировку делением всех элементов массивов реальных и мнимых частей на максимальное значение модуля поля.

34. Из палитры Functions ⇒ Cluster выбираем три оператора Bundle и переносим их в окно структурной схемы

35. Из палитры Functions ⇒ Arra y выбираем оператор Build Array и переносим их в окно структурной схемы

36. Меточным инструментом соединяем терминал одного из операторов Bundle с массивом значений модуля поля. На другой вход оператора Bund- le подаем массив радиусов диафрагмы. Выход оператора подключаем к графическому индикатору «Амплитуда поля» (рис. 40).

37. На второй оператор Bundle подаем нормированные массивы реальных и мнимых значений поля, а выход подключаем к оператору Build Array.

38. Создаем часть структурной схемы, которая будет на графическом индикаторе «Фазовая диаграмма» рисовать вектор поля при заданном радиусе открытия диафрагмы. Этот вектор начинается в точке с координатами (0,0) и заканчивается в точке с координатами (х,y), где х равняется сумме элементов массива реальных частей, у равняется сумме элементов массива мнимых частей. Сначала поместим в структурную схему по два оператора суммирования элементов массива Add Array Elements и деления Divide.

39. Соединив их с соответствующими массивами и между собой, получаем координаты (х,y).

40. Создаем оператор цикла For Loop, в котором будет всего два значения счетчика.

41. В рамку этого оператора помещаем из палитры Comparison два оператора Select и оператор Greater Than 0?.

42. Создаем в рамке цикла две нулевые константы – координаты начала вектора. Через туннели в цикл передаются значения координат конца вектора (рис. 40).

43. Соединяем элементы в соответствии со схемой (рис. 40). Теперь при нулевом значении счетчика цикла в его выходных туннелях будут координаты конца вектора. При единичном значении счетчика цикла на выходе будут координаты начала вектора.

44. Подключим выходы этого цикла ко входам третьего оператора Bundle, а его выход – ко входу оператора Build Array. Ко второму входу оператора Build Array подключаем выход первого оператора Bundle, с которого подаются объединенные массивы реальных и мнимых частей.

45. Выход оператора Build Array соединяем с терминалом графического индикатора «Фазовая диаграмма». На этом индикаторе отображается в полярных координатах годограф вектора суммарного поля при открывании диафрагмы.

46. Конец годографа замыкается изображением самого вектора. Этот вектор, по сути второй график на индикаторе, должен иметь другой цвет. Перейдем в окно лицевой панели. Сделаем видимой легенду графиков Plot Legend. Растянем ее по вертикали до появления окна цвета второго графика. Дадим графикам разные цвета и снова скроем Plot Legend. На этом работа по созданию виртуальной лабораторной установки завершена. Сохраним ее результаты как ВИ с именем «Зоны Френеля».

 


Дата добавления: 2018-08-06; просмотров: 260; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!