On Path Following Evaluation for a Tethered Climbing Robot

Over the last years, there is a growing need for climbing robots performing autonomous inspection tasks of large-scale infrastructure, to reduce inspection time and the overall operation costs. Thickness measurement, visual inspection, fault detection, etc. are a few examples of inspection and maintenance applications that could be performed autonomously by robotic platforms like climbing robots. One of the main challenges of inspecting large infrastructures, is the problem of path planning, as the path should be optimal to reduce the inspection time, incorporate sensor properties, and account for important robot requirements such as power supply cabling. This article proposes a novel path planner targeting inspection tasks, where the restrictions posed by the cabling on a Vortex Robot (VR), the attached sensor, and the properties of the scanned surfaces are taken into consideration. The presented framework is successfully evaluated in multiple closed-loop experiments, under different surface inclinations and VR orientations to demonstrate the efficacy of the path planning and control scheme.


A. Background & Motivation
Recent technological developments are enabling Electric Ducted Fan (EDF) and rotor-based climbing robots to perform inspection and maintenance of large infrastructures, ranging from bridges [1] and building façades [2], to petrochemical vessels [3]. As these platforms are designed to adhere and move on surfaces of variable orientations, while being generally able to support high payloads, they have become an increasingly efficient solution for mounting different sensors and executing multiple inspection and maintenance tasks.
To this goal, the authors proposed a Vortex Robot (VR) platform ( Fig. 1), which incorporated an optimized EDFbased actuator [4] and a wheeled structure in differential configuration. The tethered VR prototype has been evaluated under closed-loop scenarios on a flat surface of variable inclinations and open-loop scenarios, while attached on challenging curvatures (including a full-scale Boeing 737 and a water drainage pipe [5]. In the examined closed-loop cases, the adhesion and motion control was handled via a model-based PI-PID cascaded scheme [6], which was evaluated under predefined trajectories. As the target application of the VRs concept is the inspection This work has received funding from the European Union's H2020 Framework Programme under the call FET-OPEN, Grant Agreement No.665238 (Project CompInnova). of airplane composite fuselages, via the future incorporation of infrared and phased-array based sensors, the need for synthesizing and testing of advanced path planning algorithms towards optimized area coverage was highlighted. Such algorithms should effectively reduce the overall inspection time by incorporating the sensors' operational characteristics and the structural limitations posed by cabling.
In EDF and generally rotor-based climbing robot analyses found in literature, a general lack in path planning analysis and closed-loop controlled robots is identified, as related research is mainly focused on the analysis of negative pressure generation [7], generated thrust [8], [9], or design approaches targeting the maximization of the adhesion performance [10], [11]. Recent work provided novel considerations on the utilized hardware and software of rotor-based climbing robots [12], [13], while detailed open-loop experimental evaluations were presented [10], [14], but no insights were provided on motion control or path planning aspects. Such an analysis would play a crucial role for the autonomous operation of these climbing robots, especially given that most presented cases are tethered, which can restrict and even hinder their operation if not properly incorporated in their motion sequences.

B. Contributions
The main contribution of this work stems from the formulation of a path planning algorithm for the VR operation under an area coverage scenario, while considering the surface characteristics and set inspection specifications. More specifically, as defined from the type of the motions that this differential robot can produce and its tethered nature, two types of paths are considered. First, a sawtooth-based for nonaggressive steering and, secondly, a pulse-based path. These type of motions are considered as able to minimize the risk and cost of scanning an area on both flat and curved surfaces, especially in the case of utilizing a tethered robot platform posing restrictions on maneuverability.
The second contribution stems from the experimental evaluation of the proposed algorithms via the VR prototype in different surface orientations. The result directly demonstrates the applicability and feasibility of the synthesized path planners and has a significant impact as an enabler for deploying climbing robots for autonomous inspection and maintenance of flat and curved surfaces.

C. Outline
The rest of this article is structured as follows. Section II presents VR's main components and adhesion properties. The path planning and way-points generation is presented in Section III. In Section IV the proposed control scheme of adhesion and steering is presented, while in Section V experimental results are provided to demonstrate the efficacy of the control scheme. Finally, the concluding remarks are provided in Section VI.

II. VORTEX ROBOT
The VR presented in [5] uses an EDF-based actuator to actively adhere on surfaces of alternate inclinations and different curvatures, while the target application of this robot is the autonomous inspection of composite airplane fuselages. The robot can handle different types of tools and sensors based on a modularized design, while the ability of the Vortex Actuation System (VAS) to generate negative pressure, when its ducted structure is placed close to a surface, is utilized for the generation of a high adhesion force [15], [4]. This generated force is not only supporting the robot for steady adhesion and secure operation but increases its permissible payload and its capability of handling heavy tools and sensors. The VR prototype depicted in Fig. 1 is a skid steering robot with four wheels actuated via smart servos. The total weight of the platform, with its sensorial system, is approximately 2.21 kg. The EDF is located at the center of the VR and it is supported from a ring-shaped frame, which is connected on the VR's frame with carbon fiber tubes. The connections of carbon fiber tubes end up in a casing, while at the lower part of the casing load cells have been installed, with the carbon fiber tubes placed on top of them. The load cells are utilized as force sensors and they are able to sense the vertical force component exerted from the EDF to the test surface. Thus, by enabling force measurements, the VR can operate with a controlled adhesion level, instead of an on/off technique, which results in more efficient power consumption during operation and overall increased performance. More details on the actual components and software of the platform can be found in [5].

III. PATH DEFINITION
The VR prototype has the mechanical ability of turning around its center, as a result of the differential drive design, but even with this ability, motion limitations from the curvature of the surface, cabling management, sensor requirements etc, constrain the available motion paths that the robot can successfully track. Characteristically, when the VR turns on a curved surface, imbalances among the wheels are created depending on the surface geometry. During these states and due to the inelastic geometrical structure of the VR, only three wheels can be in direct contact with the examined surface and the robot's tracking ability is affected depending on the connected load and the robot orientation. This effect can be reduced if the VR steers at small angles following the curvature of the surface.

A. Sawtooth-based Path
In the first case, a saw-tooth-based path, as the one in Fig. 2, is defined. This path is synthesized where the scanning area consists only of straight lines and it is consisting of four different segments, which are explained in the sequel. The idea of this implementation is to give enough space to the VR to manoeuvre properly before reaching to the scanning segment, where the inspection modules will record data. Furthermore, it is intended to increase the time efficiency of the scanning procedure, by minimizing the steering actions of the robot by taking advantage of its backwards motion. In this way, at every iteration of the scanning procedure, the robot is properly aligned with the path to ease and minimize the scanning errors and inaccuracies, which are related to the motion of the VR on the target surface. ...
Graphical representation of the saw-tooth-based path planning algorithm Initially, the robot begins at an arbitrary start point close to the selected path and moves freely towards the first point A 1 . The distance between A 1 and A 1 is such that the VR will be able to steer properly towards the start of the path, while the second segment between A 1 and A 1 is given for the robot to correct the heading in case there is an initial error. This step is important to ensure that the VR's sensor is facing straight towards the scanning section of the path. The main segment |A 1 B 1 | is the inspection line. In this area, the control goal of the robot is to be aligned with the path line i.e. zero heading error. The task of the locomotion controller at this stage is to keep tight tracking of the line with minimal diverging from the path, while the VR's velocity has reached the desired value. As soon as the VR reaches the point B 1 that denotes the stop of the scanning phase, an extra distance is added |B 1 B 1 |, which is used to ensure that the robot will be away for the last measurement point, before moves freely to the next point B 1 . At point B 1 , the robot moves backwards and towards the point A 2 .
During the non-scanning phases of the path, focus is given on reaching the target points as fast as possible, in an effort to minimize the overall inspection time. The same procedure is repeated in sequence until the scanning task is completed. Finally, it must be noted that, algorithmically, there is an extra purpose for incorporating this path segmentation. At the points where the VR changes path segments, it needs to be able to hold position i.e. remain immobilized for a specific amount of time, until all scanning commands and actions are transmitted and executed. The required pause duration and location of the VR stops are determined based on the needs and requirements of the inspection module and they are defined in an offline manner.
For a known scanning/selected area (S L ×S W ) and distance ζ between scanning segments, the map of this area is specified assuming an arbitrary initial position in (X, Y ) space. For the localization of the VR it is assumed that the center of the object, the Center-of-Mass (CM) and center of rotation are aligned. The scanning area is divided into n = S W /ζ line segments, which are defined by the waypoints A i and B i , depicted in Fig. 2. The active path's edge waypoints are A i ,B i , where i = 1, 2..., n, are extended up to A i , B i for a constant value P offset = (P offset , X, 0). The constant P offset is a tuning variable, where P offset ≥ L/2 and L is the length of the VR. The requirement for the path offset is such that the VR will stop after it has passed the scanning segment area. The new waypoints A i , B i are fed to the bug2 algorithm [16] into pairs as starting and goal points respectively. The resulting waypoints from the previous step are then converted into position trajectories. This is done by considering the position controller's sampling time T s and the desired velocity v ref at each path segment. These path points are obtained by a linear interpolation between waypoints, in such a way that the distance between two consecutive path points equals the step size l = T s v ref . The points A i , B i are expanded one more time to A i , B i with the use of a steering offset S offset . The constant S offset is a tuning variable, where S offset ≥ L. Both P offset and S offset after their initial tuning to fit the requirements of the sensors and tested surface, remain the same independently of the size of the scanning area. Finally, the motion pause for a specified amount of time T p is added at the points of interest, which for the specific path are A i , A i , B i and B i by repeating their coordinates T p /T s times.

B. Pulse-based Path
A pulse-based path is also examined, and it is graphically depicted in Fig. 3. In this case, the main differentiation is that the VR is required to turn 90 • and continue its motion without utilizing its backwards motion.
For a known scanning/selected area (SL × SW ) and distance ζ between scanning segments, the map of this area is specified assuming an arbitrary initial position in (X, Y ) space. The scanning area is divided into S W /ζ segments, defined by waypoints ξ i = (ξ i , X, ξ i , Y ), where ξ i denotes the points A i , B i , C i and D i as depicted in Fig 3. The path's edge waypoints ξ i are extended up to ξ i for a constant value P offset = (P offset , X, 0). The P offset is a tuning variable where P offset , X ≥ L/2. The addition of P offset is such that the VR will correct its heading and align before the active path segment, by giving enough space for the initial steering of the VR. P offset can remain constant after its initial tuning, independently of the size of the scanning area, as its role is to properly steer the heading of the robot before the scanning path segment. The new waypoint ξ i are fed into pairs sequentially into the bug2 algorithm A 1 B 1 , B 1 C 1 , ...C n D n , as starting and goal points respectively. The resulting sequence of waypoints from the previous step are then converted into position trajectories. This is done by taking into account the position controller's sampling time T s and the desired velocity v ref at each path segment. These path points are obtained by a linear interpolation between waypoints, in such a way that the distance between two consecutive path points equals the step size l = T s v ref . Fig. 5 depicts the Degrees-of-Freedom (DoF) of the VR and the main geometrical components. For the design of the required adhesion level, the successful adhesion is considered when the robotic platform remains attached and immobilized (i.e ω 1 , ω 2 , ω 3 , ω 4 = 0) during inclination changes of the {φ,θ,ψ}= {roll, pitch and yaw} on the robot's frame {G 1 } with respect to the global frame {G}. For this purpose, the critical adhesion force F c has been derived from the geometrical model [6].

IV. MOTION AND ADHESION CONTROL A. Critical Adhesion
where m is the mass of the system, g is the gravitational acceleration, µ is the friction coefficient and c·, s· the trigonometric functions cos · and sin · respectively. From (1) it can be noticed that the critical force F c is independent from the rotation around the z-axis. Furthermore, below some critical angles, denoted as φ c , θ c that are dependent on the friction and the mass of the platform, the described model (1) results into negative forces that are not feasible to reached in the real-life setup. Thus, the updated model is provided by: where γ is defined as γ = φ 2 + θ 2 . Fig. 4 displays the overall control scheme of the VR utilized in this phase. Specifically, a multi cascaded PI-PID controller is used to control the velocity, steering and adhesion of the VR. The velocity and steering controllers are finely tuned under iterative trials for increasing the efficiency and overall performance given a specific target path, while the control parameters for the adhesion were kept constant among the tests since the performance was not changing drastically between experimental trials. The subsystem for the proposed adhesion control scheme is presented in Fig. 4, where the critical adhesion F c is calculated via the critical adhesion model G 1 (2). The critical force is calculated in an online manner via the sensed orientation angles φ, θ ∈ [−π, π]. Due to the cabling weight of the tethered VR, a constant percentage factor is tuned to assist the adhesion and counteract CM disturbances during operation. Specifically, the required force for achieving a successful adhesion is calculated as F ref = F c (K + 1) with K ∈ [0, 1] being the disturbance compensator gain. The force error e F is computed as e F = F V A − F ref , which is utilized from the adhesion controller. The signal T denotes the thrust level of the Vortex Adhesion (VA). Finally, the force F s measured from the two load cells is properly translated to the adhesion force F V A via G 2 force calibration as F VA = F S − m gcφcθ, where m denotes the mass of the components defined by the modified EDF and the parts connecting to the load cells and φ, θ the orientation feedback.

B. Control Overview
As far as the steering and velocity control is concerned for a given reference point p ref = (x ref , y ref ) and the VR's current position p = (x, y) in the global coordinate system the heading angle is calculated via (3). The heading error e δ ∈ [e − δ , e + δ ] = [−π, π] where (.) − , (.) + denotes the lower and upper bounds respectively is given in (4).
The velocity error is where v ∈ R is the feedback velocity calculated from the differentiated position and v ref ∈ R is the desired velocity. The velocity profile is determined offline based on the requirements posed from the sensorial system and task requirements. To increase VR's maneuverability and motion efficiency, while tracking a given path, the robot is allowed to perform forward or backward motion. More specifically, a direction filter dir filter is utilized to identify when the robot should perform forward or backward motion. The defining rule for altering the motion direction utilizes the knowledge of whether the next waypoint of the path appears in the front or in the backside of the VR object as defined in the global coordinates, thus altering respectively the motion to forward and backward. This rule serves a dual purpose since, at the same time, assists the ability of the robot to hold position in an immobilized state and alleviates the risk of the robot exceeding the target point due to slippage or control overshoot and having to perform a full circular correction for converging again to that point. As described by (5), if the absolute difference of VR's current orientation and reference heading is above 90 • , then the robot switches to backward motion. To enable this, the velocity input is negated i.e u v = −u v and the feedback orientation ψ is phase shifted by π i.e. ψ = ψ + π.
To further assist the ability of the VR for an accurate following of the path, while taking advantage of the VR's differential design, the velocity control signal u v is zero when the e δ is above a critical value e δ,c (6). In addition, when the heading error defined as e δ,c = δ ref − δ is greater than a critical constant e δ,c , the control effort is given to properly correct the heading towards the next waypoint.

A. Sawtooth-shaped Path
The results from the evaluation of the sawtooth-based path on inverted orientation (φ = 180 • ) are depicted in Fig. 7. The selected scanning area is 0.6 × 0.1m (length × width) with the value ζ = 0.05m. The VR can track successfully the path while the tracking error stays under 4 mm. The heading does not exceed the value of ±0.1 rad during the tracking of the scanning segment and, while the controller manages to regulate the velocity close to the desired value, it can be noticed that during the smaller segments of the path and between the stops, there is not enough time for the  robot to reach the desired velocity. The target adhesion force F ref is approximately 36 N, which is an output of the critical adhesion modeling, and it is calculated online based on the orientation feedback. Since for this experiment the VR remains at (φ = 180 • ), the desired value remains approximately at the same level with some deviations due to measurement noise and induced vibrations. The adhesion controller successfully regulates the F V A at the desired level and maintains the error e F at approximately ±1 N. The required control effort T to regulate the force is roughly at 64 %, while at the beginning of the response, an overshoot at around 70 % is observed.

B. Pulse-shaped Path
The experimental time responses acquired for the pulsebased path on flat horizontal surface are shown in Fig. 8. For this experiment, the scan area is 2 × 0.9m (length × width) with the distance between the scanning segments, ζ = 0.3 m. The VR manages to successfully track all waypoints with the tracking error measured at maximum 6 mm. As far as the steering control is concerned, the heading error e δ remains close to zero with the exception of the time instance where the robot turns 90 • to move to the next segment of the path. The VR goal velocity is 0.06 m/s and the v ref remains constant while the robot follows the path. It is observed that during turning the velocity response changes abruptly with the value ranging from 0 to 0.15 m/s. The behaviour of the velocity response is a result of the angular velocity from the steering controller and not the linear velocity, since the velocity controller is disabled when the e δ > 0.1, thus it has no contribution to the velocity response at those time instances.

VI. CONCLUSIONS
In this article, the path planning problem of a tethered Vortex-actuated climbing robot was considered. The experimental evaluation of the VR was extended via the definition of the fundamental paths that the platform should be able to follow during the approach and scanning phases of a target area. The VR prototype was tested in closed-loop experimental trials for evaluating the overall performance in tracking the defined paths regardless of surface inclinations. For all the investigated trajectories, surface and orientation cases, the VR managed to successfully track the set paths with high accuracy, while providing smooth motions without excessive manoeuvring. The evaluation of the overall scheme and the expansion of the path planning definition on the curved surfaces of an airplane fuselage, while equipped with infrared thermography and phased-array sensors, is part of future work.