Перейти к:
Электродинамические расчеты в ANSYS Electronics Desktop под управлением программы, разработанной в MATLAB
https://doi.org/10.38013/2542-0542-2019-3-13-18
Аннотация
Ключевые слова
Для цитирования:
Кузнецов И.А., Грибанов А.Н., Курушин А.А., Мосейчук Г.Ф., Синани А.И. Электродинамические расчеты в ANSYS Electronics Desktop под управлением программы, разработанной в MATLAB. Вестник Концерна ВКО «Алмаз – Антей». 2019;(3):13-18. https://doi.org/10.38013/2542-0542-2019-3-13-18
For citation:
Kuznetsov I.A., Gribanov A.N., Kurushin A.A., Moseychuk G.F., Sinani A.I. Electrodynamic computations using ANSYS Electronics Desktop software controlled by a program developed in the MATLAB environment. Journal of «Almaz – Antey» Air and Space Defence Corporation. 2019;(3):13-18. https://doi.org/10.38013/2542-0542-2019-3-13-18
Математическое моделирование является неотъемлемой частью проектирования сверхвысокочастотных (СВЧ) устройств любой сложности, поскольку позволяет без натурных испытаний определить характеристики разрабатываемого устройства.
Разработка фазированной антенной решетки (ФАР) и активной фазированной антенной решетки (АФАР), работающих в СВЧ-диапазоне частот, нуждается в моделировании функционирования отдельных устройств и систем на электродинамическом уровне. Для этого часто используют специализированные программы, например ANSYSHFSS [1, 2], CST Studio Suite, Altair FEKO. Эти программы при умелом применении довольно точно рассчитывают СВЧ характеристики, однако требуют большого времени счета и персонального компьютера (ПК) высокой производительности. Поэтому их целесообразно использовать при решении задач, для которых необходимо точное электродинамическое моделирование, например:
- выбор конструкции излучателя с учетом требований на диаграмму направленности (ДН) одного излучателя в составе многоэлементной ФАР;
- расчет амплитудно-частотной и фазочастотной характеристик распределительной системы;
- учет влияния краевых эффектов на характеристики направленности;
- учет влияния окружающих объектов и т. д.
В то же время большинство характеристик направленности многоэлементных ФАР может с достаточной для практики точностью рассчитываться с помощью алгоритмов, не предъявляющих особых требований к вычислительным средствам и средам программирования, и подобные задачи чаще всего невозможно решить с помощью программ СВЧ-моделиро- вания. К таким задачам относятся:
- выбор базовых геометрических параметров раскрыва плоской ФАР: размеров апертуры, расчет границ однолучевой зоны и т. д.;
- выбор амплитудного распределения для обеспечения заданных характеристик излучения по суммарному и разностным каналам, включая пеленгационные характеристики;
- расчет ДН при сканировании с учетом ошибок реализации амплитудно-фазового распределения (АФР);
- формирование лучей специальной формы (одномерно и двумерно расширенных, ко- секансных);
- расчет точности установки луча в заданное направление;
- работа с динамическими диаграммами;
- поддержка операций настройки ФАР/ АФАР;
- учет особенностей цифрового диаграм- мообразования и т. д.
Поэтому необходимо так построить программы поддержки разработок ФАР, чтобы в рамках одного пакета программ гибко совмещать средства точного и быстрого моделирования. Одной из самых быстро развивающихся и перспективных сред математического и инженерного моделирования в настоящее время является MATLAB [3, 4]. Покажем на примере моделирования ФАР с плоским раскрывом основные правила организации такого взаимодействия между программами ANSYS HFSS и MATLAB.
Управление с помощью MATLAB процессами, протекающими в HFSS, заключается во взаимодействии компонент программного обеспечения в операционных системах Windows. Каждая программа делится на различные компоненты, например, навигации, вставки и др.
Основой для объединения компонент программного обеспечения в приложение служит Microsoft Component Object Model (COM). Это средство, использующее объектно-ориентированные языки программирования последней модификации. Здесь компоненты запускаются компиляцией кода, и исходный код можно написать в любой из доступных программ программирования, поддерживающей СОМ. Для данного случая СОМ-клиентом будет программа, которая контролирует, т. е. MATLAB. А в качестве COM-объекта выступит программа, которую нужно контролировать, т. е. HFSS.
В MATLAB для создания СОМ-сервера используется команда actxserver(progid’), где progid - это идентификатор программы, по которому ее можно вызвать. Обычно эта запись появляется в реестре с установкой новой программы: HKEYY_CLASSESY_ROOT/progid.
Программу HFSS (AEDT) можно представить в виде блоков (рис. 1), которые отражают последовательность обработки потока данных.
Рис. 1. Структура связи в HFSS
Функции блоков, представленных на рис. 1, следующие:
- oDesktop является объектом рабочего пространства (открывает доступ к функции обновления рабочего окна программы);
- oProject открывает доступ к функциям управления проекта;
- oDesign открывает доступ к функциям управления конкретного дизайна;
- oEditor позволяет пользоваться функциями копировать, вырезать, вставить, функциями объединения геометрии (Unite) и др.;
- oModule позволяет управлять папками Boundaries или Excitations и др.
Например, в последовательности может быть несколько блоков oProject, которые активируются командой oProject = oDesktop. SetActiveProject(hfss_proj_name).
Эта команда выполняется в результате выбора проекта HFSS. В данном случае команда oDesktop выступает в роли функции, а SetActiveProject(value) - аргумента.
Через MATLAB можно создавать макросы для каждой из программ, которые от кода в MATLAB отличаются лишь языком описания. Так как для HFSS используют VBScript (Visual Basic Script), то макросы используют тот же код. Макросы дают возможность использовать данные моделирования внутри программы и тем самым применять собственные алгоритмы постобработки данных. В некоторых случаях уместно создавать макросы вместо построчного выполнения кода в MATLAB.
В качестве излучателя в «бесконечной» ФАР, работающей на частоте 10 ГГц, используем рупор (рис. 2), его модель заранее выполнена в программе HFSS Antenna Design Kit. Создадим в MATLAB модель плоской антенной решетки и загрузим данные в программу HFSS для расчета электродинамическими методами.
Рис. 2. Модель излучателя ФАР в HFSS
Можно выделить два разных способа построения антенной решетки в HFSS, которые доступны в меню Antenna Array Setup...: Regular Array Setup и Custom Array Setup. Создание моделей антенных решеток, имеющих структуру, отличную от прямоугольной, с постоянным АФР, возможно лишь посредством второго варианта. При этом требуется сформировать текстовый файл, описывающий каждый элемент в целом (рис. 3).
Рис. 3. Текстовый файл конфигурации антенной решетки
Для управления программой посредством кода возможны оба эти варианта. Однако во втором случае не удалось в автоматическом режиме загрузить файл конфигурации, поэтому был написан макрос, содержащий в себе те же данные.
Для запуска программы HFSS из MATLAB используется код oAnsoftApp = actxserver('Ansoft.ElectronicsDesktop'). Далее нужно активировать рабочее пространство программы командой oDesktop=oAnsoftApp. GetAppDesktop(). Когда рабочий стол активирован, можем открыть проект: oDesktop. OpenProject(file_hfss). Так как открытых в программе проектов может быть несколько, то необходимо выбрать нужный, даже если проект один: oProject=oDesktop.SetActiveProject(hfss_ proj_name). В проекте может быть несколько дизайнов, следует сделать активным только один. Можно записать имя непосредственно в код, а можно получить имена дизайнов, содержащихся в проекте, и выбрать один из них: oDesign=oProject.SetActiveDesign(active_ designname).
Необходимо задействовать каждый из модулей, используемых в работе, чтобы можно было пользоваться их функциями. Например, модуль RadField позволяет управлять параметрами антенных решеток, областью расчета и т. д., oDesign.Solve(setupname) запускает расчет проекта.
После проведения расчетов результат можно сохранить в текстовый файл и загрузить их в MATLAB в качестве данных о параметрах излучателя. Формируем в MATLAB модель антенной решетки:
sAnt = phased.CustomAntennaElement('Frequen cyVector',freqVector,...
'AzimuthAngles',Az, 'ElevationAngles',El,...
'MagnitudePattern',Pat_AzEl_Izl,
'PhasePattern'phasepattern);
Модель антенной решетки создается средствами Phased Array System Toolbox: MATLABArray=phased.URA('Element', sAnt, 'Size', [N M], 'ElementSpacing', [dy dx], 'Lattice', 'Rectangular'). На рис. 4 представлено расположение элементов решетки, созданной средствами MATLAB.
Рис. 4. Расположение излучателей модели ФАР в MATLAB
Используя управление программой HFSS через MATLAB, создаем антенную решетку с постоянными шагами решетки (рис. 5), а затем - скрипт-файл, с теми же данными, которые содержатся в Custom Array Definition (рис. 6):
Рис. 5. Задание ФАР в HFSS с регулярными шагами излучателей
Рис. 6. ФАР, разработанная в MATLAB и представленная в HFSS
Выполнение данного кода совпадает с заданием ФАР на рис. 5. Второй метод - создание специального файл-скрипта (рис. 7), в котором прописаны координаты, амплитуда и фаза каждого излучателя в одну строку, что сильно усложняет код-программу из-за громоздкости записи данных в файл скрипта.
Рис. 7. Структура скрипт-файла с данными ФАР
Итогом вышеперечисленных операций является расчет одной и той же ФАР, но разными методами. Второй метод позволяет загружать в HFSS данные антенной решетки любой структуры с любым заданным АФР.
ДН, полученные в результате расчетов, показаны на рис. 8. Сплошной линией изображена диаграмма излучателя в составе ФАР, рассчитанная в HFSS с учетом геометрических параметров излучателя. Два других совпадающих графика представляют ДН ФАР с регулярными шагами излучателей, созданную и рассчитанную в HFSS под управлением MATLAB, и ФАР, созданную в MATLAB и переданную посредством скрипт-файла для расчетов в HFSS.
Рис. 8. ДН излучателя и ФАР, рассчитанные разными способами
Таким образом, на примере моделирования ФАР с плоским раскрывом показаны основные правила организации взаимодействия между программами ANSYS HFSS и MATLAB. Программа, написанная в MATLAB, являясь главной, запускает HFSS, открывает заранее разработанный файл проекта излучателя, управляет параметрами расчета в HFSS диаграммы одного излучателя в составе бесконечной решетки, принимает рассчитанные данные и проводит их дальнейшую обработку по своим алгоритмам.
Отметим, что расчет характеристик ФАР с использованием MATLAB и HFSS позволяет получить следующие преимущества:
- проведение сквозной автоматизации расчетов;
- сокращение времени расчета (примерно на треть) без потери точности полученных результатов;
- проведение под управлением MATLAB параметрической оптимизации на заданные характеристики излучения ФАР с подбором параметров излучающей системы, включая конструкцию излучателя.
Таким образом, рассмотренный подход позволяет совмещать преимущества точного моделирования отдельных СВЧ-систем ФАР в специализированных программах с программами, использующими собственные алгоритмы расчета характеристик ФАР.
Об авторах
И. А. КузнецовРоссия
А. Н. Грибанов
Россия
А. А. Курушин
Россия
Г. Ф. Мосейчук
Россия
А. И. Синани
Россия
Рецензия
Для цитирования:
Кузнецов И.А., Грибанов А.Н., Курушин А.А., Мосейчук Г.Ф., Синани А.И. Электродинамические расчеты в ANSYS Electronics Desktop под управлением программы, разработанной в MATLAB. Вестник Концерна ВКО «Алмаз – Антей». 2019;(3):13-18. https://doi.org/10.38013/2542-0542-2019-3-13-18
For citation:
Kuznetsov I.A., Gribanov A.N., Kurushin A.A., Moseychuk G.F., Sinani A.I. Electrodynamic computations using ANSYS Electronics Desktop software controlled by a program developed in the MATLAB environment. Journal of «Almaz – Antey» Air and Space Defence Corporation. 2019;(3):13-18. https://doi.org/10.38013/2542-0542-2019-3-13-18