Online Sensor Information and Redundancy Resolution Based Obstacle Avoidance for High DOF Mobile Manipulator Teleoperation

Abstract High degrees of freedom (DOF) mobile manipulators provide more flexibility than conventional manipulators. They also provide manipulation operations with a mobility capacity and have potential in many applications. However, due to high redundancy, planning and control become more complicated and difficult, especially when obstacles occur. Most existing obstacle avoidance methods are based on off-line algorithms and most of them mainly focus on planning a new collision-free path, which is not appropriate for some applications, such as teleoperation and uses many system resources as well. Therefore, this paper presents an online planning and control method for obstacle avoidance in mobile manipulators using online sensor information and redundancy resolution. An obstacle contour reconstruction approach employing a mobile manipulator equipped with an active laser scanner system is also introduced in this paper. This method is implemented using a mobile manipulator with a seven-DOF manipulator and a four-wheel drive mobile base. The experimental results demonstrate the effectiveness of this method.


Introduction
High DOF mobile manipulators are widely used in many fields including industry, the military and in space [1,2].They consist of a high DOF manipulator and a mobile base.The mobile base greatly expands the workspace of the manipulator and the high redundancy also provides more flexibility.Although a wider workspace and flexibility are desired features, this combined structure and high redundancy also makes some classical control problems become more complicated.Obstacle avoidance is one of these classical problems in robotics.
The teleoperator always wants to focus on the main task and not to be distracted by other events while operating the mobile manipulator.For instance, if the task is to move the mobile manipulator to a target position, the best method for the teleoperator is if they only need to control the direction of the movement to arrive at the designated position without worrying about any risk of collision by the end-effector or other critical points of the mobile manipulator.Therefore, automatic obstacle avoidance ability is very important to improve teleoperation performance.
Obstacle avoidance for mobile manipulator teleoperation has been researched for decades.The process can be generally divided into two steps.The first step is obstacle detection; the mobile manipulator needs to know the obstacle position and geometry size to plan the motion to avoid collision.At an earlier stage, ultrasonic sensors were used to detect the obstacle distance [3], but they cannot be used to describe the 3D information of the obstacle.Nowadays, both laser scanners and stereovision have been widely used to accomplish detection tasks [4][5][6] and both of the methods have their own pros and cons.The vision system is lightweight and relatively powerefficient, while lasers provide much more precise details of environmental information.The second step is the obstacle avoidance scheme.Obstacle avoidance has been viewed as a path-planning problem or simply as a reflex action.Planning a path, which is free of any risk of collision, is still the major problem in this field.Kuwata [7] presented the design of an efficient and reliable motion planning system based on rapidly-exploring random trees for urban vehicle driving.Jaillet and Simeon [8] proposed a method to build compact roadmaps, which are representative of the different varieties of free paths.These alternative paths are switched when one path becomes impossible due to environmental changes.Yoshida [9] proposed an online replanning and execution method for reactive collision avoidance in a changing environment.These methods [7][8][9] can deal with the sudden appearance or displacement of obstacles.However, planning a new path that is free of collisions in a complex environment increases the system operation load and may not be finished in the control period.Therefore, it is generally difficult for these methods to handle continuously moving obstacles due to their huge computational cost.Diankov and Kuffner [10] proposed a path-planning algorithm that can return a semi-optimal path with respect to several distance metrics that encode all the domain information.Burns and Brock [11] developed an approach of multi-query motion planning, which uses information from its previous experience to guide sampling to more relevant configurations.Toussaint [12] presented an approach to use approximate inference methods for robot trajectory optimization and stochastic optimal control problems.These algorithms [10][11][12] reduce the computational costs of searches for a possible path, but they cannot provide the capacity to avoid an obstacle that appears suddenly.However, for a high redundant mobile manipulator, besides the above-mentioned two steps, another main issue of teleoperation is the redundancy resolution problem.In past decades, many redundancy resolution methods were proposed, including the projected gradient method [13], the extended Jacobian method [14] and the operational space extension method [15].Recently, some research has focused on the motion planning algorithm to solve more additional tasks.Lin [16] proposed an alternative approach using a forward kinematics and optimization technique to solve the motion planning problem with task priority requirements such as, singularity avoidance and obstacle avoidance.White and Bhatt [17] solved the end-effector trajectory-tracking problem including obstacles avoidance.Liu [18] developed a self-motion control method for redundant nonholonomic mobile manipulators to execute multiple subtasks.Kumar et al. [19] designed neural network based nonlinear tracking controls for kinematically redundant manipulators.However, all the abovementioned redundancy resolution methods generally focused on an off-line algorithm and did not consider external disturbance.They are more like off-line path planning methods, rather than online trajectory generation and most of them are single objective and used for manipulators or low DOF mobile manipulators.In our previous work [20,21], we developed some methods for obstacle avoidance, but they only considered the elbow of the manipulator and ignored the movement of the mobile base.In [22], we proposed a method, which is online sensor based and has the ability to handle multiple classical problems such as singularity avoidance, joint limits and maximum manipulability simultaneously.This method also can be used to improve teleoperation performance while solving the obstacle avoidance problem.
In this paper, we propose a new obstacle avoidance method for a mobile manipulator with a seven-DOF manipulator and a four-wheel drive mobile base.This method employs real-time environment information gathered by an online sensor system to detect and extract the 3D contours of an obstacle.According to these 3D contours and the position of the critical points of the manipulator, the control system changes the manipulator configuration automatically to adapt to the environment to avoid collision.Our approach is an online reflex action planning method for obstacle avoidance.Compared with the aforementioned methods, this method is much simpler and computationally efficient, both in implementation and system operation load.It can be applied in any complex and dynamic environment.The effectiveness of this method is also demonstrated by experimental results.
The contributions of this paper are: (1) we provide a simple method to detect the obstacle using real-time sensor information and plan the motion using redundancy resolution and (2) this is an online planning and control method rather than an off-line algorithm.This paper is organized as follows.Section 2 presents the system structure and the kinematic model of a mobile manipulator with a seven-DOF manipulator and a fourwheel drive nonholonomic mobile base.Section 3 presents the obstacle detection and extraction method.Section 4 illustrates the obstacle avoidance scheme for the mobile manipulator.In Section 5, the experiment results will be given.Finally, the conclusion will be shown in Section 6.

System Structure
The mobile manipulator with a seven-DOF manipulator and a four-wheel drive mobile base is shown in Fig. 1.We can see that every joint of this manipulator is a revolute joint and any two adjacent joints are perpendicular to each other.A gripper is mounted on the end of the seventh link.The structure of the online sensor based control system is shown in Fig. 2. The system is composed of four parts: a four-wheel drive mobile manipulator, an online sensor system and teleoperator and communication systems.The control procedure is described as follows.The four-wheel drive mobile manipulator receives the six dimensional position and orientation commands of the end-effector from the teleoperator through the Internet, which is the communication system.Then the online sensor system gathers the environmental information and sends it to the mobile manipulator at the same time.Then, with the information and the commands, the mobile manipulator controller finds out the best motion path and makes the mobile manipulator respond to implement the task.The feedback data is important for the online sensor-based mobile manipulator to have the ability to perform the redundancy resolution autonomously, which can reduce the burden of the teleoperator effectively.Several pieces of information are needed in order to control this mobile manipulator, such as the velocity information of the mobile base, the joint angle information of the manipulator and the 3D information of the environment.Therefore, an acceleration sensor and gyroscope are used to provide the velocity and orientation information and a joint angle transducer is used to offer the joint angle information and a laser scanner with pan-tilt is used as a 3D environment information measurement system.In order to get the correct integrated information from the online sensor system, the coordinate frame of the laser measurement system needs to be calibrated with the coordinate frame of the mobile manipulator [20].

System Modelling and Redundancy Resolution
The coordinate frame of every link is established according to the classical Denavit-Hartenberg model [23] in order to build the forward kinematic model.
Let the configuration vector of the seven-DOF manipulator be T a 1 2 3 4 5 6 7 q [q ,q ,q ,q ,q ,q ,q ]  , where i q (i 1,2...7)  is the i th joint angle of the manipulator.Define the configuration vector of the nonholonomic mobile base as , where x, y is the position and  is the orientation of the base.Let the configuration vector be T b a q [q ,q ]  and let the task vector be For this mobile manipulator, the transformation matrix of the mobile base coordinate frame is given as: The transformation matrix A of the coordinate frame from the base to the end-effector is given in [21].The forward kinematics of this mobile manipulator can be obtained with these two matrixes.The task can be described as b a f(q) f(q ,q ) With the constraint of the rolling without slipping condition, the velocity input of this nonholonomic mobile base can be set as x cos 0 Since the manipulator is a completely unconstrained system, the velocity input can be set as Then the velocity input for the whole nonholonomic mobile manipulator is given as Hence, the velocity kinematic for the nonholonomic mobile manipulator with respect to time can be calculated by n J (q) where the 6 9  matrix n J is the Jacobian of the nonholonomic mobile manipulator.Since 9    and 6    , the whole system is redundant.For given task   , all solutions  to the velocity kinematics in Eq. ( 6) can be expressed as † † n n n s J (q) (I J (q)J (q)) where the † is the right pseudo inverse of matrix n J , † n n I J J  is the null-space of n J and 9 s    is an arbitrary vector.
The design of the velocity kinematic controller is based on the velocity kinematic model of the nonholonomic mobile manipulator in Eq. (7).The structure of the control law is shown in Fig. 3.The control law is a design based on the principle that the end-effector should reach the desired position and orientation within the minimum possible time.
is the vector of error from the end-effector's current position and orientation to the desired target, S(t) is the online sensor information, K and a are suitable constant gain factors and s  is an arbitrary vector, which is designed to control the secondary task.Any value given to s  will have effects on the internal structure of the manipulator only and will not affect the final control of the end-effector at all.By using this controller we can achieve secondary tasks, such as joint limit avoidance, singularity removing, maximum manipulability and obstacle avoidance.

Obstacle Detection and Extraction
There are several methods to detect an obstacle, in this paper; we use a laser scanner to obtain the 3D information of the environment.
The laser scanner is mounted on a pan-tilt system in front of the mobile base, so the scanner can detect different 3D information of the environment with the rotation of the pan-tilt.In our approach, we just use the tilt function (the laser scanning area is shown in Fig. 4).The control system reads the data from the laser scanner every tilt-step angle, which is defined as ts  .The entire tilt angle is defined as where N is the number of tilt-steps.The distance from s O to the detected object can be defined as i d .If i d is smaller than a cut-off distance, which is defined as l , the object should be seen as obstacle.
Before using the obstacle information, the coordinate frame of the laser system needs to be calibrated with the coordinate frame of the mobile manipulator, which is shown in Fig. 5.The calibration can transfer the point coordinates   s s s x ,y ,z , which relate the laser system frame to the coordinates   m m m x ,y ,z in the manipulator frame.
where m s R is the transform matrix from the laser system coordinates to the manipulator coordinates and m s O is the coordinate of the origin of the laser system frame in the manipulator coordinate frame.
Sometimes, the manipulator will block the laser beam and the system will make a mistake in defining the manipulator as an obstacle.In this case, we can check the joint position of the manipulator according to the forward kinematic model.If the obstacle point is too close to the joint position, it must be the manipulator itself.So we can delete this kind of point from the obstacle information and then interpolate some points with linear fit according to the rest of the obstacle information.Y Z plane of the manipulator coordinate frame, is used in order to extract the contours of the obstacle at the front of the mobile manipulator.All the points, which can be projected to this plane are likely to block the movement of the mobile manipulator, otherwise these points are not a threat to the mobile manipulator.This 1m by 2m rectangle is divided into a 20 40  grid; every unit of this grid is a 50mm 50mm  square.The projection of the obstacle points is also divided into different units.In each unit, we only select the nearest point, which has the smallest m x value in the manipulator coordinate frame, as the most threatening obstacle point.
After the process mentioned above, a 20 40  matrix P is obtained to describe the contours of the obstacle, in which every element is defined as m m i,j min(x (i, j)) x (i, j) p 0 else where i 1,2...20  , j 1,2...40  and m x (i, j) is the m x value of the obstacle point in corresponding (i, j) unit.

Obstacle Avoidance Scheme
Obstacle avoidance for mobile manipulators can be divided into three classes: (1) obstacle avoidance for the manipulator, (2) obstacle avoidance for the mobile base and (3) obstacle avoidance for the whole mobile manipulator.In our previous work [22], we discussed obstacle avoidance for the mobile base, while in this paper we just focus on the obstacle avoidance for the manipulator.Our goal is to try to make the manipulator change its configuration automatically to avoid the obstacle while the teleoperator is controlling the mobile manipulator.
As shown in Fig. 6, the seven-DOF manipulator has three critical points for obstacle avoidance: the shoulder, the elbow and the end-effector.The shoulder is a fixed point in the manipulator coordinate frame, the elbow and the end-effector are mobile points.The end-effector should be connected to the shoulder with a straight line and the same for between the elbow and the shoulder and the elbow and the end-effector.Suppose the mobile base moves straight ahead, the manipulator will be safe if these three lines are not blocked by any obstacles.In other words, the manipulator is safe when the projection of these three lines on the rectangular plane is not interfered with by any projection of an obstacle point.As shown in Fig. 7, the three lines are projected to the rectangular plane, which is mentioned in the last section.Point s P is the projection of the shoulder, point eb P is the projection of the elbow and point ee P is the projection of the end-effector.Three projection line segments s ee P P , s eb P P and eb ee P P respectively have their own forbidden area, denoted as 1 F , 2 F and 3 F .The forbidden areas consist of the units where the line segment lies and the neighbours of these units.The projection of an obstacle point is not allowed to exist in these forbidden areas.Matrix L is defined to describe the forbidden area in the rectangular plane.The element of matrix L is defined as i,j where i 1,2...20  , j 1,2...40  and From the two matrixes P and L , a matrix E , which is used to describe the interference area, can be obtained.The element is defined as i,j i,j i,j e p l   If E  0 , this means interference occurred and the manipulator is not safe if the mobile manipulator keeps going forward without making any changes and the collision will occur in the corresponding (i, j) unit where i,j e 0  .In this case we should check these three forbidden areas 1 F , 2 F and 3 F separately.Considering importance and flexibility, we check 1 F first and then 2 F , followed by 3 F .If interference occurs in 1 F , the control system needs to go over every unit in the working area of the end-effector to find the safe unit that is closest to the current position of the end-effector ee P and then make the end-effector move to this unit directly.The checking procedure of 2 F is almost the same; the only difference is the elbow movement, which is described in detail in [21].If the interference only occurs in 3 F , the easiest way to avoid the obstacle is to move the end-effector to make the two lines s ee P P and s eb P P coincide.

Experimental Results
To verify this obstacle avoidance method, several experiments are conducted on a nonholonomic mobile manipulator.To perform the experiment, a seven-DOF manipulator named LWA3, which is produced by Schunk Company, is mounted on a Segway nonholonomic mobile base, as shown in Fig. 1 and a laser scanner system named LMS111, which is produced by SICK, is used as the 3D environment information detection system with a pan-tilt.In this experiment, the mobile manipulator needs to change the configuration of the manipulator automatically in order to pass through a bridge structure.First of all, we verify that the control system is still able to obtain the correct environment information and extract the contours of the obstacle even if the manipulator blocks the laser beam.The initial configuration vector of the manipulator is set as T a q (0) [0,0,0, / 2,0, / 4,0] The posture of the manipulator and the bridge structure are shown in Fig. 8.So the end-effector will block part of the laser beams when the laser system scans upper area.Fig. 9 shows the raw data obtained by the laser system.It can be seen that there are a lot of obstacle points from the manipulator itself because the manipulator blocks the laser beam.Secondly, we need to verify that the manipulator can change its configuration to avoid the obstacle and go through the bridge structure.The initial configuration vector of the manipulator is set as T a q (0) [0, / 4,0, / 2,0,0,0] The posture of the manipulator is shown in Fig. 12.The end-effector and the elbow are higher than the top of the bridge structure.The manipulator will collide with the bridge structure if it keeps going forward.The obstacle avoidance scheme mentioned in Section IV is used to adjust the configuration of the manipulator.Fig. 13 shows the position of the end-effector and elbow.It is clear that the end-effector moves down to a safe position first and then the elbow is turned to avoid the obstacle.Fig. 14 shows the 3D trajectory of the end-effector and elbow.The smallest distance from the obstacle to the end-effector and the elbow is shown in Fig. 15.We can see that the manipulator passes through the bridge structure safely.In summary, this experiment illustrates that the designed obstacle detection and avoidance method achieves the purpose of adjusting the configuration of the manipulator automatically to adapt to the environment to avoid collision.

Conclusion
This paper investigated the obstacle avoidance method for a mobile manipulator with a seven-DOF manipulator and a four-wheel drive mobile base.This method employs real-time environment information gathered by an online sensor system to detect and extract the 3D contours of the obstacle.According to these 3D contours and the position of the critical points of the manipulator, the control system changes the manipulator configuration automatically to adapt to the environment to avoid collision.This method is easy to implement and reduces the computational cost for the control system.The effectiveness of this method and the real-time performance is also demonstrated by experimental results.This method also can be applied further in unknown environments for obstacle avoidance and guidance control tasks.

Acknowledgment
This paper is supported by the major innovation project of the Ministry of Education Training Funds Project (NO.708045).

Figure 2 .
Figure 2. Control system structure e e x , y ,z is the position of the end-effector and e e e , ,    is the orientation defined as Euler Angles.
where v is the linear velocity and  is the angular velocity.Therefore, the kinematic model of the mobile base is given as b b b

Figure 5 .
Figure 5. Coordinate frame Asshown in Fig. 5, a rectangular plane, which parallels the m mY Z plane of the manipulator coordinate frame, is used in order to extract the contours of the obstacle at the front of the mobile manipulator.All the points, which can be projected to this plane are likely to block the movement of the mobile manipulator, otherwise these points are not a threat to the mobile manipulator.This 1m by 2m rectangle is divided into a 20 40  grid; every unit of this grid is a 50mm 50mm  square.The projection of the obstacle points is also divided into different units.In each unit, we only select the nearest point, which has the

Figure 6 .
Figure 6.Projection of critical points of manipulator

Figure 9 .
Figure 9. Raw data of laser system

Fig. 10
Fig.10shows the revised data for the environment.As indicated by arrows, some points are interpolated based on the linear fitting of the remaining environment data.The results show it reconstructed the original look of the bridge structure.Fig.11shows the extraction of the contours of the bridge structure.

Figure 10 .Figure 11 .
Figure 10.Modified data of laser system