Реалистичный симулятор полета беспилотного летательного аппарата (БПЛА) типа Aerosonde с системой управления полной энергией (TECS). Проект разработан в рамках учебной практики по моделированию динамики полета и автоматическому управлению.
- Реалистичная аэродинамическая модель самолета Aerosonde с учетом срыва потока
- 3D визуализация полета в реальном времени
- TECS контроллер для управления высотой и скоростью
- Ручное управление рулями и дросселем
- Моделирование ветра и турбулентности
- Тестовые воздействия для проверки динамики
- Интерактивная панель управления с ползунками и кнопками
- Построение графиков всех параметров полета
- Python 3.8+
- PyQt5 - графический интерфейс
- PyQtGraph + OpenGL - 3D визуализация
- NumPy - математические вычисления
- SciPy - решение дифференциальных уравнений
- Matplotlib - построение графиков
UAV-TECS-Simulator/
│
├── main.py # Точка входа
├── requirements.txt # Зависимости
├── README.md # Документация
├── .gitignore # Игнорируемые файлы
│
├── core/ # Основная логика
│ ├── quaternion_utils.py # Работа с кватернионами
│ ├── vehicle_state.py # Состояние БПЛА
│ ├── vehicle_dynamics.py # Динамика полета
│ └── tecs_controller.py # TECS контроллер
│
├── visualization/ # Визуализация
│ ├── viewer_3d.py # 3D отрисовка
│ └── plot_utils.py # Построение графиков
│
└── gui/ # Интерфейс
├── main_window.py # Главное окно
└── control_panel.py # Панель управления
**Клонируйте репозиторий**
git clone https://github.com/UnreadablePerson-wq/UAV-TECS-Simulator.git
cd UAV-TECS-Simulator
Создайте виртуальное окружение (рекомендуется)
python -m venv venv
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windows
Установите зависимости
pip install -r requirements.txt
Запустите симулятор
python main.py
TECS: включение/выключение, задание высоты и скорости
Ручное управление: дроссель (0-100%), элероны, руль высоты, руль направления
Ветер: настройка постоянной составляющей ветра
Тестовые кнопки: ступенчатые воздействия для проверки реакций
Слайдеры: изменение начальных условий
В программе предусмотрены тестовые режимы:
- Ступенчатое изменение высоты;
- Ступенчатое изменение скорости;
- Одновременное изменение обоих параметров;
- Тест рулей (элероны, руль высоты, руль направления);
- Тест внешних моментов.
Симулятор позволяет:
- Исследовать динамику полета БПЛА;
- Настраивать коэффициенты TECS контроллера;
- Анализировать переходные процессы;
- Визуализировать траекторию полета;
- Оценивать влияние ветра на управление.
Координаты NED (North-East-Down): высота отрицательная при полете вверх
Балансировочный режим: скорость 25 м/с, тангаж 4.5°, дроссель 70%
Все коэффициенты аэродинамики взяты из документации Aerosonde
MIT License - можно использовать для обучения и портфолио
Vanemy
- GitHub: @UnreadablePerson-wq
- Специализация: ML/AI инженер, киберфизические системы
- Ищу работу в России, г. Санкт-Петербург
Если проект полезен, поставьте звездочку на GitHub!