62 Star 493 Fork 191

GVPwwy/UAVS

Create your Gitee Account
Explore and code with more than 12 million developers,Free private repositories !:)
Sign up
Clone or Download
contribute
Sync branch
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README
BSD-3-Clause

输入图片说明

UAVS_Drone Intelligent UAV path planning simulation system is a software with fine operation control, strong platform integration, omnidirectional model building and application automation. It takes the UAV war between A and B in Zone C as the background. The core function of the system is to plan the UAV route through the simulation platform and verify the output. The data can be imported into the real UAV to make it accurately arrive at any position in the battlefield according to the specified route and support the joint action of multi-person and multi-device formation.

Video Introduction

Installation manual, click to view

Main Features

Intelligent UAV path planning simulation system
System supported by open source SITL uav simulation platform, through FlightGear rendering real battlefield environment, integrated modeling, 2 d vertical, three-dimensional dynamic model simulation, script control, ground station monitoring, data processing, and other functions, in addition, the simulation system supports a variety of global map load, simulate the key region of the three dimensional environment, can be used throughout the global remote sensing monitoring in the scene.

1. Software Interface

Software Interface

2. Software Architecture (plug-ins to be implemented for some extended functions)

Software Architecture

3. Code

The code

4. Multidimensional View

Two-dimensional view (1)

Two-dimensional view (1)

Two-dimensional view (2)

Two-dimensional view (2)

3d view

3d view

5. UAV Control

Console Control

 Console Control

Intelligent Control

Intelligent Control

Ground Station Control

Ground Station Control

6. Set Flight Mission

Flight Mission(1)

Flight Mission(1))

Flight Mission(2)

Flight Mission(2)

Flight Mission(3)

Flight Mission(3)

7. Path planning

The path algorithm is based on the redevelopment of Huiming Zhou's open source algorithm library (ZHM-Real /PathPlanning), adding elements such as UAV simulation, geographic coordinate conversion, and Leaflet visualization.

Directory Structure

drone_PathPlanning.
	├─fence.txt
	├─leaflet_folium_plot.py
	├─mission.waypoints

	├─folium-0.12.1

	├─leaflet

	├─results

	├─Sampling_based_Planning
	│  ├─algorithm_mission_rrt2D
	│  │      algorithm_mission_batch_informed_trees.waypoints
	│  │      algorithm_mission_dubins_rrt_star.waypoints
	│  │      algorithm_mission_dynamic_rrt.waypoints
	│  │      algorithm_mission_extended_rrt.waypoints
	│  │      algorithm_mission_fast_marching_trees.waypoints
	│  │      algorithm_mission_informed_rrt_star.waypoints
	│  │      algorithm_mission_rrt.waypoints
	│  │      algorithm_mission_rrt_connect.waypoints
	│  │      algorithm_mission_rrt_star.waypoints
	│  │      algorithm_mission_rrt_star_smart.waypoints
	│  │      
	│  ├─indoor_obstacle_avoidance_rrt3D
	│  │      IOAPath_rrt3D.waypoints
	│  │      IOAPath_rrt_star3D.waypoints
	│  │      IOA_BIT_star3D.waypoints
	│  │      IOA_extend_rrt3D.waypoints
	│  │      
	│  ├─rrt_2D
	│  │      batch_informed_trees.py       BIT*算法
	│  │      draw.py
	│  │      dubins_path.py                Dubins路径算法
	│  │      dubins_rrt_star.py            Dubins_rrt*算法
	│  │      dynamic_rrt.py                动态RRT算法
	│  │      env.py
	│  │      extended_rrt.py               Extended_RRT算法
	│  │      fast_marching_trees.py        FMT*算法
	│  │      informed_rrt_star.py          Informed_rrt*算法
	│  │      judge.py
	│  │      plotting.py
	│  │      queue.py
	│  │      rrt.py                        rrt算法
	│  │      rrt_connect.py                RRT_CONNECT算法
	│  │      rrt_star.py                   rrt*算法
	│  │      rrt_star_smart.py             rrt*-Smart算法
	│  │      utils.py
	│  │      __init__.py
	│  │          
	│  ├─rrt_2D_路径优化效果图
	│  │      
	│  ├─rrt_3D
	│  │     ABIT_star3D.py
	│  │     BIT_star3D.py
	│  │     dynamic_rrt3D.py
	│  │     env3D.py
	│  │     extend_rrt3D.py
	│  │     FMT_star3D.py
	│  │     informed_rrt_star3D.py
	│  │     plot_util3D.py
	│  │     queueL.py
	│  │     rrt3D.py
	│  │     rrt_connect3D.py
	│  │     rrt_star3D.py
	│  │     utils3D.py
	│  │          
	│  └─rrt_3D_室内避障效果图

	└─Search_based_Planning
		├─algorithm_mission_Search2D
		│      algorithm_mission_Anytime_D_star.waypoints
		│      algorithm_mission_ARAstar.waypoints
		│      algorithm_mission_Astar.waypoints
		│      algorithm_mission_Best_First.waypoints
		│      algorithm_mission_bfs.waypoints
		│      algorithm_mission_Bidirectional_a_star.waypoints
		│      algorithm_mission_Bidirectional_dfs.waypoints
		│      algorithm_mission_Bidirectional_Dijkstra.waypoints
		│      algorithm_mission_Bidirectional_D_star.waypoints
		│      algorithm_mission_Bidirectional_D_star_Lite.waypoints
		│      algorithm_mission_Bidirectional_LPAstar.waypoints
		│      algorithm_mission_Bidirectional_LRTAstar.waypoints
		│      algorithm_mission_Bidirectional_RTAAStar.waypoints

		├─indoor_obstacle_avoidance_Search_3D
		│      IOA_Anytime_Dstar3D.waypoints
		│      IOA_Astar3D.waypoints
		│      IOA_bidirectional_Astar3D.waypoints
		│      IOA_Dstar3D.waypoints
		│      IOA_DstarLite3D.waypoints
		│      IOA_LP_Astar3D.waypoints
		│      IOA_LRT_Astar3D.waypoints
		│      IOA_RTA_Astar3D.waypoints

		├─Search_2D
		│     Anytime_D_star.py           AnytimeD*搜索算法
		│     ARAstar.py                  ARA*搜索算法
		│     Astar.py                    A*搜索算法
		│     Best_First.py               最佳路径优先搜索算法
		│     bfs.py                      广度优先算法
		│     Bidirectional_a_star.py     双向A*搜索算法
		│     dfs.py                      深度优先搜索算法
		│     Dijkstra.py                 Dijkstra搜索算法
		│     D_star.py                   D*搜索算法
		│     D_star_Lite.py              D*反向搜索算法
		│     env.py
		│     LPAstar.py                  终身规划A*算法
		│     LRTAstar.py                 LRTA*搜索算法
		│     plotting.py
		│     queueL.py
		│     RTAAStar.py                 RTAA*搜索算法

		├─Search_2D_路径优化效果图

		├─Search_3D
		│     Anytime_Dstar3D.py
		│     Astar3D.py
		│     bidirectional_Astar3D.py
		│     Dstar3D.py
		│     DstarLite3D.py
		│     env3D.py
		│     LP_Astar3D.py
		│     LRT_Astar3D.py
		│     plot_util3D.py
		│     queueL.py
		│     RTA_Astar3D.py
		│     utils3D.py

		└─Search_3D_室内避障效果图

Outdoor obstacle avoidance

Custom routes and obstacle areas

自定义路线与障碍区

rrt_2D Path optimization effect chart

rrt_2D_路径优化效果图

Search_2D Path optimization effect chart

Search_2D_路径优化效果图

Indoor obstacle avoidance

Because the indoor structure has the characteristics of narrow space and many distractions, the path planning degree at this time focuses more on the effect of three-dimensional obstacle avoidance, and the map is meaningless. Based on Huiming Zhou's open source algorithm library, the indoor environment was created using the idea of modeling, and the 3D algorithms of Search_based_Planning and Sampling_based_Planning were used to plan the flight path for obstacle avoidance. The flight demo is as follows:
IOA_DstarLite3D.gif

rrt_3D_Indoor obstacle avoidance renderings

rrt_3D_室内避障效果图

Search_3D_Indoor obstacle avoidance renderings

Search_3D_室内避障效果图

Path optimization

To optimize the flight paths of multiple UAV clusters, we add random, greedy, path optimal algorithm clustering, regional path random generation, regional path shortest distance first generation algorithm.

The algorithm generates the flight status of each UAV, the navigation point and the flight distance information

路径优化-1

Path optimization effect chart

路径优化效果

Solve The Problem

Intelligent UAV path planning simulation system solves the problem that ordinary UAV can not accurately plan the path, and ordinary UAV is not enough support, inconvenient to control, difficult to use in the actual war. This software can be designed for flight mission routes in advance, using a flight simulator unmanned aerial vehicle (uav) in the real-time state of mission, through strengthening unmanned aerial vehicle (uav) in the system against ground station module control, simulation of the unmanned aerial vehicle (uav) group of joint action tactical fighting, sailing and output data for the use of real unmanned aerial vehicle (uav), the uav size short, quick release, huge resource advantage as far as possible.

Application Scenarios And Benefits

Up to now, more than 40 countries are engaged in the research and production of UAVs, and more than 60 countries are using UAVs. The use of drones on the battlefield is the future of warfare.

The advantage of using this software is that it absorbs the results obtained abroad, recompiles and transplants the operating environment from Linux system to Windows and other operating systems, and uses Python language to write the program except the simulation 3D environment module. The program is easy to maintain and modify. The software interface prepared by PyQT5 integrates each module of the software, adds background prompt function, designs intelligent control scripts to simplify the use process of the system, and integrates FlightGear simulator and MissionPlanner ground station program for visualization, so as to improve the accuracy of real UAV flight path and specify flight plan as the fundamental purpose.

EXTENSION

On the formation simulation of multi-UAV

Using SITL to simulate multi-UAV formation under Windows, please refer to the following article. Note that the path should be tested under ArduCopter/ :
https://blog.csdn.net/jzhd2015/article/details/108987818
电风扇的成熟度
Test of two-plane formation path algorithm: 4326547 It can plan the flight path of left wing and right wing UAV respectively: 6464161

About the flight line under Flylitchi

I happened to see it on the oil pipe. After planning the flight route on the ground station Mission Planner and saving the navigation point, I could edit it with Excel, and then import the modified data in CSV format through the webpage or Android Litchi, so as to realize the DJI UAV flying in accordance with the flight route on the Litchi App.
1.The web version can be edited directly on Flylitchi's website:https://flylitchi.com/hub
Use method is very simple, visible "good know" tutorial:http://www.howzhi.com/course/13669/lesson/84384

2.Litchi 4.7 APP editor for Android phone:https://www.52pojie.cn/thread-834234-1-1.html
Baidu network disk link: https://pan.baidu.com/s/14qzvBuRIYhr_LhL7BRjd4Q Extract the code: w5eu
Built-in dual map, no need to download Google application, so that your Royal Air also has navigation point function.
Android:Litchi for DJI Mavic / Phantom / Inspire / Spark Version 4.7.0

  • Panoramic mode speed and reliability improvements
  • Panorama mode Settings improved
  • Fixed failure to change the application language on some devices

Mission Planner + Google Earth log generates 3D trajectory maps

Google China satellite map is used instead. It mainly imports the planned path generated by the Mission Planner or the console of the ground station to the map, with.waypoint or KMZ file as the main file.
1111

CoppeliaSim simulation (updated November 1, 2023)

Up to now, the project has exceeded 400 star in GitHub, and Gitee is about to break through 400 star. Before, there was user feedback that the three-dimensional environment was not three-dimensional enough, and the simulation style was too simple. Now, the three-dimensional indoor obstacle avoidance is added to the CoppeliaSim simulation environment, and the Atar algorithm is used to show the effect. Shorten the distance between UAV and target)

CoppeliaSim simulation environment

CoppeliaSim避障1

CoppeliaSim simulation results

20231101-CoppeliaSim避障 00_00_00-00_00_30

Please wait for updates on other extensions....

Gratitude

CSDN:
https://blog.csdn.net/qinguoxiaoziyangyue/article/details/77712064
https://blog.csdn.net/guojunxiu/article/details/79158843
https://blog.csdn.net/huihut/article/details/86587782
https://blog.csdn.net/u010946448/article/details/90718264
https://blog.csdn.net/jzhd2015/article/details/108987818
https://blog.csdn.net/jzhd2015/article/details/108663961
Zhihu:
https://zhuanlan.zhihu.com/p/50900595
https://zhuanlan.zhihu.com/p/62017292
Freesion:
https://www.freesion.com/article/2344608320/
Gitee:
https://gitee.com/wwy2018/XTDrone
Github:
https://github.com/dhondta/dronesploit

Project Link

JianShu:https://www.jianshu.com/p/b1e6b2efb96f
Github:https://github.com/wangwei39120157028/UAVS
Gitee:https://gitee.com/wwy2018/UAVS
Welcome To Star!!!

BSD 3-Clause License Copyright (c) 2021, wwy All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

About

智能无人机路径规划仿真系统是一个具有操作控制精细、平台整合性强、全方向模型建立与应用自动化特点的软件。它以A、B两国在C区开展无人机战争为背景,该系统的核心功能是通过仿真平台规划无人机航线,并进行验证输出,数据可导入真实无人机,使其按照规定路线精准抵达战场任一位置,支持多人多设备编队联合行动。 expand collapse
JavaScript and 6 more languages
BSD-3-Clause
Cancel

Releases

No release

Contributors

All

Activities

Load More
can not load any more
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/wwy2018/UAVS.git
git@gitee.com:wwy2018/UAVS.git
wwy2018
UAVS
UAVS
master

Search