CN110955261A - Simulation method of fixed-wing unmanned aerial vehicle autopilot based on ROS - Google Patents
Simulation method of fixed-wing unmanned aerial vehicle autopilot based on ROS Download PDFInfo
- Publication number
- CN110955261A CN110955261A CN201911268763.3A CN201911268763A CN110955261A CN 110955261 A CN110955261 A CN 110955261A CN 201911268763 A CN201911268763 A CN 201911268763A CN 110955261 A CN110955261 A CN 110955261A
- Authority
- CN
- China
- Prior art keywords
- unmanned aerial
- aerial vehicle
- path
- module
- simulation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 57
- 238000000034 method Methods 0.000 title claims abstract description 33
- RZVHIXYEVGDQDX-UHFFFAOYSA-N 9,10-anthraquinone Chemical compound C1=CC=C2C(=O)C3=CC=CC=C3C(=O)C2=C1 RZVHIXYEVGDQDX-UHFFFAOYSA-N 0.000 claims abstract description 11
- 238000007726 management method Methods 0.000 claims abstract description 11
- 238000013461 design Methods 0.000 claims abstract description 5
- 230000005540 biological transmission Effects 0.000 claims description 18
- 238000004422 calculation algorithm Methods 0.000 claims description 13
- 238000005259 measurement Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 5
- 238000009499 grossing Methods 0.000 claims description 5
- 230000004927 fusion Effects 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 7
- 230000000007 visual effect Effects 0.000 abstract description 3
- 238000004519 manufacturing process Methods 0.000 abstract 1
- 239000003642 reactive oxygen metabolite Substances 0.000 description 17
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000002706 hydrostatic effect Effects 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000007123 defense Effects 0.000 description 2
- 238000011439 discrete element method Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- ATJFFYVFTNAWJD-UHFFFAOYSA-N Tin Chemical compound [Sn] ATJFFYVFTNAWJD-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000009530 blood pressure measurement Methods 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013016 damping Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003028 elevating effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/10—Simultaneous control of position or course in three dimensions
- G05D1/101—Simultaneous control of position or course in three dimensions specially adapted for aircraft
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
The invention discloses a simulation method of an automatic pilot of a fixed wing unmanned aerial vehicle based on ROS, which is used for building an environment model in a Gazebo or manufacturing a digital elevation model, a satellite image and the like to be led into the Gazebo for use. And the automatic driving system of the single fixed-wing unmanned aerial vehicle adopts a modularized design. The whole system comprises a sensor module, a state estimation module, an unmanned aerial vehicle flight control module, a path following module, a path management module and a path planning module. Guiding the constructed single fixed wing unmanned aerial vehicle model into a Gazebo, and starting to carry out simulation on the single fixed wing unmanned aerial vehicle automatic pilot; based on the ROS platform, the traditional fixed-wing unmanned aerial vehicle simulation is converted into the open type robot system simulation of the sub-modules, and the ROS platform can be distributed, so that the possibility of multi-machine simulation is provided. By utilizing the Gazebo three-dimensional physical simulation platform, the problems of poor simulation visual effect, low simulation degree and unreal physical simulation effect of the traditional simulation mode are solved.
Description
Technical Field
The invention relates to the technical field of unmanned aerial vehicle flight, in particular to a simulation method of an automatic pilot of a fixed-wing unmanned aerial vehicle based on ROS.
Background
ROS is an english abbreviation of the Robot Operating System. It provides services designed for heterogeneous computer clusters, such as hardware abstraction, low-level device control, implementation of common functions, message passing between processes, and package management. The ROS provides a software package that integrates the ROS with a Gazebo simulator. Among them, Gazebo is an open source 3D robot simulator integrating the ODE physics engine, OpenGL rendering and supporting code for sensor simulation and actuator control, which provides realistic rendering of the environment, including high quality lighting, shading and texturing.
Drones play an increasingly important role in defense planning and defense strategies worldwide. The method has wide application in military affairs, such as anti-terrorism, monitoring and relay communication. The method has wide potential application in civil and commercial fields, including environmental monitoring, forest fire detection, border patrol, aerial monitoring and surveying and mapping, fine agriculture, self-organizing communication network, rural search and rescue. However, to be developed, the reliability of the drone system must be increased, its functionality must be expanded, its ease of use must be improved, and its cost must be reduced. Considering the high cost of the real flight experiment of the fixed-wing unmanned aerial vehicle, the simulation experiment can not only check the correctness and robustness of the flight control system, but also effectively reduce the experiment cost.
With the expansion of the application range of the unmanned aerial vehicle and the more complex task, the closed design mode adopted by the traditional unmanned aerial vehicle control system can not adapt to the requirements of the current times by closely coupling software and hardware aiming at the unmanned aerial vehicle with a specific model. The open type robot system has the characteristics of standardization and modularization. The unmanned aerial vehicle system comprises the function node of a plurality of different functions. The nodes communicate with each other by means of topic, service and action. The method has the characteristics of short development period and easy modification and reconstruction.
Disclosure of Invention
In order to solve the technical problems in the background art, the invention provides a simulation method of an ROS-based autopilot of a fixed-wing unmanned aerial vehicle, which not only provides a relatively real simulation effect of the autopilot of the fixed-wing unmanned aerial vehicle, but also adopts a loose coupling mode among functional modules, improves the reusability of functions, and simultaneously greatly reduces the difficulty of expanding new functions.
In order to achieve the purpose, the technical scheme adopted by the invention is a simulation method of an ROS-based fixed wing unmanned aerial vehicle autopilot, which comprises the following steps,
s1: an environment model is built in a Gazebo, or a Digital Elevation Model (DEM), a satellite image, and the like are introduced into the Gazebo for use.
S2: and the automatic driving system of the single fixed-wing unmanned aerial vehicle adopts a modularized design. The whole system comprises a sensor module, a state estimation module, an unmanned aerial vehicle flight control module, a path following module, a path management module and a path planning module. The sensor module comprises an airspeed sensor, a pressure sensor, a GPS receiver, a six-axis inertial measurement sensor, a digital compass and a speedometer.
The sensor module obtains state parameters of the unmanned aerial vehicle in the flying process through each sensor. The six-axis inertial measurement sensor includes a three-axis angular rate gyro and a three-axis accelerometer.
The state estimation module estimates the position, velocity and attitude of the drone through an attitude filter and a position filter for GPS smoothing based on a standard extended kalman filter in combination with sensor parameters.
The unmanned aerial vehicle flight control module is a series of nested PID controllers and is used for realizing the transverse state control and the longitudinal state control of the fixed wing.
The path following module is used for realizing the following of the fixed wing straight line and the track path.
The path management module outputs the flight path of the unmanned aerial vehicle through a rounded corner path algorithm or a Dubins path algorithm by reading in path points and path point yaw angles.
The planned path module is a preset unmanned plane planned path.
For different fixed-wing unmanned aerial vehicles, different model parameters, flight dynamics parameters and the like of the unmanned aerial vehicles are modified in a star-yaml parameter file writing mode, so that the simulation purpose of the automatic pilot under various different fixed-wing unmanned aerial vehicles is achieved.
S3: guiding the constructed single fixed wing unmanned aerial vehicle model into a Gazebo, and starting to carry out simulation on the single fixed wing unmanned aerial vehicle automatic pilot;
furthermore, the modules communicate and transmit data through topic and service, and further the automatic pilot simulation of the fixed-wing unmanned aerial vehicle is realized. The ROS uses a message mode TCPROS based on TCP/IP, wherein a TCP/IP Transmission Control Protocol (TCP) is a Transmission Control Protocol and is called TCP/IP. From the viewpoint of the internet protocol layer, the transmission control protocol TCP is used based on ip (internet protocol), thereby ensuring data transmission and performing transmission/reception in the order of transmission.
Further, the data inflow and outflow relationship among the modules is as follows: the method comprises the steps that current unmanned aerial vehicle sensor data are obtained by an airborne airspeed sensor, a pressure sensor, a GPS receiver and a six-axis inertial measurement sensor in real time, and the obtained data are filtered and denoised and then are issued to corresponding sensor data topics.
Further, the state estimation module subscribes to the sensor data topic, after the sensor data is obtained, attitude fusion is carried out through expanding a Kalman filtering algorithm, and the real-time position, speed and attitude of the unmanned aerial vehicle are solved and then issued to the unmanned aerial vehicle state topic. And writing a preset planning path into the planning path module by writing an x-cpp file or issuing a message by an mqtt protocol, and issuing the planning path to a planning path topic. And the path management node subscribes data of the unmanned aerial vehicle state topic and the planning path topic, calculates the actual following path of the unmanned aerial vehicle according to the rounded corner path or the Dubins path algorithm and publishes the result to the current path topic.
Further, the path following module subscribes to the unmanned aerial vehicle state topic and the current path topic, calculates the unmanned aerial vehicle control command and issues the unmanned aerial vehicle control command to the control command topic. And finally, the unmanned aerial vehicle flight control module converts the unmanned aerial vehicle control command into specific unmanned aerial vehicle speed and attitude control by subscribing the unmanned aerial vehicle state topic and the control command topic, adjusts the state of the unmanned aerial vehicle and forms a closed loop of the whole automatic pilot.
Compared with the prior art, the invention has the beneficial effects that:
based on the ROS platform, the traditional open type robot system simulation of the fixed wing unmanned aerial vehicle simulation conversion sub-module is realized, and on the premise of ensuring the stability and the robustness of the original simulation system, the expansibility and the universality of the simulation system and the reusability of codes are greatly improved. The distributable of the ROS platform also provides the possibility of multi-machine simulation.
The invention is not limited to a specific unmanned aerial vehicle model, and the aim of simulating the automatic pilot of the universal unmanned aerial vehicle can be realized by configuring the yacml file and modifying the parameters of each module.
By utilizing the Gazebo three-dimensional physical simulation platform, vivid physical effects, environment effects and simulation results with more dimensions are provided, and the problems of poor simulation visual effect, low simulation degree and unreal physical simulation effect of the traditional simulation mode are solved.
Drawings
FIG. 1 is a flow chart of the simulation steps of the present invention;
fig. 2 is a schematic diagram of an open type single fixed wing drone autopilot module structure and data flow;
FIG. 3 is a block diagram of a lateral control autopilot;
FIG. 4 is a diagram illustrating simulation results according to an embodiment of the present invention.
Detailed Description
In order that those skilled in the art will better understand the technical solutions of the present invention, the present invention will be further described in detail with reference to the following detailed description.
The embodiment of the invention provides a simulation system of an automatic pilot of a fixed-wing unmanned aerial vehicle based on ROS (reactive oxygen species), and fig. 1 is a flow chart of simulation steps of the simulation system, and the simulation system comprises the following steps:
s1: and creating a scene environment model of the simulation process to realize more vivid real physical simulation with better visual angle effect. The following 3 methods can be used:
(1) and directly building a scene environment model in a Gazebo. Cubes, spheres and cylinders can be added quickly above the rendering window, and more complex models can be added through the Gazebo model database including but not limited to robots, tables and chairs and buildings. The pose of each model can be adjusted by translation, rotation and scaling. The attribute setting column can also set physical attributes of each model in the simulation process, such as collision attribute, inertia attribute and the like. After the building is completed, the sdf file can be saved for later use. In addition, a more detailed and realistic three-dimensional building model can be built in the building editor according to the imported floor plan, and the model can be provided with textures.
(2) A Digital Elevation Model (DEM) is used. A digital elevation model is a 3D representation of a terrain surface that does not contain anything like buildings or vegetation. DEMs are typically created by the use of sensors such as LIDAR, radar or video cameras in combination. The terrain elevation at the surface location is sampled at regularly spaced horizontal intervals. DEM terminology is a generic name only and not a specific format. In practice, DEMs can be represented as an elevation grid (grid) or a vector-based Triangular Irregular Network (TIN). Currently, Gazebo supports only raster data in a format supported in GDAL. The main motivation for supporting DEM in a kiosk is to be able to simulate real terrain. Rescue or agricultural applications may be interested in testing their robot behavior using simulated terrain that matches the real world. DEM models can be converted to sdf files for later use by GDAL libraries installed in ROS.
(3) For applications occurring in large outdoor environments, such as aerial robots, the use of ground planes with satellite images on the ground is often useful in simulations. Satellite images are also useful for environment visualization and computer vision tasks. A satellite map model may be created and inserted into the scene file using a "static map world" plug-in provided by Gazebo. Pictures are downloaded at runtime using Google's StaticMapAPI, so using this plug-in requires internet connectivity.
S2: and creating a single fixed-wing unmanned aerial vehicle automatic driving system to be simulated. The whole system adopts a modular thinking design and mainly comprises a sensor module, a state estimation module, an unmanned aerial vehicle flight control module, a path following module, a path management module and a path planning module. The sensor module comprises an airspeed sensor, a pressure sensor, a GPS receiver, a six-axis inertial measurement sensor, a digital compass and a speedometer. All parameters of a specific fixed-wing drone to be simulated are stored in the yaml file.
The sensor module obtains state parameters of the unmanned aerial vehicle in the flying process through each sensor.
The space velocity can be measured by a device in which a hydrostatic tube probe is attached to a differential pressure sensor. According to the bernoulli equation, total pressure is the sum of static pressure and total pressure, and there is the following equation:
wherein: ρ is the air density; vaThe space velocity of MAV. By means of a calibration method, the voltage output of the sensor is converted into a pressure-representing number in a microcontroller, in N/m2Establishing a differential pressure sensor output model:
in the formula βdiffpresFor temperature dependent bias drift ηdiffpresIs that the mean is zero and the variance isGaussian noise.
In the simulation system, the three-axis linear velocity of the model can be directly obtained, so that the current differential pressure value of the fixed-wing unmanned aerial vehicle can be reversely deduced through the above method.
By measuring atmospheric pressure, a measure of altitude can be inferred, and the fundamental equation of hydrostatic is:
P2-P1=ρg(z2-z1)
this relationship assumes that the density of the fluid between the test points is constant. Although the barometric pressure density varies significantly from sea level to aircraft altitude, the hydrostatic relationship in the equation is useful when the altitude variation is relatively small, and the barometric pressure density is substantially constant.
Concerning the aircraft ground altitude and the corresponding pressure variations, the following relationship is given:
P-Pground=-ρg(h-hground)
=-ρghAGL
in the formula: h is the absolute altitude of the aircraft; h isgroundIs the absolute height of the ground; h isAGL=h-hgroundH and hgroundAre measured relative to sea level. P is the absolute pressure measurement of the response. At the time of implementation, PgroundIs the atmospheric pressure measured at ground level before takeoff, and ρ is the air density at the flight location.
Similarly, because the height information of the unmanned aerial vehicle can be directly acquired in the simulation platform, the atmospheric pressure of the current flight position can be directly reversely deduced.
The global positioning system is a satellite-based navigation system that provides three-dimensional position information of objects on or near the surface of the earth. The system comprises 31 GPS satellites in space; 1 master control station, 3 data injection stations and 5 monitoring stations on the ground. And a GPS receiver as a user terminal. At least 4 satellites are needed to quickly determine the position and the altitude of the user terminal on the earth.
Because NED coordinates are adopted in the Gazebo, the current NED coordinate information of the unmanned aerial vehicle can be directly acquired. Therefore, GPS information needs to be obtained by coordinate conversion. A reference origin in the NED coordinate system is first obtained, in this example with the drone takeoff point as the reference origin in the NED coordinate system. The point is the starting position of the unmanned aerial vehicle after the GPS star number meets the requirement. The conversion calculation from ECEF and NED can be given according to the coordinate information of the reference origin:
PE,ref=[XE,ref,YE,ref,ZE,ref]T
PN=RN/E(PE-PE,ref)
the rotation matrix from ECEF to NED coordinate system is as follows:
the mutual conversion between the position data output by the GPS and the position data under the NED coordinate system can be realized by combining the calculation methods of the two parts.
An Inertial Measurement Unit (IMU) is a device that measures the three-axis attitude angle (or angular rate) and acceleration of an object. In this example, the IMU is equipped with a three-axis gyroscope and three-directional accelerometers for measuring the angular velocity and acceleration of the object in three-dimensional space and for calculating the attitude of the object.
Modern digital compasses measure the magnetic field in three orthogonal axes with a three-axis magnetometer. In drone applications, these measurement axes are always aligned with the fuselage of the aircraft. If the aircraft is flying horizontally, only the magnetic directions of the two sensing axes need to be measured, but if the aircraft is inclined, the other magnetic direction of the aircraft needs to be measured.
To create a sensor model for simulation purposes, the example digital compass model assumes that the compass gives a true heading with errors due to the uncertainty in the tilt angle and the noise of the magnetometer sensor, based on the uncertainty in the tilt angle.
In this example, the sensor package described above is added as an insert to the fixed-wing drone model. Where a plug-in is a piece of code, compiled into a shared library and inserted into the simulation. The plug-in may directly access all functions of the Gazebo through standard C + + classes. The plug-ins allow for easy reuse of individual routines that can be inserted and removed from the running system. In this example, a sensor type plug-in is used that can connect to a particular sensor, obtain sensor information and control sensor attributes.
Because the rotation and the slope of fixed wing uavs can not effectively be directly measured to the sensor. Therefore, the state of the drone needs to be estimated through data collected by the sensors. The state estimation module estimates the position, velocity and attitude of the drone through an attitude filter and a position filter for GPS smoothing based on a standard extended kalman filter in combination with sensor parameters.
The estimated angular rates p, q, r may be passed through a low pass filter by a rate gyro to obtain acceptable estimates. An estimate of height may be obtained by a pressure sensor. By using a low pass filter for the differential pressure sensor, the airspeed can be estimated. The bandwidth of the low-pass filter is different for different states, and the adjustment is needed according to the simulation effect.
The estimation error during acceleration for the rotation angle and the tilt angle is not acceptable by only a simple low pass filter. An extended kalman filter is therefore used to estimate the rotation angle and the pitch angle more accurately. Applying a nonlinear propagation model:
φ=p+qsinφ*tanθ+rcosφ*tanθ+ζφ
θ=qcosφ-rsinφ+ζθ
in the formula: increases the noise term ζφAnd ζθRepresents the noise of p, q, r, and ζφ~N(0,Qφ),ζθ~N(0,Qθ)。
By low pass filtering the GPS signal, a very significant delay in the estimation is produced because the sampling rate is low, and satisfactory results cannot be obtained. Similar extended kalman filtering may also be employed for position, course and ground speed estimation.
The unmanned aerial vehicle flight control module is a series of nested PID controllers and is mainly used for realizing the transverse state control and the longitudinal state control of the fixed wing.
Fig. 3 shows a block diagram of a lateral autopilot. Comprising 5 correlation gains, differential gainsProviding roll-rate damping of the innermost ring, with roll attitude being gained by a proportional gainAnd integral gainAnd (6) adjusting. Course angle is gained by proportionAndand (6) adjusting. The main reasons for using a continuous closed loop are: the gain is first selected starting at the innermost loop and then gradually selected outward. In particular, the gain is first selectedAndsecondly, theFinally, it isAnd
for a longitudinal autopilot, the throttle and the lift wings are used as drivers to adjust airspeed and altitude. In a takeoff area, the accelerator needs to be completely opened, and the elevating wings are used for adjusting the pitching attitude, so that the pitching angle theta is enabled to becIs a fixed value; the uptake region requires full throttle opening and the use of pitch angle to adjust airspeed. If the airspeed is greater than the nominal airspeed, the aircraft will tilt upward, resulting in an increase in the rate of ascent while the airspeed decreases. If the airspeed is less than the nominal airspeed, the aircraft is tilted downward, resulting in a decrease in the rate of ascent and an increase in airspeed. In the descending zone, similar to the ascending zone, except that no throttle is required.
The path following module is used for realizing the following of the fixed wing straight line and the track path. For the longitudinal guidance of linear following, the longitudinal automatic pilot can obtain good path following effect. While the transverse path followsThe strategy is then to construct a desired course angle for each spatial point of the straight path in the movement of the MAV toward the path. The set of heading angles required for each point is called the vector field. When the heading deviation is large, the MAV also approaches the path at the line angle. When the heading deviation is near zero, the course angle is also near zero. For the following of the track path, an ideal course field is constructed by adopting the idea of transverse path following similar to the straight line following, and the MAV is moved to the track PorbitThe above. When the distance of the MAV from the center of the track is large, it is desirable that the MAV fly toward the center of the track. That is, when d > ρ, the ideal path isWhen d is ρ, the ideal path is χd=χ0. Thus, the candidate course field may be given by:
in the formula: k is a radical oforbitIs a constant greater than 0 and characterizes the slew rate from λ π/2 to 0. Chi shape0The required line angle for the MAV to be on track.
The path management module outputs the flight path of the unmanned aerial vehicle through a rounded corner path algorithm or a Dubins path algorithm by reading in path points and path point yaw angles. The round-corner path refers to a path smoothing algorithm for inserting round corners between straight line segments for smoothing during the movement of the MAV along the waypoint path. The Dubins path is then the shortest path connecting two points in a two-dimensional euclidean plane together, the two points being constrained to the curvature of the path and specifying the initial and final tangential directions to the path, and assuming that a device travelling along the path can only travel forward. It has been proved that the shortest path is formed by connecting the circular arc of the maximum curvature and the straight line. The Dubins path is commonly used in the field of robotics and control theory as a method of planning the path of wheeled robots, aircraft and underwater vehicles.
The planned path module is a preset unmanned plane planned path. In this example, planned waypoint coordinates and headings may be written in via the cpp file, or waypoint coordinates and headings or fixed-wing drone hover point coordinates and hover time may be imported from the outside via the mqtt protocol.
The modules are mainly communicated and data are transmitted through topic and service, and therefore automatic pilot simulation of the fixed-wing unmanned aerial vehicle is achieved. The ROS message and service mainly uses a TCP/IP-based messaging scheme TCPROS, wherein a TCP/IP Transmission Control Protocol (TCP) is a Transmission Control Protocol, and is generally called as TCP/IP. From the viewpoint of the internet protocol layer, it is based on ip (internet protocol) and uses the transmission control protocol TCP, thereby guaranteeing data transmission and performing transmission/reception in the order of transmission.
The open type single fixed wing unmanned aerial vehicle autopilot module structure and the data flow schematic diagram are shown in fig. 2: the method comprises the steps that current unmanned aerial vehicle sensor data are obtained by an airborne airspeed sensor, a pressure sensor, a GPS receiver and a six-axis inertial measurement sensor in real time, and the obtained data are filtered and denoised and then are issued to corresponding sensor data topics. And the state estimation module subscribes the sensor topic, performs attitude fusion by expanding a Kalman filtering algorithm after acquiring sensor data, and releases the real-time position, speed and attitude of the unmanned aerial vehicle to the unmanned aerial vehicle state topic. And writing a preset planning path into the planning path module by writing an x-cpp file or issuing a message by an mqtt protocol, and issuing the planning path to a planning path topic. And the path management node subscribes data of the unmanned aerial vehicle state topic and the planning path topic, calculates the actual following path of the unmanned aerial vehicle according to the rounded corner path or the Dubins path algorithm and publishes the result to the current path topic. Further, the path following module subscribes to the unmanned aerial vehicle state topic and the current path topic, calculates the unmanned aerial vehicle control command and issues the unmanned aerial vehicle control command to the control command topic. And finally, the unmanned aerial vehicle flight control module converts the unmanned aerial vehicle control command into specific unmanned aerial vehicle speed and attitude control by subscribing the unmanned aerial vehicle state topic and the control command topic, adjusts the state of the unmanned aerial vehicle and forms a closed loop of the whole automatic pilot.
S3: and constructing a fixed-wing unmanned aerial vehicle model through the URDF file. URDF is a format based on the XML specification for describing the structure of a robot. From a mechanical point of view, robots are typically modeled as a structure consisting of links and joints. The connecting rod is a rigid body with mass attributes, and the joint is a structure for connecting and limiting the relative motion of the two rigid bodies. The joint is also referred to as a kinematic pair. The links are connected in turn by joints to form a kinematic chain (i.e., a robot model as defined herein). One URDF document describes such a series of joint-to-link relationships, inertial properties, geometric features, and collision models. Urdf file in this example contains: the method comprises the following steps of kinematic and dynamic description of a fixed-wing drone model, geometric representation of the fixed-wing drone and a collision model of the fixed-wing drone.
The constructed amdf file, the scene model in S1, and the respective function nodes related to automatic driving in S2 are integrated into an launch file. The starting file (launch file) is a way for simultaneously starting a plurality of nodes in the ROS, and can also automatically start a ROSMaster node manager, realize various configurations of each node and provide great convenience for the operation of a plurality of nodes. The ROS-based simulation system for the fixed-wing drone autopilot of this example can be started by running the launch file. FIG. 4 is a diagram illustrating simulation results according to an embodiment of the present invention.
The simulation system can be used for adjusting parameters and modifying functions one by one without influencing the functions of other modules. And can be convenient add new module and carry out the expansion of function, and each module can all supply other projects to use and have the characteristics that reusability is strong. In addition, multi-machine parallel simulation can be provided by means of the distributability characteristic of the ROS platform.
The above embodiments are only preferred embodiments of the present invention, and the protection scope of the present invention is not limited thereby, and any insubstantial changes and substitutions made by those skilled in the art based on the present invention are within the protection scope of the present invention.
Claims (5)
1. A simulation method of an automatic pilot of a fixed-wing unmanned aerial vehicle based on ROS is characterized by comprising the following steps: the simulation method comprises the following steps of,
s1: an environment model is built in a Gazebo, or a digital elevation model DEM is manufactured, and a satellite image is imported into the Gazebo for use;
s2: for an automatic driving system of the single fixed-wing unmanned aerial vehicle, a modular design is adopted; the whole system comprises a sensor module, a state estimation module, an unmanned aerial vehicle flight control module, a path following module, a path management module and a path planning module; the sensor module comprises an airspeed sensor, a pressure sensor, a GPS receiver, a six-axis inertial measurement sensor, a digital compass and a speedometer;
the sensor module obtains state parameters of the unmanned aerial vehicle in the flying process through each sensor; the six-axis inertial measurement sensor comprises a three-axis angular rate gyroscope and a three-axis accelerometer;
the state estimation module estimates the position, the speed and the attitude of the unmanned aerial vehicle through an attitude filter and a position filter for GPS smoothing based on a standard extended Kalman filter and the sensor parameters;
the unmanned aerial vehicle flight control module is a series of nested PID controllers and is used for realizing the transverse state control and the longitudinal state control of the fixed wing;
the path following module is used for realizing the following of the fixed wing straight line and the track path;
the path management module outputs the flight path of the unmanned aerial vehicle through a rounded corner path algorithm or a Dubins path algorithm by reading in path points and path point yaw angles;
the planning path module is a preset unmanned plane planning path;
for different fixed-wing unmanned aerial vehicles, different model parameters and flight dynamics parameters of the unmanned aerial vehicles are modified in a way of writing star-yaml parameter files, so that the simulation purpose of the automatic pilot under various different fixed-wing unmanned aerial vehicles is achieved;
s3: and (4) guiding the constructed single fixed wing unmanned aerial vehicle model into a Gazebo, and starting to perform simulation on the single fixed wing unmanned aerial vehicle automatic pilot.
2. The method of claim 1, wherein the method comprises the following steps: the modules are communicated and data are transmitted through topic and service, and therefore automatic pilot simulation of the fixed-wing unmanned aerial vehicle is achieved; a message mode TCPROS based on TCP/IP is used in ROS messages and services, wherein the TCP/IP transmission control protocol is a transmission control protocol and is called TCP/IP; from the point of view of the internet protocol layer, the transmission control protocol TCP is used on the basis of IP, thereby guaranteeing data transmission and performing transmission/reception in the order of transmission.
3. The method of claim 1, wherein the method comprises the following steps: the data inflow and outflow relationship among the modules is as follows: the method comprises the steps that current unmanned aerial vehicle sensor data are obtained by an airborne airspeed sensor, a pressure sensor, a GPS receiver and a six-axis inertial measurement sensor in real time, and the obtained data are filtered and denoised and then are issued to corresponding sensor data topics.
4. The method of claim 1, wherein the method comprises the following steps: the state estimation module subscribes the sensor data topic, performs attitude fusion by expanding a Kalman filtering algorithm after acquiring sensor data, and releases the real-time position, speed and attitude of the unmanned aerial vehicle to the unmanned aerial vehicle state topic; writing a preset planning path into the planning path module by writing an x-cpp file or issuing a message by an mqtt protocol, and issuing the planning path to a planning path topic; and the path management node subscribes data of the unmanned aerial vehicle state topic and the planning path topic, calculates the actual following path of the unmanned aerial vehicle according to the rounded corner path or the Dubins path algorithm and publishes the result to the current path topic.
5. The method of claim 1, wherein the method comprises the following steps: the path following module subscribes an unmanned aerial vehicle state topic and a current path topic, calculates an unmanned aerial vehicle control command and issues the unmanned aerial vehicle control command to a control command topic; and finally, the unmanned aerial vehicle flight control module converts the unmanned aerial vehicle control command into specific unmanned aerial vehicle speed and attitude control by subscribing the unmanned aerial vehicle state topic and the control command topic, adjusts the state of the unmanned aerial vehicle and forms a closed loop of the whole automatic pilot.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911268763.3A CN110955261A (en) | 2019-12-11 | 2019-12-11 | Simulation method of fixed-wing unmanned aerial vehicle autopilot based on ROS |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911268763.3A CN110955261A (en) | 2019-12-11 | 2019-12-11 | Simulation method of fixed-wing unmanned aerial vehicle autopilot based on ROS |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110955261A true CN110955261A (en) | 2020-04-03 |
Family
ID=69980977
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911268763.3A Pending CN110955261A (en) | 2019-12-11 | 2019-12-11 | Simulation method of fixed-wing unmanned aerial vehicle autopilot based on ROS |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110955261A (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111830845A (en) * | 2020-04-30 | 2020-10-27 | 航天图景(北京)科技有限公司 | Automatic inspection simulation system and method for fan blade of unmanned aerial vehicle |
CN112394649A (en) * | 2020-11-17 | 2021-02-23 | 中国人民解放军63892部队 | Time-sharing multiplexing-based group unmanned aerial vehicle internal communication behavior control platform |
CN112925222A (en) * | 2021-02-01 | 2021-06-08 | 武汉理工大学 | Unmanned ship motion control simulation method and device based on ROS |
CN113219854A (en) * | 2021-04-20 | 2021-08-06 | 鹏城实验室 | Robot simulation control platform, method and computer storage medium |
CN113610792A (en) * | 2021-07-30 | 2021-11-05 | 杭州申昊科技股份有限公司 | Track fastener detection method, device and readable storage medium |
CN113763508A (en) * | 2021-08-27 | 2021-12-07 | 广州市城市规划勘测设计研究院 | Vector data processing method, device and medium based on virtual engine |
CN114741795A (en) * | 2022-04-27 | 2022-07-12 | 武汉理工大学 | Intelligent vehicle simulation method and system based on ROS and Gazebo |
CN114970048A (en) * | 2022-07-13 | 2022-08-30 | 哈尔滨工业大学 | Space multi-branch robot on-orbit climbing-oriented dynamics simulation platform and method |
CN116540568A (en) * | 2023-07-05 | 2023-08-04 | 中南大学 | Large-scale distributed unmanned aerial vehicle cluster simulation system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107450577A (en) * | 2017-07-25 | 2017-12-08 | 天津大学 | UAV Intelligent sensory perceptual system and method based on multisensor |
WO2018222775A1 (en) * | 2017-05-30 | 2018-12-06 | Digitalglobe, Inc. | Broad area geospatial object detection |
US20190004518A1 (en) * | 2017-06-30 | 2019-01-03 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Method and system for training unmanned aerial vehicle control model based on artificial intelligence |
CN110297500A (en) * | 2019-06-28 | 2019-10-01 | 天津大学 | A kind of continuous path planning method giving unmanned plane under more way points |
CN110333738A (en) * | 2019-07-10 | 2019-10-15 | 华东师范大学 | A kind of unmanned plane cluster verification method based on analogue simulation software |
-
2019
- 2019-12-11 CN CN201911268763.3A patent/CN110955261A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018222775A1 (en) * | 2017-05-30 | 2018-12-06 | Digitalglobe, Inc. | Broad area geospatial object detection |
US20190004518A1 (en) * | 2017-06-30 | 2019-01-03 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Method and system for training unmanned aerial vehicle control model based on artificial intelligence |
CN107450577A (en) * | 2017-07-25 | 2017-12-08 | 天津大学 | UAV Intelligent sensory perceptual system and method based on multisensor |
CN110297500A (en) * | 2019-06-28 | 2019-10-01 | 天津大学 | A kind of continuous path planning method giving unmanned plane under more way points |
CN110333738A (en) * | 2019-07-10 | 2019-10-15 | 华东师范大学 | A kind of unmanned plane cluster verification method based on analogue simulation software |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111830845A (en) * | 2020-04-30 | 2020-10-27 | 航天图景(北京)科技有限公司 | Automatic inspection simulation system and method for fan blade of unmanned aerial vehicle |
CN112394649B (en) * | 2020-11-17 | 2022-08-30 | 中国人民解放军63892部队 | Time-sharing multiplexing-based group unmanned aerial vehicle internal communication behavior control platform |
CN112394649A (en) * | 2020-11-17 | 2021-02-23 | 中国人民解放军63892部队 | Time-sharing multiplexing-based group unmanned aerial vehicle internal communication behavior control platform |
CN112925222A (en) * | 2021-02-01 | 2021-06-08 | 武汉理工大学 | Unmanned ship motion control simulation method and device based on ROS |
CN113219854A (en) * | 2021-04-20 | 2021-08-06 | 鹏城实验室 | Robot simulation control platform, method and computer storage medium |
CN113219854B (en) * | 2021-04-20 | 2024-05-28 | 鹏城实验室 | Robot simulation control platform, method and computer storage medium |
CN113610792B (en) * | 2021-07-30 | 2023-07-14 | 杭州申昊科技股份有限公司 | Track fastener detection method, apparatus, and readable storage medium |
CN113610792A (en) * | 2021-07-30 | 2021-11-05 | 杭州申昊科技股份有限公司 | Track fastener detection method, device and readable storage medium |
CN113763508A (en) * | 2021-08-27 | 2021-12-07 | 广州市城市规划勘测设计研究院 | Vector data processing method, device and medium based on virtual engine |
CN114741795A (en) * | 2022-04-27 | 2022-07-12 | 武汉理工大学 | Intelligent vehicle simulation method and system based on ROS and Gazebo |
CN114970048A (en) * | 2022-07-13 | 2022-08-30 | 哈尔滨工业大学 | Space multi-branch robot on-orbit climbing-oriented dynamics simulation platform and method |
CN116540568A (en) * | 2023-07-05 | 2023-08-04 | 中南大学 | Large-scale distributed unmanned aerial vehicle cluster simulation system |
CN116540568B (en) * | 2023-07-05 | 2023-09-22 | 中南大学 | Large-scale distributed unmanned aerial vehicle cluster simulation system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110955261A (en) | Simulation method of fixed-wing unmanned aerial vehicle autopilot based on ROS | |
CN110262553B (en) | Fixed-wing unmanned aerial vehicle formation flying method based on position information | |
Tijmons et al. | Obstacle avoidance strategy using onboard stereo vision on a flapping wing MAV | |
Lim et al. | Build your own quadrotor: Open-source projects on unmanned aerial vehicles | |
Santana et al. | Outdoor waypoint navigation with the AR. Drone quadrotor | |
CN111338383B (en) | GAAS-based autonomous flight method and system, and storage medium | |
CN110333738A (en) | A kind of unmanned plane cluster verification method based on analogue simulation software | |
Neto et al. | A surveillance task for a UAV in a natural disaster scenario | |
Steiner et al. | A vision-aided inertial navigation system for agile high-speed flight in unmapped environments: Distribution statement a: Approved for public release, distribution unlimited | |
CN109084760B (en) | Navigation system between buildings | |
Yun et al. | IMU/Vision/Lidar integrated navigation system in GNSS denied environments | |
CN114488848B (en) | Unmanned aerial vehicle autonomous flight system and simulation experiment platform for indoor building space | |
Al-Radaideh et al. | Self-localization of a tethered quadcopter using inertial sensors in a GPS-denied environment | |
Goppert et al. | Invariant Kalman filter application to optical flow based visual odometry for UAVs | |
Chowdhary et al. | Self-contained autonomous indoor flight with ranging sensor navigation | |
CN114964221B (en) | RTK/UWB/IMU-based multi-unit collaborative indoor and outdoor positioning method | |
Jacinto et al. | Pegasus simulator: An isaac sim framework for multiple aerial vehicles simulation | |
Hazry et al. | Study of inertial measurement unit sensor | |
Garratt et al. | Design of a 3D snapshot based visual flight control system using a single camera in hover | |
Madany et al. | Modelling and simulation of robust navigation for unmanned air systems (UASs) based on integration of multiple sensors fusion architecture | |
Chowdhary et al. | Integrated guidance navigation and control for a fully autonomous indoor uas | |
CN116300520A (en) | Virtual flight simulation method and system for unmanned aerial vehicle | |
Vishnevsky et al. | Modelling of uav simulator for local navigation system of tethered high-altitude platforms | |
Tiwari | Position control of an unmanned aerial vehicle from a mobile ground vehicle | |
Johnson et al. | Flight testing of nap of-the-earth unmanned helicopter systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |