Next Article in Journal
Factors for the Automation of the Creation of Virtual Reality Experiences to Raise Awareness of Occupational Hazards on Construction Sites
Previous Article in Journal
Automatic Identification Algorithm of Equivalent Electrochemical Circuit Based on Electroscopic Impedance Data for a Lead Acid Battery
Previous Article in Special Issue
A Real Application of an Autonomous Industrial Mobile Manipulator within Industrial Context
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Characterization and Study of the Primitive Dynamic Movements Required to Bi-Manipulate a Box

by
Juan Hernandez-Vicen
*,
Santiago Martinez
,
Raul de Santos-Rico
,
Elisabeth Menendez
and
Carlos Balaguer
System Engineering and Automation Department, University Carlos III, Av de la Universidad, 30, 28911 Madrid, Spain
*
Author to whom correspondence should be addressed.
Submission received: 30 April 2021 / Revised: 24 May 2021 / Accepted: 3 June 2021 / Published: 6 June 2021
(This article belongs to the Special Issue Advances in Robotic Mobile Manipulation)

Abstract

:
Automating the action of finding the opening side of a box is not possible if the robot is not capable of reaching and evaluating all of its sides. To achieve this goal, in this paper, three different movement strategies to bi-manipulate a box are studied: overturning, lifting, and spinning it over a surface. First of all, the dynamics involved in each of the three movement strategies are studied using physics equations. Then, a set of experiments are conducted to determine if the real response of the humanoid robot, TEO, to a box is consistent with the expected answer based on theoretical calculus. After the dynamics validation, the information on the forces and the position in the end effectors is used to characterize these movements and create its primitives. These primitive movements will be used in the future to design a hybrid position–force control in order to adapt the movements to different kinds of boxes. The structure of this control is also presented in this paper.

1. Introduction

The tasks of grasping and lifting a box or transporting it from one place to another seem really trivial for an average human. They are things that we can do automatically, without using all our brain capacity. We do not have to think about how or where to apply the necessary forces to avoid a box falling on the floor. However, if we observe a baby playing with colored cubes or opening a Christmas present, it seems as though this task was once a real challenge for us. The baby is learning how to handle the box by exploring it, applying different forces to different surfaces of the box, letting it fall, etc. It takes about two years for a child to achieve a dexterous manipulation capacity [1].
Technological advances are allowing humans to replace some thankless, repetitive, and sometimes unhealthy activities by automated systems. It is a fact that societies in advanced countries are becoming older due to a declining birth rate and increasing life expectancy. Consequently, it is becoming increasingly important to find substitutes for those professions traditionally occupied by a younger sector, such as waiters [2], or for those activities that are more physically demanding.
For an elderly person, carrying a heavy box up the stairs or manipulating it could be a laborious task. If that person also has a disability or needs a cane, the difficulty increases. For that reason, with the aim of meeting that need, the humanoid robot TEO packer-unpacker, TEO, is currently being developed in the RoboticsLab of the University Carlos III in Madrid. In this application, the final goal is to achieve the dexterous bi-manipulation of boxes using the arms of a humanoid robot.
In reviewing the current state-of-the-art in bi-manipulation tasks, we find examples of grasping of small objects performed by the fingers of a hand of a robotic arm [3,4,5]. In the end, the task of grasping a box with two arms of the robot is similar to two-point forces applied over a surface by the tips of a hand. Regarding these kinds of manipulation tasks using hands, several studies on the slippage of objects while they are being manipulated have also been conducted using sensors [6,7,8].
The previously cited examples focused on manipulation with the fingers of robotic hands. However, there have also been developments in the manipulation of boxes by robots, several pick-and-place solutions implemented in warehouses [9,10,11], etc. Furthermore, there have also been several studies on dual arm systems for lifting boxes [12,13,14]. These works are centered on lifting boxes or pick-and-place tasks.
Nevertheless, in these movement strategies, the robotic system is always looking at the same faces of the box, making it impossible to find the opening face of the box if it is not on one of these visible sides.
If we compare the actions currently performed to bi-manipulate a box with the process used by humans, we can find several differences. However, to give the robot the capability of performing a dexterous manipulation, the robot should start by identifying the box using vision techniques, obtaining the position of the box in the image and its size, as a person would. Then, this robot should learn how to manipulate it. Given some primitive movements, the robot will try to move the box, correcting the errors made in the movements until it finally achieves the goal of skilfully manipulating the box.
In this paper, a study of three different strategies to bi–manipulate a box without grasping is presented: overturning, lifting, and spinning it on a surface. The dynamics of the movement in each case are studied. The goal is to check the relation between the theoretical physics equations of those movements and the forces detected by the robotic system. Several experiments were performed, which provided data from the sensors (encoders, force sensors, and optical tracking) that are used to develop a manipulation algorithm from those primitive movements.
While reviewing the state-of-the-art in overturning and pushing movements to manipulate a cubic object, several studies [15,16,17] can be found. All of them focused on small objects manipulated by the fingers of a robotic hand. However, when performing this task using two robotic arms to manipulate a larger object (in this case a box), its weight plays an important role, making it important to take into account the dynamics of this object. As there is a lack of studies on such dual-arm tasks, the problem is addressed in this paper. Several studies have been conducted on lifting boxes in dual-arm manipulation tasks [18,19]. However, few studies have addressed the problem of lifting the box without knowing the weight. In References [20,21], an approach of guessing the weight of the box by combining both force sensors and visual perception of the box is presented. Depending on the movement of the box detected by the vision system, the robot estimates the force needed to lift it up. Another research based on whole-body balance control in lifting an unknown weight has been conducted using HRP-2 [22]. Through the lifting experiments carried out in this paper, the forces implied in that task are studied. The force pattern, which depends on the success or failure in the lifting action, is obtained with the goal of using this information in the future to train a reinforcement learning system, so that the robot is capable of lifting a box without knowing its weight and only having the feedback from force sensors.
The experiments shown are part of the research on intelligent systems for a humanoid robot capable of bi-manipulating a box and optimizing its movements to find the opening side, as shown in Figure 1. In this application, the robot is able to identify the features that define the box, as well as its orientation, by computer vision techniques [23]. Then, the dynamics of the three main movements needed to turn the box in every direction are studied. In this study, knowledge of the movements involved in the task, the reactions caused by the forces applied on the boxes depending on the weight, the size, the friction coefficient of the box against the end effectors, etc., need to be acquired. After the dynamics validation, the primitive movements are checked, and taking into account the workspace of the robot, these primitives will be modified to adapt the movements to boxes of different sizes and weights, which are also positioned in different places of the workspace (research ongoing). Once these movements are adapted to different kinds of boxes, a hybrid control, combining position and force control to manipulate the box, is introduced. Finally, a learning algorithm will be applied to optimize the movements needed to find the opening side of the box.
The remainder of this paper is organized as follows: In Section II, a study of the dynamics involved in the three explained movements related to manipulating boxes is conducted. Section III presents the experiments conducted to validate the dynamics equations. In Section IV, the structure of the hybrid position–force control using the primitive movements is introduced.

2. Study of the Movement Dynamics in Boxes

As seen in [24], dual arm manipulation tasks can be classified into coordinated (both end effectors should work together by taking into account the feedback from the other in a closed loop) or uncoordinated (open loop). Additionally, while performing coordinated tasks, the movements of the arms can be symmetric or asymmetric.
To manipulate a box by being able to reach all of its sides, the robot needs to be able to make at least three kinds of movements: overturning, spinning, and lifting. These strategies are represented in Figure 2, where the red points correspond to the position of the end effectors of each arm of the robot.
Taking into account the previous classification, the three movements must be coordinated, because the forces of each end effector have an influence on the other, preventing undesired slippage or displacement of the box. The lifting movement is clearly symmetric with respect to the plane, whereas the overturning is asymmetric, because one of the end effectors will stay fixed to create the rotation movement around the represented axes. In the case of the spinning movement, a symmetric turn around the axis can be considered which goes through the center of the box.
Another classification can also be made: it is clear that the lifting task is kinematically similar to grasping (the robot applies a prehensile manipulation to lift the box up). However, the overturning and spinning movements can be considered as graspless (the forces of each end effector are applied in different directions using a support surface, the table, to generate those movements).
In the following subsections, the dynamics needed to make these movements are explained. Well known physics equations [25] have been obtained, with two objectives: to verify that those equations and the theoretical results are extrapolatable to our system, the humanoid robot, TEO, and to obtain the data and information needed to create a learning process for the robot that is similar to that of a human being.

2.1. Overturning Dynamics

As said before, to overturn the box, the robot needs to create a fixed axis where the box will rotate (Figure 3a). To achieve this, one of the arms will be positioned in the low side, whereas the other will be in the upper side of the box applying the required force to perform the movement. To make a pure overturning movement, the forces are aligned in the same depth plane where the support point has been created by the fixed end effector. For that reason, the problem can be simplified into two dimensions (Figure 3b).
The minimum force needed to start the overturning movement of the box is defined by Equation (1), where the momentum of the force applied “ M F ” minus the momentum of the weight of the box “ M P ” is equal to the “I” inertia of the box plus the “ α ” angular acceleration produced:
M F M P = I · α
As the rotation axis does not correspond to the center of the box, the inertia equation is translated into the vertex, where the rotation, applying Steiner’s Theorem, is produced, as seen in Equation (2):
I = I C M + M · d 2 I =   m 12 ( a 2 + h 2 ) + m ( a 2 + h 2 ) 4 I = m 3 ( a 2 + h 2 )
where “m” is the mass of the box, “a” is the length of the base, and “h” is the height.
Additionally, the horizontal force applied and the force contribution due to the box weight in the horizontal axis are supposed to be applied in the vertex of the box (spinning axis). As stated in Equation (3):
F · l · sin ( θ + β ) + m · g · d · cos ( θ + φ ) = m 3 ( a 2 + h 2 ) · α
where, as shown in Figure 4b, “ θ ” is the inclination angle of the box, “ β ” is the angle between “l” and the base of the box, and “ φ ” is the angle between the segment created by the center of geometry of the box and the rotation axis in relation to the base.

2.2. Lifting Dynamics

The lifting movement is made by performing a symmetric coordinated trajectory with both arms. In this case, unlike in the previous one, it is really important to maintain the force constant with both hands. In case one of the hands applies a higher force than required, the box could be crushed. However, if the required force is not applied by one of the end effectors of the robot, the result would be that the box would fall on the floor.
The forces for lifting the box must be equal and be applied in opposite directions to avoid any displacement, as seen in Figure 5. As the lifting movement performed by the robot is made with a low speed, the inertial forces can be depreciated in comparison with the value of the acceleration of the mass caused by the gravity. For that reason, the only force against the movement is the weight of the box “W”, and following the Coulomb friction law [26], the force applied by each end effector on the surface of the box will be transformed into a static frictional force, in so far as slippage is not desired. Therefore, the sum of the forces made by both arms must be higher than the weight of the box, as seen in Equation (4):
W = F F L + F F R  
Thus, the left friction force “ F F L ” is equal to the right friction force “ F F R ”, and the force needed from each hand “N” is shown in Equation (5):
m · g = 2 μ · N   N = m · g 2 μ  
where “ m ” is the mass of the box, “ g ” is the gravity, and “ μ ” is the friction coefficient.

2.3. Spinning Dynamics

Spinning a box over a surface implies a change from a resting state of the object to a movement state where the box will have a slippery movement on the surface where it is placed while spinning. For that reason, two different friction forces need to be considered as shown in Figure 6a.
The forces needed to make the spinning movement are defined in Equation (6), where the momentum of the sum of the forces applied by both arms “ M F ” minus the friction momentum of the box in relation to the table “ M F R I C ” is equal to the torque “ τ ”:
Σ M F M F R I C = τ
The forces applied by the right arm “ F R ” and left arm “ F L ” are equal. As both of them have the same value and are applied at the same distance “l” from the spin axis in the direction that contributes to the motion, both forces will be presented in Equation (7) as “F”:
2 F · l μ · N = I · α   2 F · l μ · m · g = m 12 ( a 2 + b 2 ) · α  
where the friction force has been substituted by the “ μ ” friction coefficient, the normal force of the box, and the inertia “I”, according to a squared boxed spinning in the center of geometry, “a” is the width, and “b” is the length of the base of the box.
By solving Equation (7), and considering that the spinning movement performed by the humanoid robot is slow, we can approximate the acceleration to a null value, which is the following force equation:
F = I · α + μ · N 2 l   α 0   F = μ · N 2 l  
In Equation (8), the force needed in each arm to make the movement is presented. However, the friction coefficient varies. At the beginning, to start the spinning movement, there is a static friction force, as shown in Equation (9). Then, the force applied must be higher than the dynamic friction force, which is slightly lower than the static friction force, as shown in Equation (10).
F R + F L = μ s · N   F = μ s · N 2 l  
F R + F L = μ d · N   F = μ d · N 2 l  
As mentioned before, in both equations, the forces applied by the right arm “ F R ” and the left arm “ F L ” are equal, and for that reason, they are simplified into F. The difference between both equations is the static “ μ s ” and dynamic “ μ d ” friction coefficients.

3. Experiments to Validate the Dynamics

The equations previously calculated are validated in this section. The goal of these experiments is to confirm that the real response of our system, the humanoid robot, TEO, is consistent with the behavior expected in the theoretical calculus. As a consequence, the primitive movements will be obtained, which will allow us to extrapolate them to different kinds of boxes in the future and apply a hybrid position–force control. A set up of three experiments with the humanoid robot, TEO (one for each kind of box movement), was employed. The information was acquired by implementing a sensor fusion between: the encoders on each of the joints of the arms, to know the real position of the arm during the movement, the force sensors installed on the end effectors to obtain the feedback of the force applied to manipulate the box, and an optical tracking system consisting of eight cameras to check the position of the box with reflectors in the overturning movement.

3.1. Overturning the Box

To check the forces implied in the overturning movement, the problem has been simplified in the experimental set up. To perform this movement, one hand is fixed to create a mechanical earth where the rotation axis is. As a consequence, this movement can be considered as a simple pushing movement. Thus, with the goal of performing the experiment more quickly to verify the forces in the hand, the force has been applied in the frontal axis of the robot. This approach was used in keeping with the concept presented in Figure 4.
The overturning movement was made using a 0.4m × 0.3m × 0.25m box. Inside, a structure was installed to maintain the mass in the center of the box, shown in Figure 9, despite using different weights (2, 3 and 4 Kg).
The force has been applied at ¾ of the height, so the contact point of the end effector is above the center of mass of the box. This position has been chosen in consideration of Equation (3). The higher and further from the fixed overturning axis the force point is, the lower the force required to perform the movement, as far as “l” is the distance from the point of application of the force to the turning axis and “β” is the angle between “l” and the horizontal increase.
As shown in Figure 7, the overturning movement can be separated into four different stages: The first one includes the moment in which the arm is getting closer to the box, and there is still no contact. For that reason, at this point, the contact force is equal to zero. In stage 02, the hand has made contact with the surface of the box and starts applying the required force to start the overturning movement of the box. Once the base of the box starts lifting, the needed force to start the movement has been reached. Then, stage 03 begins. The box is being turned, and as a consequence, the mass of the box is surpassing the axis of rotation. For that reason, the force decreases until it reaches a null value. The same amount of mass of the box is in both sides of the rotation axis. The box is in an equilibrium position. From this point, the box starts falling to the other side due to the inertia of its weight. In this step, the robot does not have to apply any force to create the movement. As a consequence, in stage 04, the resultant forces in the end effector are equal to zero. This behavior has also been checked using the data obtained with the force sensor of the hand, as shown in Figure 8a.
In Equation (3), the relation between the forces needed to overturn the box, depending on the inclination angle, is shown. In Figure 8b, both the theoretical force calculated with the equation and the real forces detected with the sensor are compared. This representation matches with the movement made in stage 03. As can be seen, the real force is really similar to the theoretical force, so it can be affirmed that the force calculus matches with the real experience.

3.2. Lifting the Box

While lifting the box, as shown in Figure 9a, the friction coefficient between the end effectors and the box plays an important role in determining the force to be applied to avoid it falling, as shown in Equation (5). To carry out the lifting experiments, the box has been positioned in front of the robot. It has been grasped again at ¾ of the height to allow it to be above the center of gravity and thus to prevent any torsion of the box while lifting it. Both arms have applied the force in the middle plane of the box depth in opposite directions. Inside the box, the structure shown in Figure 9b has been retained to minimize the deformations caused by the forces applied in the grasping.
When humans lift a box, they do not know the exact friction coefficient of their hands regarding the object that they are grasping, nor the value of the weight of that object. However, as a result of knowledge gained from experience, we know whether a surface is going to be more or less slippery. Additionally, seeing the object, the weight can be estimated, and as a consequence, the force is adapted to avoid the object falling. This automated answer is the result of learning based on experience (and many broken objects when we were children). In the experiments involving the lifting of the box, these learning methods are imitated.

3.2.1. Lifting with Different Friction Coefficients

In the first lifting experiment, the friction coefficient has been changed, and the box has been lifted repeatedly in order to find the friction value that avoids the box falling. The box has been considered as a semi-rigid object by setting a rigid structure inside, Figure 9b. The weight of this structure plus the box is 1.35 Kg, which has been maintained during the experiment so that there is only one variable: the friction.
As a result, in Figure 10, we can see the forces applied by each arm depending on the friction coefficient (mu) used. After trying in a range from 1.1 to 0.3, it was found that the friction coefficient that provides a better grip without slippage and without applying more force than needed is mu = 0.3.
As shown in Figure 10, the force applied can also be divided into three stages. The first stage is the approximation of the end effectors to the box. The second stage starts when the end effectors are in contact with the box surface. Finally, in third stage, the lifting process is recorded. At this stage, the force decreases as the box is lifted. This is because the box is a semi-rigid solid, so there is some deformation, and no force control was used. During all repetitions of the lift, the box fell when the value of the force was less than 10N.

3.2.2. Lifting with Different Weights and a 0.3 Friction Coefficient

After choosing the value of 0.3 for the friction coefficient, a new experiment involving the changing of the box weights was conducted in order to determinate whether, at this value, the box was slippery. As seen in Figure 11, the following weights used were: 1.35 Kg, 1.45 Kg, 1.55 Kg and 1.65 Kg. As the weight increases, the force needed to grasp the box with each arm also increases. The box was lifted in the four cases, thus validating the friction coefficient that was previously set up.
These experiments were conducted simplifying the problem, by giving the robot the information about the weight and the friction coefficient of its end effectors regarding the box. However, as mentioned before, while we, as humans, lift boxes, we do not need to know their exact weight or, the friction coefficient, nor do we need to see them to obtain the visual feedback required to know that we are lifting them. We try to lift it, and then, due to the response of our hands to the material of the box or the weight and if it slips or not, we decide to apply a force that allows the desired movement. Thus, coming back to a robotic system, should we expect some signal in the force sensors that allows the robot to know if the box has been lifted without having any other feedback? Could the robot lift the box without knowing the material of the box, or its weight?

3.2.3. Force Patterns during the Successful Lifting of the Box

To check if there is any useful information from the force sensors, the data acquired in the successful lifting experiments and the data from the failed ones were compared.
Considering the results for the relation between the force in the Z axis (normal force against the box surface) and the force in the Y axis (force caused by the weight of the box), shown in the graph, there is a difference in the results obtained when the box was not lifted (Figure 12a) and when the box was lifted (Figure 12b). In the case when the box was lifted, a small dispersion can be observed in the samples obtained while the box was being lifted, and all the data are collected inside the highlighted green circles. However, when there is a failure in the process, the dispersion of the relation between both forces of the axis increases significantly. As shown in Figure 12c, in the successful attempts, the force increases in the Y axis and stays constant until the experiment ends. However, when the box falls, the force decreases and is not maintained at the same value. After seeing these results, two values can be considered to give the feedback to the robot to check the box lifting process: the stability of the force value in the Y axis and the distribution in the relation between the force in the Z and Y axis.

3.2.4. Semi-Rigid vs. Deformable Box Lifting

All the lifting experiments were conducted using a semi-rigid box with the internal structure shown in Figure 9b. However, we cannot expect the same behavior when using a deformable box. In a real case, we may have to face this problem. For this reason, a last experiment comparing the lifting results for rigid and non-rigid boxes has been conducted. In this case, the weight was constant (again 1.35 Kg), and a simple feedback based on the position of the arms to maintain the force in the Z axis was applied. The main difference to be evaluated in this experiment is the consistency of the box. In one case, the structure is assembled, and in the second case, to maintain the same weight, the structure inside the box is disassembled.
As shown in Figure 13, we can find some similarities and differences between each case. The displacement of the arms (Figure 13a,b) in the case of the deformable box is higher than that in the case of the semi-rigid box. This extra displacement appears due to the deformation caused in the lateral faces of the box. The vertical increase in the graphs is produced due to the displacement of the arms needed to reach the calculated force. However, the almost vertical side of the graph represents the correction made by the arms while lifting the box to keep the forces constant. If we look at Figure 14a, it can be seen that from the point of contact of both arms with the box, in the semi-rigid case, the deformation is just 5 mm per side. However, in the deformable case, to reach the required grasping force, the box is compressed to almost 25 mm per side.
Regarding the force (Figure 13c,d), in both cases, despite the rigidity of the box, the force needed to lift the box is the same. However, the main difference between having a rigid and non-rigid box is the time that it takes the robot to reach the required force. When the box is almost rigid, the robot reaches the contact force with the surface more quickly than when it is deformable. This comparison of the response between both cases can also be seen in Figure 14b, where the force depending on the left arm position is presented.

3.3. Spinning the Box

The last movement needed to manipulate a box is the action of spinning it over a surface. In this case, the forces from both end effectors are applied in the opposite corners of the box, as shown in Figure 15. As shown in Equation (8), the bigger the distance “l” from the center of the box to the point where the force is applied, the lower the force required to make the movement.
As in the lifting movement, the friction coefficient of the box over the steel sheet where it is lying is not known. For this reason, to obtain an estimation of this value, as the weight of the box can be a known value, the humanoid robot will push the same box in the frontal direction, with different masses inside: 1.35 Kg, 2.35 Kg and 3.35 Kg, as shown in Figure 16a. Applying the friction force equation, and taking into account the force values obtained with the force sensor of the right hand of TEO, Figure 16b, the static friction coefficient obtained to start the sliding movement of the box in the table ( μ s ) is equal to 0.4. Meanwhile, the dynamic friction coefficient ( μ d ) obtained as a result of the movement of the box over the steel sheet is 0.3.
In Figure 17a, the trajectory followed by the left arm to spin the box on the steel surface is shown. The height of the end effector (Pos Z) was maintained, while X and Y were changed to describe a circular trajectory. In Figure 17b, the forces as a result of the spinning action can be seen. In this case, the main force is made in the x axis, insofar as the robot is pushing the box frontally to make the corner spin.

4. How Can Primitive Movements Be Used?

In the previous section, the force equations obtained for each of the three kinds of movements considered to bi-manipulate a box were checked by performing experiments in the laboratory with the humanoid robot, TEO, and capturing the information with the sensors available: encoders, an optical tracking system, and force sensors. However, one question still remains: how can this information be used to manipulate boxes? In this section, an explanation of the use of these data in the general application is provided. Additionally, a low-level use of the information in hybrid position–force control is described. Both, the general application and the hybrid position–force control are currently on-going works.

4.1. General Application

As it can be seen in Figure 18, by using the vision system, the box is recognized by acquiring its position in space and dimensions, as well as its characteristics, such as logos, letters, or opening lines. Using this information, the robot attempts to find the opening side of the box. In Reference [23], the visual information processing to obtain these characteristics and a first attempt to find the opening side of the box using decision trees are presented.
In this paper, the results have been centered on sensing the forces in the end effectors of the robot while performing three different tasks. As a result of these movements, the repeatability of the results could be seen. In the general application, this behavior, together with the dimensions and position of the box obtained by vision will be used to adapt these movement patterns to different kinds of boxes. In the case of the lifting movement, reinforcement learning will be used, so the robot can decide if the box is successfully lifted based on a pattern comparison.
Finally, by combining the movement patterns adapted to the different boxes, along with the logos, letters, etc., reinforcement learning is used to set the movement sequence to find the opening side of the box. This sequence is performed by TEO, which applies a hybrid position–force control, which is explained in the following subsection.

4.2. Hybrid Position–Force Control

In Figure 19, the scheme according of the hybrid position–force control can be seen. The inputs introduced in the system are: the position of the arm in each point of the movement and the primitive force equations adapted to the characteristics of the box.
Then, the position and force data are checked in their respective control laws, giving as an output the cartesian coordinates of the robot end effectors, as well as the expected forces for that movement. These control outputs are combined to command the movements with the Humanoid Robot, TEO. To check if these trajectories are being followed, the force sensors and the encoders from the robot arm articulations will be used to close the loop. In case any error is detected, the required corrections will be applied to approximate the movements as much as possible to the primitive force equations and to the expected positions of the arms.
A first approach of the hybrid control has been implemented in the lifting task. As can be seen in Figure 20a, in the closed loop, the force needed to lift the box is significantly lower. As the force is constant during the movement, and there is no loss, it is not needed to apply 20 N at the beginning. As a consequence, the force is equal to 10 N during the entire movement. To achieve this, a change in the position of the arm is required, as shown in Figure 20b. In the case where the loop is open, the arm has a higher displacement in the approximation stage (more pressure applied in the beginning). However, once the target force is reached, during the lifting, there is no displacement. Instead, with the hybrid control, the end effector in the first stage has a lower movement (less force applied, at just 10 N). Then, during the lifting movement, the arm moves to keep the value constant.

5. Conclusions and Future Work

In this paper, three different strategies to bi-manipulate a box were studied: overturning, lifting, and spinning. In the three cases, the force equations were firstly calculated, then checked with different experimental procedures defined for each of the movements.
The overturning movement has been characterized, identifying four stages of the forces involved during the motion of the action. The theoretical horizontal forces needed to overturn the box during the third stage were calculated with Equation (3). Then, the results of the experiments were compared with the theoretic calculus, finding a similar behavior. As a consequence, the equation will be used as a primitive for the hybrid position–force control.
In the lifting experiments, the variation of the end-effector force sensor readings, depending on different variables, was studied. Firstly, the robot repeatedly attempted to lift a constant known weight by changing the friction coefficient. Once the friction coefficient was chosen, the lifting movement was made, using different weights to validate it. After performing successful and failed lifting attempts, the forces in the Z and Y axes were studied. A pattern in the relation between these forces was repeated when the action was successfully completed. These patterns will be used to train a reinforcement learning system. Thus, the robot will be capable of determining when the box has been lifted without visual feedback.
Additionally, based on the comparison of lifting semi-rigid and deformable boxes, we determined that the final force needed to grasp a box is the same, varying only the position of the end effectors in each case.
Finally, the box has been frontally pushed to check the friction coefficient in relation to a steel surface. Then, in the spinning experiments, the composition of the force applied in the three axes, depending on the position of the end effector, was captured by the force sensors and the encoders.
In future works, the primitive movements obtained in this paper will be implemented, following the hybrid control presented in section IV. The hybrid control will be the basis for a type of reinforcement learning, in which experiments with different kinds of boxes and weights will be performed to acquire information about the successful manipulation of boxes. These experiments will add data for the optimization of trajectories and movements.

Author Contributions

Conceptualization, S.M.; Funding acquisition, S.M. and C.B.; Investigation, J.H.-V. and E.M.; Methodology, J.H.-V.; Software, R.d.S.-R.; Supervision, S.M. and C.B.; Writing–original draft, J.H.-V., Writing—review and editing, J.H.-V. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the SHARON project, with the reference SHARON-CM-UC3M, funded by the Carlos III University of Madrid, and from the RoboCity2030-DIH-CM Madrid Robotics Digital Innovation Hub (“Robotica aplicada a la mejora de la calidad de vida de los ciudadanos, Fase IV”; S2018/NMT-4331), funded by “Programas de Actividades I+D en la Comunidad de Madrid” and co-funded by Structural Funds of the EU.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Gassier, J. Manual del Desarrollo Psicomotor del Niño: Las Etapas de la Socialización. Los Grandes Aprendizaje. La Creatividad; Masson: Paris, France, 2019. [Google Scholar]
  2. Garcia-Haro, J.M.; Oña, E.D.; Hernandez-Vicen, J.; Martinez, S.; Balaguer, C. Service Robots in Catering Applications: A Review and Future Challenges. Electronics 2021, 10, 47. [Google Scholar] [CrossRef]
  3. Morita, N.; Nogami, H.; Higurashi, E.; Sawada, R. Grasping Force Control for a Robotic Hand by Slip Detection Using Developed Micro Laser Doppler Velocimeter. Sensors 2018, 18, 326. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  4. Carlos, B.; Antonio, G.; Alberto, J.; Ramiro, C.; Santiago, M.D.L.C. Antonio, G.; Alberto, J.; Ramiro, C.; Santiago, M.D.L.C. A survey on different control techniques for grasping. In Grasping in Robotics; Springer: London, UK, 2013; pp. 223–246. [Google Scholar]
  5. Borst, C.; Fischer, M.; Hirzinger, G. Grasping the dice by dicing the grasp. In Proceedings of the 2003 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2003)(Cat. No. 03CH37453), Las Vegas, NV, USA, 27–31 October 2003; pp. 3692–3697. [Google Scholar]
  6. Kawamura, T.; Inaguma, N.; Nejigane, K.; Tani, K.; Yamada, H. Measurement of Slip, Force and Deformation Using Hybrid Tactile Sensor System for Robot Hand Gripping an Object. Int. J. Adv. Robot. Syst. 2013, 10, 83. [Google Scholar] [CrossRef] [Green Version]
  7. Al-Shanoon, A.A.S.; Ahmad, S.A.; Hassan, M.K.B. Slip detection with accelerometer and tactile sensors in a robotic hand model. In IOP Conference Series: Materials Science and Engineering; IOP Publishing: Bristol, UK, 2015; p. 012001. [Google Scholar]
  8. Chen, W.; Khamis, H.; Birznieks, I.; Lepora, N.F.; Redmond, S.J. Tactile Sensors for Friction Estimation and Incipient Slip Detection—Toward Dexterous Robotic Manipulation: A Review. IEEE Sens. J. 2018, 18, 9049–9064. [Google Scholar] [CrossRef] [Green Version]
  9. Perumaal, S.S.; Jawahar, N. Automated Trajectory Planner of Industrial Robot for Pick-and-Place Task. Int. J. Adv. Robot. Syst. 2013, 10, 100. [Google Scholar] [CrossRef]
  10. Andhare, P.; Rawat, S. Pick and place industrial robot controller with computer vision. In Proceedings of the 2016 International Conference on Computing Communication Control and Automation (ICCUBEA), Pune, India, 12–13 August 2016; pp. 1–4. [Google Scholar]
  11. Lozano-Perez, T.; Jones, J.; Mazer, E.; O’Donnell, P. Task-level planning of pick-and-place robot motions. Computer 1989, 22, 21–29. [Google Scholar] [CrossRef]
  12. Liu, J.-F.; Abdel-Malek, K. Robust control of planar dual-arm cooperative manipulators. Robot. Comput. Manuf. 2000, 16, 109–119. [Google Scholar] [CrossRef] [Green Version]
  13. Yagiz, N.; Hacioglu, Y.; Arslan, Y.Z. Load transportation by dual arm robot using sliding mode control. J. Mech. Sci. Technol. 2010, 24, 1177–1184. [Google Scholar] [CrossRef]
  14. Benali, K.; Brethe, J.-F.; Guérin, F.; Gorka, M. Dual arm robot manipulator for grasping boxes of different dimensions in a logistics warehouse. In Proceedings of the 2018 IEEE International Conference on Industrial Technology (ICIT), Lyon, France, 19–22 February 2018; pp. 147–152. [Google Scholar]
  15. Maeda, Y.; Kijimoto, H.; Aiyama, Y.; Arai, T. Planning of graspless manipulation by multiple robot fingers. In Proceedings of the 2001 ICRA, IEEE International Conference on Robotics and Automation (Cat. No. 01CH37164), Seoul, Korea, 21–26 May 2001; pp. 2474–2479. [Google Scholar]
  16. Maeda, Y.; Makita, S. A quantitative test for the robustness of graspless manipulation. In Proceedings of the 2006 IEEE International Conference on Robotics and Automation (ICRA 2006), Orlando, FL, USA, 15–19 May 2006; pp. 1743–1748. [Google Scholar]
  17. Makita, S.; Maeda, Y. Joint torque optimization for quasi-static graspless manipulation. In Proceedings of the 2013 IEEE International Conference on Robotics and Automation, Karlsruhe, Germany, 6–10 May 2013; pp. 3730–3735. [Google Scholar]
  18. Sonnleitner, F.; Shu, R.; Hollis, R.L. The mechanics and control of leaning to lift heavy objects with a dynamically stable mobile robot. In Proceedings of the 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 20–24 May 2019; pp. 9264–9270. [Google Scholar]
  19. Arisumi, H.; Chardonnet, J.-R.; Kheddar, A.; Yokoi, K. Dynamic lifting motion of humanoid robots. In Proceedings of the 2007 IEEE International Conference on Robotics and Automation, Roma, Italy, 10–14 April 2007; pp. 2661–2667. [Google Scholar]
  20. Shigematsu, R.; Komatsu, S.; Kakiuchi, Y.; Okada, K.; Inaba, M. Lifting and carrying an object of unknown mass properties and friction on the head by a humanoid robot. In Proceedings of the 2018 IEEE-RAS 18th International Conference on Humanoid Robots (Humanoids), Beijing, China, 6–9 November 2018; pp. 1–9. [Google Scholar]
  21. Han, Y.; Li, R.; Chirikjian, G.S. Can I lift it? Humanoid robot reasoning about the feasibility of lifting a heavy box with unknown physical properties. arXiv 2020, arXiv:2008.03801. [Google Scholar]
  22. Harada, K.; Kajita, S.; Saito, H.; Morisawa, M.; Kanehiro, F.; Fujiwara, K.; Kaneko, K.; Hirukawa, H. A humanoid robot carrying a heavy object. In Proceedings of the 2005 IEEE International Conference on Robotics and Automation, Barcelona, Spain, 18–22 April 2005; pp. 1712–1717. [Google Scholar]
  23. Hernandez-Vicen, J.; Martinez, S.; Balaguer, C. Principios básicos para el desarrollo de una aplicación de bi-manipulación de cajas por un robot humanoide. Rev. Iberoam. Automática Inf. Ind. 2021, 18, 129–137. [Google Scholar] [CrossRef]
  24. Zollner, R.; Asfour, T.; Dillmann, R. Programming by demonstration: Dual-arm manipulation tasks for humanoid robots. In Proceedings of the 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (IEEE Cat. No. 04CH37566), Sendai, Japan, 28 September–2 October 2004; pp. 479–484. [Google Scholar]
  25. Hibbeler, R.C. Ingeniería Mecánica Dinámica; Pearson-Prentice Hall: Hoboken, NJ, USA, 1996; p. 82. [Google Scholar]
  26. Popov, V.L. Contact Mechanics and Friction; Springer: Berlin/Heidelberg, Germany, 2010. [Google Scholar]
Figure 1. General scheme of the application of the TEO packer/unpacker.
Figure 1. General scheme of the application of the TEO packer/unpacker.
Electronics 10 01354 g001
Figure 2. Classification of movements involved in bi-manipulating a box.
Figure 2. Classification of movements involved in bi-manipulating a box.
Electronics 10 01354 g002
Figure 3. (a) 3D representation of the overturning movement around an axis. (b) 2D simplification of the overturning problem, where “F” is the force applied, “l” is the distance from the point of application of the force to the turning axis, “β” is the angle between “l” and the horizontal and “d” is the distance from the geometrical center to the turning axis.
Figure 3. (a) 3D representation of the overturning movement around an axis. (b) 2D simplification of the overturning problem, where “F” is the force applied, “l” is the distance from the point of application of the force to the turning axis, “β” is the angle between “l” and the horizontal and “d” is the distance from the geometrical center to the turning axis.
Electronics 10 01354 g003
Figure 4. (a) Box in the resting position, with the forces represented. (b) Box in the equilibrium position, with the weight in the vertical in relation to the rotation axis.
Figure 4. (a) Box in the resting position, with the forces represented. (b) Box in the equilibrium position, with the weight in the vertical in relation to the rotation axis.
Electronics 10 01354 g004
Figure 5. Scheme of the forces applied to lift the box.
Figure 5. Scheme of the forces applied to lift the box.
Electronics 10 01354 g005
Figure 6. (a) Representation of the static and dynamic friction forces in relation to the force needed to start the movement. (b) Spinning movement of the box over a surface seen from above.
Figure 6. (a) Representation of the static and dynamic friction forces in relation to the force needed to start the movement. (b) Spinning movement of the box over a surface seen from above.
Electronics 10 01354 g006
Figure 7. Experiment to check the overturning movement. Stages 01 to 04 are represented in the figures (ad).
Figure 7. Experiment to check the overturning movement. Stages 01 to 04 are represented in the figures (ad).
Electronics 10 01354 g007
Figure 8. (a) Representation of the contact forces during the different stages of movement of the box. (b) Comparison of the theoretical force (Equation (3)) and real force detected with the robot sensor.
Figure 8. (a) Representation of the contact forces during the different stages of movement of the box. (b) Comparison of the theoretical force (Equation (3)) and real force detected with the robot sensor.
Electronics 10 01354 g008
Figure 9. (a) Humanoid robot, TEO, lifting the box. (b) Internal structure of the semi-rigid box.
Figure 9. (a) Humanoid robot, TEO, lifting the box. (b) Internal structure of the semi-rigid box.
Electronics 10 01354 g009
Figure 10. Forces needed to lift the box with different friction coefficients.
Figure 10. Forces needed to lift the box with different friction coefficients.
Electronics 10 01354 g010
Figure 11. Validation of the friction coefficient (mu = 0.3) previously set up for lifting boxes.
Figure 11. Validation of the friction coefficient (mu = 0.3) previously set up for lifting boxes.
Electronics 10 01354 g011
Figure 12. (a) Relation between the force in the Z and Y axis for the experiments where the lifting action failed. (b) Relation between the force in the Z and Y axis for the successful experiments. (c) Friction forces of the end effectors against the slippage of the box in the Y axis.
Figure 12. (a) Relation between the force in the Z and Y axis for the experiments where the lifting action failed. (b) Relation between the force in the Z and Y axis for the successful experiments. (c) Friction forces of the end effectors against the slippage of the box in the Y axis.
Electronics 10 01354 g012
Figure 13. Lifting a semi-rigid box vs. lifting a deformable box. (a,b) Arms displacement to grasp the box. (c,d) Force needed to lift the box in each case.
Figure 13. Lifting a semi-rigid box vs. lifting a deformable box. (a,b) Arms displacement to grasp the box. (c,d) Force needed to lift the box in each case.
Electronics 10 01354 g013
Figure 14. (a) Distance between both arms and the box deformation. (b) Relation between the position of the end effector and the force applied to the box to lift it.
Figure 14. (a) Distance between both arms and the box deformation. (b) Relation between the position of the end effector and the force applied to the box to lift it.
Electronics 10 01354 g014
Figure 15. Humanoid robot, TEO, spinning the box over a surface.
Figure 15. Humanoid robot, TEO, spinning the box over a surface.
Electronics 10 01354 g015
Figure 16. (a) Frontal force needed to move the box over the surface, depending on its weight. (b) Calculus of the friction coefficient of the box, depending on the weight.
Figure 16. (a) Frontal force needed to move the box over the surface, depending on its weight. (b) Calculus of the friction coefficient of the box, depending on the weight.
Electronics 10 01354 g016
Figure 17. (a) Position of the left end effector while spinning the box. (b) Forces detected in the spinning movement.
Figure 17. (a) Position of the left end effector while spinning the box. (b) Forces detected in the spinning movement.
Electronics 10 01354 g017
Figure 18. General application scheme.
Figure 18. General application scheme.
Electronics 10 01354 g018
Figure 19. Hybrid position–force control for each primitive task.
Figure 19. Hybrid position–force control for each primitive task.
Electronics 10 01354 g019
Figure 20. Hybrid position–force control for lifting primitive task. (a) Comparison of the required force to lift a box in open and closed loop. (b) Comparison of the end effector position to lift a box in open and closed loop.
Figure 20. Hybrid position–force control for lifting primitive task. (a) Comparison of the required force to lift a box in open and closed loop. (b) Comparison of the end effector position to lift a box in open and closed loop.
Electronics 10 01354 g020
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Hernandez-Vicen, J.; Martinez, S.; de Santos-Rico, R.; Menendez, E.; Balaguer, C. Characterization and Study of the Primitive Dynamic Movements Required to Bi-Manipulate a Box. Electronics 2021, 10, 1354. https://0-doi-org.brum.beds.ac.uk/10.3390/electronics10111354

AMA Style

Hernandez-Vicen J, Martinez S, de Santos-Rico R, Menendez E, Balaguer C. Characterization and Study of the Primitive Dynamic Movements Required to Bi-Manipulate a Box. Electronics. 2021; 10(11):1354. https://0-doi-org.brum.beds.ac.uk/10.3390/electronics10111354

Chicago/Turabian Style

Hernandez-Vicen, Juan, Santiago Martinez, Raul de Santos-Rico, Elisabeth Menendez, and Carlos Balaguer. 2021. "Characterization and Study of the Primitive Dynamic Movements Required to Bi-Manipulate a Box" Electronics 10, no. 11: 1354. https://0-doi-org.brum.beds.ac.uk/10.3390/electronics10111354

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop