International Journal of Advanced Robotic Systems Design of an Adaptive PD Controller for the Weight-Independent Motion Control of a Mobile Robot Regular Paper

Previous  research  on  mobile  robots  has  been based on models of mobile robots with  invariant weight parameters. However,  the most  practical mobile  robots that  bear  heavy  burdens  have  varying  weights  and centres  of  gravity.  This  paper  suggests  a  design  for  an adaptive PD  controller  that  estimates  and  adapts  to  the weight‐related  parameters  of  robots  that  bear  varying heavy  burdens.  Using  the  suggested  adaptive  PD controller,  the  motion  of  mobile  robots  can  be independent  of  the  weight‐related  parameters  and  the operational performance  is  confirmed by  target  tracking simulations.


Introduction
Robots can be roughly divided into two categories: industrial robots and service robots.A few years ago, most robot applications were built as industrial robots, which were related to the industries and manufacturing.However, interest in service robots is increasing and various service robots have been developed and demonstrated [1][2][3][4][5][6][7][8][9][10][11].Building service robot systems is not only an interesting scientific challenge but it also provides a practical and realistic effort to improve the convenience and comfort of the lives of humans.
As assistive technologies for improving the quality of human life, service robots should be able to bear heavy burdens, since many tasks are likely to be associated with carrying or handling such loads.However, most of the previous research on mobile robots has not considered changes in the weight-related parameters of the robot.Mobile robots -such as shopping cart robots -have varying weights and centres of gravity, and the movement of the robot is dependent on these parameters.The previous research, however, has assumed that both the robot's weight and its centre of gravity are fixed [11][12][13][14].Furthermore, most of the previous studies have applied robot models that only consider kinematics, not dynamics, to control wheeled mobile robots [15][16][17][18].Such models are inappropriate for mobile robots bearing varying heavy burdens.
Target tracking constitutes one of the most important problems for the mobile robot.The techniques for the target tracking problem can be applied to a number of applications using the mobile robot, such as traffic control systems [19], [20], formation control systems [21], [22] and autonomous robot systems [23].In order to improve the performance of target tracking, the controller of the robot should be able to control the forward and rotational velocities effectively, regardless of varying weight-related parameters.However, the control performance of the typical controller is related to the varying weight-related parameters.If the weight of the robot is increased, the motors of the robot should be operated with increased power.This research suggests how to design a controller for mobile robots that bear varying heavy burdens.The robots should be able to follow their target well, even if the robots do not have any information about the weight and centre of gravity of the burden.This research adopts a dynamics model and an adaptive control method which considers varying weight-related parameters and attempts to design a control system which enables consistent movements and the performance of a robot even with changing or shifting parameters.
The organization of the research is as follows: Chapter II presents the design of the motion control system; Chapter III proposes the weight-independent robot control method using the adaptive PD controller; Chapter IV verifies the performance of the controller through simulation; finally, Chapter V provides a conclusion.

Design of a Mobile Robot for Motion Control
The mobile robot system in this paper consists of three parts: the human position detector, the robot and the robot controller, as shown in Fig. 1.The major technique of the human position detector is indoor localization, which can be implemented by vision processing and sensor networks.Based on these techniques, the humanrobot position detector estimates the positions of the human (i.e., the target) and the robot, and outputs these position variables to the robot controller.The robot controller, which is given the target and robot positions from the human-robot position detector, consists of a path planner, an obstacle avoider and a motor controller.Based on the detected target and robot positions, the path planner finds a path for the navigation of the mobile robot from the current position to the target position, and the planned path is modified by the obstacle avoider.Most mobile robots operate in non-stationary environments -which consist of changing surroundingsand do not have full information about the surrounding environments, even in familiar environments.To avoid collisions with the changing surroundings, the obstacle avoider modifies the path, which is given by the path planner, referring to the measured sensor values given by the range sensors of the robot.The robot consists of motors and sensors.If the robot controller controls the motors of the robot, then the position of the robot is changed.After the motion of the robot, the measured values from the sensors are fed into the robot controller and the human-robot position detector detects the position of the robot.
This paper focuses on the design of the motor controller and suggests a new design method for an adaptive PD controller for weight-independent motion control.

Design of a path planner and obstacle avoider for a robot controller using the potential field method
When the robot controller is given the positions of a human and the robot, the robot controller should be able to drive the robot towards the position of the human.The path planner of the robot controller generates the path from the robot to the human and the obstacle avoider modifies the path to avoid collisions between the robot and surrounding obstacles.The path planner and the obstacle avoider are designed based on the potential field method (PFM).The potential field method is the most favoured and widespread on-line obstacle avoidance method for mobile robots because of its computational simplicity and efficiency.
In the potential field method, the motion of the robot is controlled to follow the direction of the artificial force robot f , which can be rewritten as:  The path of the mobile robot can be described as an array of several sub-goals and the attractive force att f of the path planner points toward these sub-goals in sequence.
If the robot reaches the i-th goal, the attractive force att f of the path planner points toward the next (i+1)-th goal.
With the positions of the robot and the i-th goal denoted as r and i g , respectively, the attractive force can be defined as: where att k is the positive constant of the attractive forces and d goal is the threshold distance of the goal.If the robot is in the boundary d goal of the goal, the attractive force att f is the gradient of the conic potential, att ( ) The obstacle avoider of the robot controller determines the repulsive force rep f and combines it with the attractive force att f of the path planner, as in (1).The repulsive force rep f between the robot and the obstacles prevents collisions between them, and it can be induced by the sum of the negative gradient of the potential field, as in (3): where n is the number of surrounding obstacles, rep k is the positive constant of the repulsive forces, max d is the influence distance of the obstacles, and the closest point where i O is all of the points in the i-th individual convex obstacle.

Dynamic model of the mobile robot
Most mobile robots are developed in the form of wheeled mobile robots, and Figure 3   The robot's location is defined as the robot's centre of gravity, which is plotted on the x-y coordinates.The direction of movement is  , an angle to the x axis.As for the dynamics parameters, the forward and rotational velocities are v and  respectively.The following describes the full mathematical model of the robot: Here, w r means the radius of the wheel and b k means the back electromotive force (EMF) constant generated by the motors' rotation.The rotational velocity of the two wheels, r  and l  , can be described in the robot's forward and rotational velocities, as below:

Control architecture of the motor controller
This sub-section addresses the control architecture of the motor controller.The input of the motor controller, i.e., the artificial force robot f , is the output of the obstacle avoider, as shown in Fig. 1, and can be considered as the force that attracts the mobile robot to the goal position.The block diagram of the mobile robot system in Fig. 1 can be reconstructed, as shown in Fig. 4(a), and the control architecture of the motor controller can be simplified, as shown in Fig. 4(b).Basically, the path planner and the obstacle avoider determine their respective outputs referring to the output result of the robot, and their objectives are to bring the robot to the target position given by the human-robot position detector.If the robot is placed at the target position, the outputs of the path planner and the obstacle avoider are zero, but if the robot is not placed in the right location, the outputs of the path planner and the obstacle avoider inform the motor controller where to move the robot.As The inputs of the motor controller in this paper are the position errors of the robot on the x-y coordinates, and the outputs are the torque values for the two motors of the mobile robot.Based on this outline, the whole control architecture of the motor controller is designed as shown in Fig. 5. From (1), we can see that the x-y position and direction of the robot are changed by the value of the forward and rotational velocities and that these velocities are changed by the torque of the two motors.That is, the kinematical factors of the robot can be controlled by the forward and rotational velocity control and these velocities can be controlled by the torque control of the motors.As a result, the main components of the motor controller include a kinematic controller and a dynamic controller.The kinematic controller uses the robot's kinetic errors as an input to yield the robot's forward and rotational velocities for control.The dynamic controller uses the discrepancy between the robot control value from the kinetic controller and the actual movement of the robot.Based on the discrepancy, the dynamic controller decides the torque of each motor using a PD control method and controls the actual motors of the robot.When the unit vector pointing toward the heading direction of the robot is: the forward velocity error ˆv e is an inner product of the unit vector h and the position error vector e , and can be written as: The forward velocity error ˆv e is the magnitude of the vector which is pointing toward the heading direction of the robot and composing the position error vector e .Furthermore, the rotational velocity error ê can be defined as the angle between the vector h and the position error vector e , written as: From ( 8) and ( 9), the position errors where the values of kv k and k k  are P-gains for the forward and rotational velocity errors ˆv e and ê .

Design of the dynamic controller using the PD control method
In this section, a PD controller that does not consider weight factors is designed.In the subsequent section, an adaptive PD controller is designed by correcting the motor torque due to changes in the robot's weight and centre of gravity.
The PD controller operates on a multi-input-multi-output system.The input value is the discrepancy between the target and the actual acceleration values for forward and rotational movement, and the output value is the torque of the two motors.The PD control values are calculated for both forward and rotational acceleration and converted to motor torque values.Equation ( 5) describes the PD control value for errors v e and e  : The e and e  .The PD control values calculated in (11) are converted to torque for the two motors through ( 12): Substituting ( 11) into ( 12), the overall dynamic controller with the PD control can be rewritten as:

Design of the adaptive PD controller
From ( 5), the state equations that describe the relations between the accelerations and the torque of the robot can be rewritten as: Equation (14) shows that the amount of the forward and rotational accelerations will be changed by the change of the weight-related parameters m and r d .Even if the amount of the torque is fixed, the amount of the forward and rotational acceleration can be changed.Thus, the amount of the torque in the adaptive PD controller should be changed according to the change of weightrelated parameters m and r d .
Whatever the values of the weight-related parameters m and r d are, the forward and rotational accelerations should be identical.This control strategy can be denoted thus: where the constants m ,  and l  of the standard case: Equation ( 16) transforms the torques r where:

Parameter estimation using a recursive least square (RLS) algorithm
To ensure the sound performance of the adaptive PD controller, the parameter estimation needs to be accurate.The research applied the recursive least square method for a parameter estimation algorithm: where: The renewal of the information matrix is done as in ( 22): and the renewal of the estimated parameter values is done as in (23): whereby: ˆ( ( ), 1) ( 1) ( ) ( 1) The initial parameter estimate value is set as a standard parameter value, as shown here:

Simulation
This chapter verifies the performance of the proposed control system via a simulation and all the parameters of the robot system are determined in Table 1.The simulation was carried out in MatLab R2009a.

Parameter Value
Distance between the two wheels 0.45m  The performance of the proposed adaptive PD controller depends on the performance of parameter estimation.If the parameter estimator estimates the varying weightrelated parameters m and r d exactly, the robots can be operated as if the values of the weight-related parameters are fixed.Figure 9 shows the errors between the actual parameters and the estimated parameters.The estimation errors of the weight-related parameters are small enough, as shown in Fig. 9.The root mean square error and the accuracy of the parameter estimation are shown in Table 2. Since the weight-independent parameter estimator has a high accuracy at about 92% and 93%, the proposed adaptive PD controller can result in the high control performance of a robot even with varying weight-related parameters.3. The root mean square error for the proposed adaptive PD controller is about 19.29 times smaller than that for the conventional PD controller.As a result, the mobile robot can be controlled weight-independently using the proposed adaptive PD controller.

Conclusion
Based on a dynamic model that takes into account the varying weight and centre of gravity of a robot, this research designed an adaptive control system to ensure the consistent performance and movement of a robot under varying weight-related parameters.The research results could be applicable to all mobile robots with varying weight parameters, e.g., robots equipped with manipulators that load or unload cargo.A manipulator's centre of gravity is bound to shift due to its movement, and when it loads or unloads cargo the weight imposed upon the robot changes as well.

Figure 1 .
Figure 1.The block diagram of the whole mobile robot system for motion control.

where attf
is the attractive force of the goal and rep f is the repulsive force of the obstacle.The practical artificial force, robot f , which controls the robot, is the combination of the attractive and repulsive forces.The attractive force att f is determined by the path planner and combined into the artificial force robot f by the obstacle avoider.The relation between the artificial force robot f and the attractive force att f is shown in Fig. 2.

Figure 2 .
Figure 2. Obstacle avoidance using the potential field method.
illustrates a two-wheeled mobile robot and its various parameters.Unlike the previous studies, which placed the robot's centre of gravity along the central axis, this research assumes that the robot's centre of gravity could shift closer to either the right or left wheel.The distances between the robot's centre of gravity and the centre of the two wheels are r d and l d respectively.Their sum d is the distance between the two wheels.

Figure 3 .
Figure 3.The dynamic model of the mobile robot and the control parameters.
a result, the input robot f of the motor controller can be considered as the error vector T x y e e      e of the robot's position.

Figure 4 .
Figure 4. Reconstructed block diagram of the mobile robot system.

Figure 5 .
Figure 5.Control architecture of the motor controller.

2. 4
Design of the kinematic controller The kinematic controller has three inputs ( x e , y e ,  ) and two outputs ( ref v , ref  ) and determines the reference variables of the forward and rotational velocities ( ref v , ref  ) for eliminating the position errors e ) of the mobile robot.To determine the reference values of the velocities, the values of the position errors could be transformed to that of the velocities.Figure6describes the transformation from the position errors to the velocity errors.

Figure 6 . 0 T
Figure 6.The transformation from the position errors to the velocity errors.
, and the kinematic controller can be designed as a P controller, which determines the reference values of the robot's forward and rotational velocity.The P controller of the kinematic controller can be designed as below:

) 3 . 7 .
Weight-Independent Robot Control Using an Adaptive PD Controller The weight-independent motion control of the mobile robot can be enabled by considering weight-related parameters m and r d in the dynamic controller and the overall control architecture for the control is shown in Fig.The weight-related parameters m and r d of the dynamic controller are estimated by the parameter estimator, which uses the robot's acceleration data v  and   as inputs.In addition, the dynamic controller controls the robot adaptively, considering the estimated weightrelated parameters m and ˆr d .The dynamic controller in this paper is designed as an adaptive controller and the design process of the adaptive controller involves largely two parts: the design of the PD controller in consideration of the estimate parameters and the design of the parameter estimator.

Figure 7 .
Figure 7.Control architecture of the mobile robot control system using the adaptive PD controller r d and l d are the standard values of the parameters m , r d and l d .Furthermore, the parameters r  and l  are the torques of the two motors when the standard values are given for the parameters.The accelerations v  and   should be identical, not only when the weight-related parameters m and r d are the same as the standard values m and r d , but also when they are not.Equation (15) can be rewritten in terms of the outputs r  and l  for the outputs r


and l  of the standard robot into the torques r  and l  of the normal robot.The standard robot means a robot whose weightrelated parameters m and r d are fixed at the constant values m and r d while the normal robot means a robot which has been given weight-related parameters m and r d arbitrarily.According to (16), if the actual weight-related parameters m and r d are known, the normal robot can be operated as if the values of the weight-related parameters were m and r d .However, most robots with variable weight- related parameters do not know the actual value of m or r d .The adaptive PD controller of this paper estimates these parameters using the parameter estimator, and the estimated weight-related parameters are denoted as m and ˆr d .As a result, the overall dynamic controller with the adaptive PD control can be rewritten as:

Maximum velocity of the robot 1 . 5 Table 1 .
2m/s Real weight of the robot m variable Real distances between the centre of gravity and the right wheels r d variable Standard weight of the robot m 9kg Standard distances between centre of gravity and the right wheels r d Definition of ParametersIn simulation, the robot begins in the lower-left corner and tracks the target (human) that moves at a rate of 0.5m/s in rectangular pulses, as shown in Figs.10(a)-(c).In order to check the performance of the proposed controller, the simulations are executed in three target tracking systems, as shown in Figs.10(a)-(c).The trajectory of Fig.10(a) is when the weight-related parameters m and r d of the robot are fixed to m and r d but the weight-related parameters of the robot in Figs.10(b) and (c) are changed, as shown in Fig. 8.The robots of Figs.10(a) and (b) use the conventional PD controller and the robot of Fig. 10(c) uses the proposed adaptive PD controller.

Figure 8 .
Figure 8. Change of the weight-related parameters m and r d .

Table 3 .
Root Mean Squares of Distance Errors