Abstract
This paper presents an adaptive Fuzzy-PI control strategy that incorporates a humanoid’s upper body rotational motion when controlling its redundant arm. Essentially, fuzzy logic interconnects two different dimensional information by utilizing a humanoid’s angular momentum error at the torso to actively adjust its end-effector’s control parameters (PI) at every loop. The results from two different simulations show that the tracking errors of the proposed Fuzzy-PI scheme is relatively smaller than those of the conventional method. These results imply that Fuzzy-PI can partially compensate for errors in one dimension (end-effector) by taking into account the state of another dimension (torso).
Introduction
Since the late 20th century, there have been many efforts which improve the kinematic redundancy of a redundant robotic arm [1]. These efforts make use of versatile self-motion for satisfying a wide range of task-priorities [2, 3]. In practice, it allows a redundant arm to incorporate a variety of sub-tasks, such as avoiding the singularity configuration or operating a joint within accessible operation range of motion [2, 3].
In addition, research on a kinematically redundant arm of a humanoid with much higher mobility has been explored to achieve better functionality [4]. The improvement of the kinematic dexterity on a humanoid arm has been recognized as the most critical for realizing the completion of the required manipulation task. However, as the number of Degree of Freedom (DOF) increases, there are many difficulties, such as power distribution, weight, and cost, which deteriorate the system performance. More study must be done before the advantages of this research can be fully applied to accomplish complicated tasks.
Particularly in the control field, little work has been reported about a redundant arm taking into account the balance of its full body during their manipulation. To properly control a redundant robotic arm, a typical proportional-integral (PI) control scheme is insufficient to entirely compensate uncertainties on a humanoid such as the imprecise inertia parameters [5–7]. Furthermore, the stability of high order system is very sensitive to the specific tasks, so an adaptive control scheme on a redundant arm of a humanoid is significantly useful in conducting a wide range of the required tasks.
In many applications, Fuzzy-PI control framework has shown good performance over a wide range of operating conditions. It is a way of integrating fuzzy logic into a linear PI control scheme [5, 6] by adjusting the weighting coefficients in the framework of a typical PI control. This adaptive scheme is appealing because it has the potential to be the simple solution, relatively free from either system uncertainties or external disturbances [5–7]. These variable gains make a system robust with faster response and less overshoot than its conventional counterpart. It helps to overcome the traditional PI’s shortcomings, which is maximized by the high-order and complicated humanoid.
The goal of this paper is to apply a Fuzzy-PI control scheme on a 7 DOF redundant arm of a humanoid following a given desired trajectory while considering its balance. Section 2 provides the kinematics of a typical redundant arm at the velocity level. Section 3 addresses the structure of Fuzzy-PI control framework. Section 4 includes the proposed approach for obtaining the efficient arm motion in consideration with a humanoid’s balance. Section 5 shows the corresponding results from simulations that were designed to evaluate the validity of the proposed approach. Section 6 concludes the paper.
Kinematics
Kinematics of a humanoid describes the relationship between the individual joint variables and the given origin coordinate [8]. In this work, Tactical Hazardous Operational Robot-Rapid Deployment (THOR-RD), an adult-sized humanoid robot, is applied, as shown in Fig. 1.
Forward kinematics
Forward kinematics of a humanoid arm refers to the posture of the end-effector, represented by the motion of the individual joints [8]. The joint variable of each rigid link shows either rotational or translational motion along the axis of twist. The forward kinematics map of a serial mechanism, g st : Q → SE (3), can be given by:
The initial map can be expressed as:
Differential kinematics defines the relationship between the velocity of each joint and the linear/angular velocity of the end-effector. This relationship, termed as Jacobian, is used in easily performing a variety of robotic applications [9]. Here, the instantaneous spatial velocity of the end-effector is used,
The inverse kinematic solution of a redundant arm in general admits multiple or infinite solutions for the joint parameters, corresponding to a posture of the end-effector [2, 9]. This study considers the generalized gradient method with singular value decomposition in determining the joint variables for a given task [10, 11]. It is accomplished by projecting the constraint onto the null space of the end-effector.
The desired configuration can be obtained as follows:
In this study, the joint limit avoidance (JLA) for restricting each joint’s movements in certain ranges of operational motion is considered [9]. Sometimes, it has shown that the analytic inverse kinematic solution exceeds beyond the physically admissible limits of each joint variables. To overcome this problem, JLA method in this study is used as a local optimization of the performance criterion for maintaining individual joints as close as possible to the midpoint of their operational range [2, 9]. The following function is used with a finite order p-norm [2].
For a humanoid, a conventional PI control scheme demands continuous tuning of the parameters due to the overall complexity of the system. Constant parameters can easily make a system unstable, so this study focuses on the adaptive PI parameters using fuzzy logic [5, 6]. Fuzzy-PI has a similar structure to a typical PI control scheme, but differs in that it includes adaptive gains, updated by user-defined rules, as shown in Fig. 2. r (t), u (t), and y (t) are the reference input, the controller output, and the plant output, respectively.
Fuzzy Logic Control (FLC) is a control methodology to deal with a vague value, such as a human’s heuristic knowledge. Specifically, this scheme combines different dimensional data into a single meaningful value. The core components of a fuzzy logic are as follows: Fuzzification, Inference Engine, and Defuzzification [6]. Fuzzification is the process of converting crisp values into fuzzy sets via membership functions. Inference Engine has two basic tasks: matching and inference. This process invokes each of the relevant IF-THEN rule to produce a conclusion, based on their matching degree. Defuzzification is the process of translating fuzzy outputs into crisp values (control signals), computed from the universe of discourse of the output variable.
A conventional PI controller is a single-input single-output controller, which can be mathematically described as below [5]:
Fuzzy inference can also be implemented by the following relation,
Finally, the Center-of-Area (COA) method, which implies the entire possibility distribution in finding its meaningful point, is utilized to generate the resulting control outputs. For example, the resulting proportional gain, K P , can be obtained as [5]:
The configuration of a high DOF humanoid requires relatively larger efforts to be stable during manipulation, compared to an idle state. As the more redundant the arm, the more complicated the joint configurations can be, it is more likely for the robot’s overall body balance to be affected during manipulation.
In general, an arm motion of a humanoid originated from the local frame at the torso is largely affected by the error of the angular momentum at the torso. But research for humanoid balancing during manipulation has been paid little attention to because the momentum at the torso in standing motion during manipulation is considered to be minimal. There is also no way of partly incorporating an arm motion while considering the rotational motion of the upper body. In addition, current compensation approaches applied to a full body, such as momentum control, shows relatively heavier computational burden and is constrained to an estimation of inertial parameters. Constraints on a humanoid such as the usage of heavy tools, easily accelerates the arm motion to instability.
To note, in this work, only the position control of an end-effector is considered for applying the proposed approach, and angular values (roll, pitch, yaw) of an end-effector are not covered. The values of the momentum at the torso does not noticeably influence the manipulation task of a robotic arm during a manipulation. Most manipulation tasks have been generally completed in a robot’s standing stance. It implies that the change of angular values shows greater significance than that of the linear momentum.
To this end, a fuzzy logic is applied to generate the adaptive control gains of PI for regulating an arm motion, to actively respond to the torso’s angular momentum error. Consequently, there are two inputs: an error of either X or Z position of the end effector, denoted by e
x
(t) and e
z
(t) respectively, and an error of the angular momentum at the torso with respect to Y axis, eh,y (t), as in equation 14 and 15. Position Change of inertia momentum of torso
The reason behind ignoring the angular momentum terms about both roll and yaw axis is because the upper body’s angular momentum error at the torso about the pitch axis mostly affects the arm motion than the change of the other two angular momentum terms. This is because the moment arm from the base frame to the end-effector is the greatest for the pitch axis in general.
In the proposed control platform, fuzzy logic includes a two input-one output map that is expressed by the trigonometric membership functions, as shown in Figs. 3, 4, where there are five fuzzy sets: negative large (NL), negative small (NS), zero (ZO), positive small (PS), and positive large (PL). The range of each gain is designed by hands-on experiment, and the rule matrix for the proposed strategy is defined as in Table 1. COA is implemented to determine the output of the controller as a singleton value.
This section aims to verify the effectiveness of the proposed Fuzzy-PI control strategy for an adult-sized humanoid robot with a 7 DOF arm, whose weight is 10 kg without a tool attached to the end-effector. To verify, two simulation tests are conducted as shown in Fig. 5. One is with no additional mass applied to an end-effector to simulate most environments where the robot will not be holding a tool. The other is when there is an additional mass applied from the robot holding onto a tool. Cyberbotics’ Webots 8.0.5 was used as the simulation platform to test the aforementioned control strategy. The desired X, Y, and Z positions of an end-effector over 10 seconds are presented in Figs. 6-8. The initial control gains of all tests are set based on trial and error with the robot holding a tool, resulting in values of Kp x = 1.0, Ki x = 1.0, Kp y = 1.0, Ki y = 0.3, Kp z = 1.0, and Ki z = 0.5, respectively.
To begin with, a condition where no mass is applied to the humanoids end-effector was simulated to test for the significance of any additional mass. Figures 6, 7, and 8 show the capability of both the conventional PI control and Fuzzy-PI control in the desired X, Y, and Z trajectories. The trajectory after approximately six seconds into the beginning of the motion is particularly important, as that is where fluctuation is noticeable. This is because the center of mass begins to experience a significant shift from its original position due to the displacement of 1/5 of the robot’s mass from its original idle posture. The initial gain parameters staying constant for an arm (with a tool attached) that is 150% of its inherent weight also added to the fluctuation. Despite the fluctuation, the Fuzzy-PI control approach shows markedly better performance relative to the conventional PI control. The primary reason is that the control loop takes into account not only the end-effector’s error, but also the offset from the torso. This inevitable offset of the center of mass occurs from the robot slightly leaning towards the direction the arm is moving towards, which is read by a gyro positioned at the robot’s torso. In the no mass situations, the conventional PI control and Fuzzy-PI control outputs show the following average deviation from the desired trajectories starting from six seconds into the beginning of the arm motion, as seen inTable 2.
Observing the condition where additional mass is applied to the end-effector sheds even more light on the significance of Fuzzy-PI compared to the conventional PI in following a desired trajectory. The overall flexibility that the end-effector has with the varying degrees of heavy tools it can use during manipulation can also be realized. In the simulation, a 5.0 kg weight, representative of a custom end effector designed to hold the DEWALT Drill (3.06175 kg), was applied at the end-effector, and an identical trajectory was given to follow. Table 2 represents the average deviation from the given path after six seconds into the start of themotion. Both Figures 6–8 and Table 2 show that the tracking errors of the proposed Fuzzy-PI scheme is relatively smaller than those of the conventional PI scheme. As the effect of the angular momentum at the torso undoubtedly is created by arm motions as the center of mass is shifted during manipulation, accounting for this variable in the calculation of adaptive PI gains helps guide the end-effector towards the given desired trajectory. Fixed gain parameters are noticeably insufficient relative to the adaptive approach, especially as the end-effector deviates further away from the center of mass and even more uncertainties are introduced. Consequently, these results show Fuzzy-PI’s capability to partly compensate for the different dimensional error that is created at the torso.
Figures 9 and 10 depicts the adaptive tuning for the PI gain parameters by fuzzy logic. The change in the parameters is noticeably nonlinear in Fig. 10 because the overall change in position from the starting position between X and Z is greater in the latter. The positive curvature becoming negative after the six second mark for the Z axis gains is also significant as it again shows fuzzy-PI correctly responding to the shift in the center of mass. Had the curvature stayed positive, the Z axis gains would have been significantly higher, resulting in an unpredictable and most likely unstable condition.
Accordingly, the Fuzzy-PI scheme shows flexibility in the tools that the end-effector can carry while minimizing the trajectory error, without having to manually tune the PI gain parameters for every combination of trajectories and tools.
Conclusion
Redundant arms on a humanoid is a difficult system to keep stable, as there exists great amounts of uncertainties that, if not considered and controlled, can accelerate the system to instability. This study focused on an additional error that exists outside of the arm, the torso’s angular momentum error, that affects manipulation performance. FLC was adopted to compensate for errors that exist in different rigid bodies of a humanoid to ultimately output adaptive PI gain parameters that the PI controller will use to follow a given desired trajectory.
The results from two different simulation show that the tracking errors of the proposed Fuzzy-PI scheme is relatively smaller than those of the conventional PI scheme. It implies Fuzzy-PI’s capability to partly compensate for the different dimensional error that is created at the torso. In addition, the Fuzzy-PI scheme shows flexibility in the tools that the end-effector can carry while minimizing the trajectory error.
Future works will further delve into the FLC receiving more inputs from a humanoid’s body state, to test the controller’s robustness, and be extended to experimental verification.
Acknowledgment
This work is supported by ONR through grant N00014-15-1-2064; DARPA through grant N65236-12-1-1002.
