Journal of Robotics

Volume 2013 (2013), Article ID 256364, 14 pages

http://dx.doi.org/10.1155/2013/256364

## A Comparison between Two Force-Position Controllers with Gravity Compensation Simulated on a Humanoid Arm

^{1}R&D Department, Creative Design Laboratory, Humanot s.r.l., via Modigliani 7-59100 Prato, Italy^{2}Department of Modern Mechanical Engineering, Waseda University, 17 Kikui-cho, Shinjuku-ku, Tokyo 162-0044, Japan^{3}Humanoid Robotics Institute, Waseda University, 2-2 Wakamatsu-cho, Shinjuku-ku, Tokyo 162-8480, Japan^{4}The BioRobotics Institute, Scuola Superiore Sant’Anna, Viale Rinaldo Piaggio 34, 56025 Pontedera, Italy

Received 31 October 2012; Revised 29 January 2013; Accepted 29 January 2013

Academic Editor: Huosheng Hu

Copyright © 2013 Giovanni Gerardo Muscolo et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

The authors propose a comparison between two force-position controllers with gravity compensation simulated on the DEXTER bioinspired robotic arm. The two controllers are both constituted by an internal proportional-derivative (PD) closed-loop for the position control. The force control of the two systems is composed of an external proportional (P) closed-loop for one system (P system) and an external proportional-integrative (PI) closed-loop for the other system (PI system). The simulation tests performed with the two systems on a planar representation of the DEXTER, an eight-DOF bioinspired arm, showed that by varying the stiffness of the environment, with a correct setting of parameters, both systems ensure the achievement of the desired force regime and with great precision the desired position. The two controllers do not have large differences in performance when interacting with a lower stiffness environment. In case of an environment with greater rigidity, the PI system is more stable. The subsequent implementation of these control systems on the DEXTER robotic bioinspired arm gives guidance on the design and control optimisation of the arms of the humanoid robot named SABIAN.

#### 1. Introduction

The manipulation control [1] presents difficulties, especially in the variation of the compliance with the environment [2]. For the safety of persons that surround the manipulator, a variation of the stiffness of the humanoid robotic arms is necessary.

A real contact is a distributed phenomenon which involves the local elastic properties of both the manipulator and the environment. Many methodologies allow modifying the stiffness of the manipulator in relation to the task. The compliance inside the DC servo actuators is usually generated by mechanical systems such as linear or torsional springs. In these types of studies, a hardware modification is developed.

The actuators with variable stiffness are increasingly used in the field of humanoid robotics [3]; an example of this application on humanoid robot iCub is presented in [4]. A different kind of application of variable stiffness, which uses pneumatic or hydraulic systems as compliance element formed by the fluid, is presented in [5]. In [6], a control for regulation tasks of robot manipulators with flexible links is proposed.

In this paper, in order to modify the compliance of the manipulator, the authors modified only the software parameters.

Considering as the environment stiffness matrix and by increasing or decreasing its value, it is possible to modify the compliance of all external part of the arm. Increasing the value of allows the manipulator to reach a given position; thus, the arm encounters an obstacle that may not physically exist but in reality exerts a contact force which opposes the motion of the robotic arm and causes its arrest.

In this paper, the authors propose a comparison between two force-position control systems with gravity compensation simulated on a bioinspired manipulator of eight DOFs named DEXTER (Figure 1 and Tables 1, 2, 3, 4, and 5) [2, 6]. The next steps will be the implementation of these systems into the DEXTER robotic arm with the ultimate aim of control and design of the two arms of the humanoid robot SABIAN (Figure 5) [7, 8].

The two proposed controllers are both constituted by an internal proportional-derivative (PD) closed-loop for the position control. The force controller of the two systems is composed of an external proportional (P) closed-loop for one system (P system) and an external proportional-integrative (PI) closed-loop for the other system (PI system).

This paper is composed of three parts. The first part describes the dimensional characteristics of the DEXTER and the SABIAN robots. In the second part, the two force-position controllers are proposed and discussed. In the third part, the analysis of simulational data and future applications based on these results are proposed.

#### 2. Materials and Methods

##### 2.1. DEXTER Bioinspired Robotics Arm

The DEXTER arm (Figure 1) has eight DOFs with eight rotational joints [2, 6]. The joints are implemented by many electric DC servo motors, located in the first link. The motors transmit torque through a cables and pulleys system. The motor-reducer for the coupling 0 is integrated in the mobile base, while the joint 1 is mounted on the link 0. The motors of the other joints are all in the link 1.

The advantage of this type of mechanical structure is to improve the dynamic performance of the robot because there is a reduction of the masses in motion. The disadvantage is related to the complexity of the mechanical transmission system.

In Tables 1, 2, 3, 4, and 5, the physical dimensions, the motor data sheet, the drivers, the parameters of Denavit-Hartenberg, and the coordinates of the centers of mass of the links are, respectively, represented.

In Figures 2 and 3, the scheme of the manipulator is shown.

The DEXTER manipulator system includes the functional blocks of the Figure 4. The manipulation is constituted coordinating the joint movement of the arm with the movement of the hand mounted on the force sensor.

##### 2.2. SABIAN Humanoid Robot

SABIAN [7, 8] (Figure 5) has two 7-DOF legs, a 2-DOF waist, and a 2-DOF trunk. Each actuator system of the joint consists of a DC motor, a harmonic drive gear, a lug belt, and two pulleys. This double speed reduction mechanism allows a high reduction ratio and also a joint axis to be set apart from the motor axis. This mechanism provides designs for a human-like joint mechanism without a considerable projection. Figure 5(a) is a photograph of SABIAN. The height of the robot is 1480?mm and the weight is 40.7?kg without batteries. SABIAN is the Italian version of the WABIAN-2 robot [8] (see Figure 6). SABIAN does not have arms, and the head is a version of the ICUB head [4].

##### 2.3. WABIAN-2’s Arm: Characteristics

The arm of WABIAN-2 has 7 DOFs, and Figure 7 shows the 3D-CAD model. The arms were designed based on a concept that the arms of the robot can hold the robot’s weight while it leans on a walk-assist machine as shown in [9]. Since the robot can lean on a walk-assist machine, most of its weight will be distributed on both its forearms.

In general, a force/torque sensor is mounted on a robot's wrist in order to enable it to grasp, push, or pull something using a hand as an end-effector. But because one of the design concepts of WABIAN-2 is a robot that can lean against a walk-assist machine, a 6-axis force/torque sensor is mounted on each upper arm, which enables the robot to measure external forces acted on the forearm.

In order to realize a humanoid robot with great dexterity not only in locomotion as in WABIAN-2 but also in manipulation as in DEXTER, it is necessary to redesign the WABIAN-2’s arm and implement it on the SABIAN robot.

##### 2.4. WABIAN-2’s Arm: Control Architecture

A conventional position controller is used for WABIAN-2's arms. The six-dimensional hand trajectories are given, and each joint angle is calculated by solving the inverse kinematics, and the result is the value as input in Figure 8. The DC motor is driven by motor drivers (Model no.: TD12770-48W05) developed by TOKUSHU DENSO Co., Ltd, which enables speed control using an electrical governor without a tachogenerator with a 100?kHz PWM. The maximum output current range of TD12770-48W05 is greater than 15?A at 48?V. The current monitor port mounted on the motor drivers is utilized in energy consumption experiments. Figure 9 shows the photograph of the motor driver. The is the fixed ideal value of the hand position.

#### 3. Analysis of Control Schemes

##### 3.1. DEXTER Bioinspired Robotics Arm: Control Architecture

The matrix of the reduction of the DEXTER robot motion is given by where is the matrix of the speed reduction related to the mechanical transmission system; represents the diagonal matrix of the reduction coefficients. Consider

The reduction system is constituted by redactors in proximity of each joint. The generic element of the matrix expresses the ratio of proportionality between the rotation of the joint and the rotation of the rotor . The relationship between the torque vector of the motors to the torque vector of the joints is given by

This relationship allows to implement the conversion block and to directly move the motors. The size of matrix is for the elimination of the first row and first column relating to the joint 0 which is controlled by a PID controller. The standard PID controller used is expressed by the control law:

represents the analog voltage control of the generic motor output from the PID with a value ranging from -10?V to +10?V. , , and are, respectively, the gains proportional, derivative, and integral. represents the position error to the joints determined in each sampling instant. is the integrated error, and in particular, conditions can be expressed as ;?? and are the speed and the acceleration of the feed-forward terms; and introduce the speed and the acceleration of the feed-forward terms. is a static offset, used to compensate the small variations in the output voltage, due to the converters or also to the offset of the amplifiers. After notifying the movement commands to the PID, the first of the 8 motors is implemented with a voltage value equal to . Figures 10 and 11, respectively, show the functional architecture of the subsystem of the arm and the functional scheme of the PID controller.

Figure 12 shows the PID controller of the joint 0. Figure 13 shows the solution used to bypass the PID control of the joint 0.

The control law used for the analysis of the position of the 1–7 joints is given by where is the torque vector; and , are respectively, the proportional and derivative matrices; is the gravity compensation, and is the vector of the desired joint position. is the error. The relation (5) calculates the value of the torque but not of the speed . Thus, it is necessary to bypass the PID control to be able to control directly the actuators (Figure 13).

From (5), we obtain where is the diagonal matrix of motor torque constant derived from data-sheet of the 7 motors (Table 2). is the gain matrix of the power drivers. and are, respectively, the parameters of the currents and voltages in input to the power drivers. The technical specifications of the system implementation of the 8 joints are shown in Tables 2, 3, 4, and 5.

The software procedure achieves a conversion of the control voltage from volt () to increments ().

The used relations are and if , where is the Jacobian matrix which allows to rewrite in [1] as

The interaction force can be controlled in an indirect manner by acting on the reference variable of the position controller of the manipulator; the interaction between manipulator and the environment is directly influenced by the characteristics of the compliance of the environment and of the manipulator. The measure of the force is corrupted by noise, for which the derivative control cannot be used.

In Figures 14 and 15, two examples of force control schemes, respectively, with position and velocity internal closed-loop as in [1] are shown. is a generic diagonal positive matrix used for the impedence control.

Indicating with the desired constant force, with a diagonal matrix whose elements characterize the actions of control to exert along the directions of interest of the operative space, with the equilibrium position of the not deformed environment, with the stiffness matrix of the environment, and with a reference that should then be put in relation with an error of force, we have the following relationships, as in [1]:

The difference between the desired force and the force actually developed by the manipulator gives the error. Figure 14 shows that if is proportional, cannot be similar to because modifies the interaction force; if also expresses an integral action on the force components, it is possible to obtain and at the same time to limit the influence of on . Therefore, an action proportional-integral (PI) can be chosen for .

In Figure 16, an example is shown (as in [1]) of a force-position control. It is a modification of Figure 14 with used in input to the position loop.

##### 3.2. Force Controllers

Two force-control schemes were constructed as external closed-loop: a first system in which the force exerts a proportional-integral (PI System) controller (Figure 17) and a second system in which action developed by the controller is a proportional type (System P) (Figure 18).

###### 3.2.1. PI System Force Controller

The block diagram of this system is shown in Figure 17. The action exerted by the force controller is proportional-integral (PI). For controlling the position of the joints, the law (5) has been used.

For the force control, the following law was used:

The position transducer provides an electrical signal proportional to the angular displacement of link carried by the robot. The force sensor is used as the connecting member to the wrist between the last arm of DEXTER and the End-Effector. Through the use of the exteroceptive and proprioceptive sensors, it is possible to obtain the measured values of and . Using the control law of force (11), is obtained, which allows to obtain in output the error in the operational space . The joints error is obtained by means of inverse kinematics, and the vector of torque to be supplied to the actuators is obtained by using the law for the position control.

###### 3.2.2. P System Force Controller

In this scheme (Figure 18), the force controller exerts a proportional (P) action. As for the PI system, the law (5) is used for the position control, while for the force control, the following has been used:

In contrast to the scheme of Figure 17, this second system allows to derive the joints position error through considerations on the speed and not on the positions in the operational space.

In the P system, a single block of inverse kinematics is present and this helps to reduce errors that can arise as a result of transformation from work space to the joints space.

#### 4. Analysis of Experimental Data

The behaviour of the two control systems of Figures 17 and 18 was simulated using Matlab/Simulink software. In Figure 19(a), simulation of the PI System implemented in a planar representation of the DEXTER arm (3 DOF) and with and without an obstacle is shown.

Five gains (, , , , and ) were established as inputs to the simulation models. The simulation graphs are shown from Figure 20 to Figure 27. In particular, the force (N) value and the error position (m) value of the End-Effector of the DEXTER are presented. For each gain, a maximum, a minimum or an intermediate value has been assigned in order to evaluate the behaviour of the system varying gains. In Tables 6 and 7, the reference values for the PI and P systems are presented. The reference values are referred to the DEXTER robot during its movements.

##### 4.1. PI System Force Controller

Figure 17 represents the block diagram of a force/position control system that uses a proportional-integrative (PI) and a proportional-derivative (PD) controller, respectively, to measure the force and the position of the End-Effector.

Considering Figure 20 and varying , the measured (or real) force presents a peak value of 15?N, while the ideal (or desired) force has a value of 10?N. With the advancement of the simulation, after a time of 2000?ms, the measured force oscillates around the value of the ideal force.

Bringing the value of ranging from 0.0005 to 0.005, a smaller difference between the measured and the ideal force is obtained with a consequent reduction of the amplitudes of oscillation after the 2000?ms. There are no substantial differences in the trends of the position and position error of the End-Effector varying .

Figure 21 is made to vary only maintaining the other values of Table 6. Decreasing this parameter from 0.08 (Figure 20(a)) to 0.04 (Figure 21(a)), the difference between the measured and ideal impulse force increases goes over the threshold of 18?N. Assigning to a value equal to 0.12 (Figure 21(b)), the value of the difference between the measured and the ideal force is no more than 3.5?N.

Decreasing the value of , from 10^{6} (Figure 20(a)) to 250000 (Figure 22(a)), a higher peak pulse is created. Varying value from 10^{6} (Figure 20(a)) to 10^{7} (Figure 22(b)), the maximum value of the measured force decreases.

Figure 23 shows the trends of the error position. Analysing the graphs, it is noted that the increase of decreases the error. Differences in force, position, and position error were not noted in PI system varying gain.

##### 4.2. P System Force Controller

Figure 18 represents the block diagram of a force/position control system that uses a proportional (P) and a proportional-derivative (PD) controller, respectively, to measure the force and the position of the End-Effector.

Using values of Table 7 and decreasing the value of from 0.05 to 0.02, an increment of the force in Figure 24 is shown. The measured force value is equal to 26?N (Figure 24(a)). If is equal to the 0.08 value (Figure 24(c)), the peak of the measured force in the P system decreases as it was decreased in the PI system.

Figure 25 shows the measured and the ideal force of the End-Effector of the P system varying . If the value decreases from 10^{6} (Figure 24(b)) to 250000 (Figure 25(a)), the measured peak value will be equal to 20?N.

As for the PI System, in the P System, the position error decreases if is equal to 10^{7}, and the simulation graphs are similar to the graphs of Figure 23.

A comparison between the simulation graphs of the two systems (PI and P) (Figures from 20 to 25) shows that in the P system the peak value of the measured force is bigger with respect to the other one.

##### 4.3. Comparison between PI and P Systems: The Environment Interaction

In the last section, graphs were obtained from the simulation of the two systems by changing , , , and gains. In this section, the behaviour of the two controllers will be analysed by varying only the stiffness matrix value ().

The authors considered as the environment stiffness matrix, and by increasing or decreasing its value, it is possible to modify the compliance of all external part of the arm. Increasing the value of allows the manipulator to reach a given position; thus, the arm encounters an obstacle that may not physically exist but in reality exerts a contact force which opposes the motion of the robotic arm and causes its arrest.

In the graphs of Figures 26 and 27, the force, the position, and the error position values, respectively, of the PI and P systems are presented.

Increasing the value from 1000 (Figure 20(a)) to 10000 (Figure 26(a)), a high pulse of force was generated as shown in Figure 26. When the manipulator is working in a higher stiffness environment, the pulse of force that the End-Effector notes is naturally higher.

An increment of the real force from 18?N (Figure 24(b)) to 24?N (Figure 27(a)) is noted in Figure 27(a) assuming a value equal to 5000.

The differences between the PI and P Systems are evident by a comparison of Figures 26(a) and 27(a). In particular, in Figure 26(a), the peak of the measured force is equal to 18?N, but no more oscillations were observed. In Figure 27(a), the peak of the measured force is 24?N, and the force value is variable before the 2000?ms. A comparison of these graphs indicates that the P system is more influenced by the environment (varying ) with respect to the PI system. By means of the analysis of Figures 26(b), 26(c), 27(b), and 27(c), it was noted that the increase or decrease of the value influences only the trends of the force and not the position of the End-Effector of the manipulator.

#### 5. Conclusions and Future Developments

In this paper, the authors propose a comparison between two force-position control systems with gravity compensation, designed for an eight-DOF bioinspired robotic arm, named DEXTER. The two position controllers are both proportional-derivative (PD); the two force controllers are one proportional (P system) and one proportional-integrative (PI system).

The simulation tests performed with the two systems on a planar representation of the DEXTER (3-DOF arm in the plane) show that by varying the stiffness of the environment, with a correct setting of parameters, both systems ensure the achievement of the desired force regime and with great precision the desired position. The two controllers do not have large differences in performance when interacting with a lower stiffness environment. In case of an environment with greater rigidity, the PI system is more stable.

The next step of this work will be the implementation of these systems into the DEXTER robotics arm with the ultimate aim of control and design of the two arms of the humanoid robot SABIAN.

In this paper, the authors explained the differences between the proposed method and other studies. The proposed approach is oriented to execute a software modification of the compliance in humanoid robotics in opposition to the hardware modification of the compliance developed by other studies. On the other hand, a comparison between two force-position controllers could be used by the science and technology community.

#### Acknowledgments

This research was conducted at the RobotAn Lab, in the BioRobotics Institute of the Scuola Superiore Sant’Anna, and was partly supported by the Italian Ministry of Foreign Affairs, supporting the RobotAn and the RoboCasa joint labs of the Scuola Superiore Sant’Anna and Waseda University, as well as by the European Commission in the ICT STREP RoboSoM Project (Contract no. 248366).

#### References

- L. Sciavicco and B. Siciliano,
*Modelling and Control of Robot Manipulators*, Springer, London, UK, 2nd edition, 2000. - L. Zollo, B. Siciliano, E. Guglielmelli, and P. Dario, “A bio-inspired approach for regulating visco-elastic properties of a robot arm,” in
*Proceedings of the IEEE International Conference on Robotics and Automation*, pp. 3576–3581, Taipei, Taiwan, September 2003. View at Scopus - G. Tonietti, R. Schiavi, and A. Bicchi, “Design and control of a variable stiffness actuator for safe and fast physical human/robot interaction,” in
*Proceedings of the IEEE International Conference on Robotics and Automation*, pp. 526–531, Barcelona, Spain, April 2005. View at Publisher · View at Google Scholar · View at Scopus - N. G. Tsagarakis, M. Laffranchi, B. Vanderborght, and D. G. Caldwell, “A compact soft actuator unit for small scale human friendly robots,” in
*IEEE International Conference on Robotics and Automation. Kobe International Conference Center*, Kobe, Japan, May 2009. - D. G. Caldwell, G. A. Medrano-Cerda, and M. Goodwin, “Control of pneumatic muscle actuators,”
*IEEE Control Systems Magazine*, vol. 15, no. 1, pp. 40–48, 1995. View at Publisher · View at Google Scholar · View at Scopus - L. Zollo, B. Siciliano, A. De Luca, and E. Guglielmelli, “PD control with online gravity compensation for robots with flexible links,” in
*Proceedings of the European Control Conference*, Kos, Greece, July 2007. - G. G. Muscolo, C. T. Recchiuto, K. Hashimoto, C. Laschi, P. Dario, and A. Takanishi, “A method for the calculation of the effective Center of Mass of humanoid robots,” in
*Proceedings of the 11th IEEE-RAS International Conference on Humanoid Robots (Humanoids '11)*, pp. 371–376, Bled, Slovenia, October 2011. - G. G. Muscolo, C. T. Recchiuto, K. Hashimoto, P. Dario, and A. Takanishi, “Towards an improvement of the SABIAN humanoid robot: from design to optimisation,”
*Journal of Mechanical Engineering and Automation, Scientific & Academic Publishing*, vol. 2, no. 4, pp. 80–84, 2012. View at Google Scholar - Y. Ogura, H. Aikawa, K. Shimomura et al., “Development of a humanoid robot capable of leaning on a walk-assist machine,” in
*Proceedings of the 1st IEEE/RAS-EMBS International Conference on Biomedical Robotics and Biomechatronics (BioRob '06)*, pp. 835–840, Pisa, Italy, February 2006. View at Publisher · View at Google Scholar · View at Scopus