Next Article in Journal
Improving the Accuracy of Metatarsal Osteotomies in Minimally Invasive Foot Surgery Using a Digital Inclinometer: Preliminary Study
Previous Article in Journal
Experimental In Vitro Microfluidic Calorimetric Chip Data towards the Early Detection of Infection on Implant Surfaces
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Developing a Flying Explorer for Autonomous Digital Modelling in Wild Unknowns

1
College of Civil Aviation, Nanjing University of Aeronautics and Astronautics, Nanjing 211106, China
2
College of Engineering, South China Agriculture University, Guangzhou 510070, China
*
Author to whom correspondence should be addressed.
These authors contributed equally to this work.
Sensors 2024, 24(3), 1021; https://doi.org/10.3390/s24031021
Submission received: 4 January 2024 / Revised: 19 January 2024 / Accepted: 29 January 2024 / Published: 5 February 2024
(This article belongs to the Section Sensors and Robotics)

Abstract

:
Digital modelling stands as a pivotal step in the realm of Digital Twinning. The future trend of Digital Twinning involves automated exploration and environmental modelling in complex scenes. In our study, we propose an innovative solution for robot odometry, path planning, and exploration in unknown outdoor environments, with a focus on Digital modelling. The approach uses a minimum cost formulation with pseudo-randomly generated objectives, integrating multi-path planning and evaluation, with emphasis on full coverage of unknown maps based on feasible boundaries of interest. The approach allows for dynamic changes to expected targets and behaviours. The evaluation is conducted on a robotic platform with a lightweight 3D LiDAR sensor model. The robustness of different types of odometry is compared, and the impact of parameters on motion planning is explored. The consistency and efficiency of exploring completely unknown areas are assessed in both indoor and outdoor scenarios. The experiment shows that the method proposed in this article can complete autonomous exploration and environmental modelling tasks in complex indoor and outdoor scenes. Finally, the study concludes by summarizing the reasons for exploration failures and outlining future focuses in this domain.

1. Introduction

The Digital Twin (DT) concept, introduced by NASA in 1991, involves virtual representations of physical assets that reflect their context through data from various sensors [1]. Digital modelling (DM) is a critical task within the DT framework [1], contributing to insights, predictions and performance optimisation in industries such as manufacturing and transportation. Industries that rely on digital models, such as agriculture and construction, benefit greatly from drones with exceptional obstacle-avoidance capabilities [2]. These drones can generate 3D models of complex terrains and intricate plantations. The introduction of digital models in plantations significantly enhances daily tasks like harvest planning, and revolutionizing orchard management [3,4].
This study explores a unique mapping and exploration theory that paves the way for autonomous, drone-based, rapid exploration models of orchards. In the field of management, the development of autonomous robotic platforms with exploration and mapping capabilities is revolutionary. Robots, especially those equipped with 3D LiDAR sensors, contribute essential elements to DM, including accurate 3D modelling [3]. Their ability to mark characteristic points at specific locations is proving beneficial for later data collection and processing [5,6].
Exploring and mapping unknown and unstructured environments have always been an important and fundamental task for robots. This includes tasks such as inspecting large infrastructures, surveying buildings, performing search and rescue missions, and exploring underground spaces [7]. The exploration of wild, unknown and unstructured environments, especially those that are harsh and lack GPS connectivity, has become a major focus for autonomous robotic exploration missions. This focus has grown significantly in recent years, particularly with events such as the DARPA Subterranean Challenge. In this challenge, teams of robots are tasked with exploring and identifying artefacts in complex and unstructured environments. In conjunction with Simultaneous Localisation and Mapping (SLAM), overcoming the challenges of motion planning and exploration behaviour is one of the most fundamental issues in these diverse applications.
Robotic localisation, path planning, and exploration are fundamental research areas for building such a robotic system [8], with various solutions to the challenge of fully exploring unknown areas, including pattern-based approaches, frontier methods and entropy-based strategies [9]. Occupancy-based path planning, which relies on maps of occupied and free space, often uses algorithms such as Dijkstra’s or advanced versions of A* and jump-point-search. Alternatively, the Rapidly Exploring Random Tree (RRT) algorithm, in its modern versions, serves as a core component of some path planning solutions, offering computational efficiency and flexibility, but lacking the guarantee of finding the shortest path within a limited number of iterations.
Traditionally, exploration and planning problems have been treated separately. For example, in ref. [10], a deep reinforcement model selects optimal bounds and an A* algorithm finds the shortest path. In ref. [11], stochastic differential equations identify optimal bounds and an RRT* path planner computes the path. Recently, the integration of exploration into the central planning problem has gained attention, with solutions such as Next-Best-View planners [12] being foundational. Exploration RRT (ERRT) [13] shares core concepts with Next-Best-View planners but is innovative in its algorithmic implementation. ERRT explicitly solves paths to pseudo-random objectives, which distinguishes it from the iterative evaluation of RRT branches. In particular, ERRT computes optimal actuation for trajectory following through a receding horizon NMPC problem, with the proposed method using the Optimization Engine, an open-source Rust-based optimization software. In the context of unmanned aerial vehicles (UAVs), energy constraints impact the duration of flight operations and the spatial coverage range. Addressing this challenge, the PAD-based remote sensing (PBRS) path planning framework intervenes at the planning stage, facilitating extended UAV operations over vast areas [14].
This work presents a novel solution to the combined challenge of robotic odometry, path planning, and exploration for digital modelling in wild unknown environments. It employs a minimum cost formulation with pseudo-randomly generated objectives, integrating multi-path planning and evaluation. This evaluation considers information gain and total distance. Our approach emphasises full coverage of the unknown map, depending on the availability of feasible boundaries of interest. The evaluation focuses on a robotic platform with a lightweight 3D LiDAR sensor model and evaluates the consistency and efficiency of exploring a completely unknown subterranean-like and unstructured area. The algorithm is designed with versatile robot localisation and motion planning that allows dynamic changes to the desired goal and behaviour. Our detailed contributions are presented below.
  • Developing the Aerial Robot Exploration (AREX) system, as shown in Figure 1, including its hardware and software framework, for autonomous digital modelling in unstructured and unknown environments.
  • Developing a novel algorithm for autonomous exploration in unknown environments for multiple scenarios.
  • Demonstration of the developed AREX system in real-world applications, showcases its effectiveness in several scenarios.

2. Materials and Methods

2.1. Robot Design

2.1.1. Hardware Design

AREX features a frame design that prioritises strength, durability and ease of assembly. Its rigid bodywork is made from carbon fibre with a density of 0.00153 mm 3 /g, resulting in a lightweight 250 g frame. The diagonal engine wheelbase is 380 mm, powered by a 4s 30C 4000 mAh battery. The platform features four SUNNYSKY X-2216 II KV880 (SunnySky, Columbus, OH, USA) brushless DC motors with APC 9045 (APC Technology Group, Rochester, UK) two-blade propellers, controlled by an XF 35A (Cyclone, Dongguan, China) 4in1 electronic speed controller (ESC). For autopilot functions, the Pixhack 6c mini (Holybro, HongKong, China) provides attitude and thrust control. The AREX measures 500 × 500 × 220 mm, weighs 1.9 kg and has an endurance of 10 min.
The schematic in Figure 2b illustrates AREX’s configuration. The Pixhack 6c Mini Flight Controller communicates with the ESC using the Dshot600 protocol, while also connecting to the on-board computer via a UART. This allows IMU data to be received from the onboard computer and desired attitude and throttle commands to be received from the flight plan. The sensor setup, shown in Figure 2, includes a LIVOX MID-360 (Livox Technology, Shenzhen, China) mixed LiDAR with a 360° horizontal and 59° vertical field of view. At the front, a RealSense D430 (Intel RealSense, Santa Clara, CA, USA) depth camera operates at 10 Hz for the LiDAR and 30 Hz for the camera. The Pixhack flight controller outputs 9-axis IMU data at 200 Hz.

2.1.2. Software Design

The software architecture of AREX, shown in Figure 3, consists of several key modules. In the robot odometry module, data from LiDAR odometry or visual odometry is used to estimate the 6-axis Degree of Freedom (DOF) positional attitude of AREX. The resulting position and point cloud data are used in the exploration module to maintain an Octomap representing the exploration state of the environment. This module uses RRT to identify a series of boundary points in the unknown region of the Octomap. The directional RRT exploration proposed in this paper determines the final exploration target point. This information is then fed into the motion planning module which, using a PD controller, calculates the desired attitude and throttle for AREX based on the path points. Finally, the calculated commands are sent to the flight controller. In cases where the stop strategy is triggered, AREX returns autonomously to the starting point and lands or remains in place.

2.2. Robot Odometry

2.2.1. Visual Odometry

VINS-Fusion [15] is used for visual odometry, and the loss function is constructed in the formula below:
min X r p H p X 2 prior factor + k B r B ( z ^ b k + 1 b k , X ) P b k + 1 b k 2 IMU propagation factor + ( l , j ) C ρ ( r C ( z ^ l c j , X ) P l c j 2 ) vision factor
where the first item is the priority after the marginalization, the second item is the IMU residual, and the third item is the visual residual. Because of the complex design, this system is very robust, so we combine it with improved FAST-LIO for better odometry. A graph is shown in Figure 4 to illustrate the framework of VINS-Fusion.

2.2.2. LiDAR Odometry

FAST-LIO [16] is used for LiDAR odometry, and an error-state iterated Kalman filter (ESIKF) is used to update the state of the system. The overview of improved FAST-LIO is shown in Figure 5. The linearized update formula of the error-state variables in FAST-LIO is
x ˜ i + 1 F x ˜ x ˜ i + F w w i
where the matrix F x ˜ and F w in Equation (2) is computed in Equation (3).
F x ˜ = Exp ω m b ^ ω Δ t 0 0 A ω m b ^ ω Δ t T Δ t 0 0 0 I I Δ t 0 0 0 R ^ I i G a m b ^ a Δ t 0 I 0 R ^ I i G Δ t I Δ t 0 0 0 I 0 0 0 0 0 0 I 0 0 0 0 0 0 I           I 0 0 I Δ t 0 0 0 I I Δ t 0 0 0 R ^ I i G a m b ^ a Δ t 0 I 0 R ^ I i G Δ t I Δ t 0 0 0 I 0 0 0 0 0 0 I 0 0 0 0 0 0 I   F w = A ω m b ^ ω Δ t T Δ t 0 0 0 0 0 0 0 0 R ^ I i G Δ t 0 0 0 0 I Δ t 0 0 0 0 I Δ t 0 0 0 0           I T Δ t 0 0 0 0 0 0 0 0 R ^ I i G Δ t 0 0 0 0 I Δ t 0 0 0 0 I Δ t 0 0 0 0
We can obtain new state variables through forward propagation, which is used to compensate for the motion distortion of the LiDAR in backward propagation, the calculation formula is shown below:
p f j L k = T L 1 I T ˇ I j I k T L I p f j L j
This LIO algorithm can quickly and robustly output LiDAR odometry, but the frequency of the odometry it outputs is only 10 Hz, which is too low for robots that need to obtain pose information in real-time. A high-frequency LiDAR inertial odometer is used here to achieve the frequency required by robot, whose frequency of odometry can reach 200 Hz. Whenever the ESKF is updated with a frame of odometry, this odometry will be recorded, and the newly incoming IMU measurement data will be integrated based on this optimized odometry. The calculation is shown in the following formulas. When a new frame of IMU data a m arrives:
a c = a m a m · G m
where a m represents the acceleration measurement of IMU, a c represents the input acceleration of current time, G m represents the preset gravity constant, which is a scalar.
Since we record the optimized pose output by the system, we have:
a 0 = R i ( a p b a ) g
where a p represents the input acceleration of previous time, R i is the previous pose, b a is the bias of acceleration, g is the estimated gravity in odonetry of FAST-LIO. Then, using median angular velocity to update the rotation matrix:
ω = ω 0 + ω 1 2 R i + 1 = R i Exp ( ω Δ t )
where ω 0 is the previous angular velocity measurement of IMU, ω 1 is the current angular velocity measurement of IMU. Then, transfer the acceleration to the world coordinate and calculate the median value:
a = a 0 + a 1 2
Then, the position and linear velocity can be updated as follows:
p i + 1 = p i + v i Δ t + 1 2 a Δ t 2 v i + 1 = v i + a Δ t

2.3. Robot Motion Planning

2.3.1. Environment Representation

The motion planning map is a localised raster map composed of radar point cloud frames represented by a one-dimensional array. The value of each array element indicates the occupancy state of the corresponding grid, with 0 for free space and 1 for obstacles. The map has default dimensions of L ,   W ,   H and a grid size of s i z e g r i d , resulting in an array size of array _ size . The calculation for array _ size is given by
array _ size = L · W · H s i z e g r i d 3
The index value of each grid can be obtained by Equation (11)
I d i = h i · n u m w · n u m l + w i · n u m l + l i
where h i , w i , l i represent the indices of layers in three directions of g r i d i , n u m w denotes the number of grids in the width direction, and n u m l is similar to n u m w .
On receipt of a point cloud frame, the 2D array values representing local map obstacle locations are set to zero. Each spatial point in the point cloud frame calculates the corresponding index value and assigns the value 1 to the corresponding position in the array. Spatial points outside the specified map area are discarded. The layer indexes of the raster in which the spatial points are located are as follows:
w i = P i . x s i z e g r i d + n u m w 2 l i = P i . y s i z e g r i d + n u m l 2 h i = P i . z s i z e g r i d + n u m h 2
To improve the feasibility of the motion planning path, obstacles are expanded by applying a preset expansion coefficient to each point in the point cloud frame, generating an expanded point set. The corresponding array positions are then assigned a value of 1 based on the spatial locations of the points in this set. The point set expression formula is as follows:
P i · x λ inflat + size grid · a P i · y λ inflat + size grid · b P i . z λ inflat + size grid · c T a , b , c [ 0 , n s t e p ] n s t e p = λ i n f l a t s i z e g r i d

2.3.2. Local Motion Planner

Our work follows EGO-planner [17], an optimization-based framework for robot motion planning.
Collision-Free Trajectory Generation: By giving a motion goal, the motion planning module generates an initial B-spline path Φ that does not take collisions into account. The start and end points of the path are the robot’s position and the goal, respectively. Then, the control point Q i , which exists in the obstacle, finds the anchor point p i at the obstacle surface for the control point that exists inside the obstacle. Then, the obstacle distance from Q i to the obstacle is defined as
d i = ( Q i p i j ) · v i
A collision-free path is obtained by optimizing the position of Q i such that d i > 0.
Grediant-based Trajectory Optimization: The cost function of the trajectory optimization is:
m i n J = λ s J s + λ c J c + λ d J d ,
where J s is the smoothness penalty, J c is for collision, and J d indicates feasibility. λ s , λ c , λ d are weights for each penalty terms. We use a uniform B-spline, which means that for each control point Q i R 3 , they have the same time interval from the latter control point, i.e., t = t i + 1 t i . Thus, the velocity V i , acceleration A i , and jerk J i at each control point are obtained by
V i = Q i + 1 Q i t , A i = V i + 1 V i t , J i = A i + 1 A i t .
For the smoothing term penalty, we examine the squares of the second-order and third-order derivatives of the control points concerning t each. The second- and third-order derivatives of the B-spline curve are reduced by minimizing the second- and third-order derivatives of the control points for the node vector t using the convex envelope property of the B-spline. This smoothness penalty is defined as follows, considering a total of n control points on the B-spline:
J s = i = 1 n 1 A i 2 + i = 1 n 2 J i 2
For the collision penalty, we set a safe distance S f and satisfy d i < d s by the penalty requirement function. The collision penalty function is as follows:
j c ( i ) = 0 ( c i 0 ) c i 3 ( 0 < c i s f ) 3 s f c i 2 3 s f 2 c i + s f 3 ( c i > s f ) w h e r e c i = s f d i ,
where d i j comes froms Equation (14). Hence, the total collision penalties across the entire path result from the summation of penalties associated with individual control points Q i . The formula can be expressed as follows:
J c = i = 1 n j c ( Q i ) .
To guarantee feasibility in the context of the feasibility penalty, higher-order derivatives of each control in the x, y, and z dimensions are constrained to values below a predefined kinetic limit. The penalty function is articulated as follows:
J d = i = 1 n w v F ( V i ) + i = 1 n 1 w a F ( A i ) + i = 1 n 2 w j F ( J i )
w v , w a , and w j represent the weights assigned to different higher-order derivatives for each control point. Meanwhile, the definition of F ( · ) is as follows:
F ( C ) = r = x , y , z f ( c r )
f ( c r ) = a 1 c r 2 + b 1 c r + c 1 ( c r c j ) ( λ c m c r ) 3 ( c j < c r < λ c m ) 0 ( λ c m c r λ c m ) ( c r λ c m ) 3 ( λ c m < c r < c j ) a 2 c r 2 + b 2 c r + c 2 ( c r c j )
where c r C { V i , A i , J i } , a 1 , b 1 , c 1 , a 2 , b 2 , c 2 satisfy second-order continuity. c m is the derivative limit, and c j represents the intersection points between the quadratic and cubic intervals. For a given condition where λ < 1 ϵ and ϵ 1 , the objective is to ensure the structure adheres to the imposed constraint.

2.4. Robot Exploration Module

2.4.1. Environmental Modelling

By maintaining the collection of undistorted LiDAR feature points, a high-precision global point cloud map is composed. This process is outlined by Equation (23). p f j L k represents the undistorted LiDAR feature points in the LiDAR coordinate obtained through (4), T L I denotes the transformation relationship from the LiDAR coordinate to the IMU coordinate, and T I k G signifies the system state corresponding to the LiDAR frame.
p ¯ f j G = T ¯ I k I G T L p f j L k ; j = 1 , , m .
A 2D occupancy map is constructed to represent the known and unknown regions in the scene, where each raster has only three values: −1, 0, and 1 for the unknown, idle, and occupied states, respectively. When using the RRT-based boundary point detector, by querying whether the grid on the tree growth line is the unknown state value −1, we can determine whether to find the boundary point of the unknown region.
The occupancy state of the occupied map is updated by LiDAR point cloud frames in global coordinates, and we select the point clouds with height values of 0–2 m in the point cloud frames in global coordinates to represent the state of the raster. A grid is considered occupied when a point cloud exists in the grid, while a grid is considered idle when the occupied grid is connected to the robot’s position and the line passes through it. As the explorer moves, the LiDAR point cloud frames change with the environment, and the occupancy map is updated by aggregating the odometer information.

2.4.2. Direction-Aware RRT Exploration

Algorithm 1 demonstrates the direction-aware exploration based on RRT. The following are the relevant definitions:
  • R represents the data frames from the LiDAR.
  • O represents the odometry information.
  • M represents the grid map.
  • CGs represents the frontier points.
  • T t represents the expected exploration goal at time t.
  • P s represents the the smoothed path.
  • E x represents the flag for executing exploration
The four key nodes shown in Algorithm 1 are described below:
  • Octomap_Server: accepts radar data frame information and odometer information for constructing a 2D occupancy map representing the scene exploration.
  • Frontier_Detector: accepts the 2D occupancy map and odometer information constructed by Octomap Server and searches for boundary points of the unexplored environment by RRT and outputs a list of candidate target points.
  • Revenue_Calculator: accepts the 2D occupancy map, odometer information, and candidate target points, calculates the value of the utility function of the candidate target points, and outputs the target point with the highest score.
  • Path_Planner: accepts target points, radar data frames, and odometer information to plan a collision-free smooth path for the robot.
Algorithm 1: Direction-aware RRT exploration
   Sensors 24 01021 i001
When the direction-aware RRT exploration algorithm receives data frames from LiDAR R , odometry O , and the flag for executing exploration E x , the exploration task is activated. The Octomap_Server processes the data frames from LiDAR R and odometry O to build a grid map M . The Frontier_Detector receives the grid map M and searches for candidate target points CGs . When the set of candidate target points CGs is not empty, the Revenue_Calculator takes the candidate target points CGs , odometry O , and grid map M to calculate the expected exploration goal T t . Subsequently, the Path_Planner plans the path P s and controls the UAV to reach the expected exploration goal T t . If the Frontier_Detector fails to find candidate target points CGs , the flag for executing exploration E x is set to false. Alternatively, if the revenue of target points in the Revenue_Calculator falls below a threshold, the flag for executing exploration E x is also set to false. Exploration stops when the flag for executing exploration is false.

2.4.3. Evaluation Strategy

The exploration strategy in this work evaluates candidate observation positions to find the optimal frontier vertex. This strategic approach aims to shorten the exploration time, reduce the overall step size, and ultimately increase efficiency [18,19,20]. Our strategy takes into account three key factors: the distance of the robot to the observation position, the expected information gain, and the correlation with the direction of the last exploration target. Figure 6 visually demonstrates our exploration strategy.
R ( C G i ) = λ I · f i I λ N · f i N C G i = Arg max C G i C G s R ( C G i )
In the explored method [21], the robot chooses the nearest, accessible and unvisited border with the largest grid size as its goal. The choice of the desired border is made by maximising the utility function (24), where f i I and f i N represent the grid size of the border area and the spatial distance between the robot and the border node, respectively. λ I and λ N are weighting parameters associated with these two terms. Importantly, the utility function reaches its maximum value when the frontier size is large and the distance is small. This optimisation allows the robot to navigate efficiently along the shortest obstacle-free path from its current cell to the cell containing the map coordinate. As emphasised in [22], the consistent movement towards new frontiers allows the robot to extend its map into unexplored areas until the entire environment is covered.
In unstructured environments, the existing boundary selection method may become inefficient [23] because robots tend to prioritise boundary points with high local information returns [24]. As a result, the robot may be attracted to these points, disregarding the continuity of environmental information in the current direction of exploration. This leads to the robot revisiting previously explored locations when moving towards points with lower information returns [25]. To address this inefficiency, this paper improves the exploration strategy by incorporating a term influenced by the direction of the exploration target point into the utility function for profit calculation. The improved utility function R d ( C G i ) is expressed as follows
R d ( C G i ) = λ I · f i I λ N · f i N f i D f i D = e λ D · A
where f i I , f i N are defined the same as Equation (24). f i D is an exponential function of A. A is the angle between the vectors T t 2 T t 1 and T t 1 C G i . Similarly, λ I , λ N , and λ D are user-defined weightings for the size, distance and exploration direction.

2.4.4. Stop Cretria

The termination criterion for exploration is a critical aspect of the exploration process described above [26]. In practical scenarios, it is often unrealistic to set a specific percentage of exploration coverage in a given area as the termination point [27]. For flying robots, efficient management of their power supply is essential due to energy constraints [28]. It is therefore necessary to consider stopping the exploration mission either when a particular area is completed or when the exploration yield becomes relatively low [29]. This stopping strategy is implemented to ensure that the robot can save sufficient power for a safe return. The exploration termination strategies used in this work consist of the following two criteria:
  • No further candidate exploration target points are discovered. As shown below:
    CGs =
  • The unknown area of the candidate region is below a preset threshold. As shown below, where S u represents the area of the unknown region near the corresponding target point, and s is the predefined threshold:
    S u < s
These two criteria exist side by side, and as long as either of these conditions is met, the exploration mission stops and the robot will return to the starting point.

3. Results

3.1. Experiment Setups

In real-world scenarios, we conducted experiments to validate the effectiveness of our work using the physical platform depicted in Figure 2. Our algorithm functions within the ROS Noetic operating system. We employ a method utilizing a PD controller to steer the robot along the planned path at a frequency of 100 Hz. Simultaneously, it detects potential collisions along the path at a rate of 20 Hz, triggering a rerouting of the current trajectory in the event of a collision. The global map resolution is configured at 0.1 m, while the dimensions of the local sensing map for path planning are set to 30 m × 30 m × 3 m. Additionally, the obstacle point cloud’s expansion radius is set to 0.5 m. Notably, the starting point is established as the map’s origin, denoted as x start = [ 0 , 0 ] T . The experimental setup consists of two different scenes: a regularly maintained forest and an underground parking lot.

3.2. Evaluation on Subsystems

3.2.1. Comparison of Visual and LiDAR Odometry

In this section, we evaluate the performance of visual and LiDAR odometry in real-world environments, as shown in Figure 7. In this experiment, we utilized the robot kit illustrated in Figure 2a to conduct a comparative analysis between the visual and radar odometry systems. Our paper implements the improved FAST-LIO as the robot’s primary odometry method, concurrently running VINS-Fusion. Post-initialization, our motion planner, operated via Nomechine (8.11.3) software’s remote desktop, orchestrated the robot’s autonomous flight, adhering to six pre-set waypoints. Notably, the sixth waypoint serves as the starting point x start = [ 0 , 0 ] T . The outcomes are depicted in Figure 7.
From Figure 7a, the completion of initialization showcases an excellent alignment between the FAST-LIO and VINS-Fusion odometry. However, upon completing the mission involving six waypoints, Figure 7b distinctly illustrates a considerable shift in the VINS-Fusion odometry. In contrast, the LiDAR odometry remains stable, showing no significant deviation.

3.2.2. Evaluation on Robot Motion Planning

We validate the utilised motion planning methods in the wild environments. In our experiments, we observed that the single-frame LiDAR point cloud output from the MID-360 tends to exhibit sparsity, potentially leading to certain smaller obstacles being unnoticed within the point cloud data. To address this, we amalgamated the multi-frame LiDAR point cloud data with that of the single-frame camera, presenting a comparative analysis in Figure 8a–d. Observing Figure 8a,b, it’s evident that the absence of an obstacle point cloud leads to an inadequate grid map representation, consequently rendering the planned path infeasible. However, through the fusion of 5-frame LiDAR point cloud data with single-frame camera data, depicted in Figure 8c,d, we effectively enhance our ability to perceive obstacles. The fusion of multiple sensors and frames of point cloud data addresses the challenge of perceiving smaller obstacles, enabling the motion planning process to generate feasible paths.
The motion planning for obstacle avoidance is based on optimizing paths that avoid inflated obstacles. Consequently, the choice of expansion coefficient size significantly impacts the success rate of obstacle avoidance. In Figure 8e–h, we showcase various obstacle avoidance paths for the same scene, each utilizing different expansion coefficients. In Figure 8e,f, the depicted obstacle avoidance paths utilize an expansion factor of 0.1. From Figure 8e, it’s noticeable that while these paths circumvent the expanding obstacles, they often appear excessively close to the obstacle point clouds in the original point cloud maps. Consequently, this proximity can potentially result in collisions due to the robot’s size or biases within the point clouds during actual flight.
Contrastingly, in Figure 8g,h, where the paths incorporate an expansion coefficient of 0.5, Figure 8h distinctly illustrates how an increased expansion coefficient effectively maintains a safer distance between the avoidance paths and the obstacles. This augmentation notably enhances the navigability and safety of the paths. However, the expansion coefficient is not “the bigger the better”; too high an expansion coefficient will cause the on-board computer to mistakenly think that it is in the obstacle and stop planning the path. Figure 8i,j demonstrates the on-board computer’s misjudgment in the case of expansion coefficient of 0.75.

3.3. Field Experiments

To verify the feasibility and robustness of the proposed system, we conducted exploratory experiments in two different scenarios.

3.3.1. Scene 1

The first scenario was conducted in a forest located at South China Agricultural University in Guangzhou, Guangdong, China. After multiple tests, the coefficient λ D in Equation (25) for considering direction has been set to 0.35. The UAV demonstrates good performance when λ D is in the range of 0.32 to 0.45, maintaining exploration direction. The coefficient s in Equation (27) in the stopping criteria is set to 7.85 m 2 , representing 10% of the LiDAR sensing range set in Octomap_Server. The exploration process is shown in Figure 9. According to the distribution range of the forest, we set the exploration boundaries centred on the starting point, with the farthest front/back point being 25 m, and the farthest left/right point being 20 m. We start the on-board computer through the remote desktop function of Nomechine to make the robot perform the autonomous exploration task. During the whole exploration process, the exploration module releases a total of six exploration target locations as shown in Figure 9a, which are provided with odometer information by the improved FAST-LIO in this paper, while the motion planning module used in this paper is responsible for local path planning and optimization. It is worth noting that the sixth exploration target point is the starting point, which is due to the stopping strategy triggered by the exploration module, so the coordinates of the starting point are released as the last target point so that the robot will return to the flight path and land on its own to complete the exploration mission. A semantic processing point cloud map based on our previous work [30], which can process object detection on point cloud in a Birds-Eye View (BEV), is utilised here to perform scene understanding in world environments, as shown in Figure 9b.

3.3.2. Scene 2

The second scene took place in the underground parking garage of South China Agricultural University in Guangzhou, Guangdong, China, as depicted in Figure 10a. Utilizing the garage entrance as our starting point, we established an exploration boundary extending 100 m along the x-axis and 50 m along the y-axis from the starting point. Given the initial point’s orientation towards a 30-degree downhill slope, point cloud data ranging from −5.0 to −10 m in the z-axis direction was selected as the source for the 2D Octomap. The settings for other parameters remain consistent with the experiments in scene 1. To facilitate autonomous exploration, the onboard computer was activated using Nomechine’s remote desktop function, enabling the robot to execute exploration tasks. The actual exploration route is depicted in Figure 10a, while the exploration results are illustrated in Figure 10b. It is important to note that due to insufficient remaining battery power for the robot to return to the starting point, remote commands were dispatched to initiate an autonomous landing upon completing the exploration mission.

3.4. Failure Analysis

3.4.1. Failure on Robot Odometry

In our experiments, odometer failure primarily occurs in two scenarios: (1) When the fuselage lacks sufficient structural strength, the flight control IMU (Inertial Measurement Unit) receives mechanical vibrations from the motor’s rotation. Consequently, the flight control system adjusts the motor based on the IMU waveform data, leading to resonance with the motor-transmitted vibration. (2) Odometer tracking failure arises during high-speed robot motion, especially when the robot undergoes rapid YAW angle changes. During exploration missions, when the target point significantly deviates from the robot’s current orientation, the PD controller principle prompts the robot to perform significant spins for orientation adjustment, disabling the odometer. To mitigate this issue, the direction-focused exploration strategy proposed in this paper circumvents such situations.

3.4.2. Failure on Motion Planning

This failure manifests in two scenarios:
  • Being entrapped within an obstacle group causes program judgment, leading to collision and subsequent planning failure. This behaviour stems from environmental perception inaccuracies due to LiDAR point cloud sparsity and measurement errors. Notably, the obstacle point cloud’s inconsistency, especially at object edges, causes sporadic jumps, resulting in the robot colliding with the obstacle cluster.
  • Another prevalent failure involves obstacle avoidance. While achieving collision-free trajectories entails bypassing expanded obstacles in flight, determining an appropriate expansion coefficient in proportion to the airframe size is crucial. Excessively high expansion coefficients exacerbate the point cloud’s jumping phenomenon, leading to severe consequences.
Both issues stem from the inherent lack of accuracy in the employed environmental perception method. Addressing these challenges necessitates the development of a more precise environmental perception model.

4. Discussion

We conducted various experiments to compare the accuracy of different types of odometry, the performance of motion planning under different parameters, and the effectiveness of our approach in indoor and outdoor scenarios. We also analyzed the reasons for task failure during the exploration process. From Figure 7, it can be observed that, for the same motion path, the trajectory of LiDAR odometry can return to the starting point, while the visual odometry exhibits noticeable drift. This indicates that LiDAR odometry is more suitable as a UAV positioning module.
In the motion planning parameter tests, we achieved more accurate environmental perception by merging multiple frames of LiDAR point clouds. We compared the obstacle avoidance performance with different obstacle inflation parameters and found that the inflation factor needs to be set based on the size of the UAV. Both too-high or too-low inflation parameters can lead to planning failures.
We tested our proposed direction-aware exploration strategy in both outdoor and indoor scenarios. From Figure 9 and Figure 10, it can be seen that the direction-aware exploration strategy caused the UAV to explore in a specific direction and switch to a new direction only after reaching a boundary. After the UAV finished exploring, it triggered the stopping strategy to land automatically.
We analyzed and summarized the reasons for odometry failure in the experiments, identifying insufficient frame strength and significant spinning in planning as causes. However, the proposed direction-aware exploration strategy can avoid excessive spinning. Finally, our analysis revealed that motion planning failures are attributed to the inaccuracy of the environmental perception method, emphasizing the crucial role of precise environmental perception as a prerequisite for successful motion planning.

5. Conclusions

Our work introduced the design of AREX and its autonomous exploration capabilities. The system was equipped with robust localization, mapping, and efficient exploration target selection capabilities. In particular, it prioritized continuity in the exploration direction and minimized abrupt changes to increase efficiency and mitigate odometry errors. The global point cloud map generated by the exploration serves as a valuable resource for extracting semantic information about the environment. In our experiments, the real-time, high-precision environmental perception module proved crucial. The accuracy of environmental perception significantly influenced the identification of exploration boundaries and the effectiveness of obstacle avoidance. Future efforts will focus on developing more efficient and accurate methods for perceiving and representing the environment, as well as exploring robust path-planning approaches.

Author Contributions

Methodology, N.Z., Y.P., P.J. and H.K.; Software, Y.P. and Y.J.; Validation, Y.P. and Y.J.; Formal analysis, K.H.; Data curation, Y.P.; Writing—original draft, N.Z.; Writing—review & editing, X.H. and H.K.; Supervision, H.K.; Project administration, H.K. All authors have read and agreed to the published version of the manuscript.

Funding

The author is thankful for the funding of Naizhong Zhang’s 2023 Excellent Postdoctoral Fellow of Jiangsu Province (grant no. 90YAT23004).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The data presented in this study are available on request from the corresponding author.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Grieves, M. Origins of the Digital Twin Concept; Florida Institute of Technology: Melbourne, FL, USA, 2016; Volume 8. [Google Scholar]
  2. Bisanti, G.M.; Mainetti, L.; Montanaro, T.; Patrono, L.; Sergi, I. Digital twins for aircraft maintenance and operation: A systematic literature review and an IoT-enabled modular architecture. Internet Things 2023, 24, 100991. [Google Scholar] [CrossRef]
  3. Hu, K.; Chen, Z.; Kang, H.; Tang, Y. 3D vision technologies for a self-developed structural external crack damage recognition robot. Autom. Constr. 2024, 159, 105262. [Google Scholar] [CrossRef]
  4. Kang, H.; Zang, Y.; Wang, X.; Chen, Y. Uncertainty-driven spiral trajectory for robotic peg-in-hole assembly. IEEE Robot. Autom. Lett. 2022, 7, 6661–6668. [Google Scholar] [CrossRef]
  5. Wang, Z.; Gupta, R.; Han, K.; Wang, H.; Ganlath, A.; Ammar, N.; Tiwari, P. Mobility digital twin: Concept, architecture, case study, and future challenges. IEEE Internet Things J. 2022, 9, 17452–17467. [Google Scholar] [CrossRef]
  6. Hu, K.; Wei, Y.; Pan, Y.; Kang, H.; Chen, C. High-fidelity 3D Reconstruction of Plants using Neural Radiance Field. arXiv 2023, arXiv:2311.04154. [Google Scholar]
  7. Sestras, P.; Bilașco, S.; Roșca, S.; Ilies, N.; Hysa, A.; Spalević, V.; Cîmpeanu, S.M. Multi-instrumental approach to slope failure monitoring in a landslide susceptible newly built-up area: Topo-Geodetic survey, UAV 3D modelling and ground-penetrating radar. Remote. Sens. 2022, 14, 5822. [Google Scholar] [CrossRef]
  8. Papachristos, C.; Mascarich, F.; Khattak, S.; Dang, T.; Alexis, K. Localization uncertainty-aware autonomous exploration and mapping with aerial robots using receding horizon path-planning. Auton. Robot. 2019, 43, 2131–2161. [Google Scholar] [CrossRef]
  9. Molina, S.; Cielniak, G.; Duckett, T. Robotic exploration for learning human motion patterns. IEEE Trans. Robot. 2021, 38, 1304–1318. [Google Scholar] [CrossRef]
  10. Hong, Z.W.; Shann, T.Y.; Su, S.Y.; Chang, Y.H.; Fu, T.J.; Lee, C.Y. Diversity-driven exploration strategy for deep reinforcement learning. Adv. Neural Inf. Process. Syst. 2018, 31. [Google Scholar] [CrossRef]
  11. Shen, S.; Michael, N.; Kumar, V. Stochastic Differential Equation-based Exploration Algorithm for Autonomous Indoor 3D Exploration with a Micro-Aerial Vehicle. Int. J. Robot. Res. 2012, 31, 1431–1444. [Google Scholar] [CrossRef]
  12. Naazare, M.; Rosas, F.G.; Schulz, D. Online next-best-view planner for 3D-exploration and inspection with a mobile manipulator robot. IEEE Robot. Autom. Lett. 2022, 7, 3779–3786. [Google Scholar] [CrossRef]
  13. Lindqvist, B.; Agha-Mohammadi, A.A.; Nikolakopoulos, G. Exploration-RRT: A multi-objective path planning and exploration framework for unknown and unstructured environments. In Proceedings of the 2021 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Prague, Czech Republic, 27 September–1 October 2021; IEEE: Piscataway, NJ, USA, 2021; pp. 3429–3435. [Google Scholar]
  14. Shao, T.; Li, Y.; Gao, W.; Lin, J.; Lin, F. A PAD-Based Unmanned Aerial Vehichle Route Planning Scheme for Remote Sensing in Huge Regions. Sensors 2023, 23, 9897. [Google Scholar] [CrossRef] [PubMed]
  15. Qin, T.; Cao, S.; Pan, J.; Li, P.; Shen, S. VINS-Fusion: An Optimization-Based Multi-Sensor State Estimator. 2019. Available online: https://github.com/HKUST-Aerial-Robotics/VINS-Fusion/tree/master (accessed on 18 January 2024).
  16. Xu, W.; Zhang, F. Fast-lio: A fast, robust lidar-inertial odometry package by tightly coupled iterated kalman filter. IEEE Robot. Autom. Lett. 2021, 6, 3317–3324. [Google Scholar] [CrossRef]
  17. Zhou, X.; Wang, Z.; Ye, H.; Xu, C.; Gao, F. Ego-planner: An esdf-free gradient-based local planner for quadrotors. IEEE Robot. Autom. Lett. 2020, 6, 478–485. [Google Scholar] [CrossRef]
  18. Xu, Z.; Deng, D.; Shimada, K. Autonomous UAV exploration of dynamic environments via incremental sampling and probabilistic roadmap. IEEE Robot. Autom. Lett. 2021, 6, 2729–2736. [Google Scholar] [CrossRef]
  19. Yang, K.; Keat Gan, S.; Sukkarieh, S. A Gaussian process-based RRT planner for the exploration of an unknown and cluttered environment with a UAV. Adv. Robot. 2013, 27, 431–443. [Google Scholar] [CrossRef]
  20. Naderi, K.; Rajamäki, J.; Hämäläinen, P. RT-RRT* a real-time path planning algorithm based on RRT. In Proceedings of the 8th ACM SIGGRAPH Conference on Motion in Games, Paris, France, 16–18 November 2015; pp. 113–118. [Google Scholar]
  21. Umari, H.; Mukhopadhyay, S. Autonomous robotic exploration based on multiple rapidly exploring randomized trees. In Proceedings of the 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Vancouver, BC, Canada, 24–28 September 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 1396–1402. [Google Scholar]
  22. Yamauchi, B. A frontier-based approach for autonomous exploration. In Proceedings of the 1997 IEEE International Symposium on Computational Intelligence in Robotics and Automation CIRA’97. ‘Towards New Computational Principles for Robotics and Automation’, Monterey, CA, USA, 10–11 July 1997; IEEE: Piscataway, NJ, USA, 1997; pp. 146–151. [Google Scholar]
  23. Zhong, P.; Chen, B.; Lu, S.; Meng, X.; Liang, Y. Information-driven fast marching autonomous exploration with aerial robots. IEEE Robot. Autom. Lett. 2021, 7, 810–817. [Google Scholar] [CrossRef]
  24. Walker, V.; Vanegas, F.; Gonzalez, F. Multi-UAV Mapping and Target Finding in Large, Complex, Partially Observable Environments. Remote. Sens. 2023, 15, 3802. [Google Scholar] [CrossRef]
  25. Sun, Y.; Zhang, C. Efficient and safe robotic autonomous environment exploration using integrated frontier detection and multiple path evaluation. Remote. Sens. 2021, 13, 4881. [Google Scholar] [CrossRef]
  26. Pérez-Higueras, N.; Jardón, A.; Rodríguez, Á.; Balaguer, C. 3D exploration and navigation with optimal-RRT planners for ground robots in indoor incidents. Sensors 2019, 20, 220. [Google Scholar] [CrossRef]
  27. Amorín, G.; Benavides, F.; Grmapin, E. A novel stop criterion to support efficient Multi-robot mapping. In Proceedings of the 2019 Latin American Robotics Symposium (LARS), 2019 Brazilian Symposium on Robotics (SBR) and 2019 Workshop on Robotics in Education (WRE), Rio Grande, Brazil, 23–25 October 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 369–374. [Google Scholar]
  28. Lluvia, I.; Lazkano, E.; Ansuategi, A. Active mapping and robot exploration: A survey. Sensors 2021, 21, 2445. [Google Scholar] [CrossRef] [PubMed]
  29. Lu, L.; De Luca, A.; Muratore, L.; Tsagarakis, N.G. An Optimal Frontier Enhanced “Next Best View” Planner For Autonomous Exploration. In Proceedings of the 2022 IEEE-RAS 21st International Conference on Humanoid Robots (Humanoids), Ginowan, Japan, 28–30 November 2022; IEEE: Piscataway, NJ, USA, 2022; pp. 397–404. [Google Scholar]
  30. Pan, Y.; Cao, H.; Hu, K.; Kang, H.; Wang, X. A Novel Mapping and Navigation Framework for Robot Autonomy in Orchards. arXiv 2023, arXiv:2308.16748. [Google Scholar]
Figure 1. AREX: Flight system designed for high durability, multi-scenario exploration, and environmental modelling.
Figure 1. AREX: Flight system designed for high durability, multi-scenario exploration, and environmental modelling.
Sensors 24 01021 g001
Figure 2. Robot design: (a) AREX’s frame structure and sensor layout. The MID-360 LiDAR is positioned at the front of the fuselage at a 45° angle to the horizontal z-axis, while the Realsense D430 is mounted above the MID-360 to fill in blind spots in the point cloud. The front dual arms of AREX form a 120° angle, maximizing the avoidance of obstructing the LIDAR’s scanning range. (b) AREX’s circuitry structure. Reflects the circuitry between the ESCs and motors, as well as the communication interfaces and protocols among various modules.
Figure 2. Robot design: (a) AREX’s frame structure and sensor layout. The MID-360 LiDAR is positioned at the front of the fuselage at a 45° angle to the horizontal z-axis, while the Realsense D430 is mounted above the MID-360 to fill in blind spots in the point cloud. The front dual arms of AREX form a 120° angle, maximizing the avoidance of obstructing the LIDAR’s scanning range. (b) AREX’s circuitry structure. Reflects the circuitry between the ESCs and motors, as well as the communication interfaces and protocols among various modules.
Sensors 24 01021 g002
Figure 3. Software architecture of AREX.
Figure 3. Software architecture of AREX.
Sensors 24 01021 g003
Figure 4. A graphic illustration of the VINS-Fusion framework. If the latest keyframe comes, it will be kept, and the visual and IMU measurements of the oldest frame will be marginalized. The prior factor of the loss function is obtained from marginalization. We can obtain the IMU propogation factor from IMU pre-integration. By computing the reprojection error between two keyframes, we can obtain the vision factor.
Figure 4. A graphic illustration of the VINS-Fusion framework. If the latest keyframe comes, it will be kept, and the visual and IMU measurements of the oldest frame will be marginalized. The prior factor of the loss function is obtained from marginalization. We can obtain the IMU propogation factor from IMU pre-integration. By computing the reprojection error between two keyframes, we can obtain the vision factor.
Sensors 24 01021 g004
Figure 5. System overview of improved FAST-LIO, which can output high-frequency odometry.
Figure 5. System overview of improved FAST-LIO, which can output high-frequency odometry.
Sensors 24 01021 g005
Figure 6. Demostration of RRT exploration strategy. Case A: Candidate vertexs close to an obstacle will not be considered. Case B: Candidate vertexes close to a known area will not be considered. Case C: Candidate vertex far away from the exploration direction will not be considered.
Figure 6. Demostration of RRT exploration strategy. Case A: Candidate vertexs close to an obstacle will not be considered. Case B: Candidate vertexes close to a known area will not be considered. Case C: Candidate vertex far away from the exploration direction will not be considered.
Sensors 24 01021 g006
Figure 7. Comparison of visual and LiDAR odometry: (a) completion of odometry initialization; (b) comparison of global paths.
Figure 7. Comparison of visual and LiDAR odometry: (a) completion of odometry initialization; (b) comparison of global paths.
Sensors 24 01021 g007
Figure 8. Effects of different parameters on motion planning. (a) Single-frame LiDAR point cloud expansion grid map. (b) Single-frame LiDAR raw point cloud. (c) Inflation grid map corresponding to the merged point cloud. (d) Merged raw point cloud. (e) Obstacle avoidance demonstration with 0.1 inflation coefficient. (g) Obstacle avoidance with a 0.5 inflation coefficient. (f,h) The obstacle avoidance paths of (e), and (g) in the raw point cloud. (i) Robot proximity to the obstacle point cloud. (j) robot within the inflated obstacle point cloud.
Figure 8. Effects of different parameters on motion planning. (a) Single-frame LiDAR point cloud expansion grid map. (b) Single-frame LiDAR raw point cloud. (c) Inflation grid map corresponding to the merged point cloud. (d) Merged raw point cloud. (e) Obstacle avoidance demonstration with 0.1 inflation coefficient. (g) Obstacle avoidance with a 0.5 inflation coefficient. (f,h) The obstacle avoidance paths of (e), and (g) in the raw point cloud. (i) Robot proximity to the obstacle point cloud. (j) robot within the inflated obstacle point cloud.
Sensors 24 01021 g008
Figure 9. Instances of an autonomous exploration mission within the forest. (a) The exploration results and on-site flight demonstration in the forest. (b) Forest semantic map based on exploration results.
Figure 9. Instances of an autonomous exploration mission within the forest. (a) The exploration results and on-site flight demonstration in the forest. (b) Forest semantic map based on exploration results.
Sensors 24 01021 g009
Figure 10. Presentation of the underground parking garage exploration process. (a) The exploration results and on-site flight demonstration in the underground parking garage. (b) Display of the global point cloud map in the underground parking garage.
Figure 10. Presentation of the underground parking garage exploration process. (a) The exploration results and on-site flight demonstration in the underground parking garage. (b) Display of the global point cloud map in the underground parking garage.
Sensors 24 01021 g010
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Zhang, N.; Pan, Y.; Jin, Y.; Jin, P.; Hu, K.; Huang, X.; Kang, H. Developing a Flying Explorer for Autonomous Digital Modelling in Wild Unknowns. Sensors 2024, 24, 1021. https://doi.org/10.3390/s24031021

AMA Style

Zhang N, Pan Y, Jin Y, Jin P, Hu K, Huang X, Kang H. Developing a Flying Explorer for Autonomous Digital Modelling in Wild Unknowns. Sensors. 2024; 24(3):1021. https://doi.org/10.3390/s24031021

Chicago/Turabian Style

Zhang, Naizhong, Yaoqiang Pan, Yangwen Jin, Peiqi Jin, Kewei Hu, Xiao Huang, and Hanwen Kang. 2024. "Developing a Flying Explorer for Autonomous Digital Modelling in Wild Unknowns" Sensors 24, no. 3: 1021. https://doi.org/10.3390/s24031021

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop