УДК 629.7.014.16, 519.688
Т. А. Андрющенко, А. А. Кусаинов
Новосибирский государственный университет ул. Пирогова, 2, Новосибирск, 630090, Россия
E-mail: [email protected]
РАЗРАБОТКА ДИНАМИЧЕСКОЙ МОДЕЛИ БЕСПИЛОТНОГО ЛЕТАТЕЛЬНОГО АППАРАТА
Представлен метод построения динамической модели полета беспилотного летательного аппарата (БПЛА) с вертикальным взлетом. В качестве среды описания и исследования модели используется программа вычисления полетной динамики JSBSim, визуализация результатов в реальном времени выполнена в авиасимуляторе Flight-Gear, графическая модель разработана в трехмерном редакторе Blender.
Ключевые слова: беспилотный летательный аппарат, динамическая модель полета, вертикальный взлет, авиа-симулятор.
Введение
В настоящее время беспилотные летательные аппараты (БПЛА) и сопутствующие авиационные комплексы все чаще используются как в интересах обороны государства, так и для решения задач гражданского сектора. БПЛА определяют как техническое решение, обеспечивающее подъем оборудования над земной поверхностью на требуемую высоту и доставку его в заданную точку пространства с целью выполнения различных работ без пилота на борту.
БПЛА позволяют решать широкий круг задач в условиях, в которых применение пилотируемой авиации нецелесообразно, затратно или рискованно. Беспилотные самолеты по сравнению с пилотируемыми отличаются относительно низкой стоимостью, простотой и доступностью технологий. Легкие беспилотные летательные аппараты потребляют значительно меньше топлива. В отличие от пилотируемых самолетов машинам без пилота не обязательны аэродромы с бетонным покрытием, это является весомым преимуществом, так как сегодня большинство аэродромов нуждается в реконструкции, а темпы реконструкции не обеспечивают на должном уровне пригодность взлетно-посадочных полос.
Достоинства БПЛА для решения различных задач гражданского сектора:
• отсутствие угрозы опасности для жизни пилота;
• компактные геометрические размеры при транспортировке;
• малый срок подготовки к вылету - 5-15 минут;
• отсутствие ограничений по размерам взлетных площадок;
• простая процедура старта, возможность запуска практически с любой площадки размерами 2 X 2 метра, а при необходимости с капота автомобиля;
• возможность работы на малых высотах от 0 до 100 м - детальное рассмотрение выбранного объекта с близкой дистанции;
• возможность оперативной замены бортовой целевой нагрузки (оптическая видеокамера, цифровой фотоаппарат, тепловизор и т. п.) с целью получения фото- и видеоматериала заданного качества;
Андрющенко Т. А., Кусаинов А. А. Разработка динамической модели беспилотного летательного аппарата // Вестн. Новосиб. гос. ун-та. Серия: Информационные технологии. 2013. Т. 11, вып. 2. С. 5-17.
ISSN 1818-7900. Вестник НГУ. Серия: Информационные технологии. 2013. Том 11, выпуск 2 © Т. А. Андрющенко, А. А. Кусаинов, 2013
• малый вес в случае падения снижает размеры вероятного ущерба различным объектам и опасность для жизни и здоровья персонала [1].
Однако говорить об организации массовых полетов БПЛА, особенно малого класса, преждевременно по двум причинам.
1. Надежность БПЛА не приближается к надежности пилотируемых самолетов. Неотработанность технологий современных беспилотных самолетов отличается высоким уровнем аварийности, обусловленным ошибками операторов или отказом подсистем, а также они имеют более низкую живучесть, чем пилотируемые самолеты. Следует также отметить, что одним из требований к БПЛА, в случае их эксплуатации в открытом общем воздушном пространстве, является обязательное наличие двух режимов полета: по командам оператора (основной режим полета) и полностью автономного режима (в случае потери управляющего сигнала наземного поста управления) [1].
2. К настоящему времени в Российской Федерации не создана система документов, регламентирующих организацию полетов БПЛА в едином воздушном пространстве.
При полетах БПЛА в выделенных зонах допускаются нарушения соответствующих правил. Структуры воздушного пространства в зоне, регионе включают множество воздушных направлений, трасс с различным высотным профилем над населенными пунктами и другими объектами, временем полетов и т. д. Неуправляемые оператором полеты в такой обстановке исключаются полностью.
Одной из основных задач полетов беспилотников в гражданском воздушном пространстве является мониторинг местности. Облет территорий может включать повседневные авиационные работы, специальные и инспекционные полеты.
Повседневные авиационные работы, как правило, приписываются периодическим и наблюдаемым полетам по заранее определенному маршруту (маршруту патрулирования). Они обычно сопровождаются деятельностью, связанной с наблюдением и коммуникационными процедурами, и, согласно прогнозам, будут представлять собой значительный процент полетов БПЛА в период до 2030 г. [1]. Сопровождение таких полетов включает наблюдение природных (естественных) или географических особенностей, таких как береговая линия, линия границы, высотные здания и сооружения, леса, дороги, трубопроводы и т. п. Патрулирование происходит с использованием широкого ряда беспилотных аппаратов как в нижнем (до 1 000 м над рельефом местности или водной поверхностью), так и верхнем воздушном пространстве (свыше 4 000 м). Оно может выполняться в зависимости от состава бортового оборудования как с использованием правил полетов по приборам, так и визуальных правил полета.
Другим видом авиационных работ могут служить специальные полеты БПЛА, когда операторы, управляющие беспилотными самолетами, выводят с помощью командной радиолинии управления аппарат в интересующую область пространства. Это может быть, например, слежение за наземным транспортом. Тогда операторы БПЛА не могут предсказать детальный маршрут полета, но они способны обеспечить общее указание зоны полета аппарата.
В сложной динамичной структуре воздушного единого пространства организовать, осуществлять и управлять полетами беспилотных летательных аппаратов по жестким программно-временным графикам практически невозможно. Также для БПЛА требуются дополнительные элементы системы обеспечения. К ним относятся сам беспилотный аппарат, рабочее место оператора, программное обеспечение, линии передачи данных и элементы, необходимые для выполнения целей полета. С точки зрения организации воздушного движения управлять БПЛА следует так же, как любыми иными воздушными судами. В принципе авиадиспетчера не должно интересовать, какое именно судно он контролирует - беспилотный или пилотируемый аппарат.
В настоящее время большинство существующих БПЛА пилотируется вручную с помощью пультов дистанционного управления, работающих по радиоканалам. При этом управление БПЛА является задачей для хорошо подготовленного профессионала. К примеру, в армии США операторами БПЛА становятся действующие пилоты ВВС после дополнительной годичной подготовки и тренинга. Во многих аспектах это сложнее, чем пилотирование самолета, и, как известно, большинство аварий беспилотников вызвано ошибками пилота-оператора. Они разбивались, выйдя из зоны управления и видимости, или из-за механических отказов.
Автоматическое управление БПЛА обеспечивает возможность полностью автономного полета по заданной траектории, на заданной высоте, с заданной скоростью и со стабилизацией углов ориентации. При этом задачи решаются на большом удалении от места базирования, вне контакта с наземной станцией, в любых погодных условиях. Высокие показатели качества систем БПЛА, оснащенных полноценным автопилотом, снижают эксплуатационные издержки и требования к персоналу. При автоматическом управлении в процессе выполнения полета управление беспилотным самолетом должно осуществляться посредством бортового комплекса навигации и управления, в состав которого необходимо включать:
• приемник спутниковой навигации, обеспечивающий прием навигационной информации;
• систему инерциальных датчиков, обеспечивающую определение ориентации и параметров движения БПЛА;
• систему воздушных датчиков, обеспечивающую измерение высоты и скорости;
• различные виды антенн [1].
• Бортовая система навигации и управления должна обеспечивать:
• полет по заданному маршруту (задание маршрута производится с указанием координат и высоты поворотных пунктов маршрута);
• возврат в точку старта при потере управления;
• облет указанной точки;
• автосопровождение выбранной цели;
• стабилизацию углов ориентации БПЛА;
• поддержание заданных высот и скорости полета;
• сбор и передачу телеметрической информации о параметрах полета и работе целевого оборудования;
• программное управление устройствами целевого оборудования.
Бортовая система связи должна функционировать в разрешенном диапазоне радиочастот и обеспечивать передачу данных с борта на наземную станцию и в обратном направлении на борт. При этом данные, передаваемые с борта на землю, содержат параметры телеметрии и потоковое видео- и фотоизображение. Данные, передаваемые с земли на борт, содержат команды управления БПЛА и команды управления целевой аппаратурой.
Постановка задачи
В рамках проекта по созданию экспериментального БПЛА нетрадиционной конструкции, описанной ниже, решено разработать динамическую имитационную модель. Использование таких моделей позволяет значительно сократить количество испытательных полетов физической модели беспилотного аппарата, во время которых велика аварийность, и выявить возможные недоработки системы управления.
Компьютерная модель должна отвечать следующим основным требованиям:
• обеспечивать отработку всех задач, для которых предназначен БПЛА, включая планирование и управление полетом;
• максимально приближенно к реальным условиям моделировать полет БПЛА.
Описание объекта моделирования
Конструктивно разработанный БПЛА состоит из:
• летающей платформы, способной перемещаться в пространстве;
• системы автоматического управления - предполагается наличие автоматического и полуавтоматического режимов;
• полезной целевой нагрузки 1.
Разработанный летательный аппарат можно классифицировать как самолет вертикального взлета и посадки (СВВП, англ. VTOL - Vertical Take-Off and Landing) самолет, способный взлетать и садиться при нулевой горизонтальной скорости, используя тягу двигателя.
1 Официальный сайт «Arduino». URL: http://www.arduino.cc.
Принципиальным отличием СВВП от различных винтокрылых машин является то, что в режиме горизонтального полета на крейсерской скорости, как и у самолета традиционной схемы, подъемную силу создает неподвижное крыло. Самолет устанавливается на площадку с 4 неподвижными опорами и взлетает вертикально, что позволяет значительно расширить диапазон условий его применения за счет исключения наземных устройств старта, классических бортовых систем посадки (шасси) и исключения требований к размерам и обустроенности площадок взлета и посадки. Для создания подъемной силы в вертикальном положении аппарат использует непосредственно тягу двигателя.
Пилотирование этого типа машин весьма сложно. Особенно это проявляется в полете в режиме «зависание» и в моменты перехода из вертикального положения в горизонтальное и обратно. Фактически подъемная сила и, следовательно, вес аппарата должны быть перенесены с крыла на вертикальные подъемные потоки воздуха. Для осуществления этих маневров необходима сложная система автоматического управления с возможностью переключения в ручной режим во время взлета и посадки.
Аппарат предполагает наличие электрического двигателя в носовой части самолета.
БПЛА относится к классу «микро», так как имеет массу около 4 килограммов. Согласно расчетным характеристикам самолет может находиться в воздухе не менее двух с половиной часов, а в режиме «зависание» - до 30 минут. Штатная высота полета - 1 километр.
Предполагаемая полезная целевая нагрузка также может быть различной: видеокамеры оптического и инфракрасного диапазонов, фотоаппаратура, системы определения координат наземных и прочее.
Самолет как объект управления. Самолет - сложный объект управления (рис. 1). Основным элементом конструкции разработанной модели является планер, состоящий из фюзеляжа, крыла и хвостового оперения.
1 ^ПП тт
Рис. 1. Габаритный чертеж летательного аппарата
Фюзеляж (1) - основная несущая конструкция планера, служащая для объединения в одно целое всех его частей, а также для размещения оборудования и полезной нагрузки. Фюзеляж разработанного самолета представляет собой вытянутое по потоку тело вращения с тупым окончанием, на котором размещен вращающийся пропеллер электрического двигателя и хвостовой частью. Для обеспечения наименьшего сопротивления формы контура фюзеляжа выполнены плавно.
Крыло (2) - основная несущая поверхность самолета, предназначенная для создания силы, удерживающей самолет в воздухе. Важные характеристики крыла:
• стреловидность - угол отклонения крыла по оси У по отношению к центральной оси самолета. При этом положительным считается направление к хвосту;
• форма поперечного сечения, перпендикулярная размаху крыла;
• площадь.
Крыло имеет плоскость симметрии, совпадающую с плоскостью симметрии самолета. На крыле разработанной модели самолета отсутствует оперение: все поверхности, обеспечивающие устойчивость самолета в воздухе, расположены в хвостовой части.
Хвостовое оперение самолета составляют 4 подвижных элевона (3) - аэродинамические органы управления, сочетающие функции элеронов при управлении углом крена самолета (элерон - подвижный элемент, который позволяет изменять подъемную силу) и руля высоты при управлении нормальной перегрузкой (руль высоты - управляющая поверхность, которая осуществляет вращение летательного аппарата вокруг поперечной оси). Элевоны расположены относительно продольной оси самолета под углом 45°. В вертикальном положении направленный вниз набегающий воздушный поток на элевонах создается винтом двигателя.
В вертикальном режиме система управления должна обеспечить стабилизацию аппарата в момент взлета и посадки. Управляющие поверхности самолета должны вовремя реагировать и менять свое положение для компенсации отклонения. Поднявшись вертикально вверх на определенную высоту и набрав необходимую скорость за счет тяги двигателя, самолет переходит в горизонтальное положение, где подъемная аэродинамическая сила обеспечивается за счет неподвижных крыльев. Также одним из режимов, в которых используется летательный аппарат такого типа, является зависание: самолет поднимается на заданную высоту и остается там в течение некоторого промежутка времени, а затем приземляется. Это может использоваться при наблюдении сверху за объектами, находящимися на достаточно близком расстоянии, когда самолет не нужно переводить в горизонтальное положение.
Система управления летательным аппаратом. Управление БПЛА осуществляется на базе контроллера «ArduPilot Mega 2560» 2, созданного для применения в автономных летательных аппаратах, автомобилях или судах. Плата разработана на базе 16-мегагерцового микроконтроллера «ATMega». Связь с контроллером осуществляется при помощи аналогового приемника «HiTEC RCD 9500» [2].
Бортовой комплекс «ArduPilot» является полнофункциональным средством навигации и управления БПЛА самолетной схемы. Комплекс обеспечивает: определение навигационных параметров, углов ориентации и параметров движения БПЛА (угловых скоростей и ускорений); навигацию и управление при полете по заданной траектории; стабилизацию углов ориентации самолета в полете; выдачу в канал передачи телеметрической информации о навигационных параметрах, углах ориентации БПЛА.
Центральным элементом бортового комплекса «Ardupilot» является малогабаритная инер-циальная навигационная система (ИНС), интегрированная с приемником спутниковой системы навигации.
Построенная на базе микроэлектромеханических датчиков (МЕМ8-гироскопов и акселерометров) по принципу бесплатформенной ИНС система гарантирует высокую точность навигации, стабилизации и управления летающим аппаратом. Встроенный датчик статического давления обеспечивает динамичное определение высоты и вертикальной скорости.
Состав бортового комплекса:
• блок ИНС;
• приемник спутниковой навигационной системы;
• блок автопилота;
• накопитель летных данных;
• датчик воздушной скорости ;
• трехосевой гироскоп, служащий для измерения углов отклонения БПЛА относительно инерциальных систем координат. Действие гироскопа основано на законе сохранения момента импульса;
• трехосевой акселерометр - датчик, определяющий направление вектора ускорения и его величину; принцип его действия основан на использовании закона инерции.
Комплекс совместим с радиоканалом и позволяет управлять летательным аппаратом как в ручном режиме со стандартного пульта дистанционного управления, так и в автоматическом -по командам автопилота. Управляющие команды автопилота генерируются в форме стандартных ШИМ-сигналов, подходящих к большинству типов исполнительных механизмов.
2 Официальный сайт «Hitec». URL: http://www.hitecrcd.com.
Автопилот способен одновременно стабилизировать полет и управлять навигацией, что устраняет необходимость в отдельной системе стабилизации, а также поддерживать режим «дистанционно управляемого полета (fly-by-wire)». Кроме того, преимуществами ArduPilot являются открытый исходный код, что позволяет вносить изменения в алгоритм, и доступность на рынке.
Технические характеристики ATMega:
• цифровые входы-выходы 54;
• аналоговые входы 16;
• тактовая частота 16 MHz.
Метод решения
Для создания имитационной компьютерной модели необходимо выбрать симулятор полета. При разработке симуляторов полета внимание сосредоточено непосредственно на моделировании полета, расчете реальных сил и моментов, действующих на отдельные части летательного аппарата. Также большое внимание уделяется визуальным аспектам, но основные усилия направлены на аэродинамику и полетные факторы, существующие в реальном мире.
Современные симуляторы предоставляют возможность исследователям тестировать и оценивать результаты их работ при помощи большого набора параметров, рассчитываемых во время симуляции. Благодаря понятному трехмерному изображению окружающей среды с учетом физических и кинематических факторов возможно создать реалистичную компьютерную модель.
Рассмотрены следующие авиасимуляторы.
• Microsoft Flight Simulator (MFS). Аэродинамическая модель полета основывается на наборе таблиц и не зависит от подсистемы визуализации.
• X-Plane. Использует метод конечных элементов для расчета динамики полета. В процессе работы симулятор разбирает самолет на множество маленьких элементов, а затем определяет действующие на каждый элемент силы, которые потом преобразуются в ускорения, скорости и положения.
• FlightGear. Свободно распространяемый, кроссплатформенный симулятор. Целью проекта является создание симулятора для использования в исследовательских и научных применениях. Симулятор позволяет получать доступ к большому числу внутренних переменных состояния. В зависимости от целей можно сконцентрироваться либо на разработке графического содержания модели самолета, либо на создании систем автоматического управления лета-
3
тельным аппаратом .
Поскольку в MFS и X-Plane невозможно создавать собственные модели самолетов, решено разрабатывать модель в среде FlightGear, так как данный авиасимулятор позволяет пользователю как модернизировать уже существующие, так и проектировать собственные летательные аппараты с нуля и распространяется по свободной лицензии. Гибкость этого симулятора дает возможность исследователям выбирать комбинацию модулей, которые наиболее соответствуют целям и задачам исследования.
FlightGear использует два способа вычисления модели полетной динамики (Flight Dynamic Model, FDM): JSBSim и YASim. Под полетной динамикой в данном случае понимается воздушная стабилизация летательного аппарата и его контроль в трех измерениях. YASim более специфичен, основной упор в этой среде сделан на моделирование вертолетов. JSBSim - это библиотека функций, рассчитывающая геометрическое положение самолета в реальном времени в зависимости от приложенных к нему управляющих усилий. Также она производит моделирование двигателей и управляющих поверхностей. На входе динамической модели (FDM) -положение джойстика. На выходе - три координаты, три их производные по времени, три вторые производные. На основе этих данных симулятор отображает движение модели самолета в виртуальном трехмерном пространстве, используя графический стандарт OpenGL. Описание составляется в виде тегов на языке XML. Кроме расчета параметров движения, программа
3 Введение в моделирование для авиасимулятора FlightGear. URL: http://www.flightgear.ru/wiki/ index.php.
также дает возможность моделировать автопилоты, положения управляющих поверхностей и т. д. Этот модуль является оптимальным для разработки имитационной модели.
Создание динамической модели БПЛА с вертикальным взлетом в программной среде JSBSim. JSBSim модулирует движение, вычисляя воздействия основных сил и моментов, которые имеют аэродинамическую природу. Они считаются приложенными к одной точке -центру тяжести (ЦТ) самолета, вокруг которого совершается вращательное движение в процессе полета [3]. ЦТ был определен эмпирически путем подвешивания аппарата. Этот метод является наиболее простым и удобным для малогабаритных самолетов.
Центр давления и центр тяжести не совпадают, и поэтому при моделировании силы, приложенные к различным поверхностям, пересчитываются и сводятся в одну точку. Чтобы учесть тот факт, что в действительности точки приложения сил разные, кроме сил необходимо использовать моменты [4]. Момент силы - векторная величина, равная произведению радиус-вектора, проведенного от оси вращения к точке приложения силы, на вектор этой силы [5]. При построении модели БПЛА JSBSim использует 6 степеней свободы.
Так как моделируемый БПЛА оснащен электрическим двигателем, в процессе полета не учитывается выработка топлива, благодаря чему положение ЦТ не меняется.
Также при моделировании необходимо учитывать меры инертности во вращательном движении вокруг осей (см. рис. 1) X, Y, Z - моменты инерции. Моменты определяются расчетным путем относительно главных осей инерции, проходящих через центр тяжести самолета. Для этого модель условно разделена на некоторое количество элементарных частей, каждая из которых имеет свою определенную массу. Расчет производился по следующей системе формул:
n n
Jx=Z m * z2+Z m * у<2;
i=i i=i
n n
Jx = Z m * x2+Z m *z2;
i=i i=i
n n
Jz = Z m * x2+Z m * у^
¿=1 ¿=1
где mi - масса рассматриваемого элемента, расположенного вдоль одной из главных осей самолета; i - порядковый номер элемента; n - общее количество элементов в самолете, на которые он был условно разбит [4].
В режиме горизонтального полета, называемого также крейсерским, на летательный аппарат действует сила тяжести -тяж, приложенная к центру аппарата, которая определяется как произведение массы самолета m (в нашем случае 4 килограмма) на ускорение свободного падения g (9,81 м/с2).
Силу тяжести компенсирует аэродинамическая подъемная сила самолета -под, создаваемая крылом и приложенная к центру давления. JSBSim рассчитывает подъемную силу аппарата как разность давлений на нижней и верхней поверхностях крыла, умноженную на площадь крыла [5]:
-^под (Рниж Рверх) S.
Перпендикулярно подъемной силе действуют сила тяги двигателя -тяги и сила сопротивления -сопр. Когда все эти силы уравновешены (их векторная сумма равна нулю), модель самолета движется горизонтально с постоянной скоростью.
Разрабатываемая модель БПЛА в отличие от обычного самолета, взлетающего с разбегом, поднимается в воздух вертикально и имеет нулевую скорость отрыва при взлете и нулевую скорость приземления при посадке относительно взлетно-посадочной площадки. При взлете необходимая для осуществления вертикального взлета и посадки самолета подъемная сила создается его электрическим двигателем. При этом подъемная сила должна превышать на 10-20 % взлетный вес аппарата.
При вертикальном взлете важно не допускать больших отклонений вектора тяги по оси Y и удерживать направление тяги в пределах 87-93°.
Для описания геометрических размеров БПЛА в XML-файле динамики создается секция «metrics». По умолчанию в JSBSim все величины имеют английские единицы измерения, од-
нако для удобства при моделировании возможно использовать метрическую систему, подключение которой осуществляется при помощи тега «unit»: <metrics>
<wingarea unit = «M2» > 0.391 </wingarea> - площадь крыла, м2; <wingspan unit =«M»> 1.5 </wingspan> - размах крыльев, м; <chord unit = «M» > 0.198 </chord> - САХ, м;
<wing_incidence unit = «DEG»> 2 </wing_incidence> - установочный угол крыла, град.; <htailarea unit= «M2» > 0.19 </htailarea> - плечо хвостового оперения, элевона, м; <htailarm unit = «M» > 0.314 </htailarm> - плечо крыла, м;
<location name = «ARP» unit =«М»> - положение ЦТ относительно начала координат; <x> 0.00 </x> <y> 0.43 </y> <z> 0.00 </z> </location> </metrics>
Положение ЦТ моделируемого самолета определяется в XML-файле значением опорной точки Aero Reference Point (ÁRP).
Секция «mass balance» (баланс масс) содержит информацию о весе самолета, также здесь задаются численные значения моментов инерции, которые были предварительно рассчитаны. <mass_balance>
<ixx uni t= «KG*M2»> 0.15 </ixx> - момент инерции - ось X; <iyy unit = «KG*M2»> 0.35</iyy> - момент инерции - ось Y; <izz uni t= «KG*M2»> 1.05 </izz> - момент инерции - ось Z; <emptywt unit = «KG»> 4 </emptywt> - вес аппарата; <pointmass> - дополнительная нагрузка;
</pointmass> </mass_balance>
В приведенной выше секции «mass balance» возможно моделировать полезную нагрузку с массой М и координатами X, Y, Z, которую может нести летательный аппарат. В случае добавления полезной нагрузки необходимо пересчитывать координаты ЦТ и моменты инерции.
В следующей секции - «ground reactions» (реакция земли) - описываются координаты и свойства точек, которыми БПЛА взаимодействует с взлетной площадкой. <ground_reactions>
<contact type = «STRUCTURE» name = «f 1»> - название опорной точки;
<location unit = «M»> - координаты опорной точки относительно начала координат; <x> 0.236 </x> <y> 0</y> <z> 0.131 </z> </location>
<static_friction> 0.8 </static_friction> - статическое трение стали и асфальта, кг*м/с2; <dynamic_friction> 0.5 </dynamic_friction> - динамическое трение стали и асфальта,
кг* м/с2;
<spring_coeff unit> 5000 </spring_coeff> - коэффициент упругости асфальта, Н/мм2; </contact>
</ground_reactions>
Моделируемый летательный аппарат устанавливается вертикально на взлетную площадку на 4-х стальных опорах, каждую из которых необходимо описать в секции «ground reactions». Подобным образом описываются все крайние точки самолета, которыми он может контактировать с землей в случае потери управления, - крайние точки крыльев, нос аппарата и т. д. [6]. В приведенном выше фрагменте показана передняя правая опора и ее координаты. Для нее, как и для любой другой точки, задаются стандартные параметры.
Наиболее важными в этой секции значениями являются величины трения. Трение покоя или статическое трение ^стат (static_friction) рассчитывается как произведение безразмерного
коэффициента трения покоя стали и асфальта (взлетной площадки) ц на силу нормальной реакции опоры N:
FCTaT = ц * N = ц * m * g.
Сила трения движения или динамическое трение ^дин (dynamic_friction) меньше, чем трение покоя. Рассчитывается аналогично статическому трению с той разницей, что вместо коэффициента ц подставляется безразмерный коэффициент трения скольжения к:
^дин = к * N = к * m * g.
В секции «propulsion» хранится информация о двигателях.
<propulsion>
<engine file =«electric 2.2 kW»> - элемент «engine» ссылается на конфигурационный файл «electric 2.2 kW»;
<location unit = «M» > - координаты двигателя относительно начала координат; <x> 0.00 </x> <y> 0.80 </y> <z> 0.00 </z> </location>
<orient unit=«DEG»> - установление вертикального направления тяги; <pitch> 90.00 </pitch> - тангаж; <roll> 0.00 </roll> - крен; <yaw> 0.00 </yaw> - рыскание; </orient>
<thruster file = «prop_01 «> - элемент «thruster» ссылается на конфигурационный файл «prop_01»;
<location unit = «М»> // координаты пропеллера; <x> 0.00 </x> <y> 0.85 </y> <z> 0.00 </z> </location>
<orient unit = «DEG»> - направление тяги пропеллера; <pitch> 90.00 </pitch> <roll> 0.00 </roll> <yaw> 0.00 </yaw> </orient> </thruster> </engine>
</propulsion>
Динамика JSBSim позволяет моделировать электрические двигатели. В описанном выше фрагменте секции «propulsion» элемент «engine» (двигатель) ссылается на внешний XML-файл «electric 2.2 kW», в котором описан тип двигателя, его мощность и т. д. Так как модель летательного аппарата разрабатывается с вертикальным взлетом, то направление тяги двигателя задается вертикально вверх. Это достигается за счет выставления угла 90° по тангажу (pitch), 0° - по крену (roll), 0° - по рысканию (yaw). Тангаж - угловое движение самолета относительно главной поперечной оси инерции (оси Z). Крен - движение летательного аппарата относительно продольной горизонтальной оси инерции (ось X). Рыскание - угловое движение БПЛА относительно вертикальной оси (ось Y) [5].
Пропеллер в описанной выше секции «propulsion» задается при помощи элемента «thruster», который ссылается на внешний конфигурационный файл «prop_01», содержащий расчет моментов инерции пропеллера, диаметр винта, количество лопастей и т. д. Тяга пропеллера направлена вверх под углом 90°, так как моделируется двигатель для вертикального взлета.
Секция «flight control» (управление полетом) описывает движение управляющих поверхностей и других движущихся частей самолета, влияющих на аэродинамику. В разрабатывае-
мой модели БПЛА функцию управляющих поверхностей выполняют 4 подвижных элевона, обозначенные цифрами 1-3 (рис. 2). Элевоны расположены под углом 45° относительно центральной продольной оси самолета.
Рис. 2. Расположение элевонов модулируемого летательного аппарата
Командами, которые задаются в секции «flight control», осуществляется управление аппаратом. Нужные команды передаются динамике JSBSim извне путем изменения входных переменных, затем эти команды преобразуются в переменные положения в соответствии с физическими особенностями движения управляющих поверхностей - элевонов. Эти переменные являются входными значениями для функций следующей секции - аэродинамики 4.
Поскольку система управления самолетом достаточно сложна, в секции «flight control» применяются именованные каналы, чтобы обеспечить некоторое логическое упорядочивание. В канале описывается последовательная цепочка элементов, каждый из которых определенным образом преобразует входные данные:
<flight_control name = «FCS: Model_1»> - заголовок секции; <channel name = «Roll»> - канал управления по крену; <summer name = «Roll Trim Sum»> - сумматор;
<input> fcs/ailevon-cmd-norm </input> - начальное значение положения элевона; <input> fcs/roll-trim-cmd-norm </input> - крен; <clipto> - ограничение диапазона выходного значения; <min> -1 </min> <max> 1 </max> </clipto> </summer>
<aerosurface_scale name = «Left Front Ailevon Control»> - канал управления для переднего левого элевона;
<input> fcs/roll-trim-sum </input> - входной параметр второго сумматора; <range> - диапазон отклонения элевонов от начального положения в радианах; <min> -0.6109 </min> <max> 0.6109 </max> </range>
<output> fcs/left-ailevon-pos-rad </output> - выходное положение элевона относительно начального значения в радианах; </aerosurface_scale>
</channel>
</flight_control>
4 «Основы аэродинамики JSBSim для авиасимулятора FlightGear». URL: http://www.flightgear.ru/ wiki/index.php.
В приведенном выше фрагменте описания используется канал управления креном «Roll». Он состоит из единственного элемента - сумматора с именем «Roll Trim Sum». На вход сумматора подаются 2 значения переменных, которые затем используются в канале управления передним левым элевоном.
Элемент «aerosurface_scale», являющийся каналом управления для переднего левого элевона, преобразует входное значение в выходное в заданном диапазоне без временных задержек. Этот элемент, по сути, является моделью идеальной рулевой машины. Значение -1, поданное на вход, преобразуется в величину -0,6109, а переменная 1 - в 0,6109. Значения ±0,6109 в радианах соответствуют ±35°, так как элевоны модулируемого летательного аппарата максимально отклоняются от нулевого положения на ±35°. Подобным образом моделируется управление остальными элевонами для режима вертикального полета.
Секция «aerodynamics» (аэродинамика). Она является основной при построении модели БПЛА и объединяет данные о вычисленном значении положения управляющих поверхностей (flight_control), тяги и мощности двигателей (propulsion), массы аппарата, метрических характеристик и т. д.
Секция «aerodynamics» разделена на 6 фиксированных разделов - аэродинамических осей (axis), подобно тому, как секция «flight control» делится на каналы управления. Но каналов может быть произвольное число - оно зависит от модели самолета, особенностей горизонтального и хвостового оперения. Силы, которые действуют на центр тяжести и моделируют перемещение аппарата относительно нуля координат, обозначены как «LIFT», «DRAG», «SIDE». «LIFT» - смещение по оси X, «DRAG» - по оси Z, «SIDE» - по оси Y. Моменты, поворачивающие модель вокруг соответствующей оси и проходящие через ЦТ, обозначаются как «PITCH», «ROLL», «YAW». Они моделируют повороты летательного аппарата по тангажу, крену и рысканию. JSBsim суммирует все силы и моменты по соответствующим осям [6]. В секции «aerodynamics» в качестве параметров используются вычисленные ранее переменные из секции «flight control».
Запуск модели БПЛА в авиасимуляторе. Для построения графического изображения самолета в формате 3D использован свободный программный пакет для создания трехмерной компьютерной графики Blender (рис. 3). Этот редактор имеет широкий выбор средств моделирования и распространяется по открытой лицензии. В Blender создана графическая модель беспилотного аппарата, которая сохраняется в файле формата .ac, поддерживаемого авиаси-мулятором FlightGear.
Для визуализации в авиасимуляторе Б^ЫОеаг графический 3Б-объект перенесен в созданную в директории симулятора папку «Model_1». Далее создан установочный ХМЬ-файл, который связал динамическую модель и визуальное 3Б-изображение самолета. В установоч-
Рис. 3. Модель БПЛА в графическом редакторе Blender
ном файле заданы координаты начальных точек обзора БПЛА в авиасимуляторе, визуальные эффекты и т. д.
Рис. 4. Модель БПЛА в авиасимуляторе
В настоящее время проводятся работы по расширению модели БПЛА, в частности, добавлена имитация продольного движения в режиме горизонтального полета с использованием программной среды МЛТЬЛБ 8тиНпк.
Рис. 5. Общая схема модели продольного движения БПЛА в среде MATLAB Simulink
Расширенная модель состоит из следующих основных блоков (рис. 5):
• стандартный блок Simulink «ISA Atmosphere Model» - инструмент для математического описания околоземной атмосферы;
• блок вычисления аэродинамических коэффициентов;
• блок расчета системы дифференциальных уравнений продольного движения БПЛА в связанной системе координат;
• блок «Движение», моделирующий перемещение самолета относительно земной системы координат;
• стандартный блок Simulink «6DoF Animation», визуализирующий движение летательного аппарата с шестью степенями свободы.
Заключение
Многократные испытания модели в авиасимуляторе показали, что поведение аппарата удовлетворяет поставленным критериям. Самолет взлетает вертикально при запущенном двигателе, при подъеме вверх и посадке можно изменять скорость, убавляя или прибавляя тягу. Опорные точки корректно взаимодействуют с взлетной площадкой. Выяснилось, что недостатком разработанной системы управления является неполная компенсация крутящего момента, создаваемого пропеллером электрического двигателя, в режиме маневренного перемещения летательного аппарата. В настоящее время ведется доработка системы управления, которая позволит устранить обнаруженные недостатки.
Список литературы
1. Коносевич В. В. Отчет о научно-исследовательской работе «Разработка научно-методических подходов и технологий использования беспилотных летательных аппаратов в лесном хозяйстве». Пушкино: Фед. агентство лесного хозяйства (Россельхоз), 2010.
2. Павлушенко М. И., Макаренко И. К. Беспилотные летательные аппараты: история, применение и перспективы развития. М.: Права человека, 2005.
3. Galbraith B. JSBSim Script Tutorial. Holy Cows, Inc., 2010.
4. Котик М. Г., Павлов А. В. Летные испытания самолетов. М.: Машиностроение, 1968.
5. Пышнов В. С. Аэродинамика самолета. М.; Л., 1937.
6. Berndt J. S. JSBSim: An Open Source, Platform-Independent, Flight Dynamics Model in C++. Jon S. Berndt & the JSBSim Development Team, 2011.
Материал поступил в редколлегию 06.02.2013
T. A. Andryuchshenko, A. A. Kusainov
DEVELOPMENT OF DYNAMIC MODEL UNMANNED AIRCRAFT WITH VERTICAL TAKE-OFF
In this paper a method of constructing of a flight dynamic model of an unmanned aircraft with vertical take-off is presented. JSBSim flight dynamics calculation program is used for description and analysis of the model, results are visualized in real time by the FlightGear simulator, a graphic model of the aircraft is created in Blender 3D editor. Keywords: unmanned aircraft, flight dynamic model, vertical take-off, flight simulator.