Aerial Manipulator With Rolling Base for Inspection of Pipe Arrays

This paper considers the inspection by contact of long arrays of pipe structures in hard-to-reach places, typical of chemical plants or oil and gas industries, presenting the design of a hybrid rolling-aerial platform capable of landing and moving along the pipes without wasting energy in the propellers during the inspection. The presented robot overcomes the limitation in terms of operation time and positioning accuracy in the application of flying robots to industrial inspection and maintenance tasks. The robot consists of a hexa-rotor platform integrating a rolling base with velocity and direction control, and a 5-DOF (degree of freedom) robotic arm supported by a 1-DOF linear guide system that facilitates the deployment of the arm in the array of pipes to inspect their contour once the platform has landed. Given a set of points to be inspected in different arrays of pipes, the path of the multirotor and the rolling platform is planned with a hybrid RRT* (Rapidly-exploring Random Tree) based algorithm that minimizes the energy consumption. The performance of the system is evaluated in an illustrative outdoor scenario with two arrays of pipes, using a laser tracking system to measure the position of the robot from the ground control station.


I. INTRODUCTION
The application of aerial manipulation robots to inspection and maintenance operations [1] in industrial scenarios like oil and gas refineries [2], [3], wind turbines [4], or bridges [5], [6] is motivated by the convenience to reduce the required time and cost with respect to conventional solutions carried out nowadays by human operators deployed on cranes and other infrastructures. The ability of multirotors [7], [8] and autonomous helicopters [9], [10] to reach quickly and easily high altitude workspaces [11]- [13] can be useful in the installation [14], [15] and retrieval [14], [16] of sensors devices in polluted areas, transportation operations [17], inspection by contact [18], [19], crack repair [20], valve turning [21] and other torsional manipulation tasks [22], or in those tasks requiring the use of tools [23].
The associate editor coordinating the review of this manuscript and approving it for publication was Yue Cao .
Despite the evident benefits of aerial manipulation robots, their application in large outdoor scenarios like chemical or solar plants is severely affected by two main factors. First, the effective operation time is relatively low due to the limitation imposed by the batteries (around 10 -20 min for a nominal payload) and the energy consumption required to maintain the aerial platform on flight during the realization of the task. In this sense, a metric of interest to be maximized is the ratio between the effective operation time in which the robot conducts the task, and the deployment time, that is, the time required to reach the workspace. It is interesting to note that most works in aerial manipulation [2]- [23] assume that the robot operates on flight, without considering the possibility to land or perch. In order to avoid the waste of energy, some perching mechanisms have been proposed [24], allowing the realization of manipulation tasks while suspending from cables or poles [25]. Second, the success in the realization of manipulation tasks on flight is closely related with the positioning accuracy of the manipulator and the platform, taking into account that the reaction wrenches caused by the arm [7], [8] may induce position errors above its reach. This reinforces the idea of conducting the inspection task once the aerial robot has landed, using a wheeled base [26] to move the robot along the area of interest. The synergistic combination of the wheeled base with the aerial platform has been already considered in works like [27], [28].
Ground-based manipulator arms are used nowadays in multiple areas. Precision motion control allows for high accuracy dynamic positioning, which is essential in many industrial applications [29]. Furthermore, the estimation of the inertial parameters of the payload [30] is of increasing importance since it can be used for better model compensation in motion control, collision detection and contact force estimation for human interaction [31].
On the other hand, manipulator arms mounted on aerial platforms for aerial manipulation have severe design constraints coming from the aerial platform payload limitations and dynamic coupling with the movement of the arm [7], [37]. Several lightweight robotic arms with different kinematic configurations and morphologies have been designed for its integration in multirotor platforms [7], [16], [32], demonstrating the possibility to conduct tasks like object grasping [33], structure construction [34], or inspection by contact [3]. Since most aerial manipulators are intended to operate on flight, it is expected that impacts and collisions with the environment arise due to the unavoidable position deviations in the floating base, what has motivated the development of compliant manipulators [15], [16], [35], [36] that integrate an elastic element in the joints or links to prevent that either the manipulator is damaged or the aerial platform is destabilized. However, this mechanical feature increases the weight and reduces the positioning accuracy at the end effector [37], complicating the realization of the inspection task.
The main contribution of this paper is the design, development, and experimental validation of an aerial manipulation robot, shown in Fig. 1, intended to inspect long arrays of pipe structures in hard-to-reach places typical of chemical plants, replacing the landing gear by a rolling base that allows the robot to move along the pipes without wasting energy in the propellers. This wheeled-aerial robot consists of a hexarotor platform equipped with a 5-DOF robotic arm supported by a 1-DOF linear guide system, the rolling base with velocity and direction control, and the onboard computer. The paper firstly describes the application scenarios, considering the usual requirements in industrial inspection operations, presenting then the proposed technological solution, which comprises the design of the rolling base, the manipulator, and the integration in the aerial platform. Given a set of points to be inspected located in different arrays of pipes, a planning method based on the RRT * algorithm is developed to compute the reference path of the multirotor and the rolling base in such a way that the energy required in the task is minimized. The application of the developed system is validated in an inspection task carried out in an illustrative outdoor scenario.
The rest of the paper is organized as follows. Section II describes the intended application and the developed system. Section III covers the modelling and control, whereas Section IV is focused on the planning method. Experimental results in outdoors are shown in Section V, summarizing in Section VI the conclusions of this work.

II. SYSTEM DESIGN A. PROBLEM STATEMENT
As stated in the introduction, this paper is focused on the inspection of long arrays of pipe structures in chemical plants, like the one illustrated in Fig. 2. The inspection task carried out by a human operator typically consists of placing a sensor device in different points of interest along the surface of the pipes to measure the thickness [2], [3] or detect leaks at the bottom of the pipes. Although the execution of the operation itself is relatively simple, most of the time is devoted to reaching the workspace safely following a strict protocol to reduce the risk of accidents. In this sense, the use of aerial inspection robots simplifies significantly the realization of FIGURE 2. Illustrative industrial scenario with several arrays of pipe structures. VOLUME 8, 2020 this kind of operations, reducing the time and cost. The idea is to integrate the inspection device in a lightweight robotic arm capable of reaching the contour of the pipe. However, there are two main limitations in the practical application of this technology in industrial scenarios. Firstly, most of the inspection devices commercially available are designed for human operation, so they are not suitable for their integration in an aerial platform in terms of weight or size. Secondly, the limited capacity of the batteries and the lack of positioning accuracy on flight makes convenient the use of more efficient mobile platforms like wheeled bases [26], [27] in order to extend the endurance of the operation, trying to avoid the battery swap. In order to overcome these problems, the paper proposes the use of a hybrid rolling-aerial platform.

B. INSPECTION OPERATION
The proposed approach for the inspection of pipe arrays with the rolling-aerial manipulation robot is represented in Fig. 3.
The system comprises two actors and three components: • The human operator, who determines the inspection points and supervises the operation of the robot.
• The safety pilot, responsible of the aerial platform.
• The rolling-aerial manipulation robot that performs the inspection of the pipes with the robotic arm.   • The Ground Control Station (GCS) laptop from which the operation of the aerial robot is controlled. Given a map or model of the environment, the operator selects in the first place the sequence of inspection points to be checked. The mission planner (Section IV), executed in the onboard computer, generates the reference path that is transferred to the multirotor controller before the start of the operation. Once the inspection robot and the GCS are set up in the take-off area, the operation is conducted according to the flow diagram depicted in Fig. 3. The inspection task consists of reaching the point of interest with the rolling base, deploy the manipulator in the gap between the pipes, and track the contour of the pipe with the end effector. If a defect in the surface is detected by the sensor, it is marked on the map. Then, the arm is recovered and the rolling platform moves to the next inspection point.

C. ROLLING-AERIAL PLATFORM
The rolling-aerial platform consists of a hexarotor platform manufactured at the GRVC Robotics Labs and a customized rolling base that replaces the conventional landing gear. The hexarotor (116 × 116 cm size, 2.4 kg weight) is built with a carbon fiber frame structure that supports the six Antigravity MN4006 brushless motors with 15 × 5'' propellers, providing 3 kg payload and around 30 min flight time with no load. The multirotor integrates a Pixhawk autopilot and a Raspberry Pi 3B+ to implement the control architecture described in Section II-E. Fig. 4 shows a rendered view of the platform integrating the manipulator, described in next subsection. As done in [5], the position of the multirotor is measured with a Leica MS50 robotic total station and the GRZ101 360 • Mini-prism placed on the multirotor frame. This allows achieving accuracies of 1 cm during the flight and less than 0.1 cm when the platform is landed and carrying out the inspection, which is better than the accuracy of a GPS-RTK typically employed in outdoors.
The rolling base is designed to facilitate the displacement of the robot along arrays of two or more pipes of sections up to 20 cm Ø and identical separation. Two rollers (60 cm length) are attached to a carbon fiber base: one for the longitudinal motion, actuated by a continuous rotation RC servo (Power HD AR-3606HB, 6.7 kg·cm rated torque, 71 rpm), and other to control the direction using a Herkulex DRS-0402 (50 kg·cm rated torque, 125 g weight). These components are illustrated in Fig. 5, indicating in Table 1 their features. The rollers consist of a number of PLA (polylactic acid) plastic disks and a filaflex tire, all made by 3D printing. The external coating of the rollers has been manufactured in filaflex to facilitate the accommodation of the roller to the contour of the pipes. In addition, as detailed in Fig. 5, the tire has a rough surface to enhance adhesion and avoid slipping. The PLA disks are inserted in a carbon fiber tube supported by a pair of ball bearings.
Other materials such as wood, aluminum or steel have been employed in the prototype. Wood has been used to create plates to support the aerial platform and rollers. Aluminum is present in the crank-crank mechanism and in the spacers, and steel in the screws and nuts. The mass density of each of the materials used is shown in Table 1. The total weight of the rolling base is 1.3 kg, showing its mass distribution in Fig. 6.  As can be seen, a significant fraction of the total weight is devoted to the filaflex tires.
As mentioned before, the landing gear is replaced by the two rollers of length 605 mm and 48 mm Ø, with a separation of 220 mm between them. The height of the rolling base w.r.t. the multirotor base is 174 mm. The center of rotation of the direction servo (Herkulex DRS-0402) is located at the mid-point of the base plate, at 110 mm from the axis of rotation of the rollers, using a double bar-lever transmission to rotate the direction roller with a maximum amplitude of 30 degrees. Fig. 7 shows the representative distances of the developed prototype.

D. ROBOTIC ARM FOR INSPECTION OF PIPE ARRAYS
The robotic manipulator to be deployed on the pipe arrays is designed to facilitate the access to the contour of the pipes from the sides and from below, where the defects are usually concentrated. The developed prototype, depicted in Fig. 1 and Fig. 8, consists of a lightweight robotic arm with three joints for end-effector positioning, two joints for wrist orientation, and an actuated linear guide system that allows the transverse displacement of the arm to access the gap between the pipes. The arm implements partially the anthropomorphic kinematic configuration described in [15], removing the shoulder roll joint to reduce the total weight. A customized frame structure manufactured in anodized aluminum supports the Herkulex DRS-0101 servos of the shoulder and elbow joints, as well as the customized micro servo VOLUME 8, 2020 actuators built with the Pololu micro metal gear motors used in the wrist joints. Fig. 9 shows in more detail the developed micro servo, comprising the three polymer frame parts (the bearing and the cases), the Murata SV01-A potentiometer used to measure the rotation angle, the Pololu micro metal gear motor 250:1, and the microcontroller board. The actuator, weighing 25 grams, with a size of 22 × 22 × 35 mm, provides a maximum torque around 0.2 Nm with a maximum speed of 300 deg/s [41]. The linear guide system that supports the arm is built with the igus NS-01-17-600 profile and the NW-02-17 carriage, using a timing pulley-belt mechanism driven by a Pololu micro-motor to move the arm transversally. Fig. 10 illustrates the assembly of the different structures of the manipulator, indicating in Table 2 the mass of the different parts.

E. COMPONENTS AND ARCHITECTURE
The architecture of the rolling-aerial manipulation robot comprises three main systems, as represented in Fig. 11. The multirotor integrates the Pixhawk autopilot that implements the position/trajectory controller, and the Raspberry Pi 3B+ computer on which the different software modules are executed. These are the mission planner, the manipulator control   program, and the aerial platform control interface [39], [40]. The rolling base has two servos, the speed servo and the direction servo, using a STM32 microcontroller board to interface them with the Raspberry Pi 3B+ through an USART interface. The robotic manipulator contains two groups of servos: three Herkulex DRS-0101 actuators used for end-effector positioning, and the customized micro servos of the linear guide and the wrist joints [41]. Both groups are connected in daisy chain to the RPi through the respective USART interfaces.

III. MODELLING AND CONTROL A. REFERENCE FRAMES AND MODELLING
Four reference frames are defined for convenience in the formulation of the pipe inspection task: the Earth-fixed frame {E} (inertial), the multirotor base frame {B} attached to the IMU, the manipulator frame {0} attached to the base of the support structure, and the local frame of the i-th pipe array {P i }, whose origin corresponds to the landing point, with the X Pi axis pointing in the direction of the array. These can be identified in Fig. 12. The multirotor position referred to the Earth-fixed frame and with respect to the pipe array frame will be denoted by E r B and P i r B , respectively, whereas E p IP (a,k) represents the position of the inspection points where the arm is deployed to inspect the pipe contour. Sub-indices (a, k) indicate the array and the particular inspection point in the array. The orientation of the multirotor is represented by the roll, pitch and yaw angles, η = [φ, θ, ψ] T . Finally, the four coordinate systems can be related through the homogeneous transformation matrices E T B , E T P i , and B T 0 ∈ 4×4 .

B. ROLLING PLATFORM KINEMATICS AND CONTROL
The rolling platform extends the mobility of the inspection robot w.r.t. our previous aerial manipulation prototypes [7], [15], allowing the displacement along the pipes with velocity and direction control using the servos identified in Fig. 5. The kinematic model of the rolling base can be assimilated to the classical tricycle configuration [42], [43], as illustrated in Fig. 13, assuming that the steering angle γ is relatively small so the speed along the longitudinal section of the rollers does not significantly vary.
The mechanical construction of the rollers constraints the motion of the platform on the pipes to the plane defined by the X P i Y P i axes, representing its position by the coordinates (x B , y B ) relative to the pipe local frame {P i }. The rotation angle of the direction roller, that is, the steering angle, is represented by γ , whereas ψ B is the yaw orientation angle relative to the pipe frame. The linear speed of the platform is given by the angular speed of the continuous rotation servo, ω, and the radius r of the rollers, v = r · ω. The intersection of the dashed lines along the rollers in Fig. 13 defines the Instantaneous Center of Rotation (ICR) of the platform,  which determines the rate of change in the orientation angle as function of the forward speed and the steering angle: Here R is the radius of curvature and is the distance between the front and rear rollers. The trajectory followed by the rolling base is obtained integrating the components of the velocity vector, given by: In order to reach the particular inspection point indicated by the operator (see Fig. 3) from the landing position in the pipe array, the rolling platform will take as reference the path provided by the mission planner, represented as a sequence of Fig. 14. The control scheme of the rolling base consists of two independent controllers: a proportional-integral controller (PI) with anti wind-up to regulate the forward speed, and a proportional (P) controller for the direction servo [44]: Here v ref and γ ref are the references given to the servos, e p is the position error, whereas e ψ is the orientation error: The control scheme of the rolling platform is depicted in Fig. 15. The mission planner provides the reference position and orientation relative to the pipe local frame. The errors given by Eq. (6) and (7) are taken as input by the PI and P controllers, generating the velocity and direction references for the forward and direction servos.

C. MANIPULATOR KINEMATICS AND CONTROL
As indicated in Section II-D, the manipulator integrated into the rolling-aerial platform provides six degrees of freedom for end-effector positioning and orientation. The kinematic configuration, illustrated in Fig. 16, consists of the linear guide (1-DOF) at the base, the shoulder (2-DOF) and elbow (1-DOF) joints, and the wrist (2-DOF). For convenience, the origin of the manipulator reference frame, {0}, is placed at the midpoint of the support structure, with the X 0 axis pointing forwards. The prismatic joint d 0 corresponds to the transversal displacement along the Y 0 axis that allows the arm to be deployed in the gap between the pipes of the array. Note that for this purpose, the arm must be lifted above the array through the shoulder joint to avoid the collision with the pipes (see Section V-C).
The arm implements partially the anthropomorphic kinematics [15] with three joints for end-effector positioning and two for wrist orientation: shoulder pitch (q 1 ), shoulder yaw (q 2 ), elbow pitch (q 3 ), wrist roll (q 4 ) and wrist pitch (q 5 ). The shoulder roll joint is removed to reduce the weight and because it is not essential for the intended operation. The analytical resolution of the forward-inverse kinematics of the arm can be found in [15] (imposing that the shoulder roll angle is zero), defining here the mapping functions that relate the joint variables with the tool center point (TCP) position: The idea of the linear guide system and the corresponding degree of freedom represented by the displacement d 0 is to facilitate the access of the end effector to the bottom of the pipes through the gap between two consecutive pipes in the array. Since the rolling platform cannot be moved laterally, this mechanism can be used by the operator or the controller to accurately positioning the manipulator. Note that d 0 can be considered as a redundant joint for the TCP positioning, whose value will be determined by the separation and the section of the pipes, S pipe and D pipe respectively. Assuming that the manipulator is aligned with the array (X 0 parallel to X P i ), and denoting by y B the displacement of X 0 w.r.t. the midpoint of the closest pipe measured along the Y P i axis, then this value is given by: The full pose of the end effector relative to the base frame can be obtained from the transformation matrices of the arm: where 0 R TCP is the rotation matrix of the tool center point. Since in practice the inspection points may be expressed in the Earth fixed frame ( E p IP (a,k) ), it is necessary to apply a sequence of transformations to compute these coordinates in the manipulator local frame: For the realization of the pipe inspection task described in Section V-C, three control modes are implemented: • Positioning: the linear guide drives the arm to the gap between the pipes before its deployment. VOLUME 8, 2020 • Rotation sequence: the servos generate a predefined sequence of rotations to deploy and retrieve the arm through the gap between the pipes.
• Trajectory tracking: the inspection task consists of tracking the contour of the pipe given by a sequence of waypoints. The contour of two adjacent pipes can be parametrized by a three-segment curve (green dashed line in Fig. 16 In the experiment described in Section V-C, the following parameters were taken: S pipe = 0. The proposed control scheme of the manipulator, depicted in Fig. 17, relies on the embedded position controller of the Herkulex servos [7], [15] and the forward/inverse kinematic model [15] to track the contour trajectory given by Eq. (13) - (15). Each of the servos takes as input the goal position and playtime, that is, the required time to reach the angular reference from the current position. The servo, characterized by a first order dynamics [38], gives as output the position feedback along with the joint speed or PWM (pulse width modulation) signal, which can be used for estimating the motor torque [7] or detecting overloads due to collisions. The trajectory generator block provides the sequence of Cartesian position references at 50 Hz, transformed into the joint space through the inverse kinematic model given by Equation (9), and sent at the midpoint of the trapezoidal velocity profile to ensure the smooth trajectory tracking. This avoids undesired acceleration peaks in the arm. The TCP position error, ε TCP , obtained from the position reference and the current TCP position given by Eq. (8), is taken as input by the Collision Detector block, which monitors the position error to detect and react against unexpected collisions with the pipe array, protecting in this way the actuators. A similar procedure is applied for the wrist actuators, since the customized micro-servos also implement an embedded position controller [41].

D. MULTIROTOR CONTROL
The kinematic and dynamic model of the multirotor vehicle can be found in [7], [15]. Note that, since the manipulator only operates once the platform has landed, the dynamics of the aerial platform is not affected by reaction wrenches caused by the arm, as occurs in [7], [8].
The multirotor controller is an adapted version of the PX4 firmware [39] implemented in a Pixhawk autopilot. The system employs a Raspberry Pi model 3B+ running the UAV Abstraction Layer [40] to select and swap between different control modes (position, velocity, trajectory), and other basic functionalities (take-off, landing).
From the control point of view, in this system the multirotor controller is not affected by endogenous or exogenous wrenches induced by the manipulator [7] as this does not operate on flight. The arm only moves when the platform is landed on the pipes. This means that the dynamic model of the multirotor can be formulated in the usual matrix form: (16) where ξ ∈ 6 is the vector of generalized coordinates, defined as ξ = [r B , φ, θ, ψ] T , M ∈ 6×6 is the generalized inertia matrix, C ∈ 6 represents centrifugal and Coriolis forces, G ∈ 6 the gravitational terms, F e ∈ 6 includes the external wrenches that are not known or modelled, whereas, F is the vector of generalized forces. Those forces can be expressed as: where F B = U z , U φ , U θ , U ψ T represents the thrust and moments produced by the rotors, which can be expressed in  terms of the rotational speed as follows: Here C T and C D are the thrust and drag coefficients of the rotors, d is the distance from the rotor to CoG of the system, and i represents the rotational speed of the i-th rotor.
The control inputs can be obtained using a classical PID cascade controller given by Equation (19) for the angular and horizontal velocity loops, and a proportional gain for the absolute angle and position. This is represented in Fig. 18 for the roll controller. Other channels have a similar scheme. (19) E. CONTROL ARCHITECTURE The control system of the rolling-aerial inspection robot can be assimilated to the functional block diagram illustrated in Fig. 19. Given a set of inspection points and a description of the scenario, the Path Planner developed in Section IV will generate the reference path of the multirotor and the rolling platform. The Task Manager block generates the appropriate sequence of tasks [7], [15] according to the current state of the robot, determined by the Navigation System and the feedback provided by the three low level controllers. The Multirotor Controller, implemented in the Pixhawk autopilot with the PX4 firmware [39] and the UAV Abstraction Layer [40], provides the control modes and functionalities required to accomplish the mission.

IV. PLANNING METHOD A. PROPOSED APPROACH
In order to plan a path that steers the hybrid system to perform its operation in a safe manner and taking advantage of the flying and rolling capabilities, a novel path planning method has been developed. Given a map of the environment including a set of inspection points located in different pipe arrays E p IP (a,k) , the proposed planning method computes the path that should be followed by the multirotor and the rolling base to complete the mission. Moreover, the planning is computed in such a way that energy consumption is minimized. Regarding the map required as input, this can be a CAD (Computer-Aided Design) model or a map provided by a perception module, although this last option is out of the scope of this paper.
The developed path planner, denoted here as PP-HR (Path Planner for Hybrid Robots), is built over the basis of the RRT * algorithm (Optimal version of the Rapidly-exploring Random Tree [45]). However, most of its functions have been adapted in order to efficiently integrate the heterogeneity existing in the system into the path planning technique. Next subsections detail the introduced novelties.

B. SAMPLING OF THE PLANNING SPACE
The variables considered in the planning space include the x, y, z components of the robot position vector in the Earth-fixed frame {E}, E r B , and the orientation of the vehicle in the yaw angle, ψ, which is adapted according to the orientation of the pipe array to be inspected.
Taking into account the hybrid capabilities of the system, both aerial states and states on the top part of the pipe arrays from which the robot should operate either rolling along the pipes or operating with the robotic arm are considered jointly during the operation of the planner. Fig. 20 depicts a scheme with both kinds of states during the hybrid expansion of the planning method. Additionally, this hybrid space has been discretized for two reasons. Firstly, the discretization leads to bounded computation times. Secondly, such discretization allows a higher control on the sampling of the planning space as stated below. For the discretization, the aerial space has been divided using a 3D grid while the pipe arrays have been treated as 1D elements. In both cases, the same discretization width δ has been used.
Regarding the sampling of the planning space, it requires special attention. The hybrid space, involving aerial states and pipe states, is sampled randomly. However, this random sampling does not follow a uniform distribution. Instead of that, the parameter λ ∈ (0, 1) is defined and it acts as a threshold for a random variable κ ∈ [0, 1]. In this way, either an aerial state or a pipe state is proposed as a random state according to the value of κ in each iteration of the PP-HR planning algorithm. The purpose of introducing λ is to avoid VOLUME 8, 2020 a sparse sampling of the pipe states, which could be few compared with aerial states, but they have an important effect on the resultant planned paths. Thus, after the discretization of the planning space, it is not difficult to establish the ratio ξ ∈ (0, 1) between the number of potential pipe states n pipe and the total number of potential states (pipe states n pipe and aerial states n air ): ξ = n pipe n pipe + n air (20) Finally, the ratio ξ can be corrected to cope with the aforementioned problem using the weighting parameter µ in the following way: As it can be seen, for the particular case of µ = 1(λ = ξ ), the sampling ratio between aerial states and pipe states is uniform. In contrast, the optimized sampling is associated with the optimal value of µ = µ * , which depends on each application scenario and, as a first approach, can be set empirically. Fig. 21 illustrates the effect of µ in the sampling process.

C. FEASIBILITY IN THE EXPANSION OF THE SEARCH SPACE
The concept of collision checking for a potential new branch in a common RRT * algorithm has been extended to the concept of feasibility checking. This concept involves: • Collisions of the hybrid robot with the pipes.
A computationally-efficient treatment of the collision checking has been implemented. This strategy, depicted in Fig. 22, is based on the minimum distance between points (center of mass of the hybrid robot) and segments (axes of the pipes), d min robot−pipe . At the same time, the geometry of the robot is approximated by its bounding sphere of radius r robot , while the pipes are modelled as cylinders of radius r pipe . Margins of safety MoS have also been considered. In this way, the collision condition in both aerial and rolling states is given by:  Collision checking while flying (above) and rolling (below) based on the minimum distance between the hybrid robot and the pipe. The robot is approximated by its bounding sphere while the pipe is modelled as a cylinder. Margins of safety are also considered.
This simplified but effective approach allows to speed up the collision checking, being possible to process a high number of collision queries in a reduced time. This makes the presented PP-HR algorithm suitable to plan paths not only in scenarios with isolated pipe arrays but also in cluttered environments with the presence of many pipes.
• Feasibility in the transitions between aerial states and pipe states. In general terms, take-off or landing can be considered safe when the tracking of the reference path takes place in a controlled manner and this is inside a volume that can be defined as a region of safe transition. This region must be compatible with the constraints associated with the vehicle and the take-off and landing zone. Applying this idea to the path planning problem, take-off and landing maneuvers correspond to the branches that link aerial nodes and pipe nodes. Consequently, for the particular case of the hybrid robot presented in this paper and its operation on pipe arrays, the region of safe transition can be defined as a right circular cone with aperture semi-angle β and whose vertex is located at the pipe node. Hence, as depicted in Fig. 23, transitions between aerial nodes and pipe nodes taking place out of this safety region are considered unsafe and, therefore, are discarded. Mathematically, this feasibility condition is given by: x air − x pipe 2 + y air − y pipe 2 < tan β z air − z pipe (23) where (x, y, z) air,pipe are the position coordinates of the aerial and pipe nodes.
• Transitions between connected and unconnected pipes. During the expansion of the search tree, a potential new rolling branch linking two pipe nodes can be classified into two categories: braches linking pipe nodes in the same pipe array or braches linking pipe nodes in different pipe arrays. For the second group, it is important to take into account if both nodes belong to connected or unconnected pipe arrays. In the negative case, the potential new branch must be discarded because it is not possible to link two nodes in different unconnected pipe arrays without an intermediate transition through aerial nodes. In general, all the previous cases can be characterized using a connection matrix ∈ B N ×N where N is the number of pipe arrays in the environment. The different elements γ i,j of this boolean matrix takes the logical values {0, 1} and represent the connection between pipe arrays i and j. Consequently, is a symmetric matrix with ones in the main diagonal: This characterization allows to establish a simple criterion to analyze feasibility in pipe-to-pipe transitions by merely checking the logical value of for the pipe arrays associated with a specific branch.
• Other navigation constraints. The PP-HR algorithm is also able to consider any additional restriction imposed on the operation of the hybrid robots. In this sense, no-fly zones, limits of operation or the maximum admissible slope for rolling on pipe arrays can be imposed.

D. OPTIMIZATION OF THE PLANNED PATHS
For the optimization of the system operation at a planning level, a cost function that minimizes the energy consumption has been defined. This function considers the hybrid capabilities of the robot through the associated energy consumptions e roll , e fly when the system is rolling or flying. Thus, the increment in cost of a path c associated with a branch from node i to node j can be defined as: (25) where d i,j = E r B,j − E r B,i and α takes the value 0 when the branch is covered flying or 1 when it is covered rolling. Since a normal operation complies with e roll < e fly , the planner will prioritize rolling branches over aerial branches when it is possible. This basis behaviour is represented in Fig. 24.
In this way, the range of the hybrid system is maximized and consequently, the number of inspection points that can be covered in one operation. Regarding the validity of the cost function, its formulation implicitly assumes that the electric power demanded by the system as well as its velocity are constant, but not equal, for aerial and rolling segments. This hypothesis is admissible because it is expected that the hybrid system operates in cluttered scenarios close to obstacles and accordingly, its movements should be smooth. Additionally, the transitions between aerial and pipe states (take-offs and landings) can be treated as general aerial segments from the point of view of the cost. Again, the smooth flight of the system justifies this approximation.
Once the expansion of the search tree has finished and the best path has been selected, a smoothing technique is applied to it. This technique follows a classic approach where non-essential aerial nodes are discarded. In contrast, pipe nodes are not considered in the processing for two reasons. Firstly, the 1D characterization of the pipe arrays already assures sub-optimal paths on the pipes. Secondly, the elimination of transition pipe nodes could negatively affect the VOLUME 8, 2020 optimality of the global path. As a result, this additional optimization improves jagged paths without a significant increment in the computational burden of the PP-HR method.

A. MULTIROTOR AND ROLLING BASE PERFORMANCE
The rolling-aerial inspection platform is evaluated in the outdoor scenario shown in Fig. 25, consisting of two arrays of three PVC pipes (2 m length, 20 cm Ø, 10 cm separation) supported by a frame structure built with Rexroth bars. The Leica robotic total station, used for the accurate measurement of the position of the multirotor, is deployed next to the GCS (Ground Control Station) and connected through the serial port, at least at 20 m distance from the first array, where the safety pilot supervises the execution of the inspection task. The path provided by the PP-HR planner is divided into thirteen phases: 0) take-off, 1) go to the landing point on the first array, 2) land, 3) roll towards the first inspection point, 4) inspect the pipe, 5) take-off, 6) go to the landing point on the second array, 7) land, 8) roll towards the second inspection point, 9) inspect the pipe, 10) take-off, 11) go back to the  initial position, 12) land. Once the robot has landed on the array, the rolling base is tele-operated by the inspector who follows the planned path and visually inspects the pipe with the capability of taking high-level decisions related to the inspection. The execution of the experiment can be followed in the sequence of images taken from the video attachment depicted in Fig. 26.
Additionally, Fig. 27 represents the trajectory executed by the hybrid system along with its reference path. This path has been computed with the PP-HR planning method when the values of the parameters in Table 3 are used. As it can be observed, the planner computes a path that properly assists the rolling-aerial platform along the selected inspection points. This path, computed in 12.9 seconds and provided as input to the Task Manager, highlights for two   main reasons. Firstly, the planned path has demonstrated to be energy-efficient. With a reduced number of movements, the 3 sub-paths connect the inspection points prioritizing rolling segments along the pipe arrays and flying only when it is essential. Secondly, the path also addresses the system to a safe execution of the inspection. No collisions with the environment and safe transitions between aerial and pipe segments endorse the latter. The evolution of the position and orientation of the hybrid rolling-aerial platform is represented in Fig. 28.

B. VALIDATION OF MISSION PLANNER
The experiment described before was repeated to validate the performance and reliability of the mission planner and the developed system, introducing certain modifications relative to the take-off and landing positions and in the arrangement of the pipe arrays. Fig. 29 shows the planned and followed trajectories of the aerial robot in three different executions, VOLUME 8, 2020 indicating in green the segments corresponding to the arrays. In particular, the second test illustrates a situation in which the safety pilot switches to manual flight control mode after the aerial robot reaches the end of the second pipe array.

C. INSPECTION OPERATION
Once the area of interest is reached with the rolling base, the robotic manipulator is deployed between the pipes to begin the inspection operation, consisting of tracking the contour of two consecutive pipes from below with the end effector. The arm follows the sequence of rotations illustrated in Fig. 30 and in the video attachment, changing from the rest configuration, adopted during the flight and rolling phases, to the operation configuration below the pipe array. The linear guide system is used here to align the manipulator with the gap between the pipes. Then, the control method based on inverse kinematics developed in Section III-C is applied to track the reference trajectory. This can be seen in Fig. 31 along with the position of the end effector.   The performance of the robotic arm (without the linear guide system) is evaluated with the benchmarks described in [37] in terms of payload capacity and trajectory accuracy, using the trajectory shown in Fig. 31 for this purpose. The results of the tests are summarized in Table 4 and Table 5.
Here L and A are the arm length and the amplitude of the circular trajectory of period T , AT and ρ AT are the trajectory accuracy and the normalized index, t and PT are the time interval and playtime, whereas ρ PL w is the payload-to-weight ratio.

VI. CONCLUSION
This paper presented an aerial manipulation robot with rolling base intended to increase the endurance and accuracy in the inspection of arrays of pipes, typical of many chemical plants. The proposed morphology combines the benefits of multirotor platforms to reach easily and quickly high altitude workspaces and the low energy consumption of the wheeled vehicles. The kinematic configuration of the manipulator and the slim design facilitate the deployment of the inspection tool in narrow spaces, allowing access to the pipes from below. Additionally, a path planning method supporting the robot operation was also presented. The planner, based on the hybrid capabilities of the system, provides safe and efficient paths to assist in the operation. The evaluation of the prototype in an illustrative outdoor scenario validated the design.