Robotic hand model parameters.
Dynamic and robust control of fingertip grasping is essential in robotic hand manipulation. This study introduces detailed kinematic and dynamic mathematical modeling of a two-fingered robotic hand, which can easily be extended to a multi-fingered robotic hand and its control. The Lagrangian technique is applied as a common procedure to obtain the complete nonlinear dynamic model. Fingertip grasping is considered in developing the detailed model. The computed torque controller of six proportional derivative (PD) controllers, which use the rotation angle of the joint variables, is proposed to linearize the hand model and to establish trajectory tracking. An impedance controller of optimized gains is suggested in the control loop to regulate the impedance of the robotic hand during the interaction with the grasped object in order to provide safe grasping. In this impedance controller, the gains are designed by applying a genetic algorithm to reach minimum contact position and velocity errors. The robustness against disturbances is achieved within the overall control loop. A computer program using MATLAB is used to simulate, monitor, and test the interactional model and the designed controllers.
- modeling robotic hand
- optimized impedance controller
- linearization the dynamics of robotic hand
- fingertip grasping
- Lyapunov stability
- Lagrange technique
A recent research on service robotics has shown that there is an environmental reaction on major applications . The robotic hand is the main interactive part of the environment with the service robotics [2, 3]. Grasping operation  has been used explicitly in robotic hand during the interactive period which represents the process of holding objects via two stages: free motion and constrained motion. Free motion is the moving of fingers before detecting the grasped object, and the constrained motion is the state of fingers when the object is detected. The common purpose in grasping is to handle unknown objects. Thus, finding both a model system and a control algorithm to deal with non-predefined objects is essential in a robotic hand. Regarding modeling, interactional modeling is the demand to perform a specific control algorithm. With interactional modeling, the contact force between the robotic hand and the grasped objects has obtained without needing their properties. In control point of view, the robotic hand holds an object by its fingers and moves the object to another place. In this case, there are different modes of operation which can be listed as before holding the grasped object, holding the grasped object, and moving the robotic hand while holding the grasped object. The aim at each mode is distinct to the others and has to respond to the operation assigned. Thus, the multitude of various goals which have to be achieved with regard to the various operations presents an interesting scenario in the control of a robotic hand.
Generally, it is essential to obtain the modeling of a multi-fingered robotic hand before implementing a specific model-based control algorithm. Arimoto et al.  presented a two-fingertip grasping model to control the rolling contact between the fingertips and the grasped object. Arimoto et al. derived the model through the use of the Euler-Lagrange equation with respect to the geometry of the fingertips which is represented by the arc length of a fingertip. Corrales et al.  developed a model for a three-fingered robotic hand; in their study the transmission of fingertip contact force from the hand to the grasped object is considered. Boughdiri et al.  discussed the issue of modeling a multi-fingered robotic hand as a first step, before designing controllers. They considered free motion only, without the constraints of grasped objects. In a proceeding work, Boughdiri et al. later  considered the constraints of grasped objects and the coupling between fingers in grasping tasks.
In the control scenario of a robotic-environment interaction, there is generally also a similar case of a robotic hand-grasped object interaction; force tracking is necessary to obtain appropriate and safe contacts. In force tracking, three main position-force controllers are introduced: stiffness control, hybrid position/force control, and impedance control . Among the above three controllers, impedance control presents an integrated process to constrained manipulators . The impedance controller is introduced by Hogan in 1985 to set the dynamic conduct between the motion of the robot end-effector and the contact force with the environment, instead of regarding the control of motion and force individually [11, 12]. Chen et al.  derived impedance controller for an elastic joint-type robotic hand in Cartesian and joint spaces. Chen et al. focused on the compensation of gravity and managing the parameter of uncertainties. Huang et al.  proposed the impedance controller for grasping by two fingers to deal with the problem of dropping objects when grasping by one finger. Zhang et al.  proposed an adaptive impedance controller with friction compensation to track forces of the multi-fingered robotic hand.
However, the synthesis of impedance control design continues to exist as a major challenge in the performance advancement of robotic hand in order to provide safe and robust grasping. Besides this, the greatest problems in robotic hand-grasped object interaction are the existence of nonlinearity in the dynamic system, dealing with different grasped objects, disturbances, and interference. In the previous studies, the aforementioned problems have not taken in consideration. The aim of this paper is to treat these problems using interactional modeling and the design gains of impedance control. The action of the suggested control expression is to provide a fingertip interactional robust control algorithm that takes into account the dynamics of the robotic hand under unknown contact conditions. To accomplish this, we propose first to linearize the dynamics on the level of position-tracking controller through six PD controllers. When executed, the calculated gains of the designed PD controllers result in zero steady errors without overshoot. Second, through an impedance controller, the interactional fingertips’ force is regulated by the robotic hand’s impedance. The gains of the impedance are designed based on genetic algorithm. As a result, the introduced control expression enables the position and velocity of fingertips to be controlled simultaneously without changing over control subspace. This control expression avoids selecting between different controllers which causes indirect control and consumption of high energy. The operation and the robustness of the presented control expression are approved by MATLAB/Simulink in several tests.
The rest of the chapter is organized as follows. In Section 2, the mathematical representation of kinematics and dynamics of the robotic hand with environment interaction is derived and explained. In Section 3, the overall controllers of position tracking and impedance control are designed. In addition, the suggested procedure of obtaining optimum values of impedance gains using genetic algorithm is explained. In Section 4, following the joint path and fingertip position is tested. Then, the robustness of the system is examined. Finally, the conclusions of this study are presented in Section 5.
2. Mathematical model
The models of a robotic hand system are the mathematical equations that describe all the contact forces and motion of the fingers at any time . These models are essential for grasping and manipulation operations which include kinematics, dynamics, and contacts between the fingers and the environment. A multi-fingered robotic hand with an existing grasped object has a complex structure. Thus, deriving the mathematical representation is not a simple task. In this section, the mathematical representation for a two-fingered robotic hand with an environment is developed. Changing the orientation of the robotic hand with respect to the inertial (earth) frame during manipulation operation is considered in this analysis.
2.1 Reference frames
The system is a two-fingered robotic hand that can adjust fingertip grasp forces by the torque of actuators in the joints. Each finger includes three joints (MCP, PIP, and DIP) and three rigid phalanges (proximal, intermediate, and distal). The motion of the finger actuates through the torque in the joints. The variables and represent the index of the finger and the joint, respectively. The analysis is based on the four main reference frames: finger frames , hand base frame , fingertip contact point frames , and inertia frame as shown in Figure 1. The joints MCP, PIP, and DIP are located at , , and , respectively. The length represents the distance from to . The angle of rotation around associates with the phalanx and joint. The coordinate frame is attached in order to express the coordinates of any point on the phalanges as a result of the motion of . In our case, expressing the motion of the fingertip points and is the primary interest. The frame is defined to switch between the motions of the fingertips with respect to the base of the hand through matrices. The frames are defined to represent the contact points between the fingertips and the environment. Finally, the inertial frame which is assumed at is assigned to represent the orientation of the robotic hand with respect to the earth.
The result of orienting the robotic hand with respect to the earth coordinates is expressed by defining the three rotation angles roll, pitch, and yaw (RPY). In which, roll is (: around -axis), pitch is (: around -axis), and yaw is (: around -axis). Mathematical representation of rotation about a fixed axis (earth frame) can be expressed by a specified sequence of multiplying the free rotation matrices , , and . Thus, the final rotation matrix which switches from the earth frame to the robotic hand base frame is obtained as
where and indicate the symbols of the sine and cosine functions, respectively.
2.2 Kinematic analysis
Forward kinematics is implemented here to express the relationship between the Cartesian spaces of the fingertip contact points, which are represented by coordinates () relative to the joint position . The positions of fingertip 1 and fingertip 2 change by rotating the joints in clockwise and counterclockwise directions, respectively. According to the coordinate frames and the dimension parameters of Figure 1, the forward kinematic of finger 1 is expressed as
and the forward kinematic of finger 2 is
where and are the length and the width of the palm shown in Figure 1, respectively. In Eqs. (2) and (3) and the rest of equations in this study, the denotation ,,,,, andrepresents , respectively. To control the position of the three links, the joint variables are calculated using inverse kinematic as
where is the angle of distal phalanx with respect to the axis . Next, the Jacobian matrix for each finger is obtained based on the forward kinematic equations, which were derived from Eqs. (2) and (3) as
The robotic hand transforms the generated torque by each joint to the wrenches exerted on the grasped object through the following Jacobian matrix:
2.3 Contact interaction
A contact interaction, which uses contact behavior between rigid fingertips and a flexible grasped object, is proposed in this study (see Figure 2). The grasped object is assumed as a linear spring of stiffness . Hence, each fingertip exerts a force on the grasped object as
where , , and are the coordinate points of the grasped object. The current and the desired location of the fingertips are denoted by () and (, , ), respectively.
2.4 Dynamics of robotic hand
The motion equations are derived to describe the dynamics of the robotic hand when interacting with the grasped object; the explained fingertip forces in Eqs. (10)–(12) are involved in the dynamic equation. When ignoring friction, each finger in free motion can be described by the following general motion equation:
where is the general coordinate vector, is the inertia matrix, is the 3-vector which involves forces of centrifugal and Coriolis, is the vector of the gravitational force, and is the vector of the input torque at joints. When the fingertips are interacting with the grasped object (see Figure 2), then Eqs. (13) and (14) become
where is the Jacobian matrix (see Subsection 2.2) and is the external force 3-vector with expression value:
where is the total kinetic energy of the finger manipulator, is the potential energy, and is the external torques. The x-y coordinates are represented according to the assigned frames of Figure 1. The velocities of the mass centers for the phalanges are important to find the kinetic energy. For proximal phalanx, the position of the mass center with respect to MP joint is represented by
the position of the mass center of intermediate phalanx with respect to MP joint is represented by
and the position of the mass center of distal phalanx with respect to MP joint is represented by
where is the distance to the center of mass which is assumed in the middle of the phalanx. The total kinetic energy of the finger in Eq. (17) is expressed by the following equation:
and to obtain the kinetic energy, the above formulas (,,,,,) are differentiated with time. Lagrangian equations according to Eq. (17) are
with the following matrix forms;
Thus, the six motion equations are presented by rearranging Eq. (29) to result in
The desired finger configuration in joint space can be obtained by solving the above equation, which will be explained later in Section 3.1 for designing the position-tracking controller.
3. Controller design
The derived mathematical representation is applied using MATLAB/Simulink to implement the proposed controllers and the tests of this study. The parameters of the model, which are used in Simulink, are shown in Table 1. The overall controllers of the robotic hand are depicted as a complete block diagram in Figure 3. In the following sections, the design of the controllers is described in detailed.
|7083 g.mm2||400 g.mm2|
3.1 Position tracking
Recently, a variant of the PD controller explicitly has been considered in the control of nonlinear system where the aim is to make the system follow a specific trajectory [19, 20, 21, 22]. The joint angle controller shown in Figure 3 is the inner feedforward loop which presents the effect of the input torque on the error in Eq. (30). The detailed block diagram of this controller is shown in Figure 4. The tracking error is formed by subtracting the joint angle vector () from the desired joint angle vector () as below:
The objective is to minimize this error at any time, by differentiating Eq. (31) twice, solving for in Eq. (30), and rearranging the results in terms of the input torque that yields the following computed torque control equation:
where is the control input which is selected as six PD controllers with the following feedback:
where and ; hence, the robotic hand input becomes
The system can be stabilized in Eq. (34) by a proper design of PD controller to track the error to zero. In which, the input torque at joints results in the trajectory of reaching the grasped object. According to Eq. (33), the typical transfer function of the error dynamic in closed-loop approach is
where is the disturbance. Thus, the system is stable for all positive values of and . Comparing Eq. (35) with the standard second-order polynomial term (), we get
The design of gains is selected for the closed-loop time constant (); thus
where and are the natural frequency and the damping coefficient, respectively.
The stability of robustness analysis by Lyapunov’s direct method is implemented here to verify the ability of applying the proposed PD controller in real situations where unmodeled disturbances are included in the actual robotic hand. The effect of unmodeled disturbances in robotic manipulator can be represented by replacing the PD controller gain matrices with matrices of nonlinear gains . Considering the nonlinear matrices gains, the robotic hand input in Eq. (34) becomes
The stability analysis is implemented by proposing the following Lyapunov function:
Considering the smallest eigenvalues , the limit of satisfies
where . Since and ; thus
Then, Eq. (38) becomes
Hence, the Lyapunov function presented in Eq. (38) is globally positive definitive function.
Taking the derivative of Eq. (38) with respect to time, we get
for all positive values of gain matrices , , ,and ; Eq. (51) is globally negative function. Then
In this way, the system is globally exponential stabile.
3.2 Impedance controller
The PD impedance controller has been widely applied in modern researches for controlling the interaction with the environment [24, 25]. The fundamental principle of the implemented impedance control in this study is that the fingers should track a motion trajectory, and adjust the mechanical impedance of the robotic hand. The mechanical impedance of the robotic hand is defined in terms of velocity and position as
By virtue of the above two equations, the fingertip contact force gives the essential property of regulating the position and velocity of the contact points between the fingertips and the grasped object. This regulating behavior is obtained by two PD controllers as shown in Figure 3. In the first PD controller, the position is regulated by
where is the matrix of the proportional gain of the controller and the velocity is regulated by
where is the matrix of the controller’s derivative gain. The regulated position and velocity of Eqs. (54) and (55) are integrated in the impedance control loop with another PD controller of proportional gain matrix and derivative gain matrix in order to adjust the damping of the robotic hand during grasping operation according to the following equation:
Hence, the contact forces are regulated in joint space, and the robotic hand can adapt the collision of the fingers with the grasped objects.
The application of Lyapunov function technique determines the conditions of stability of impedance controller . In the forward kinematic model, the equations of fingers are
On the other hand, the errors are given as
where , , and are the error of joint angle, the error in task space, and the index of finger (), respectively. Consider the constrained dynamics of the two fingers in Eqs. (15) and (16) for the control torque in Eq. (56). Applying Eqs. (59) and (60), the error dynamic equation of each finger becomes
where is the stiffness matrix of the fingertip/grasped object. In order to find the potential energy and the dissipation function , compare Eqs. (61) and (62) with the following Lagrangian’s equations of total kinetic energy T:
then, we get
satisfies the following conditions:
The derivative of Eq. (70) is
Hence, the robotic hand system is asymptotically stable under the following boundaries:
3.3 Gains design using genetic algorithm
Genetic algorithm is a well-known optimization procedure for complex problems which ascertains optimum values for different systems . The genetic algorithm is written to find the optimum impedance gains. The code takes the calculated data from the robotic hand Simulink model to compute impedance’s gains. However, the detailed genetic algorithm that is applied in the design of the gains can be defined by the following proceedings:
(1) Generate a number of solutions. This represents the random number of population which includes the gains ,,, andof the impedance controller of Figure 3. These gains are the individual of population.
(2) Fitness function. During the running of the program, the fitness is evaluated for each individual in the population. In this study, the objective of the fitness function is to minimize the errors and of Eq. (56) as below:
where , , and are the rising time, the settling time, and the overshoot, respectively, for each error signal ().
(3) Create the next generation . At each step, genetic algorithm implements the following three rules to create a new generation of the recent population:
Individuals called parents are selected by the selection rules, and then the population of the next generation is obtained by contributing the parents.
Two parents are combined to generate children by crossover rules for the next generation.
Children are formed by mutation rules. The process of forming children is dependent on applying random changes on the individual parents.
(4) Setting the genetic algorithm. The following parameters are used for setting the proposed genetic algorithm in this study: the number of generations = 80, the size of population = 30, and the range of gains are , , , , , , , .
4. Simulation results
The obtained interactional model was applied in the simulation to verify the designed controllers through three tests as follows:
Test 1: Following a specific joint path.
Test 2: Following fingertip position.
Test 3: Robustness of the controllers.
The Simulink model is implemented using MATLAB as shown in Figure 5.
4.1 Following a specific joint path
This test is focused on position-tracking performance of joints. We assumed the two fingers are in initial position () and the joints should follow the following path:
The simulation result explained in Figure 6 shows that the designed position-tracking controller can follow a specific path with zero steady error and without overshoot. A unit step input function of amplitude is implemented to check this tracking error, and the response of the controllers is more detailed as shown in Figure 7.
4.2 Following fingertip position
The second test is implemented to monitor the operation of the designed impedance controller in task space. We assumed the initial position of the fingertip 1 is (135, 100, −25 mm) and it has to reach the position (115, 153.7, −25 mm). The position of the grasped object is assumed at mm,mm, . The result of the optimization process of the impedance controller is obtained as ,, ,. At these gains, as shown in Figure 8, the percentage error of position and velocity are 0.6 and 0%, respectively. Regarding the fingertip contact force represented in Figure 9, the overall designed controllers have given the essential property of contact without overshoot.
For comparison purposes, another study is implemented without considering the impedance controller in the overall control loop, i.e., ,, ,. The results showed that the fingertip position error reaches 0.69%, but the main side effect was of the fingertip velocity error which reached 100% (see Figure 10). In turn, the fingertip contacts the grasped object with high value of error in velocity; this situation causes unsafe grasping. As a result, the proposed overall controller has minimized the velocity error to 0% thanks to the proposed impedance controller with genetic algorithm.
4.3 System robustness
The robustness of the designed controllers is checked in this section. This test is implemented within the same parameters of the desired position and object location in the test of Section 4.2. The disturbances on the robotic hand cause change of the fingertip contact forces. Here, we assumed that the disturbances result in a contact force with a white Gaussian noise [29, 30, 31, 32] shown in Figure 11. The Gaussian noise model is generated using block AWGN channel in Simulink. The position of the AWGN channel is shown in Figure 5. The parameters of white Gaussian noise are set as shown in Figure 12. The designed controllers have achieved the functionality of rejecting the disturbances and kept the motion of the finger as shown in Figure 13.
Grasping by two fingertips plays a distinctive role in its performance related to robotic hand-environment interaction. A mathematical model including the dynamic equation has been derived based on the Lagrange technique. The coupling between two fingers and the fingertip contacts with unknown grasped objects has been presented in this model. The performance of the derived model is confirmed when a designed based model controller is implemented in Simulink. A computed torque controller of six PD controllers has been implemented to control the rotation of joints. The impedance controller is applied to operate as the outer loop of the overall control system. This controller allowed the regulation of the fingertip contact forces without overshoot response, which is essential for safe grasping, especially in holding fragile objects. Besides this, the impedance gains have been obtained using a genetic algorithm with a new behavior of improving the response of the position and velocity errors. The applied genetic algorithm method has minimized the position error and the velocity error while keeping the operation of the overall control system. The robot finger has been ordered to follow a specific joint path and fingertip position grasping; the results of simulations have achieved a typical accomplishment of trajectory tracking. Finally, the overall controllers have shown a perfect rejection of disturbances in terms of fingertip contact force. As a future work, it is recommended to apply the proposed controllers of this study to mobile manipulator for grasping and manipulation objects.
The partial derivatives of with respect to are
The matrices’ elements in Eq. (28) are