# A Novel Path Control Algorithm for Networked Underwater Robot

Authors: Minghong She; Liyu Tian
Journal: Journal of Robotics
 (2018)

---

## Abstract

Under the network environment, the traditional control method of underwater Robot path has the disadvantages of low control accuracy, large error, and inefficiency. This paper proposes a novel path control method for underwater Robots based on the NURBS (nonuniform rational B-spline, NURBS) curve fitting method, which utilizes a sensor or camera to detect the static and dynamic obstacles, establishes the kinematics model of underwater Robots, gets the target function of rob shortest path, and analyzes underwater Robot constraints. According to the basic fluid mechanics, the resistance of the underwater Robot is determined. The filter function is used to smooth the process, and the NURBS curve fitting method is applied to control the path of the underwater Robot. Experimental results show that the improved method that proved to be practical is superior to the traditional one in the aspect of control time and accuracy.


---

## Body

## 1. Introduction

With the depletion of land resources, money, time, and manpower are invested to develop underwater resources [1]. Therefore, underwater Robots are a concern for people of many countries [2]. In order to complete an underwater task for one time, a variety of underwater Robots complex operation and safe navigation are to be carried out in accordance with the corresponding navigation path [3, 4].To achieve the best navigation plan and keep the underwater Robot running on the scheduled course [5], it is necessary to ensure the maneuverability of the underwater Robot [6, 7]. When the underwater Robot has good handling performance, it cannot only maintain stable driving course, depth, and speed but also quickly change the heading, depth, and speed and correctly perform all kinds of operations [8]. The path control of underwater Robot affects the performance of underwater Robot [9]. The method of networking can effectively control the running path of underwater Robots and shorten the control time [10, 11]. Therefore, the underwater Robot path control under the networked environment has become the focus of research in this field and has attracted the attention of many scholars.Mahmoodabadi, Mohammad Javad et al. [12] mainly aims at controlling the path of underwater Robot when the underwater Robot is avoiding the obstacle and the direction of movement is not corrected. Based on the establishment of integrated navigation model and the detection based dynamic obstacle avoidance strategy, the discrete time multithread concurrent simulation framework and model are used to design the effective control of underwater Robot path. However, the method wastes much time. Zanoli, Silvia M., and Giuseppe Conte [13] aim at resolving the problem of low control speed or zero speed state in traditional control method, and the frame control moment gyroscope is introduced as the path control executive mechanism to realize the path control of the underwater Robot. This method can effectively shorten the control time of the path, but with a problem of low control accuracy [14].To solve the above problems, a path control method of underwater Robot based on NURBS curve fitting method is proposed. The experimental results show that the control accuracy and efficiency are improved by adopting the presented control method.


## 2. Construction of Kinematics Model of Underwater Robot

When the underwater Robot is effectively controlled under the condition of network, it is necessary to have a good understanding of the underwater Robot. The use of sensors or cameras to detect static and dynamic obstacles and the establishment of underwater Robot kinematics model can improve the path control method to provide the basis.When the kinematic model of the underwater Robot is established, the head adjustment of the target underwater Robot can be obtained by adjusting the amount of integration processing [15]. The kinematic model is given by(1)Hg1=∑Kr2Crwhere Cr is output value and Kr2 is weighted coefficient.For the existence of the interference of underwater Robots, the use of arithmetic mean filtering method for filtering to eliminate the Gaussian noise has a positive effect [16]. When using the most single arithmetic mean filter, the data received at each time is replaced by the average of the received data in the neighborhood of the length of time. The expression is(2)yn=1m∑i=1mxn-iwhere m is constant, i is the number of filters, and xn-i is the wavelength of n-i filter.In the filter, the high frequency of interference removal effect will not achieve the best results. In this case, it is necessary to suppress a higher frequency of interference by adding a virtual damping force [17, 18]. This makes the response of the underwater Robot relatively slow, increasing its stability. The expression is(3)ui=Δtei+Tui-1Δt+Twhere Δt is the sampling period, T is the inertia constant, ei is the time deviation of i, and ui-1 is the response time of time i.In the case of satisfying the absolute stability of the underwater Robot, the positive moment is used as the stability storage device [18] and then the balance coefficient can be changed as follows:(4)Cv=1-Mwm′+Zq′Mq′Zw′During the operation of the underwater Robot, the obstacle in the underwater environment will form a certain potential field and the repulsion force ofFrep is generated for the underwater Robot. The closer the distance is, the larger Frep will; that is to say, the closer the underwater Robot and the obstacle, the greater the potential energy of the underwater Robot and vice versa [19]. This potential field is similar to the potential field, inversely proportional to the distance, so the repulsive potential function can be expressed as(5)KrρX,Xobsρ≤ρm0ρ≺ρmwhere Kr is the repulsive potential field constant, X is the position vector of the underwater Robot, Xobs is the obstacle position vector in the water, ρ is the shortest distance between the underwater Robot and the obstacle, and ρm is the range of the repulsive potential field. When the distance between the underwater Robot and the obstacle is greater than ρm, the repulsive potential field does not interfere with the operation of the underwater Robot.To avoid the collision between the underwater Robot and the obstacle, it is required to set a minimum safe distanceρ0, when ρ→ρ0 and Frep→∞, and to ensure that Frep is continuous, the expression of Frep is(6)Frep=Kr1ρX,Xobs-ρ02-1ρm-ρ02ρ≤ρm0ρ≻ρmBased on the above, sensors or cameras are used to monitor static and dynamic underwater obstacles and to obtain the position, speed, and acceleration information of obstacles in real time. These messages can fuse into moving obstacles. A number of navigation paths represented by timet can be used in the obstacle motion constraints of underwater Robots. Suppose that obsk is a rigid body with a center of αkt=α1kt,α2kt,k=1,2,...,q,t∈0,tk and αk.=1,2,...,q is a continuous real vector valued function, also the path of motion obstacles. Suppose that the underwater Robot and obstacle k can be represented by Trob and Tk, respectively, k=1,2,...,q. When the constraint of the underwater Robot is x˙1sinθ-x˙2cosθ=0 without lateral collision and the general coordinate system is qt=x1tx2tθtT, the kinematic model of the underwater Robot is expressed as follows:(7)q=cosθt0sinθt000vtwtwhere υt and ωt are, respectively, tangential velocity and angular velocity. In the navigation process, the speed of underwater Robot should be regulated within the maximum allowable speed to prevent the underwater Robot from colliding; meanwhile the underwater Robot must follow the rules of acceleration.


## 3. Improvement of Path Control Method for Underwater Robot

### 3.1. Constraint Analysis

According to the kinematic model of the underwater Robot, the objective function of minimizing the path length is obtained:(8)fh=min∑h2∑f=1FEfh-E0-Etf2On this basis, various constraints are introduced into the objective function as the penalty term and the expression of the self-adaptation function is obtained:(9)min⁡Fpcna=∑h2∑f=1FEfh-E0-Etf2+cn∑f=0Fmax⁡0,Xl-Et′where t′=fh,cn is a larger value that is penalized for breaking the constraint, n=1,...,9; Xl is the boundary area of its rob activity. Their constraint types are as follows:(i) Boundary Constraint.Assuming that X is the boundary of the selected area, the underwater Robot should be subject to the following motion boundary constraints during the moving process:(10)p0=x0,θ0ptf=xf,θfX0,Xf∈X(ii) Movement Restriction.In the process of underwater Robot navigation, there is a certain motion constraint. When the ship is sailing along the planning path, its acceleration and speed are prevented from colliding in the prescribed area. In literature [20], its motion constraint is expressed as follows:(11)υt≥υminυt≤υmaxωt≥ωminωt≤ωmaxt∈0,tf(iii) Obstacle Avoidance Constraint.To ensure that underwater Robots maintain a minimum safe distance from other static or moving underwater obstacles during navigation, dorb_k and dok are setting as the given safety distance and actual distance of rob and αk, respectively; therefore, dorb_k is expressed as(12)dorb_k=xt-αkt2-r+rkwhere1≤k≤q. Thus, in X, rob should satisfy the following barrier constraints:(13)dobs_k-dokt≤0,∀k=1,…,q.t∈0,max⁡tf,tk


### 3.2. Implementation of the Proposed Method

Based on the analysis of constraints for underwater Robot and the basic fluid mechanics, the resistance of underwater Robot is determined, the filter functions are smoothed, and underwater Robot path is controlled by using NURBS curve fitting methodIn view of the basic fluid dynamics, the total resistanceRt of the underwater Robot can be divided into frictional resistance Rf and residual resistance Rr. When the underwater Robot is in water for a long period of time, the wave resistance is negligible and the resistance is as follows:(14)Rm=0.5ρVs2SCf+ΔCf+Cpvwhere ρ is the density of water, Vs is the speed of underwater Robot, S is wet surface area, Cf is friction resistance coefficient, ΔCf is friction resistance subsidy coefficient, and Cpv is viscosity resistance coefficient.Supposing that the running path of an underwater Robot can be represented by a weighted directed graphGV,E, in which the set V is a set of fixed points, n is the fixed-point number of the fixed-point set, E is the arc set of the m arc, vi,vj is the arc from vi to vj in E, and dvi,vj is the nonnegative weight of the arc vi,vj. Assuming that vi and vj are the paths from vertex vi to vj in V, the expression is as follows:(15)P=v0=vi,…,vn=vjFor a path sequence consisting ofn path points, the length of the p0,p1,...,pn-1,pn path is(16)Ln=∑k=1ndpk-1,pkwhere dpk-1,pk is the straight-line distance of the pk-1 and pk path segments. The evaluation function is fL=Ln/dmin, including the fact that dmin is the linear length of p0 and pn. When fL=1, the path length is the shortest; that is, the underwater Robot can sail straight from p0 to pn. Considering the operating state of underwater Robot as a discrete process, the position of some obstacles will change, causing it to be controlled in the wrong direction. So the filtering function is used to smooth the filtering function:(17)hk=hk-l+2hk-l+1+⋯+2hk+l-12l+1where hk is the density of obstacles after smoothing and l is the filter length.It is assumed that the entire underwater Robot path using theDPSS algorithm is D=d1,d2,...,dn, including the fact that dn is the n obstacle node on the path, and the Euclidean distance between all two adjacent obstacles is defined as(18)L=∑n=1lxn+1-xn2+yn+1-yn2where xn,yn is the coordinates of the grid node dn.The minimum turning radiusRmin is the limit condition which cannot be ignored in underwater Robot path planning. Path control adopts the NURBS curve fitting method to determine the minimum turning radius of the underwater Robot, so as to realize the rapid and safe navigation of the underwater Robot in water. Expression is as follows:(19)fR=∑k=1n1rk-Rmin,rk≥Rmin∞,rk≺RminIn (19), rk is the turning radius of the path k point. When rk≺Rmin, the path control caused by the turning is infinite, not worth the candle.In order to satisfy the minimum turning radius of an underwater Robot, the maximum curvaturekmax of the optimal path generated must satisfy the following constraints:(20)kmax≺1RminFor the underwater Robots with different running paths, it is possible to satisfy the minimum turning radius requirement of the underwater Robot by selecting the appropriate parameterR to set up the upper model. The path control method obtained from the previous analysis is in accord with the control characteristics and motion characteristics of the underwater Robot.


## 3.1. Constraint Analysis

According to the kinematic model of the underwater Robot, the objective function of minimizing the path length is obtained:(8)fh=min∑h2∑f=1FEfh-E0-Etf2On this basis, various constraints are introduced into the objective function as the penalty term and the expression of the self-adaptation function is obtained:(9)min⁡Fpcna=∑h2∑f=1FEfh-E0-Etf2+cn∑f=0Fmax⁡0,Xl-Et′where t′=fh,cn is a larger value that is penalized for breaking the constraint, n=1,...,9; Xl is the boundary area of its rob activity. Their constraint types are as follows:(i) Boundary Constraint.Assuming that X is the boundary of the selected area, the underwater Robot should be subject to the following motion boundary constraints during the moving process:(10)p0=x0,θ0ptf=xf,θfX0,Xf∈X(ii) Movement Restriction.In the process of underwater Robot navigation, there is a certain motion constraint. When the ship is sailing along the planning path, its acceleration and speed are prevented from colliding in the prescribed area. In literature [20], its motion constraint is expressed as follows:(11)υt≥υminυt≤υmaxωt≥ωminωt≤ωmaxt∈0,tf(iii) Obstacle Avoidance Constraint.To ensure that underwater Robots maintain a minimum safe distance from other static or moving underwater obstacles during navigation, dorb_k and dok are setting as the given safety distance and actual distance of rob and αk, respectively; therefore, dorb_k is expressed as(12)dorb_k=xt-αkt2-r+rkwhere1≤k≤q. Thus, in X, rob should satisfy the following barrier constraints:(13)dobs_k-dokt≤0,∀k=1,…,q.t∈0,max⁡tf,tk


## 3.2. Implementation of the Proposed Method

Based on the analysis of constraints for underwater Robot and the basic fluid mechanics, the resistance of underwater Robot is determined, the filter functions are smoothed, and underwater Robot path is controlled by using NURBS curve fitting methodIn view of the basic fluid dynamics, the total resistanceRt of the underwater Robot can be divided into frictional resistance Rf and residual resistance Rr. When the underwater Robot is in water for a long period of time, the wave resistance is negligible and the resistance is as follows:(14)Rm=0.5ρVs2SCf+ΔCf+Cpvwhere ρ is the density of water, Vs is the speed of underwater Robot, S is wet surface area, Cf is friction resistance coefficient, ΔCf is friction resistance subsidy coefficient, and Cpv is viscosity resistance coefficient.Supposing that the running path of an underwater Robot can be represented by a weighted directed graphGV,E, in which the set V is a set of fixed points, n is the fixed-point number of the fixed-point set, E is the arc set of the m arc, vi,vj is the arc from vi to vj in E, and dvi,vj is the nonnegative weight of the arc vi,vj. Assuming that vi and vj are the paths from vertex vi to vj in V, the expression is as follows:(15)P=v0=vi,…,vn=vjFor a path sequence consisting ofn path points, the length of the p0,p1,...,pn-1,pn path is(16)Ln=∑k=1ndpk-1,pkwhere dpk-1,pk is the straight-line distance of the pk-1 and pk path segments. The evaluation function is fL=Ln/dmin, including the fact that dmin is the linear length of p0 and pn. When fL=1, the path length is the shortest; that is, the underwater Robot can sail straight from p0 to pn. Considering the operating state of underwater Robot as a discrete process, the position of some obstacles will change, causing it to be controlled in the wrong direction. So the filtering function is used to smooth the filtering function:(17)hk=hk-l+2hk-l+1+⋯+2hk+l-12l+1where hk is the density of obstacles after smoothing and l is the filter length.It is assumed that the entire underwater Robot path using theDPSS algorithm is D=d1,d2,...,dn, including the fact that dn is the n obstacle node on the path, and the Euclidean distance between all two adjacent obstacles is defined as(18)L=∑n=1lxn+1-xn2+yn+1-yn2where xn,yn is the coordinates of the grid node dn.The minimum turning radiusRmin is the limit condition which cannot be ignored in underwater Robot path planning. Path control adopts the NURBS curve fitting method to determine the minimum turning radius of the underwater Robot, so as to realize the rapid and safe navigation of the underwater Robot in water. Expression is as follows:(19)fR=∑k=1n1rk-Rmin,rk≥Rmin∞,rk≺RminIn (19), rk is the turning radius of the path k point. When rk≺Rmin, the path control caused by the turning is infinite, not worth the candle.In order to satisfy the minimum turning radius of an underwater Robot, the maximum curvaturekmax of the optimal path generated must satisfy the following constraints:(20)kmax≺1RminFor the underwater Robots with different running paths, it is possible to satisfy the minimum turning radius requirement of the underwater Robot by selecting the appropriate parameterR to set up the upper model. The path control method obtained from the previous analysis is in accord with the control characteristics and motion characteristics of the underwater Robot.


## 4. Simulation Results

In order to verify the effectiveness and feasibility of the improved control method, it is necessary to make a comparative analysis of the improved methods. The experiment is simulated by MATLAB, and the result is compared by NURBS curve fitting method. The simulated cable detection underwater Robot is shown in Figure1. The hardware test platform is under the condition of single-phase inverter unit and controlled rectifier of model PM201CL1A061. Platform identification algorithm is DSP27334 main control chip. The production company is TI.Figure 1
The structure of the cable detection underwater Robot.


### 4.1. Navigation Path Comparison

In order to verify the effectiveness of the improved method, the experimental range is set at a certain number of underwater faults in 100∗40. Backstepping method, immune fuzzy PID method, and improved method are adopted to control the shortest path, respectively. The results are shown in Figures 2, 3, 4, and 5.Figure 2
The shortest path of the Backstepping method.Figure 3
The shortest path of immune fuzzy PID method.Figure 4
The shortest path of the improved control method.Figure 5
The comparison of the shortest paths of the three-control methods.In Figure2, the black dotted line represents the control point of the underwater Robot Backstepping method in the case of underwater obstacles.In Figure3, the blue cross line represents the control point of the underwater Robot immune fuzzy PID method in the case of underwater obstacles.The light green dotted line in Figure4 shows the control point of the underwater Robot of the improved control method in the case of underwater obstacles.In Figure5 shows the result of the comparison of the shortest paths of the three-control methods.As can be seen from Figures2–5, the results of three methods are different under the condition of underwater Robot that has a certain range of motion. The Backstepping method was controlled 62 times, of which only 29 were on the best path for the underwater Robot. When the obstacles in the water increase, the trajectory of the Robot deviates from the optimal path and the control is not effective enough. The immune fuzzy PID method increases the number of control accordingly, and the control increases to 85 times with the increase of the obstacles in water. The path of navigation deviates from the optimum path, only 4 times returning to the best path, but rapidly deviating. This shows that the stability is poor; the improved method can make the number of control 100 times; the whole path of the underwater Robot deviates little from the optimal path; and it coincides with the optimal path many times. It shows good stability. From this we can see that the presented method has certain advantages.


### 4.2. Complexity Analysis

In the optimal path control method of underwater Robot, the degree of underwater Robot path control is described by the running time of underwater Robot under the same path of the same length. This quantitative description of underwater Robot navigation path control method is highly operational and can be used to determine the trajectory control of underwater Robot directly. As a result, the time of the voyage can be calculated directly by the length of the section and the speed of sailing. The expression for travel time is(21)Rtime=RdistRspaceRdist is the length of the current section, and Rspace is the average speed of the underwater Robot. The time required for the Robot to run in three ways is shown in Figure 6.Figure 6
Time comparison analysis.As you can see from Figure6, when the path length is constant, the three methods vary in time. By using the Backstepping method, the running time is about 21.89 min and the time spent in 0-20M is rapidly increasing while the time spent in 20-30 does not increase. After 30m, it had been on the rise and had no tendency to decline. The immune fuzzy PID method takes about 32.5 min time and takes a long time. As the path of the ship increases, the time of sailing increases accordingly. Only when the region is stable at 40-60 m does the rest of the road become on the rise. The time taken by the improved method is about 4.98 min, and the running time increases with the increase of path length, but the rising trend is not significant. This method has good stability and has some advantages.


## 4.1. Navigation Path Comparison

In order to verify the effectiveness of the improved method, the experimental range is set at a certain number of underwater faults in 100∗40. Backstepping method, immune fuzzy PID method, and improved method are adopted to control the shortest path, respectively. The results are shown in Figures 2, 3, 4, and 5.Figure 2
The shortest path of the Backstepping method.Figure 3
The shortest path of immune fuzzy PID method.Figure 4
The shortest path of the improved control method.Figure 5
The comparison of the shortest paths of the three-control methods.In Figure2, the black dotted line represents the control point of the underwater Robot Backstepping method in the case of underwater obstacles.In Figure3, the blue cross line represents the control point of the underwater Robot immune fuzzy PID method in the case of underwater obstacles.The light green dotted line in Figure4 shows the control point of the underwater Robot of the improved control method in the case of underwater obstacles.In Figure5 shows the result of the comparison of the shortest paths of the three-control methods.As can be seen from Figures2–5, the results of three methods are different under the condition of underwater Robot that has a certain range of motion. The Backstepping method was controlled 62 times, of which only 29 were on the best path for the underwater Robot. When the obstacles in the water increase, the trajectory of the Robot deviates from the optimal path and the control is not effective enough. The immune fuzzy PID method increases the number of control accordingly, and the control increases to 85 times with the increase of the obstacles in water. The path of navigation deviates from the optimum path, only 4 times returning to the best path, but rapidly deviating. This shows that the stability is poor; the improved method can make the number of control 100 times; the whole path of the underwater Robot deviates little from the optimal path; and it coincides with the optimal path many times. It shows good stability. From this we can see that the presented method has certain advantages.


## 4.2. Complexity Analysis

In the optimal path control method of underwater Robot, the degree of underwater Robot path control is described by the running time of underwater Robot under the same path of the same length. This quantitative description of underwater Robot navigation path control method is highly operational and can be used to determine the trajectory control of underwater Robot directly. As a result, the time of the voyage can be calculated directly by the length of the section and the speed of sailing. The expression for travel time is(21)Rtime=RdistRspaceRdist is the length of the current section, and Rspace is the average speed of the underwater Robot. The time required for the Robot to run in three ways is shown in Figure 6.Figure 6
Time comparison analysis.As you can see from Figure6, when the path length is constant, the three methods vary in time. By using the Backstepping method, the running time is about 21.89 min and the time spent in 0-20M is rapidly increasing while the time spent in 20-30 does not increase. After 30m, it had been on the rise and had no tendency to decline. The immune fuzzy PID method takes about 32.5 min time and takes a long time. As the path of the ship increases, the time of sailing increases accordingly. Only when the region is stable at 40-60 m does the rest of the road become on the rise. The time taken by the improved method is about 4.98 min, and the running time increases with the increase of path length, but the rising trend is not significant. This method has good stability and has some advantages.


## 5. Concluding Remarks

The traditional control methods always have the problems of poor effect, nonfixed path selection, and long time consuming. Hence, a path control method for underwater Robots based on NURBS curve fitting method is proposed. Experimental comparison results are illustrated:(i) Although the number of control is greater than the Backstepping method and the immune fuzzy PID method when navigating in the same path length area, the overall control is better than the Backstepping and the immune fuzzy PID method.(ii) Compared with the Backstepping and the immune fuzzy PID method, the navigation time of the improved method is shortened by 16.91 min and 27.52 min, respectively, with good stability and advantages.



---

*Source: 1520981-2018-07-02.xml*