{'fraction_non_alphanumeric': 0.0214631473193899, 'fraction_numerical': 0.006164946570463056, 'mean_word_length': 4.57510183299389, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 5, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 3, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
POSITRON: lightweight active positioning compliant joints robotic arm in power lines inspection

This paper presents the design and implementation of a compliant lightweight manipulator with an special end-effector to attach to power-lines. The manipulator can be mounted in aerial robots allowing to compute its relative position from the contact point. The purpose of this device is to obtain an estimate of the UAV’s position to close the control loop. Controlling the position of the UAV close to the power-line enables a new wide range of inspection and maintenance tasks in this infrastructure. The article describes the model of the positioning tool and the sensors it uses to provide the necessary information for the UAV controller. It can be built using additive manufacturing techniques and its components are low-cost and available in common robotic stores so anyone can reproduce and use it. Validation experiments have been carried out in an Optitrack system as ground-truth.


I. INTRODUCTION
Nowadays, the use of UAVs for the inspection of power lines has increased notably. UAVs are starting to be seen as the solution to this problem as they prevent an operator from climbing or using a crane to perform the inspection. Their ability to move in 3D space allows them to operate in unreachable locations where power towers and cables are.
For the security of the power lines during these inspections, an accurate and stable control is required to prevent the UAV to collide accidentally. This article presents a device that provides the necessary information so that the UAV can be controlled very close to the power-line or in contact with the line.
Aerial Manipulation (AM) is a rising field of research in the inspection and maintenance of power-lines. AMs consist in aerial robots that are capable to perform manipulation tasks. These can be high-level dexterous complexity or even just pushing with the aerial robot. For whatever task, it is necessary for the UAV to have an estimate of its position as accurate as possible, in addition to a high refresh rate. All this to be able to manipulate near the desired workspace.
Aerial manipulation has been widely researched over this past decade. Authors in [1] developed a pair of robotic arms and placed them in a pendulum far from the propellers, enlarging the range of action and preventing the disturbances of the air flow generated by the propellers.
Authors in [2] developed a novel control system to stabilize a UAV which actively pushes a wall using a pole. Similarly, in [3] the authors developed a new platform capable of remain stuck on concrete beams by taking advantage of the 1 Group of Robotics, Vision and Control of the University of Seville, Camino de los Descubrimientos, Sevilla 41092, Spain manuperezj@gmail.com, marrcogrova@gmail.com, pabramsor@gmail.com, barrue@us.es, aollero@us.es ceiling effect in UAVs. In both of this cases, the purpose is to control the position of the aerial robot in a position while the robot is performing another operation.
The author in [4] has developed a lightweight and compliant arms for their use in drones. The compliant design is based on the use of springs between the servos and the links. This design allows them to be absorbs external forces without compromising the stability of the aerial platform.
One of the ways to locate a UAV in power line environments is based on the use of cameras to extract the necessary information visually. Authors in [5] proposed the use of ARtags to increase the accuracy and reliability of the positioning system of the robot. The requirement of using these visual techniques come from the lack of accuracy of classical GPS systems. GPS gives a fair accuracy for navigating in open spaces but lacks of precision when operating close to structures. For this reason, the use of other sensors is required when operating or manipulating with the aerial robot.
Visual SLAM (vSLAM) is a common approach to tackle this problem. In [6] vSLAM has been used for the inspection of high voltage towers. In [7], it can be observed how the inspection of the power line is carried out using conventional cameras. However, even if a good detection rate is obtained, that does not have necessary precision to carry out manipulation tasks. Nevertheless, there is a great amount of surveys for the interest of the reader related to this topic [8], [9], [10].
An alternative to only-visual techniques is the use of laser devices. These are typically heavier than cameras, but give more reliable estimations. In [11] and [12] the use of this type of sensor for environmental recognition is shown. However, techniques above are still heavy computationally speaking, and these devices are very expensive.
Another alternative for outdoor localization without GPS is the use of range-based techniques, for example, Wi-Fi or RF. In [13], a localization algorithm that uses the power of the RSSI signal, achieves a 5% error in indoor conditions.
In [14], authors present a system that takes advantage of the use of a Total Station. This device provides a stable and accurate measurement of the position of the robot which is used to control the UAV. However, in this technique, it is strictly required that the UAV is always in the line of sight of the Total Station.
The work presented in this article is a part of the opensource hardware Hecatonquiros 1 . This aims to provide a low-cost, and easy to use and repair manipulators for aerial robots. The possibility of designing parts and printing them with the 3D printer with such small cost has caused an increase in the number of projects using this technology.
The work presented in this article improves the local positioning tool, we called Docking tool, presented in [15]. This was created to obtain a position estimation to feed the UAV controller for pipe inspection. However, that device had various problems, such as the presence of the passive links of the positioning tool which were difficult to control.
Moreover, in this article, instead of using the passive links, a manipulator with serial servos are used. These servos are sensorized so it is possible to read not only the position of the joints but also the existing force in the joints.
In order to minimize the effect of the contact of the robot with the power-line, a torque control is applied in the joints, minimizing the torque in them. In this mode, the servos moves compliantly when it is attached to the power-line as can be seen in Figure 1. By this way, it is possible to control the arm, but also to use it as a passive contact positioning system. The weight of the tool is very important for its use in drones. Particularly, the design has been optimized to reduce the weight as much as possible.
The system has been validated in a test-bed using a 28 cameras OptiTrack system at the GRVC Robotics Lab to guarantees that the tool obtains stable and accurate angle values for use in UAV control.
The remainder of the article is organized as follows. Section II presents the complete model of the tool, the integration with the robotic arm, and the implementation of the loop control. Section III shows the experimental validation of the system and algorithms. These experiments are shown in simulated environments. Finally, Section IV outlines the conclusions and the future work for this research.

A. Compliant aerial manipulator
The proposed compliant aerial manipulator consists in 3 DoF manipulator with torque limitation in the joints and a 3 DoF sensorized end-effector with a custom attaching mechanism for power-line inspection. It has been specially designed to be performed in small aerial robots. Figure 2 summarizes the components of the aerial manipulator and the interaction between them. One of the main features of this manipulator is the passive spherical joint placed at the end-effector. It minimizes the effect of the external torques on the aerial robot generated during the physical attachment to the power-line. Additionally, the maximum force exerted is controlled. Thus they actuate compliantly, reducing the forces on the UAV, while keeping the closed-chain estimate the position of the aerial robot by computing the direct kinematic of the manipulator.
The remainder of this section describes the parts of the systems, including the model of the manipulator and endeffector, the hardware design, and the control system.

B. Robotic arm design
This section introduces the design and characteristic of the manipulator, which is inspired in the implementation made by UFACTORY 2 .
The CAD design of the robotic arms is shown in Figure 3. In this version, all the engines have been placed at the basement of the manipulator, minimizing the inertia of all the joints.
The first joint has been designed so the servo does not hold weight, but the structure of the arm. The joint rests on a ring to distribute better the total weight. This feature is shown in Figure 4, it can be observed that the blue piece carries the weight of the purple piece, which is the connection with the rest of the robotic arm.
The arm's kinematic has been obtained as described in [16] and [17] using Denavit-Hartenberg. The used diagram can be see in Figure 5.
The resulting parameters are shown in Table I. These parameters are used to solve the direct kinematics of the arm, which result is used to know the transformation from the base of the arm to the end-effector.
During a normal operation, when the end-effector is attached to the power-line, the coordinate frames O 6 X 6 Y 6 Z 6 remains static. Its orientation is defined by angle θ 2a regarding to frame O 5 X 5 Y 5 Z 5 according to: The four-bar mechanism forces the following conditions: It is deduced that: The final matrix is obtained: Figure 6 shows the actual implementation of the robotic manipulator and the end-effector. The total weight of the complete system is 700 grams, including the motors, the electronics and the batteries necessary for its operation.

C. Custom power-line attachment tool
This section focuses on the custom end-effector device which allows the manipulator to get attached to the powerline. It has a passive spherical joint as wrist, preventing possible torques generated during the contact. Figure 7 shows the model of the end-effector. As shown in Figure 7, the device is equipped with an Inertial Measurement Unit (IMU) that measures the orientation of the manipulator. The design attaching system to the power-line consists of a half circumference with the inner part printed in flexible filament. This material adapts better to the cable and absorb the shock on the couple with the power line and do not affect this shock to the robotic arm system. At one of the sides, two small push buttons have been placed to detect when it is attached to the cable.
To facilitate the coupling with the robotic arm, the final part has been designed by means of a single screw, so it can be attached and uncoupled from the robotic arm. In Figure 8 you can see the coupling and decoupling of the designed tool. Finally, it is intended the developing an easy coupling on the robotic arm to facilitate the use of alternative tools such as a claw or others end-effectors.

D. Position estimator
This section describes how the data from previous sensors are used to estimate the position of the aerial robot. This position is used to feed the control of the system. Figure 9 shows the three main coordinate frames of the system. From left to right, the attaching point coordinate frame, the wrist coordinate frame and the UAV coordinate frame. The controller of the UAV is based on an attitude control loop, which needs the estimation of the position and orientation the robot. This estimation is obtained from two different sources. From the end-effector, an estimation of the orientation of the manipulator from the attaching point in the power-line is computed. Then, the kinematics of the manipulator is used to estimate the pose of the drone from the end-effector.
As the wrist of the end-effector is an unsensorized passive spherical joint, the orientation is estimated with a tiny IMU, shown in Figure 10, located close to the joint. Table II shows the characteristics of the internal accelerometer, gyroscope and magnetometer of the sensor. The sensor provides a I2C interface that allows to easily read the values of the sensor used thus minimizing integration into the global system architecture. The operating voltage of the sensor used ranges from 3.3 to 5 V and it consumes just 5 mA. Its size of 32 x 27 mm makes it ideal for small robotics. It also accounts with an internal 32-bit micro-controller that computes the attitude internally, granting a high estimation rate. The data refresh rate reaches 100 Hz, suiting for the controller of the drone controller.  Table III shows the characteristics of the barometer sensor. This sensor has a great accuracy, linearity, a great stabilization and high EMC robustness. It is used to provide a stable estimate of height to fuse it with the data provided by the robotic arm and end-effector.
The barometer is not suitable for measuring small variations of movements. However, it provides continuous stable measurements of the altitude of the robot. Since the position provided by the robotic arm is limited to its range of action, in case of failure, the estimate in height will be taken so that the UAV can be controlled in altitude. As explained in [18], the magnetic field can be used in data fusion to correct the estimations of yaw. However, the electric current that circulates through the power-lines might generate a magnetic field around them that can induce errors in the heading. This magnetic field can take values between 1,0uT and 8,1uT.
There are several techniques to solve this problem. Most are based on decoupling attitude estimation from magnetic disturbances, compensating for these disturbances and applying some sensory fusion to estimate orientation. In addition, the gyro bias must be compensated.
In this work, the algorithm used to perform the sensory fusion is the Improved Explicit Complementary Filter (IECF) from [18] which is based on [19].
T means the transpose of a matrix, I E q defines the orientation of the Earth relative to the IMU, I Eq , the normalized estimated quaternion, ω, gyroscope measurement and, , the error term. This error is obtained from accelerometer and magnetometer measurements as can be seen in equation (7). Furthermore, with the error scaled using K, the algorithm gain. To reduce initialization time, gain K is initially set to a great value for rapid convergence. Then K is set to a smaller value.
e = e acc + e mag (7) Thus the total error. e is calculated with the measurements of the accelerometer and magnetometer of each sensor. e acc is calculated as the cross product of the normalized measured acceleration and the predict acceleration. Finally, e mag is calculated as the cross product of the normalized measured east and predict east.
The gyroscope bias can be considered as a low frequency noise and estimated by using a low-pass filter.
The magnetic distortion is rejected by setting a threshold range for the magnetometer.
In the Figure 11 is shown the block diagram of the filter used. The 3D orientation expressed by the Euler angles (φ, θ, ψ) are obtained from the quaternion (q 0 , q 1 , q 2 , q 3 ) as follows.
Finally, once the orientation of the wrist is computed, the direct kinematic of the arm is added to the transformation to get the final position of the aerial manipulator.

E. Implementation of the UAV control loop
The UAV has a DJI A3 autopilot, which allows to control it in commands of speed, attitude (roll, pitch, yaw and thrust) and in attitude rate. This autopilot is typically more reliable than other solutions. [20] shows a comparison of different DJI models analyzing the accuracy of their GNSS positioning.
DJI does not allow to override its internal estimator, thus to control the drone at local coordinates a cascade control as been built. This solution provides greater reliability to the system since if this control fails, the autopilot will always have its own attitude control with its sensor estimates.
In order to maintain the UAV in a desired position, the cascade control loop shown in Figure 12 has been implemented. This control loop allows using the variations of Euler angles obtained by the tool to try to keep the reference position as stable as possible. All the controllers are PIDs with anti-windup, which use a reference marked by the positioning tool at the time of coupling with the power line. The estimated position from the system described in Section II-D is used to feed the PIDs which outputs are sent to the DJI controller.
The information provided by the barometer is fused with the arm to have a height control if the position of the robotic arm fails. As mentioned in Section II-B, in order to minimize the interactions of the contact with the power-line in the robot, the manipulator is continuously being controlled in a second loop to minimize the force in the joints. Each servomotor has an internal load cell which measures the torque on it. Figure 13 shows the force control loop. It moves the reference position of the joints according to the toque measured on it. Section III-B shows the analysis of this control system and how the position of the joints is shifted to minimize the torque in the joints.

III. EXPERIMENTAL VALIDATION
In the following section, the experiments performed with the positioning tool are exposed. In order to validate the results, the position and orientation of each of the stages of the estimation has been compared against a 28-cameras Optitrack system. With this system, the position of a rigid body can be obtained with an error of 0.3mm and the orientation with an error of 0.05 o .

A. Orientation Estimation Results
To perform these experiments, a set of markers have been placed on the positioning tool, as may be seen in figure 14. The experiments are based on the comparison between the orientation obtained by the Optitrack system and the filter implemented. To check the function of the IECP filter, a broadband electromagnetic interference was generated. The estimation of the orientation has been estimated with and without the EMI filter to quantify its efficiency. Figure 15 shows the results of the estimation of the orientation when the filter is not present in presence of an electromagnetic noise. As it can be seen, there are peaks of errors in the heading obtained due to electromagnetic interference. Figure 16 shows the error in each Euler Angle obtained. The larger error correspond to the yaw estimate, but it keeps with an average of ∼ 4.5 and lower than 10 degrees.
On the other hand, Figure 17 shows the results of the orientation estimation when the EMI noise filter is activated which improves the yaw estimation.
As can be seen in the figure 18, the maximum orientation error obtained has been reduced to 6 degrees.
The results obtained validate the IMU used together with the filter applied for its integration into the system and   provide the necessary guidance that the UAV controller must maintain and compensate.

B. Positioning Estimation Results
This section is based on comparing the position provided by the direct kinematics of the robotic arm and the position provided by the Optitrack system.
As in the previous section, reflective balls have been placed so that the center of gravity coincides with the initial axes of the robotic arm have been used. This configuration is necessary since the robotic arm provides the position in local coordinates and the Optitrack system in global coordinates. Figures 19 and 20 show an experiment in which the robotic arm was moved in different ways freely to obtain the position of the motors and calculate the direct kinematics to compare it with the ground-truth. The performance obtained is remarkable because it shows that a correct construction of the robotic arm and estimation of its dimensions have been made. This allows a good estimate of the position of the robotic arm. Finally, Figure 21 shows the evaluation of the compliant torque control that minimizes the effect of the contact with the power-line by adjusting the goal angles of the joints of the manipulator.
The Figure 21 shows different steps of force exerted to a joint. Each gray band correspond to an external torque. In the top plot, it can be observed how the reference position for the joint moves when the torque appears, which is represented in the middle plot. Bottom sub-figure shows the difference between the target position and the current measured position which is lower than 1 degree.

IV. CONCLUSIONS
The work presented in this document shows a complete UAV positioning system for the inspection of electric lines. The system can be used by autonomous unmanned aerial vehicles. It offers a solution for both civil inspection and commercial inspection of industrial facilities.
The proposed system solves a lack of publications related to manipulation tasks with UAVs in denied GPS environments. The tool allows free movement thanks to its crazy wheel, which makes the drone control not disturbed due to system limitations.
The system is adaptable to any robotic arm together with the control loop implemented to any available controller, as long as you let the drone command with the commands used. The software is available in open source so that any user who wishes can improve it.
Future work focuses on its implementation in real environments with electrical lines with voltages and amperes and see how they affect the on-board sensors used.
In addition, its feasibility of use in a less complex system than a robotic arm and the automatic detection of the power line will be studied so that it is automatically and not manually engaged.