Recent advancements in the field of artificial intelligence and small, unmanned robots have lead to the growing range of applications. In the field of exploration robots, the ability to move through challenging environments, such as disaster areas, outdoor fields or planet surfaces is required.
The UAVs have recently gained much interest among researchers and industries owing to its high accessibility. They can go beyond obstacles, rough terrains or steep slopes, and are able to provide a view from a high altitude.
However, its payload or battery life is limited, and as a result, it becomes difficult to conduct missions that require heavy equipment or complex manipulations for the UAVs. On the other hand, the UGVs have a higher battery capacity and larger payload, meaning it can carry heavier sensors, powerful computers and complex manipulators to perform actions. In contrast, they often suffer from the limited sensor range, poor terrain traversability and climbing ability.
To address the limited sensor range of the UGVs, many researches for Air-Ground cooperation have been done. michael2014collaborative built a 3D map of an earthquake-damaged building with a team of a UAV and a UGV. The UGV carries the UAV during the mission until they reach to a non-traversable area. When they arrive, the UAV takes off and gathers the data to create a map. Similarly, in [hsieh2007adaptive, garzon2013aerial, guerin2015uav, fankhauser2016collaborative, shen2017collaborative, hood2017bird], UAVs and UGVs perform a cooperative navigation or an exploration where UAVs give a wider range of scanning for the UGVs to navigate through the unknown environment. To overcome the short battery life problem of UAVs, tether powered drones were developed [choi2014tethered, zikou2015power, kiribayashi2018design]. They provide power from the ground station via the tether to enable the UAV to fly almost limitless. Moreover, [papachristos2014power, kiribayashi2015modeling] developed a tether connected UAV/UGV cooperation system. They can utilize the advantages of both flying and ground robots.
However, all of these cooperative approaches use the UAVs only as a flying sensor that can provide a wider range of scanning.
To enhance the UGVs traversability, one of the solutions is to use a tethered vehicle equipped with a winch. Some off-road cars with a winch can climb a very steep slope by winding the tether anchored at the top of the slope. Also, [nesnasaxel, nesnas2008axel] developed a two-wheel rover which has a winch in the middle of the shaft. Their objective is to explore an inaccessible crater with a help of a mother vehicle. [walker2015qualification, walker2016update] also demonstrated the dual rover system connected with a tether to explore the possible skylights on the moon. A four-wheeled parent rover waits near the edge and the two-wheeled child rover explores the steep terrain. [mcgarey2016system, mcgarey2018field] made a tethered vehicle that can explore a steep terrain and create a 3D map of the environment.
Although they can enhance the rough and steep terrain traversability of the UGVs, the tether is required to be anchored beforehand at the top of the slope by a parent rover or a human. In this case, the reachability will be limited to the already accessible area by the UGV and area below, made possible by the tether. As an exception, in [drenner2002mobility], a two-wheel rover equipped with a grappling hook, launches the hook to an object and use it as an anchor to raise itself. Nevertheless, it cannot climb over a cliff nor detect or observe the anchoring point unobservable from the lower ground.
In this research, we propose a UAV / UGV cooperative system which uses the UAV not only as a flying sensor but also as a device to anchor a tether on top of the cliff to assist the UGV to climb. To the best of our knowledge, this is the first system that uses a UAV to attach a tether that can be used by the UGV to extend the reachable area.
The contributions of this paper are:
Comparison of the tether attachment methods,
Building a framework for autonomous collaborative navigation, cliff detection and tether attachment.
The remainder of this paper is organized as follows. Section 2 describes the proposed system and mission statement. The system overview of the UAV, UGV are given in Section 3 and 4 respectively. The tether attachment methods are shown in Section 5. Sections 6 describes our experimental set-up and results. In Section 7, we conclude with our vision towards the future work.
Ii Proposed System
The overview of the proposed system is described in this section. Then, the details of an experimental mission to demonstrate the feasibility will follow.
Ii-a System overview
The main concept of our proposed system is that a UAV and a UGV are connected with a tether, allowing the UAV to attach the tether to a certain point, thus enhancing the accessibility of the UGV. The UAV can be considered as a useful tool for the UGV since it can extend the scannable and accessible area impossible to reach only with the UGV.
To realize this system, the UAV should be able to detect the anchoring point and automatically attach the tether to it. In addition, the UGV should be equipped with a winch powerful enough to lift its own mass. Furthermore, to operate autonomously, the UAV
needs a position estimation, trajectory following, obstacle avoidance and a 3D mapping capability. Also, theUGV must plan a path based on the traversability analysis calculated from the UAV’s sensor measurement data. The two robots are connected to the same network via a Wifi connection and share information such as estimated pose and generated 3D map on Robot Operating System (ROS) (Fig.2). The details are described in the following sections (Section III, LABEL:sec:conclusion).
We tested the feasibility of our concept by doing an experiment of an autonomous mission. In this mission, a UAV and a UGV start from a certain position and maneuver towards a goal position. Until they reach a cliff, the UAV move towards the goal ahead of the UGV, to create a map. The UGV plans a path that avoids obstacles or a rough terrain using this map and follows the UAV. Once they detect a cliff, the UAV flies above the cliff and starts searching an anchoring point. When it finds the point, the UAV starts flying around it to attach the tether and autonomously land to a safe area after the attachment. Then, the UGV starts winding the tether to climb the cliff. In this experiment, the mission finishes with the successful climb of the cliff. The tether attachment methods are explained in Section V.
Iii Uav System Overview
In this section, an overview of the UAV is described.
We developed a custom-made quadrotor with NVIDIA Jetson TX2 for fully onboard localization, mapping and navigation (Fig.4). A custom made flight controller was installed for attitude control and sensor interfaces. It has a global shutter monocular fisheye camera, a time-of-flight (ToF) sensor and a laser sensor for height measurement. The flight controller has an inertial measurement unit (IMU) for the attitude control. The frequency of each sensor measurements are image: 20hz, pointcloud: 5Hz, laser: 100Hz and IMU: 100Hz. The TX2 and the flight controller are connected with a serial communication link, sending telemetry at 100Hz and receiving commands at the same frequency.
The navigation of the UAV runs on ROS. For the localization and position control, we followed the similar framework as [sa2017build]. The UAV uses Visual Inertial Odometry (VIO) to estimate the relative position and orientation from the reference frame. Since this position frequency is not high enough for position control, a Multi Sensor Fusion (MSF) framework [lynen2013robust] was used to fuse with the IMU measurement. In addition, as the tether attachment maneuver requires the UAV to fly near the structure or a cliff, an obstacle avoidance trajectory planning was performed to calculate a reference trajectory for the position control framework. For position control, a model predictive control (MPC) was used to calculate the roll, pitch, yaw rate and thrust command to the flight controller. The controller controls the motor speed with PID control to follow the given attitude.
As also discussed by [delmerico2018benchmark], there are several open-source libraries available for VIO [qin2017vins, bloesch2017iterated, leutenegger2015keyframe, sun2018robust]. We used ROVIO because it does not need an initialization movement and computation is relatively lightweight.
Iii-B2 Sensor Fusion
Iii-B3 Obstacle Avoidance
For the obstacle mapping, Octomap [hornung2013octomap] was used to create a voxel grid from the pointcloud. The position of the sensor is provided by the MSF. For the obstacle avoidance trajectory planning, we used the motion primitive approach in [liu2017search]. We customized the MRSL Motion Primitive Library ROS, the open-source ROS wrapped package of the planner in [liu2017search] to perform 5 Hz planning.
The attitude control was done on the flight controller with a PID control. Its input is the roll and pitch angle, angular velocity around the yaw axis and the thrust. To follow the trajectory from the planner, a linear MPC was used. We used the framework of [kamel2017model] with the system identification of the first order attitude dynamics of the PID controlled quadrotor.
Iv UGV System Overview
We developed a custom made ground robot based on a commercially available caterpillar platform with UP Core processing unit for onboard localization, mapping and navigation (Fig.4). The platform hosts IMU with accelerometer and gyroscope for attitude estimation and a custom made winch for climbing steep terrains. The robot also has a PID controller for each motor and tracks motor movements with encoders. Motor for tether winding uses sensorless relay-based switch for simple control, to enable high power output. Processing unit sends commands to the controller at 100Hz and receives odometry and attitude data at the same rate.
The on-board processing unit of the UGV runs ROS, which is connected to UAV as a client. For the localization, robot uses dead reckoning based on odometry and IMU data similar to [fuke1996dead]. The on-board computer receives voxel data of the surroundings from the UAV and translates it to grid map. Furthermore, the system performs path planning and cliff detection on processed map data. For a position control, UGV uses Pure Pursuit algorithm [coulter1992implementation] to follow the path.
Iv-B1 Map filtering
Before performing operations on grid map we filter it with several passes to suppress the noise of the depth measurements from the ToF camera.
By following the methods in [Fankhauser2016GridMapLibrary, fankhauser2016collaborative], the map was filtered sequentially by applying inpainting, slope and roughness calculation, and the traversability estimation as shown below.
Finally, we apply a minimum filter with a radius of 30 cm to traversability layer, to expand non-traversable spots.
Iv-B2 Path planning
Algorithm used for path planning is A* [hart1968formal]. This algorithm searches for the optimal path on 2D grid with the lowest total cost, given start and goal points. The cost at index of the grid map is defined by the weighted sum of unknown area cost, elevation cost and inverse traversability as following.
where is cost for an unknown area, corresponds to traversability, to the weight of traversability cost component, as a small value to avoid zero division, corresponds to elevation and to elevations weight.
Proposed algorithm doesn’t take into account a tether and models of UAV and UGV movements.
Iv-B3 Cliff detection
To detect a cliff, the traversability layer was utilized with the accessibility analysis. If a low-cost path to the goal point could be found by the path planner, it is considered as cliff-free. On the contrary, if the cost of the path is higher than a certain threshold, the path is considered to contain a cliff. We perturbate the destination for the planner within a certain range around the given goal point to acquire the lowest cost path. If the lowest path cost still exceeds the threshold, it means there is an unavoidable cliff between the start and goal point. This perturbation technique is used to avoid a false detection if the goal point is on an obstacle. The goal point of the lowest cost path is sent to the state machine for the next maneuver.
Iv-B4 Landing Pose Search
Landing place is chosen based on the current UAV’s position and it’s surroundings. It must have defined values of grid map, difference of elevation smaller than threshold, low slope and high traversability. We perform check of all these conditions around the current position of UAV, and if such place is found it is provided to the state machine.
V Tether Attachment
In our proposed system, the most unique part is the anchor attachment. The UAV is able to attach a tether on top of a cliff and also detect the optimal place to attach it using its own sensors. In this section, we discuss the possible options and the adopted method for our system.
V-a Comparison of the tether attachment methods
There are several possible ways to attach a tether to the environment.
V-A1 Using a grappling hook
Grappling hook is a device with multiple hooks attached to a rope, and used to temporarily secure one end of a rope. It has been used by ancient Japanese ninjas, and sailors in naval warfare to catch a ship rigging. This method does not need a heavy mechanism but only a lightweight hook. However, finding a right place to hook on is difficult, and the attachment is not secured meaning that it could be unhooked accidentally.
V-A2 Using tether winding technique
This method is also very simple. A tether is wound around a pole-like structure a few times and secured only with its friction. The UAV does not need a special device to attach it but, it needs to detect a pole-like structure and fly around in an appropriate path. [augugliaro2013building] used this approach to make a rope bridge but, this was done with carefully pre-calculated trajectories and an accurate positioning with a motion capture system.
V-A3 Using a grasping device
Another possible way is to use a grasping device. The UAV itself can become a kind of anchor by grasping the anchoring point. It is easy to unlock the gripper when the UGV finished climbing. However, it cannot grasp a large structure, or may become too heavy to meet the torque requirement for large UGVs.
V-A4 Inserting a peg into the ground
Another way is to use a peg as an anchor to the ground. This method can be used at most places where there is a soil. It does not need an anchor to attach. The downside of this method is that the mechanism for insertion would become complex.
V-A5 Using a magnet
In [zhang2017spidermav], a UAV attaches tethers by launching a magnetic anchor device to the target. However, the target is limited to the magnetic surface.
V-A6 Hybrid of the grappling hook and winding technique
This method can utilize the benefits of both methods. The UAV winds the grappling hook around the target structure. Compared to methods V-A1 and V-A2, the chance of successful anchoring will be increased. The overviewing comparison can be seen on the Tab. LABEL:tab:comparison.
Comparing these methods, we decided to use the hybrid method of the hook and winding technique because of its simple mechanism and the high chance of successful attachment, although, a solution to unhook the tether should be considered in future research. To utilize this method, the UAV must detect a suitable target for the attachment.